/* Desktop shell only. Game overlays and the existing mobile layout are independent. */
@media (min-width: 981px) {
  .arena-layout {
    --lobby-rail: clamp(220px, 12.4vw, 280px);
    --lobby-space: clamp(22px, 2vw, 48px);
    --lobby-gap: clamp(14px, 1.2vw, 28px);
    --lobby-text: clamp(13px, .85vw, 18px);
  }
  .arena-layout > .side-rail { width: var(--lobby-rail); padding-inline: clamp(16px, 1.2vw, 28px); overflow-y: auto; }
  .side-rail .rail-group nav a { min-height: 44px; height: auto; padding-block: 12px; font-size: clamp(14px, .9vw, 18px); }
  .side-rail .rail-group > small, .side-rail .skill-guarantee small, .side-rail .rail-foot { font-size: clamp(10px, .65vw, 13px); }
  .arena-layout > .arena-topbar {
    margin-left: var(--lobby-rail); padding-inline: var(--lobby-space);
    height: clamp(76px, 5vw, 92px); min-width: 0;
  }
  .arena-topbar .game-search { width: min(46%, 760px); min-width: 180px; height: clamp(42px, 3vw, 54px); }
  .arena-topbar .game-search input { font-size: var(--lobby-text); min-width: 0; }
  .arena-topbar .header-actions { flex-shrink: 0; }
  .arena-topbar .login-link, .arena-topbar .primary, .arena-topbar .header-actions button { font-size: clamp(12px, .8vw, 16px); }
  .arena-layout > .arena-main { margin-left: var(--lobby-rail); padding: var(--lobby-space) var(--lobby-space) 0; min-width: 0; }
  .arena-main > :is(#home, #games, #dashboard, .quick-wallet) { width: 100%; max-width: none; min-width: 0; }
  .arena-main > #home { padding: clamp(32px, 3vw, 72px); min-height: clamp(360px, 25vw, 540px); gap: var(--lobby-gap); }
  #home .arena-hero-copy { min-width: 0; }
  #home h1 { font-size: clamp(42px, 3.5vw, 84px); letter-spacing: -.055em; overflow-wrap: normal; }
  #home .arena-hero-copy > p { max-width: 42em; font-size: clamp(14px, 1vw, 21px); }
  #home :is(.hero-kicker, .trust-row) { font-size: clamp(11px, .75vw, 16px); }
  #home :is(.primary, .secondary-link) { font-size: var(--lobby-text); }
  .arena-main > .quick-wallet { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--lobby-gap); }
  .quick-wallet article { min-width: 0; min-height: clamp(86px, 6vw, 128px); padding: clamp(12px, 1.2vw, 28px); }
  .quick-wallet article > div { min-width: 0; }
  .quick-wallet small { font-size: clamp(10px, .65vw, 14px); overflow-wrap: anywhere; }
  .quick-wallet b { font-size: clamp(20px, 1.5vw, 34px); }
  #games .skill-lobby-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--lobby-gap); }
  #games .catalog-card { min-width: 0; display: flex; flex-direction: column; }
  #games .game-card-copy { flex: 1; display: flex; flex-direction: column; padding: clamp(16px, 1.3vw, 30px); min-width: 0; }
  #games .game-card-copy h3 { font-size: clamp(19px, 1.3vw, 30px); }
  #games .game-card-copy > p { height: auto; min-height: 3.4em; font-size: var(--lobby-text); }
  #games .game-price { flex-wrap: wrap; gap: 8px 12px; font-size: clamp(11px, .75vw, 16px); }
  #games .game-type { font-size: clamp(10px, .7vw, 15px); }
  #games .game-card-copy > button { margin-top: auto; min-height: clamp(42px, 3vw, 56px); font-size: var(--lobby-text); }
  #games .game-visual { flex-shrink: 0; height: clamp(175px, 12vw, 260px); }
  #games .category-chips button { height: 40px; font-size: var(--lobby-text); }
  #games .section-title h2, #dashboard .dashboard-head h2 { font-size: clamp(26px, 1.8vw, 40px); }
  #games .section-title > p, #dashboard .dashboard-head > div > p:last-child { font-size: var(--lobby-text); max-width: 34em; }
  #dashboard .dashboard-shell { padding: clamp(22px, 2vw, 44px); }
  #dashboard :is(.dashboard-metrics, .dashboard-lower) { gap: var(--lobby-gap); }
  #dashboard :is(.metric-card, .performance-card, .activity-card) { min-width: 0; padding: clamp(20px, 1.5vw, 34px); }
  #dashboard :is(.metric-top small, .metric-card > p, .performance-grid span, .activity-row b, .activity-row > strong, .activity-empty) { font-size: var(--lobby-text); }
  #dashboard :is(.activity-row small, .card-heading small) { font-size: clamp(10px, .7vw, 15px); }
  #dashboard .metric-card > strong { font-size: clamp(30px, 2.2vw, 48px); }
  #dashboard .performance-grid strong { font-size: clamp(22px, 1.5vw, 32px); }
  .arena-layout > footer { margin-left: var(--lobby-rail); padding-inline: var(--lobby-space); }
}
@media (min-width: 1280px) {
  #games .skill-lobby-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (min-width: 981px) and (max-width: 1180px) {
  .arena-main > .quick-wallet { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #games .skill-lobby-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
/* Shared DUELLOX branding asset: preserves the supplied logo's aspect ratio. */
.brand-logo{display:block;width:clamp(7rem,9vw,9.75rem);height:auto;max-width:100%;object-fit:contain}
.hero-brand-logo{display:block;width:clamp(15rem,25vw,25rem);max-width:86%;height:auto;margin:-.75rem 0 .45rem -2.4rem;object-fit:contain}
.hero-cube img{display:block;width:78%;height:auto;object-fit:contain;transform:rotate(-18deg);filter:drop-shadow(0 0 18px rgba(82,233,191,.45))}
.dashboard-head .eyebrow{font-size:clamp(.75rem,.82vw,1.05rem);line-height:1.4}
.dashboard-mode-control{align-self:flex-start;display:flex;justify-content:flex-end}
.dashboard-head .balance-mode-switch{gap:clamp(.4rem,.45vw,.65rem);margin:0}
.dashboard-head .balance-mode-switch button{min-width:clamp(5rem,5.4vw,6.5rem);min-height:clamp(2.65rem,2.8vw,3.25rem);padding:clamp(.65rem,.7vw,.85rem) clamp(.95rem,1vw,1.25rem);font-size:clamp(.82rem,.78vw,1rem);line-height:1}
@media(max-width:650px){.dashboard-mode-control{width:100%;align-self:stretch}.dashboard-head .balance-mode-switch{width:100%}.dashboard-head .balance-mode-switch button{flex:1}}
.rail-brand .brand-logo{width:min(100%,9.6rem)}
.mobile-brand .brand-logo{width:clamp(6.25rem,22vw,8.8rem)}
footer .brand-logo{width:clamp(6.25rem,8vw,8.5rem)}
.arena-layout footer{justify-content:center;text-align:center}
.arena-layout footer small{display:block!important;margin:0;font-size:clamp(.78rem,.78vw,1rem);line-height:1.5;color:#8fa0aa}
.match-social{width:min(clamp(19rem,22vw,25rem),calc(100vw - 2rem));right:clamp(1rem,1.4vw,1.75rem);bottom:clamp(1rem,1.4vw,1.75rem)}
.chat-consent{min-height:clamp(3rem,3.15vw,3.75rem);padding:clamp(.8rem,.9vw,1rem) clamp(1.1rem,1.2vw,1.5rem);font-size:clamp(.82rem,.78vw,1rem);line-height:1.2}
#forfeit-dialog .forfeit-dialog-card{width:min(clamp(32rem,42vw,42rem),100%);padding:clamp(2rem,2.6vw,3rem);border-radius:clamp(1.1rem,1.3vw,1.5rem)}
#forfeit-dialog .forfeit-dialog-icon{width:clamp(3.5rem,3.8vw,4.5rem);height:clamp(3.5rem,3.8vw,4.5rem);font-size:clamp(1.45rem,1.5vw,1.8rem)}
#forfeit-dialog .forfeit-dialog-card>p:first-of-type{margin:clamp(1rem,1.2vw,1.35rem) 0 .45rem;font-size:clamp(.75rem,.72vw,.92rem);line-height:1.4}
#forfeit-dialog .forfeit-dialog-card h2{font-size:clamp(1.75rem,2vw,2.5rem);line-height:1.18;letter-spacing:-.04em}
#forfeit-dialog .forfeit-dialog-card>p:last-of-type{max-width:36rem;margin:clamp(.8rem,1vw,1.15rem) auto clamp(1.5rem,1.7vw,2rem);font-size:clamp(.95rem,.9vw,1.12rem);line-height:1.65}
#forfeit-dialog .forfeit-dialog-actions{gap:clamp(.7rem,.8vw,1rem)}
#forfeit-dialog .forfeit-dialog-actions button{min-height:clamp(3rem,3.2vw,3.75rem);padding:.8rem 1rem;font-size:clamp(.95rem,.9vw,1.1rem)}
@media(max-width:650px){#forfeit-dialog .forfeit-dialog-card{width:100%;padding:1.6rem 1.25rem}#forfeit-dialog .forfeit-dialog-card h2{font-size:clamp(1.45rem,7vw,1.9rem)}#forfeit-dialog .forfeit-dialog-card>p:last-of-type{font-size:.95rem}}
@media(max-width:720px){.hero-brand-logo{width:clamp(11rem,52vw,16rem);max-width:88%;margin:-.35rem 0 .5rem -1.25rem}}
