﻿:root {
  --m-bg: #07090d;
  --m-surface: #0d1117;
  --m-surface-2: #121720;
  --m-surface-3: #171d26;
  --m-line: rgba(255,255,255,.09);
  --m-line-strong: rgba(255,255,255,.16);
  --m-text: #f5f7fa;
  --m-muted: #adb6c3;
  --m-dim: #808b99;
  --m-red: #ff5f57;
  --m-cyan: #58cfff;
  --m-mint: #4fe3c1;
  --m-lime: #b6ff3b;
  --m-gold: #f4ca64;
  --m-space-1: 4px;
  --m-space-2: 8px;
  --m-space-3: 12px;
  --m-space-4: 16px;
  --m-space-5: 24px;
  --m-space-6: 32px;
  --m-radius-sm: 4px;
  --m-radius: 8px;
  --m-shadow: 0 18px 55px rgba(0,0,0,.32);
  --m-fast: 180ms ease;
}

html { color-scheme: dark; background: var(--m-bg); }
body { background: var(--m-bg); color: var(--m-text); }
button, a, input, select, textarea { transition: border-color var(--m-fast), background-color var(--m-fast), color var(--m-fast), transform var(--m-fast), box-shadow var(--m-fast); }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid var(--m-cyan); outline-offset: 2px; }
.btn { min-height: 44px; border-radius: var(--m-radius-sm); font-weight: 800; }
.btn-primary { background: var(--m-red); color: #08090b; box-shadow: 0 8px 28px rgba(255,95,87,.18); }
.btn-primary:hover { background: #ff7770; transform: translateY(-1px); }
.btn-line { border-color: var(--m-line-strong); background: rgba(255,255,255,.025); }
.btn-line:hover { border-color: rgba(255,255,255,.3); background: rgba(255,255,255,.06); }

/* Shared product shell */
.hub-topbar { border-bottom-color: var(--m-line); background: rgba(7,9,13,.9); box-shadow: 0 10px 36px rgba(0,0,0,.22); backdrop-filter: blur(18px); }
.hub-nav { border-color: var(--m-line); background: rgba(10,13,18,.82); }
.hub-nav a, .hub-nav button { min-height: 42px; }
.hub-nav a[aria-current="page"], .hub-nav button[data-active="true"] { background: rgba(255,95,87,.11); color: var(--m-text); box-shadow: inset 0 -2px var(--m-red); }
.topnav { border-bottom: 1px solid var(--m-line); background: rgba(7,9,13,.9); box-shadow: 0 10px 36px rgba(0,0,0,.22); backdrop-filter: blur(18px); }
.topnav-inner { min-height: 68px; display: grid; grid-template-columns: auto minmax(360px,1fr) auto; align-items: center; gap: 18px; }
.topnav .brand { flex: none; }
.topnav .navlinks { width: fit-content; max-width: 100%; justify-self: center; overflow-x: auto; scrollbar-width: none; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.topnav .navlinks::-webkit-scrollbar { display: none; }
.topnav .navlink { flex: 0 0 auto; min-height: 68px; display: inline-flex; align-items: center; justify-content: center; padding: 2px 18px 0; border-radius: 0; border-bottom: 2px solid transparent; text-decoration: none; }
.topnav .navlink:hover { color: var(--m-text); }
.topnav .navlink[data-active="true"] { border-bottom-color: var(--m-lime); background: transparent; color: var(--m-lime); box-shadow: none; }
.topnav .nav-right { justify-self: end; flex: none; }
.topnav .mobile-more-trigger, .mobile-nav-menu { display: none; }
.section { padding-block: clamp(40px, 6vw, 76px); }
.page-kicker { color: var(--m-cyan); letter-spacing: .12em; }
.discussion-empty, .empty-state { border-color: var(--m-line); background: var(--m-surface); }
.profile-card, .event-card, .pulse-thread, .partner-card, .home-card { border-color: var(--m-line); border-radius: var(--m-radius); box-shadow: none; }
.profile-card:hover, .event-card:hover, .pulse-thread:hover, .partner-card:hover { border-color: var(--m-line-strong); transform: translateY(-2px); box-shadow: var(--m-shadow); }

/* Home: one clear hierarchy, then distinct functional bands. */
.hero {
  min-height: min(690px, calc(100svh - 68px));
  padding: clamp(62px,7vw,94px) 0 42px;
  background: #05070a url("/assets/valorant-agents-hero.jpg") center 48% / cover no-repeat;
}
.hero-glow,
.hero-grid,
.hero-brand-logo { display: none; }
.hero > .wrap { min-height: 550px; display: flex; flex-direction: column; justify-content: center; }
.hero-title { max-width: 760px; font-size: clamp(62px, 8vw, 116px); letter-spacing: 0; }
.hero-sub { max-width: 600px; color: #c4cbd3; font-size: clamp(15px,1.4vw,18px); line-height: 1.65; }
.hero > .wrap > .hero-actions { margin-top: 26px; margin-bottom: 18px; }
.stats-strip { margin-top: 38px; border-color: var(--m-line-strong); border-radius: 0; background: rgba(5,7,10,.86); backdrop-filter: blur(12px); }
.home-paths-section { padding: clamp(48px,7vw,82px) 0; border-bottom: 1px solid var(--m-line); background: #080b0f; }
.home-paths-head { margin-bottom: 24px; }
.home-paths-head span { color: var(--m-gold); font-size: 10px; font-weight: 900; text-transform: uppercase; }
.home-paths-head h2 { margin: 7px 0 0; color: var(--m-text); font: 800 clamp(28px,3.6vw,46px)/1 var(--font-display); letter-spacing: 0; text-transform: uppercase; }
.home-paths { gap: 10px; }
.home-paths button { min-height: 136px; border-radius: var(--m-radius); background: var(--m-surface); box-shadow: none; }
.home-paths button:hover { box-shadow: var(--m-shadow); }
.home-partner-spotlight { border-block: 1px solid rgba(244,202,100,.16); background: #0b0c0f; }
.partner-spotlight-main { border-radius: var(--m-radius); background: #111216; }
.home-live-band { background: #090d13 !important; }
.live-player-shell { min-height: 390px; overflow: hidden; border: 1px solid var(--m-line-strong); border-radius: var(--m-radius); background: #030507; }
.home-live-band .live-player-shell iframe { width: 100%; height: 100%; min-height: 390px; display: block; border: 0; border-radius: 0; }
.live-player-placeholder { min-height: 390px; display: grid; place-content: center; justify-items: center; gap: 12px; padding: 32px; text-align: center; background: radial-gradient(circle at 50% 42%, rgba(182,255,59,.08), transparent 42%), #030507; }
.live-player-placeholder img { width: 72px; height: 64px; object-fit: contain; border: 1px solid rgba(244,202,100,.3); background: #f1ead6; }
.live-player-placeholder span { color: var(--m-lime); font-size: 10px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.live-player-placeholder strong { max-width: 340px; color: var(--m-text); font: 700 22px/1.15 var(--font-display); }
.aim-pro-hud .aim-combo[data-active="true"] { color: var(--m-lime); text-shadow: 0 0 12px rgba(182,255,59,.45); }
.profile-login-section { padding-top: 28px; }
.profile-login-benefits { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; padding: 1px; background: var(--m-line); }
.profile-login-benefits article { min-height: 190px; display: grid; align-content: end; gap: 8px; padding: clamp(20px,3vw,34px); background: linear-gradient(145deg,rgba(139,124,255,.08),transparent 55%),var(--m-surface); }
.profile-login-benefits span { color: #8b7cff; font: 800 11px/1 var(--font-display); letter-spacing: .12em; }
.profile-login-benefits strong { font: 700 clamp(22px,2.4vw,34px)/1 var(--font-display); text-transform: uppercase; }
.profile-login-benefits p { max-width: 320px; margin: 0; color: var(--m-muted); line-height: 1.55; }
.home-personal-band { background: #0d0c10 !important; }
.home-contest-band { background: #10100b !important; }

/* Clip Arena: controls stay outside the 9:16 media viewport. */
.clips-experience { background: #05070a; }
.clip-hubbar.clip-topline { min-height: 54px; border: 1px solid var(--m-line); border-radius: var(--m-radius); background: rgba(13,17,23,.96); box-shadow: 0 12px 30px rgba(0,0,0,.25); }
.clip-hub-copy h1 { margin: 0; font: inherit; font-weight: 800; text-transform: uppercase; }
.clip-filter-row { min-height: 44px; border: 1px solid var(--m-line); border-radius: var(--m-radius); background: rgba(13,17,23,.94); }
.clip-filter-row button { min-height: 38px; border-radius: var(--m-radius-sm); }
.clips-experience .clip-screen { border-color: var(--m-line-strong); border-radius: var(--m-radius); background: #030507; box-shadow: 0 22px 70px rgba(0,0,0,.46); }
.clip-card-top, .clip-actions button, .clip-sound-toggle { backdrop-filter: blur(14px); }
.clip-upload-studio { border-radius: var(--m-radius); }

/* Events: editorial imagery with aligned, repeatable metadata. */
.events-command { padding-top: clamp(32px,4vw,52px); padding-bottom: 24px; }
.events-command-stats { border-radius: var(--m-radius); overflow: hidden; background: var(--m-surface); }
.event-jump-nav { position: sticky; top: 68px; z-index: 35; border-block: 1px solid var(--m-line); background: rgba(7,9,13,.94); backdrop-filter: blur(18px); }
.event-jump-inner { min-height: 54px; display: flex; align-items: center; gap: 8px; overflow-x: auto; scrollbar-width: none; }
.event-jump-inner::-webkit-scrollbar { display: none; }
.event-jump-inner a { min-height: 36px; display: inline-flex; align-items: center; flex: 0 0 auto; padding: 0 14px; border: 1px solid transparent; border-radius: var(--m-radius-sm); color: var(--m-muted); font-size: 11px; font-weight: 850; text-decoration: none; text-transform: uppercase; letter-spacing: .04em; }
.event-jump-inner a:hover, .event-jump-inner a:focus-visible { border-color: var(--m-line-strong); background: var(--m-surface); color: var(--m-text); }
.gdl-anchor { scroll-margin-top: 138px; }
.events-next-band { border-block: 1px solid rgba(79,227,193,.15); background: #08100f; }
.events-grid { display: grid; gap: 14px; grid-template-columns: repeat(3, minmax(0,1fr)); }
.events-spotlight-grid { grid-template-columns: minmax(0, 1fr); }
.event-spotlight { position: relative; padding-top: clamp(36px,4vw,54px); }
.event-spotlight::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(circle at 90% 5%, rgba(255,95,87,.08), transparent 52%); }
.events-inline-filters { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; color: var(--m-dim); font-size: 12px; }
.events-inline-filters span { display: inline-flex; align-items: center; gap: 6px; border: 1px solid var(--m-line); border-radius: 999px; padding: 6px 10px; background: rgba(255,255,255,.02); }
.events-inline-filters strong { color: var(--m-text); }
.event-card { border: 1px solid var(--m-line); border-radius: var(--m-radius); background: var(--m-surface); }
.event-card-featured { min-height: 430px; border-color: rgba(79,227,193,.38); box-shadow: var(--m-shadow); }
.event-card img, .event-card-media img { object-position: center; }
.event-card .ecard-body { min-width: 0; }
.events-archive-band { border-top: 1px solid var(--m-line); background: #090a0d; }

/* GDL competitive hub */
.gdl-v2 { padding-top: 20px; border-block: 1px solid var(--m-line); background: #080b0f; }
.gdl-v2 > .wrap { display: grid; gap: 28px; }
.gdl-v2 .gdl-hero { min-height: 610px; display: grid; grid-template-columns: minmax(0,1fr) minmax(360px,430px); border: 1px solid var(--m-line-strong); border-radius: var(--m-radius); overflow: hidden; background: var(--m-surface); box-shadow: var(--m-shadow); }
.gdl-v2 .gdl-hero-copy { min-width: 0; display: flex; flex-direction: column; justify-content: center; padding: 52px; background: #0b0f14; }
.gdl-hero-eyebrow { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.gdl-v2 .gdl-hero-copy h2 { max-width: 720px; margin: 18px 0 20px; color: var(--m-text); font: 800 72px/.88 var(--font-display); letter-spacing: 0; text-transform: uppercase; }
.gdl-v2 .gdl-hero-copy p { max-width: 700px; margin: 0; color: var(--m-muted); font-size: 15px; line-height: 1.65; }
.gdl-v2 .gdl-hero-media { position: relative; min-height: 610px; display: grid; place-items: center; padding: 18px; border-left: 1px solid var(--m-line); background: #040608; }
.gdl-v2 .gdl-hero-media img { width: 100%; height: 100%; max-height: 574px; object-fit: contain; object-position: center; }
.gdl-v2 .gdl-hero-media > div { position: absolute; right: 28px; bottom: 24px; display: grid; padding: 9px 12px; border: 1px solid rgba(244,202,100,.36); background: rgba(4,6,8,.86); backdrop-filter: blur(10px); }
.gdl-v2 .gdl-hero-media > div span { color: var(--m-dim); font-size: 8px; font-weight: 900; text-transform: uppercase; }
.gdl-v2 .gdl-hero-media > div strong { color: var(--m-gold); font: 700 14px var(--font-display); }
.gdl-v2 .gdl-focus-match { max-width: 640px; display: grid; gap: 9px; margin-top: 28px; padding: 18px; border: 1px solid var(--m-line); border-left: 3px solid var(--m-mint); border-radius: var(--m-radius-sm); background: #0e1419; }
.gdl-v2 .gdl-focus-match > div { display: flex; align-items: center; gap: 14px; }
.gdl-v2 .gdl-focus-match .gdl-team-link strong { font-size: 18px; }
.gdl-v2 .hero-actions { margin-top: 18px; }
.gdl-progress { max-width: 640px; display: grid; gap: 8px; margin-top: 22px; }
.gdl-progress > span { height: 4px; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.08); }
.gdl-progress > span b { display: block; height: 100%; background: var(--m-mint); }
.gdl-progress small { color: var(--m-dim); font-size: 10px; font-weight: 800; text-transform: uppercase; }
.b-wait { border-color: rgba(244,202,100,.35); color: var(--m-gold); background: rgba(244,202,100,.08); }

.gdl-live-grid { display: grid; grid-template-columns: minmax(0,1fr) 280px; gap: 14px; }
.gdl-next-block, .gdl-tournament-status, .gdl-standings-block, .gdl-finals-block { min-width: 0; border: 1px solid var(--m-line); border-radius: var(--m-radius); background: var(--m-surface); }
.gdl-next-block, .gdl-standings-block, .gdl-finals-block { padding: 24px; }
.gdl-block-head { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin-bottom: 18px; }
.gdl-block-head h3 { margin: 4px 0 0; color: var(--m-text); font: 700 28px/1.05 var(--font-display); letter-spacing: 0; text-transform: uppercase; }
.gdl-block-head > small { max-width: 360px; color: var(--m-dim); font-size: 10px; text-align: right; }
.gdl-next-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.gdl-match-card { min-width: 0; overflow: hidden; border: 1px solid var(--m-line); border-radius: var(--m-radius-sm); background: #090d12; }
.gdl-match-card[data-featured="true"] { border-color: rgba(79,227,193,.48); box-shadow: inset 0 2px var(--m-mint); }
.gdl-match-card[data-status="Live ora"] { border-color: rgba(255,95,87,.5); box-shadow: inset 0 2px var(--m-red); }
.gdl-match-card > header { min-height: 44px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 13px; border-bottom: 1px solid var(--m-line); background: rgba(255,255,255,.02); }
.gdl-match-card > header span { color: var(--m-cyan); font-size: 9px; font-weight: 900; text-transform: uppercase; }
.gdl-match-card > header b { color: var(--m-muted); font-size: 10px; }
.gdl-match-card-versus { min-height: 118px; display: grid; grid-template-columns: minmax(0,1fr) 58px minmax(0,1fr); align-items: center; gap: 8px; padding: 18px 14px; }
.gdl-match-card-versus .gdl-team-link { min-width: 0; display: grid; gap: 5px; text-align: center; }
.gdl-match-card-versus .gdl-team-link strong { overflow: hidden; color: var(--m-text); font: 700 17px var(--font-display); text-overflow: ellipsis; text-transform: uppercase; }
.gdl-match-card-versus .gdl-team-link span { color: var(--m-dim); font-size: 8px; }
.gdl-match-card-versus .gdl-score-cell { margin: auto; }
.gdl-match-card > footer { min-height: 60px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 9px 12px; border-top: 1px solid var(--m-line); }
.gdl-match-card .gdl-stream-links { display: flex; gap: 5px; }
.gdl-match-card .gdl-stream-links a { min-width: 72px; min-height: 36px; padding: 6px 8px; border-radius: var(--m-radius-sm); }
.gdl-match-card .gdl-stream-links span { font-size: 7px; }
.gdl-match-card .gdl-stream-links strong { font-size: 8px; }
.gdl-tournament-status { min-height: 100%; display: flex; flex-direction: column; padding: 24px; background: #0b1212; }
.gdl-tournament-status > strong { margin-top: 20px; color: var(--m-mint); font: 800 66px/.9 var(--font-display); }
.gdl-tournament-status > p { margin: 8px 0 22px; color: var(--m-muted); font-size: 11px; text-transform: uppercase; }
.gdl-tournament-status dl { display: grid; grid-template-columns: 1fr 1fr; margin: 0; border: 1px solid var(--m-line); }
.gdl-tournament-status dl div { display: grid; gap: 4px; padding: 12px; border-right: 1px solid var(--m-line); border-bottom: 1px solid var(--m-line); }
.gdl-tournament-status dl div:nth-child(2n) { border-right: 0; }
.gdl-tournament-status dl div:nth-last-child(-n+2) { border-bottom: 0; }
.gdl-tournament-status dt { color: var(--m-dim); font-size: 8px; font-weight: 900; text-transform: uppercase; }
.gdl-tournament-status dd { margin: 0; color: var(--m-text); font: 700 18px var(--font-display); }
.gdl-tournament-status > a { margin-top: auto; padding-top: 22px; color: var(--m-gold); font-size: 10px; font-weight: 900; text-transform: uppercase; }

.gdl-qualification-note { display: inline-flex; align-items: center; gap: 7px; color: var(--m-muted); font-size: 9px; font-weight: 800; text-transform: uppercase; }
.gdl-qualification-note i { width: 9px; height: 9px; background: var(--m-mint); box-shadow: 0 0 12px rgba(79,227,193,.5); }
.gdl-standings-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.gdl-standing-panel { min-width: 0; overflow: hidden; border: 1px solid var(--m-line); border-radius: var(--m-radius-sm); background: #090d12; }
.gdl-standing-panel > header { min-height: 50px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 15px; border-bottom: 1px solid var(--m-line); }
.gdl-standing-panel > header span { color: var(--m-text); font: 700 16px var(--font-display); text-transform: uppercase; }
.gdl-standing-panel > header small { color: var(--m-dim); font-size: 8px; text-transform: uppercase; }
.gdl-standing-head, .gdl-standing-row { display: grid; grid-template-columns: 32px minmax(0,1fr) repeat(4,42px); align-items: center; column-gap: 8px; padding-inline: 14px; }
.gdl-standing-head { min-height: 32px; color: var(--m-dim); font-size: 8px; font-weight: 900; text-transform: uppercase; }
.gdl-standing-row { position: relative; min-height: 58px; border-top: 1px solid var(--m-line); color: var(--m-muted); font-size: 11px; text-align: center; }
.gdl-standing-row[data-qualified="true"] { background: rgba(79,227,193,.045); }
.gdl-standing-row[data-qualified="true"]::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 2px; background: var(--m-mint); }
.gdl-standing-row[data-itsme="true"] { background: rgba(244,202,100,.07); }
.gdl-standing-row[data-itsme="true"]::before { background: var(--m-gold); }
.gdl-standing-row > span:first-child { font-weight: 900; }
.gdl-standing-row .gdl-team-link { min-width: 0; display: flex; align-items: center; justify-content: flex-start; gap: 8px; text-align: left; }
.gdl-standing-row .gdl-team-link strong { overflow: hidden; color: var(--m-text); font: 700 13px var(--font-display); text-overflow: ellipsis; }
.gdl-standing-row .gdl-team-link span { color: var(--m-dim); font-size: 7px; }
.gdl-standing-row > strong { color: var(--m-text); font: 700 16px var(--font-display); }

.gdl-finals-block { background: #0b0d11; }
.gdl-finals-track { display: grid; grid-template-columns: minmax(0,1fr) 34px minmax(260px,.72fr); align-items: center; gap: 12px; }
.gdl-semi-stack { display: grid; gap: 8px; }
.gdl-semi-stack article, .gdl-final-card { min-width: 0; display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); align-items: center; gap: 12px; min-height: 72px; padding: 14px 16px; border: 1px solid var(--m-line); background: #080b0f; }
.gdl-semi-stack article > span, .gdl-final-card > span { grid-column: 1/-1; color: var(--m-cyan); font-size: 8px; font-weight: 900; text-transform: uppercase; }
.gdl-semi-stack article strong, .gdl-final-card strong { overflow: hidden; color: var(--m-text); font: 700 14px var(--font-display); text-overflow: ellipsis; text-transform: uppercase; }
.gdl-semi-stack article strong:last-child, .gdl-final-card strong:last-of-type { text-align: right; }
.gdl-semi-stack article b, .gdl-final-card b { color: var(--m-red); font-size: 9px; text-transform: uppercase; }
.gdl-finals-arrow { color: var(--m-dim); font: 700 28px var(--font-display); text-align: center; }
.gdl-final-card { min-height: 154px; border-color: rgba(244,202,100,.35); background: #11100c; }
.gdl-final-card > span { color: var(--m-gold); }
.gdl-final-card small { grid-column: 1/-1; color: var(--m-dim); font-size: 8px; text-transform: uppercase; }

.gdl-v2 .gdl-calendar-head { margin-top: 8px; padding-top: 28px; border-top: 1px solid var(--m-line); }
.gdl-v2 .gdl-calendar-head h2 { margin: 4px 0 5px; font: 700 32px var(--font-display); letter-spacing: 0; text-transform: uppercase; }
.gdl-v2 .gdl-calendar-head > div:first-child > small { color: var(--m-dim); font-size: 9px; }
.gdl-v2 .filters { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 5px; }
.gdl-v2 .fchip { min-height: 40px; padding-inline: 14px; border-radius: var(--m-radius-sm); }
.gdl-v2 .gdl-table-wrap { overflow-x: auto; border: 1px solid var(--m-line); border-radius: var(--m-radius); background: var(--m-surface); }
.gdl-v2 .gdl-table { min-width: 1120px; }
.gdl-v2 .gdl-table th { background: #0a0e13; }
.gdl-v2 .gdl-table tr[data-highlight="true"] { box-shadow: inset 3px 0 var(--m-mint); }
.gdl-v2 .gdl-table tr[data-status="Risultato in attesa"] { background: rgba(244,202,100,.025); }
.gdl-v2 .gdl-table td { height: 78px; }
.gdl-v2 .gdl-group-pill { white-space: nowrap; }
.gdl-mobile-calendar { display: none; }
.gdl-v2 .gdl-streamers-panel { margin-top: 0; border-radius: var(--m-radius); background: var(--m-surface); }
.gdl-v2 .gdl-streamers-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px 16px 10px; border-bottom: 1px solid var(--m-line); }
.gdl-v2 .gdl-streamer-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; padding: 14px; min-width: 0; overflow: hidden; }
.gdl-v2 .gdl-streamer-card { min-width: 0; min-height: 90px; display: grid; grid-template-columns: 44px minmax(0,1fr) auto; gap: 10px; align-items: center; padding: 12px; border-radius: var(--m-radius-sm); background: #090d12; }
.gdl-v2 .gdl-streamer-mark { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid var(--m-line); border-radius: 999px; color: var(--m-mint); font-weight: 900; font-size: 12px; text-transform: uppercase; }
.gdl-v2 .gdl-streamer-info { min-width: 0; }
.gdl-v2 .gdl-streamer-info span,
.gdl-v2 .gdl-streamer-info small,
.gdl-v2 .gdl-streamer-info strong,
.gdl-v2 .gdl-streamer-mark,
.gdl-v2 .gdl-streamer-actions a { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gdl-v2 .gdl-streamer-info strong { display: block; color: var(--m-text); font: 700 14px var(--font-display); text-transform: uppercase; }
.gdl-v2 .gdl-streamer-info small { color: var(--m-dim); font-size: 11px; }
.gdl-v2 .gdl-streamer-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 6px; }
.gdl-v2 .gdl-streamer-actions a { display: inline-flex; align-items: center; justify-content: center; min-width: 58px; min-height: 30px; padding: 5px 8px; border-radius: var(--m-radius-sm); border: 1px solid var(--m-line); background: rgba(255,255,255,.03); }

@media (max-width: 980px) {
  .gdl-v2 .gdl-hero { grid-template-columns: minmax(0,1fr) 330px; min-height: 540px; }
  .gdl-v2 .gdl-hero-copy { padding: 34px; }
  .gdl-v2 .gdl-hero-copy h2 { font-size: 54px; }
  .gdl-v2 .gdl-hero-media { min-height: 540px; }
  .gdl-live-grid { grid-template-columns: 1fr; }
  .gdl-tournament-status { min-height: 260px; }
  .gdl-tournament-status > a { margin-top: 20px; }
  .gdl-v2 .gdl-streamer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .events-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (max-width: 760px) {
  .events-command { padding-inline: 18px; }
  .events-grid { grid-template-columns: minmax(0,1fr); }
  .gdl-v2 { padding-top: 12px; }
  .gdl-v2 > .wrap { grid-template-columns: minmax(0,1fr); gap: 18px; padding-inline: 14px; }
  .gdl-v2 .gdl-hero { min-height: 0; grid-template-columns: 1fr; }
  .gdl-v2 .gdl-hero-copy { order: 2; padding: 26px 20px; }
  .gdl-v2 .gdl-hero-copy h2 { font-size: 44px; }
  .gdl-v2 .gdl-hero-media { order: 1; min-height: 0; aspect-ratio: 4/5; border-left: 0; border-bottom: 1px solid var(--m-line); }
  .gdl-v2 .gdl-hero-media img { max-height: none; }
  .gdl-v2 .gdl-focus-match > div { flex-wrap: wrap; }
  .gdl-v2 .hero-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .gdl-v2 .hero-actions .btn { width: 100%; }
  .gdl-next-block, .gdl-standings-block, .gdl-finals-block { padding: 18px 14px; }
  .gdl-block-head { align-items: flex-start; flex-direction: column; gap: 8px; }
  .gdl-block-head h3 { font-size: 23px; }
  .gdl-block-head > small { text-align: left; }
  .gdl-next-list, .gdl-standings-grid { min-width: 0; grid-template-columns: minmax(0,1fr); }
  .gdl-match-card-versus { min-height: 104px; padding-inline: 10px; }
  .gdl-standing-head, .gdl-standing-row { grid-template-columns: 26px minmax(0,1fr) repeat(4,30px); column-gap: 4px; padding-inline: 9px; }
  .gdl-standing-row .gdl-team-link span { display: none; }
  .gdl-finals-track { grid-template-columns: 1fr; }
  .gdl-finals-arrow { transform: rotate(90deg); }
  .gdl-v2 .gdl-calendar-head { align-items: flex-start; flex-direction: column; }
  .gdl-v2 .filters { width: 100%; flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; padding-bottom: 4px; }
  .gdl-v2 .fchip { flex: 0 0 auto; }
  .gdl-v2 .gdl-table-wrap { display: none; }
  .gdl-mobile-calendar { display: grid; gap: 8px; }
  .gdl-v2 .gdl-streamer-grid { grid-template-columns: 1fr; }
}

/* Forum and profile keep their own identity within the same system. */
.pulse-shell { gap: 18px; }
.pulse-thread { overflow: hidden; background: var(--m-surface); }
.pulse-thread-main h2, .pulse-thread-main p { overflow-wrap: anywhere; }
.pulse-create, .pulse-login .btn { border-radius: var(--m-radius-sm); }
.profile-public-card { border-radius: var(--m-radius); background: var(--m-surface); box-shadow: var(--m-shadow); }
.profile-public-card .profile-banner, .profile-public-card .profile-banner-empty { border-radius: var(--m-radius) var(--m-radius) 0 0; }
.profile-public-card .profile-social-links a { min-height: 44px; border-radius: var(--m-radius-sm); }
.profile-public-card .profile-gamer-panel { border-radius: var(--m-radius); background: #0a0d12; }
.minecraft-hero { min-height: min(690px, calc(100svh - 68px)); }
.minecraft-server-card, .minecraft-store-intro, .minecraft-rank-card, .minecraft-store-status { border-radius: var(--m-radius); }
.minecraft-rank-card { min-height: 380px; }

@media (max-width: 1160px) {
  .topnav-inner { grid-template-columns: auto minmax(0,1fr) auto; gap: 10px; }
  .topnav .quick-search-button { display: none; }
  .topnav .navlink { padding-inline: 12px; }
}

@media (max-width: 820px) {
  .topnav-inner { grid-template-columns: auto 1fr; align-items: center; padding-block: 9px; }
  .topnav .nav-right { justify-self: end; }
  .topnav .navlinks { grid-column: 1 / -1; grid-row: 2; width: 100%; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); justify-self: stretch; justify-content: stretch; overflow: hidden; border-radius: var(--m-radius); box-shadow: none; }
  .topnav .navlink { min-width: 0; width: 100%; padding-inline: 7px; font-size: 11px; }
  .topnav .navlink[data-mobile-secondary="true"] { display: none; }
  .topnav .mobile-more-trigger { display: inline-flex; }
  .mobile-nav-menu { grid-column: 1 / -1; grid-row: 3; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; width: 100%; padding: 10px; border: 1px solid var(--m-line-strong); border-radius: var(--m-radius); background: rgba(10,13,18,.98); box-shadow: var(--m-shadow); }
  .mobile-nav-menu a, .mobile-nav-menu button { min-height: 56px; min-width: 0; display: grid; align-content: center; gap: 3px; padding: 9px 11px; border: 1px solid var(--m-line); border-radius: var(--m-radius-sm); color: var(--m-muted); background: var(--m-surface); text-align: left; text-decoration: none; }
  .mobile-nav-menu a[data-active="true"] { border-color: rgba(182,255,59,.35); color: var(--m-lime); background: rgba(182,255,59,.07); }
  .mobile-nav-menu strong { color: inherit; font: 700 13px/1.1 var(--font-display); }
  .mobile-nav-menu span { overflow: hidden; color: var(--m-dim); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
  .mobile-nav-menu .mobile-search-entry { grid-column: 1 / -1; border-color: rgba(88,207,255,.28); }
  .event-jump-nav { top: 130px; }
  .gdl-anchor { scroll-margin-top: 196px; }
  .hero { min-height: auto; padding: 54px 0 34px; background-position: 52% center; }
  .hero > .wrap { min-height: 0; }
  .hero-title { font-size: clamp(52px,16vw,82px); }
  .events-command { grid-template-columns: 1fr; }
  .event-card-featured { min-height: 0; }
  .live-player-shell, .live-player-placeholder, .home-live-band .live-player-shell iframe { min-height: 300px; }
  .profile-login-benefits { grid-template-columns: 1fr; }
  .profile-login-benefits article { min-height: 150px; }
}

@media (max-width: 560px) {
  .topnav .brand { font-size: 0; }
  .topnav .brand-logo { width: 44px; }
  .topnav .nav-cta { max-width: 140px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .topnav .nav-cta-label { font-size: 0; }
  .topnav .nav-cta-label::after { content: "Accedi"; font-size: 11px; }
  .topnav .navlink { min-height: 44px; }
  .hero { background-position: 49% center; }
  main[data-screen-label="Home"] .hero { background-position: 29% center; }
  .hero-title { font-size: clamp(48px,16vw,68px); }
  .partner-row { overflow: visible; flex-wrap: wrap; gap: 7px; mask-image: none; }
  .partner-row > * { flex: 0 1 auto; }
  .pchip { white-space: normal; }
  .reflex-progress { grid-template-columns: repeat(5,minmax(62px,1fr)); overflow-x: auto; scrollbar-width: none; }
  .reflex-progress::-webkit-scrollbar { display: none; }
  .clips-experience .clip-screen { border-inline: 0; border-radius: 0; }
  .event-card { border-radius: 0; }
  .profile-public-card { border-inline: 0; border-radius: 0; }
}

/* Community Pulse: the homepage opens on current community activity. */
.hero > .wrap > .hero-actions .btn-primary {
  background: var(--m-lime);
  color: #07090d;
  box-shadow: 0 10px 34px rgba(182,255,59,.16);
}
.hero > .wrap > .hero-actions .btn-primary:hover { background: #c5ff67; }
.home-pulse-section {
  padding: clamp(48px, 7vw, 88px) 0;
  scroll-margin-top: 70px;
  border-block: 1px solid var(--m-line);
  background: #06080b;
}
.home-pulse-shell {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(280px,340px);
  border: 1px solid var(--m-line);
  background: var(--m-surface);
}
.home-pulse-main { min-width: 0; padding: clamp(22px,3vw,38px); }
.home-pulse-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  padding-bottom: 22px;
}
.home-pulse-head > div:first-child > span,
.home-news-head > div > span,
.newsroom-intro .wrap > span {
  color: var(--m-lime);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}
.home-pulse-head h2,
.home-news-head h2 {
  margin: 7px 0 5px;
  color: var(--m-text);
  font: 800 clamp(28px,3.6vw,48px)/.98 var(--font-display);
  letter-spacing: 0;
  text-transform: uppercase;
}
.home-pulse-head p { margin: 0; color: var(--m-muted); font-size: 13px; }
.home-pulse-tabs { display: flex; border-bottom: 1px solid var(--m-line); }
.home-pulse-tabs button {
  min-width: 68px;
  min-height: 40px;
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  color: var(--m-muted);
  font-size: 12px;
  font-weight: 800;
}
.home-pulse-tabs button:hover { color: var(--m-text); }
.home-pulse-tabs button[data-active="true"] { border-bottom-color: var(--m-lime); color: var(--m-lime); }
.home-thread-list { border-top: 1px solid var(--m-line); }
.home-thread {
  width: 100%;
  min-height: 116px;
  display: grid;
  grid-template-columns: 42px minmax(0,1fr) 158px;
  align-items: center;
  gap: 18px;
  padding: 18px 0;
  border: 0;
  border-bottom: 1px solid var(--m-line);
  background: transparent;
  color: var(--m-text);
  text-align: left;
}
.home-thread:hover { padding-inline: 12px; background: rgba(255,255,255,.025); }
.home-thread-rank { color: var(--m-dim); font: 800 13px/1 var(--font-display); }
.home-thread-copy { min-width: 0; display: grid; gap: 7px; }
.home-thread-copy small { display: flex; flex-wrap: wrap; gap: 8px; color: var(--m-dim); font-size: 10px; font-style: normal; }
.home-thread-copy small b { color: var(--m-lime); text-transform: uppercase; }
.home-thread-copy small i { font-style: normal; }
.home-thread-copy strong { overflow: hidden; color: var(--m-text); font: 750 clamp(18px,2vw,24px)/1.08 var(--font-display); text-overflow: ellipsis; }
.home-thread-copy > span { overflow: hidden; color: var(--m-muted); font-size: 12px; line-height: 1.5; text-overflow: ellipsis; white-space: nowrap; }
.home-thread-metrics { display: grid; grid-template-columns: 34px 44px 34px 58px 18px; align-items: center; justify-content: end; color: var(--m-muted); text-align: center; }
.home-thread-metrics b { color: var(--m-text); font-size: 18px; }
.home-thread-metrics small { color: var(--m-dim); font-size: 9px; text-transform: uppercase; }
.home-thread-metrics i { color: var(--m-lime); font-style: normal; font-size: 19px; }
.home-pulse-empty { min-height: 220px; display: grid; place-content: center; gap: 8px; color: var(--m-muted); text-align: center; }
.home-pulse-empty strong { color: var(--m-text); font: 750 24px/1.1 var(--font-display); }
.home-pulse-all {
  width: 100%;
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 18px;
  padding: 0 16px;
  border: 1px solid rgba(182,255,59,.52);
  border-radius: var(--m-radius-sm);
  background: transparent;
  color: var(--m-lime);
  font-weight: 850;
}
.home-pulse-all:hover { background: rgba(182,255,59,.07); }
.home-today-rail { display: grid; align-content: start; border-left: 1px solid var(--m-line); background: #090c11; }
.home-today-rail > header { display: grid; gap: 4px; padding: 24px; border-bottom: 1px solid var(--m-line); }
.home-today-rail > header span { color: var(--m-text); font: 800 20px/1 var(--font-display); text-transform: uppercase; }
.home-today-rail > header small { color: var(--m-dim); font-size: 10px; }
.home-today-item {
  min-width: 0;
  display: grid;
  gap: 7px;
  padding: 22px 24px;
  border: 0;
  border-bottom: 1px solid var(--m-line);
  background: transparent;
  color: var(--m-text);
  text-align: left;
}
.home-today-item:hover { background: rgba(255,255,255,.025); }
.home-today-item > small { color: var(--m-cyan); font-size: 9px; font-weight: 900; text-transform: uppercase; }
.home-today-item.event > small { color: var(--m-red); }
.home-today-item > strong { font: 750 17px/1.15 var(--font-display); }
.home-today-item > span:not(.home-today-media) { color: var(--m-muted); font-size: 11px; }
.home-today-media { aspect-ratio: 16/9; overflow: hidden; margin-bottom: 6px; border: 1px solid var(--m-line); background: #030507; }
.home-today-media img,
.home-today-media video { width: 100%; height: 100%; display: block; object-fit: cover; }
.home-today-create {
  min-width: 0;
  display: grid;
  grid-template-columns: 36px minmax(0,1fr);
  align-items: center;
  gap: 12px;
  padding: 22px 24px;
  border: 0;
  background: transparent;
  color: var(--m-text);
  text-align: left;
}
.home-today-create:hover { background: rgba(182,255,59,.055); }
.home-today-create > span { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid rgba(182,255,59,.48); color: var(--m-lime); font-size: 22px; }
.home-today-create div { min-width: 0; display: grid; gap: 3px; }
.home-today-create strong { font-size: 13px; }
.home-today-create small { color: var(--m-muted); font-size: 10px; line-height: 1.4; }

.home-news-section { padding: clamp(48px,7vw,86px) 0; border-bottom: 1px solid var(--m-line); background: #0a0d12; }
.home-news-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 26px; }
.home-news-head > div > span { color: var(--m-cyan); }
.home-news-head a {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  border: 0;
  background: transparent;
  color: var(--m-lime);
  font-weight: 850;
  text-decoration: none;
}
.home-news-grid { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(320px,.65fr); border-block: 1px solid var(--m-line); }
.home-news-feature { min-width: 0; display: grid; grid-template-columns: minmax(220px,.8fr) minmax(0,1fr); border: 0; border-right: 1px solid var(--m-line); background: transparent; color: var(--m-text); text-align: left; text-decoration: none; }
.home-news-feature:hover { background: rgba(255,255,255,.025); }
.home-news-image { min-height: 310px; overflow: hidden; border-right: 1px solid var(--m-line); background: #030507; }
.home-news-image img { width: 100%; height: 100%; display: block; object-fit: cover; }
.home-news-feature-copy { display: grid; align-content: center; gap: 12px; padding: clamp(24px,3vw,40px); }
.home-news-feature-copy small,
.home-news-list small,
.newsroom-index small,
.newsroom-article header small { color: var(--m-lime); font-size: 9px; font-weight: 900; text-transform: uppercase; }
.home-news-feature-copy strong { font: 800 clamp(24px,3vw,38px)/1 var(--font-display); text-transform: uppercase; }
.home-news-feature-copy > span { color: var(--m-muted); font-size: 13px; line-height: 1.55; }
.home-news-feature-copy b { color: var(--m-lime); font-size: 11px; }
.home-news-list { display: grid; }
.home-news-list > a { position: relative; min-width: 0; display: grid; grid-template-columns: 118px minmax(0,1fr); align-items: center; gap: 18px; min-height: 154px; padding: 18px 50px 18px 18px; border: 0; border-bottom: 1px solid var(--m-line); background: transparent; color: var(--m-text); text-align: left; text-decoration: none; }
.home-news-list > a:last-child { border-bottom: 0; }
.home-news-list > a:hover { background: rgba(255,255,255,.025); }
.home-news-thumb { width: 100%; aspect-ratio: 16/9; overflow: hidden; background: #030507; }
.home-news-thumb img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform 180ms ease; }
.home-news-list > a:hover .home-news-thumb img { transform: scale(1.035); }
.home-news-list-copy { min-width: 0; display: grid; gap: 7px; }
.home-news-list strong { font: 750 20px/1.1 var(--font-display); }
.home-news-list-copy > span { color: var(--m-muted); font-size: 11px; line-height: 1.45; display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.home-news-list i { position: absolute; right: 24px; top: 50%; color: var(--m-lime); font-style: normal; font-size: 20px; transform: translateY(-50%); }

.newsroom-page { min-height: calc(100svh - 68px); background: var(--m-bg); }
.newsroom-intro { padding: clamp(54px,8vw,104px) 0 clamp(36px,5vw,62px); border-bottom: 1px solid var(--m-line); background: #080b0f; }
.newsroom-intro h1 { max-width: 900px; margin: 12px 0 18px; color: var(--m-text); font: 800 clamp(46px,7vw,86px)/.92 var(--font-display); letter-spacing: 0; text-transform: uppercase; }
.newsroom-intro p { max-width: 720px; margin: 0; color: var(--m-muted); font-size: 16px; line-height: 1.65; }
.newsroom-shell { display: grid; grid-template-columns: minmax(280px,.72fr) minmax(0,1.28fr); align-items: start; gap: 0; padding-block: clamp(36px,6vw,76px); }
.newsroom-index { display: grid; border: 1px solid var(--m-line); border-right: 0; background: #090c11; }
.newsroom-index > span { padding: 18px 22px; border-bottom: 1px solid var(--m-line); color: var(--m-dim); font-size: 10px; font-weight: 900; text-transform: uppercase; }
.newsroom-index button { min-width: 0; display: grid; gap: 7px; min-height: 132px; padding: 20px 22px; border: 0; border-bottom: 1px solid var(--m-line); border-left: 3px solid transparent; background: transparent; color: var(--m-text); text-align: left; }
.newsroom-index button:last-child { border-bottom: 0; }
.newsroom-index button:hover { background: rgba(255,255,255,.025); }
.newsroom-index button[data-active="true"] { border-left-color: var(--m-lime); background: rgba(182,255,59,.055); }
.newsroom-index strong { font: 750 18px/1.12 var(--font-display); }
.newsroom-index button > span { color: var(--m-muted); font-size: 11px; line-height: 1.4; }
.newsroom-article { min-height: 540px; padding: clamp(28px,5vw,68px); border: 1px solid var(--m-line-strong); background: var(--m-surface); }
.newsroom-article header { max-width: 760px; padding-bottom: 28px; border-bottom: 1px solid var(--m-line); }
.newsroom-article h2 { margin: 12px 0 18px; color: var(--m-text); font: 800 clamp(34px,5vw,62px)/.96 var(--font-display); letter-spacing: 0; text-transform: uppercase; }
.newsroom-article header p { margin: 0; color: var(--m-text); font-size: 18px; line-height: 1.55; }
.newsroom-article > div { max-width: 760px; padding: 18px 0 12px; }
.newsroom-article > div p { margin: 0 0 18px; color: var(--m-muted); font-size: 15px; line-height: 1.75; }
.newsroom-article .btn-primary { margin-top: 12px; background: var(--m-lime); color: #07090d; box-shadow: none; }

@media (max-width: 980px) {
  .home-paths { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .home-pulse-shell { grid-template-columns: minmax(0,1fr); }
  .home-today-rail { grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid var(--m-line); border-left: 0; }
  .home-today-rail > header { grid-column: 1 / -1; }
  .home-today-item { border-right: 1px solid var(--m-line); border-bottom: 0; }
  .home-today-create { align-content: center; }
  .home-news-grid { grid-template-columns: minmax(0,1fr); }
  .home-news-feature { border-right: 0; border-bottom: 1px solid var(--m-line); }
  .home-news-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .home-news-list > a { grid-template-columns: minmax(0,1fr); align-content: start; }
  .home-news-list > a:first-child { border-right: 1px solid var(--m-line); border-bottom: 0; }
  .newsroom-shell { grid-template-columns: minmax(0,1fr); }
  .newsroom-index { grid-template-columns: repeat(3,minmax(0,1fr)); border-right: 1px solid var(--m-line); border-bottom: 0; }
  .newsroom-index > span { grid-column: 1 / -1; }
  .newsroom-index button { border-right: 1px solid var(--m-line); border-bottom: 0; }
  .newsroom-index button:last-child { border-right: 0; }
}

@media (max-width: 680px) {
  .home-paths { grid-template-columns: minmax(0,1fr); }
  .home-pulse-main { padding: 18px 14px; }
  .home-pulse-head { align-items: flex-start; flex-direction: column; gap: 16px; }
  .home-pulse-tabs { width: 100%; }
  .home-pulse-tabs button { flex: 1; }
  .home-thread { grid-template-columns: 30px minmax(0,1fr); gap: 10px; min-height: 108px; }
  .home-thread:hover { padding-inline: 7px; }
  .home-thread-metrics { grid-column: 2; grid-template-columns: auto auto auto auto 18px; justify-content: start; gap: 6px; }
  .home-thread-copy > span { white-space: normal; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  .home-today-rail { grid-template-columns: minmax(0,1fr); }
  .home-today-item { border-right: 0; border-bottom: 1px solid var(--m-line); }
  .home-news-head { align-items: flex-start; flex-direction: column; }
  .home-news-feature { grid-template-columns: minmax(0,1fr); }
  .home-news-image { min-height: 220px; aspect-ratio: 16/9; border-right: 0; border-bottom: 1px solid var(--m-line); }
  .home-news-list { grid-template-columns: minmax(0,1fr); }
  .home-news-list > a { grid-template-columns: 112px minmax(0,1fr); }
  .home-news-list > a:first-child { border-right: 0; border-bottom: 1px solid var(--m-line); }
  .newsroom-index { grid-template-columns: minmax(0,1fr); }
  .newsroom-index button { min-height: 96px; border-right: 0; border-bottom: 1px solid var(--m-line); }
  .newsroom-index button:last-child { border-bottom: 0; }
  .newsroom-article { padding: 26px 18px; }
  .newsroom-article header p { font-size: 16px; }
}

/* Aim Pro is an application workspace, not a landing page. */
.aim-pro-v2 { min-height: calc(100svh - 64px); background: var(--m-bg); }
.aim-pro-v2::before { content: ""; position: fixed; inset: 64px 0 0; pointer-events: none; opacity: .22; background-image: linear-gradient(var(--m-line) 1px, transparent 1px), linear-gradient(90deg, var(--m-line) 1px, transparent 1px); background-size: 48px 48px; mask-image: linear-gradient(to bottom, black, transparent 62%); }
.aim-pro-appbar { position: relative; z-index: 1; border-bottom: 1px solid var(--m-line); background: #090c11; }
.aim-pro-appbar-inner { min-height: 92px; display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: var(--m-space-5); }
.aim-pro-title { display: flex; align-items: center; gap: var(--m-space-3); }
.aim-pro-mark { width: 42px; aspect-ratio: 1; display: grid; place-items: center; border: 1px solid rgba(255,95,87,.45); background: rgba(255,95,87,.1); color: var(--m-red); font: 800 15px var(--font-display); }
.aim-pro-title h1 { margin: 2px 0 0; font: 700 30px/1 var(--font-display); letter-spacing: 0; text-transform: uppercase; }
.aim-pro-app-stats { justify-self: end; display: flex; align-items: stretch; border: 1px solid var(--m-line); background: var(--m-surface); }
.aim-pro-app-stats > span { min-width: 106px; display: grid; gap: 3px; padding: 10px 14px; border-right: 1px solid var(--m-line); }
.aim-pro-app-stats > span:last-child { border-right: 0; }
.aim-pro-app-stats small { color: var(--m-dim); font-size: 9px; font-weight: 800; text-transform: uppercase; }
.aim-pro-app-stats strong { color: var(--m-text); font-size: 12px; }
.aim-pro-section { position: relative; z-index: 1; padding: 14px 0 48px; }
.aim-pro-shell { display: grid; gap: 10px; }
.aim-pro-v2 .aim-pro-workspace-nav { width: fit-content; display: flex; margin: 0; border: 1px solid var(--m-line); border-radius: var(--m-radius-sm); background: var(--m-surface); overflow: hidden; }
.aim-pro-v2 .aim-pro-workspace-nav button { min-width: 182px; min-height: 52px; display: grid; gap: 2px; padding: 8px 14px; border: 0; border-right: 1px solid var(--m-line); color: var(--m-muted); background: transparent; }
.aim-pro-v2 .aim-pro-workspace-nav button:last-child { border-right: 0; }
.aim-pro-v2 .aim-pro-workspace-nav button[data-active="true"] { background: rgba(255,95,87,.1); color: var(--m-text); box-shadow: inset 0 -2px var(--m-red); }
.aim-pro-v2 .aim-pro-workspace-nav strong { font: 700 14px/1.1 var(--font-display); }
.aim-pro-v2 .aim-pro-workspace-nav span { font-size: 9px; color: var(--m-dim); }
.aim-pro-studio { display: grid; grid-template-columns: 220px minmax(0,1fr); min-height: 720px; border: 1px solid var(--m-line-strong); background: var(--m-surface); box-shadow: var(--m-shadow); overflow: hidden; }
.aim-pro-scenario-dock { min-width: 0; border-right: 1px solid var(--m-line); background: #0a0d12; }
.aim-pro-scenario-dock > header { display: grid; gap: 4px; padding: 18px 16px; border-bottom: 1px solid var(--m-line); }
.aim-pro-scenario-dock > header span { color: var(--m-red); font-size: 9px; font-weight: 900; text-transform: uppercase; letter-spacing: .1em; }
.aim-pro-scenario-dock > header strong { font: 700 18px var(--font-display); text-transform: uppercase; }
.aim-pro-scenario-dock > header small { color: var(--m-dim); font-size: 10px; }
.aim-pro-v2 .aim-pro-scenario-rail { display: grid; grid-template-columns: 1fr; gap: 0; max-height: 646px; margin: 0; padding: 0; overflow-y: auto; scrollbar-width: thin; }
.aim-pro-v2 .aim-pro-scenario-rail button { --routine: var(--m-cyan); position: relative; min-height: 66px; display: grid; grid-template-columns: 28px 1fr; grid-template-areas: "number family" "number name" "number label"; align-content: center; gap: 2px 8px; padding: 10px 12px; border: 0; border-bottom: 1px solid var(--m-line); border-radius: 0; background: transparent; color: var(--m-muted); text-align: left; }
.aim-pro-v2 .aim-pro-scenario-rail button[data-family="Flick"], .aim-pro-v2 .aim-pro-scenario-rail button[data-family="Switching"] { --routine: var(--m-red); }
.aim-pro-v2 .aim-pro-scenario-rail button[data-family="Precision"] { --routine: var(--m-gold); }
.aim-pro-v2 .aim-pro-scenario-rail button[data-family="Tracking"] { --routine: var(--m-mint); }
.aim-pro-v2 .aim-pro-scenario-rail button[data-family="Rhythm"] { --routine: #ff67c7; }
.aim-pro-v2 .aim-pro-scenario-rail button:hover { background: rgba(255,255,255,.035); }
.aim-pro-v2 .aim-pro-scenario-rail button[data-active="true"] { background: color-mix(in srgb, var(--routine) 10%, transparent); color: var(--m-text); box-shadow: inset 3px 0 var(--routine); }
.aim-pro-v2 .aim-pro-scenario-rail button b { grid-area: number; align-self: center; color: var(--m-dim); font: 700 15px var(--font-display); }
.aim-pro-v2 .aim-pro-scenario-rail button span { grid-area: family; color: var(--routine); font-size: 8px; font-weight: 900; text-transform: uppercase; }
.aim-pro-v2 .aim-pro-scenario-rail button strong { grid-area: name; overflow: hidden; font: 700 13px/1.1 var(--font-display); text-overflow: ellipsis; white-space: nowrap; text-transform: uppercase; }
.aim-pro-v2 .aim-pro-scenario-rail button small { grid-area: label; color: var(--m-dim); font-size: 9px; }
.aim-pro-workspace { min-width: 0; display: grid; align-content: start; background: #080b0f; }
.aim-pro-session-head { min-height: 92px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 14px 18px; border-bottom: 1px solid var(--m-line); background: var(--m-surface); }
.aim-pro-session-head > div:first-child { min-width: 0; }
.aim-pro-session-head > div:first-child > span { color: var(--m-red); font-size: 9px; font-weight: 900; text-transform: uppercase; }
.aim-pro-session-head h2 { margin: 3px 0; font: 700 clamp(23px,3vw,34px)/1 var(--font-display); text-transform: uppercase; }
.aim-pro-session-head p { max-width: 620px; margin: 0; color: var(--m-muted); font-size: 12px; }
.aim-pro-v2 .aim-pro-family-pills { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 4px; max-width: 390px; }
.aim-pro-v2 .aim-pro-family-pills span { min-height: 26px; padding: 0 7px; border-color: var(--m-line); border-radius: var(--m-radius-sm); background: rgba(255,255,255,.025); font-size: 8px; }
.aim-pro-v2 .aim-pro-family-pills b { min-width: auto; min-height: auto; background: transparent; color: var(--m-cyan); }
.aim-pro-v2 .aim-pro-layout { grid-template-columns: minmax(0,1fr) 320px; border: 0; border-radius: 0; background: var(--m-line); box-shadow: none; }
.aim-pro-v2 .aim-pro-stage { min-height: 600px; background: #05070a; }
.aim-pro-v2 .aim-pro-settings { max-height: 600px; padding: 16px; background: #0d1117; }
.aim-pro-v2 .aim-pro-panel-head { margin-bottom: 12px; }
.aim-pro-v2 .aim-pro-panel-head strong { font-size: 18px; }
.aim-pro-v2 .aim-pro-settings label { margin-bottom: 9px; }
.aim-pro-v2 .aim-pro-settings input, .aim-pro-v2 .aim-pro-settings select { min-height: 40px; border-color: var(--m-line); border-radius: var(--m-radius-sm); background: #080b10; }
.aim-pro-v2 .aim-pro-start { background: rgba(5,7,10,.72); backdrop-filter: blur(3px); }
.aim-pro-v2 .aim-pro-start h2 { margin: 7px 0; font-size: clamp(34px,4.5vw,64px); letter-spacing: 0; }
.aim-pro-v2 .aim-pro-start p { font-size: 13px; }
.aim-pro-v2 .aim-pro-hud { top: 12px; left: 12px; right: 12px; }
.aim-pro-v2 .aim-pro-hud span, .aim-pro-v2 .aim-pro-hud strong, .aim-pro-v2 .aim-pro-hud em { border-radius: var(--m-radius-sm); background: rgba(6,8,12,.82); }
.aim-pro-v2 .aim-pro-hud strong { color: var(--m-cyan); }
.aim-pro-v2 .aim-session-result { margin: 0; border: 0; border-top: 1px solid var(--m-line); background: var(--m-surface); }
.aim-pro-v2 .aim-pro-layout-osu { grid-template-columns: minmax(0,1fr) 320px; }
.aim-pro-v2 .osu-flow-stage { min-height: 600px; }

@media (max-width: 1180px) {
  .aim-pro-appbar-inner { grid-template-columns: auto 1fr; }
  .aim-pro-appbar-inner > .btn { display: none; }
  .aim-pro-app-stats { justify-self: stretch; overflow-x: auto; }
  .aim-pro-studio { grid-template-columns: 1fr; }
  .aim-pro-scenario-dock { border-right: 0; border-bottom: 1px solid var(--m-line); }
  .aim-pro-scenario-dock > header { display: none; }
  .aim-pro-v2 .aim-pro-scenario-rail { display: flex; max-height: none; overflow-x: auto; }
  .aim-pro-v2 .aim-pro-scenario-rail button { flex: 0 0 170px; min-height: 62px; border-right: 1px solid var(--m-line); border-bottom: 0; }
}

@media (max-width: 820px) {
  .aim-pro-appbar-inner { min-height: auto; grid-template-columns: 1fr; gap: 12px; padding-block: 14px; }
  .aim-pro-app-stats { width: 100%; }
  .aim-pro-app-stats > span { min-width: 92px; padding: 8px 10px; }
  .aim-pro-v2 .aim-pro-workspace-nav { width: 100%; overflow-x: auto; }
  .aim-pro-v2 .aim-pro-workspace-nav, .aim-pro-v2 .aim-pro-scenario-rail { scrollbar-width: none; }
  .aim-pro-v2 .aim-pro-workspace-nav::-webkit-scrollbar, .aim-pro-v2 .aim-pro-scenario-rail::-webkit-scrollbar { display: none; }
  .aim-pro-v2 .aim-pro-workspace-nav button { min-width: 150px; flex: 1 0 150px; }
  .aim-pro-session-head { align-items: flex-start; flex-direction: column; }
  .aim-pro-v2 .aim-pro-family-pills { justify-content: flex-start; }
  .aim-pro-v2 .aim-pro-layout, .aim-pro-v2 .aim-pro-layout-osu { grid-template-columns: 1fr; }
  .aim-pro-v2 .aim-pro-stage, .aim-pro-v2 .osu-flow-stage { min-height: clamp(460px, 72svh, 620px); }
  .aim-pro-v2 .aim-pro-settings { order: 0; max-height: none; }
}

@media (max-width: 560px) {
  .aim-pro-section { padding-top: 8px; }
  .aim-pro-shell { padding-inline: 0; }
  .aim-pro-title, .aim-pro-app-stats { padding-inline: 12px; }
  .aim-pro-app-stats > span:nth-child(n+4) { display: none; }
  .aim-pro-studio { border-inline: 0; }
  .aim-pro-session-head { padding: 12px; }
  .aim-pro-session-head h2 { font-size: 24px; }
  .aim-pro-session-head p { display: none; }
  .aim-pro-v2 .aim-pro-family-pills { display: none; }
  .aim-pro-v2 .aim-pro-stage, .aim-pro-v2 .osu-flow-stage { min-height: 68svh; }
  .aim-pro-v2 .aim-pro-hud { gap: 4px; flex-wrap: wrap; }
  .aim-pro-v2 .aim-pro-hud span:nth-of-type(n+4) { display: none; }
  .aim-pro-v2 .aim-pro-start { padding: 16px; }
  .aim-pro-v2 .aim-pro-start-actions { width: 100%; display: grid; grid-template-columns: 1fr 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* Leaderboard premium: top 3, ranking pulita, look eSport */
.podium {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
  gap: 14px;
  align-items: end;
  margin: 36px 0;
}

.pod {
  position: relative;
  border: 1px solid var(--m-line);
  border-radius: var(--m-radius);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.032), var(--m-surface));
  display: grid;
  gap: 8px;
  justify-items: center;
  text-align: center;
  padding: 26px 16px 22px;
  min-height: 190px;
}

.pod::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: var(--m-radius);
  pointer-events: none;
  opacity: 0;
  transition: opacity var(--m-fast);
}

.pod:hover::after {
  opacity: 1;
  box-shadow: inset 0 0 0 1px rgba(255, 95, 87, 0.28);
}

.pod-2 {
  margin-top: 28px;
}

.pod-1 {
  min-height: 226px;
  border-color: rgba(255, 95, 87, 0.55);
  box-shadow: inset 0 0 0 1px rgba(244, 202, 100, 0.28);
  background: linear-gradient(180deg, rgba(244, 202, 100, 0.12), var(--m-surface));
}

.pod-star::before {
  content: "☆";
  position: absolute;
  top: 12px;
  right: 12px;
  opacity: 0.72;
  filter: drop-shadow(0 0 8px rgba(244, 202, 100, 0.42));
}

.pod-rank {
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--m-muted);
}

.pod-1 .pod-rank {
  color: var(--m-gold);
}

.pod-avatar {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  border: 1px solid var(--m-line);
  background: var(--m-surface-2);
  display: grid;
  place-items: center;
  font-weight: 800;
  font-size: 22px;
  color: var(--m-muted);
}

.pod-1 .pod-avatar {
  width: 74px;
  height: 74px;
  border-color: var(--m-gold);
  color: var(--m-gold);
  border-width: 2px;
}

.pod-handle {
  color: var(--m-text);
  text-decoration: none;
  font-weight: 800;
}

.pod-points {
  margin-top: 4px;
  font-size: 30px;
  font-family: var(--font-display);
  line-height: 1;
  color: var(--m-red);
}

.pod-wins {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--m-dim);
}

.lb-table {
  margin-top: 4px;
  border: 1px solid var(--m-line);
  border-radius: var(--m-radius);
  overflow: hidden;
  background: var(--m-surface);
}

.lb-row {
  display: grid;
  grid-template-columns: 90px minmax(180px, 1fr) 120px 120px;
  min-height: 54px;
  align-items: center;
  gap: 16px;
  padding: 0 16px;
  border-top: 1px solid var(--m-line);
  background: transparent;
  color: var(--m-text);
  transition: background-color var(--m-fast), transform var(--m-fast);
}

.lb-row:first-child {
  border-top: 0;
}

.lb-row:hover {
  background: rgba(255, 255, 255, 0.03);
}

.lb-head {
  background: #0b1016;
  color: var(--m-cyan);
  min-height: 46px;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.lb-pos,
.lb-points,
.lb-wins {
  justify-self: end;
  text-align: right;
}

.lb-pos {
  color: var(--m-muted);
  font-weight: 700;
}

.lb-head .lb-pos,
.lb-head .lb-points,
.lb-head .lb-wins {
  color: inherit;
}

.lb-handle {
  color: var(--m-text);
}

.lb-handle:hover {
  color: var(--m-red);
}

.lb-points {
  color: var(--m-cyan);
  font-weight: 700;
}

.lb-wins { 
  color: var(--m-muted);
}

.lb-empty {
  color: var(--m-dim);
  border-top: 1px solid var(--m-line);
  padding: 16px;
  font-size: 13px;
}

.scope-toggle {
  display: inline-flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 14px;
}

.scope-btn {
  border: 1px solid var(--m-line);
  border-radius: 999px;
  background: rgba(13, 17, 23, 0.82);
  color: var(--m-text);
  min-height: 38px;
  padding: 8px 16px;
  font-weight: 800;
  font-size: 13px;
}

.scope-btn[data-on="true"] {
  border-color: rgba(244, 202, 100, 0.5);
  color: var(--m-gold);
  background: rgba(244, 202, 100, 0.14);
}

.scope-btn:hover {
  transform: translateY(-1px);
}

.lb-meta {
  display: grid;
  gap: 8px;
  color: var(--m-dim);
  font-size: 12px;
  margin: 6px 0 14px;
}

.lb-meta strong {
  color: var(--m-text);
  font-weight: 800;
}

.lb-loading {
  margin: 6px 0 16px;
  color: var(--m-dim);
  font-size: 13px;
}

.lb-table + .lb-table {
  margin-top: 12px;
}

@media (max-width: 720px) {
  .podium {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }

  .pod {
    min-height: 0;
    padding: 18px 14px;
  }

  .pod-1,
  .pod-2 {
    margin-top: 0;
  }

  .pod-points {
    font-size: 26px;
  }

  .lb-row {
    grid-template-columns: 52px minmax(0, 1fr) 72px 60px;
    gap: 10px;
    padding: 10px 12px;
  }

  .lb-handle {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

/* 2026-07 experience pass: discoverability, compact long pages and mobile polish. */
.topnav .mobile-more-trigger { display: inline-flex; }
.topnav-inner { position: relative; }
.mobile-nav-menu {
  position: absolute;
  z-index: 50;
  top: calc(100% + 10px);
  right: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  max-height: min(70vh, 370px);
  width: min(780px, calc(100vw - 32px));
  overflow-y: auto;
  scrollbar-width: none;
  padding: 10px;
  border: 1px solid var(--m-line-strong);
  border-radius: var(--m-radius);
  background: rgba(10,13,18,.98);
  box-shadow: 0 24px 70px rgba(0,0,0,.58);
  backdrop-filter: blur(20px);
}
.mobile-nav-menu::-webkit-scrollbar { display: none; }
.mobile-nav-menu a, .mobile-nav-menu button {
  min-width: 0;
  min-height: 58px;
  display: grid;
  align-content: center;
  gap: 4px;
  padding: 10px 12px;
  border: 1px solid var(--m-line);
  border-radius: var(--m-radius-sm);
  background: var(--m-surface);
  color: var(--m-muted);
  text-align: left;
  text-decoration: none;
}
.mobile-nav-menu a:hover, .mobile-nav-menu a[data-active="true"] { border-color: rgba(182,255,59,.35); color: var(--m-lime); background: rgba(182,255,59,.07); }
.mobile-nav-menu strong { overflow: hidden; color: inherit; font: 700 13px/1.1 var(--font-display); text-overflow: ellipsis; white-space: nowrap; }
.mobile-nav-menu span { overflow: hidden; color: var(--m-dim); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.mobile-nav-menu .mobile-search-entry { grid-column: span 2; border-color: rgba(88,207,255,.28); }

.event-jump-inner button {
  flex: 1 0 auto;
  min-height: 40px;
  padding: 0 18px;
  border: 1px solid transparent;
  border-radius: var(--m-radius-sm);
  background: transparent;
  color: var(--m-muted);
  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: .04em;
  cursor: pointer;
}
.event-jump-inner button:hover, .event-jump-inner button[data-active="true"] { border-color: rgba(244,202,100,.35); background: rgba(244,202,100,.08); color: var(--m-gold); }
.aim-pro-quick-start { grid-column: 1 / -1; min-height: 52px; display: flex; align-items: center; gap: 18px; padding: 8px 12px; border-bottom: 1px solid var(--m-line); background: #0b0f14; }
.aim-pro-quick-start span { display: inline-flex; align-items: center; gap: 7px; color: var(--m-muted); font-size: 10px; font-weight: 800; text-transform: uppercase; }
.aim-pro-quick-start b { width: 22px; height: 22px; display: grid; place-items: center; border: 1px solid var(--m-line-strong); color: var(--m-cyan); }
.aim-pro-quick-start button { min-height: 34px; margin-left: auto; padding: 0 10px; border: 1px solid rgba(255,95,87,.35); background: rgba(255,95,87,.08); color: var(--m-red); font-size: 9px; font-weight: 900; text-transform: uppercase; cursor: pointer; }
.gdl-v2 .filters { scrollbar-width: none; }
.gdl-v2 .filters::-webkit-scrollbar { display: none; }
.gdl-v2 > .wrap > * { content-visibility: auto; contain-intrinsic-size: 800px; }

.feed-post-grid > *, .people-grid > * { content-visibility: auto; contain-intrinsic-size: 460px; }
.load-more-row { display: flex; justify-content: center; padding-top: 26px; }
.load-more-row .btn { min-width: 230px; display: inline-flex; align-items: center; justify-content: space-between; gap: 18px; }
.load-more-row .btn span { color: var(--m-dim); font-size: 10px; }
.people-search-tools { min-width: 0; display: grid; grid-template-columns: minmax(240px, 390px) 160px; gap: 8px; }
.people-search-tools input, .people-search-tools select { width: 100%; min-height: 52px; padding: 0 14px; border: 1px solid var(--m-line); border-radius: var(--m-radius-sm); background: var(--m-surface); color: var(--m-text); }
.people-results-meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: -6px 0 16px; color: var(--m-dim); font-size: 11px; text-transform: uppercase; }
.people-results-meta strong { color: var(--m-cyan); }
.person-card-main > div:last-child { min-width: 0; }
.person-card-main h3 { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.lb-empty-action { min-height: 220px; display: grid; place-content: center; justify-items: start; gap: 12px; }
.lb-empty-action strong { color: var(--m-text); font: 700 clamp(22px,3vw,34px)/1.05 var(--font-display); text-transform: uppercase; }
.lb-empty-action span { max-width: 620px; line-height: 1.6; }

.pass-summary, .market-balance {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(260px, 1.2fr) auto;
  align-items: center;
  gap: 24px;
  margin-bottom: 18px;
  padding: 20px 22px;
  border: 1px solid var(--m-line-strong);
  border-left: 3px solid var(--m-lime);
  border-radius: var(--m-radius);
  background: var(--m-surface);
}
.pass-summary > div:first-child { display: grid; gap: 5px; }
.pass-summary > div:first-child span, .market-balance span { color: var(--m-cyan); font-size: 9px; font-weight: 900; text-transform: uppercase; letter-spacing: .1em; }
.pass-summary > div:first-child strong, .market-balance strong { font: 700 22px/1.05 var(--font-display); text-transform: uppercase; }
.pass-summary small, .market-balance p { margin: 0; color: var(--m-muted); }
.pass-progress { display: grid; gap: 8px; }
.pass-progress > span { height: 7px; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.08); }
.pass-progress > span b { display: block; height: 100%; border-radius: inherit; background: var(--m-lime); }
.pass-progress small { text-align: right; }
.pass-legend { display: flex; gap: 12px; }
.pass-legend span { display: inline-flex; align-items: center; gap: 6px; color: var(--m-muted); font-size: 10px; font-weight: 800; text-transform: uppercase; }
.pass-legend i { width: 8px; height: 8px; background: var(--m-lime); }
.pass-legend i[data-tier="premium"] { background: var(--m-gold); }
.pass-reward[data-locked="true"] { opacity: .72; }
.pass-reward[data-locked="true"] .btn { color: var(--m-dim); }
.market-balance { border-left-color: var(--m-gold); }
.market-balance > div { display: grid; gap: 4px; }
.market-balance > p { line-height: 1.5; }
.market-card[data-owned="true"] { border-color: rgba(79,227,193,.35); }

.live-room-placeholder { min-height: 390px; border: 1px solid var(--m-line-strong); }
.contest-rules-grid, .inbox-login-benefits > .wrap, .assistance-faq { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }
.contest-rules-grid { margin-top: 12px; }
.contest-rules-grid article, .inbox-login-benefits article { min-height: 170px; display: grid; align-content: end; gap: 8px; padding: 20px; border: 1px solid var(--m-line); background: var(--m-surface); }
.contest-rules-grid span, .inbox-login-benefits span { color: var(--m-cyan); font-size: 9px; font-weight: 900; text-transform: uppercase; letter-spacing: .1em; }
.contest-rules-grid strong, .inbox-login-benefits strong { font: 700 20px/1.1 var(--font-display); text-transform: uppercase; }
.contest-rules-grid p, .inbox-login-benefits p { margin: 0; color: var(--m-muted); font-size: 12px; line-height: 1.55; }
.inbox-login-page .page-title { max-width: 1080px; overflow-wrap: anywhere; white-space: normal; }
.inbox-login-benefits { padding-top: 18px; }
.inbox-login-benefits > .wrap { grid-template-columns: repeat(3,minmax(0,1fr)); }
.assistance-human { display: grid; gap: 7px; margin-top: 20px; padding: 16px 0 0; border-top: 1px solid var(--m-line); }
.assistance-human p { margin: 0; color: var(--m-muted); font-size: 11px; line-height: 1.5; }
.assistance-human a { min-height: 42px; border: 1px solid rgba(182,255,59,.28); color: var(--m-lime); }
.assistance-faq-section { padding-top: 20px; }
.assistance-faq { grid-template-columns: repeat(2,minmax(0,1fr)); }
.assistance-faq details { padding: 18px; border: 1px solid var(--m-line); border-radius: var(--m-radius-sm); background: var(--m-surface); }
.assistance-faq summary { cursor: pointer; color: var(--m-text); font-weight: 800; }
.assistance-faq p { margin: 12px 0 0; color: var(--m-muted); font-size: 12px; line-height: 1.6; }

@media (max-width: 980px) {
  .mobile-nav-menu { width: min(680px, calc(100vw - 28px)); grid-template-columns: repeat(3,minmax(0,1fr)); }
  .pass-summary, .market-balance { grid-template-columns: 1fr 1fr; }
  .pass-legend, .market-balance > .btn { justify-self: start; }
  .contest-rules-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 820px) {
  .mobile-nav-menu {
    position: static;
    grid-column: 1 / -1;
    grid-row: 3;
    width: 100%;
    max-height: min(58vh, 430px);
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .mobile-nav-menu .mobile-search-entry { grid-column: 1 / -1; }
  .people-search-tools { grid-template-columns: minmax(0,1fr) 150px; }
  .pass-track { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 620px) {
  .page-title { max-width: 100%; font-size: clamp(36px,10.5vw,48px); overflow-wrap: normal; word-break: normal; }
  .inbox-login-page .page-title { font-size: clamp(38px,11vw,48px); line-height: .95; }
  .event-jump-inner { overflow: hidden; gap: 3px; padding-inline: 10px; }
  .event-jump-inner button { min-width: 0; flex: 1 1 0; padding-inline: 4px; font-size: 8px; }
  .clip-hubbar.clip-topline .clip-hub-stats { display: none; }
  .clip-hubbar.clip-topline .btn { min-width: 88px; display: inline-flex !important; padding-inline: 11px; }
  .aim-pro-v2 .aim-pro-workspace-nav { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); overflow: hidden; }
  .aim-pro-v2 .aim-pro-workspace-nav button { min-width: 0; padding-inline: 5px; }
  .aim-pro-v2 .aim-pro-workspace-nav span { display: none; }
  .aim-pro-quick-start { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 6px; }
  .aim-pro-quick-start span { min-width: 0; align-items: flex-start; font-size: 8px; line-height: 1.25; }
  .aim-pro-quick-start button { grid-column: 1 / -1; width: 100%; margin-left: 0; }
  .social-feed-tabs { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); overflow: visible; }
  .social-feed-tabs button { min-width: 0; padding-inline: 8px; }
  .social-feed-tabs .discover-people-link { grid-column: 1 / -1; margin-left: 0; }
  main[data-screen-label="Feed"] .filters { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
  main[data-screen-label="Feed"] .filters > span { display: none; }
  main[data-screen-label="Feed"] .filters .btn-primary { grid-column: 1 / -1; }
  .feed-post-grid { grid-template-columns: minmax(0,1fr); }
  .people-search-tools { grid-template-columns: 1fr; }
  .people-results-meta { align-items: flex-start; flex-direction: column; gap: 4px; }
  .pass-summary, .market-balance { grid-template-columns: 1fr; gap: 16px; }
  .pass-progress small { text-align: left; }
  .pass-track { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pass-reward { min-width: 0; padding: 16px 12px; }
  .pass-reward h3 { overflow-wrap: anywhere; font-size: 16px; }
  .contest-rules-grid, .inbox-login-benefits > .wrap, .assistance-faq { grid-template-columns: 1fr; }
  .contest-rules-grid article, .inbox-login-benefits article { min-height: 140px; }
  .live-room-placeholder { min-height: 320px; }
}

/* Compact Valorant home, matched to the approved reference. */
main[data-screen-label="Home"] { background: #05070a; }
main[data-screen-label="Home"] .hero {
  min-height: 478px;
  padding: 58px 0 46px;
  background-position: center 48%;
}
main[data-screen-label="Home"] .hero > .wrap {
  min-height: 374px;
  justify-content: center;
}
main[data-screen-label="Home"] .hero-title {
  max-width: 650px;
  font-size: clamp(66px, 7.2vw, 100px);
  line-height: .9;
}
main[data-screen-label="Home"] .hero-sub {
  max-width: 520px;
  margin-top: 22px;
  font-size: clamp(15px, 1.25vw, 17px);
  line-height: 1.55;
}
main[data-screen-label="Home"] .hero > .wrap > .hero-actions {
  margin-top: 24px;
  margin-bottom: 0;
}
.home-stats-band {
  border-block: 1px solid var(--m-line);
  background: #06090d;
}
.home-stats-band .stats-strip {
  margin: 0;
  border: 0;
  background: transparent;
  backdrop-filter: none;
}
.home-stats-band .stat { min-height: 108px; display: grid; align-content: center; padding-block: 20px; }
.home-stats-band .stat-num { font-size: 32px; }
.home-stats-band .stat-label { font-size: 10px; }
.home-pulse-section {
  padding: 0;
  border-top: 0;
  background: #05080b;
}
.home-pulse-shell {
  border-top: 0;
  border-bottom: 1px solid var(--m-line);
  background: #070a0e;
}
.home-pulse-main { padding: 30px 34px; }
.home-pulse-head { align-items: center; padding-bottom: 14px; }
.home-pulse-head h2 {
  margin: 0;
  font-size: clamp(24px, 2.4vw, 31px);
  line-height: 1;
}
.home-thread-list { border-top-color: var(--m-line-strong); }
.home-thread { min-height: 108px; }
.home-thread-copy strong { font-size: clamp(17px, 1.7vw, 22px); }
.home-pulse-empty { min-height: 248px; }
.home-today-rail > header { padding-block: 20px; }
.home-news-section { padding: 32px 0 52px; background: #070a0e; }
.home-news-head { margin-bottom: 16px; }
.home-news-head h2 { margin: 0; font-size: clamp(24px, 2.6vw, 32px); }
.home-news-image { min-height: 250px; }
.home-news-feature-copy { padding: clamp(22px, 2.5vw, 34px); }
.home-news-feature-copy strong { font-size: clamp(22px, 2.4vw, 32px); }
.home-news-list > a { min-height: 125px; }

@media (min-width: 821px) {
  .topnav-inner {
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    grid-template-rows: 1fr !important;
    min-height: 72px;
    height: 72px !important;
    padding-block: 0 !important;
    column-gap: 12px;
  }
  .topnav .brand-logo { display: none; }
  .topnav .brand {
    grid-column: 1 !important;
    grid-row: 1 !important;
    gap: 0;
    color: #fff;
    font-size: 28px;
    letter-spacing: 0;
  }
  .topnav .brand::after { content: ""; width: 22px; height: 6px; margin-left: 5px; background: var(--m-lime); }
  .topnav .navlinks {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: auto;
    min-width: 0;
    justify-self: center;
  }
  .topnav .navlink { min-height: 72px; padding-inline: 11px; font-size: 12px; }
  .topnav .nav-right {
    grid-column: 3 !important;
    grid-row: 1 !important;
    justify-self: end;
  }
  .topnav .mobile-more-trigger { display: none !important; }
  .topnav .quick-search-button {
    width: 44px;
    min-height: 44px;
    display: inline-flex;
    justify-content: center;
    padding: 0;
    border-color: transparent;
    border-radius: 0;
    background: transparent;
  }
  .topnav .quick-search-button span,
  .topnav .quick-search-button kbd { display: none; }
  .topnav .quick-search-button::before { content: "⌕"; color: #fff; font-size: 28px; font-weight: 400; }
  .topnav .nav-cta {
    min-height: 44px;
    padding: 0 20px;
    border-color: var(--m-lime);
    border-radius: 4px;
    background: var(--m-lime);
    color: #07090d;
  }
  .topnav .nav-cta .dot { background: #07090d; box-shadow: none; }
  .topnav .nav-cta:hover { border-color: #c8ff6b; background: #c8ff6b; color: #07090d; }
}

@media (max-width: 820px) {
  main[data-screen-label="Home"] .hero { min-height: auto; padding: 50px 0 38px; background-position: 49% center; }
  main[data-screen-label="Home"] .hero > .wrap { min-height: 0; }
  main[data-screen-label="Home"] .hero-title { font-size: clamp(50px, 16vw, 70px); }
  .home-stats-band .stat { min-height: 96px; padding: 18px 16px; }
}

@media (max-width: 680px) {
  .home-pulse-main { padding: 24px 20px; }
  .home-pulse-head { gap: 14px; }
  .home-pulse-head h2 { font-size: 27px; }
  .home-news-section { padding-top: 26px; }
  .home-news-head { gap: 10px; }
}

/* Community / accepted Jett concept ------------------------------------------------ */
.community-feed-page {
  --community-lime: #d8ff3f;
  --community-red: #ff3047;
  --community-ink: #030405;
  background: var(--community-ink);
}
.community-concept-hero {
  position: relative;
  min-height: 610px;
  overflow: hidden;
  border-bottom: 1px solid rgba(255,255,255,.18);
  background:
    radial-gradient(circle at 70% 38%, rgba(255,48,71,.11), transparent 38%),
    linear-gradient(90deg, #020303 0 49%, #070708 72%, #020303 100%);
  isolation: isolate;
}
.community-concept-hero::before {
  position: absolute;
  z-index: 0;
  inset: 0;
  background:
    repeating-linear-gradient(0deg, rgba(255,255,255,.018) 0 1px, transparent 1px 4px),
    radial-gradient(circle at 50% 50%, transparent 0 52%, rgba(0,0,0,.68) 100%);
  content: "";
  pointer-events: none;
}
.community-concept-frame {
  position: absolute;
  z-index: 7;
  inset: 16px;
  border: 1px solid rgba(255,255,255,.13);
  pointer-events: none;
}
.community-concept-frame::before,
.community-concept-frame::after {
  position: absolute;
  width: 18px;
  height: 18px;
  content: "";
}
.community-concept-frame::before { top: -1px; left: -1px; border-top: 1px solid var(--community-lime); border-left: 1px solid var(--community-lime); }
.community-concept-frame::after { right: -1px; bottom: -1px; border-right: 1px solid var(--community-red); border-bottom: 1px solid var(--community-red); }
.threeui-predictive-arc,
.threeui-predictive-arc canvas { width: 100%; height: 100%; }
.community-threeui-field {
  position: absolute;
  z-index: 1;
  inset: 0;
  opacity: .56;
  mask-image: linear-gradient(90deg, transparent 1%, #000 42%, #000 92%, transparent);
  pointer-events: none;
}
.community-threeui-field canvas { display: block; }
.community-network {
  position: absolute;
  z-index: 2;
  top: -4%;
  left: 3.5%;
  width: 46%;
  height: 44%;
  opacity: .72;
  background:
    linear-gradient(17deg, transparent 49.7%, rgba(216,255,63,.28) 50%, transparent 50.3%),
    linear-gradient(-14deg, transparent 49.75%, rgba(216,255,63,.15) 50%, transparent 50.25%),
    linear-gradient(90deg, transparent 49.75%, rgba(255,255,255,.09) 50%, transparent 50.25%);
  clip-path: polygon(0 0, 100% 0, 100% 62%, 54% 100%, 0 54%);
  pointer-events: none;
}
.community-network i {
  position: absolute;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--community-lime);
  box-shadow: 0 0 10px rgba(216,255,63,.8);
}
.community-network i:nth-child(1) { top: 12%; left: 11%; }
.community-network i:nth-child(2) { top: 39%; left: 31%; }
.community-network i:nth-child(3) { top: 25%; left: 58%; }
.community-network i:nth-child(4) { top: 62%; left: 78%; }
.community-network i:nth-child(5) { top: 78%; left: 43%; }
.community-network i:nth-child(6) { top: 50%; left: 94%; }
.community-valorant-mark {
  position: absolute;
  z-index: 2;
  top: 38px;
  right: 4.3%;
  width: min(52vw,760px);
  height: calc(100% - 62px);
  overflow: visible;
  filter: drop-shadow(0 0 32px rgba(255,48,71,.16));
}
.community-valorant-mark path { fill: var(--community-red); }
.community-jett {
  position: absolute;
  z-index: 4;
  right: clamp(5.5%,8vw,10%);
  bottom: -130px;
  height: 123%;
  width: auto;
  object-fit: contain;
  filter: drop-shadow(0 28px 32px rgba(0,0,0,.72));
  pointer-events: none;
  user-select: none;
}
.community-concept-inner {
  position: relative;
  z-index: 6;
  min-height: 610px;
  display: flex;
  align-items: center;
  max-width: 1540px;
  padding: 54px 82px 48px 128px;
}
.community-concept-copy { width: min(50%,710px); }
.community-concept-copy h1 {
  margin: 0;
  color: #f3f3f0;
  font-family: Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
  font-size: clamp(100px,10vw,158px);
  font-weight: 400;
  line-height: .78;
  letter-spacing: -.015em;
  text-transform: uppercase;
  white-space: nowrap;
}
.community-concept-copy h1 span { color: var(--community-lime); }
.community-concept-copy p {
  max-width: 570px;
  margin: 34px 0 0;
  color: rgba(255,255,255,.76);
  font: 500 16px/1.55 var(--font-body);
}
.community-concept-actions { display: flex; flex-wrap: wrap; gap: 24px; margin-top: 42px; }
.community-concept-cta {
  min-width: 232px;
  min-height: 56px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 26px;
  padding: 0 28px;
  border: 1px solid rgba(216,255,63,.78);
  border-radius: 0;
  background: rgba(3,4,5,.72);
  color: var(--community-lime);
  font: 800 13px/1 var(--font-body);
  letter-spacing: .1em;
  text-transform: uppercase;
  transition: transform .18s ease, color .18s ease, background .18s ease;
}
.community-concept-cta.is-primary { background: var(--community-lime); color: #050603; }
.community-concept-cta:hover { transform: translateY(-2px); background: #fff; color: #050603; }
.community-concept-cta svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-linecap: square; stroke-linejoin: miter; stroke-width: 1.7; }
.community-side-rail {
  position: absolute;
  z-index: 8;
  inset: 16px auto 16px 16px;
  width: 62px;
  display: flex;
  align-items: center;
  border-right: 1px solid rgba(255,255,255,.13);
  pointer-events: none;
}
.community-side-rail span {
  position: absolute;
  top: 45%;
  left: 11px;
  color: rgba(255,255,255,.42);
  font: 700 8px/1 var(--font-body);
  letter-spacing: .28em;
  text-transform: uppercase;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
}
.community-side-rail i { position: absolute; top: 18%; left: 16px; width: 2px; height: 110px; background: var(--community-lime); box-shadow: 0 0 12px rgba(216,255,63,.36); }
.community-side-rail i::after { position: absolute; left: -3px; bottom: 0; width: 8px; height: 8px; border: 1px solid var(--community-lime); border-radius: 50%; background: #030405; content: ""; }
.community-side-rail b { position: absolute; left: 9px; bottom: 22px; color: var(--community-lime); font: 900 20px/1 var(--font-display); }
.community-vertical-label {
  position: absolute;
  z-index: 6;
  right: 26px;
  bottom: 56px;
  color: rgba(255,48,71,.7);
  font: 800 16px/1 var(--font-display);
  letter-spacing: .08em;
  text-transform: uppercase;
  writing-mode: vertical-rl;
}
.community-control-deck { border-bottom: 1px solid rgba(255,255,255,.15); background: #030405; }
.community-control-row {
  min-height: 78px;
  display: flex;
  align-items: stretch;
  border-bottom: 1px solid rgba(255,255,255,.14);
}
.community-primary-tabs,
.community-scope-tabs { display: flex; align-items: stretch; }
.community-primary-tabs { flex: 1 1 auto; padding-left: clamp(28px,7.5vw,120px); }
.community-scope-tabs { flex: 0 0 auto; padding-right: clamp(28px,7vw,112px); }
.community-primary-tabs button,
.community-scope-tabs button {
  position: relative;
  min-width: clamp(140px,12.5vw,202px);
  border: 0;
  background: transparent;
  color: rgba(255,255,255,.55);
  font-family: Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
  font-size: 21px;
  font-weight: 400;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.community-scope-tabs button { min-width: clamp(112px,9.5vw,152px); }
.community-primary-tabs button::after,
.community-scope-tabs button::after { position: absolute; right: 20px; bottom: -1px; left: 20px; height: 3px; background: var(--community-lime); content: ""; transform: scaleX(0); transition: transform .18s ease; }
.community-primary-tabs button:hover,
.community-scope-tabs button:hover,
.community-primary-tabs button[data-active="true"],
.community-scope-tabs button[data-active="true"] { color: var(--community-lime); }
.community-primary-tabs button[data-active="true"]::after,
.community-scope-tabs button[data-active="true"]::after { transform: scaleX(1); }
.community-media-rail {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  padding: 20px clamp(28px,4.5vw,72px) 24px;
  scrollbar-color: rgba(216,255,63,.45) #070809;
  scroll-snap-type: x proximity;
}
.community-rail-card {
  position: relative;
  flex: 1 0 clamp(240px,18.8vw,360px);
  min-height: 190px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 0;
  background: #090a0c;
  color: #fff;
  text-align: left;
  scroll-snap-align: start;
}
.community-rail-card::after { position: absolute; z-index: 4; right: 12px; bottom: 12px; width: 17px; height: 17px; border-right: 1px solid var(--community-red); border-bottom: 1px solid var(--community-red); content: ""; opacity: 0; transition: opacity .18s ease; }
.community-rail-card:hover::after { opacity: 1; }
.community-rail-media { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .32s ease, filter .32s ease; }
.community-rail-card:hover .community-rail-media { transform: scale(1.035); filter: saturate(1.12); }
.community-rail-shade { position: absolute; z-index: 1; inset: 0; background: linear-gradient(0deg, rgba(2,3,4,.96), rgba(2,3,4,.06) 74%); }
.community-rail-card small,
.community-rail-card strong,
.community-rail-card em { position: absolute; z-index: 2; right: 18px; left: 18px; }
.community-rail-card small { bottom: 70px; color: var(--community-lime); font: 900 8px/1 var(--font-body); letter-spacing: .14em; text-transform: uppercase; }
.community-rail-card strong { bottom: 36px; overflow: hidden; color: #fff; font: 800 25px/1 var(--font-display); text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.community-rail-card em { bottom: 16px; color: rgba(255,255,255,.62); font: 700 10px/1 var(--font-body); font-style: normal; }
.community-rail-empty { min-height: 190px; flex: 1 1 auto; display: flex; align-items: center; justify-content: center; gap: 18px; border: 1px solid rgba(255,255,255,.15); color: #fff; }
.community-rail-empty button { min-height: 42px; padding: 0 18px; border: 1px solid var(--community-lime); background: transparent; color: var(--community-lime); font-weight: 900; }
.community-feed-page .community-feed-content { padding-top: 24px; }
.community-feed-page .community-feed-content > .wrap { max-width: 1540px; padding-inline: clamp(20px,4.5vw,72px); }
.community-feed-page .community-feed-content .filters { padding-bottom: 16px; border-bottom: 1px solid rgba(255,255,255,.11); }

@media (max-width: 1120px) {
  .community-concept-copy { width: 58%; }
  .community-concept-copy h1 { font-size: clamp(82px,11.5vw,126px); }
  .community-jett { right: 1%; height: 112%; }
  .community-valorant-mark { right: -3%; width: 58vw; }
  .community-primary-tabs { padding-left: 38px; }
  .community-scope-tabs { padding-right: 38px; }
}

@media (max-width: 860px) {
  .community-concept-hero { min-height: 680px; }
  .community-concept-inner { min-height: 680px; align-items: flex-start; padding: 74px 34px 300px; }
  .community-concept-copy { width: 100%; }
  .community-concept-copy h1 { font-size: clamp(76px,17vw,122px); }
  .community-concept-copy p { margin-top: 22px; font-size: 14px; }
  .community-concept-actions { gap: 12px; margin-top: 26px; }
  .community-concept-cta { min-width: 200px; min-height: 50px; padding-inline: 20px; }
  .community-jett { right: -3%; bottom: -160px; height: 92%; }
  .community-valorant-mark { top: auto; right: -12%; bottom: -12px; width: 76vw; height: 62%; }
  .community-side-rail { display: none; }
  .community-concept-frame { inset: 10px; }
  .community-vertical-label { right: 18px; bottom: 30px; }
  .community-control-row { overflow-x: auto; }
  .community-primary-tabs,
  .community-scope-tabs { padding: 0; }
  .community-primary-tabs button,
  .community-scope-tabs button { min-width: 142px; font-size: 18px; }
}

@media (max-width: 620px) {
  .community-concept-hero { min-height: 650px; }
  .community-concept-hero::before { background: repeating-linear-gradient(0deg, rgba(255,255,255,.018) 0 1px, transparent 1px 4px), linear-gradient(0deg, rgba(0,0,0,.82), transparent 58%); }
  .community-threeui-field { opacity: .35; }
  .community-network { width: 84%; height: 34%; opacity: .42; }
  .community-concept-inner { min-height: 650px; padding: 58px 22px 330px; }
  .community-concept-copy h1 { font-size: clamp(56px,17vw,70px); letter-spacing: -.03em; white-space: nowrap; }
  .community-concept-copy p { max-width: 34ch; font-size: 13px; }
  .community-concept-copy p br { display: none; }
  .community-concept-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .community-concept-cta { min-width: 0; min-height: 48px; gap: 8px; padding: 0 14px; font-size: 10px; }
  .community-jett { right: -10%; bottom: -132px; height: 76%; }
  .community-valorant-mark { right: -28%; bottom: 2px; width: 112vw; height: 58%; }
  .community-vertical-label { display: none; }
  .community-control-row { min-height: 64px; }
  .community-primary-tabs button,
  .community-scope-tabs button { min-width: 126px; font-size: 16px; }
  .community-media-rail { padding: 14px 14px 18px; }
  .community-rail-card { flex-basis: 78vw; min-height: 178px; }
  .community-feed-page .community-feed-content > .wrap { padding-inline: 14px; }
  .community-feed-page .community-feed-content .filters { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 12px; }
  .community-feed-page .community-feed-content .filters > span { display: none; }
  .community-feed-page .community-feed-content .filters > * { flex: 0 0 auto; }
}

@media (prefers-reduced-motion: reduce) {
  .community-rail-media,
  .community-concept-cta { transition: none; }
}

/* ThreeUI-inspired hero accents: adapted from the MIT-licensed Gradient Beam CTA,
   Spark Badge and Laser Collection visual language without iframe/CDN runtimes. */
main[data-screen-label="Home"] .hero { isolation: isolate; overflow: hidden; }
main[data-screen-label="Home"] .hero::after {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  content: "";
  background:
    linear-gradient(90deg, rgba(4,7,10,.92) 0%, rgba(4,7,10,.62) 38%, rgba(4,7,10,.08) 72%),
    radial-gradient(circle at 34% 64%, rgba(182,255,59,.09), transparent 36%);
}
main[data-screen-label="Home"] .hero > .wrap { z-index: 2; }
.threeui-hero-beams {
  position: absolute;
  inset: 0;
  z-index: 1;
  overflow: hidden;
  pointer-events: none;
  opacity: .58;
  mix-blend-mode: screen;
}
.threeui-hero-beams::after {
  position: absolute;
  inset: 0;
  content: "";
  background: repeating-linear-gradient(90deg, transparent 0 92px, rgba(255,255,255,.025) 93px, transparent 94px);
  mask-image: linear-gradient(90deg, transparent, #000 25%, #000 76%, transparent);
}
.threeui-hero-beams span {
  position: absolute;
  left: 38%;
  bottom: 27%;
  width: 84vw;
  height: 1px;
  background: linear-gradient(90deg, rgba(182,255,59,.9), rgba(182,255,59,.2) 36%, transparent 76%);
  box-shadow: 0 0 7px rgba(182,255,59,.7), 0 0 26px rgba(182,255,59,.28);
  transform-origin: left center;
  animation: threeui-laser-breathe 4.8s ease-in-out infinite;
}
.threeui-hero-beams span:nth-child(1) { transform: rotate(-18deg); }
.threeui-hero-beams span:nth-child(2) { transform: rotate(5deg); animation-delay: -1.7s; opacity: .66; }
.threeui-hero-beams span:nth-child(3) { transform: rotate(28deg); animation-delay: -3.1s; opacity: .42; }
@keyframes threeui-laser-breathe {
  0%, 100% { filter: brightness(.72); opacity: .34; }
  48% { filter: brightness(1.3); opacity: .88; }
}
.threeui-spark-badge {
  width: fit-content;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 18px;
  padding: 8px 11px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 999px;
  color: rgba(255,255,255,.76);
  background: rgba(5,8,11,.68);
  box-shadow: inset 0 1px rgba(255,255,255,.06), 0 10px 28px rgba(0,0,0,.24);
  backdrop-filter: blur(14px) saturate(80%);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.threeui-spark-badge strong { color: var(--m-lime); font-size: 9px; }
.threeui-spark-badge-dot {
  position: relative;
  width: 7px;
  height: 7px;
  flex: none;
  border-radius: 50%;
  background: var(--m-lime);
  box-shadow: 0 0 0 3px rgba(182,255,59,.1), 0 0 15px rgba(182,255,59,.72);
}
.threeui-spark-badge-dot::after {
  position: absolute;
  inset: -5px;
  border: 1px solid rgba(182,255,59,.45);
  border-radius: inherit;
  content: "";
  animation: threeui-spark-pulse 2s ease-out infinite;
}
@keyframes threeui-spark-pulse {
  0% { opacity: .8; transform: scale(.45); }
  70%, 100% { opacity: 0; transform: scale(1.35); }
}
.hero .threeui-beam-cta {
  position: relative;
  z-index: 0;
  gap: 16px;
  overflow: hidden;
  isolation: isolate;
  border: 1px solid transparent;
  background: #0b0e12 !important;
  color: #fff !important;
  box-shadow: 0 12px 36px rgba(0,0,0,.38) !important;
}
.hero .threeui-beam-cta::before {
  position: absolute;
  inset: -220%;
  z-index: -2;
  content: "";
  background: conic-gradient(from 0deg, transparent 0 302deg, var(--m-lime) 340deg, #fff 360deg);
  animation: threeui-beam-spin 3.3s linear infinite;
}
.hero .threeui-beam-cta::after {
  position: absolute;
  inset: 1px;
  z-index: -1;
  border-radius: inherit;
  content: "";
  background:
    radial-gradient(circle at 28% 110%, rgba(182,255,59,.22), transparent 48%),
    radial-gradient(rgba(255,255,255,.17) .6px, transparent .8px) 0 0 / 10px 10px,
    #0b0e12;
}
.hero .threeui-beam-cta b { color: var(--m-lime); font-size: 18px; transition: transform .2s ease; }
.hero .threeui-beam-cta:hover { transform: translateY(-2px) scale(1.015); }
.hero .threeui-beam-cta:hover b { transform: translateX(4px); }
@keyframes threeui-beam-spin { to { transform: rotate(360deg); } }

@media (max-width: 820px) {
  .threeui-hero-beams { display: none; }
  .threeui-spark-badge { margin-bottom: 15px; }
}
@media (prefers-reduced-motion: reduce) {
  .threeui-hero-beams span,
  .threeui-spark-badge-dot::after,
  .hero .threeui-beam-cta::before { animation: none; }
  .threeui-hero-beams span { opacity: .42; }
}

/* Site-wide Valorant system: every public route now speaks the same language. */
.vct-content-page {
  min-height: calc(100svh - 72px);
  background: #06080b;
}
.vct-content-page .page-kicker,
.vct-content-page .ecard-type { color: var(--m-lime); }
.vct-content-page .btn-primary,
.pulse-page .btn-primary {
  border-color: var(--m-lime);
  background: var(--m-lime);
  color: #06080b;
  box-shadow: none;
}
.vct-content-page .btn-primary:hover,
.pulse-page .btn-primary:hover { border-color: #c8ff6b; background: #c8ff6b; }
.vct-page-head {
  min-height: 184px;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 34px;
  padding-top: 34px;
  padding-bottom: 28px;
}
.vct-page-head::before { display: none; }
.vct-page-head::after { grid-column: 1 / -1; width: 100%; margin-top: 0; background: var(--m-line); }
.vct-page-head .page-title {
  margin: 5px 0 8px;
  font-size: clamp(40px,5vw,66px);
  line-height: .9;
  letter-spacing: 0;
}
.vct-page-head .page-sub { max-width: 690px; margin: 0; font-size: 13px; line-height: 1.55; }

/* Pulse: a fast Valorant board, not a separate social product. */
.pulse-page {
  --forum-accent: var(--m-lime);
  --forum-accent-soft: rgba(182,255,59,.075);
  --forum-cyan: var(--m-cyan);
  min-height: calc(100svh - 72px);
  background: #06080b;
}
.pulse-shell {
  width: min(1260px,calc(100% - 36px));
  max-width: 1260px;
  grid-template-columns: 184px minmax(0,1fr) 232px;
  gap: 18px;
  padding: 24px 0 70px;
}
.pulse-left,
.pulse-right { top: 92px; gap: 12px; }
.pulse-communities button,
.pulse-personal button,
.pulse-discord-link,
.pulse-card,
.pulse-thread,
.pulse-composer,
.pulse-login,
.pulse-composer-trigger,
.pulse-sort,
.pulse-search { border-radius: 4px; }
.pulse-communities button { min-height: 52px; padding: 8px 10px; }
.pulse-communities button:hover,
.pulse-communities button[data-active="true"],
.pulse-personal button:hover,
.pulse-personal button[data-active="true"] {
  border-color: rgba(182,255,59,.26);
  background: rgba(182,255,59,.06);
}
.pulse-communities button[data-active="true"] { box-shadow: inset 3px 0 var(--m-lime); }
.pulse-discord-link { border-color: rgba(88,207,255,.22); background: rgba(88,207,255,.045); }
.pulse-head { gap: 18px; padding-bottom: 14px; }
.pulse-head h1 {
  font: 800 clamp(32px,3.2vw,44px)/.95 var(--font-display);
  text-transform: uppercase;
}
.pulse-head p { max-width: 58ch; margin-top: 6px; font-size: 12px; }
.pulse-head-actions { gap: 7px; }
.pulse-search { min-height: 42px; }
.pulse-search:focus-within { border-color: rgba(182,255,59,.55); box-shadow: 0 0 0 3px rgba(182,255,59,.08); }
.pulse-create {
  min-height: 42px;
  border-color: var(--m-lime);
  border-radius: 4px;
  background: var(--m-lime);
}
.pulse-login { min-height: 68px; padding: 12px 14px; background: #0d1015; box-shadow: none; }
.pulse-feed-toolbar { min-height: 46px; }
.pulse-thread { border-color: var(--m-line); background: #0c0f14; box-shadow: none; }
.pulse-thread:hover { border-color: var(--m-line-strong); transform: none; box-shadow: none; }
.pulse-thread-main h2 { font-size: clamp(18px,2vw,24px); }
.pulse-vote button[data-active="true"],
.pulse-sort button[data-active="true"] { color: var(--m-lime); background: rgba(182,255,59,.08); }
.pulse-card { border-color: var(--m-line); background: #0c0f14; }

/* Clip Arena: controls are legible before the first frame is available. */
.clips-experience.vct-content-page {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  height: calc(100svh - 72px);
  min-height: 620px;
  padding-top: 12px;
  background: #05070a;
}
.clips-experience::before {
  z-index: -1;
  opacity: .28;
  background-image: linear-gradient(var(--m-line) 1px,transparent 1px),linear-gradient(90deg,var(--m-line) 1px,transparent 1px);
  background-size: 56px 56px;
}
.clip-experience-backdrop,
.clip-experience-shade {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.clip-experience-backdrop {
  z-index: -3;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 58% 44%;
  filter: saturate(.78) contrast(1.06);
}
.clip-experience-shade {
  z-index: -2;
  background: rgba(3,6,9,.82);
}
.clip-hubbar.clip-topline {
  width: min(820px,calc(100% - 32px));
  min-height: 62px;
  margin-bottom: 7px;
  border-radius: 4px;
  background: rgba(10,13,18,.96);
  box-shadow: none;
}
.clip-hub-copy { display: grid; gap: 1px; }
.clip-hub-copy small { color: var(--m-lime); font-size: 8px; font-weight: 900; text-transform: uppercase; letter-spacing: .1em; }
.clip-hub-copy h1 { color: #fff; font: 800 20px/1 var(--font-display); }
.clip-hub-copy span { color: var(--m-dim); }
.clip-hub-stats b { color: var(--m-lime); }
.clip-filter-row {
  width: min(620px,calc(100% - 32px));
  min-height: 40px;
  margin-bottom: 8px;
  border-radius: 4px;
  background: rgba(10,13,18,.94);
  box-shadow: none;
}
.clip-filter-row button { min-height: 30px; border-radius: 3px; }
.clip-filter-row button[data-active="true"] { background: var(--m-lime); color: #06080b; }
.clips-experience .clip-feed { padding-bottom: 10px; }
.clips-experience .clip-screen {
  width: min(calc((100svh - 206px) * 9 / 16),500px,calc(100vw - 28px));
  height: min(100%,calc(100svh - 206px));
  border-radius: 4px;
  border-color: var(--m-line-strong);
  background-color: #090d12;
  background-image: linear-gradient(var(--m-line) 1px,transparent 1px),linear-gradient(90deg,var(--m-line) 1px,transparent 1px);
  background-size: 40px 40px;
  box-shadow: 0 24px 70px rgba(0,0,0,.46);
}
.clips-experience .clip-screen[data-active="true"] { border-color: rgba(182,255,59,.42); }
.clip-progress-line { background: var(--m-lime); box-shadow: none; }
.clip-card-top span,
.clip-card-top strong,
.clips-experience .clip-author,
.clips-experience .clip-latest-comment { border-radius: 4px; }
.clip-card-top strong,
.clips-experience .clip-author { color: var(--m-lime); }

/* Aim Pro: retain the tool, simplify the command surface. */
.aim-pro-v2 { background: #06080b; }
.aim-pro-v2::before { opacity: .12; }
.aim-pro-appbar {
  isolation: isolate;
  overflow: hidden;
  background: #090c10;
}
.aim-pro-appbar-art,
.aim-pro-appbar-shade {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.aim-pro-appbar-art {
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 48%;
  filter: saturate(1.08) brightness(1.05);
}
.aim-pro-appbar-shade {
  z-index: -1;
  background: linear-gradient(90deg,rgba(5,8,12,.9) 0%,rgba(5,8,12,.68) 48%,rgba(5,8,12,.16) 100%);
}
.aim-pro-appbar-inner { min-height: 156px; }
.aim-pro-mark {
  width: 48px;
  border-color: rgba(182,255,59,.4);
  background: rgba(182,255,59,.07);
  color: var(--m-lime);
  font-size: 11px;
}
.aim-pro-title h1 { font-size: 27px; }
.aim-pro-app-stats { background: #0c1015; }
.aim-pro-app-stats strong { color: #fff; }
.aim-pro-section { padding-top: 12px; }
.aim-pro-v2 .aim-pro-workspace-nav { border-radius: 4px; }
.aim-pro-v2 .aim-pro-workspace-nav button { min-height: 48px; }
.aim-pro-v2 .aim-pro-workspace-nav button[data-active="true"] {
  background: rgba(182,255,59,.07);
  color: #fff;
  box-shadow: inset 0 -2px var(--m-lime);
}
.aim-pro-quick-start { min-height: 46px; }
.aim-pro-quick-start b { color: var(--m-lime); }
.aim-pro-quick-start button { border-color: rgba(182,255,59,.32); background: rgba(182,255,59,.06); color: var(--m-lime); }
.aim-pro-studio { min-height: 650px; border-color: var(--m-line-strong); box-shadow: none; }
.aim-pro-scenario-dock { background: #090c10; }
.aim-pro-scenario-dock > header span,
.aim-pro-session-head > div:first-child > span { color: var(--m-lime); }
.aim-pro-v2 .aim-pro-scenario-rail button[data-active="true"] { box-shadow: inset 3px 0 var(--m-lime); }
.aim-pro-session-head { min-height: 80px; }
.aim-pro-v2 .aim-pro-layout,
.aim-pro-v2 .aim-pro-layout-osu { background: var(--m-line); }
.aim-pro-v2 .aim-pro-stage,
.aim-pro-v2 .osu-flow-stage { min-height: 540px; }

/* Events: current activity first, the completed GDL becomes an archive. */
.events-page-vct { background: #06080b; }
.events-command-stats { border-radius: 0; background: #0b0f14; }
.events-command-stats a { color: var(--m-lime); }
.event-jump-nav { top: 72px; background: rgba(6,8,11,.96); }
.event-jump-inner button { border-radius: 3px; }
.event-jump-inner button:hover,
.event-jump-inner button[data-active="true"] { border-color: rgba(182,255,59,.34); background: rgba(182,255,59,.07); color: var(--m-lime); }
.events-page-vct .section { padding-block: clamp(34px,4.8vw,60px); }
.events-page-vct .event-card { border-radius: 4px; }
.gdl-v2 { padding-top: 18px; background: #070a0e; }
.gdl-v2 > .wrap { gap: 18px; }
.gdl-v2 .gdl-hero {
  min-height: 410px;
  grid-template-columns: minmax(0,1fr) minmax(280px,350px);
  border-radius: 4px;
  box-shadow: none;
}
.gdl-v2 .gdl-hero-copy { padding: clamp(28px,4vw,46px); }
.gdl-v2 .gdl-hero-copy h2 { margin: 13px 0 15px; font-size: clamp(46px,5.4vw,68px); }
.gdl-v2 .gdl-hero-copy p { font-size: 13px; }
.gdl-v2 .gdl-hero-media { min-height: 410px; }
.gdl-v2 .gdl-hero-media img { max-height: 380px; }
.gdl-v2 .gdl-focus-match { margin-top: 18px; border-left-color: var(--m-lime); border-radius: 3px; }
.gdl-progress > span b { background: var(--m-lime); }
.gdl-v2 .gdl-next-block,
.gdl-v2 .gdl-tournament-status,
.gdl-v2 .gdl-standings-block,
.gdl-v2 .gdl-finals-block,
.gdl-v2 .gdl-streamers-panel,
.gdl-v2 .gdl-table-wrap { border-radius: 4px; box-shadow: none; }
.gdl-tournament-status > strong { color: var(--m-lime); }

/* Community feed: useful content begins in the first viewport. */
.community-feed-page { background: #06080b; }
.community-feed-head { min-height: 168px; }
.community-feed-content { padding-top: 12px; padding-bottom: 72px; }
.community-feed-page .social-feed-tabs {
  min-height: 46px;
  margin-bottom: 10px;
  padding: 3px;
  border-color: var(--m-line);
  background: #0b0e13;
}
.community-feed-page .social-feed-tabs button { min-height: 38px; }
.community-feed-page .social-feed-tabs button:hover,
.community-feed-page .social-feed-tabs button[data-active="true"] { background: rgba(182,255,59,.07); color: var(--m-lime); }
.community-feed-page .filters { margin-bottom: 14px; }
.community-feed-page .fchip { border-radius: 3px; }
.community-feed-page .fchip[data-on="true"] { border-color: rgba(182,255,59,.36); background: rgba(182,255,59,.07); color: var(--m-lime); }
.community-feed-page .post-card { border-radius: 4px; box-shadow: none; }

/* Newsroom: editorial, compact and fully Valorant. */
.newsroom-page { background: #06080b; }
.newsroom-intro {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 330px;
  display: flex;
  align-items: end;
  padding: clamp(48px,7vw,78px) 0 38px;
  border-bottom: 1px solid var(--m-line);
  background: #080b0f;
}
.newsroom-intro-art,
.newsroom-intro-shade {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.newsroom-intro-art {
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 58%;
  transition: opacity 180ms ease;
}
.newsroom-intro-shade {
  z-index: -1;
  background: linear-gradient(90deg,rgba(4,7,10,.96) 0%,rgba(4,7,10,.72) 52%,rgba(4,7,10,.14) 100%);
}
.newsroom-intro .wrap > span { color: var(--m-lime); }
.newsroom-intro h1 { max-width: 920px; margin: 10px 0 14px; font-size: clamp(42px,6vw,72px); line-height: .94; letter-spacing: 0; }
.newsroom-intro p { max-width: 720px; font-size: 14px; }
.newsroom-shell { gap: 0; padding-top: 30px; padding-bottom: 76px; }
.newsroom-index { border-radius: 4px 0 0 4px; }
.newsroom-article { border-radius: 0 4px 4px 0; }
.newsroom-index button[data-active="true"] { border-left-color: var(--m-lime); background: rgba(182,255,59,.055); }
.newsroom-index button[data-active="true"] small { color: var(--m-lime); }

@media (max-width: 1120px) {
  .pulse-shell { grid-template-columns: 174px minmax(0,1fr); }
  .pulse-right { display: none; }
  .aim-pro-app-stats > span { min-width: 92px; }
}

@media (max-width: 900px) {
  .vct-page-head { grid-template-columns: 1fr; gap: 18px; }
  .pulse-shell { width: min(100% - 28px,820px); grid-template-columns: 1fr; padding-top: 18px; }
  .pulse-left { position: static; }
  .pulse-left > .pulse-rail-label,
  .pulse-left > .pulse-communities,
  .pulse-left > .pulse-personal,
  .pulse-left > .pulse-discord-link { display: none; }
  .pulse-mobile-channels { display: flex; }
  .gdl-v2 .gdl-hero { grid-template-columns: minmax(0,1fr) 300px; }
}

@media (max-width: 680px) {
  .vct-page-head { min-height: 0; padding-top: 28px; padding-bottom: 20px; }
  .vct-page-head .page-title { font-size: clamp(38px,12vw,52px); }
  .pulse-shell { width: calc(100% - 20px); padding-bottom: 42px; }
  .pulse-head { grid-template-columns: 1fr; align-items: start; }
  .pulse-head-actions { width: 100%; }
  .pulse-search { width: 100%; }
  .pulse-create { flex: 0 0 auto; padding-inline: 12px; }
  .pulse-login { align-items: flex-start; flex-direction: column; }
  .pulse-login .btn { width: 100%; }
  .clips-experience.vct-content-page { height: calc(100svh - 126px); min-height: 0; }
  .clip-experience-backdrop { object-position: 66% center; }
  .clip-experience-shade { background: rgba(3,6,9,.88); }
  .clip-hubbar.clip-topline { min-height: 56px; }
  .clip-hub-copy small { display: none; }
  .clips-experience .clip-screen { width: min(calc((100svh - 252px) * 9 / 16),calc(100vw - 18px)); height: min(100%,calc(100svh - 252px)); }
  .aim-pro-appbar-inner { min-height: 176px; }
  .aim-pro-appbar-art { object-position: 68% center; }
  .aim-pro-appbar-shade { background: rgba(5,8,12,.76); }
  .aim-pro-v2 .aim-pro-stage,
  .aim-pro-v2 .osu-flow-stage { min-height: 64svh; }
  .event-jump-nav { top: 126px; }
  .gdl-v2 .gdl-hero { grid-template-columns: 1fr; }
  .gdl-v2 .gdl-hero-copy { order: 1; padding: 24px 18px; }
  .gdl-v2 .gdl-hero-media { order: 2; min-height: 310px; aspect-ratio: auto; }
  .gdl-v2 .gdl-hero-copy h2 { font-size: 44px; }
  .newsroom-intro { min-height: 370px; padding: 50px 2px 30px; }
  .newsroom-intro-art { object-position: 64% center; }
  .newsroom-intro-shade { background: rgba(4,7,10,.58); }
  .newsroom-intro h1 { font-size: clamp(38px,11vw,54px); }
  .newsroom-shell { padding-inline: 14px; }
  .newsroom-index,
  .newsroom-article { border-radius: 4px; }
}

/* 2026-08 experience pass: fewer destinations, stronger states and mobile-safe tools. */
.site-boot {
  min-height: 100svh;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 9px;
  padding: 28px;
  background: #06080b;
  color: #f5f7f9;
  text-align: center;
}
.site-boot-mark { color: var(--m-lime,#b6ff3b); font: 800 32px/1 var(--font-display,Arial,sans-serif); }
.site-boot > strong { font-size: 14px; }
.site-boot > span:not(.site-boot-mark) { color: #8993a1; font-size: 11px; }
.site-boot > i { width: 180px; height: 2px; margin-top: 8px; overflow: hidden; background: #20262f; }
.site-boot > i::after { content: ""; width: 45%; height: 100%; display: block; background: var(--m-lime,#b6ff3b); animation: site-boot-progress 1s ease-in-out infinite alternate; }
.site-boot-error button { min-height: 42px; margin-top: 8px; padding-inline: 18px; border: 1px solid #b6ff3b; background: #b6ff3b; color: #06080b; font-weight: 800; }
@keyframes site-boot-progress { from { transform: translateX(0); } to { transform: translateX(122%); } }

.community-view-switch,
.community-mode-bar {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  border: 1px solid var(--m-line);
  background: #0b0f14;
}
.community-view-switch { align-self: end; width: min(430px,100%); }
.community-view-switch button,
.community-mode-bar button {
  min-width: 0;
  min-height: 42px;
  padding: 0 12px;
  border: 0;
  border-right: 1px solid var(--m-line);
  background: transparent;
  color: var(--m-muted);
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
}
.community-view-switch button:last-child,
.community-mode-bar button:last-child { border-right: 0; }
.community-view-switch button:hover,
.community-mode-bar button:hover,
.community-view-switch button[data-active="true"],
.community-mode-bar button[data-active="true"] { background: rgba(182,255,59,.07); color: var(--m-lime); box-shadow: inset 0 -2px var(--m-lime); }
.community-mode-bar { position: relative; z-index: 12; width: min(620px,calc(100% - 32px)); margin: 0 auto 8px; }
.community-mode-bar-static { margin-top: 18px; margin-bottom: 0; }

.clip-hubbar.clip-topline { grid-template-columns: minmax(130px,1fr) auto auto auto; }
.clip-feed-nav { display: grid !important; grid-template-columns: 30px auto 30px; align-items: center; gap: 4px; }
.clip-feed-nav button { width: 30px; height: 30px; border: 1px solid var(--m-line-strong); background: #0c1015; color: #fff; cursor: pointer; }
.clip-feed-nav button:disabled { opacity: .3; cursor: default; }
.clip-feed-nav span { color: var(--m-dim); font-size: 8px; font-weight: 800; text-transform: uppercase; }
.clip-reaction-more { font-size: 11px; letter-spacing: 0; }

.lfg-page { background: #06080b; }
.lfg-command { align-items: end; }
.lfg-command > .btn { justify-self: end; }
.lfg-section { padding-top: 26px; }
.lfg-create,
.lfg-login { position: sticky; top: 92px; border-radius: 4px; }
.lfg-login { display: grid; gap: 14px; }
.lfg-login h3 { margin: 0; font: 700 26px/1 var(--font-display); }
.lfg-login p { margin: 0; color: var(--m-muted); line-height: 1.6; }
.lfg-form-note { display: block; margin-top: 12px; color: var(--m-dim); line-height: 1.5; }
.lfg-list > header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-bottom: 12px; border-bottom: 1px solid var(--m-line); }
.lfg-list > header > strong { font-size: 12px; }
.lfg-card { border-radius: 4px; box-shadow: none; }
.lfg-card img,
.lfg-card > span { border-radius: 50%; }

.events-archive-notice { padding: 24px 0; border-bottom: 1px solid var(--m-line); background: #090c10; }
.events-archive-notice .wrap { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 8px 22px; }
.events-archive-notice span { grid-row: span 2; color: var(--m-gold); font-size: 9px; font-weight: 900; text-transform: uppercase; }
.events-archive-notice strong { font: 700 18px var(--font-display); }
.events-archive-notice p { margin: 0; color: var(--m-muted); font-size: 11px; }
.events-archive-notice .btn { grid-column: 3; grid-row: 1 / span 2; }
.newsroom-article-image { width: 100%; max-height: 320px; display: block; margin-bottom: 22px; border: 1px solid var(--m-line); object-fit: cover; }

.aim-pro-mobile-scenario { display: none; }

@media (max-width: 820px) {
  .community-view-switch { align-self: stretch; width: 100%; }
  .community-feed-head { gap: 18px; }
  .lfg-command > .btn { justify-self: start; }
  .lfg-create,
  .lfg-login { position: static; }
  .clip-hubbar.clip-topline { grid-template-columns: minmax(0,1fr) auto auto; }
  .clip-hubbar.clip-topline .clip-hub-stats { display: none; }
  .events-archive-notice .wrap { grid-template-columns: 1fr; }
  .events-archive-notice span { grid-row: auto; }
  .events-archive-notice .btn { grid-column: auto; grid-row: auto; justify-self: start; }
}

@media (max-width: 560px) {
  .community-mode-bar { width: calc(100% - 18px); margin-bottom: 6px; }
  .community-mode-bar-static { margin-top: 10px; }
  .community-view-switch button,
  .community-mode-bar button { min-height: 38px; padding-inline: 6px; font-size: 9px; }
  .clip-hubbar.clip-topline { grid-template-columns: minmax(0,1fr) auto; }
  .clip-feed-nav { display: none !important; }
  .lfg-card { grid-template-columns: 44px minmax(0,1fr); }
  .lfg-card .btn { grid-column: 1 / -1; width: 100%; }
  .aim-pro-app-stats {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    overflow: hidden;
    padding-inline: 0;
  }
  .aim-pro-app-stats > span { min-width: 0 !important; overflow: hidden; padding: 8px; }
  .aim-pro-app-stats strong { overflow: hidden; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
  .aim-pro-v2 .aim-pro-workspace-nav button { overflow: hidden; }
  .aim-pro-v2 .aim-pro-workspace-nav strong { overflow: hidden; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
  .aim-pro-quick-start { grid-template-columns: 1fr; }
  .aim-pro-quick-start span { display: none; }
  .aim-pro-mobile-scenario { display: grid; gap: 6px; padding: 12px; }
  .aim-pro-mobile-scenario span { color: var(--m-lime); font-size: 9px; font-weight: 900; text-transform: uppercase; }
  .aim-pro-mobile-scenario select { width: 100%; min-height: 44px; padding: 0 10px; border: 1px solid var(--m-line-strong); border-radius: 3px; background: #0b0f14; color: #fff; }
  .aim-pro-v2 .aim-pro-scenario-rail { display: none; }
  .aim-pro-v2 .aim-pro-family-pills { display: none; }
}

/* Image-led VCT section identity */
.community-visual-hero,
.forum-visual-head,
.lfg-visual-hero,
.events-visual-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-bottom: 1px solid var(--m-line);
  background: #06080b;
}
.community-visual-hero > img,
.forum-visual-head > img,
.lfg-visual-hero > img,
.events-visual-hero > img {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.community-visual-shade,
.forum-visual-shade,
.lfg-visual-shade,
.events-visual-shade {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: rgba(3,6,9,.67);
}
.community-visual-shade { background: rgba(3,6,9,.53); }
.community-visual-hero > img { object-position: center top; }
.community-visual-inner,
.lfg-visual-inner,
.events-visual-inner {
  min-height: 370px;
  display: grid;
  grid-template-columns: minmax(0,680px) minmax(280px,1fr);
  align-items: end;
  gap: 42px;
  padding-top: 64px;
  padding-bottom: 42px;
}
.community-visual-copy h1,
.forum-visual-inner h1,
.lfg-visual-inner h1,
.events-visual-inner h1 {
  max-width: 720px;
  margin: 8px 0 14px;
  color: #fff;
  font: 800 clamp(46px,5.5vw,82px)/.92 var(--font-display);
  text-transform: uppercase;
  letter-spacing: 0;
}
.community-visual-copy p,
.forum-visual-inner p,
.lfg-visual-inner p,
.events-visual-inner p {
  max-width: 650px;
  margin: 0;
  color: rgba(255,255,255,.76);
  font-size: 15px;
  line-height: 1.7;
}
.community-visual-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.community-hero-switch { align-self: end; background: rgba(5,8,11,.86); backdrop-filter: blur(12px); }

.community-lanes { padding: 18px 0; border-bottom: 1px solid var(--m-line); background: #080b0f; }
.community-lanes-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.community-lane {
  position: relative;
  min-height: 188px;
  overflow: hidden;
  padding: 0;
  border: 1px solid var(--m-line-strong);
  border-radius: 4px;
  background: #0a0d11;
  color: #fff;
  cursor: pointer;
  text-align: left;
}
.community-lane::after { content: ""; position: absolute; inset: 0; background: rgba(3,6,9,.34); transition: background .2s ease; }
.community-lane:hover::after { background: rgba(3,6,9,.2); }
.community-lane::before { content: ""; position: absolute; z-index: 2; inset: auto 0 0; height: 3px; background: var(--m-lime); transform: scaleX(.18); transform-origin: left; transition: transform .2s ease; }
.community-lane:hover::before { transform: scaleX(1); }
.community-lane img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.community-lane.lane-clips img { object-position: 50% 58%; }
.community-lane:hover img { transform: scale(1.035); }
.community-lane span { position: absolute; z-index: 3; inset: auto 18px 18px; display: grid; gap: 5px; text-shadow: 0 2px 14px rgba(0,0,0,.95); }
.community-lane small { color: var(--m-lime); font-size: 8px; font-weight: 900; text-transform: uppercase; }
.community-lane strong { font: 700 24px/1 var(--font-display); text-transform: uppercase; }
.community-lane em { max-width: 320px; color: rgba(255,255,255,.72); font-size: 10px; font-style: normal; line-height: 1.45; }
.community-feed-empty { grid-column: 1 / -1; min-height: 300px; grid-template-columns: minmax(250px,42%) minmax(0,1fr); align-items: stretch; padding: 0; overflow: hidden; text-align: left; }
.community-feed-empty > img { width: 100%; height: 100%; min-height: 300px; object-fit: cover; }
.community-feed-empty > div { align-self: center; display: grid; justify-items: start; gap: 10px; padding: 34px; }
.community-feed-empty h2,
.community-feed-empty p { margin: 0; }

.forum-visual-head { min-height: 296px; padding-bottom: 54px; }
.forum-visual-head > img { object-position: center 36%; }
.forum-visual-inner { min-height: 242px; display: flex; align-items: end; justify-content: space-between; gap: 28px; padding-top: 52px; padding-bottom: 28px; }
.forum-visual-inner h1 { font-size: clamp(42px,4.7vw,68px); }
.forum-mode-bar { position: absolute; right: 0; bottom: 0; left: 0; margin-bottom: 0; background: rgba(5,8,11,.9); backdrop-filter: blur(12px); }
.forum-visual-head + .pulse-shell { margin-top: 22px; }

.lfg-visual-hero > img { object-position: center 48%; }
.lfg-visual-inner { grid-template-columns: minmax(0,660px) 1fr; }
.lfg-visual-inner h1 { font-size: clamp(46px,5.2vw,78px); }
.lfg-visual-inner .btn { margin-top: 24px; }
.lfg-flow-band { border-bottom: 1px solid var(--m-line); background: #090c10; }
.lfg-flow-band .wrap { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
.lfg-flow-band .wrap > div { min-height: 92px; display: flex; align-items: center; gap: 15px; padding: 18px 22px; border-right: 1px solid var(--m-line); }
.lfg-flow-band .wrap > div:first-child { border-left: 1px solid var(--m-line); }
.lfg-flow-band b { color: var(--m-lime); font: 800 24px var(--font-display); }
.lfg-flow-band span { display: grid; gap: 4px; }
.lfg-flow-band strong { font-size: 12px; }
.lfg-flow-band small { color: var(--m-muted); font-size: 9px; }

.events-visual-hero { min-height: 350px; }
.events-visual-hero > img { left: auto; width: 54%; object-position: 50% 28%; }
.events-visual-shade { background: rgba(3,6,9,.44); }
.events-visual-inner { min-height: 350px; grid-template-columns: minmax(0,650px) minmax(240px,1fr); }
.events-visual-inner::before { content: ""; position: absolute; z-index: -1; inset: 0 46% 0 0; background: rgba(3,6,9,.86); }
.events-hero-stats { justify-self: end; align-self: end; min-width: 310px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border: 1px solid rgba(255,255,255,.2); background: rgba(5,8,11,.84); backdrop-filter: blur(12px); }
.events-hero-stats span { display: grid; gap: 3px; padding: 16px; border-right: 1px solid rgba(255,255,255,.14); color: var(--m-muted); font-size: 8px; text-transform: uppercase; }
.events-hero-stats strong { color: #fff; font: 700 25px var(--font-display); }
.events-hero-stats a { grid-column: 1 / -1; padding: 13px 16px; border-top: 1px solid rgba(255,255,255,.14); color: var(--m-lime); font-size: 10px; font-weight: 900; text-align: center; text-transform: uppercase; }

@media (max-width: 900px) {
  .community-visual-inner,
  .lfg-visual-inner,
  .events-visual-inner { grid-template-columns: 1fr; }
  .community-hero-switch { width: 100%; }
  .community-lanes-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .community-lane:last-child { grid-column: 1 / -1; }
  .events-visual-hero > img { width: 100%; }
  .events-visual-inner::before { inset: 0; background: rgba(3,6,9,.62); }
  .events-hero-stats { justify-self: start; }
}

@media (max-width: 620px) {
  .community-visual-inner,
  .lfg-visual-inner,
  .events-visual-inner { min-height: 430px; gap: 24px; padding: 50px 18px 24px; }
  .community-visual-hero > img { object-position: center top; }
  .community-visual-copy h1,
  .lfg-visual-inner h1,
  .events-visual-inner h1 { font-size: 44px; }
  .community-visual-copy p,
  .lfg-visual-inner p,
  .events-visual-inner p { font-size: 13px; }
  .community-lanes { overflow: hidden; }
  .community-lanes-grid { display: flex; gap: 10px; overflow-x: auto; padding-inline: 18px; scroll-snap-type: x mandatory; }
  .community-lane,
  .community-lane:last-child { flex: 0 0 82vw; min-height: 174px; scroll-snap-align: start; }
  .community-feed-empty { grid-template-columns: 1fr; }
  .community-feed-empty > img { min-height: 190px; max-height: 210px; }
  .community-feed-empty > div { padding: 24px; }
  .forum-visual-head { min-height: 360px; padding-bottom: 48px; }
  .forum-visual-head > img { object-position: 49% center; }
  .forum-visual-inner { min-height: 312px; display: grid; align-content: end; padding: 36px 18px 22px; }
  .forum-visual-inner h1 { font-size: 40px; }
  .forum-visual-inner p { font-size: 12px; }
  .forum-visual-inner .btn { justify-self: start; }
  .forum-mode-bar { width: 100%; }
  .lfg-flow-band .wrap { grid-template-columns: 1fr; padding: 0; }
  .lfg-flow-band .wrap > div,
  .lfg-flow-band .wrap > div:first-child { min-height: 76px; border-right: 0; border-bottom: 1px solid var(--m-line); border-left: 0; }
  .events-visual-hero { min-height: 470px; }
  .events-visual-hero > img { object-position: 50% 20%; }
  .events-hero-stats { width: 100%; min-width: 0; }
}

/* 2026 editorial motion system — faithful to the approved ThreeUI-led concept. */
main[data-screen-label="Home"] .hero {
  min-height: 640px;
  padding: 64px 0 50px;
  background-position: center 48%;
  box-shadow: inset 0 -1px var(--m-line);
}
main[data-screen-label="Home"] .hero::before {
  position: absolute;
  inset: 24px;
  z-index: 2;
  pointer-events: none;
  content: "";
  border: 1px solid transparent;
  border-top-color: rgba(255,255,255,.08);
  border-left-color: rgba(182,255,59,.22);
  clip-path: polygon(0 0,28% 0,32% 7%,100% 7%,100% 100%,0 100%);
  opacity: .72;
}
main[data-screen-label="Home"] .hero::after {
  z-index: 0;
  background:
    linear-gradient(90deg, #030609 0%, rgba(3,6,9,.91) 19%, rgba(3,6,9,.52) 43%, transparent 68%),
    linear-gradient(0deg, rgba(3,6,9,.9), transparent 28%);
}
main[data-screen-label="Home"] .hero > .wrap {
  z-index: 3;
  min-height: 526px;
}
.home-energy-canvas {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  pointer-events: none;
  mix-blend-mode: screen;
}
.home-energy-canvas[data-unavailable="true"] { display: none; }
main[data-screen-label="Home"] .hero-title {
  max-width: 680px;
  font-size: clamp(78px, 8.25vw, 118px);
  line-height: .86;
  letter-spacing: -.035em;
  text-shadow: 0 12px 40px rgba(0,0,0,.48);
}
main[data-screen-label="Home"] .hero-title em { color: var(--m-lime); }
main[data-screen-label="Home"] .hero-sub {
  max-width: 500px;
  margin-top: 24px;
  color: rgba(255,255,255,.84);
  font-size: 16px;
  line-height: 1.6;
  text-shadow: 0 3px 18px rgba(0,0,0,.9);
}
main[data-screen-label="Home"] .hero > .wrap > .hero-actions { margin-top: 26px; }
.hero .threeui-beam-cta {
  min-width: 218px;
  border-color: var(--m-lime);
  border-radius: 1px;
  background: var(--m-lime) !important;
  color: #05070a !important;
  box-shadow: 0 0 0 1px rgba(182,255,59,.12), 0 15px 36px rgba(0,0,0,.32) !important;
}
.hero .threeui-beam-cta::before { display: none; }
.hero .threeui-beam-cta::after {
  inset: 0;
  border-radius: 0;
  opacity: .24;
  background: repeating-linear-gradient(135deg, transparent 0 8px, rgba(4,7,10,.14) 9px, transparent 10px);
  transform: translateX(-28%);
  transition: transform .35s ease;
}
.hero .threeui-beam-cta:hover::after { transform: translateX(0); }
.hero .threeui-beam-cta b { color: #05070a; }
main[data-screen-label="Home"] .hero .btn-line { border-radius: 1px; background: rgba(5,8,11,.42); backdrop-filter: blur(12px); }
.home-stats-band {
  position: relative;
  z-index: 4;
  padding: 0 0 32px;
  border: 0;
  background: #05070a;
}
.home-stats-band > .wrap { position: relative; }
.home-stats-band > .wrap::before,
.home-pulse-shell::before {
  position: absolute;
  top: -1px;
  right: -1px;
  width: 30px;
  height: 30px;
  border-top: 3px solid #ff4655;
  border-right: 3px solid #ff4655;
  content: "";
  pointer-events: none;
}
.home-stats-band .stats-strip {
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 0;
  background: rgba(7,10,14,.96);
  box-shadow: 0 24px 70px rgba(0,0,0,.25);
}
.home-stats-band .stat { min-height: 104px; }
.home-stats-band .stat-num { font-size: 34px; }
.home-stats-band .stat-label { letter-spacing: .09em; }
.home-pulse-shell {
  position: relative;
  border: 1px solid var(--m-line-strong);
  border-radius: 0;
  background:
    linear-gradient(135deg, rgba(255,255,255,.018), transparent 35%),
    #070a0e;
}

/* Shared internal-page visual architecture. */
.community-visual-hero,
.lfg-visual-hero {
  min-height: 560px;
  background:
    linear-gradient(90deg, #040608 0 42%, rgba(4,6,8,.88) 51%, rgba(4,6,8,.16) 72%),
    #040608;
}
.community-visual-hero > img,
.lfg-visual-hero > img {
  right: 0;
  left: auto;
  width: 66%;
  height: 100%;
  object-position: center;
  mask-image: linear-gradient(90deg, transparent 0, rgba(0,0,0,.4) 18%, #000 42%);
}
.community-visual-shade,
.lfg-visual-shade {
  background:
    linear-gradient(0deg, rgba(4,6,8,.88), transparent 30%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.018) 0 1px, transparent 1px 4px);
}
.community-visual-inner,
.lfg-visual-inner {
  position: relative;
  min-height: 560px;
  align-items: center;
  padding-top: 52px;
  padding-bottom: 78px;
}
.community-visual-copy,
.lfg-visual-inner > div { position: relative; z-index: 2; }
.community-visual-copy::before,
.lfg-visual-inner > div::before {
  position: absolute;
  top: -30px;
  left: -34px;
  width: 34px;
  height: 34px;
  border-top: 3px solid var(--m-lime);
  border-left: 3px solid var(--m-lime);
  content: "";
}
.community-visual-copy h1,
.lfg-visual-inner h1 {
  max-width: 680px;
  margin: 0 0 22px;
  font-size: clamp(70px,8vw,112px);
  line-height: .84;
  letter-spacing: -.035em;
}
.community-visual-copy p,
.lfg-visual-inner p { max-width: 520px; color: rgba(255,255,255,.8); font-size: 15px; }
.community-visual-actions .btn,
.lfg-visual-inner .btn { min-width: 196px; border-radius: 1px; }
.community-hero-switch {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 4;
  width: 100%;
  border-radius: 0;
  background: rgba(4,6,8,.9);
}
.community-lanes {
  padding: 22px 0;
  background: #05070a;
}
.community-lanes-grid { gap: 1px; border: 1px solid var(--m-line-strong); background: var(--m-line-strong); }
.community-lane {
  min-height: 220px;
  border: 0;
  border-radius: 0;
}
.community-lane::after { background: linear-gradient(0deg, rgba(3,6,9,.92), rgba(3,6,9,.02) 74%); }
.community-lane strong { font-size: 29px; }
.community-lane.lane-discuss img { object-position: center 30%; }
.community-lane.lane-clips img { object-position: 58% 48%; }
.community-lane.lane-play img { object-position: center 42%; }

.forum-visual-head {
  min-height: 430px;
  background: #040608;
}
.forum-visual-head > img {
  right: 0;
  left: auto;
  width: 62%;
  object-position: center 30%;
  mask-image: linear-gradient(90deg, transparent, #000 34%);
}
.forum-visual-shade {
  background:
    linear-gradient(90deg, #040608 0 40%, rgba(4,6,8,.82) 52%, transparent 76%),
    linear-gradient(0deg, rgba(4,6,8,.88), transparent 30%);
}
.forum-visual-inner { min-height: 374px; align-items: center; padding-top: 44px; padding-bottom: 78px; }
.forum-visual-inner h1 { max-width: 680px; font-size: clamp(62px,6.5vw,92px); line-height: .86; }
.forum-visual-inner .btn { border-radius: 1px; }

.clip-experience-backdrop { object-position: 64% center !important; }
.aim-pro-appbar { min-height: 270px; overflow: hidden; background: #05070a; }
.aim-pro-appbar-art {
  inset: 0 0 0 auto;
  width: 64%;
  height: 100%;
  object-position: center;
  mask-image: linear-gradient(90deg, transparent 0, #000 32%);
}
.aim-pro-appbar-shade {
  background:
    linear-gradient(90deg, #05070a 0 38%, rgba(5,7,10,.78) 52%, transparent 78%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.02) 0 1px, transparent 1px 4px);
}
.aim-pro-appbar-inner { min-height: 270px; }
.aim-pro-title h1 { font-size: clamp(50px,6vw,86px); line-height: .85; }

@media (max-width: 900px) {
  main[data-screen-label="Home"] .hero { min-height: 590px; }
  .community-visual-hero > img,
  .lfg-visual-hero > img { width: 100%; mask-image: linear-gradient(90deg, rgba(0,0,0,.2), #000); opacity: .72; }
  .community-visual-shade,
  .lfg-visual-shade { background: linear-gradient(90deg, rgba(4,6,8,.9), rgba(4,6,8,.32)); }
  .community-visual-inner,
  .lfg-visual-inner { min-height: 540px; }
}

@media (max-width: 820px) {
  main[data-screen-label="Home"] .hero {
    min-height: auto;
    padding: 48px 0 38px;
    background-position: 49% center;
  }
  main[data-screen-label="Home"] .hero::before { inset: 12px; opacity: .36; }
  main[data-screen-label="Home"] .hero::after {
    background: linear-gradient(90deg, rgba(3,6,9,.84), rgba(3,6,9,.26)), linear-gradient(0deg, rgba(3,6,9,.78), transparent 36%);
  }
  main[data-screen-label="Home"] .hero > .wrap { min-height: 0; }
  main[data-screen-label="Home"] .hero-title { font-size: clamp(52px,16vw,74px); }
  .home-energy-canvas { display: none; }
  .home-stats-band { padding-bottom: 18px; }
  .home-stats-band > .wrap { padding-inline: 0; }
  .home-stats-band .stats-strip { border-inline: 0; }
}

@media (max-width: 620px) {
  .community-visual-hero,
  .lfg-visual-hero { min-height: 520px; }
  .community-visual-inner,
  .lfg-visual-inner { min-height: 520px; align-content: end; padding: 64px 18px 82px; }
  .community-visual-copy h1,
  .lfg-visual-inner h1 { font-size: clamp(50px,15vw,68px); }
  .community-visual-copy::before,
  .lfg-visual-inner > div::before { top: -22px; left: 0; width: 24px; height: 24px; }
  .community-visual-hero > img { object-position: 43% center; }
  .lfg-visual-hero > img { object-position: 59% center; }
  .community-visual-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .community-visual-actions .btn { min-width: 0; padding-inline: 12px; }
  .community-lanes-grid { border-inline: 0; }
  .forum-visual-head > img { width: 100%; object-position: 38% center; opacity: .74; mask-image: none; }
  .forum-visual-shade { background: linear-gradient(90deg, rgba(4,6,8,.9), rgba(4,6,8,.32)); }
  .aim-pro-appbar { min-height: 330px; }
  .aim-pro-appbar-art { width: 100%; opacity: .72; mask-image: none; object-position: 58% center; }
  .aim-pro-appbar-shade { background: linear-gradient(90deg, rgba(5,7,10,.9), rgba(5,7,10,.38)); }
  .aim-pro-appbar-inner { min-height: 330px; align-content: end; }
}

/* Play Hub — room, ready-check and Discord presence. */
.play-hub-page {
  min-height: calc(100vh - 72px);
  padding-bottom: 64px;
  overflow: hidden;
  background:
    linear-gradient(rgba(255,255,255,.017) 1px, transparent 1px),
    #06080b;
  background-size: 100% 72px;
  color: var(--m-text);
}
.play-demo-bar {
  min-height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 7px 18px;
  border-bottom: 1px solid rgba(182,255,59,.2);
  background: rgba(182,255,59,.055);
  color: var(--m-muted);
  font-size: 11px;
}
.play-demo-bar span {
  padding: 3px 7px;
  border: 1px solid rgba(182,255,59,.34);
  color: var(--m-lime);
  font: 750 9px/1 var(--font-display);
  letter-spacing: .12em;
  text-transform: uppercase;
}
.play-demo-bar p { margin: 0; }
.play-sync-warning {
  width: 100%;
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 0;
  border-bottom: 1px solid rgba(255,182,0,.3);
  background: rgba(255,182,0,.08);
  color: #ffd36a;
  font-size: 11px;
}
.play-command-head {
  min-height: 176px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 44px;
  padding-top: 32px;
  padding-bottom: 22px;
  border-bottom: 1px solid var(--m-line-strong);
}
.play-command-title { min-width: 0; max-width: 920px; flex: 1; }
.play-command-title > span,
.play-open-lobbies > header span,
.play-create-panel > span,
.play-activity > header > span,
.play-rail-block > header > span,
.play-after > header > span {
  color: var(--m-lime);
  font: 750 10px/1 var(--font-display);
  letter-spacing: .16em;
  text-transform: uppercase;
}
.play-command-title h1 {
  max-width: none;
  margin: 10px 0 11px;
  font-size: clamp(46px, 4.7vw, 66px);
  line-height: .9;
  letter-spacing: -.035em;
}
.play-command-title p {
  max-width: 660px;
  margin: 0;
  color: var(--m-muted);
  font-size: 13px;
  line-height: 1.65;
}
.play-checkin-clock {
  min-width: 208px;
  display: grid;
  justify-items: end;
  align-content: end;
  padding: 0 0 5px 24px;
  border-left: 1px solid var(--m-line-strong);
}
.play-checkin-clock small {
  color: var(--m-dim);
  font: 700 9px/1 var(--font-display);
  letter-spacing: .13em;
  text-transform: uppercase;
}
.play-checkin-clock strong {
  margin: 8px 0 5px;
  color: var(--m-text);
  font: 800 32px/.9 var(--font-display);
  letter-spacing: .02em;
}
.play-checkin-clock span,
.play-live-signal {
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--m-muted);
  font-size: 10px;
}
.play-checkin-clock span i,
.play-live-signal > i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--m-lime);
  box-shadow: 0 0 0 3px rgba(182,255,59,.09);
}
.play-room-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 310px;
  gap: 1px;
  padding-top: 28px;
  background: var(--m-line-strong);
  background-clip: content-box;
}
.play-room-main,
.play-room-rail { min-width: 0; background: #070a0e; }
.play-room-main { border: 1px solid var(--m-line-strong); }
.play-room-card { background: #080b0f; }
.play-room-summary {
  min-height: 78px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 20px 24px;
  border-bottom: 1px solid var(--m-line-strong);
}
.play-room-summary > div > span {
  color: var(--m-muted);
  font: 650 10px/1 var(--font-display);
  letter-spacing: .11em;
  text-transform: uppercase;
}
.play-room-summary h2 {
  margin: 7px 0 0;
  font-size: 23px;
  line-height: 1;
  letter-spacing: -.015em;
}
.play-room-summary h2 i { color: var(--m-dim); font-style: normal; }
.play-room-status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border: 1px solid rgba(182,255,59,.22);
  color: var(--m-lime);
  background: rgba(182,255,59,.045);
  font: 700 9px/1 var(--font-display);
  letter-spacing: .08em;
  text-transform: uppercase;
}
.play-room-status i,
.play-member-voice i,
.play-activity-list i {
  width: 6px;
  height: 6px;
  flex: none;
  border-radius: 50%;
  background: currentColor;
}
.play-roster-head {
  min-height: 32px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(110px,.46fr) minmax(120px,.48fr) 60px;
  align-items: center;
  gap: 16px;
  padding: 0 20px 0 82px;
  border-bottom: 1px solid var(--m-line);
  color: var(--m-dim);
  font: 700 8px/1 var(--font-display);
  letter-spacing: .13em;
  text-transform: uppercase;
}
.play-roster-head span:last-child { text-align: right; }
.play-member-row {
  min-height: 62px;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) minmax(110px,.46fr) minmax(120px,.48fr) 60px;
  align-items: center;
  gap: 16px;
  padding: 10px 20px;
  border-bottom: 1px solid var(--m-line);
  transition: background var(--m-fast), border-color var(--m-fast);
}
.play-member-row:hover { background: rgba(255,255,255,.018); }
.play-member-row[data-voice-state="connected"],
.play-member-row[data-voice-state="ready"] { border-left: 2px solid rgba(182,255,59,.6); padding-left: 18px; }
.play-member-avatar {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid var(--m-line-strong);
  border-radius: 2px;
  background: var(--m-surface-2);
  color: var(--m-dim);
  font: 750 12px/1 var(--font-display);
}
.play-member-avatar img,
.play-member-avatar > span { width: 100%; height: 100%; display: grid; place-items: center; object-fit: cover; }
.play-member-identity,
.play-member-role { min-width: 0; display: grid; gap: 4px; }
.play-member-identity strong,
.play-member-role strong { overflow: hidden; font: 700 12px/1.1 var(--font-display); text-overflow: ellipsis; white-space: nowrap; }
.play-member-identity strong b {
  margin-left: 7px;
  padding: 2px 4px;
  border: 1px solid rgba(255,255,255,.15);
  color: var(--m-muted);
  font-size: 7px;
  letter-spacing: .08em;
}
.play-member-identity small,
.play-member-role small { overflow: hidden; color: var(--m-dim); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.play-member-role strong { color: var(--m-muted); font-size: 10px; }
.play-member-voice {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #ffbd35;
  font: 650 9px/1 var(--font-display);
  letter-spacing: .04em;
  text-transform: uppercase;
}
.play-member-voice[data-state="connected"],
.play-member-voice[data-state="ready"] { color: var(--m-lime); }
.play-member-voice[data-state="left"] { color: #ff5b63; }
.play-member-row > time { color: var(--m-muted); font: 650 10px/1 var(--font-mono, monospace); text-align: right; }
.play-member-empty { opacity: .55; }
.play-member-empty .play-member-avatar { border-style: dashed; }
.play-open-slots-summary { display: none; }
.play-room-actions {
  display: grid;
  grid-template-columns: minmax(230px, 1fr) auto auto;
  gap: 10px;
  padding: 20px;
}
.play-primary-action,
.play-secondary-action,
.play-host-action {
  min-height: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0 18px;
  border-radius: 2px;
  font: 750 11px/1 var(--font-display);
  letter-spacing: .04em;
  text-decoration: none;
  text-transform: uppercase;
  transition: transform var(--m-fast), background var(--m-fast), border-color var(--m-fast);
}
.play-primary-action {
  border: 1px solid var(--m-lime);
  background: var(--m-lime);
  color: #06080a;
}
.play-primary-action .play-icon:last-child { margin-left: auto; }
.play-primary-action:hover { border-color: #d0ff7d; background: #d0ff7d; transform: translateY(-1px); }
.play-primary-action:disabled { opacity: .48; transform: none; cursor: wait; }
.play-secondary-action,
.play-host-action { border: 1px solid var(--m-line-strong); background: transparent; color: var(--m-muted); }
.play-secondary-action:hover { border-color: rgba(255,255,255,.28); color: var(--m-text); }
.play-host-action { padding-inline: 12px; border-color: rgba(255,91,99,.22); color: #ff7c82; font-size: 9px; }
.play-action-help {
  display: flex;
  align-items: center;
  gap: 7px;
  margin: -6px 20px 18px;
  color: var(--m-dim);
  font-size: 9px;
}
.play-activity { border-top: 1px solid var(--m-line-strong); }
.play-activity > header {
  min-height: 45px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 20px;
}
.play-activity > header small { color: var(--m-dim); font-size: 9px; }
.play-activity-list > div {
  min-height: 40px;
  display: grid;
  grid-template-columns: 8px 1fr auto;
  align-items: center;
  gap: 10px;
  padding: 9px 20px;
  border-top: 1px solid var(--m-line);
  color: var(--m-muted);
}
.play-activity-list div[data-tone="success"] { color: var(--m-lime); }
.play-activity-list div[data-tone="danger"] { color: #ff6a72; }
.play-activity-list p { margin: 0; color: var(--m-muted); font-size: 10px; }
.play-activity-list time { color: var(--m-dim); font-size: 9px; }
.play-room-rail { border: 1px solid var(--m-line-strong); border-left: 0; }
.play-rail-profile {
  min-height: 88px;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 15px 18px;
  border-bottom: 1px solid var(--m-line-strong);
}
.play-rail-avatar { position: relative; width: 48px; height: 48px; flex: none; }
.play-rail-avatar img,
.play-rail-avatar > span:first-child { width: 100%; height: 100%; display: grid; place-items: center; object-fit: cover; border: 1px solid var(--m-line-strong); border-radius: 2px; background: var(--m-surface-2); }
.play-rail-avatar > span:last-child { position: absolute; right: -2px; bottom: -2px; width: 10px; height: 10px; border: 2px solid #070a0e; border-radius: 50%; background: var(--m-dim); }
.play-rail-avatar > span[data-online="true"] { background: var(--m-lime); }
.play-rail-profile > div:last-child { min-width: 0; display: grid; gap: 4px; }
.play-rail-profile small { color: var(--m-dim); font-size: 8px; letter-spacing: .09em; text-transform: uppercase; }
.play-rail-profile strong { overflow: hidden; font: 700 13px/1 var(--font-display); text-overflow: ellipsis; white-space: nowrap; }
.play-rail-profile div > span { color: var(--m-muted); font-size: 9px; }
.play-rail-block { border-bottom: 1px solid var(--m-line-strong); }
.play-rail-block > header {
  min-height: 42px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 18px;
  border-bottom: 1px solid var(--m-line);
}
.play-rail-block > header b { color: var(--m-muted); font: 700 10px/1 var(--font-display); }
.play-rail-block dl { margin: 0; padding: 9px 18px; }
.play-rail-block dl > div { min-height: 30px; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.play-rail-block dt { color: var(--m-dim); font-size: 9px; }
.play-rail-block dd { margin: 0; color: var(--m-muted); font: 650 9px/1 var(--font-display); text-align: right; }
.play-checklist ol { margin: 0; padding: 8px 18px 13px; list-style: none; }
.play-checklist li { min-height: 50px; display: grid; grid-template-columns: 25px 1fr; align-items: center; gap: 10px; position: relative; }
.play-checklist li:not(:last-child)::after { position: absolute; top: 37px; bottom: -13px; left: 12px; width: 1px; background: var(--m-line-strong); content: ""; }
.play-checklist li > b { width: 24px; height: 24px; display: grid; place-items: center; z-index: 1; border: 1px solid var(--m-line-strong); border-radius: 50%; background: #090c10; color: var(--m-dim); font-size: 8px; }
.play-checklist li[data-done="true"] > b { border-color: rgba(182,255,59,.45); color: var(--m-lime); background: rgba(182,255,59,.06); }
.play-checklist li > span { display: grid; gap: 4px; }
.play-checklist strong { color: var(--m-muted); font: 650 10px/1 var(--font-display); }
.play-checklist small { color: var(--m-dim); font-size: 8px; }
.play-privacy-note { display: flex; gap: 11px; padding: 17px 18px; color: var(--m-dim); }
.play-privacy-note .play-icon { flex: none; color: var(--m-lime); }
.play-privacy-note strong { color: var(--m-muted); font: 700 9px/1 var(--font-display); text-transform: uppercase; }
.play-privacy-note p { margin: 6px 0 0; font-size: 8px; line-height: 1.55; }
.play-after { padding-top: 28px; }
.play-after > header { display: flex; align-items: baseline; gap: 14px; margin-bottom: 12px; }
.play-after > header p { margin: 0; color: var(--m-dim); font-size: 9px; }
.play-after > div { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; border: 1px solid var(--m-line-strong); background: var(--m-line-strong); }
.play-after button {
  min-height: 74px;
  display: grid;
  grid-template-columns: 24px 1fr 18px;
  align-items: center;
  gap: 10px;
  padding: 14px 16px;
  border: 0;
  background: #080b0f;
  color: var(--m-muted);
  text-align: left;
}
.play-after button:hover { background: #0d1116; color: var(--m-lime); }
.play-after button > span { display: grid; gap: 5px; }
.play-after strong { color: var(--m-text); font: 650 10px/1 var(--font-display); }
.play-after small { color: var(--m-dim); font-size: 8px; }
.play-discovery-head { align-items: center; }
.play-live-signal { flex: none; padding: 14px 16px; border: 1px solid rgba(182,255,59,.2); background: rgba(182,255,59,.035); }
.play-live-signal > span { display: grid; gap: 4px; }
.play-live-signal strong { color: var(--m-text); font: 700 10px/1 var(--font-display); }
.play-live-signal small { color: var(--m-dim); font-size: 8px; }
.play-discovery-layout { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 22px; padding-top: 28px; }
.play-open-lobbies,
.play-create-panel { border: 1px solid var(--m-line-strong); background: #080b0f; }
.play-open-lobbies > header {
  min-height: 70px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 18px;
  border-bottom: 1px solid var(--m-line-strong);
}
.play-open-lobbies > header > div { display: grid; gap: 7px; }
.play-open-lobbies > header strong { font: 700 18px/1 var(--font-display); }
.play-open-lobbies > header button { width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid var(--m-line-strong); background: transparent; color: var(--m-muted); }
.play-lobby-card {
  min-height: 82px;
  display: grid;
  grid-template-columns: minmax(170px,1.1fr) minmax(180px,1fr) 68px 116px;
  align-items: center;
  gap: 15px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--m-line);
}
.play-lobby-host { min-width: 0; display: flex; align-items: center; gap: 11px; }
.play-lobby-host > span { width: 40px; height: 40px; flex: none; overflow: hidden; border: 1px solid var(--m-line-strong); background: var(--m-surface-2); }
.play-lobby-host img,
.play-lobby-host > span > span { width: 100%; height: 100%; display: grid; place-items: center; object-fit: cover; }
.play-lobby-host > div,
.play-lobby-info { min-width: 0; display: grid; gap: 5px; }
.play-lobby-card strong { overflow: hidden; font: 650 10px/1 var(--font-display); text-overflow: ellipsis; white-space: nowrap; }
.play-lobby-card small { overflow: hidden; color: var(--m-dim); font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.play-lobby-size { display: flex; align-items: center; gap: 7px; color: var(--m-muted); }
.play-lobby-card > button { min-height: 44px; display: flex; align-items: center; justify-content: center; gap: 6px; border: 1px solid var(--m-lime); background: transparent; color: var(--m-lime); font: 700 10px/1 var(--font-display); text-transform: uppercase; }
.play-empty-lobbies { min-height: 340px; display: grid; place-items: center; align-content: center; gap: 10px; padding: 34px; color: var(--m-dim); text-align: center; }
.play-empty-lobbies h2 { margin: 8px 0 0; color: var(--m-text); font-size: 24px; }
.play-empty-lobbies p { max-width: 390px; margin: 0; color: var(--m-muted); font-size: 11px; line-height: 1.6; }
.play-create-panel { padding: 22px; }
.play-create-panel h2 { margin: 10px 0 8px; font-size: 27px; }
.play-create-panel > p { margin: 0 0 18px; color: var(--m-muted); font-size: 10px; line-height: 1.5; }
.play-create-panel form { display: grid; gap: 12px; }
.play-create-panel label { display: grid; gap: 6px; color: var(--m-dim); font: 650 8px/1 var(--font-display); letter-spacing: .09em; text-transform: uppercase; }
.play-create-panel select,
.play-create-panel textarea {
  width: 100%;
  min-height: 42px;
  padding: 10px 11px;
  border: 1px solid var(--m-line-strong);
  border-radius: 1px;
  outline: 0;
  background: #05080b;
  color: var(--m-text);
  font: 500 11px/1.4 var(--font-body);
  text-transform: none;
}
.play-create-panel textarea { min-height: 72px; resize: vertical; }
.play-create-panel select:focus,
.play-create-panel textarea:focus { border-color: rgba(182,255,59,.5); }
.play-form-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.play-create-panel .play-primary-action { width: 100%; margin-top: 3px; }
.play-create-trust { display: flex; gap: 10px; margin-top: 17px; padding-top: 15px; border-top: 1px solid var(--m-line); color: var(--m-lime); }
.play-create-trust > span { display: grid; gap: 5px; }
.play-create-trust strong { color: var(--m-muted); font: 650 9px/1 var(--font-display); }
.play-create-trust small { color: var(--m-dim); font-size: 8px; line-height: 1.45; }
.play-loading,
.play-error { min-height: 600px; display: grid; place-items: center; align-content: center; gap: 12px; text-align: center; }
.play-loading > span { width: 32px; height: 32px; border: 2px solid var(--m-line-strong); border-top-color: var(--m-lime); border-radius: 50%; animation: play-spin .8s linear infinite; }
.play-loading strong { font: 700 16px/1 var(--font-display); }
.play-loading small,
.play-error p { color: var(--m-muted); }
.play-error h1 { margin: 6px 0 0; font-size: 38px; }
.play-error .play-primary-action { min-width: 180px; margin-top: 5px; }
@keyframes play-spin { to { transform: rotate(360deg); } }

@media (max-width: 1040px) {
  .play-room-layout { grid-template-columns: minmax(0, 1fr) 278px; }
  .play-member-row { grid-template-columns: 42px minmax(0,1fr) 102px 105px 52px; gap: 11px; }
  .play-roster-head { grid-template-columns: minmax(0,1fr) 102px 105px 52px; gap: 11px; padding-left: 73px; }
  .play-discovery-layout { grid-template-columns: minmax(0,1fr) 300px; }
  .play-lobby-card { grid-template-columns: minmax(150px,1fr) minmax(130px,.8fr) 58px 100px; gap: 10px; }
}

@media (max-width: 820px) {
  body { padding-bottom: calc(62px + env(safe-area-inset-bottom)); }
  .topnav {
    background: #07090d;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
  .topnav-inner {
    min-height: 60px !important;
    height: 60px !important;
    grid-template-columns: auto 1fr !important;
    grid-template-rows: 1fr !important;
    padding: 7px 16px !important;
  }
  .topnav .brand { width: max-content !important; min-width: 84px; grid-column: 1 !important; grid-row: 1 !important; overflow: visible; color: #fff; font-size: 22px !important; letter-spacing: 0; white-space: nowrap; }
  .topnav .brand-logo { display: none !important; }
  .topnav .brand::after { content: ""; width: 18px; height: 5px; margin-left: 4px; background: var(--m-lime); }
  .topnav .nav-right { grid-column: 2 !important; grid-row: 1 !important; justify-self: end; }
  .topnav .navlinks {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 120;
    width: 100% !important;
    min-height: calc(62px + env(safe-area-inset-bottom));
    grid-column: auto !important;
    grid-row: auto !important;
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    padding: 0 0 env(safe-area-inset-bottom) !important;
    border-top: 1px solid var(--m-line-strong) !important;
    background: rgba(6,8,11,.98) !important;
  }
  .topnav .navlink { min-height: 61px !important; padding: 0 4px !important; border-bottom: 0 !important; border-top: 2px solid transparent; font-size: 12px !important; line-height: 1.15; text-align: center; }
  .topnav .navlink[data-active="true"] { border-top-color: var(--m-lime) !important; }
  .topnav .navlink[data-mobile-secondary="true"] { display: none !important; }
  .topnav .mobile-more-trigger { display: inline-flex !important; }
  .mobile-nav-menu {
    position: fixed !important;
    top: auto !important;
    right: 10px !important;
    bottom: 72px !important;
    left: 10px !important;
    z-index: 121 !important;
    width: auto !important;
    max-height: min(480px, calc(100vh - 150px));
    grid-column: auto !important;
    grid-row: auto !important;
    overflow-y: auto;
    box-shadow: 0 18px 60px rgba(0,0,0,.58) !important;
  }
  .play-hub-page { min-height: calc(100vh - 60px); padding-bottom: 42px; }
  .play-command-head { min-height: 190px; align-items: flex-end; padding-top: 36px; }
  .play-command-title h1 { font-size: clamp(42px, 9vw, 64px); }
  .play-room-layout,
  .play-discovery-layout { grid-template-columns: 1fr; gap: 16px; background: transparent; }
  .play-room-rail { border-left: 1px solid var(--m-line-strong); }
  .play-after > div { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .play-demo-bar { position: relative; z-index: 3; min-height: 0; height: 0; justify-content: flex-start; padding: 0; overflow: visible; border: 0; background: transparent; }
  .play-demo-bar span { position: absolute; top: 8px; right: 18px; }
  .play-demo-bar p { display: none; }
  .play-command-head {
    min-height: 0;
    display: grid;
    gap: 14px;
    padding: 22px 18px 16px;
  }
  .play-command-title h1 { margin: 9px 0; font-size: clamp(36px, 11.5vw, 46px); line-height: .9; }
  .play-command-title p { font-size: 11px; line-height: 1.55; }
  .play-checkin-clock { min-width: 0; width: 100%; grid-template-columns: 1fr auto; justify-items: start; align-items: center; padding: 9px 0 0; border-top: 1px solid var(--m-line-strong); border-left: 0; }
  .play-checkin-clock strong { grid-column: 2; grid-row: 1 / 3; align-self: center; font-size: 27px; }
  .play-checkin-clock span { grid-column: 1; }
  .play-room-layout,
  .play-discovery-layout { padding: 10px 0 0; }
  .play-room-main,
  .play-room-rail,
  .play-open-lobbies,
  .play-create-panel { border-inline: 0; }
  .play-room-summary { min-height: 70px; padding: 10px 18px; }
  .play-room-summary h2 { font-size: 18px; }
  .play-room-status { padding: 7px; font-size: 7px; }
  .play-roster-head { display: none; }
  .play-member-row {
    min-height: 62px;
    grid-template-columns: 40px minmax(0,1fr) auto;
    grid-template-rows: auto auto;
    gap: 3px 11px;
    padding: 6px 18px;
  }
  .play-member-row[data-voice-state="connected"],
  .play-member-row[data-voice-state="ready"] { padding-left: 16px; }
  .play-member-avatar { width: 38px; height: 38px; grid-row: 1 / 3; }
  .play-member-identity { grid-column: 2; grid-row: 1; }
  .play-member-role { grid-column: 2; grid-row: 2; display: flex; gap: 6px; align-items: center; }
  .play-member-role strong { font-size: 9px; }
  .play-member-voice { grid-column: 3; grid-row: 1; justify-self: end; font-size: 8px; }
  .play-member-row > time { grid-column: 3; grid-row: 2; }
  .play-member-empty { display: none; }
  .play-open-slots-summary {
    min-height: 38px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 18px;
    border-bottom: 1px solid var(--m-line);
    color: var(--m-dim);
    font: 650 9px/1 var(--font-display);
    text-transform: uppercase;
  }
  .play-room-actions { grid-template-columns: 1fr auto; padding: 10px 18px; }
  .play-primary-action { grid-column: 1 / -1; }
  .play-secondary-action,
  .play-host-action { min-height: 44px; }
  .play-action-help { margin-inline: 18px; line-height: 1.45; }
  .play-activity > header,
  .play-activity-list > div { padding-inline: 18px; }
  .play-after { padding: 24px 18px 0; }
  .play-after > header { display: grid; gap: 7px; }
  .play-discovery-head { align-items: stretch; }
  .play-live-signal { width: 100%; }
  .play-open-lobbies > header { padding-inline: 18px; }
  .play-lobby-card { grid-template-columns: 1fr auto; gap: 10px; padding: 14px 18px; }
  .play-lobby-info { grid-column: 1; }
  .play-lobby-size { grid-column: 2; grid-row: 1; }
  .play-lobby-card > button { grid-column: 2; grid-row: 2; min-width: 104px; }
  .play-create-panel { padding: 22px 18px; }
  .play-loading,
  .play-error { min-height: 520px; padding-inline: 18px; }
  .footer { margin-bottom: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .play-loading > span { animation: none; }
  .play-primary-action { transition: none; }
}

