/* Homepage V2: scoped presentation over the existing matchmaking application. */
:root{--orange:#a6ed76;--orange-soft:#c6ffa3;--green:#a6ed76;--line:#ffffff18;--muted:#a4ada6;--panel:#111613;--text:#f2f4ee}
html{scroll-behavior:smooth;scroll-padding-top:110px}body{background:#0b0e0c;color:var(--text)}body::before,body::after,.noise{display:none}a,button{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible{outline:2px solid var(--green);outline-offset:5px}main{width:min(1440px,92%)}
.nav{height:auto;min-height:78px;padding:16px 4%;gap:28px;background:#0b0e0cf2;border-color:var(--line);flex-wrap:wrap}.brand strong{font-size:22px}.brand strong em{color:var(--green)}.nav-links{gap:22px;font-size:10px}.nav-links a{color:#abb5ad}.nav-actions{margin-left:auto}.guardian-active{display:none}.nav-account{border-color:var(--line);background:#151b16}.account-avatar{border-color:#a6ed7666}.logout-button{color:#c4cec6}.brand-logo{filter:none}
.hero{position:relative;height:auto;min-height:640px;margin:0 calc(-4vw - 1px);padding:100px max(4vw,24px) 80px;background:linear-gradient(90deg,#0b0e0cf5 3%,#0b0e0c8c 55%,#0b0e0c20),linear-gradient(0deg,#0b0e0c,transparent 45%),url('/assets/design/cobble-cinematic.webp') 65% 45%/cover;overflow:hidden}.hero::after{display:block;content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 65% 60%,#a6ed7610,transparent 60%);pointer-events:none}.hero-shell{display:block;position:relative;z-index:1}.hero-content{padding:0;max-width:850px}.hero .eyebrow{color:var(--green);font-size:10px;letter-spacing:.24em;margin-bottom:26px}.hero h1{font:800 clamp(48px,6.5vw,94px)/.99 "Chakra Petch",Arial,sans-serif;letter-spacing:-.055em;margin:0 0 26px;text-shadow:0 3px 35px #0007}.hero h1 span{display:block;color:var(--green)}.hero-copy{font-size:19px;line-height:1.6;max-width:600px;color:#e0e7dd;margin:0 0 12px}.hero-mapline{font:12px/1.8 monospace;color:#aeb8ae;margin:0 0 32px}.hero-ctas{display:flex;gap:14px;flex-wrap:wrap}.btn,.outline-link{border-radius:4px;min-height:46px;font-size:11px;letter-spacing:.06em}.btn-primary{background:var(--green);color:#10190b;border:1px solid #c2ff9f;box-shadow:0 3px 22px #a6ed7612}.btn-primary:hover{background:#c6ffa3;color:#10190b;box-shadow:0 0 25px #a6ed7625;transform:translateY(-2px)}.btn:active{transform:translateY(1px)}.btn-secondary,.outline-link{color:#e4ece0;border:1px solid #ffffff30;background:#141b15b8}.btn-secondary:hover,.outline-link:hover{background:#253122;color:#c6ffa3}.hero-ctas .btn{padding:0 25px;gap:30px;display:inline-flex;align-items:center;justify-content:space-between}.hero-coordinate{font:9px monospace;letter-spacing:.2em;color:#9ba98b;margin-top:55px}.v2-stats{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line);margin:0 0 64px;background:#111612}.v2-stats>div,.v2-stats>a{padding:23px 26px;border-right:1px solid var(--line)}.v2-stats strong{display:block;color:#d5e6ca;font:600 12px "Chakra Petch",sans-serif;letter-spacing:.04em}.v2-stats span{display:block;color:var(--muted);font-size:11px;margin-top:8px}.v2-section-title{display:flex;justify-content:space-between;gap:18px;align-items:end;margin-bottom:24px}.v2-section-title .eyebrow,.v2-guardian .eyebrow{font-size:9px;color:var(--green);letter-spacing:.2em}.v2-section-title h2,.v2-guardian h2,.maps-section .section-heading h2{font:700 clamp(24px,3vw,38px)/1.2 "Chakra Petch",Arial,sans-serif;letter-spacing:-.04em;margin:9px 0 0}.v2-section-title p{color:var(--muted);font-size:12px}.v2-games{margin-bottom:40px}.mode-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.mode-card{height:350px;position:relative;border:1px solid #ffffff25;border-radius:6px;overflow:hidden;background:linear-gradient(0deg,#101710 15%,#10171060 80%),url('/assets/maps/cobble.jpg') center/cover;box-shadow:none;isolation:isolate;transition:border-color .2s,transform .2s}.mode-card:hover{border-color:#a6ed7680;transform:translateY(-4px)}.mode-card.wingman{background-image:linear-gradient(0deg,#101710 15%,#10171030 90%),url('/assets/maps/2v2/de_train.jpg')}.mode-card.flying{background-image:linear-gradient(0deg,#17190f 12%,#17190f20 90%),url('/assets/design/flying-scoutsman-airborne-20261016.webp');border-color:#e2ce7040}.mode-card .character-art{display:none}.mode-card-content{position:absolute;inset:auto 0 0;width:100%;margin:0;padding:26px;background:linear-gradient(0deg,#101510,transparent)}.mode-card h2{font:700 26px "Chakra Petch",sans-serif;margin:0 0 12px;color:#f2f4ee}.mode-card h2 span{color:var(--green);display:inline}.mode-card.flying h2{font-size:22px}.mode-card.flying h2 span{color:#e3d294}.mode-card p{color:#bac3b8;font-size:12px;line-height:1.65;min-height:60px}.mode-card .mode-queue{font:10px monospace;color:var(--green);margin:10px 0 16px}.mode-queue>span:not(.status-dot){display:none}.mode-card .btn{width:100%;min-height:46px;font-size:12px}.mode-card.flying .btn{background:#ded39a;color:#1a1b10;border-color:#e9dfb1}.flying-how{color:#dfd5ab;font-size:9px}.panel{background:#111613;border-color:var(--line);box-shadow:none;border-radius:6px}.live-servers{margin:0 0 24px;padding:20px}.server-intro h2,.match-steps h2,.veto-preview h2{color:#e0e8db}.server-intro p,.server-card-meta,.network-status,.queue-heading p,.match-steps li{color:var(--muted)}.live-server-card{background:#0b110c;border-color:var(--line)}.server-card-meta .available{color:var(--green)}.matchmaking-shell{margin-bottom:70px;grid-template-columns:185px minmax(0,1fr) 300px}.match-steps{border-color:var(--line)}.match-steps li.active,.match-steps li.active>span{color:var(--green);border-color:var(--green);box-shadow:none}.match-steps li>span{background:#172016;border-color:#394636}.queue-controls .btn,.mode-tab{min-height:44px}.mode-tab{background:#141d14;border-color:#ffffff25;color:#b6c2b0}.mode-tab.active{color:var(--green);border-color:var(--green);background:#a6ed7610}.queue-content{min-width:0}.queue-heading{padding-right:240px}.player-slot{background:#101810;border-color:#ffffff18}.slot-avatar.placeholder{background:#1c271b;color:#7a8d73}.queue-empty .player-slots{display:none}.queue-empty .queue-content{min-height:110px}.queue-empty .queue-content::after{content:"BE THE FIRST IN. BRING THE NEXT RIVAL.";display:block;font:9px monospace;letter-spacing:.1em;color:#7e9176;margin-top:22px}.queue-empty .queue-summary{display:none}.slot-vs,.slot-status{color:#84977d}.veto-preview{border-color:var(--line)}
.v2-guardian{display:grid;grid-template-columns:30% 1fr;gap:50px;padding:56px;border:1px solid #a6ed7630;border-radius:8px;background:radial-gradient(ellipse at 10% 50%,#a6ed7610,transparent 60%),#111612;margin-bottom:64px}.guardian-emblem{align-self:center;justify-self:center;position:relative;font:200 190px/1 Arial;color:#a6ed76;text-shadow:0 0 50px #a6ed7633}.guardian-emblem span{position:absolute;inset:0;display:grid;place-items:center;font:700 44px "Chakra Petch",sans-serif}.v2-guardian p{max-width:660px;font-size:13px;line-height:1.8;color:var(--muted)}.v2-guardian .guardian-subtitle{font-size:19px;color:#e1e9db;margin:15px 0}.v2-guardian ul{display:flex;flex-wrap:wrap;gap:12px 24px;list-style:none;padding:0;margin:22px 0;color:#c1d3b5;font-size:11px}.v2-guardian li::before{content:"+ ";color:var(--green)}.v2-guardian small{display:block;font-size:10px;color:#879380;margin-top:12px}.v2-rankings{margin-bottom:64px}.v2-rankings .ranking-panel{position:static;display:block;width:100%;max-width:none;background:#111613;border:1px solid var(--line);border-radius:6px;margin:0}.v2-rankings .elo-leaderboard-panel{position:static;display:block!important;width:100%;max-height:none;background:none;border:0;box-shadow:none}.elo-board-head{color:#e0e8da;border-color:var(--line)}.elo-board-row{border-color:var(--line);min-height:44px}.elo-board-row:first-child{border-color:var(--green);background:#a6ed7608}.small-link{color:var(--green)}.maps-section{display:block;margin:0 0 64px;padding:0;position:relative}.maps-section .section-heading{max-width:none;margin-bottom:24px}.maps-section .section-heading>span{color:var(--green)}.maps-section .section-heading p{color:var(--muted);max-width:none;margin:14px 0}.maps-section>.outline-link{position:static;margin-bottom:20px}.maps-section .map-grid,.maps-section.expanded .map-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row;gap:18px;overflow:visible}.maps-section .map-card{display:block;height:215px;border:1px solid var(--line);border-radius:5px}.maps-section:not(.expanded) .map-card:nth-child(n+7){display:none}.maps-section .map-card img{width:100%;height:100%;object-fit:cover;filter:saturate(.7)}.maps-section .map-meta{left:22px;bottom:22px}.maps-section .map-meta h3{font:700 22px "Chakra Petch",sans-serif}.map-shade{background:linear-gradient(0deg,#081008ef,transparent 90%)}.archive-lore{display:block;font:11px/1.5 Arial;color:#bdc8b5;margin-top:7px}.format-section{margin-bottom:64px}.steps article{background:#111613;border-color:var(--line)}.steps p{color:var(--muted)}.steps strong{color:var(--green)}.community-section{background:#141c13;border-color:var(--line);padding:30px 4%}.community-section p,footer{color:var(--muted)}footer{background:#090c09;border-color:var(--line)}
/* Steam identity lock: presentation only; authentication remains owned by the original popup flow. */
#navLogin.animated-signin{min-width:132px;min-height:44px;border:1px solid #a6ed7680;border-radius:4px;background:#182114;color:#d6ffc0;overflow:hidden;position:relative;padding:0 18px;box-shadow:none}#navLogin.animated-signin::before{content:"⌖";font:22px monospace;position:static;display:inline-block;margin-right:10px;background:none;transform:none;width:auto;height:auto;transition:transform .2s}#navLogin.animated-signin::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,#a6ed7630 50%,transparent 70%);transform:translateX(-110%);transition:transform .45s}#navLogin.animated-signin:hover::after{transform:translateX(110%)}#navLogin.animated-signin:hover::before{transform:rotate(90deg)}#navLogin.animated-signin:active{transform:scale(.96)}#navLogin.animated-signin.is-opening{background:#273d1c;border-color:#c3ff9b;animation:identity-lock .5s ease-out}#navLogin.is-opening .signin-copy{font-size:0}#navLogin.is-opening .signin-copy::after{content:"LINKING ID";font-size:10px}#navLogin .signin-spinner{display:none!important}.signin-success{display:flex!important;align-items:center;gap:12px;background:#172711!important;border:1px solid var(--green)!important;inset:0!important;animation:identity-lock .35s ease-out!important;font:10px monospace!important;color:#d6ffc0!important}.identity-reticle{font-size:30px}.login-reveal-pending{opacity:0}.login-revealed{animation:identity-lock .3s ease-out}.signin-success svg,.login-jar,.jar-percent{display:none!important}@keyframes identity-lock{0%{clip-path:inset(40% 0);filter:brightness(2)}100%{clip-path:inset(0);filter:brightness(1)}}
@media(max-width:1200px){.nav{gap:18px}.nav-links{gap:15px;order:3;width:100%;justify-content:center}.matchmaking-shell{grid-template-columns:160px minmax(0,1fr)}.veto-preview{grid-column:2}.live-servers{flex-wrap:wrap}.network-status{max-width:none}.mode-card-content{padding:20px}.mode-card h2{font-size:23px}}
@media(max-width:760px){html{scroll-padding-top:130px}.nav{padding:12px 4%;gap:12px;position:sticky;bottom:auto}.nav-links{display:flex;position:static;height:auto;background:none;border:0;overflow-x:auto;justify-content:flex-start;gap:22px;padding:8px 0 4px;flex-wrap:nowrap}.nav-links a{font-size:10px;min-height:28px;display:flex;align-items:center}.nav-actions{display:flex}.brand strong{font-size:19px}.hero{padding:64px 5vw 48px;min-height:560px;background-position:62% center}.hero h1{font-size:clamp(43px,9vw,66px)}.hero-copy{font-size:16px}.hero-mapline{max-width:300px;font-size:11px}.hero .eyebrow{font-size:8px;letter-spacing:.16em}.hero-ctas{display:grid;max-width:340px}.hero-coordinate{margin-top:35px;font-size:8px}.v2-stats{grid-template-columns:repeat(2,1fr);margin-bottom:40px}.v2-stats>div,.v2-stats>a{padding:18px 14px;border-bottom:1px solid var(--line)}.v2-stats strong{font-size:10px}.v2-stats span{font-size:10px;line-height:1.5}.v2-section-title{display:block}.v2-section-title p{margin-top:10px}.mode-cards{grid-template-columns:1fr}.mode-card{height:310px}.mode-card-content{padding:24px;inset:auto 0 0;margin:0}.mode-card h2,.mode-card.flying h2{font-size:27px}.mode-card p{min-height:0}.mode-card .btn{width:100%}.live-servers{padding:16px}.server-intro{width:100%}.live-server-cards{flex-direction:column;flex-basis:100%}.server-card-body strong{font-size:12px}.network-status>span#serverStatus{max-width:none}.matchmaking-shell{grid-template-columns:1fr;margin-bottom:40px}.match-steps{padding:18px}.match-steps ol{display:flex;flex-wrap:wrap;gap:16px}.match-steps li{font-size:8px}.queue-content,.veto-preview,.matchmaking-shell>#matchLobby{grid-column:1}.queue-heading{padding:0}.queue-controls{position:static;display:flex;flex-wrap:wrap;justify-content:space-between;margin:16px 0;gap:10px}.queue-controls .btn{font-size:11px;min-height:46px}.queue-content{padding:20px}.queue-empty .queue-content::after{font-size:8px;line-height:1.8}.player-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.slot-vs{grid-column:1/-1}.player-slot{height:115px}.player-slot strong{font-size:11px}.veto-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.veto-card{min-height:140px}.veto-actions{flex-wrap:wrap;gap:12px}.veto-actions button{min-height:46px}.v2-guardian{grid-template-columns:1fr;gap:20px;padding:26px;margin-bottom:40px}.guardian-emblem{font-size:110px}.guardian-emblem span{font-size:28px}.v2-guardian .guardian-subtitle{font-size:17px}.v2-guardian ul{display:grid}.maps-section .map-grid,.maps-section.expanded .map-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.maps-section .map-card{height:180px}.maps-section .map-meta{left:12px;bottom:16px}.maps-section .map-meta h3{font-size:17px}.archive-lore{font-size:10px}.elo-board-head{padding:14px 10px;height:auto;gap:10px}.elo-board-head>span{font-size:11px}.elo-board-row{padding:8px 0}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}footer{padding-bottom:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.mode-card:hover,.btn:hover{transform:none}}
/* Explicitly retire legacy compact-card and mobile-label treatments. */
.hero{margin-inline:-4vw}.hero h1 span{background:none;-webkit-text-fill-color:var(--green);color:var(--green)}.hero-shell{width:100%}.mode-cards{max-width:none;margin:0}.mode-card-content{height:auto}.mode-card.flying .mode-card-content{inset:auto 0 0;margin:0;width:100%;height:auto;display:block;padding:26px}.mode-card h2{white-space:normal}.mode-card.flying h2{white-space:normal;line-height:1.2}.mode-card.flying p{font-size:12px;line-height:1.65;margin-bottom:10px}.mode-card.flying .flying-status{margin:10px 0 16px}.mode-card.flying .btn-join{width:100%;height:46px;min-height:46px}.mode-queue b,.wingman .mode-queue b{color:var(--green)}.wingman .btn-primary{background:var(--green);border-color:#c2ff9f;box-shadow:none}.maps-section .section-heading h2,.community-section strong{color:var(--text)}#navLogin.animated-signin{display:inline-flex;align-items:center;justify-content:center;gap:8px}#navLogin.animated-signin::before{content:"◎";margin:0;line-height:1}.v2-rankings .elo-board-rows:empty::after{content:"Rankings will appear when available.";display:block;padding:24px;color:var(--muted);font-size:12px}.archive-lore{order:2}
@media(max-width:850px){.nav{height:auto}.nav-links{top:auto;bottom:auto}.nav-links a:not(.admin-nav-link){font-size:10px}.nav-links a::after{content:none!important}.nav-links{margin:0}.mode-card.flying .mode-card-content{padding:24px}.hero-shell{width:100%}.maps-section{width:100%}.nav-links a{min-height:44px}.brand{max-width:52%}.brand strong{font-size:18px}.account-copy{max-width:65px}}
@media(max-width:850px){.nav>.nav-actions{width:auto;padding:0;margin-left:auto}.nav-links{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;gap:0 20px;padding:0 0 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.nav-links::-webkit-scrollbar{display:none}.nav-links a:not(.admin-nav-link){font-size:10px;min-height:40px}.nav-links a{flex-shrink:0}.nav-links .hidden{display:none!important}.brand{max-width:none}.nav{gap:8px 12px}.mode-card.flying h2{font-size:24px}}

/* 2026-10-17: Discord nav icon + resilient live-server status layout */
.nav-discord{display:inline-flex!important;align-items:center;gap:7px}.nav-discord img{width:24px;height:24px;display:block;border-radius:7px;object-fit:cover;box-shadow:0 0 12px #79ff4b55;transition:transform .18s ease,filter .18s ease,box-shadow .18s ease}.nav-discord:hover img,.nav-discord:focus-visible img{transform:translateY(-1px) scale(1.06);filter:brightness(1.08);box-shadow:0 0 18px #8dff5f88}.nav-discord span{display:inline-block}.live-server-card{min-width:0;overflow:hidden}.server-card-body{min-width:0;flex:1}.server-card-body strong{overflow:hidden;text-overflow:ellipsis}.server-card-meta{min-width:0;flex-wrap:wrap;align-items:center;row-gap:4px}.server-card-meta span:first-child{min-width:0;flex:1 1 auto}.server-card-meta span:last-child{flex:0 0 auto;margin-left:auto;white-space:nowrap}.server-card-meta .available{font-size:.95em}
@media(max-width:1350px){.server-card-meta span:last-child{flex-basis:100%;width:100%;text-align:right;margin-left:0}}
@media(max-width:760px){.nav-discord{gap:0!important}.nav-discord span{display:none}.nav-discord img{width:26px;height:26px}.server-card-meta span:last-child{flex-basis:auto;width:auto;margin-left:auto;text-align:right}}
