:root{
  --navy-975:#050d18;--navy-950:#071426;--navy-900:#0b1b30;--navy-850:#10243d;--navy-800:#17304f;
  --blue-700:#1f5fae;--blue-600:#2a76cf;--blue-500:#4096ee;--blue-100:#dcecff;--blue-50:#eef6ff;
  --gold-600:#c98b17;--gold-500:#e5aa32;--gold-300:#f4cd70;--gold-100:#fff3d0;--ink:#101c2c;
  --muted:#68778b;--muted-2:#8c98a8;--surface:#fff;--canvas:#f2f5f9;--line:#dfe5ec;--line-dark:#263d59;
  --red:#d64c5f;--red-bg:#fff0f2;--purple:#7754d6;--purple-bg:#f3efff;--green:#25875b;--green-bg:#eaf8f1;
  --orange:#d97b27;--orange-bg:#fff4e9;--gray:#8f9aaa;--gray-bg:#f0f3f6;--radius:16px;
  --shadow-sm:0 2px 8px rgba(14,30,50,.06);--shadow-md:0 14px 38px rgba(10,25,45,.12);--sidebar:244px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--canvas);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,select{cursor:pointer}a{color:inherit}.skip-link{position:fixed;left:16px;top:-60px;z-index:200;padding:12px 16px;color:#06111f;background:var(--gold-300);border-radius:9px;font-weight:850}.skip-link:focus{top:12px}.app-shell{min-height:100vh;display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr)}
.sidebar{position:sticky;top:0;align-self:start;height:100dvh;z-index:50;display:flex;flex-direction:column;padding:20px 14px 18px;color:#d9e5f3;background:linear-gradient(180deg,var(--navy-950),var(--navy-975));border-right:1px solid rgba(255,255,255,.08)}.app-brand{display:flex;align-items:center;gap:12px;margin:0 8px 20px;text-decoration:none}.brand-shield{width:44px;height:46px;display:grid;place-items:center;flex:0 0 auto;color:var(--navy-950);background:linear-gradient(145deg,var(--gold-300),var(--gold-500));border:2px solid rgba(255,255,255,.35);border-radius:13px 13px 18px 18px;box-shadow:inset 0 -5px 0 rgba(112,66,0,.18),0 8px 18px rgba(0,0,0,.2);font-size:13px;font-weight:950;letter-spacing:-.04em}.brand-copy strong,.brand-copy small{display:block}.brand-copy strong{color:#fff;font-size:14px}.brand-copy small{margin-top:3px;color:#8fa4bd;font-size:11px}.environment-pill{display:flex;align-items:center;gap:8px;margin:0 8px 18px;padding:8px 10px;color:var(--gold-300);background:rgba(244,205,112,.08);border:1px solid rgba(244,205,112,.19);border-radius:9px;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.environment-pill span{width:7px;height:7px;background:var(--gold-300);border-radius:50%;box-shadow:0 0 0 4px rgba(244,205,112,.1)}.side-nav{display:grid;gap:4px}.nav-item{width:100%;min-height:42px;display:flex;align-items:center;gap:12px;padding:9px 12px;color:#9fb2c9;background:transparent;border:0;border-radius:10px;text-decoration:none;text-align:left;font-size:13px;font-weight:720}.nav-item:hover{color:#fff;background:rgba(255,255,255,.055)}.nav-item.active{color:#fff;background:linear-gradient(90deg,rgba(53,137,226,.23),rgba(53,137,226,.08));box-shadow:inset 3px 0 0 var(--blue-500)}.nav-icon{width:20px;text-align:center;color:#6685a6;font-size:13px}.nav-item.active .nav-icon{color:var(--gold-300)}.nav-count{margin-left:auto;min-width:22px;padding:3px 6px;color:#a9bdd4;background:rgba(255,255,255,.08);border-radius:20px;text-align:center;font-size:10px}.nav-count.warning{color:#ffd8dd;background:rgba(214,76,95,.24)}.sidebar-spacer{flex:1}.side-nav-secondary{padding-top:12px;border-top:1px solid rgba(255,255,255,.09)}.sidebar-foot{display:flex;align-items:center;gap:10px;margin:14px 8px 0;padding:13px 0 0;border-top:1px solid rgba(255,255,255,.09)}.source-dot{width:9px;height:9px;flex:0 0 auto;background:#42c887;border-radius:50%;box-shadow:0 0 0 4px rgba(66,200,135,.12)}.sidebar-foot strong,.sidebar-foot small{display:block}.sidebar-foot strong{color:#ced9e6;font-size:10px}.sidebar-foot small{margin-top:2px;color:#7087a0;font-size:9px}
.app-column{min-width:0}.topbar{position:sticky;top:0;z-index:40;height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 clamp(20px,3vw,42px);background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.clan-switcher{display:flex;align-items:center;gap:10px}.clan-switcher label,.period-control>span{color:var(--muted-2);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.1em}.clan-switcher select,.period-control select{padding:9px 32px 9px 11px;color:var(--ink);background:#f7f9fb;border:1px solid var(--line);border-radius:9px;font-size:12px;font-weight:750}.topbar-actions{display:flex;align-items:center;gap:10px}.period-control{display:flex;align-items:center;gap:8px}.discord-topbar-link{width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;color:#fff;background:#5865f2;border:1px solid #5865f2;border-radius:9px;text-decoration:none;box-shadow:0 5px 14px rgba(88,101,242,.18)}.discord-topbar-link svg{width:21px;height:21px;fill:currentColor}.discord-topbar-link:hover{background:#4752c4;border-color:#4752c4}.discord-topbar-link:focus-visible{outline:3px solid var(--gold-300);outline-offset:3px}.refresh-button{min-height:38px;display:flex;align-items:center;gap:7px;padding:8px 12px;color:#fff;background:var(--blue-700);border:1px solid var(--blue-700);border-radius:9px;font-size:11px;font-weight:800}.refresh-button:hover{background:var(--blue-600)}.refresh-button.spinning span:first-child{animation:spin .7s linear}.user-chip{display:flex;align-items:center;gap:9px;padding:4px 6px 4px 4px;background:transparent;border:0;border-left:1px solid var(--line);margin-left:4px;padding-left:14px}.user-chip>span:first-child{width:34px;height:34px;display:grid;place-items:center;color:var(--navy-950);background:var(--gold-300);border-radius:10px;font-size:10px;font-weight:900}.user-copy strong,.user-copy small{display:block;text-align:left}.user-copy strong{font-size:11px}.user-copy small{margin-top:2px;color:var(--muted);font-size:9px}.mobile-menu{display:none;border:0;background:transparent;font-size:22px}
.content{max-width:1680px;margin:0 auto;padding:32px clamp(20px,3vw,42px) 70px}.view-header{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin-bottom:24px}.view-header h1{margin:7px 0 0;font-size:clamp(28px,3.2vw,43px);line-height:1.05;letter-spacing:-.04em}.view-header p{max-width:640px;margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.55}.eyebrow{color:var(--blue-600);font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.source-badge{display:flex;align-items:center;gap:8px;padding:9px 11px;color:#286f4f;background:var(--green-bg);border:1px solid #cdebdc;border-radius:9px;font-size:10px;font-weight:850;white-space:nowrap}.source-badge span{width:7px;height:7px;background:#38a96f;border-radius:50%}.loading-state{min-height:70vh;display:grid;place-items:center;align-content:center;gap:14px;color:var(--muted)}.loading-mark{width:58px;height:62px;display:grid;place-items:center;color:var(--navy-950);background:var(--gold-300);border-radius:16px 16px 22px 22px;font-weight:950}.loading-state p{margin:0;font-size:13px}.error-state{max-width:620px;margin:100px auto;padding:34px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);text-align:center}.error-state h1{font-size:28px}.error-state p{color:var(--muted);line-height:1.6}
.war-banner{position:relative;overflow:hidden;display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;margin-bottom:20px;padding:26px 28px;color:#fff;background:radial-gradient(circle at 80% 10%,rgba(58,143,236,.42),transparent 32%),linear-gradient(135deg,var(--navy-900),var(--navy-950));border:1px solid #1f3c5e;border-radius:var(--radius);box-shadow:var(--shadow-md)}.war-banner:after{content:"";position:absolute;right:-35px;top:-95px;width:280px;height:280px;border:1px solid rgba(244,205,112,.15);border-radius:50%;box-shadow:0 0 0 45px rgba(64,150,238,.04)}.war-banner-copy{position:relative;z-index:1}.war-banner-title{display:flex;align-items:center;gap:10px;margin-bottom:9px}.war-banner-title .status-light{width:9px;height:9px;background:var(--gold-300);border-radius:50%;box-shadow:0 0 0 5px rgba(244,205,112,.12)}.war-banner h2{margin:0;font-size:24px;letter-spacing:-.02em}.war-banner p{margin:7px 0 0;color:#a9bad0;font-size:12px}.war-meta{position:relative;z-index:1;display:flex;gap:26px}.war-meta div{min-width:88px;padding-left:20px;border-left:1px solid rgba(255,255,255,.14)}.war-meta strong,.war-meta span{display:block}.war-meta strong{color:var(--gold-300);font-size:20px}.war-meta span{margin-top:4px;color:#90a6bf;font-size:9px;text-transform:uppercase;letter-spacing:.08em}
.kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:20px}.kpi-card{position:relative;min-height:142px;padding:19px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-sm)}.kpi-label{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.kpi-icon{width:26px;height:26px;display:grid;place-items:center;color:var(--blue-700);background:var(--blue-50);border-radius:8px;font-size:11px}.kpi-value{display:block;margin-top:17px;font-size:28px;line-height:1;font-weight:880;letter-spacing:-.035em}.kpi-foot{display:flex;align-items:center;gap:6px;margin-top:12px;color:var(--muted-2);font-size:9px}.trend-up{color:var(--green);font-weight:850}.trend-warn{color:var(--orange);font-weight:850}.kpi-spark{position:absolute;right:16px;bottom:17px;width:62px;height:23px}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.75fr);gap:18px;margin-bottom:18px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:20px 22px 14px}.card-head h2{margin:0;font-size:16px;letter-spacing:-.015em}.card-head p{margin:5px 0 0;color:var(--muted);font-size:10px}.card-action{padding:7px 9px;color:var(--blue-700);background:var(--blue-50);border:1px solid #d4e7fa;border-radius:8px;font-size:10px;font-weight:800}.chart-wrap{height:292px;padding:0 18px 18px}.chart-wrap canvas{width:100%;height:100%}.chart-legend{display:flex;gap:14px;align-items:center;color:var(--muted);font-size:9px}.chart-legend span{display:flex;align-items:center;gap:6px;white-space:nowrap}.chart-legend i{width:16px;height:3px;background:var(--blue-600);border-radius:2px}.chart-legend i.gold{background:var(--gold-500)}.chart-legend i.format-mark{width:10px;height:10px;background:var(--blue-600);border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px rgba(42,118,207,.3)}.chart-legend i.format-mark.colosseum{background:var(--purple);border-radius:2px;box-shadow:0 0 0 1px rgba(119,84,214,.3);transform:rotate(45deg)}.performance-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:0 22px 18px;background:var(--line);border:1px solid var(--line);border-radius:11px;overflow:hidden}.performance-summary div{padding:13px;background:#f9fafc}.performance-summary strong,.performance-summary span{display:block}.performance-summary strong{font-size:16px}.performance-summary span{margin-top:4px;color:var(--muted);font-size:9px}.format-summary strong{font-size:14px}.format-summary span{line-height:1.4}
.placement-card{display:flex;flex-direction:column}.placement-body{display:grid;place-items:center;padding:6px 22px 10px}.placement-ring{--pct:90;position:relative;width:164px;height:164px;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--gold-500) calc(var(--pct)*1%),#e9edf2 0)}.placement-ring:before{content:"";position:absolute;inset:14px;background:#fff;border-radius:50%}.placement-ring-inner{position:relative;z-index:1;text-align:center}.placement-ring strong,.placement-ring span{display:block}.placement-ring strong{font-size:39px;letter-spacing:-.05em}.placement-ring span{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.08em}.placement-list{margin:6px 22px 20px;padding-top:15px;border-top:1px solid var(--line)}.placement-row{display:flex;align-items:center;justify-content:space-between;margin-top:10px;font-size:10px}.placement-row span{display:flex;align-items:center;gap:8px;color:var(--muted)}.placement-row i{width:8px;height:8px;border-radius:3px;background:var(--gold-500)}.placement-row i.second{background:var(--blue-500)}.placement-row i.other{background:#c9d0d9}.placement-row strong{font-size:11px}
.action-card{margin-bottom:18px;overflow:hidden}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;white-space:nowrap}.data-table th{padding:10px 16px;color:var(--muted-2);background:#f8fafc;border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.07em}.data-table td{padding:12px 16px;border-bottom:1px solid #edf0f4;font-size:11px}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#fbfcfe}.player-cell{display:flex;align-items:center;gap:10px}.avatar{width:32px;height:32px;display:grid;place-items:center;flex:0 0 auto;color:#fff;background:linear-gradient(145deg,var(--blue-600),var(--navy-800));border-radius:10px;font-size:9px;font-weight:900}.avatar.gold{color:var(--navy-950);background:linear-gradient(145deg,var(--gold-300),var(--gold-500))}.player-cell strong,.player-cell small{display:block}.player-cell strong{font-size:11px}.player-cell small{margin-top:3px;color:var(--muted-2);font-size:8px}.status-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:20px;font-size:9px;font-weight:800}.status-chip:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.status-complete{color:var(--green);background:var(--green-bg)}.status-gap{color:var(--red);background:var(--red-bg)}.status-late{color:var(--purple);background:var(--purple-bg)}.status-review{color:var(--orange);background:var(--orange-bg)}.status-neutral{color:#667586;background:var(--gray-bg)}.mini-progress{width:74px}.mini-progress-track{height:5px;overflow:hidden;background:#e7ebf0;border-radius:5px}.mini-progress-fill{height:100%;background:var(--blue-600);border-radius:5px}.mini-progress small{display:block;margin-top:5px;color:var(--muted);font-size:8px}.row-button{padding:6px 9px;color:var(--blue-700);background:transparent;border:1px solid #d4deea;border-radius:7px;font-size:9px;font-weight:800}.row-button:hover{background:var(--blue-50)}.numeric{font-variant-numeric:tabular-nums}.rank-number{width:24px;height:24px;display:grid;place-items:center;color:var(--navy-950);background:var(--gold-100);border-radius:7px;font-size:9px;font-weight:900}
.status-credit{color:#1f6f78;background:#e2f5f3}.status-stack{display:flex;align-items:center;gap:5px}.status-stack .status-chip{white-space:nowrap}
.player-name-line{display:flex;align-items:center;gap:7px;min-width:0}.player-name-line strong{min-width:0}.new-member-badge{display:inline-flex;align-items:center;flex:0 0 auto;padding:3px 6px;color:#8b6414;background:var(--gold-100);border:1px solid #efd28d;border-radius:999px;font-size:8px;font-weight:900;line-height:1;text-transform:uppercase;letter-spacing:.05em}.new-member-row td{background:#fffdf5}.new-member-row:hover td{background:#fff9e5}
.member-row{cursor:pointer}.member-row:hover td{background:#f5f9fe}.member-row:has(.row-button:focus-visible) td{background:#f5f9fe}
.rank-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.rank-list{padding:0 20px 18px}.rank-item{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 0;border-top:1px solid #edf0f4}.rank-item:first-child{border-top:0}.rank-pos{color:var(--muted-2);font-size:9px;font-weight:900}.rank-player strong,.rank-player small{display:block}.rank-player strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.rank-player small{margin-top:3px;color:var(--muted);font-size:8px}.rank-value{text-align:right}.rank-value strong,.rank-value small{display:block}.rank-value strong{font-size:12px}.rank-value small{margin-top:3px;color:var(--muted);font-size:8px}.bar-track{height:5px;margin-top:6px;overflow:hidden;background:#eef1f5;border-radius:4px}.bar-fill{height:100%;background:var(--blue-600);border-radius:4px}.bar-fill.warn{background:var(--red)}
.insight-strip{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin-top:18px}.insight-card{padding:20px 22px}.insight-card h3{margin:0;font-size:14px}.insight-card p{margin:8px 0 0;color:var(--muted);font-size:11px;line-height:1.6}.source-note{display:flex;align-items:flex-start;gap:11px;color:#51647b;background:#f8fafc;border:1px solid var(--line);border-radius:12px;padding:14px}.source-note span:first-child{width:22px;height:22px;display:grid;place-items:center;flex:0 0 auto;color:var(--blue-700);background:var(--blue-100);border-radius:50%;font-size:10px;font-weight:900}.source-note strong{display:block;font-size:10px}.source-note p{margin:4px 0 0;font-size:9px;line-height:1.5}
.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:16px;padding:12px;background:#fff;border:1px solid var(--line);border-radius:13px}.search-field{position:relative;min-width:260px;flex:1}.search-field span{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted-2);font-size:13px}.search-field input{width:100%;height:38px;padding:8px 12px 8px 34px;color:var(--ink);background:#f8fafc;border:1px solid var(--line);border-radius:9px;font-size:11px}.filter-select{height:38px;padding:8px 32px 8px 11px;color:var(--ink);background:#f8fafc;border:1px solid var(--line);border-radius:9px;font-size:10px;font-weight:700}.result-count{margin-left:auto;color:var(--muted);font-size:10px}.members-card{overflow:hidden}.members-card .data-table td{padding-top:10px;padding-bottom:10px}.sort-button{padding:0;color:inherit;background:transparent;border:0;font-size:inherit;font-weight:inherit;text-transform:inherit;letter-spacing:inherit}.sort-button:after{content:" ↕";color:#b3bdc9}.empty-cell{padding:50px!important;color:var(--muted);text-align:center!important}
.section-tabs{display:flex;gap:4px;margin-bottom:18px;padding:4px;background:#e8edf3;border-radius:10px;width:max-content}.tab-button{padding:8px 13px;color:var(--muted);background:transparent;border:0;border-radius:7px;font-size:10px;font-weight:800}.tab-button.active{color:var(--ink);background:#fff;box-shadow:var(--shadow-sm)}.hero-ranking{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:18px}.hero-rank-card{padding:22px}.rank-bars{margin-top:20px}.big-rank-row{display:grid;grid-template-columns:28px minmax(130px,.55fr) minmax(120px,1fr) 70px;gap:12px;align-items:center;margin-top:13px}.big-rank-row .bar-track{margin:0;height:8px}.rank-explainer{padding:22px;color:#fff;background:linear-gradient(145deg,var(--navy-900),var(--navy-950));border-radius:var(--radius)}.rank-explainer h3{margin:14px 0 10px;font-size:20px}.rank-explainer p{color:#9fb1c8;font-size:11px;line-height:1.6}.rank-explainer ul{margin:20px 0 0;padding:15px 0 0;border-top:1px solid #243b57;list-style:none}.rank-explainer li{margin:10px 0;color:#c9d4e2;font-size:10px}.rank-explainer li:before{content:"";display:inline-block;width:6px;height:6px;margin-right:8px;background:var(--gold-300);border-radius:50%}
.review-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.review-card{padding:19px}.review-card span,.review-card strong{display:block}.review-card span{color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.review-card strong{margin-top:12px;font-size:25px}.check-cell{width:38px}.review-checkbox{width:15px;height:15px;accent-color:var(--blue-600)}.bulk-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 16px;color:#fff;background:var(--navy-900);border-radius:11px 11px 0 0}.bulk-bar span{font-size:10px}.bulk-actions{display:flex;gap:8px}.bulk-button{padding:7px 10px;color:#fff;background:#17395d;border:1px solid #2a4c70;border-radius:7px;font-size:9px;font-weight:800}.bulk-button.primary{color:var(--navy-950);background:var(--gold-300);border-color:var(--gold-300)}
.integration-hero{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;padding:28px;color:#fff;background:linear-gradient(140deg,#1a1c3b,#313480);border-radius:var(--radius);box-shadow:var(--shadow-md)}.integration-hero h2{margin:10px 0 8px;font-size:25px}.integration-hero p{max-width:650px;margin:0;color:#bfc4e5;font-size:12px;line-height:1.6}.integration-mark{width:78px;height:78px;display:grid;place-items:center;color:#fff;background:#5865f2;border:1px solid rgba(255,255,255,.25);border-radius:22px;font-size:29px;font-weight:900;box-shadow:0 12px 28px rgba(0,0,0,.2)}.integration-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}.integration-card{padding:20px}.integration-card .metric-large{display:block;margin:14px 0 6px;font-size:27px;font-weight:880}.integration-card p{margin:0;color:var(--muted);font-size:10px;line-height:1.5}.disabled-button{padding:9px 12px;color:#8a95a3;background:#edf0f4;border:1px solid #dde2e8;border-radius:8px;font-size:9px;font-weight:800;cursor:not-allowed}.unknown-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:0 20px 20px}.unknown-member{padding:12px;background:#f8fafc;border:1px solid #edf0f4;border-radius:10px}.unknown-member strong,.unknown-member small{display:block}.unknown-member strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.unknown-member small{margin-top:5px;color:var(--muted);font-size:8px}
.cross-clan-hero{background:linear-gradient(140deg,var(--navy-950),#17355a)}.cross-clan-hero .integration-mark{color:var(--navy-950);background:linear-gradient(145deg,var(--gold-300),var(--gold-500))}.cross-clan-hero+.integration-grid .integration-card{border-top:3px solid var(--gold-300)}
.changelog-list{display:grid;gap:16px;max-width:960px}.changelog-entry{display:grid;grid-template-columns:170px minmax(0,1fr);gap:26px;padding:24px}.changelog-entry.current{border-top:3px solid var(--gold-300)}.changelog-meta{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.changelog-meta time{color:var(--muted);font-size:12px;font-weight:800}.changelog-copy h2{margin:0;font-size:21px}.changelog-copy p{margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.55}.changelog-copy ul{display:grid;gap:9px;margin:18px 0 0;padding:17px 0 0 20px;border-top:1px solid var(--line)}.changelog-copy li{padding-left:3px;color:#4f6074;font-size:12px;line-height:1.5}.changelog-copy li::marker{color:var(--blue-600)}
.settings-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:18px}.settings-card{padding:22px}.settings-card h2{margin:0;font-size:16px}.settings-card>p{margin:6px 0 20px;color:var(--muted);font-size:10px}.setting-row{display:grid;grid-template-columns:minmax(160px,1fr) minmax(220px,1fr);gap:30px;align-items:center;padding:17px 0;border-top:1px solid var(--line)}.setting-copy strong,.setting-copy small{display:block}.setting-copy strong{font-size:11px}.setting-copy small{margin-top:5px;color:var(--muted);font-size:9px;line-height:1.5}.setting-control{display:flex;justify-content:flex-end;gap:8px}.setting-control input,.setting-control select{max-width:220px;width:100%;height:37px;padding:8px 10px;background:#f8fafc;border:1px solid var(--line);border-radius:8px;font-size:10px}.toggle{position:relative;width:42px;height:24px;display:inline-block}.toggle input{opacity:0;width:0;height:0}.toggle span{position:absolute;inset:0;background:#cbd3dd;border-radius:20px;transition:.2s}.toggle span:before{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;background:#fff;border-radius:50%;box-shadow:0 2px 5px rgba(0,0,0,.18);transition:.2s}.toggle input:checked+span{background:var(--blue-600)}.toggle input:checked+span:before{transform:translateX(18px)}.cost-card{padding:22px;color:#fff;background:var(--navy-900);border-radius:var(--radius)}.cost-card h3{margin:14px 0 8px;font-size:21px}.cost-card p{color:#a5b6ca;font-size:10px;line-height:1.6}.cost-list{margin-top:18px;padding-top:14px;border-top:1px solid #28405c}.cost-row{display:flex;justify-content:space-between;gap:15px;margin-top:11px;font-size:10px}.cost-row span{color:#8fa3bb}.cost-row strong{color:#fff}.save-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:12px}.save-banner p{margin:0;color:var(--muted);font-size:10px}
.prd-view{height:calc(100vh - 145px);min-height:680px;display:flex;flex-direction:column;overflow:hidden}.prd-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 16px;background:#fff;border-bottom:1px solid var(--line)}.prd-toolbar h2{margin:0;font-size:14px}.prd-toolbar p{margin:4px 0 0;color:var(--muted);font-size:9px}.prd-actions{display:flex;gap:8px}.prd-frame{width:100%;flex:1;border:0;background:#e4e8ed}
.drawer-backdrop{position:fixed;inset:0;z-index:80;background:rgba(3,10,19,.55);opacity:0;pointer-events:none;transition:opacity .2s;backdrop-filter:blur(3px)}.drawer-backdrop.open{opacity:1;pointer-events:auto}.member-drawer{position:fixed;right:0;top:0;z-index:90;width:min(520px,100vw);height:100vh;overflow:auto;padding:24px;background:#fff;box-shadow:-25px 0 70px rgba(4,15,30,.2);transform:translateX(105%);transition:transform .25s ease}.member-drawer.open{transform:translateX(0)}.drawer-head,.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid var(--line)}.drawer-head h2,.dialog-head h2{margin:7px 0 0;font-size:26px;letter-spacing:-.03em}.icon-button{width:36px;height:36px;display:grid;place-items:center;color:var(--muted);background:#f4f6f9;border:1px solid var(--line);border-radius:9px;font-size:20px}.member-identity{display:flex;gap:14px;align-items:center;padding:20px 0}.member-identity .avatar{width:52px;height:52px;border-radius:15px;font-size:13px}.member-identity strong,.member-identity small{display:block}.member-identity strong{font-size:14px}.member-identity small{margin-top:5px;color:var(--muted);font-size:9px}.drawer-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.drawer-stat{padding:14px;background:#f7f9fc;border:1px solid #edf0f4;border-radius:11px}.drawer-stat span,.drawer-stat strong{display:block}.drawer-stat span{color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.07em}.drawer-stat strong{margin-top:8px;font-size:18px}.drawer-section{margin-top:22px}.drawer-section-head{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:10px}.drawer-section h3{margin:0;font-size:13px}.drawer-section p{margin:4px 0 0;color:var(--muted);font-size:8px}.member-chart{width:100%;height:190px;background:#fbfcfe;border:1px solid var(--line);border-radius:12px}.history-list{border:1px solid var(--line);border-radius:11px;overflow:hidden}.history-row{display:grid;grid-template-columns:1fr 70px 70px 70px;gap:8px;align-items:center;padding:11px 12px;border-top:1px solid #edf0f4;font-size:9px}.history-row:first-child{border-top:0}.history-row span{color:var(--muted)}.history-row strong{text-align:right}.history-row>div:first-child{display:flex;align-items:baseline;gap:7px;min-width:0}.history-row>div:first-child strong{text-align:left;white-space:nowrap}.history-row>div:first-child span{white-space:nowrap}.drawer-callout{margin-top:18px;padding:14px;color:#654a0c;background:var(--gold-100);border:1px solid #f0d38d;border-radius:11px;font-size:9px;line-height:1.55}
.drawer-head-actions{display:flex;align-items:center;gap:8px}.copy-member-link{height:36px;display:inline-flex;align-items:center;gap:6px;padding:0 11px;color:var(--blue-700);background:var(--blue-50);border:1px solid #cfe0f3;border-radius:9px;font-size:11px;font-weight:850}.copy-member-link:hover{background:var(--blue-100)}
.action-dialog{width:min(520px,92vw);padding:0;border:0;border-radius:16px;box-shadow:0 30px 100px rgba(5,15,30,.35)}.action-dialog::backdrop{background:rgba(3,10,19,.65);backdrop-filter:blur(4px)}.action-dialog form{padding:22px}.dialog-body{padding:18px 0}.dialog-player{display:flex;align-items:center;gap:10px;margin-bottom:16px}.dialog-player .avatar{width:40px;height:40px}.field-label{display:block;margin:13px 0 6px;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.action-dialog textarea,.action-dialog select{width:100%;padding:10px;background:#f8fafc;border:1px solid var(--line);border-radius:9px;font-size:10px}.action-dialog textarea{min-height:84px;resize:vertical}.dialog-warning{margin-top:14px;padding:11px;color:#765511;background:var(--gold-100);border-radius:9px;font-size:9px;line-height:1.5}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:16px;border-top:1px solid var(--line)}.button{min-height:36px;padding:8px 12px;border-radius:8px;font-size:9px;font-weight:850}.button-primary{color:var(--navy-950);background:var(--gold-300);border:1px solid var(--gold-500)}.button-ghost{color:var(--muted);background:#fff;border:1px solid var(--line)}.toast{position:fixed;right:24px;bottom:24px;z-index:120;max-width:390px;padding:13px 16px;color:#fff;background:var(--navy-900);border:1px solid #2a486b;border-radius:10px;box-shadow:var(--shadow-md);font-size:10px;line-height:1.5;opacity:0;transform:translateY(20px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translateY(0)}.sidebar-overlay,.mobile-nav{display:none}
[data-discord-disconnect]{color:#a53748;background:var(--red-bg);border:1px solid #edb6bf;box-shadow:0 1px 2px rgba(166,55,72,.08)}[data-discord-disconnect]:hover{color:#8e2939;background:#ffe3e7;border-color:#e394a1}[data-discord-disconnect]:focus-visible{outline:3px solid rgba(214,76,95,.22);outline-offset:2px}
.card-head.no-pad{padding:0}.clean-button{width:100%;color:inherit;background:transparent;border:0;text-align:left;cursor:pointer}
.version-notice{position:fixed;right:24px;bottom:24px;z-index:125;width:min(540px,calc(100vw - 48px));display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:13px;align-items:center;padding:15px;color:#fff;background:linear-gradient(145deg,var(--navy-900),var(--navy-950));border:1px solid #2a486b;border-radius:14px;box-shadow:0 20px 55px rgba(4,15,30,.3)}.version-notice[hidden]{display:none}.version-notice-icon{width:38px;height:38px;display:grid;place-items:center;color:var(--navy-950);background:var(--gold-300);border-radius:11px;font-size:18px;font-weight:900}.version-notice strong{display:block;font-size:13px}.version-notice p{margin:4px 0 0;color:#aebed1;font-size:11px;line-height:1.45}.version-notice-actions{display:flex;align-items:center;gap:7px}.version-notice .button{white-space:nowrap}.version-notice .icon-button{color:#c4d0de;background:#17304f;border-color:#294765}
@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:1180px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.dashboard-grid{grid-template-columns:1fr}.rank-grid{grid-template-columns:1fr}.unknown-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){:root{--sidebar:220px}.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:0;top:0;width:var(--sidebar);transform:translateX(-105%);transition:transform .22s}.sidebar.open{transform:translateX(0)}.sidebar-overlay{display:block;position:fixed;inset:0;z-index:45;background:rgba(3,10,19,.54);opacity:0;pointer-events:none;transition:.2s}.sidebar-overlay.open{opacity:1;pointer-events:auto}.mobile-menu{display:grid}.topbar{padding:0 18px}.clan-switcher label,.period-control>span,.user-copy{display:none}.content{padding:24px 18px 90px}.hero-ranking,.settings-grid,.insight-strip{grid-template-columns:1fr}.integration-grid{grid-template-columns:1fr}.unknown-grid{grid-template-columns:repeat(2,1fr)}.mobile-nav{position:fixed;left:10px;right:10px;bottom:10px;z-index:55;display:grid;grid-template-columns:repeat(5,1fr);padding:5px;color:#9fb2c9;background:rgba(7,20,38,.96);border:1px solid #263e5b;border-radius:14px;box-shadow:0 18px 45px rgba(0,0,0,.25);backdrop-filter:blur(14px)}.mobile-nav-item{display:grid;place-items:center;gap:3px;padding:7px 2px;color:inherit;background:transparent;border:0;border-radius:9px;font-size:8px}.mobile-nav-item span{font-size:12px}.mobile-nav-item.active{color:var(--gold-300);background:rgba(255,255,255,.06)}}
@media(max-width:680px){.topbar{height:66px}.clan-switcher select{max-width:180px}.period-control{display:none}.refresh-copy{display:none}.refresh-button{width:38px;justify-content:center}.user-chip{display:none}.content{padding:20px 14px 88px}.view-header{display:block}.source-badge{width:max-content;margin-top:12px}.war-banner{grid-template-columns:1fr;padding:22px}.war-meta{gap:8px}.war-meta div{padding-left:11px;min-width:0;flex:1}.war-meta strong{font-size:16px}.kpi-grid{grid-template-columns:repeat(2,1fr);gap:10px}.kpi-card{min-height:125px;padding:15px}.kpi-grid .kpi-card:last-child{grid-column:1/-1}.kpi-value{font-size:24px}.card-head{padding:17px 17px 12px}.chart-wrap{height:245px;padding:0 10px 12px}.performance-summary{margin:0 14px 14px}.action-card .card-action{display:none}.data-table th,.data-table td{padding-left:12px;padding-right:12px}.rank-grid{gap:12px}.review-summary{grid-template-columns:1fr}.integration-hero{grid-template-columns:1fr}.integration-mark{display:none}.unknown-grid{grid-template-columns:1fr}.setting-row{grid-template-columns:1fr;gap:12px}.setting-control{justify-content:flex-start}.hero-ranking{gap:12px}.big-rank-row{grid-template-columns:22px minmax(100px,1fr) 58px}.big-rank-row .bar-track{display:none}.prd-view{height:calc(100vh - 130px);min-height:540px}.prd-actions .button:not(:first-child){display:none}.drawer-stats{grid-template-columns:repeat(2,1fr)}.history-row{grid-template-columns:1fr 48px 48px}.history-row>:nth-child(4){display:none}.member-drawer{padding:18px}.toast{left:14px;right:14px;bottom:82px}}

/* Readability pass: keep operational text comfortably legible without losing table density. */
body{font-size:16px}.brand-copy strong{font-size:15px}.brand-copy small{font-size:12px}.environment-pill,.nav-count,.clan-switcher label,.period-control>span,.eyebrow,.source-badge{font-size:12px}.nav-item{min-height:46px;font-size:14px}.sidebar-foot strong{font-size:12px}.sidebar-foot small{font-size:11px}.clan-switcher select,.period-control select{font-size:14px}.refresh-button{font-size:13px}.user-copy strong{font-size:13px}.user-copy small{font-size:11px}.view-header p{font-size:15px}.war-banner p{font-size:14px}.war-meta span{font-size:11px}.kpi-label{font-size:12px}.kpi-foot{font-size:12px}.card-head h2{font-size:18px}.card-head p{font-size:13px;line-height:1.45}.card-action,.tab-button{font-size:12px}.chart-legend,.performance-summary span,.placement-row{font-size:12px}.data-table th{font-size:11px}.data-table td{font-size:13px}.player-cell strong{font-size:13px}.player-cell small,.mini-progress small{font-size:11px}.status-chip,.row-button,.rank-number,.rank-pos{font-size:11px}.rank-player strong{font-size:13px}.rank-player small,.rank-value small{font-size:11px}.rank-value strong{font-size:14px}.search-field input,.filter-select,.result-count{font-size:13px}.bulk-button,.disabled-button,.button{font-size:12px}.integration-hero p{font-size:14px}.integration-card p,.unknown-member strong,.settings-card>p,.setting-copy strong,.cost-card p,.cost-row,.save-banner p{font-size:13px}.unknown-member small,.setting-copy small{font-size:12px}.setting-control input,.setting-control select{font-size:13px}.prd-toolbar h2{font-size:16px}.prd-toolbar p{font-size:12px}.member-identity strong{font-size:16px}.member-identity small{font-size:12px}.drawer-stat span,.drawer-section p{font-size:11px}.drawer-section h3{font-size:15px}.history-row,.drawer-callout,.field-label,.dialog-warning,.toast{font-size:12px}.action-dialog textarea,.action-dialog select{font-size:13px}.mobile-nav-item{font-size:10px}
.member-drawer{width:min(560px,100vw)}.roster-policy-note{display:flex;align-items:flex-start;gap:8px;margin:-4px 0 16px;padding:12px 14px;color:#4f421f;background:var(--gold-100);border:1px solid #efd28d;border-radius:10px;font-size:12px;line-height:1.45}.roster-policy-note strong{white-space:nowrap}.profile-review-count{flex:0 0 auto;padding:5px 8px;color:#9b3f4d;background:var(--red-bg);border-radius:20px;font-size:10px;font-weight:850}.eligibility-note{display:grid;gap:4px;padding:12px;color:#4e3d16;background:var(--gold-100);border:1px solid #efd28d;border-radius:10px}.eligibility-note strong{font-size:12px}.eligibility-note span{font-size:11px;line-height:1.45}.miss-review-list{display:grid;gap:8px;margin-top:9px}.missed-battle-decisions{scroll-margin-top:86px}.miss-review-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;background:#fbfcfe;border:1px solid var(--line);border-radius:10px}.miss-review-item.current-period{border-left:3px solid var(--blue-500)}.miss-review-item strong,.miss-review-item span,.miss-review-item small{display:block}.miss-review-item strong{font-size:12px}.miss-review-item span{margin-top:4px;color:var(--red);font-size:12px;font-weight:800}.miss-review-item small{margin-top:4px;color:var(--muted);font-size:10px}.empty-review-state{padding:18px;color:var(--muted);background:#f8fafc;border:1px solid var(--line);border-radius:10px;text-align:center;font-size:11px}.dialog-context{display:grid;gap:4px;padding:11px;color:#42546a;background:#f4f7fa;border:1px solid var(--line);border-radius:9px}.dialog-context strong{font-size:12px}.dialog-context span{font-size:11px;line-height:1.45}
.member-drawer{height:100dvh;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-bottom:calc(32px + env(safe-area-inset-bottom))}
.history-row.missed{background:#fff0f2}.history-row.excused{background:#f4edff}.history-row.credited{background:#edf9f7}.history-row.other-clan{background:#f2f7fd}.history-state-label{display:inline-flex;padding:3px 6px;border-radius:12px;font-size:9px;font-style:normal;font-weight:850;white-space:nowrap}.history-row.missed .history-state-label{color:#a53748;background:#ffdfe4}.history-row.excused .history-state-label{color:#7650a8;background:#e5d5fb}.history-row.credited .history-state-label{color:#1f6f78;background:#d9f1ed}.history-row.other-clan .history-state-label{color:#2a65a2;background:#dfeeff}.history-row-clans{grid-template-columns:112px minmax(0,1fr) 72px}.history-date{flex-wrap:wrap}.history-clans{display:grid;gap:5px}.history-clan{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;background:#fff;border:1px solid #e1e7ee;border-radius:7px}.history-clan.other{border-color:#cbdff2}.history-clan strong,.history-clan small{margin:0;text-align:left}.history-clan strong{font-size:10px}.history-clan small{color:var(--muted);font-size:9px;white-space:nowrap}.history-combined{text-align:right}.history-combined span{display:block;margin-top:3px}.miss-review-item.excused{background:#f7f1ff;border-color:#d9c8f2}.miss-review-item.excused>div>span{color:#7650a8}.miss-review-item.preemptive{border-left-color:var(--gold-500);background:#fffaf0}.miss-review-item.preemptive>div>span{color:#8a6108}.miss-review-item.preemptive.excused{border-left-color:var(--purple);background:#f7f1ff}.miss-review-item.preemptive.excused>div>span{color:#7650a8}
.member-war-record-summary{display:grid;gap:13px;margin:0 0 20px;padding:18px;color:#112239;background:linear-gradient(135deg,#f7fbff 0%,#fff 54%,#fff7f8 100%);border:1px solid #dce6f0;border-radius:14px;box-shadow:0 10px 28px rgba(22,51,84,.06)}.member-war-record-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.member-war-record-heading .eyebrow{display:block;margin-bottom:7px}.member-war-record-score{display:inline-block;font-size:32px;line-height:1;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.member-war-record-label{display:block;margin-top:6px;color:var(--muted);font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.08em}.member-war-record-rate{min-width:82px;padding:10px 12px;text-align:center;background:#fff;border:1px solid #e0e8f0;border-radius:11px}.member-war-record-rate strong,.member-war-record-rate span{display:block}.member-war-record-rate strong{font-size:23px;line-height:1;color:var(--blue-700);font-variant-numeric:tabular-nums}.member-war-record-rate span{margin-top:5px;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.member-war-record-breakdown{display:flex;flex-wrap:wrap;gap:7px}.member-war-record-breakdown>span{display:inline-flex;align-items:baseline;gap:4px;padding:6px 9px;border-radius:999px;font-size:11px;font-weight:750}.member-war-record-breakdown .wins{color:#15724e;background:#e7f7ef}.member-war-record-breakdown .losses{color:#b43d53;background:#ffe9ed}.member-war-record-breakdown .draws{color:#7155a1;background:#f1eafa}.member-war-record-track{display:flex;height:8px;overflow:hidden;background:#e7edf3;border-radius:999px}.member-war-record-track span{display:block;height:100%}.member-war-record-track .wins{background:#31a879}.member-war-record-track .losses{background:#e35d72}.member-war-record-track .draws{background:#8c6bc1}.member-war-record-summary>p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}.member-war-record-summary.no-data{background:#f7f9fc}.member-war-record-summary.no-data>div{display:grid;gap:7px}.member-war-record-summary.no-data .member-war-record-score{font-size:19px;letter-spacing:-.02em}.member-war-record-summary.no-data p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}.history-row-clans{grid-template-columns:106px minmax(0,1fr) 68px 58px}.history-war-result{display:grid;gap:3px;justify-items:end;text-align:right}.history-war-result strong{font-size:12px;font-variant-numeric:tabular-nums}.history-war-result small{color:var(--muted);font-size:8px;white-space:nowrap}
@media(max-width:680px){.member-war-record-summary{margin-bottom:18px;padding:16px}.member-war-record-score{font-size:30px}.member-war-record-rate{min-width:76px}.history-row.history-row-clans{grid-template-columns:1fr}.history-row.history-row-clans>:nth-child(4){display:grid}.history-row-clans .history-combined{text-align:left}.history-war-result{grid-template-columns:auto auto;justify-content:start;justify-items:start;align-items:baseline;text-align:left}.history-clan{align-items:flex-start}.history-clan small{white-space:normal}}
.player-tabs{max-width:100%;overflow-x:auto}.coverage-callout{display:flex;align-items:flex-start;gap:11px;margin-bottom:16px;padding:14px 16px;color:#42546a;background:#f8fafc;border:1px solid var(--line);border-radius:12px}.coverage-callout>span{width:24px;height:24px;display:grid;place-items:center;flex:0 0 auto;color:var(--blue-700);background:var(--blue-100);border-radius:50%;font-size:12px;font-weight:900}.coverage-callout strong{display:block;font-size:13px}.coverage-callout p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.row-button.secondary{color:#5e4aa4;background:var(--purple-bg);border-color:#dfd6fb}
.scout-shell{overflow:hidden}.scout-form{display:grid;grid-template-columns:180px minmax(0,1fr);gap:20px;align-items:end;padding:22px;background:linear-gradient(135deg,var(--navy-900),var(--navy-950));border-radius:15px 15px 0 0}.scout-form label span,.scout-form label small{display:block}.scout-form label span{color:#fff;font-size:14px;font-weight:850}.scout-form label small{margin-top:5px;color:#96aac2;font-size:11px}.scout-form>div{display:flex;gap:9px}.scout-form input{min-width:0;flex:1;height:42px;padding:9px 12px;color:var(--ink);background:#fff;border:1px solid #d7e0ea;border-radius:9px;font-size:14px;font-weight:750;text-transform:uppercase}.scout-form .button{min-width:132px}.scout-empty{min-height:330px;display:grid;place-items:center;align-content:center;padding:45px;text-align:center}.scout-empty .scout-mark{width:64px;height:64px;display:grid;place-items:center;color:var(--blue-700);background:var(--blue-50);border:1px solid #d7e9fb;border-radius:20px;font-size:28px}.scout-empty h2{margin:18px 0 7px;font-size:22px}.scout-empty p{max-width:610px;margin:0;color:var(--muted);font-size:13px;line-height:1.6}.scout-result{padding:22px}.scout-result-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:20px;border-bottom:1px solid var(--line)}.scout-result-head>div{display:flex;align-items:center;gap:13px}.scout-result-head .avatar{width:50px;height:50px;border-radius:14px;font-size:14px}.scout-result-head h2{margin:4px 0 0;font-size:24px}.scout-result-head p{margin:4px 0 0;color:var(--muted);font-size:12px}.tracked-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}.tracked-summary div{padding:14px;background:#f7f9fc;border:1px solid #edf0f4;border-radius:10px}.tracked-summary span,.tracked-summary strong{display:block}.tracked-summary span{color:var(--muted);font-size:11px}.tracked-summary strong{margin-top:8px;font-size:20px}.scout-section-head{display:flex;align-items:end;justify-content:space-between;margin:24px 0 12px}.scout-section-head h3{margin:0;font-size:18px}.scout-section-head p{margin:5px 0 0;color:var(--muted);font-size:12px}.scout-metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.scout-metric{padding:16px;background:#fbfcfe;border:1px solid var(--line);border-radius:12px}.scout-metric-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.scout-metric-head>span{color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.coverage-state{padding:4px 6px;color:#8b6414;background:var(--gold-100);border-radius:20px;font-size:9px;font-style:normal;font-weight:850;white-space:nowrap}.coverage-state.tracked{color:var(--green);background:var(--green-bg)}.coverage-state.available{color:var(--blue-700);background:var(--blue-50)}.scout-metric>strong{display:block;margin-top:17px;font-size:17px;line-height:1.25}.scout-metric>p{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.55}.scout-boundary{margin-top:18px}.scout-boundary strong{font-size:12px}.scout-boundary p{font-size:11px}.scout-method{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}.scout-method article{display:flex;align-items:flex-start;gap:11px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:12px}.method-number{width:28px;height:28px;display:grid;place-items:center;flex:0 0 auto;color:var(--navy-950);background:var(--gold-300);border-radius:9px;font-size:12px;font-weight:900}.scout-method strong{display:block;font-size:13px}.scout-method p{margin:5px 0 0;color:var(--muted);font-size:11px;line-height:1.5}
.coverage-state.live{color:var(--blue-700);background:var(--blue-50)}.scout-loading .scout-mark{animation:scout-spin 1s linear infinite}.scout-error .scout-mark{color:var(--red);background:var(--red-bg);border-color:#f4c8d1}.scout-error .button{margin-top:18px}.scout-battle-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.scout-battle-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px;background:#fbfcfe;border:1px solid var(--line);border-radius:11px}.scout-battle-row>span:nth-child(2) strong,.scout-battle-row>span:nth-child(2) small{display:block}.scout-battle-row>span:nth-child(2) small{margin-top:3px;color:var(--muted);font-size:11px}.scout-battle-row time{color:var(--muted);font-size:11px}.scout-battle-result{min-width:58px;padding:6px 8px;text-align:center;color:var(--blue-700);background:var(--blue-50);border-radius:999px;font-size:10px;font-weight:900;text-transform:uppercase}.scout-battle-result.win{color:var(--green);background:var(--green-bg)}.scout-battle-result.loss{color:var(--red);background:var(--red-bg)}@keyframes scout-spin{to{transform:rotate(360deg)}}
.scout-war-history{margin-top:26px;padding:18px;background:#f7f9fc;border:1px solid var(--line);border-radius:14px}.scout-war-history>.scout-section-head{margin:0 0 14px}.scout-war-history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.scout-war-history-group{min-width:0;padding:14px;background:#fff;border:1px solid var(--line);border-radius:12px}.scout-war-history-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.scout-war-history-head strong,.scout-war-history-head small{display:block}.scout-war-history-head strong{font-size:13px}.scout-war-history-head small{margin-top:4px;color:var(--muted);font-size:10px}.scout-war-battle-row{grid-template-columns:auto minmax(0,1fr) auto}.scout-battle-source{padding:4px 6px;color:var(--green);background:var(--green-bg);border-radius:999px;font-size:9px;font-weight:850;white-space:nowrap}.scout-battle-source.live{color:var(--blue-700);background:var(--blue-50)}.scout-war-battle-row time{grid-column:2/4;text-align:right}
@media(max-width:680px){.roster-policy-note{display:grid}.roster-policy-note strong{white-space:normal}.miss-review-item{grid-template-columns:1fr}.miss-review-item .row-button{justify-self:start}}
@media(max-width:1050px){.scout-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.scout-method{grid-template-columns:1fr}.tracked-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.player-tabs{width:100%;justify-content:flex-start}.player-tabs .tab-button{white-space:nowrap}.coverage-callout{padding:12px}.scout-form{grid-template-columns:1fr;gap:12px;padding:17px}.scout-form>div{display:grid}.scout-form .button{width:100%}.scout-result{padding:17px}.scout-result-head{display:grid}.scout-metric-grid{grid-template-columns:1fr}.tracked-summary{grid-template-columns:1fr 1fr}.scout-empty{min-height:280px;padding:30px 20px}.scout-battle-row{grid-template-columns:auto minmax(0,1fr)}.scout-battle-row time{grid-column:2}.scout-section-head{align-items:start;gap:10px}.scout-war-history{padding:13px}.scout-war-history-grid{grid-template-columns:1fr}.scout-war-battle-row{grid-template-columns:auto minmax(0,1fr) auto}.scout-war-battle-row time{grid-column:2/4}.scout-battle-source{align-self:start}}
@media(max-width:680px){.changelog-entry{grid-template-columns:1fr;gap:14px;padding:19px}.changelog-meta{flex-direction:row;align-items:center;justify-content:space-between}.changelog-copy h2{font-size:18px}}
@media(max-width:680px){.version-notice{left:14px;right:14px;bottom:82px;width:auto;grid-template-columns:auto minmax(0,1fr)}.version-notice-actions{grid-column:1/-1}.version-notice-actions .button{flex:1}}

/* Rankings weekly missed-battle breakdown */
.missed-rank-bars{margin-top:12px}.week-strip-heading{margin-top:0;color:var(--muted-2);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.07em}.week-strip-heading>span:nth-child(3){display:flex;align-items:center;justify-content:space-between}.week-strip-heading small{font-size:8px;font-weight:750;letter-spacing:0;text-transform:none}.weekly-breakdown{min-width:0;display:grid;grid-template-columns:repeat(var(--week-count),minmax(25px,1fr));gap:2px;padding:3px;overflow-x:auto;background:#eef1f5;border-radius:8px;scrollbar-width:thin}.week-cell{min-width:25px;display:grid;place-items:center;gap:2px;padding:5px 2px 4px;color:#59687a;background:#e2e7ed;border:1px solid transparent;border-radius:5px;font-variant-numeric:tabular-nums}.week-cell strong{font-size:11px;line-height:1}.week-cell small{color:#7a8797;font-size:7px;line-height:1;white-space:nowrap}.week-cell.missed{color:#a53748;background:#ffe3e7;border-color:#f7bcc5}.week-cell.missed small{color:#b55a68}.week-cell.excused{color:#7650a8;background:#f1e8ff;border-color:#d9c8f2}.week-cell.excused small{color:#7650a8}.week-cell.credited{color:#1f6f78;background:#e2f5f3;border-color:#b8ded9}.week-cell.credited small{color:#3f7c82}.week-cell.review{color:#8a6110;background:#fff3d3;border-color:#eed48b}.week-cell.review small{color:#8a6a28}.week-cell.untracked{color:#9ca6b2;background:#f5f7f9;border-color:#e4e8ed}.week-cell.untracked small{color:#a2abb6}
.war-record-card{margin-bottom:10px}.war-record-card .card-head{align-items:center}.coverage-badge{padding:7px 10px;color:#37506d;background:#eef4fa;border:1px solid #d8e3ef;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap}.war-record-table{min-width:1120px}.war-record-table th small{display:block;margin-top:4px;color:#9aa6b4;font-size:8px;letter-spacing:0;text-transform:none}.war-record-table th:nth-last-child(-n+2),.war-record-table td:nth-last-child(-n+2){position:sticky;z-index:1;background:#fff}.war-record-table th:nth-last-child(2),.war-record-table td:nth-last-child(2){right:120px;min-width:130px;box-shadow:-8px 0 12px -12px #53657a}.war-record-table th:last-child,.war-record-table td:last-child{right:0;min-width:120px}.war-record-table th:nth-last-child(-n+2){z-index:2;background:#f8fafc}.war-record-table tbody tr:hover td:nth-last-child(-n+2){background:#fbfcfe}.war-record-cell,.war-record-total{font-variant-numeric:tabular-nums}.war-record-cell strong,.war-record-cell span,.war-record-cell em,.war-record-total strong,.war-record-total span,.war-record-total em{display:block}.war-record-cell strong,.war-record-total strong{font-size:13px}.war-record-cell span,.war-record-total span,.war-record-total em,.war-missed-total small{margin-top:3px;color:var(--muted);font-size:9px}.war-record-total em{font-style:normal;font-weight:750}.war-missed-total small{display:block;white-space:nowrap}.war-record-cell em{width:max-content;margin-top:5px;padding:3px 6px;color:#58687a;background:#edf1f5;border-radius:999px;font-size:8px;font-style:normal;font-weight:800}.war-record-cell.missed{background:var(--red-bg)}.war-record-cell.missed em{color:var(--red);background:#ffe0e5}.war-record-cell.excused{background:var(--purple-bg)}.war-record-cell.excused em{color:var(--purple);background:#e8dfff}.war-result-note{margin:0 0 18px}
.war-ranking-mobile{display:none}.war-ranking-mobile-card{width:100%;color:var(--ink);background:#fff;border-bottom:1px solid var(--line)}.war-ranking-mobile-card:last-child{border-bottom:0}.war-mobile-summary{width:100%;display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:7px 10px;align-items:center;padding:13px 14px 7px;color:var(--ink);background:#fff;border:0;text-align:left}.war-mobile-summary:active,.war-mobile-summary[aria-expanded="true"]{background:var(--blue-50)}.war-mobile-summary:focus-visible,.war-mobile-player-button:focus-visible{position:relative;z-index:1;outline:3px solid var(--blue-500);outline-offset:-3px}.war-mobile-rank{width:28px;height:28px;display:grid;place-items:center;color:var(--navy-950);background:var(--gold-100);border-radius:8px;font-size:11px;font-weight:900}.war-mobile-player{min-width:0}.war-mobile-player>span:last-child{min-width:0}.war-mobile-player strong,.war-mobile-player small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.war-mobile-total,.war-mobile-missed{display:grid;gap:3px}.war-mobile-total{grid-column:2}.war-mobile-total small,.war-mobile-missed>small{color:var(--muted);font-size:9px;font-weight:750}.war-mobile-total strong{font-size:14px}.war-mobile-total em{color:var(--muted);font-size:9px;font-style:normal}.war-mobile-missed{grid-column:3;grid-row:1/3;justify-items:end}.war-mobile-toggle{color:var(--blue-700);font-size:10px;font-weight:850}.war-mobile-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 14px 12px 54px}.war-mobile-player-button{min-height:34px;padding:6px 11px;color:var(--blue-700);background:#fff;border:1px solid #cddaea;border-radius:8px;font-size:11px;font-weight:850}.war-mobile-player-button:active{background:var(--blue-50)}.war-mobile-weeks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px 14px 14px;border-top:1px solid #edf0f4}.war-mobile-weeks[hidden]{display:none}.war-mobile-week{display:grid;grid-template-columns:minmax(68px,.8fr) minmax(0,1fr);gap:5px 9px;padding:10px;background:#f8fafc;border:1px solid var(--line);border-radius:10px}.war-mobile-week>span strong,.war-mobile-week>span small{display:block}.war-mobile-week>span strong{font-size:11px}.war-mobile-week>span small{margin-top:3px;overflow:hidden;color:var(--muted);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.war-mobile-week>em{grid-column:1/-1;width:max-content;padding:3px 6px;color:#58687a;background:#edf1f5;border-radius:999px;font-size:8px;font-style:normal;font-weight:800}.war-mobile-week.missed{background:var(--red-bg);border-color:#f6cbd1}.war-mobile-week.missed>em{color:var(--red);background:#ffe0e5}.war-mobile-week.excused{background:var(--purple-bg);border-color:#ddd2fb}.war-mobile-week.excused>em{color:var(--purple);background:#e8dfff}.war-mobile-week.complete>em{color:var(--green);background:var(--green-bg)}.war-mobile-week.untracked{background:#f6f7f9}.war-mobile-week.untracked>em{color:var(--muted);background:#e8ebef}
@media(max-width:680px){.war-record-card .card-head{display:grid;gap:10px}.war-record-card .coverage-badge{width:max-content}.war-record-card .table-wrap{display:none}.war-ranking-mobile{display:block}.war-mobile-player .avatar{width:38px;height:38px}.war-mobile-player strong{font-size:13px}.war-mobile-player small{font-size:9px}}
@media(max-width:430px){.war-mobile-summary{padding:12px 12px 6px}.war-mobile-actions{padding:0 12px 11px 52px}.war-mobile-weeks{gap:6px;padding:11px 12px 12px}.war-mobile-week{grid-template-columns:1fr;padding:9px}.war-mobile-week>em{grid-column:1}.war-mobile-total em{max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
@media(max-width:680px){.week-strip-heading>span:nth-child(2){display:none}.week-strip-heading>span:nth-child(3),.has-week-breakdown .weekly-breakdown{grid-column:2/-1}.week-strip-heading>span:nth-child(3){font-size:8px}.has-week-breakdown{row-gap:8px}.has-week-breakdown .rank-value{grid-column:3;grid-row:1}.has-week-breakdown .weekly-breakdown{grid-row:2}}
/* Current war operations */
.war-status-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:-5px 0 20px;padding:13px 16px;color:#42546a;background:#fff;border:1px solid var(--line);border-radius:12px}.war-status-strip>div{display:flex;align-items:center;gap:9px}.war-status-strip .status-light{width:9px;height:9px;background:var(--gold-500);border-radius:50%;box-shadow:0 0 0 4px rgba(229,170,50,.14)}.war-status-strip strong{font-size:13px}.war-status-strip p{margin:0;color:var(--muted);font-size:12px;text-align:right}.current-war-grid{grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr)}.war-progress-card{overflow:hidden}.war-progress-list{display:grid;gap:6px;padding:0 22px 22px}.war-progress-row{display:grid;grid-template-columns:minmax(155px,.55fr) minmax(180px,1fr) 158px;gap:14px;align-items:center;padding:12px;border:1px solid #e7ebf0;border-radius:11px}.war-progress-row.selected{background:var(--blue-50);border-color:#cfe3f8}.war-progress-team strong,.war-progress-team small,.war-progress-value span,.war-progress-value strong,.war-progress-value small{display:block}.war-progress-team strong{font-size:13px}.war-progress-team small,.war-progress-value small{margin-top:3px;color:var(--muted);font-size:10px}.war-progress-bar{position:relative;height:11px;overflow:hidden;background:#e9edf2;border-radius:20px}.war-progress-current,.war-progress-projected{position:absolute;left:0;top:0;height:100%;border-radius:20px}.war-progress-projected{background:#bad8f6}.war-progress-current{z-index:1;background:var(--blue-600)}.war-progress-row:not(.selected) .war-progress-current{background:var(--gold-500)}.war-progress-row:not(.selected) .war-progress-projected{background:#f6dfae}.war-progress-value{text-align:right}.war-progress-value span{color:var(--muted-2);font-size:8px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.war-progress-value strong{margin-top:2px;font-size:18px;font-variant-numeric:tabular-nums}.projection-method{padding:22px;color:#fff;background:linear-gradient(145deg,var(--navy-900),var(--navy-950))}.projection-method .eyebrow{color:var(--gold-300)}.projection-method h2{margin:12px 0 18px;font-size:21px;line-height:1.2}.projection-method dl{display:grid;gap:14px;margin:0}.projection-method dl div{padding-top:13px;border-top:1px solid rgba(255,255,255,.1)}.projection-method dt{color:#fff;font-size:12px;font-weight:850}.projection-method dd{margin:4px 0 0;color:#a9bad0;font-size:11px;line-height:1.5}.projection-method>p{margin:18px 0 0;padding-top:15px;color:#8fa4bd;border-top:1px solid rgba(255,255,255,.1);font-size:10px;line-height:1.5}.enemy-progress-card,.incomplete-war-card{margin-top:18px}.enemy-pace-table{table-layout:fixed}.enemy-pace-table th:first-child{width:29%}.war-status-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.war-member-table{table-layout:fixed;white-space:normal}.war-member-col{width:30%}.war-status-col{width:18%}.war-credit-col{width:22%}.war-forecast-col{width:21%}.war-profile-col{width:9%}.war-member-credit strong,.war-member-credit small,.war-member-forecast strong,.war-member-forecast small{display:block}.war-member-credit small,.war-member-forecast small{margin-top:4px;color:var(--muted);font-size:9px}.war-member-profile{text-align:right}.war-rank-avatar{font-size:11px;font-weight:900;font-variant-numeric:tabular-nums}.war-incomplete-row td{background:#fff7f8}.war-incomplete-row:hover td{background:#fff0f2}.war-complete-row td{background:#fbfffd}.war-complete-row:hover td{background:#f3fbf6}.current-war-kpis .kpi-card:last-child .kpi-icon{color:var(--red);background:var(--red-bg)}
@media(max-width:1180px){.current-war-grid{grid-template-columns:1fr}.current-war-kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:680px){.war-status-strip{display:grid}.war-status-strip p{text-align:left}.current-war-kpis{grid-template-columns:repeat(2,1fr)}.war-progress-list{padding:0 14px 14px}.war-progress-row{grid-template-columns:minmax(0,1fr) 126px;gap:8px 12px}.war-progress-bar{grid-column:1/-1;grid-row:2}.war-progress-value strong{font-size:16px}.projection-method{padding:18px}.incomplete-war-card .card-head{display:grid;gap:10px}.war-member-table,.war-member-table tbody{display:block}.war-member-table colgroup,.war-member-table thead{display:none}.war-member-table tr{display:grid;grid-template-columns:1fr auto;gap:10px;padding:14px}.war-member-table td{padding:0;border:0;background:transparent}.war-member-cell{grid-column:1}.war-member-status{grid-column:2;text-align:right}.war-member-credit,.war-member-forecast{grid-column:1}.war-member-profile{grid-column:2;grid-row:2/4;align-self:center}.war-incomplete-row{background:#fff7f8}.war-complete-row{background:#fbfffd}.enemy-pace-table{min-width:720px}}
.enemy-pace-table .numeric strong,.enemy-pace-table .numeric small{display:block}.enemy-pace-table .numeric small{margin-top:4px;color:var(--muted);font-size:9px}
@media(max-width:680px){.current-war-kpis .kpi-card:last-child{grid-column:auto}.enemy-pace-table{min-width:640px}}
.enemy-pace-mobile{display:none}.pace-indicator{display:inline-flex!important;align-items:center;gap:5px;width:max-content;padding:3px 7px;border-radius:999px;font-weight:800}.pace-indicator:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.pace-indicator.pace-ahead{color:var(--green);background:var(--green-bg)}.pace-indicator.pace-behind{color:var(--red);background:var(--red-bg)}.pace-indicator.pace-on-pace,.pace-indicator.pace-unknown{color:#667586;background:var(--gray-bg)}.war-progress-row.pace-ahead{border-left:3px solid var(--green)}.war-progress-row.pace-behind{border-left:3px solid var(--red)}.enemy-pace-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.enemy-pace-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.enemy-pace-metrics>div{min-width:0;padding:11px;background:#f7f9fc;border:1px solid #e8edf3;border-radius:10px}.enemy-pace-metrics span,.enemy-pace-metrics strong,.enemy-pace-metrics small{display:block;white-space:normal}.enemy-pace-metrics span{color:var(--muted-2);font-size:8px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.enemy-pace-metrics strong{margin-top:5px;font-size:16px;font-variant-numeric:tabular-nums}.enemy-pace-metrics small{margin-top:3px;color:var(--muted);font-size:9px;line-height:1.35}
@media(max-width:680px){.enemy-progress-card>.table-wrap{display:none}.enemy-pace-mobile{display:grid;gap:10px;padding:0 14px 14px}.enemy-pace-card{min-width:0;padding:14px;background:#fff;border:1px solid #e3e9f0;border-radius:12px}.enemy-pace-card .player-cell{min-width:0}.enemy-pace-card .player-cell>div{min-width:0}.enemy-pace-card .player-cell strong,.enemy-pace-card .player-cell small{overflow-wrap:anywhere;white-space:normal}.enemy-pace-card .pace-indicator{flex:0 0 auto;font-size:8px}.current-war-kpis .kpi-card{min-width:0}.current-war-kpis .kpi-foot{white-space:normal;line-height:1.35}.war-progress-row{grid-template-columns:minmax(0,1fr) minmax(112px,auto)}.war-progress-value{min-width:0}.war-progress-value small{white-space:normal;line-height:1.3}.war-progress-value .pace-indicator{margin-left:auto}.war-member-forecast strong,.war-member-forecast small{white-space:normal;line-height:1.35}}

/* Current war command view */
.war-command-hero{display:grid;grid-template-columns:minmax(180px,.72fr) minmax(220px,1fr) minmax(320px,1.15fr);gap:0;overflow:hidden;margin:0 0 18px;color:#fff;background:linear-gradient(135deg,#081a30,#0d294b);border:1px solid #18385d;border-radius:16px;box-shadow:0 12px 30px rgba(7,25,46,.13)}.war-command-hero>div{min-width:0;padding:22px 24px;border-left:1px solid rgba(255,255,255,.1)}.war-command-hero>div:first-child{border-left:0}.war-command-hero .eyebrow{color:var(--gold-300)}.war-command-hero>div:first-child>strong{display:block;margin-top:8px;color:#fff;font-size:42px;line-height:1}.war-command-hero p,.war-command-hero span,.war-command-hero small{display:block}.war-command-hero p{margin:7px 0 0;color:#aebfd2;font-size:11px}.war-command-score{display:flex;flex-direction:column;justify-content:center}.war-command-score>strong{font-size:36px;line-height:1;font-variant-numeric:tabular-nums}.war-command-score>span{margin-top:6px;color:#fff;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.war-command-score>small{margin-top:6px;color:#91d4b2;font-size:10px}.war-command-efficiency{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:center}.war-command-efficiency>div{min-width:0;padding:13px 14px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.09);border-radius:11px}.war-command-efficiency strong,.war-command-efficiency span{display:block}.war-command-efficiency strong{font-size:23px;font-variant-numeric:tabular-nums}.war-command-efficiency span{margin-top:5px;color:#b6c6d8;font-size:9px;line-height:1.3;text-transform:uppercase;letter-spacing:.055em}.live-standings-card,.projection-preview-card,.member-action-card{margin-top:18px;overflow:visible}.section-title-row{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 22px 16px}.section-title-row .eyebrow{margin-bottom:7px}.section-title-row h2{margin:0;font-size:20px}.section-title-row p{margin:5px 0 0;color:var(--muted);font-size:11px;line-height:1.45}.war-help{position:relative;z-index:4;flex:0 0 auto}.war-help>summary{width:30px;height:30px;display:grid;place-items:center;color:var(--blue-700);background:var(--blue-50);border:1px solid #cfe3f8;border-radius:50%;cursor:pointer;font-size:13px;font-weight:900;list-style:none}.war-help>summary::-webkit-details-marker{display:none}.war-help>div{position:absolute;right:0;top:38px;width:min(310px,calc(100vw - 54px));padding:13px 14px;color:#d7e2ef;background:var(--navy-950);border:1px solid #1c3c60;border-radius:11px;box-shadow:0 12px 26px rgba(4,15,28,.24);font-size:10px;line-height:1.55}.live-standings-table{table-layout:fixed}.live-standings-table th:nth-child(1){width:6%}.live-standings-table th:nth-child(2){width:20%}.live-standings-table th:nth-child(3){width:17%}.live-standings-table th:nth-child(4){width:14%}.live-standings-table th:nth-child(5){width:17%}.live-standings-table th:nth-child(6){width:13%}.live-standings-table th:nth-child(7){width:13%}.live-standing-row td{padding-top:14px;padding-bottom:14px}.live-standing-row.selected td{background:#eef6ff;border-color:#d9eafd}.live-standing-row.selected td:first-child{box-shadow:inset 3px 0 0 var(--blue-600)}.live-standing-row strong,.live-standing-row small{display:block}.live-standing-row td>strong{font-size:14px;font-variant-numeric:tabular-nums}.live-standing-row small{margin-top:4px;color:var(--muted);font-size:8px;line-height:1.3;white-space:normal}.live-rank span{width:28px;height:28px;display:grid;place-items:center;color:#805d0a;background:var(--gold-100);border-radius:9px;font-size:12px;font-weight:900}.live-clan strong{font-size:12px}.live-primary strong{font-size:18px!important}.projection-preview-grid{display:grid;grid-template-columns:1.12fr repeat(5,minmax(0,1fr));gap:9px;padding:0 22px 18px}.projection-preview-grid>div{min-width:0;padding:14px;background:#f7f9fc;border:1px solid #e5eaf0;border-radius:11px}.projection-preview-grid span,.projection-preview-grid strong,.projection-preview-grid small{display:block}.projection-preview-grid span{color:var(--muted-2);font-size:8px;font-weight:850;line-height:1.3;text-transform:uppercase;letter-spacing:.055em}.projection-preview-grid strong{margin-top:7px;font-size:19px;line-height:1.15;font-variant-numeric:tabular-nums}.projection-preview-grid small{margin-top:5px;color:var(--muted);font-size:8px;line-height:1.35}.projection-finish{color:#fff!important;background:linear-gradient(145deg,var(--blue-700),var(--navy-900))!important;border-color:#1f5b92!important}.projection-finish span,.projection-finish small{color:#c5d8ea}.projection-finish strong{font-size:32px}.war-drilldown{margin:0 22px 20px;border:1px solid var(--line);border-radius:11px;background:#fbfcfe}.war-drilldown>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;cursor:pointer;list-style:none;font-size:11px;font-weight:850}.war-drilldown>summary::-webkit-details-marker{display:none}.war-drilldown>summary:before{content:"+";width:20px;height:20px;display:grid;place-items:center;flex:0 0 auto;color:var(--blue-700);background:var(--blue-50);border-radius:6px}.war-drilldown[open]>summary:before{content:"−"}.war-drilldown>summary span{margin-right:auto}.war-drilldown>summary strong{color:var(--muted);font-size:10px}.projection-rank-list{display:grid;gap:7px;padding:0 10px 10px}.projection-rank-row{display:grid;grid-template-columns:26px minmax(150px,1.1fr) minmax(100px,.6fr) minmax(90px,.55fr) minmax(110px,.7fr) auto;gap:12px;align-items:center;padding:11px 12px;background:#fff;border:1px solid #e7ebf0;border-radius:9px}.projection-rank-row.selected{background:var(--blue-50);border-color:#cfe3f8}.projection-rank{width:24px;height:24px;display:grid;place-items:center;color:#805d0a;background:var(--gold-100);border-radius:7px;font-size:10px;font-weight:900}.projection-clan strong,.projection-clan small,.projection-score strong,.projection-score small,.projection-efficiency strong,.projection-efficiency small{display:block}.projection-clan strong{font-size:11px}.projection-clan small,.projection-score small,.projection-efficiency small{margin-top:3px;color:var(--muted);font-size:8px;line-height:1.3}.projection-score strong{font-size:16px}.projection-efficiency strong{font-size:13px}.member-action-card .war-status-summary{padding:0 22px 15px}.member-action-table{table-layout:fixed}.member-action-table th:nth-child(1){width:30%}.member-action-table th:nth-child(2){width:15%}.member-action-table th:nth-child(3){width:13%}.member-action-table th:nth-child(4){width:16%}.member-action-table th:nth-child(5){width:17%}.member-action-table th:nth-child(6){width:9%}.member-action-row.needs-action td{background:#fff7f8}.member-action-row.complete td{background:#fbfffd}.member-action-row strong,.member-action-row small{display:block}.member-action-row td>strong,.member-action-next>strong{font-size:12px}.member-action-row td>small,.member-action-next>small{margin-top:4px;color:var(--muted);font-size:8px;line-height:1.3;white-space:normal}.member-action-row td:last-child{text-align:right}.member-drilldown{margin-top:16px}.member-drilldown>.table-wrap{border-top:1px solid var(--line)}
@media(max-width:1050px){.war-command-hero{grid-template-columns:.7fr 1fr}.war-command-efficiency{grid-column:1/-1;border-left:0!important;border-top:1px solid rgba(255,255,255,.1)}.projection-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.projection-rank-row{grid-template-columns:26px minmax(150px,1fr) repeat(3,minmax(90px,.6fr))}.projection-rank-row .pace-indicator{grid-column:2/-1}.live-standings-table{min-width:900px}}
@media(max-width:720px){.war-command-hero{grid-template-columns:88px minmax(0,1fr);border-radius:14px}.war-command-hero>div{padding:17px 16px}.war-command-hero>div:first-child>strong{font-size:30px}.war-command-score>strong{font-size:28px}.war-command-efficiency{gap:8px;padding:12px!important}.war-command-efficiency>div{padding:10px 11px}.war-command-efficiency strong{font-size:19px}.section-title-row{padding:17px 16px 13px}.section-title-row h2{font-size:18px}.live-standings-card>.table-wrap{overflow:visible}.live-standings-table,.live-standings-table tbody{display:block;min-width:0}.live-standings-table thead{display:none}.live-standing-row{display:grid;grid-template-columns:34px minmax(0,1fr) minmax(104px,.7fr);gap:10px 12px;padding:14px 15px;border-top:1px solid var(--line)}.live-standing-row:first-child{border-top:0}.live-standing-row.selected{background:#eef6ff;box-shadow:inset 3px 0 0 var(--blue-600)}.live-standing-row td,.live-standing-row.selected td{padding:0;background:transparent;border:0;box-shadow:none!important}.live-standing-row .live-rank{grid-row:1}.live-standing-row .live-clan{grid-column:2}.live-standing-row .live-primary{grid-column:3;grid-row:1;text-align:right}.live-standing-row td:nth-child(4){grid-column:2}.live-standing-row td:nth-child(5){grid-column:3;text-align:right}.live-standing-row td:nth-child(6){grid-column:2}.live-standing-row td:nth-child(7){grid-column:3;text-align:right}.projection-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:0 15px 15px}.projection-finish{grid-column:1/-1}.projection-preview-grid>div{padding:12px}.projection-preview-grid strong{font-size:17px}.war-drilldown{margin:0 15px 16px}.projection-rank-row{grid-template-columns:25px minmax(0,1fr) auto;gap:8px;padding:11px}.projection-clan{grid-column:2}.projection-score{grid-column:3;text-align:right}.projection-efficiency{grid-column:2}.projection-rank-row .projection-efficiency:nth-of-type(4){grid-column:3;text-align:right}.projection-rank-row .pace-indicator{grid-column:2/-1}.member-action-card .war-status-summary{padding:0 15px 13px}.member-action-card>.table-wrap{overflow:visible}.member-action-table,.member-action-table tbody{display:block;min-width:0}.member-action-table thead{display:none}.member-action-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px 12px;padding:14px 15px;border-top:1px solid var(--line)}.member-action-row:first-child{border-top:0}.member-action-row.needs-action{background:#fff7f8}.member-action-row.complete{background:#fbfffd}.member-action-row td{padding:0!important;background:transparent!important;border:0!important}.member-action-row td:nth-child(1){grid-column:1}.member-action-row td:nth-child(2){grid-column:2;text-align:right}.member-action-row td:nth-child(3){grid-column:1}.member-action-row td:nth-child(4){grid-column:2;text-align:right}.member-action-row td:nth-child(5){grid-column:1}.member-action-row td:nth-child(6){grid-column:2;grid-row:3;align-self:center}.member-drilldown>.table-wrap{overflow:visible}.war-help>div{position:fixed;left:18px;right:18px;top:auto;width:auto}.source-note{margin-bottom:82px}}
@media(max-width:430px){.war-command-score>strong{font-size:24px}.war-command-efficiency span{font-size:8px}.live-standing-row{grid-template-columns:30px minmax(0,1fr) minmax(90px,.65fr);gap:9px}.live-rank span{width:26px;height:26px}.projection-preview-grid strong{font-size:16px}.projection-rank-row{grid-template-columns:24px minmax(0,1fr)}.projection-score{grid-column:2;text-align:left}.projection-rank-row .projection-efficiency:nth-of-type(4){grid-column:2;text-align:left}.member-action-row .player-cell{min-width:0}.member-action-row .player-cell>div{min-width:0}.member-action-row .player-cell strong,.member-action-row .player-cell small{overflow-wrap:anywhere;white-space:normal}}
.activity-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:12px}.activity-summary div{padding:10px 8px;background:#f7f9fc;border:1px solid var(--line);border-radius:9px}.activity-summary strong,.activity-summary span{display:block}.activity-summary strong{font-size:15px}.activity-summary span{margin-top:3px;color:var(--muted);font-size:10px;line-height:1.25}.activity-summary .priority-missed{background:#ffedf0;border-color:#f2bdc6}.activity-summary .priority-war{background:#eef5ff;border-color:#bfd5f2}.activity-summary .priority-practice{background:#eef1ff;border-color:#c9d0ff}.activity-summary .priority-general{background:#ebf8f1;border-color:#b9e4cc}.activity-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;padding:10px;background:#f7f9fc;border:1px solid var(--line);border-radius:12px}.activity-weekday{padding:2px 0 5px;color:var(--muted);font-size:9px;font-weight:800;text-align:center;text-transform:uppercase}.activity-day{position:relative;min-height:57px;padding:6px;background:#fff;border:1px solid #e8edf3;border-radius:8px}.activity-day strong,.activity-day span,.activity-day small{display:block}.activity-day strong{font-size:11px}.activity-day span{margin-top:7px;color:#8b97a7;font-size:9px;font-weight:800;line-height:1.15}.activity-day small{margin-top:3px;color:var(--muted);font-size:8px}.activity-day.active{background:#ebf8f1;border-color:#b9e4cc}.activity-day.active span{color:#287a50}.activity-day.war-complete{background:#eef5ff;border-color:#bfd5f2;box-shadow:inset 0 3px 0 #2c6fb7}.activity-day.war-complete span{color:#205f9f}.activity-day.practiced{background:#eef1ff;border-color:#c9d0ff;box-shadow:inset 0 3px 0 #625ed6}.activity-day.practiced span{color:#514bbf}.activity-day.practice-observed{background:#fff8e7;border-color:#f0d595}.activity-day.practice-observed span{color:#96711d}.activity-day.unknown{background:#fafbfc}.activity-day-spacer{min-height:1px}.activity-legend{display:flex;flex-wrap:wrap;gap:8px 13px;margin-top:10px;color:var(--muted);font-size:10px}.activity-legend span{display:flex;align-items:center;gap:5px}.activity-legend i{width:9px;height:9px;border:1px solid var(--line);border-radius:3px}.legend-active{background:#ebf8f1!important;border-color:#b9e4cc!important}.legend-war{background:#eef5ff!important;border-color:#2c6fb7!important}.legend-practice{background:#eef1ff!important;border-color:#625ed6!important}.legend-practice-zero{background:#fff8e7!important;border-color:#f0d595!important}.legend-unknown{background:#fafbfc!important}.activity-coverage-note{margin-top:10px;padding:11px;color:#506176;background:#f4f7fa;border:1px solid var(--line);border-radius:9px;font-size:10px;line-height:1.45}.activity-coverage-note strong{color:#27394f}.member-activity-section{padding-top:2px}
.activity-day.incomplete{color:#697789;background:#fafbfc;border-style:dashed}.activity-day.incomplete span{color:#697789}.activity-day.missed-war{color:#9b2f42;background:#ffedf0;border-color:#f2bdc6;box-shadow:inset 0 3px 0 #d9435d}.activity-day.missed-war span{color:#b72f47}.activity-day.excused-war{color:#7650a8;background:#f4edff;border-color:#d9c8f2;box-shadow:inset 0 3px 0 #8b63bd}.activity-day.excused-war span{color:#7650a8}.legend-incomplete{background:#fafbfc!important;border-style:dashed!important}.legend-missed{background:#ffedf0!important;border-color:#d9435d!important}.legend-excused{background:#f4edff!important;border-color:#8b63bd!important}
.activity-day.unknown{color:#98a3b1;background:#fbfcfd;border-style:dashed}.activity-day.unknown span{color:#8b97a7}.legend-unknown{background:#fbfcfd!important;border-style:dashed!important}
.donation-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}.donation-total-card{margin-bottom:18px}.donation-total-bars{display:grid;gap:15px;padding:3px 22px 22px}.donation-total-row{display:grid;grid-template-columns:175px minmax(0,1fr);gap:16px;align-items:center}.donation-total-row>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.donation-total-row strong{font-size:13px}.donation-total-row>div span{color:var(--muted);font-size:12px;font-weight:850;font-variant-numeric:tabular-nums}.donation-total-track,.donation-bar-track,.donation-week-track{display:block;overflow:hidden;background:#edf1f5;border-radius:999px}.donation-total-track{height:13px}.donation-total-fill,.donation-bar-fill,.donation-week-fill{display:block;height:100%;min-width:2px;border-radius:999px}.donation-total-fill.sent,.donation-bar-fill.sent,.donation-week-fill.sent{background:linear-gradient(90deg,var(--blue-700),var(--blue-500))}.donation-total-fill.received,.donation-bar-fill.received,.donation-week-fill.received{background:linear-gradient(90deg,var(--gold-600),var(--gold-300))}.donation-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.donation-rank-list{padding:0 20px 18px}.donation-rank-row{display:grid;grid-template-columns:24px minmax(120px,.75fr) minmax(90px,1fr) 82px;gap:12px;align-items:center;padding:12px 0;border-top:1px solid #edf0f4}.donation-rank-row:first-child{border-top:0}.donation-rank-row:hover{color:var(--blue-700)}.donation-bar-track{height:8px}.donation-rank-value{text-align:right}.donation-rank-value strong,.donation-rank-value small{display:block}.donation-rank-value strong{font-size:14px;font-variant-numeric:tabular-nums}.donation-rank-value small{margin-top:3px;color:var(--muted);font-size:10px}.donation-source-note{margin-top:18px}.donation-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:10px}.donation-summary div{padding:12px;background:#f7f9fc;border:1px solid var(--line);border-radius:9px}.donation-summary strong,.donation-summary span{display:block}.donation-summary strong{font-size:18px}.donation-summary span{margin-top:4px;color:var(--muted);font-size:10px}.donation-week-list{overflow:hidden;border:1px solid var(--line);border-radius:11px}.donation-week-row{display:grid;grid-template-columns:120px repeat(2,minmax(0,1fr));gap:12px;align-items:center;padding:12px;border-top:1px solid #edf0f4}.donation-week-row:first-child{border-top:0}.donation-week-date strong,.donation-week-date span{display:block}.donation-week-date strong{font-size:11px}.donation-week-date span{margin-top:4px;color:var(--muted);font-size:9px}.donation-week-measure>div{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.donation-week-measure span{color:var(--muted);font-size:9px}.donation-week-measure strong{font-size:11px}.donation-week-track{height:6px;margin-top:5px}
@media(max-width:680px){.activity-summary{grid-template-columns:repeat(2,1fr)}.activity-calendar{gap:4px;padding:8px}.activity-day{min-height:52px;padding:5px}.activity-day span{font-size:8px}}
@media(max-width:1180px){.donation-kpis{grid-template-columns:repeat(3,1fr)}.donation-report-grid{grid-template-columns:1fr}}
@media(max-width:680px){.donation-kpis{grid-template-columns:repeat(2,1fr)}.donation-kpis .kpi-card:last-child{grid-column:auto}.donation-total-row{grid-template-columns:1fr;gap:7px}.donation-rank-row{grid-template-columns:22px minmax(110px,1fr) 70px}.donation-rank-row .donation-bar-track{display:none}.donation-week-row{grid-template-columns:1fr;gap:9px}.donation-week-date{padding-bottom:3px}.donation-summary{grid-template-columns:1fr 1fr}}
.deck-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.deck-toolbar{padding:11px 13px}.deck-filter-label{display:flex;align-items:center;gap:8px}.deck-filter-label>span{color:var(--muted);font-size:11px;font-weight:800}.deck-ranking-card{overflow:hidden}.deck-ranking-legend{display:flex;flex-wrap:wrap;gap:12px;color:var(--muted);font-size:11px}.deck-ranking-legend span{display:flex;align-items:center;gap:6px}.deck-ranking-legend i{display:inline-block;width:18px;height:5px;background:var(--blue-600);border-radius:5px}.deck-ranking-legend i.confidence{width:3px;height:12px;background:var(--gold-600);border-radius:1px}.deck-ranking-list{padding:0 20px 18px}.deck-ranking-row{display:grid;grid-template-columns:26px minmax(390px,1fr) minmax(180px,.45fr) 105px;gap:16px;align-items:center;padding:15px 0;border-top:1px solid #edf0f4}.deck-ranking-row:first-child{border-top:0}.deck-rank{width:24px;height:24px;display:grid;place-items:center;color:var(--navy-950);background:var(--gold-100);border-radius:7px;font-size:10px;font-weight:900}.deck-composition{min-width:0}.deck-cards{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:5px}.deck-card{position:relative;min-width:0;overflow:hidden;background:#eef2f7;border:1px solid #d8e0e9;border-radius:7px;aspect-ratio:3/4}.deck-card img{display:block;width:100%;height:100%;object-fit:cover}.deck-card-placeholder{height:100%;display:grid;place-items:center;color:var(--muted);font-size:9px;font-weight:900}.deck-card small{position:absolute;right:2px;bottom:2px;min-width:16px;padding:2px 3px;color:#fff;background:rgba(5,13,24,.86);border-radius:4px;text-align:center;font-size:8px;font-weight:900}.deck-cards.compact{max-width:390px}.deck-cards.compact .deck-card{max-width:42px}.deck-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:7px;color:var(--muted);font-size:10px}.deck-player-total{white-space:nowrap}.deck-player-counts{display:flex;align-items:center;gap:5px}.deck-player-count{display:inline-flex;align-items:center;gap:4px;padding:3px 6px;border:1px solid var(--line);border-radius:999px;font-size:9px;line-height:1}.deck-player-count i{width:14px;height:14px;display:grid;place-items:center;border-radius:50%;font-size:8px;font-style:normal;font-weight:900}.deck-player-count strong{color:var(--ink);font-size:9px}.deck-player-count em{color:var(--muted);font-size:8px;font-style:normal}.deck-player-count.member{background:var(--blue-50);border-color:#cfe3f8}.deck-player-count.member i{color:#fff;background:var(--blue-600)}.deck-player-count.opponent{background:var(--purple-bg);border-color:#ddd2fb}.deck-player-count.opponent i{color:#fff;background:var(--purple)}.deck-rate>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.deck-rate>div strong{font-size:18px}.deck-rate>div span,.deck-rate>small{color:var(--muted);font-size:10px}.deck-rate-track{position:relative;display:block;height:9px;margin:8px 0 5px;background:#e9edf2;border-radius:8px}.deck-rate-fill{display:block;height:100%;background:var(--blue-600);border-radius:8px}.deck-rate-track i{position:absolute;top:-4px;width:3px;height:17px;margin-left:-1px;background:var(--gold-600);border:1px solid #fff;border-radius:2px}.deck-volume{text-align:right}.deck-volume strong,.deck-volume span,.deck-volume small{display:block}.deck-volume strong{font-size:20px}.deck-volume span{color:var(--muted);font-size:10px}.deck-volume small{margin-top:5px;color:var(--muted-2);font-size:9px;line-height:1.35}.deck-source-note{margin-top:18px}.deck-empty{padding:46px!important}.member-deck-list{display:grid;gap:9px}.member-deck-row{padding:12px;background:#f9fbfd;border:1px solid var(--line);border-radius:11px}.member-deck-head,.member-deck-foot{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.member-deck-head{margin-bottom:10px}.member-deck-head>div:last-child{text-align:right}.member-deck-head strong,.member-deck-head span{display:block}.member-deck-head strong{font-size:12px}.member-deck-head span{margin-top:3px;color:var(--muted);font-size:9px}.member-deck-row .deck-cards{gap:4px}.member-deck-foot{margin-top:9px;color:var(--muted);font-size:9px}.member-deck-foot strong{color:var(--ink)}
@media(max-width:1180px){.deck-ranking-row{grid-template-columns:26px minmax(360px,1fr) 160px 90px}.deck-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.deck-ranking-row{grid-template-columns:26px minmax(0,1fr) 80px}.deck-rate{grid-column:2/-1}.deck-volume{grid-column:3;grid-row:1}.deck-ranking-legend{display:none}.deck-cards.compact{max-width:none}.deck-filter-label{width:100%;justify-content:space-between}.deck-filter-label .filter-select{flex:1}.deck-toolbar .result-count{width:100%;margin-left:0}.deck-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.deck-ranking-list{padding:0 14px 14px}.deck-ranking-row{grid-template-columns:24px minmax(0,1fr);gap:10px}.deck-volume{grid-column:2;grid-row:auto;display:flex;align-items:baseline;justify-content:flex-start;gap:6px;text-align:left}.deck-volume strong,.deck-volume span{display:inline}.deck-volume small{margin:0 0 0 auto}.deck-rate{grid-column:1/-1}.deck-card small{font-size:7px}.member-deck-head,.member-deck-foot{display:block}.member-deck-head>div:last-child{margin-top:7px;text-align:left}.member-deck-foot span{display:block;margin-top:4px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Current war — leaderboard snapshot visual target */
.war-capacity-alert{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:0 22px 16px;padding:15px 16px;color:#62450b;background:var(--gold-100);border:1px solid #edcf7d;border-radius:11px}.war-capacity-alert .eyebrow{color:#9a6905}.war-capacity-alert strong,.war-capacity-alert p{display:block}.war-capacity-alert strong{margin-top:5px;font-size:13px;line-height:1.35}.war-capacity-alert p{max-width:780px;margin:6px 0 0;font-size:10px;line-height:1.55}.war-capacity-alert .war-help>summary{color:#7c5607;background:#fff8e8;border-color:#e6c873}
.war-snapshot-header{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin:0 0 22px;padding:4px 2px 0}.war-snapshot-header h1{margin:8px 0 0;font-size:clamp(30px,3.4vw,44px);line-height:1;letter-spacing:-.045em}.war-snapshot-header p{margin:11px 0 0;color:var(--muted);font-size:13px}.war-snapshot-header p b{padding:0 5px;color:#9aa5b2}.war-snapshot-tools{display:flex;align-items:flex-start;gap:10px}.war-snapshot-tools>.war-help{margin-top:-46px}.war-snapshot-tools .source-badge{display:grid;grid-template-columns:8px auto;gap:2px 7px;padding:10px 13px}.war-snapshot-tools .source-badge span{grid-row:1}.war-snapshot-tools .source-badge strong{font-size:12px;line-height:1}.war-snapshot-tools .source-badge small{grid-column:1/-1;font-size:10px;font-weight:750}.live-standings-card,.projection-preview-card,.member-action-card{border-radius:14px;box-shadow:0 3px 12px rgba(15,31,50,.055)}.standings-section-head{align-items:center;padding-bottom:12px}.standings-section-head>div:last-child{display:flex;align-items:center;gap:10px}.standings-section-head em{color:var(--muted);font-size:10px;font-weight:650}.compact-section-head,.member-summary-head{align-items:center;padding-bottom:10px}.live-standings-table{table-layout:fixed;min-width:0}.live-standings-table th:nth-child(1){width:7%}.live-standings-table th:nth-child(2){width:27%}.live-standings-table th:nth-child(3){width:19%}.live-standings-table th:nth-child(4){width:14%}.live-standings-table th:nth-child(5){width:19%}.live-standings-table th:nth-child(6){width:14%}.live-standings-table th{padding-top:11px;padding-bottom:11px;vertical-align:bottom}.live-standings-table th small{display:block;margin-top:2px;color:#9aa5b2;font-size:8px;font-weight:700;text-transform:none;letter-spacing:0}.live-standing-row td{height:72px;padding:12px 10px;vertical-align:middle}.live-standing-row.selected td{background:#eff6ff}.live-standing-row.selected td:first-child{box-shadow:inset 3px 0 0 var(--blue-600)}.live-rank span{width:28px;height:28px;border:1px solid #d4dbe4;color:#344154;background:#f4f6f8;box-shadow:inset 0 -2px 0 rgba(18,31,47,.08);border-radius:7px}.live-standing-row:first-child .live-rank span{color:#7f5a00;background:var(--gold-100);border-color:#efcf70}.live-clan{position:relative}.live-clan strong{display:inline;vertical-align:middle;font-size:12px;line-height:1.2}.you-badge{display:inline-block!important;margin:0 0 0 6px!important;padding:2px 4px;color:#fff!important;background:var(--blue-600);border-radius:4px;font-size:7px!important;font-weight:900;text-transform:uppercase}.live-primary strong{font-size:17px!important}.live-primary small{margin-top:5px;font-size:7px}.live-river strong,.live-battles strong,.live-hourly strong{font-size:13px!important}.standings-battle-track{display:block;width:100%;height:5px;margin-top:7px;overflow:hidden;background:#e4e9ef;border-radius:999px}.standings-battle-track i{display:block;height:100%;background:var(--blue-700);border-radius:inherit}.live-hourly strong,.live-hourly small{display:inline!important}.live-hourly small{margin-left:3px!important;font-size:11px!important}.live-hourly.hourly-up{color:var(--green)}.live-hourly.hourly-down{color:var(--red)}.live-hourly.hourly-unknown{color:var(--muted)}.projection-preview-grid{grid-template-columns:1.25fr repeat(4,minmax(0,1fr));gap:0;padding:3px 22px 16px}.projection-preview-grid>div{display:flex;min-height:112px;flex-direction:column;justify-content:center;padding:13px 15px;background:#fff;border:0;border-left:1px solid #e7ebf0;border-radius:0;text-align:center}.projection-preview-grid>div:first-child{border-left:0}.projection-preview-grid span{min-height:24px;color:#556479;font-size:8px;line-height:1.35;letter-spacing:0}.projection-preview-grid strong{margin-top:8px;font-size:19px}.projection-preview-grid small{min-height:20px;margin-top:7px;font-size:8px}.projection-preview-grid .projection-finish{align-items:flex-start;color:var(--ink)!important;background:#fff8e6!important;border:1px solid #f1dfaa!important;border-radius:10px;text-align:left}.projection-finish span,.projection-finish small{min-height:0;color:#27364a}.projection-finish span{font-size:10px;font-weight:850;text-transform:none}.projection-finish small{margin-top:3px}.projection-finish strong{margin-top:9px;color:#bd7e05;font-size:27px}.projection-finish em{margin-top:8px;color:#5d6979;font-size:8px;font-style:normal}.war-drilldown{margin-top:0}.war-drilldown>summary{min-height:42px;justify-content:center;color:var(--blue-700);background:#fff;border-top:1px solid #e7ebf0}.war-drilldown>summary:before{display:none}.war-drilldown>summary span{margin-right:0}.war-drilldown>summary strong{margin-left:auto;color:var(--blue-700);font-size:20px;line-height:1}.member-action-card .war-status-summary{display:flex;align-items:center;gap:8px;padding-bottom:13px}.war-status-summary button{margin-left:auto;padding:6px 2px;color:var(--blue-700);background:transparent;border:0;font-size:10px;font-weight:850}.war-status-summary button b{margin-left:5px;font-size:16px}.member-action-card>.table-wrap{border-top:1px solid #edf0f4}.member-action-row td{height:70px}.member-action-row.needs-action td{background:#fff5f6}.member-action-row.complete td{background:#fff}.member-action-row .war-rank-avatar{color:#835d06;background:var(--gold-100);border:1px solid #efd377;box-shadow:none}.member-action-row .status-chip{white-space:nowrap}.member-action-row .row-button{min-width:0;padding:6px 8px}.member-drilldown{margin:0;border-width:1px 0 0;border-radius:0}.member-drilldown>summary{background:#fbfcfe}.member-drilldown[open]>summary{position:sticky;top:66px;z-index:3}.source-note{margin-top:18px}

@media(max-width:720px){
  .war-snapshot-header{align-items:flex-start;margin-bottom:18px}.war-snapshot-header h1{font-size:31px}.war-snapshot-header p{font-size:12px}.war-snapshot-tools{flex-direction:column;align-items:flex-end}.war-snapshot-tools>.war-help{margin-top:-4px}.war-snapshot-tools .source-badge{margin-top:6px}.standings-section-head{display:flex;padding:16px 15px 12px}.standings-section-head em{font-size:9px}.live-standings-card>.table-wrap{overflow:hidden}.live-standings-table{display:table;min-width:0}.live-standings-table thead{display:table-header-group}.live-standings-table tbody{display:table-row-group}.live-standing-row{display:table-row;padding:0;border:0}.live-standing-row td,.live-standing-row.selected td{display:table-cell;height:73px;padding:11px 7px;background:transparent;border-top:1px solid var(--line)}.live-standing-row.selected td{background:#eff6ff}.live-standing-row.selected td:first-child{box-shadow:inset 3px 0 0 var(--blue-600)!important}.live-standing-row .live-rank,.live-standing-row .live-clan,.live-standing-row .live-primary,.live-standing-row td:nth-child(4),.live-standing-row td:nth-child(5),.live-standing-row td:nth-child(6){grid-column:auto;grid-row:auto;text-align:inherit}.live-standing-row .numeric{text-align:right}.live-standing-row .live-clan{text-align:left}.live-rank span{width:26px;height:26px;font-size:10px}.live-clan strong{font-size:11px}.live-primary strong{font-size:15px!important}.live-primary small{font-size:6.5px}.live-river strong,.live-battles strong,.live-hourly strong{font-size:11px!important}.live-battles{padding-left:3px!important;padding-right:3px!important}.standings-battle-track{height:4px}.live-hourly small{font-size:9px!important}.compact-section-head,.member-summary-head{padding:15px 15px 8px}.projection-preview-grid{grid-template-columns:1.18fr repeat(4,minmax(0,1fr));gap:0;padding:3px 15px 13px}.projection-preview-grid>div{min-height:104px;padding:10px 8px}.projection-preview-grid span{font-size:7px}.projection-preview-grid strong{font-size:16px}.projection-preview-grid small{font-size:7px}.projection-finish strong{font-size:25px}.projection-finish span{font-size:9px}.war-drilldown{margin:0}.member-action-card .war-status-summary{padding:0 15px 12px}.member-action-card>.table-wrap{overflow:hidden}.member-action-table{display:table;min-width:0}.member-action-table thead{display:none}.member-action-table tbody{display:table-row-group}.member-action-row{display:table-row;padding:0;border:0}.member-action-row td{display:table-cell;height:76px;padding:10px 7px!important;background:transparent!important;border-top:1px solid var(--line)!important;vertical-align:middle}.member-action-row.needs-action td{background:#fff5f6!important}.member-action-row td:nth-child(1){width:31%;text-align:left}.member-action-row td:nth-child(2){width:15%;text-align:center}.member-action-row td:nth-child(3){width:13%;text-align:right}.member-action-row td:nth-child(4){width:14%;text-align:right}.member-action-row td:nth-child(5){width:18%;text-align:right}.member-action-row td:nth-child(6){width:9%;text-align:right}.member-action-row .player-cell{gap:7px}.member-action-row .player-cell .avatar{width:31px;height:31px;font-size:9px}.member-action-row .player-cell strong{font-size:10px}.member-action-row .player-cell small{font-size:7px}.member-action-row td>strong,.member-action-next>strong{font-size:10px}.member-action-row td>small,.member-action-next>small{font-size:7px}.member-action-row .status-chip{padding:4px 5px;font-size:7px}.member-action-row .row-button{font-size:8px}.member-drilldown>.table-wrap{overflow:hidden}.war-help>div{position:fixed;left:18px;right:18px;top:145px;width:auto}.source-note{margin-bottom:82px}
}

@media(max-width:500px){.war-snapshot-header{gap:8px}.war-snapshot-header>div:first-child{min-width:0;flex:1}.war-snapshot-header h1{font-size:25px;white-space:nowrap}.war-snapshot-header p{font-size:10px}.war-snapshot-tools{flex:0 0 74px}.war-snapshot-tools .source-badge{padding:8px}.standings-section-head em{display:none}.live-standings-table th:nth-child(1){width:8%}.live-standings-table th:nth-child(2){width:25%}.live-standings-table th:nth-child(3){width:18%}.live-standings-table th:nth-child(4){width:13%}.live-standings-table th:nth-child(5){width:20%}.live-standings-table th:nth-child(6){width:16%}.live-standings-table th{padding:9px 2px;font-size:7px;letter-spacing:.08em}.live-standing-row td,.live-standing-row.selected td{overflow:hidden;padding:9px 2px}.live-clan strong{display:-webkit-box;overflow:hidden;font-size:8.5px;line-height:1.25;white-space:normal!important;-webkit-box-orient:vertical;-webkit-line-clamp:2}.you-badge{display:block!important;width:max-content;margin:3px 0 0!important}.live-primary strong{font-size:13px!important;white-space:nowrap}.live-primary small{display:none}.live-river strong,.live-battles strong{font-size:9.5px!important;white-space:nowrap}.live-hourly strong{font-size:9px!important;white-space:nowrap}.live-hourly small{margin-left:1px!important;font-size:7px!important}.projection-preview-grid{overflow-x:auto;grid-template-columns:135px repeat(4,88px)}.member-action-row td:nth-child(2),.member-action-row td:nth-child(4){display:none}.member-action-row td:nth-child(1){width:36%}.member-action-row td:nth-child(3){width:18%}.member-action-row td:nth-child(5){width:29%}.member-action-row td:nth-child(6){width:17%}}

/* Player card collections and deck readiness */
@media(max-width:720px){.war-capacity-alert{margin:0 15px 14px;padding:13px}.war-capacity-alert strong{font-size:12px}.war-capacity-alert p{font-size:9px}.war-capacity-alert .war-help{flex:0 0 auto}}
.deck-readiness-divider{width:100%;height:1px;margin:2px 0;background:var(--line)}.deck-player-filter{min-width:320px}.deck-player-filter .filter-select{min-width:230px}.deck-collection-callout{margin:-2px 0 16px}.deck-card.ready{border-color:#4ab47d;box-shadow:0 0 0 2px rgba(37,135,91,.16)}.deck-card.underleveled{border-color:#dfa13c;box-shadow:0 0 0 2px rgba(229,170,50,.18)}.deck-card.missing{border-color:#dc6878;box-shadow:0 0 0 2px rgba(214,76,95,.16);filter:saturate(.72)}.deck-card.ready small{background:rgba(26,112,73,.93)}.deck-card.underleveled small{background:rgba(160,101,12,.94)}.deck-card.missing small{background:rgba(171,47,64,.94)}.deck-readiness-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 7px;border:1px solid #e3c77e;border-radius:999px;color:#86610d;background:#fff8e4;font-size:8px}.deck-readiness-chip strong,.deck-readiness-chip span{font-size:8px}.deck-readiness-chip.complete{color:var(--green);background:var(--green-bg);border-color:#b9e4cc}.deck-readiness-chip.partial{color:#8f6510}.card-collection-empty{display:grid;gap:5px}.card-collection-empty strong{font-size:11px}.card-collection-empty span{color:var(--muted);font-size:10px;line-height:1.45}.collection-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:10px}.collection-summary div{padding:10px 8px;background:#f7f9fc;border:1px solid var(--line);border-radius:9px}.collection-summary strong,.collection-summary span{display:block}.collection-summary strong{font-size:16px}.collection-summary span{margin-top:3px;color:var(--muted);font-size:9px}.collection-details{margin-top:8px;border:1px solid var(--line);border-radius:11px;background:#fbfcfe}.collection-details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;cursor:pointer;list-style:none;font-size:11px;font-weight:850}.collection-details>summary::-webkit-details-marker{display:none}.collection-details>summary:before{content:"+";width:20px;height:20px;display:grid;place-items:center;flex:0 0 auto;color:var(--blue-700);background:var(--blue-50);border-radius:6px}.collection-details[open]>summary:before{content:"−"}.collection-details>summary span{margin-right:auto}.collection-details>summary strong{color:var(--muted);font-size:10px}.collection-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:0 10px 10px}.collection-card-tile{min-width:0;display:grid;grid-template-columns:54px minmax(0,1fr);gap:9px;align-items:center;padding:7px;background:#fff;border:1px solid #e7ebf0;border-radius:9px}.collection-card-tile>img,.collection-card-placeholder{width:54px;aspect-ratio:3/4;border-radius:7px;background:#eef2f7;object-fit:cover}.collection-card-placeholder{display:grid;place-items:center;color:var(--muted);font-size:10px;font-weight:900}.collection-card-copy{min-width:0}.collection-card-copy>div:first-child{display:grid;gap:4px}.collection-card-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.collection-level{width:max-content;padding:3px 5px;color:#fff;background:var(--navy-800);border-radius:5px;font-size:8px;font-weight:850}.collection-card-copy>small{display:block;margin-top:6px;overflow:hidden;color:var(--muted);font-size:8px;line-height:1.35;text-overflow:ellipsis}.collection-card-badges{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.collection-card-badge{padding:3px 5px;border-radius:999px;font-size:7px;font-weight:850}.collection-card-badge.star{color:#8b650c;background:var(--gold-100)}.collection-card-badge.evolution{color:var(--purple);background:var(--purple-bg)}
@media(max-width:800px){.deck-player-filter{min-width:0}.deck-player-filter .filter-select{min-width:0}.deck-readiness-chip{width:100%;justify-content:space-between}.collection-card-grid{grid-template-columns:1fr}}
@media(max-width:520px){.collection-summary{grid-template-columns:repeat(2,1fr)}.collection-card-tile{grid-template-columns:48px minmax(0,1fr)}.collection-card-tile>img,.collection-card-placeholder{width:48px}}

/* Final current-war fidelity adjustments */
.projection-preview-grid .projection-finish{grid-column:auto}.member-action-table th:nth-child(1){width:38%}.member-action-table th:nth-child(2){width:14%}.member-action-table th:nth-child(3){width:16%}.member-action-table th:nth-child(4){width:22%}.member-action-table th:nth-child(5){width:10%}.member-action-state{display:block;width:max-content;margin:5px 0 0 45px;font-size:8px;font-weight:800}.member-action-state.status-gap{color:var(--red)}.member-action-state.status-complete{color:var(--green)}.member-action-state.status-credit{color:var(--purple)}.member-action-state.status-neutral{color:var(--muted)}
@media(max-width:720px){.projection-preview-grid .projection-finish{grid-column:auto}.projection-preview-grid span{font-size:8px}.projection-preview-grid strong{font-size:17px}.projection-preview-grid small{font-size:8px}.member-action-row td:nth-child(1){width:38%;text-align:left}.member-action-row td:nth-child(2){width:14%;text-align:right}.member-action-row td:nth-child(3){width:16%;text-align:right}.member-action-row td:nth-child(4){width:22%;text-align:right}.member-action-row td:nth-child(5){width:10%;text-align:right}.member-action-row .player-cell strong{font-size:11px}.member-action-row td>strong,.member-action-next>strong{font-size:11px}.member-action-row td>small,.member-action-next>small{font-size:8px}.member-action-state{margin-left:38px;font-size:7px}}
@media(max-width:500px){.member-action-row td:nth-child(1){width:42%}.member-action-row td:nth-child(2){width:15%;display:table-cell}.member-action-row td:nth-child(3){width:17%}.member-action-row td:nth-child(4){width:26%;display:table-cell}.member-action-row td:nth-child(5){display:none}}

/* Current-war reference fidelity and retained missed-battle history */
.live-clan-inner{display:flex;min-width:0;align-items:center;gap:8px}.live-clan img{width:29px;height:34px;flex:0 0 auto;object-fit:contain}.live-clan-inner>span{min-width:0}.live-efficiency{display:grid!important;gap:1px}.live-mobile-stats{display:none!important}.live-standing-row td:nth-child(n+3){border-left:1px solid #edf0f4}.all-members-visible{margin-left:auto;color:var(--blue-700);font-size:10px;font-weight:850}.current-war-missed-card{margin-top:18px;overflow:hidden}.current-war-missed-card .member-summary-head p{margin:5px 0 0;color:var(--muted);font-size:10px}.current-war-missed-list{display:grid}.current-war-missed-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,1.5fr) 120px auto;gap:14px;align-items:center;padding:14px 20px;border-top:1px solid var(--line);background:#fff8f9}.missed-day-list{display:flex;flex-wrap:wrap;gap:6px}.missed-day-list span{display:flex;gap:6px;padding:6px 8px;color:var(--red);background:var(--red-bg);border-radius:8px;font-size:9px}.missed-period-total strong,.missed-period-total small,.missed-period-total em{display:block}.missed-period-total strong{color:var(--red);font-size:16px}.missed-period-total small{margin-top:2px;color:var(--muted);font-size:8px}.missed-period-total em{margin-top:5px;color:var(--purple);font-size:8px;font-style:normal;font-weight:800}
@media(max-width:720px){.live-clan-inner{gap:5px}.live-clan img{width:24px;height:29px}.all-members-visible{width:100%;margin:3px 0 0}.member-action-card .war-status-summary{flex-wrap:wrap}.current-war-missed-row{grid-template-columns:minmax(0,1fr) auto;padding:13px 15px}.missed-day-list{grid-column:1/-1}.missed-period-total{text-align:right}.current-war-missed-row .row-button{grid-column:2;grid-row:2}.live-standing-row td:nth-child(n+3){border-left:0}}
@media(max-width:500px){.war-snapshot-header{padding-top:12px}.live-standings-table{width:100%;table-layout:fixed}.live-standings-table th:nth-child(1){width:8%}.live-standings-table th:nth-child(2){width:38%}.live-standings-table th:nth-child(3){width:20%}.live-standings-table th:nth-child(4),.live-standing-row .live-river{display:none!important}.live-standings-table th:nth-child(5){width:20%}.live-standings-table th:nth-child(6){width:14%}.live-standings-table th:nth-child(3),.live-standings-table th:nth-child(5),.live-standings-table th:nth-child(6){text-align:center}.live-standing-row td,.live-standing-row.selected td{height:79px}.live-standing-row .live-primary,.live-standing-row .live-battles,.live-standing-row .live-hourly{text-align:center!important}.live-standing-row .live-primary,.live-standing-row .live-battles{padding-right:4px!important;padding-left:4px!important}.live-clan img{width:22px;height:27px}.live-clan strong{font-size:9px}.live-primary strong{font-size:12px!important}.live-primary .live-efficiency{display:none!important}.live-primary .live-mobile-stats{display:grid!important;gap:1px;margin-top:3px;color:var(--muted);font-size:7px;line-height:1.2;white-space:nowrap;font-variant-numeric:tabular-nums}.live-mobile-stats span{display:block}.live-mobile-stats span:first-child{color:var(--blue-700);font-weight:850}.live-mobile-stats b{font-size:6.5px;text-transform:uppercase;letter-spacing:.04em}.live-battles .standings-battle-track{width:calc(100% - 8px);margin-right:auto;margin-left:auto}.current-war-missed-row{gap:10px}.missed-day-list span{font-size:8px}}

/* Compact rankings scorecard */
.ranking-control-card{overflow:hidden;margin-bottom:16px;padding:18px 20px}.ranking-filter-grid{display:grid;grid-template-columns:minmax(220px,1.3fr) minmax(210px,.8fr) minmax(170px,.65fr);gap:14px;align-items:end}.ranking-filter-grid label,.ranking-filter-grid fieldset{min-width:0;margin:0;padding:0;border:0}.ranking-filter-grid label>span,.ranking-filter-grid legend{display:block;margin-bottom:7px;color:var(--muted);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.ranking-filter-grid .filter-select{width:100%}.ranking-filter-grid fieldset{display:grid;grid-template-columns:repeat(2,1fr);padding:4px;background:#e9eef4;border-radius:10px}.ranking-filter-grid legend{grid-column:1/-1}.ranking-order-button{min-height:34px;padding:7px 10px;color:var(--muted);background:transparent;border:0;border-radius:7px;font-size:10px;font-weight:850}.ranking-order-button.active{color:var(--blue-700);background:#fff;box-shadow:var(--shadow-sm)}.ranking-coverage{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:15px;padding-top:13px;border-top:1px solid var(--line)}.ranking-coverage strong{font-size:12px}.ranking-coverage span{color:var(--muted);font-size:10px;text-align:right}.ranking-scorecard{overflow:hidden}.ranking-scorecard-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:19px 20px 14px;border-bottom:1px solid var(--line)}.ranking-scorecard-head .eyebrow{margin-bottom:5px}.ranking-scorecard-head h2{margin:0;font-size:20px}.ranking-scorecard-head>span{color:var(--muted);font-size:10px}.ranking-list{display:grid}.ranking-player-card{background:#fff;border-top:1px solid var(--line)}.ranking-player-card:first-child{border-top:0}.ranking-player-card[open]{background:#f9fbfe}.ranking-player-card>summary{display:grid;grid-template-columns:38px minmax(220px,1fr) minmax(140px,.55fr) 78px 20px;gap:12px;align-items:center;min-height:76px;padding:12px 20px;cursor:pointer;list-style:none}.ranking-player-card>summary::-webkit-details-marker{display:none}.ranking-position{width:30px;height:30px;display:grid;place-items:center;color:#765600;background:var(--gold-100);border-radius:9px;font-size:11px;font-weight:900}.ranking-player{display:flex;min-width:0;align-items:center;gap:10px}.ranking-player>span:last-child{min-width:0}.ranking-player strong,.ranking-player small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ranking-player strong{font-size:12px}.ranking-player small{margin-top:4px;color:var(--muted);font-size:8px}.ranking-primary strong,.ranking-primary small{display:block}.ranking-primary strong{font-size:18px;font-variant-numeric:tabular-nums}.ranking-primary small{margin-top:4px;color:var(--muted);font-size:9px}.ranking-missed-badge{display:grid;justify-items:center;gap:1px;padding:7px 9px;color:var(--green);background:var(--green-bg);border-radius:10px}.ranking-missed-badge.has-misses{color:var(--red);background:var(--red-bg)}.ranking-missed-badge strong{font-size:14px}.ranking-missed-badge small{font-size:7px;font-weight:850;text-transform:uppercase}.ranking-chevron{color:var(--blue-700);font-size:17px;transition:transform .18s}.ranking-player-card[open] .ranking-chevron{transform:rotate(180deg)}.ranking-player-detail{padding:0 20px 18px 70px}.ranking-detail-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.ranking-detail-metrics>span{padding:10px;background:#fff;border:1px solid var(--line);border-radius:9px}.ranking-detail-metrics small,.ranking-detail-metrics strong,.ranking-detail-metrics em{display:block}.ranking-detail-metrics small{color:var(--muted);font-size:8px;font-weight:800}.ranking-detail-metrics strong{margin-top:5px;font-size:14px}.ranking-detail-metrics em{margin-top:3px;color:var(--muted);font-size:8px;font-style:normal}.ranking-week-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:8px}.ranking-week{display:grid;gap:7px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:9px}.ranking-week>span strong,.ranking-week>span small{display:block}.ranking-week>span strong{font-size:10px}.ranking-week>span small{margin-top:3px;color:var(--muted);font-size:8px}.ranking-week>em{width:max-content;padding:3px 6px;color:var(--green);background:var(--green-bg);border-radius:999px;font-size:7px;font-style:normal;font-weight:850}.ranking-week.missed{background:var(--red-bg);border-color:#f6cbd1}.ranking-week.missed>em{color:var(--red);background:#ffe0e5}.ranking-week.excused{background:var(--purple-bg);border-color:#ddd2fb}.ranking-week.excused>em{color:var(--purple);background:#e8dfff}.ranking-week.untracked{background:#f4f6f8}.ranking-week.untracked>em{color:var(--muted);background:#e5e9ee}.ranking-player-detail>.war-mobile-player-button{margin-top:10px}.war-result-note{margin-top:18px}

/* Deck filter hierarchy and leading-deck navigation */
.deck-leading-kpi{display:block;width:100%;color:var(--ink);background:#fff;border:1px solid var(--line);text-align:left;cursor:pointer}.deck-leading-kpi:hover{border-color:#a8c9eb;box-shadow:0 8px 20px rgba(20,67,112,.1)}.deck-leading-kpi:disabled{cursor:default}.deck-filter-card{margin-bottom:18px;padding:18px 20px}.deck-filter-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.deck-filter-head .eyebrow{margin-bottom:4px}.deck-filter-head h2{margin:0;font-size:19px}.deck-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.deck-filter-label{display:grid;align-content:start;gap:6px}.deck-filter-label>span{font-size:9px;text-transform:uppercase;letter-spacing:.05em}.deck-filter-label .filter-select{width:100%;min-width:0}.deck-player-fit{margin-top:13px;border:1px solid var(--line);border-radius:10px;background:#fbfcfe}.deck-player-fit>summary{display:flex;align-items:center;gap:12px;padding:11px 13px;cursor:pointer;list-style:none}.deck-player-fit>summary::-webkit-details-marker{display:none}.deck-player-fit>summary:before{content:"+";width:21px;height:21px;display:grid;place-items:center;color:var(--blue-700);background:var(--blue-50);border-radius:6px;font-weight:900}.deck-player-fit[open]>summary:before{content:"−"}.deck-player-fit>summary span{font-size:11px;font-weight:850}.deck-player-fit>summary small{margin-left:auto;color:var(--muted);font-size:9px;text-align:right}.deck-player-fit-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:10px;padding:0 13px 13px}.deck-player-filter,.deck-player-filter .filter-select{min-width:0}.deck-filter-summary{margin:12px 0 0;color:var(--muted);font-size:9px;line-height:1.45}.deck-ranking-row:focus{outline:3px solid var(--blue-500);outline-offset:-2px;border-radius:9px}

@media(max-width:760px){.ranking-control-card{padding:15px}.ranking-filter-grid{grid-template-columns:1fr 1fr}.ranking-filter-grid label:first-child{grid-column:1/-1}.ranking-coverage{display:grid}.ranking-coverage span{text-align:left}.ranking-scorecard-head{padding:16px 15px 12px}.ranking-scorecard-head>span{display:none}.ranking-player-card>summary{grid-template-columns:30px minmax(0,1fr) auto 18px;gap:7px 9px;min-height:92px;padding:12px 14px}.ranking-position{width:28px;height:28px}.ranking-player{grid-column:2}.ranking-player .avatar{width:36px;height:36px}.ranking-player strong{font-size:11px}.ranking-primary{grid-column:2;grid-row:2}.ranking-primary strong{font-size:15px}.ranking-missed-badge{grid-column:3;grid-row:1/3}.ranking-chevron{grid-column:4;grid-row:1/3}.ranking-player-detail{padding:0 14px 14px 53px}.ranking-detail-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.ranking-week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.deck-filter-card{padding:15px}.deck-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.deck-player-fit>summary{align-items:flex-start}.deck-player-fit>summary small{max-width:55%}.deck-player-fit-grid{grid-template-columns:1fr}.deck-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:430px){.ranking-filter-grid{grid-template-columns:1fr}.ranking-filter-grid label:first-child{grid-column:auto}.ranking-player-detail{padding-left:14px}.ranking-week-grid{grid-template-columns:1fr 1fr}.deck-filter-grid{grid-template-columns:1fr 1fr}.deck-filter-label>span{min-height:22px}.deck-player-fit>summary{display:grid;grid-template-columns:21px 1fr;gap:5px 9px}.deck-player-fit>summary small{grid-column:2;max-width:none;margin-left:0;text-align:left}}
.ranking-week-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:12px}.ranking-week-heading strong{font-size:10px}.ranking-week-heading span{color:var(--muted);font-size:8px}
.member-ranking-filter-grid{grid-template-columns:minmax(250px,1.25fr) minmax(220px,1fr) minmax(190px,.75fr) minmax(150px,.6fr)}.member-ranking-filter-grid .member-ranking-search{min-width:0}.member-ranking-filter-grid .member-ranking-search .search-field{width:100%;min-width:0}.member-ranking-filter-grid .member-ranking-search .search-field>span{margin:0;color:var(--muted);font-size:11px}.member-ranking-filter-grid .member-ranking-search input{width:100%}.member-ranking-order{min-width:0}.member-ranking-order>span{display:block;margin-bottom:7px;color:var(--muted);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.member-ranking-order-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:4px;background:#e9eef4;border-radius:10px}.member-account-filter{grid-column:1/-1!important;display:block!important;padding:0!important;background:transparent!important;border-radius:0!important}.member-account-filter-buttons{display:flex;flex-wrap:wrap;gap:7px}.member-account-filter-button{min-height:34px;padding:7px 11px;color:var(--muted);background:#f3f6fa;border:1px solid var(--line);border-radius:999px;font-size:10px;font-weight:850}.member-account-filter-button span{display:inline-grid;min-width:18px;height:18px;margin-left:5px;padding:0 5px;place-items:center;color:inherit;background:#fff;border-radius:999px;font-size:8px}.member-account-filter-button.active{color:var(--blue-700);background:var(--blue-100);border-color:#b9d8f6}.member-account-filter-button:disabled{opacity:.5;cursor:not-allowed}.member-access-badges{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.member-access-badge{display:inline-flex;align-items:center;gap:4px;width:max-content;padding:3px 6px;border-radius:999px;font-size:7px;font-weight:850;line-height:1.2;white-space:nowrap}.member-access-badge i{display:block;width:5px;height:5px;flex:0 0 auto;background:currentColor;border-radius:50%}.member-access-badge.is-registered{color:var(--green);background:var(--green-bg)}.member-access-badge.is-discord{color:#5865f2;background:#eef0ff}.member-access-badge.is-missing{color:#a46600;background:#fff3d4}.member-access-badge.is-unknown{color:var(--muted);background:#edf1f5}
@media(max-width:1180px){.member-ranking-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.member-ranking-filter-grid .member-ranking-search{grid-column:1/-1}}
@media(max-width:520px){.member-ranking-filter-grid{grid-template-columns:1fr}.member-ranking-filter-grid .member-ranking-search{grid-column:auto}}

/* Google Cloud access management */
.access-setup-state,.access-signin-card{min-height:280px;display:grid;grid-template-columns:72px minmax(0,620px);gap:22px;align-content:center;justify-content:center;padding:46px}.access-shield{width:68px;height:72px;display:grid;place-items:center;color:var(--gold-300);background:linear-gradient(145deg,var(--navy-800),var(--navy-950));border-radius:18px 18px 24px 24px;font-size:28px;box-shadow:var(--shadow-md)}.access-setup-state h2,.access-signin-card h2{margin:8px 0;font-size:24px}.access-setup-state p,.access-signin-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.access-setup-state code{display:inline-block;margin-top:17px;padding:8px 10px;color:#315a84;background:var(--blue-50);border-radius:7px;font-size:11px}.google-signin{min-height:44px;margin-top:20px}.access-error,.access-dialog-error{margin-top:14px;padding:10px 12px;color:var(--red);background:var(--red-bg);border:1px solid #f4c6cd;border-radius:9px;font-size:11px}.access-dialog-error:empty{display:none}.access-session-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:-4px 0 16px;padding:13px 16px;background:#fff;border:1px solid var(--line);border-radius:12px}.access-session-bar>div:last-child{display:flex;align-items:center;gap:9px}.access-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.access-stat{padding:17px 18px}.access-stat span,.access-stat strong,.access-stat small{display:block}.access-stat span{color:var(--muted);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.access-stat strong{margin-top:10px;font-size:27px}.access-stat small{margin-top:4px;color:var(--muted);font-size:9px}.access-invite-card,.access-roster-card,.access-audit-card{margin-bottom:16px;overflow:hidden}.access-invite-form{display:grid;grid-template-columns:.75fr 1.2fr .7fr 1.3fr auto;gap:10px;align-items:end;padding:0 20px 20px}.access-invite-form label,.access-dialog .field-label{display:grid;gap:6px}.access-invite-form label>span,.access-dialog .field-label{color:var(--muted);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.access-invite-form input,.access-invite-form select,.access-dialog select,.access-dialog textarea{width:100%;min-height:38px;padding:9px 10px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:11px}.access-invite-form .button{min-height:38px}.access-filters{display:grid;grid-template-columns:minmax(260px,1fr) 190px 160px;gap:10px;padding:0 20px 15px}.access-filters .filter-select{width:100%}.access-user-list{display:grid;border-top:1px solid var(--line)}.access-user-row{display:grid;grid-template-columns:minmax(240px,1.2fr) minmax(150px,.65fr) 95px 110px auto;gap:16px;align-items:center;padding:14px 20px;background:#fff;border-top:1px solid var(--line)}.access-user-row:first-child{border-top:0}.access-user-row.suspended{background:#fff9fa}.access-google-email{display:block;margin-top:3px;color:var(--muted);font-size:9px}.access-linked-players{display:flex;flex-wrap:wrap;gap:4px 10px;margin-top:6px}.access-linked-player{display:flex;min-width:0;align-items:baseline;gap:5px}.access-linked-player strong{color:var(--blue-700);font-size:10px}.access-linked-player small{color:var(--muted);font-size:8px}.access-level span,.access-level small,.access-last-seen span,.access-last-seen small{display:block}.access-level span,.access-last-seen span{font-size:11px;font-weight:850}.access-level small,.access-last-seen small{margin-top:4px;color:var(--muted);font-size:8px}.access-audit-list{display:grid;border-top:1px solid var(--line)}.access-audit-list article{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:11px;align-items:start;padding:13px 20px;border-top:1px solid var(--line)}.access-audit-list article:first-child{border-top:0}.audit-dot{width:8px;height:8px;margin-top:4px;background:var(--blue-500);border-radius:50%;box-shadow:0 0 0 4px var(--blue-50)}.access-audit-list strong{font-size:11px}.access-audit-list p{margin:3px 0 0;color:var(--muted);font-size:9px}.access-audit-list small{display:block;margin-top:5px;color:#53657a;font-size:9px}.access-audit-list time{color:var(--muted);font-size:9px;white-space:nowrap}.access-dialog-identity{display:grid;gap:4px;margin-bottom:16px;padding:12px;background:#f6f8fb;border:1px solid var(--line);border-radius:9px}.access-dialog-identity strong{font-size:13px}.access-dialog-identity small{color:var(--muted);font-size:10px}.access-dialog .field-label{margin-top:13px}.access-dialog textarea{resize:vertical;text-transform:none}.access-dialog .dialog-warning{margin-top:14px}
.access-signin-progress{text-align:left}.access-signin-progress>div>strong{font-size:15px}.signin-progress-line{display:flex;align-items:center;gap:9px;margin-top:18px;color:var(--blue-700)}.signin-progress-line>span{width:18px;height:18px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:messaging-spin .8s linear infinite}.signin-progress-line strong{font-size:11px}.signing-in-shield{animation:signin-pulse 1.5s ease-in-out infinite}@keyframes signin-pulse{50%{box-shadow:0 0 0 8px rgba(64,150,238,.13),var(--shadow-md)}}@media(prefers-reduced-motion:reduce){.signin-progress-line>span,.signing-in-shield{animation-duration:1.8s}}
@media(max-width:1050px){.access-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.access-invite-form{grid-template-columns:repeat(2,minmax(0,1fr))}.access-invite-form .access-reason-field{grid-column:1/-1}.access-invite-form .button{width:max-content}.access-user-row{grid-template-columns:minmax(210px,1fr) 145px 90px auto}.access-last-seen{display:none}}
@media(max-width:680px){.access-setup-state,.access-signin-card{grid-template-columns:1fr;justify-items:start;padding:25px 20px}.access-setup-state h2,.access-signin-card h2{font-size:20px}.access-session-bar{display:grid}.access-session-bar>div:last-child{justify-content:space-between}.access-summary{gap:8px}.access-stat{padding:14px}.access-stat strong{font-size:22px}.access-invite-form{grid-template-columns:1fr;padding:0 15px 15px}.access-invite-form .access-reason-field{grid-column:auto}.access-invite-form .button{width:100%}.access-filters{grid-template-columns:1fr 1fr;padding:0 15px 13px}.access-filters .search-field{grid-column:1/-1}.access-user-row{grid-template-columns:minmax(0,1fr) auto;gap:9px 12px;padding:14px 15px}.access-user-row .player-cell{grid-column:1}.access-level{grid-column:1}.access-user-row>div:nth-child(3){grid-column:2;grid-row:1}.access-user-row .row-button{grid-column:2;grid-row:2}.access-audit-list article{grid-template-columns:10px minmax(0,1fr);padding:13px 15px}.access-audit-list time{grid-column:2}.access-audit-list p{line-height:1.45}}

.messaging-hero{background:linear-gradient(140deg,#111c35,#35388a)}.messaging-game-mark{text-decoration:none;background:linear-gradient(145deg,var(--gold-300),var(--gold-500));color:var(--navy-950)}.messaging-channel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.messaging-channel-card{padding:22px}.messaging-channel-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:start}.messaging-channel-icon{width:45px;height:45px;display:grid;place-items:center;color:#fff;background:#5865f2;border-radius:13px;font-size:13px;font-weight:900}.messaging-channel-card[data-channel-card="sms"] .messaging-channel-icon{background:#2f9b68}.messaging-channel-head h2{margin:2px 0 5px;font-size:17px}.messaging-channel-head p{margin:0;color:var(--muted);font-size:11px;line-height:1.5}.messaging-age-check,.messaging-resume-check{display:flex;gap:9px;align-items:flex-start;margin-top:18px;color:#485a70;font-size:11px;line-height:1.45}.messaging-age-check input,.messaging-resume-check input{margin-top:2px}.messaging-actions{display:flex;align-items:center;gap:12px;margin-top:18px}.messaging-actions>span{color:var(--muted);font-size:10px;line-height:1.4}.messaging-preferences-card{margin-top:16px}.messaging-preferences-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end;padding:0 20px 20px}.messaging-preferences-form label:not(.messaging-resume-check){display:grid;gap:6px;color:var(--muted);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.messaging-preferences-form input[type="time"],.messaging-preferences-form select{min-height:40px;padding:9px 10px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:11px}.messaging-preferences-form .messaging-resume-check{align-self:center;grid-column:span 2;margin:0;text-transform:none;letter-spacing:0;font-weight:650}.messaging-admin-card{margin-bottom:16px;overflow:hidden}.messaging-admin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.messaging-admin-grid>div{padding:16px 20px;border-right:1px solid var(--line)}.messaging-admin-grid>div:last-child{border-right:0}.messaging-admin-grid span,.messaging-admin-grid strong,.messaging-admin-grid small{display:block}.messaging-admin-grid span{color:var(--muted);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.messaging-admin-grid strong{margin-top:8px;font-size:23px}.messaging-admin-grid small{margin-top:3px;color:var(--muted);font-size:9px}.messaging-readiness{display:flex;flex-wrap:wrap;gap:8px;padding:14px 20px}
@media(max-width:1050px){.messaging-preferences-form{grid-template-columns:repeat(2,minmax(0,1fr))}.messaging-preferences-form .messaging-resume-check{grid-column:1/-1}.messaging-preferences-form .button{width:max-content}}
@media(max-width:680px){.messaging-channel-grid{grid-template-columns:1fr}.messaging-channel-head{grid-template-columns:auto minmax(0,1fr)}.messaging-channel-head>.status-chip{grid-column:2;width:max-content}.messaging-actions{align-items:flex-start;flex-direction:column}.messaging-preferences-form{grid-template-columns:1fr;padding:0 15px 15px}.messaging-preferences-form .messaging-resume-check{grid-column:auto}.messaging-preferences-form .button{width:100%}.messaging-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.messaging-admin-grid>div:nth-child(2){border-right:0}.messaging-admin-grid>div:nth-child(-n+2){border-bottom:1px solid var(--line)}}
.sms-verification-stack{display:grid;gap:8px;width:100%}.sms-verification-stack form{display:flex;gap:8px}.sms-verification-stack input{min-width:0;flex:1;padding:9px 10px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:11px}.sms-verification-stack .button{min-height:40px}.sms-verification-stack small{color:var(--muted);font-size:9px;line-height:1.4}.messaging-operations-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:0 20px 20px}.messaging-operations-lists>div{padding:16px;background:#f8fafc;border:1px solid var(--line);border-radius:11px}.messaging-operations-lists h3{margin:0 0 10px;font-size:12px}.messaging-operations-lists article{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:start;padding:9px 0;border-top:1px solid var(--line)}.messaging-operations-lists article:first-of-type{border-top:0}.messaging-operations-lists strong,.messaging-operations-lists small{display:block}.messaging-operations-lists strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.messaging-operations-lists small,.messaging-operations-lists p{margin:4px 0 0;color:var(--muted);font-size:9px}@media(max-width:680px){.sms-verification-stack form{display:grid}.sms-verification-stack .button{width:100%}.messaging-operations-lists{grid-template-columns:1fr;padding:0 15px 15px}}
.admin-messaging-settings{margin-bottom:18px;padding:4px 20px 20px;background:linear-gradient(180deg,#f7f9ff,#fff);border:1px solid #cfd9f5;border-radius:var(--radius);box-shadow:var(--shadow)}.admin-messaging-settings-head{padding-left:2px;padding-right:2px}.admin-messaging-settings-head .eyebrow{display:block;margin-bottom:5px;color:#4a5eb5}.admin-messaging-channel-grid{margin-top:0}.admin-messaging-privacy{margin-top:16px}.messaging-identity-detail{display:grid;gap:3px;margin:16px 0 0;padding:11px 13px;color:#314258;background:#f5f8fc;border:1px solid var(--line);border-radius:9px;font-size:11px}.messaging-identity-detail strong,.messaging-identity-detail span{display:block}.messaging-identity-detail span{color:var(--muted);font-size:10px}.compact-loading{min-height:130px}.button:disabled{cursor:not-allowed;opacity:.55}
@media(max-width:680px){.admin-messaging-settings{padding:3px 14px 14px}.admin-messaging-settings-head{align-items:flex-start}.admin-messaging-settings-head>.status-chip{margin-top:8px}.admin-messaging-privacy{margin-top:12px}}

/* Focused communications setup: one channel and one next action at a time. */
.settings-grid-single{grid-template-columns:minmax(0,1fr)}
.admin-messaging-settings{padding:4px 20px 20px;background:linear-gradient(180deg,#f7f9ff 0,#fff 56%)}
.admin-messaging-settings-head{padding-bottom:14px}
.messaging-setup-workspace{display:grid;grid-template-columns:250px minmax(0,1fr);overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow-sm)}
.messaging-setup-nav{display:grid;align-content:start;gap:4px;padding:10px;background:#f7f9fc;border-right:1px solid var(--line)}
.messaging-setup-tab{width:100%;display:grid;grid-template-columns:48px minmax(0,1fr);gap:11px;align-items:center;padding:12px;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:10px;text-align:left}
.messaging-setup-tab:hover{background:#fff;border-color:#e4e9f0}
.messaging-setup-tab.active{background:#fff;border-color:#d9e2ef;box-shadow:inset 3px 0 0 var(--blue-600),var(--shadow-sm)}
.messaging-setup-tab>span:last-child,.messaging-setup-tab strong,.messaging-setup-tab small{display:block;min-width:0}
.messaging-setup-tab strong{font-size:12px}
.messaging-setup-tab small{position:relative;margin-top:4px;padding-left:11px;color:var(--muted);font-size:9px;line-height:1.3}
.messaging-setup-tab small:before{position:absolute;left:0;top:.35em;width:6px;height:6px;content:"";background:#9da8b7;border-radius:50%}
.messaging-setup-tab small.review:before{background:var(--gold-500)}
.messaging-setup-tab small.complete:before{background:var(--green)}
.messaging-setup-tab .messaging-channel-icon{width:42px;height:42px;border-radius:11px;font-size:10px}
.messaging-setup-tab .sms-label{background:#45a66f}
.messaging-setup-tab .discord-label{background:#5865f2;font-size:8px}
.messaging-setup-panel{display:grid;grid-template-columns:minmax(0,1fr) 260px;min-height:350px}
.messaging-setup-main{min-width:0;padding:23px 25px 20px}
.messaging-setup-copy .eyebrow{color:var(--blue-700)}
.messaging-setup-copy h3{margin:7px 0 5px;font-size:21px;line-height:1.15;letter-spacing:-.02em}
.messaging-setup-copy p{margin:0;color:var(--muted);font-size:11px;line-height:1.5}
.messaging-phone-form,.messaging-code-form{display:grid;gap:12px;margin-top:18px}
.messaging-phone-form .messaging-setup-consent{margin:0;padding-bottom:2px}
.messaging-phone-field,.messaging-code-form label{display:grid;gap:7px;color:#43546a;font-size:10px;font-weight:800}
.messaging-phone-field input[type="date"]{width:100%;min-height:42px;padding:9px 12px;color:var(--ink);background:#fff;border:1px solid #cfd8e4;border-radius:9px;font:inherit;font-size:13px}
.messaging-phone-field small{color:var(--muted);font-size:10px;font-weight:500}
.messaging-phone-input{display:grid;grid-template-columns:72px minmax(0,1fr);overflow:hidden;background:#fff;border:1px solid #cfd8e4;border-radius:9px}
.messaging-country-code{display:flex;align-items:center;padding:0 14px;color:#25374d;background:#f8fafc;border-right:1px solid #d8e0e9;font-size:12px;font-weight:850}
.messaging-phone-input input,.messaging-code-form input{width:100%;min-width:0;min-height:42px;padding:10px 12px;color:var(--ink);background:#fff;border:0;font-size:13px;outline:0}
.messaging-phone-input:focus-within,.messaging-code-form input:focus{border-color:var(--blue-500);box-shadow:0 0 0 3px rgba(64,150,238,.15)}
.messaging-code-form input{border:1px solid #cfd8e4;border-radius:9px}
.messaging-phone-form>.button,.messaging-code-form>.button,.messaging-setup-main>.button{width:max-content;min-height:40px}
.messaging-phone-form>.button:disabled,.messaging-code-form>.button:disabled,.messaging-setup-main>.button:disabled{color:#8b96a5;background:#e2e6ec;border-color:#e2e6ec;opacity:1}
.messaging-provider-alert{display:grid;gap:3px;padding:10px 12px;color:#6d4b0f;background:#fff8e8;border:1px solid #efcb72;border-radius:9px;font-size:10px;line-height:1.45}
.messaging-provider-alert strong,.messaging-provider-alert span{display:block}
.messaging-provider-alert span{color:#806329}
.messaging-inline-error:empty{display:none}
.messaging-inline-error{padding:9px 10px;color:var(--red);background:var(--red-bg);border:1px solid #f4c6cd;border-radius:8px;font-size:10px}
.messaging-consent-saved{margin:0;padding:9px 11px;color:var(--green);background:var(--green-bg);border:1px solid #ccebdc;border-radius:8px;font-size:10px;font-weight:750}
.messaging-privacy-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px 10px;margin-top:20px;padding:10px 12px;color:#53657a;background:#f7f9fc;border:1px solid var(--line);border-radius:9px;font-size:9px;line-height:1.5}
.messaging-privacy-note strong{color:#314258}
.messaging-ready-card{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px;padding:14px;background:#f8fafc;border:1px solid var(--line);border-radius:10px}
.messaging-ready-card strong,.messaging-ready-card small{display:block}
.messaging-ready-card strong{font-size:12px}
.messaging-ready-card small{margin-top:4px;color:var(--muted);font-size:9px}
.messaging-test-control{display:grid;justify-items:start;gap:9px;margin-top:16px;padding:14px;border:1px solid #c9def3;border-radius:10px;background:var(--blue-50)}
.messaging-test-control p{margin:0;color:#314258;font-size:11px;line-height:1.5}
.messaging-test-control small{color:var(--muted);font-size:10px;line-height:1.4}
.messaging-setup-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.messaging-setup-actions .messaging-turn-off{margin-top:0}
.messaging-operation-status{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;margin-top:12px;padding:11px 12px;color:#314258;background:var(--blue-50);border:1px solid #c9def3;border-radius:9px}
.messaging-operation-status strong,.messaging-operation-status span{display:block}
.messaging-operation-status strong{font-size:11px}
.messaging-operation-status div>span{margin-top:3px;color:var(--muted);font-size:9px;line-height:1.4}
.operation-spinner,.button-spinner{display:inline-block;flex:0 0 auto;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:messaging-spin .8s linear infinite}
.operation-spinner{width:18px;height:18px;color:var(--blue-700)}
.button-spinner{width:12px;height:12px;margin-right:7px;vertical-align:-2px}
.messaging-operation-error{margin-top:12px}
[data-discord-disconnect][aria-busy="true"]{min-width:126px;color:#7e3541;background:#fff0f2;border-color:#e8b5be;opacity:1}
@keyframes messaging-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.operation-spinner,.button-spinner{animation-duration:1.8s}}
.messaging-turn-off{margin-top:14px}
.messaging-different-number{width:max-content;margin-top:10px}
.messaging-setup-next{padding:24px 21px;background:#fbfcfe;border-left:1px solid var(--line)}
.messaging-setup-next h3{margin:0 0 16px;font-size:12px}
.messaging-setup-steps{display:grid;gap:0;margin:0;padding:0;list-style:none}
.messaging-setup-steps li{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;min-height:72px;padding-bottom:14px}
.messaging-setup-steps li:not(:last-child):after{position:absolute;left:13px;top:30px;bottom:0;width:2px;content:"";background:#dce3eb}
.messaging-setup-steps li>span{width:28px;height:28px;display:grid;place-items:center;z-index:1;color:#53657a;background:#edf1f5;border-radius:50%;font-size:9px;font-weight:900}
.messaging-setup-steps li.complete>span{color:var(--green);background:var(--green-bg);font-size:7px}
.messaging-setup-steps strong,.messaging-setup-steps small{display:block}
.messaging-setup-steps strong{font-size:10px}
.messaging-setup-steps small{margin-top:4px;color:var(--muted);font-size:9px;line-height:1.45}
@media(max-width:1050px){.messaging-setup-workspace{grid-template-columns:210px minmax(0,1fr)}.messaging-setup-panel{grid-template-columns:minmax(0,1fr) 220px}}
@media(max-width:820px){.messaging-setup-workspace{grid-template-columns:1fr}.messaging-setup-nav{grid-template-columns:repeat(2,minmax(0,1fr));border-right:0;border-bottom:1px solid var(--line)}.messaging-setup-panel{grid-template-columns:1fr}.messaging-setup-next{border-top:1px solid var(--line);border-left:0}.messaging-setup-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.messaging-setup-steps li{grid-template-columns:24px minmax(0,1fr);min-height:0}.messaging-setup-steps li:not(:last-child):after{display:none}.messaging-setup-steps li>span{width:24px;height:24px}}
@media(max-width:560px){.admin-messaging-settings{padding:3px 12px 12px}.messaging-setup-nav{grid-template-columns:1fr}.messaging-setup-main{padding:20px 16px}.messaging-setup-next{padding:20px 16px}.messaging-setup-steps{grid-template-columns:1fr}.messaging-phone-form>.button,.messaging-code-form>.button,.messaging-setup-main>.button{width:100%}.messaging-privacy-note{grid-template-columns:1fr}.messaging-setup-tab .messaging-channel-icon{width:38px;height:38px}.messaging-setup-tab{grid-template-columns:44px minmax(0,1fr)}}

/* Member-facing reminder setup: account linking and reminder consent are separate, visible states. */
.admin-messaging-settings{padding:6px 22px 22px;background:#fff;border-color:#d8e1ec;box-shadow:var(--shadow-sm)}
.admin-messaging-settings-head{padding:13px 2px}
.admin-messaging-settings-head .eyebrow{color:var(--blue-700)}
.admin-messaging-settings-head h2{font-size:19px}
.admin-messaging-settings-head p{font-size:11px}
.messaging-setup-workspace{grid-template-columns:1fr;background:#fff;border-color:#d8e1ec;box-shadow:none}
.messaging-setup-nav{grid-template-columns:repeat(2,minmax(0,220px));justify-content:start;padding:5px 10px;background:#f8fafc;border-right:0;border-bottom:1px solid var(--line)}
.messaging-setup-tab{grid-template-columns:34px minmax(0,1fr);min-height:44px;padding:5px 10px}
.messaging-setup-tab .messaging-channel-icon{width:32px;height:32px}
.messaging-setup-tab.active{box-shadow:inset 0 -3px 0 var(--blue-600),var(--shadow-sm)}
.messaging-setup-tab strong{font-size:13px}
.messaging-setup-tab small{font-size:10px}
.messaging-setup-workspace.selected-discord .messaging-setup-panel{display:block;min-height:0}
.discord-reminder-workspace{display:grid;gap:0;color:var(--ink)}
.discord-reminder-banner{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:20px 28px;border-bottom:1px solid var(--line)}
.discord-reminder-banner.success{background:#f3fbf7}
.discord-reminder-banner.warning{background:#fff9eb}
.discord-reminder-banner.neutral{background:#f8fafc}
.discord-reminder-banner .eyebrow{color:var(--green)}
.discord-reminder-banner.warning .eyebrow{color:#9a6900}
.discord-reminder-banner.neutral .eyebrow{color:var(--blue-700)}
.discord-reminder-banner h3{margin:7px 0 5px;font-size:23px;line-height:1.15;letter-spacing:-.02em}
.discord-reminder-banner p{max-width:720px;margin:0;color:#53657a;font-size:14px;line-height:1.5}
.discord-reminder-banner>.status-chip{flex:0 0 auto;min-width:70px;justify-content:center;font-size:11px}
.discord-reminder-status{padding:19px 28px;border-bottom:1px solid var(--line)}
.discord-reminder-status>.eyebrow,.discord-reminder-status>div>.eyebrow{color:var(--blue-700)}
.discord-reminder-status h3{margin:6px 0 4px;font-size:18px}
.discord-reminder-status>div>p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}
.discord-reminder-progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:15px 0 0;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:11px;list-style:none}
.discord-reminder-progress li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;align-items:start;min-height:86px;padding:13px 14px}
.discord-reminder-progress li+li{border-left:1px solid var(--line)}
.discord-reminder-step-number{width:30px;height:30px;display:grid;place-items:center;color:#53657a;background:#eef2f6;border-radius:50%;font-size:11px;font-weight:900}
.discord-reminder-progress li.complete .discord-reminder-step-number{color:#fff;background:var(--green)}
.discord-reminder-progress strong,.discord-reminder-progress small{display:block}
.discord-reminder-progress strong{font-size:13px;line-height:1.35}
.discord-reminder-progress small{margin-top:4px;color:var(--muted);font-size:11px;line-height:1.45}
.discord-reminder-step-state{grid-column:2;width:max-content;margin-top:2px;padding:3px 7px;color:#647387;background:#f1f4f7;border-radius:999px;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.discord-reminder-progress li.complete .discord-reminder-step-state{color:var(--green);background:var(--green-bg)}
.discord-account-panel{display:grid;gap:0}
.discord-account-main{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(280px,1.15fr) minmax(220px,.8fr);gap:24px;align-items:center;padding:20px 28px;border-bottom:1px solid var(--line)}
.discord-account-summary{display:grid;grid-template-columns:48px minmax(0,1fr);gap:13px;align-items:center}
.discord-account-summary .messaging-channel-icon{width:44px;height:44px;background:#5865f2;border-radius:11px;font-size:8px}
.discord-account-summary strong,.discord-account-summary small{display:block}
.discord-account-summary strong{font-size:15px}
.discord-account-summary small{margin-top:4px;color:var(--muted);font-size:11px}
.discord-account-summary .status-chip{width:max-content;margin-top:7px}
.discord-reminder-actions{padding:20px 28px}
.discord-reminder-primary{display:grid;gap:7px}
.discord-reminder-primary .button{width:100%;min-height:46px;font-size:13px}
.discord-reminder-primary small{color:var(--muted);font-size:10px;line-height:1.45;text-align:center}
.discord-reminder-secondary{display:grid;gap:9px}
.discord-reminder-secondary .button{min-height:42px;color:var(--blue-700);background:#fff;border-color:#cbd8e8}
.discord-account-danger{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:16px 28px;background:#fffafb}
.discord-account-danger strong,.discord-account-danger span{display:block}
.discord-account-danger strong{font-size:13px}
.discord-account-danger span{margin-top:4px;color:#72545a;font-size:11px;line-height:1.45}
.discord-account-danger [data-discord-disconnect]{min-width:190px;min-height:42px;color:#9e3042;background:#fff0f2;border:1px solid #e7a2ad;font-size:12px;font-weight:850;box-shadow:0 1px 2px rgba(166,55,72,.08)}
.discord-account-danger [data-discord-disconnect]:hover{color:#822234;background:#ffe4e8;border-color:#dd7f8e}
.discord-account-panel .messaging-operation-status,.discord-account-panel .messaging-operation-error{margin:0 28px 20px}
.discord-reminder-privacy{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;margin:0;padding:15px 28px;color:#53657a;background:#f8fafc;border-top:1px solid var(--line);font-size:10px;line-height:1.5}
.discord-reminder-privacy strong{color:#314258}
.discord-reminder-workspace>.messaging-provider-alert{margin:18px 28px 0}
@media(max-width:1050px){.discord-account-main{grid-template-columns:minmax(200px,.8fr) minmax(250px,1fr)}.discord-reminder-secondary{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.messaging-setup-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.discord-reminder-progress{grid-template-columns:1fr}.discord-reminder-progress li{min-height:0}.discord-reminder-progress li+li{border-top:1px solid var(--line);border-left:0}.discord-account-main{grid-template-columns:1fr}.discord-reminder-secondary{grid-column:auto;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.admin-messaging-settings{padding:4px 12px 12px}.admin-messaging-settings-head{padding:16px 2px}.messaging-setup-nav{grid-template-columns:1fr 1fr;padding:8px}.messaging-setup-tab{grid-template-columns:1fr;gap:4px;min-height:64px;text-align:center}.messaging-setup-tab .messaging-channel-icon{display:none}.messaging-setup-tab small{width:max-content;margin:3px auto 0}.discord-reminder-banner{align-items:flex-start;padding:20px 16px}.discord-reminder-banner h3{font-size:20px}.discord-reminder-banner p{font-size:13px}.discord-reminder-banner>.status-chip{min-width:52px}.discord-reminder-status{padding:20px 16px}.discord-reminder-progress{margin-top:16px}.discord-reminder-progress li{padding:14px}.discord-account-main{padding:18px 16px}.discord-account-summary{grid-template-columns:42px minmax(0,1fr)}.discord-account-summary .messaging-channel-icon{width:40px;height:40px}.discord-reminder-secondary{grid-template-columns:1fr}.discord-reminder-secondary .button{width:100%}.discord-account-danger{display:grid;padding:18px 16px}.discord-account-danger [data-discord-disconnect]{width:100%}.discord-account-panel .messaging-operation-status,.discord-account-panel .messaging-operation-error{margin:0 16px 16px}.discord-reminder-privacy{grid-template-columns:1fr;padding:14px 16px}.discord-reminder-workspace>.messaging-provider-alert{margin:16px 16px 0}}

.access-invite-form{grid-template-columns:.7fr 1.15fr .8fr .7fr 1.2fr auto}.access-dialog input{width:100%;min-height:38px;padding:9px 10px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:11px}.dashboard-access-gate{max-width:760px;margin:8vh auto}.dashboard-access-gate .button{margin-top:20px}
.player-link-gate{max-width:900px;padding:30px}.player-link-heading{display:grid;grid-template-columns:72px minmax(0,1fr);gap:22px;align-items:center}.player-link-heading h1{margin:8px 0;font-size:28px}.player-link-heading p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.player-link-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px}.player-link-option{display:flex;min-width:0;flex-direction:column;padding:20px;background:#f8fafc;border:1px solid var(--line);border-radius:13px}.player-link-upload{background:var(--blue-50);border-color:#cfe3f9}.player-link-kicker{width:max-content;padding:4px 7px;color:var(--blue-700);background:#fff;border-radius:999px;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.player-link-option h2{margin:12px 0 6px;font-size:18px}.player-link-option>p{min-height:48px;margin:0;color:var(--muted);font-size:11px;line-height:1.5}.player-screenshot-steps{display:grid;gap:8px;margin:8px 0 0;padding:0;list-style:none}.player-screenshot-steps li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px;align-items:start;color:var(--muted);font-size:10px;line-height:1.45}.player-screenshot-steps b{width:22px;height:22px;display:grid;place-items:center;color:var(--blue-700);background:#fff;border-radius:50%;font-size:9px}.player-screenshot-steps strong{color:var(--ink)}.player-link-option form{display:grid;gap:10px;margin-top:16px}.player-link-option form .button{width:100%;margin-top:0}.player-link-option form>label:not(.player-screenshot-picker){display:grid;gap:6px}.player-link-option form>label:not(.player-screenshot-picker)>span{color:var(--muted);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.player-link-option input[type="text"],.player-link-option input[name="playerTag"]{width:100%;min-height:44px;padding:10px 12px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:9px;font-size:14px;font-weight:800;text-transform:uppercase}.player-screenshot-picker{display:grid;grid-template-columns:auto minmax(0,1fr);gap:3px 10px;align-items:center;padding:12px;color:var(--blue-700);background:#fff;border:1px dashed #8dbce8;border-radius:10px;cursor:pointer}.player-screenshot-picker input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.player-screenshot-picker span{grid-row:1/3;padding:7px 10px;color:#fff;background:var(--blue-700);border-radius:7px;font-size:10px;font-weight:850}.player-screenshot-picker small{overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.player-link-privacy{display:block;margin-top:10px;color:var(--muted);font-size:8px;line-height:1.45}.detected-player-tag{display:grid;gap:3px;margin-top:14px;padding:11px;color:var(--green);background:var(--green-bg);border:1px solid #ccebdc;border-radius:9px}.detected-player-tag span{font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.detected-player-tag strong{font-size:17px}.detected-player-tag small{font-size:9px}.player-link-admin{display:flex;justify-content:flex-end;gap:9px;margin-top:16px}.access-audit-action{display:grid;justify-items:end;gap:7px}.access-dialog-tags{display:grid;gap:8px;margin:14px 0;padding:12px;background:#f8fafc;border:1px solid var(--line);border-radius:9px}.access-tag-row,.access-tag-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.access-tag-row{padding:8px 9px;background:#fff;border:1px solid var(--line);border-radius:8px}.access-tag-row strong{font-size:11px}.access-tag-add input{margin:0}.access-dialog-tags>p{margin:0;color:var(--muted);font-size:10px}
@media(max-width:1050px){.access-invite-form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.access-invite-form{grid-template-columns:1fr}.player-link-gate{margin:24px 0;padding:20px 16px}.player-link-heading{grid-template-columns:1fr;gap:14px}.player-link-heading h1{font-size:24px}.player-link-options{grid-template-columns:1fr}.player-link-option>p{min-height:0}.player-link-admin{width:100%}}
.access-player-link-callout{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 16px;padding:20px;border-color:#f0cc77;background:#fff9e9}.access-player-link-callout h2{margin:6px 0;font-size:19px}.access-player-link-callout p{max-width:650px;margin:0;color:var(--muted);font-size:11px;line-height:1.55}.access-player-link-callout .button{flex:0 0 auto}
@media(max-width:680px){.access-player-link-callout{display:grid;padding:17px}.access-player-link-callout .button{width:100%}}

/* Keep access approval usable at the real mobile viewport without triggering iOS form zoom. */
.access-dialog{width:min(520px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:hidden}
.access-dialog form{display:grid;max-height:calc(100dvh - 24px);grid-template-rows:auto minmax(0,1fr) auto;padding:0}
.access-dialog .dialog-head{padding:18px 20px;background:#fff}
#access-dialog-content{min-height:0;overflow-x:hidden;overflow-y:auto;padding:2px 20px 18px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.access-dialog .dialog-actions{padding:14px 20px calc(14px + env(safe-area-inset-bottom));background:#fff}
.access-owner-note{margin:7px 0 0;color:var(--blue-700);font-size:10px;line-height:1.45}
@media(max-width:680px){
  .access-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:14px}
  .access-dialog form{max-height:calc(100dvh - 16px)}
  .access-dialog .dialog-head{padding:14px 15px 12px}
  .access-dialog .dialog-head h2{font-size:21px;line-height:1.1}
  #access-dialog-content{padding:0 15px 14px}
  .access-dialog .dialog-actions{padding:11px 15px calc(11px + env(safe-area-inset-bottom))}
  .access-dialog .dialog-actions .button{min-width:0;flex:1}
  .access-dialog input,.access-dialog select,.access-dialog textarea{font-size:16px}
  .access-dialog textarea{min-height:72px}
  .access-dialog-tags{margin:11px 0;padding:10px}
}

/* Unified player-ID verification and illustrated help */
.player-link-gate{max-width:760px}.player-link-gate>.player-link-option{margin-top:24px}.player-link-option-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.player-link-option-head>div{min-width:0}.player-link-option-head h2{margin:12px 0 6px}.player-link-option-head p{max-width:480px;margin:0;color:var(--muted);font-size:11px;line-height:1.55}.player-link-help{display:flex;flex:0 0 auto;align-items:center;gap:7px;margin-top:0!important;white-space:nowrap}.player-link-help>span{width:20px;height:20px;display:grid;place-items:center;color:#fff;background:var(--blue-700);border-radius:50%;font-size:10px}.player-link-upload>.detected-player-tag{margin-top:18px;padding:16px}.player-link-upload>.detected-player-tag strong{font-size:24px}.player-link-upload>.detected-player-tag small{font-size:10px}.player-link-upload>#player-tag-confirm-form{grid-template-columns:minmax(0,1fr) auto;margin-top:10px}.player-link-upload>#player-tag-confirm-form .button-ghost{width:auto}.player-link-manual{margin-top:16px;padding-top:13px;border-top:1px solid #cfe3f9}.player-link-manual>summary{width:max-content;color:var(--blue-700);cursor:pointer;font-size:10px;font-weight:850;list-style:none}.player-link-manual>summary::-webkit-details-marker{display:none}.player-link-manual>summary:before{content:"+";margin-right:7px}.player-link-manual[open]>summary:before{content:"−"}.player-link-manual form{grid-template-columns:minmax(0,1fr) auto;align-items:end;margin-top:12px}.player-link-manual form .button{width:auto;min-height:44px}.player-id-help-dialog{width:min(700px,94vw)}.player-id-help-dialog form{padding:20px}.player-id-help-body{display:grid;gap:16px;padding:18px 0}.player-id-help-body>img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow-sm)}.player-id-help-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none}.player-id-help-steps li{display:grid;grid-template-columns:26px minmax(0,1fr);gap:8px;align-items:start;padding:11px;background:#f7f9fc;border:1px solid var(--line);border-radius:9px;color:var(--muted);font-size:10px;line-height:1.45}.player-id-help-steps b{width:26px;height:26px;display:grid;place-items:center;color:var(--blue-700);background:var(--blue-50);border-radius:50%;font-size:10px}.player-id-help-steps strong{color:var(--ink)}.player-id-help-body>p{margin:0;color:var(--muted);font-size:9px;line-height:1.5}.player-id-help-dialog .dialog-actions{padding-top:14px}
@media(max-width:680px){.player-link-option-head{display:grid;gap:12px}.player-link-help{width:max-content}.player-link-upload>#player-tag-confirm-form,.player-link-manual form{grid-template-columns:1fr}.player-link-upload>#player-tag-confirm-form .button-ghost,.player-link-manual form .button{width:100%}.player-id-help-dialog form{padding:16px}.player-id-help-steps{grid-template-columns:1fr}.player-id-help-body{gap:12px}}

/* Keep mobile layout at the device viewport instead of allowing iOS text inflation or page-wide overflow. */
html{overflow-x:clip;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{min-width:0;overflow-x:clip}
[hidden]{display:none!important}
img,svg,canvas{max-width:100%}
.app-shell,.app-column,.content{width:100%;min-width:0}
@media(max-width:900px){.app-shell,.app-column,.content{width:100%;min-width:0;max-width:100%}.app-shell{grid-template-columns:minmax(0,1fr)}}

/* Keep member actions reachable while the profile body scrolls. */
.member-drawer{padding:0 0 calc(32px + env(safe-area-inset-bottom))}
.member-drawer .drawer-head{position:sticky;top:0;z-index:4;padding:24px;background:rgba(255,255,255,.96);backdrop-filter:blur(14px)}
#member-drawer-content{padding:0 24px}
@media(max-width:680px){.member-drawer{padding:0 0 calc(24px + env(safe-area-inset-bottom))}.member-drawer .drawer-head{padding:18px}#member-drawer-content{padding:0 18px}}

/* Training-period War view: practice is visually distinct from scored battle days. */
.practice-snapshot-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}.practice-snapshot-header h1{margin:7px 0 0;font-size:clamp(30px,3.2vw,44px);line-height:1.02;letter-spacing:-.045em}.practice-snapshot-header p{margin:9px 0 0;color:var(--muted);font-size:14px}.practice-snapshot-header p b{padding:0 5px;color:#bac3ce}.practice-snapshot-header .source-badge{display:grid;grid-template-columns:8px auto;gap:2px 8px;align-items:center}.practice-snapshot-header .source-badge span{grid-row:1/3}.practice-snapshot-header .source-badge strong,.practice-snapshot-header .source-badge small{display:block}.practice-snapshot-header .source-badge small{font-size:10px;font-weight:750}
.practice-hero{position:relative;min-height:300px;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-items:center;margin-bottom:18px;padding:32px 38px;background:radial-gradient(circle at 92% 22%,rgba(119,84,214,.19),transparent 34%),linear-gradient(135deg,#fff,#f7f4ff);border:1px solid #ded6f6;border-radius:18px;box-shadow:var(--shadow-sm)}.practice-hero:before{content:"";position:absolute;right:-80px;bottom:-175px;width:420px;height:420px;border:1px solid rgba(119,84,214,.12);border-radius:50%;box-shadow:0 0 0 54px rgba(119,84,214,.035)}.practice-hero-copy{position:relative;z-index:2}.practice-status{display:inline-flex;padding:7px 11px;color:var(--purple);background:var(--purple-bg);border:1px solid #ddd2fb;border-radius:999px;font-size:11px;font-weight:900}.practice-hero h2{max-width:650px;margin:18px 0 10px;font-size:clamp(26px,3vw,40px);line-height:1.02;letter-spacing:-.04em}.practice-hero p{max-width:650px;margin:0;color:#5f6d80;font-size:14px;line-height:1.6}.practice-hero-meta{display:flex;gap:12px;margin-top:23px}.practice-hero-meta>span{min-width:190px;padding:12px 14px;background:rgba(255,255,255,.8);border:1px solid #e4e0f1;border-radius:11px}.practice-hero-meta small,.practice-hero-meta strong{display:block}.practice-hero-meta small{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.06em}.practice-hero-meta strong{margin-top:5px;font-size:13px}.practice-hero-art{position:relative;z-index:1;width:100%;max-height:270px;object-fit:contain;object-position:center;filter:drop-shadow(0 20px 22px rgba(39,30,82,.18))}
.practice-overview-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(430px,1.1fr);gap:18px;margin-bottom:18px}.practice-pulse-card,.practice-history-card{padding:22px}.practice-overview-grid .section-title-row{padding:0}.practice-overview-grid .section-title-row h2,.practice-member-card .section-title-row h2{margin:5px 0 0;font-size:20px}.practice-pulse-main{display:flex;align-items:end;gap:12px;margin:24px 0 20px}.practice-pulse-main strong{color:var(--purple);font-size:52px;line-height:.8;letter-spacing:-.06em}.practice-pulse-main span{color:var(--muted);font-size:13px}.practice-pulse-members{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.practice-pulse-members>div{padding:12px;background:#faf9ff;border:1px solid #ebe6fa;border-radius:10px}.practice-pulse-members strong,.practice-pulse-members span{display:block}.practice-pulse-members strong{font-size:19px}.practice-pulse-members span{margin-top:3px;color:var(--muted);font-size:10px}.practice-progress{height:7px;overflow:hidden;margin-top:14px;background:#ebe8f2;border-radius:999px}.practice-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--purple),var(--blue-500));border-radius:inherit}.practice-history-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:18px}.practice-history-day{min-height:132px;display:grid;align-content:start;padding:14px;background:#faf9ff;border:1px solid #e6e0f7;border-radius:11px}.practice-history-day.today{background:var(--purple-bg);border-color:#cfc1f4;box-shadow:inset 0 3px 0 var(--purple)}.practice-history-day.no-data{background:#f8fafc;border-style:dashed}.practice-history-day span,.practice-history-day strong,.practice-history-day em,.practice-history-day small{display:block}.practice-history-day span{color:var(--purple);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.practice-history-day strong{margin-top:5px;font-size:14px}.practice-history-day em{margin-top:20px;color:var(--ink);font-size:13px;font-style:normal;font-weight:850}.practice-history-day small{margin-top:4px;color:var(--muted);font-size:10px;line-height:1.35}.practice-history-day.no-data span,.practice-history-day.no-data em{color:var(--muted)}
.practice-member-card{overflow:hidden;margin-bottom:18px}.practice-member-card>.section-title-row{padding:22px}.practice-member-card>.section-title-row p{max-width:680px;margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.5}.practice-result-count{color:var(--muted);font-size:12px;font-weight:800;white-space:nowrap}.practice-member-tabs{display:flex;gap:6px;padding:0 22px 15px}.practice-member-tabs button{display:flex;align-items:center;gap:7px;min-height:36px;padding:8px 12px;color:var(--muted);background:#f4f6f9;border:1px solid transparent;border-radius:9px;font-size:11px;font-weight:850}.practice-member-tabs button span{padding:2px 6px;background:rgba(255,255,255,.75);border-radius:999px;font-size:9px}.practice-member-tabs button.active{color:var(--purple);background:var(--purple-bg);border-color:#dcd1f8}.practice-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) 210px;gap:10px;padding:14px 22px;background:#f8fafc;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.practice-toolbar .search-field{min-width:0}.practice-toolbar .filter-select{width:100%}.practice-member-list{display:grid}.practice-member-row{display:grid;grid-template-columns:48px minmax(230px,1fr) minmax(130px,.45fr) minmax(145px,.5fr) auto;gap:14px;align-items:center;min-height:76px;padding:12px 22px;background:#fff;border-bottom:1px solid #edf0f4;cursor:pointer}.practice-member-row:last-child{border-bottom:0}.practice-member-row:hover{background:#fbfcfe}.practice-member-row.practiced{background:linear-gradient(90deg,rgba(119,84,214,.055),transparent 32%)}.practice-war-rank{width:38px;height:38px;display:grid;place-items:center;color:var(--navy-900);background:var(--gold-100);border:1px solid #efd793;border-radius:10px;font-size:11px;font-weight:900}.practice-member-count strong,.practice-member-count span,.practice-member-last strong,.practice-member-last span{display:block}.practice-member-count strong{color:var(--purple);font-size:19px}.practice-member-count span,.practice-member-last span{margin-top:3px;color:var(--muted);font-size:9px}.practice-member-last strong{font-size:11px}.practice-member-row:not(.practiced) .practice-member-last strong{color:var(--muted)}.practice-source-note{margin-bottom:8px;border-color:#ded6f6;background:#faf9ff}.practice-source-note>span:first-child{color:var(--purple);background:var(--purple-bg)}
@media(max-width:1050px){.practice-hero{grid-template-columns:minmax(0,1.25fr) minmax(230px,.75fr)}.practice-overview-grid{grid-template-columns:1fr}.practice-member-row{grid-template-columns:44px minmax(210px,1fr) minmax(120px,.45fr) auto}.practice-member-last{display:none}}
@media(max-width:680px){.practice-snapshot-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px}.practice-snapshot-header h1{font-size:30px}.practice-snapshot-header p{font-size:11px;line-height:1.45}.practice-snapshot-header .source-badge{margin:0 0 2px}.practice-hero{min-height:0;grid-template-columns:1fr;padding:19px 19px 0}.practice-status{padding:6px 9px;font-size:10px}.practice-hero h2{margin-top:14px;font-size:25px}.practice-hero p{font-size:11px;line-height:1.5}.practice-hero-meta{display:grid;grid-template-columns:1fr 1fr;margin-top:17px}.practice-hero-meta>span{min-width:0;padding:9px 10px}.practice-hero-meta strong{font-size:10px}.practice-hero-art{height:142px;margin-top:-2px}.practice-pulse-card,.practice-history-card{padding:18px}.practice-pulse-main strong{font-size:46px}.practice-pulse-members{gap:6px}.practice-pulse-members>div{padding:10px 8px}.practice-pulse-members strong{font-size:17px}.practice-history-grid{grid-template-columns:1fr}.practice-history-day{min-height:0;grid-template-columns:50px 72px minmax(0,1fr);gap:3px 8px;align-items:center;padding:12px}.practice-history-day span,.practice-history-day strong,.practice-history-day em{margin:0}.practice-history-day small{grid-column:3;margin:0}.practice-member-card>.section-title-row{padding:18px}.practice-member-tabs{overflow-x:auto;padding:0 18px 13px}.practice-member-tabs button{flex:0 0 auto}.practice-toolbar{grid-template-columns:1fr;padding:12px 18px}.practice-member-row{grid-template-columns:36px minmax(0,1fr) auto;gap:10px;min-height:82px;padding:12px 18px}.practice-war-rank{width:34px;height:34px}.practice-member-row .player-cell{min-width:0}.practice-member-row .player-cell>div{min-width:0}.practice-member-row .player-cell strong,.practice-member-row .player-cell small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.practice-member-count{text-align:right}.practice-member-count span{max-width:86px}.practice-member-row>.row-button{display:none}.practice-source-note{margin-bottom:12px}}

/* Clan reports: decision-oriented, multi-metric roster comparison. */
.clan-performance-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}.clan-performance-controls{padding:22px;margin-bottom:18px}.clan-performance-control-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.clan-performance-control-head h2{margin:5px 0 6px;font-size:22px}.clan-performance-control-head p{max-width:760px;margin:0;color:var(--muted);font-size:11px;line-height:1.55}.clan-performance-help{position:relative;flex:0 0 auto}.clan-performance-help>summary{width:34px;height:34px;display:grid;place-items:center;color:var(--blue-700);background:var(--blue-50);border:1px solid #cfe3f9;border-radius:50%;cursor:pointer;font-size:14px;font-weight:900;list-style:none}.clan-performance-help>summary::-webkit-details-marker{display:none}.clan-performance-help>div{position:absolute;z-index:8;top:42px;right:0;width:min(360px,80vw);padding:15px;color:#fff;background:var(--navy-950);border-radius:11px;box-shadow:0 16px 36px rgba(7,20,38,.2)}.clan-performance-help strong{font-size:12px}.clan-performance-help p{margin:6px 0 0;color:#b9c4d2;font-size:10px;line-height:1.55}.clan-performance-filter-grid{display:grid;grid-template-columns:minmax(230px,1.2fr) minmax(270px,1fr) minmax(170px,.65fr);gap:12px;margin-top:19px}.clan-performance-filter-grid>label,.clan-performance-filter-grid>fieldset{min-width:0;display:grid;gap:7px;margin:0;padding:0;border:0}.clan-performance-filter-grid label>span,.clan-performance-filter-grid legend{color:var(--muted);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.clan-performance-filter-grid .filter-select{width:100%;min-width:0}.clan-performance-filter-grid fieldset{grid-template-columns:1fr 1fr}.clan-performance-filter-grid fieldset legend{grid-column:1/-1}.clan-performance-coverage{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line);font-size:11px}.clan-performance-coverage span{color:var(--muted)}
.clan-performance-scorecard{overflow:hidden;padding:0}.clan-performance-scorecard-head{display:flex;align-items:end;justify-content:space-between;gap:16px;padding:22px}.clan-performance-scorecard-head h2{margin:5px 0 0;font-size:22px}.clan-performance-scorecard-head>span{color:var(--muted);font-size:10px}.clan-performance-list{border-top:1px solid var(--line)}.clan-performance-row{background:#fff;border-bottom:1px solid #edf0f4}.clan-performance-row:last-child{border-bottom:0}.clan-performance-row>summary{display:grid;grid-template-columns:38px minmax(210px,1.15fr) minmax(150px,.65fr) minmax(230px,.95fr) minmax(110px,.45fr) 18px;gap:13px;align-items:center;min-height:84px;padding:13px 22px;cursor:pointer;list-style:none}.clan-performance-row>summary::-webkit-details-marker{display:none}.clan-performance-row[open]>summary{background:#f8fbff;box-shadow:inset 3px 0 0 var(--blue-600)}.clan-performance-position{width:32px;height:32px;display:grid;place-items:center;color:var(--navy-900);background:var(--gold-100);border:1px solid #efd793;border-radius:9px;font-size:11px;font-weight:900}.clan-performance-player{min-width:0;display:flex;align-items:center;gap:10px}.clan-performance-player .avatar{flex:0 0 auto}.clan-performance-player>span:last-child{min-width:0}.clan-performance-player strong,.clan-performance-player small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clan-performance-player strong{font-size:12px}.clan-performance-player small{margin-top:3px;color:var(--muted);font-size:9px}.clan-performance-primary small,.clan-performance-primary strong,.clan-performance-primary em{display:block}.clan-performance-primary small{color:var(--muted);font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.clan-performance-primary strong{margin-top:3px;font-size:19px}.clan-performance-primary em{margin-top:2px;color:var(--muted);font-size:8px;font-style:normal}.clan-performance-glance{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.clan-performance-glance>span{padding:7px 8px;background:#f7f9fc;border:1px solid #e8edf3;border-radius:8px}.clan-performance-glance small,.clan-performance-glance strong{display:block}.clan-performance-glance small{color:var(--muted);font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.clan-performance-glance strong{margin-top:3px;font-size:11px}.clan-performance-tier{text-align:right}.clan-performance-tier .status-chip{white-space:nowrap}.clan-performance-row .ranking-chevron{color:var(--blue-700);font-size:14px;transition:transform .2s}.clan-performance-row[open] .ranking-chevron{transform:rotate(180deg)}.clan-performance-detail{padding:0 22px 19px 73px;background:#f8fbff}.clan-component-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding-top:15px;border-top:1px solid #e2eaf3}.clan-component{padding:11px;background:#fff;border:1px solid #e3eaf2;border-radius:10px}.clan-component>div{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.clan-component span{color:var(--muted);font-size:8px;font-weight:800}.clan-component strong{font-size:11px}.clan-component-track{display:block;height:6px;margin:9px 0 7px;overflow:hidden;background:#edf1f5;border-radius:99px}.clan-component-track i{display:block;height:100%;background:linear-gradient(90deg,var(--blue-500),var(--blue-700));border-radius:inherit}.clan-component small{color:var(--muted);font-size:8px}.clan-component-comparison{display:grid;gap:2px;line-height:1.35}.clan-component-comparison span{color:var(--muted);font-size:8px;font-weight:750}.clan-component-comparison .better{color:var(--green)}.clan-component-comparison .worse{color:var(--red)}.clan-performance-detail-foot{display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px;margin-top:11px;color:var(--muted);font-size:9px}.clan-performance-detail-foot strong{color:var(--ink)}.clan-performance-detail-foot .row-button{margin-left:auto}.clan-performance-note{margin-bottom:18px}.clan-secondary-report{overflow:hidden;padding:0}.clan-secondary-report>summary{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:19px 22px;cursor:pointer;list-style:none}.clan-secondary-report>summary::-webkit-details-marker{display:none}.clan-secondary-report>summary span span,.clan-secondary-report>summary strong,.clan-secondary-report>summary small{display:block}.clan-secondary-report>summary strong{margin-top:4px;font-size:18px}.clan-secondary-report>summary small{margin-top:3px;color:var(--muted);font-size:9px}.clan-secondary-report-body{padding:0 22px 22px;border-top:1px solid var(--line)}
.admin-discord-card{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:18px;align-items:center;margin-bottom:18px;padding:20px}.admin-discord-mark{width:54px;height:54px;display:grid;place-items:center;color:#fff;background:#5865f2;border-radius:14px;font-size:24px;font-weight:900}.admin-discord-card h2{margin:4px 0 5px;font-size:19px}.admin-discord-card p{max-width:760px;margin:0;color:var(--muted);font-size:10px;line-height:1.5}.admin-discord-card .button{white-space:nowrap}
@media(max-width:1180px){.clan-performance-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.clan-performance-row>summary{grid-template-columns:38px minmax(190px,1fr) minmax(140px,.65fr) minmax(210px,.9fr) 18px}.clan-performance-tier{display:none}.clan-component-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.clan-performance-filter-grid{grid-template-columns:1fr 1fr}.clan-performance-filter-grid>label:first-child{grid-column:1/-1}.clan-performance-scorecard-head>span{display:none}.clan-performance-row>summary{grid-template-columns:34px minmax(180px,1fr) minmax(120px,.6fr) 18px}.clan-performance-glance{display:none}.clan-performance-detail{padding-left:69px}.admin-discord-card{grid-template-columns:46px minmax(0,1fr)}.admin-discord-mark{width:46px;height:46px}.admin-discord-card .button{grid-column:2;width:max-content}}
@media(max-width:600px){.clan-performance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.clan-performance-control-head{gap:12px}.clan-performance-control-head h2{font-size:19px}.clan-performance-filter-grid{grid-template-columns:1fr}.clan-performance-filter-grid>label:first-child{grid-column:auto}.clan-performance-coverage{display:grid;gap:4px}.clan-performance-scorecard-head{padding:18px}.clan-performance-row>summary{grid-template-columns:30px minmax(0,1fr) auto 14px;gap:9px;min-height:82px;padding:12px 14px}.clan-performance-position{width:28px;height:28px}.clan-performance-player .avatar{width:36px;height:36px}.clan-performance-player strong{font-size:11px}.clan-performance-player small{max-width:150px}.clan-performance-primary{text-align:right}.clan-performance-primary small{max-width:90px;margin-left:auto}.clan-performance-primary strong{font-size:16px}.clan-performance-primary em{display:none}.clan-performance-detail{padding:0 14px 16px}.clan-component-grid{grid-template-columns:1fr 1fr;padding-top:13px}.clan-component>div{display:grid}.clan-performance-detail-foot{display:grid;grid-template-columns:1fr 1fr}.clan-performance-detail-foot .row-button{grid-column:1/-1;width:100%;margin:0}.clan-secondary-report-body{padding:0 14px 14px}.admin-discord-card{grid-template-columns:42px minmax(0,1fr);padding:16px;gap:12px}.admin-discord-mark{width:42px;height:42px}.admin-discord-card .button{grid-column:1/-1;width:100%}}
/* Deck explorer: guided filters stay readable at the real mobile viewport. */
.deck-filter-card{padding:22px}.deck-filter-head{align-items:flex-start;margin-bottom:16px}.deck-filter-head>div:first-child{min-width:0}.deck-filter-head h2{font-size:22px}.deck-filter-head p{margin:5px 0 0;color:var(--muted);font-size:11px}.deck-filter-actions{display:flex;align-items:center;gap:8px}.deck-help-button{width:36px;height:36px;display:grid;flex:0 0 auto;place-items:center;color:var(--blue-700);background:var(--blue-50);border:1px solid #cfe3f8;border-radius:50%;font-size:14px;font-weight:900;cursor:pointer}.deck-help-button:hover,.deck-help-button:focus-visible{background:#e6f2fe;border-color:#8dbce8}.deck-filter-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.deck-filter-group{min-width:0;margin:0;padding:14px;background:#f8fafc;border:1px solid var(--line);border-radius:12px}.deck-filter-group legend{display:flex;align-items:center;gap:9px;max-width:100%;padding:0 6px}.deck-filter-group legend>span{width:23px;height:23px;display:grid;flex:0 0 auto;place-items:center;color:#fff;background:var(--blue-700);border-radius:7px;font-size:10px;font-weight:900}.deck-filter-group legend strong,.deck-filter-group legend small{display:block}.deck-filter-group legend strong{color:var(--ink);font-size:11px}.deck-filter-group legend small{margin-top:2px;color:var(--muted);font-size:8px;font-weight:700}.deck-filter-group .deck-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:8px}.deck-filter-label{min-width:0}.deck-filter-label>span{min-height:0!important;color:#64748a;font-size:9px;line-height:1.35}.deck-filter-label .filter-select{min-height:44px;padding-right:34px;font-size:12px;text-overflow:ellipsis}.deck-filter-label>small{color:var(--muted);font-size:8px;line-height:1.4}.deck-player-fit{margin-top:12px;background:#fff}.deck-player-fit>summary{min-height:58px}.deck-player-fit>summary:before{display:none}.deck-player-fit>summary>span{display:flex;align-items:center;gap:9px;min-width:0}.deck-player-fit>summary>span b{width:23px;height:23px;display:grid;flex:0 0 auto;place-items:center;color:#fff;background:var(--blue-700);border-radius:7px;font-size:10px}.deck-player-fit>summary>span strong{font-size:11px}.deck-player-fit>summary>small{line-height:1.35}.deck-player-fit-grid{padding-top:2px}.deck-filter-results{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-top:13px;padding-top:13px;border-top:1px solid var(--line)}.deck-filter-results>strong{flex:0 0 auto;font-size:11px}.deck-filter-results>div{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:5px}.deck-filter-results span{padding:4px 7px;color:var(--muted);background:#f3f6f9;border:1px solid #e5eaf0;border-radius:999px;font-size:8px;line-height:1.2}.deck-help-dialog{width:min(650px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:hidden}.deck-help-dialog form{display:grid;max-height:calc(100dvh - 24px);grid-template-rows:auto minmax(0,1fr) auto;padding:0}.deck-help-dialog .dialog-head{padding:20px 22px 16px;background:#fff}.dialog-close-text{min-height:34px;padding:7px 10px;color:var(--blue-700);background:#fff;border:1px solid var(--line);border-radius:8px;font-size:10px;font-weight:850}.deck-help-body{min-height:0;overflow-y:auto;padding:18px 22px;overscroll-behavior:contain}.deck-help-intro{margin:0;color:var(--muted);font-size:11px;line-height:1.55}.deck-help-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0 0;padding:0;list-style:none}.deck-help-steps li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px;padding:12px;background:#f8fafc;border:1px solid var(--line);border-radius:10px}.deck-help-steps b{width:28px;height:28px;display:grid;place-items:center;color:#fff;background:var(--blue-700);border-radius:8px;font-size:10px}.deck-help-steps strong,.deck-help-steps span{display:block}.deck-help-steps strong{font-size:11px}.deck-help-steps span{margin-top:4px;color:var(--muted);font-size:9px;line-height:1.45}.deck-help-note{display:grid;gap:4px;margin-top:12px;padding:12px;color:#654a0c;background:var(--gold-100);border:1px solid #f0d38d;border-radius:10px}.deck-help-note strong{font-size:10px}.deck-help-note span{font-size:9px;line-height:1.45}.deck-help-dialog .dialog-actions{padding:14px 22px calc(14px + env(safe-area-inset-bottom));background:#fff}.deck-help-dialog .dialog-actions .button{min-width:100px}
.deck-filter-group .deck-filter-label{grid-template-columns:minmax(0,1fr);justify-content:stretch;align-items:stretch}
@media(max-width:900px){.deck-filter-sections{grid-template-columns:1fr}.deck-filter-group .deck-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.deck-filter-card{padding:18px 16px}.deck-filter-head{gap:10px}.deck-filter-head h2{font-size:21px}.deck-filter-actions{align-self:flex-start}.deck-filter-group{padding:13px 12px}.deck-filter-group .deck-filter-grid{grid-template-columns:1fr}.deck-filter-group .deck-filter-label .filter-select{display:block;width:100%;inline-size:100%;max-width:100%;font-size:16px}.deck-player-fit>summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;align-items:center;padding:12px}.deck-player-fit>summary small{grid-column:1/-1;max-width:none;margin-left:32px;text-align:left}.deck-player-fit-grid{padding:0 12px 12px}.deck-filter-results{display:grid;gap:9px}.deck-filter-results>div{justify-content:flex-start}.deck-help-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:14px}.deck-help-dialog form{max-height:calc(100dvh - 16px)}.deck-help-dialog .dialog-head{padding:16px 16px 13px}.deck-help-dialog .dialog-head h2{font-size:21px;line-height:1.1}.deck-help-body{padding:15px 16px}.deck-help-steps{grid-template-columns:1fr}.deck-help-dialog .dialog-actions{padding:12px 16px calc(12px + env(safe-area-inset-bottom))}.deck-help-dialog .dialog-actions .button{width:100%}}

/* Public compliance navigation remains visible before a member signs in. */
.sidebar-legal-links{display:flex;flex-wrap:wrap;gap:5px 10px;margin:12px 8px 0;padding-top:12px;border-top:1px solid rgba(255,255,255,.09)}
.sidebar-legal-links a{color:#8fa4bd;font-size:9px;text-decoration:none}
.sidebar-legal-links a:hover,.sidebar-legal-links a:focus-visible{color:#fff;text-decoration:underline}
.gate-legal-links{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.gate-legal-links a{color:var(--blue-700);font-size:10px;font-weight:800}
.gate-legal-links a:hover,.gate-legal-links a:focus-visible{text-decoration-thickness:2px}

/* Member efficiency: compare each retained week on the fixed four-battle scoring scale. */
.member-chart-legend{display:flex;flex-wrap:wrap;gap:8px 14px;margin:0 4px 8px;color:var(--muted);font-size:8px;font-weight:750}.member-chart-legend span{display:flex;align-items:center;gap:6px}.member-chart-legend i,.member-chart-tooltip i{width:14px;height:3px;display:inline-block;flex:0 0 auto;background:var(--blue-600);border-radius:3px}.member-chart-legend i.clan,.member-chart-tooltip i.clan{height:2px;background:repeating-linear-gradient(90deg,var(--gold-600) 0 5px,transparent 5px 8px)}.member-chart-wrap{position:relative}.member-chart:focus-visible{outline:3px solid rgba(42,118,207,.28);outline-offset:2px}.member-chart-tooltip{position:absolute;z-index:2;display:grid;gap:3px;padding:10px 11px;color:#fff;background:rgba(7,20,38,.96);border:1px solid rgba(255,255,255,.14);border-radius:9px;box-shadow:0 10px 26px rgba(7,20,38,.24);pointer-events:none;font-size:8px;line-height:1.35}.member-chart-tooltip[hidden]{display:none}.member-chart-tooltip strong{margin-bottom:2px;font-size:10px}.member-chart-tooltip span{display:flex;align-items:center;gap:6px;font-weight:800}.member-chart-tooltip small{padding-left:20px;color:#b8c7d8;font-size:7px}.member-chart-scale{margin:7px 4px 0!important;color:var(--muted)!important;font-size:8px!important;line-height:1.45}.member-efficiency-section .member-chart{touch-action:manipulation}
.past-member-departure strong,
.past-member-departure small {
  display: block;
  white-space: nowrap;
}

.past-member-departure strong {
  font-size: 13px;
}

.past-member-departure small {
  margin-top: 4px;
  color: var(--muted);
  font-size: 10px;
}

.colosseum-period-note {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 20px 14px;
  padding: 12px 14px;
  border: 1px solid #d9ccf7;
  border-radius: 12px;
  background: #f7f3ff;
  color: #49377f;
}

.colosseum-period-note strong {
  white-space: nowrap;
}

.colosseum-period-note span {
  color: #6c6284;
  font-size: 13px;
}

.live-river small,
.live-battles small {
  display: block;
  margin-top: 3px;
  color: var(--slate-500);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

@media (max-width: 720px) {
  .colosseum-period-note {
    align-items: flex-start;
    flex-direction: column;
    gap: 3px;
    margin: 0 12px 12px;
  }

  .colosseum-period-note strong {
    white-space: normal;
  }
}
/* Daily war results keep the closed-day record readable beside weekly history. */
.war-days-card{margin:0 0 22px;overflow:hidden}
.war-days-head{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:22px 24px 18px}
.war-days-head h2{margin:5px 0 6px;font-size:23px;letter-spacing:-.03em;color:#192c4f}
.war-days-head p{margin:0;color:#60718c;font-size:13px;line-height:1.45}
.war-days-head label{display:grid;gap:7px;min-width:240px;color:#4b5e7d;font-size:12px;font-weight:700}
.war-days-head select{width:100%;min-height:44px;padding:9px 35px 9px 12px;border:1px solid #cbd9ec;border-radius:7px;background:#fff;color:#1a2c4d;font-size:13px}
.war-days-summary{display:flex;gap:0;margin:0 24px 16px;padding:14px 0;border-top:1px solid #e3eaf4;border-bottom:1px solid #e3eaf4}
.war-days-summary>div{display:grid;gap:4px;padding:0 22px;border-left:1px solid #e3eaf4}
.war-days-summary>div:first-child{padding-left:0;border-left:0}
.war-days-summary span{color:#62738c;font-size:11px}
.war-days-summary strong{color:#182c4e;font-size:18px;font-variant-numeric:tabular-nums}
.war-days-list{list-style:none;display:grid;gap:8px;margin:0;padding:0 24px 20px}
.war-day-row{display:grid;grid-template-columns:138px 130px minmax(0,1fr);gap:18px;align-items:center;min-height:88px;padding:13px 17px;border:1px solid #dfe7f2;border-radius:9px;background:#fbfcff}
.war-day-row.recorded{background:#fff}
.war-day-row.in-progress{background:#f0f5ff;border-color:#b6cef7}
.war-day-when span,.war-day-when strong,.war-day-place strong,.war-day-place small,.war-day-numbers small,.war-day-numbers strong{display:block}
.war-day-when span{color:#54719d;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.war-day-when strong{margin-top:4px;color:#1c3154;font-size:16px}
.war-day-place strong{width:fit-content;padding:4px 8px;border-radius:5px;background:#e9eef5;color:#415674;font-size:14px}
.war-day-place.first strong{background:#e6f5ee;color:#146b45}
.war-day-place small{margin-top:5px;color:#667893;font-size:11px}
.war-day-numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.war-day-numbers span{padding-left:14px;border-left:1px solid #e6ebf3}
.war-day-numbers small{color:#62738c;font-size:11px;line-height:1.35}
.war-day-numbers strong{margin-top:5px;color:#162a4b;font-size:18px;font-variant-numeric:tabular-nums}
.war-day-numbers p{grid-column:1/-1;margin:0;color:#62738c;font-size:12px;line-height:1.5}
.war-days-source{margin:0;padding:14px 24px 18px;border-top:1px solid #e3eaf4;color:#62738c;font-size:11px;line-height:1.5}
@media(max-width:780px){.war-days-head{display:grid;align-items:start;padding:19px 17px 15px}.war-days-head label{min-width:0;width:100%}.war-days-summary{margin:0 17px 14px}.war-days-summary>div{padding:0 12px}.war-days-summary strong{font-size:15px}.war-days-list{padding:0 17px 17px}.war-day-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:13px}.war-day-place{text-align:right}.war-day-place strong{margin-left:auto}.war-day-numbers{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding-top:11px;border-top:1px solid #e6ebf3}.war-day-numbers span{padding-left:8px}.war-day-numbers span:first-child{padding-left:0;border-left:0}.war-day-numbers strong{font-size:15px}.war-days-source{padding:13px 17px}}
@media(max-width:440px){.war-days-summary>div{padding:0 8px}.war-days-summary span,.war-day-numbers small{font-size:10px}.war-days-summary strong{font-size:13px}.war-day-when strong{font-size:14px}.war-day-numbers strong{font-size:13px}}
.review-login { margin-top: 20px; }
.review-login summary { cursor: pointer; font-weight: 600; }
.review-login form { display: grid; gap: 10px; margin-top: 12px; }
.review-login input { min-width: 0; width: 100%; padding: 12px; font-size: 16px; }
.review-access-banner { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 24px; border-bottom: 1px solid #d8e5db; background: #f0f8f2; color: #23472f; }
/* Deck explorer: scoped so member drawer cards retain their existing layout. */
.deck-explorer-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.deck-explorer .deck-filter-label>span{font-size:14px;text-transform:none;letter-spacing:0}.deck-explorer select{min-height:44px;font-size:15px}.deck-explorer p{font-size:14px;line-height:1.6}.deck-mode-note{margin-top:18px;color:var(--muted)}.deck-explorer .deck-ranking-list{padding:0 20px 20px}.deck-explorer .deck-ranking-row{display:block;padding:0;border-top:1px solid var(--line)}.deck-explorer-row>summary{list-style:none;cursor:pointer;padding:22px 0;outline-offset:4px}.deck-explorer-row>summary::-webkit-details-marker{display:none}.deck-explorer-row>summary:focus-visible{outline:3px solid var(--blue-500)}.deck-row-heading{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;font-size:16px}.deck-open-hint{margin-left:auto;color:var(--blue-700);font-size:14px}.deck-explorer-row[open] .deck-open-hint{font-weight:800}.deck-explorer-cards{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px}.deck-explorer-card{min-width:0;display:flex;flex-direction:column;gap:5px}.deck-explorer-card img{width:70px;max-width:100%;aspect-ratio:3/4;object-fit:contain;border-radius:7px;background:#edf2f8}.deck-explorer-card strong{font-size:14px;line-height:1.35;overflow-wrap:anywhere}.deck-explorer-card span,.deck-explorer-card small{font-size:12px;line-height:1.4;color:var(--muted)}.deck-explorer-card.underleveled span,.deck-explorer-card.missing span{color:#975900}.deck-row-stats{display:flex;flex-wrap:wrap;gap:10px 20px;align-items:center;margin-top:18px;font-size:14px}.deck-row-stats strong{font-size:16px}.deck-evidence{padding:20px;background:#f7f9fd;border-radius:8px;margin-bottom:20px}.deck-evidence h3{font-size:17px;margin:12px 0}.deck-evidence details>summary{min-height:44px;cursor:pointer;font-size:14px}.deck-evidence th,.deck-evidence td{font-size:14px}.deck-evidence td small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.deck-adopt-actions{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0}.deck-adopt-actions .row-button{font-size:14px;min-height:44px}.deck-thin-samples,.deck-coverage{margin-top:20px;padding:20px}.deck-thin-samples>summary{font-size:17px;font-weight:750;cursor:pointer;min-height:44px}.deck-coverage h2{font-size:18px}.deck-coverage p{color:var(--muted)}
@media(max-width:1100px){.deck-explorer-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.deck-explorer-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.deck-explorer-card img{width:80px}}
@media(max-width:520px){.deck-explorer-filter-grid{grid-template-columns:1fr}.deck-explorer .deck-ranking-list{padding:0 12px 12px}.deck-explorer-row>summary{padding:18px 0}.deck-explorer-cards{gap:12px 8px}.deck-explorer-card strong{font-size:13px}.deck-open-hint{margin-left:0}.deck-evidence{padding:12px}.deck-row-stats{gap:10px;font-size:14px}.deck-thin-samples,.deck-coverage{padding:16px}}
.clear-field .deck-explorer .deck-ranking-row{display:block;padding:0}.clear-field .deck-explorer .deck-filter-label>span{font-size:14px}.clear-field .deck-explorer .deck-filter-label select{font-size:15px}.clear-field .deck-explorer .card-head p{font-size:14px}.deck-explorer .deck-ranking-card{margin-top:20px}
/* Player detail: explicit identity, evidence windows and accessible metric help. */
.profile-role{display:block;font-size:12px;font-weight:600;color:#755519;margin:6px 0}
.profile-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.profile-section-heading h3{margin:0}
.profile-help{display:inline-block;position:relative;vertical-align:middle;font-size:12px;font-weight:400;margin-left:5px}
.profile-help>summary{display:inline-flex;align-items:center;justify-content:center;list-style:none;cursor:pointer;width:36px;height:36px;border-radius:5px;border:1px solid #dce5f1;background:#f7f9fd}.profile-help>summary::-webkit-details-marker{display:none}.profile-help[open]>div{position:absolute;right:0;top:40px;width:min(310px,70vw);padding:14px;background:#fff;color:#263950;box-shadow:0 8px 28px #15294f26;border:1px solid #cbd7e7;border-radius:7px;z-index:40;line-height:1.6}.profile-help p{margin:5px 0 0!important;font-size:12px!important}
.profile-coverage{font-size:12px;line-height:1.6;color:#53657f}.player-war-metrics>p{font-size:12px;color:#53657f;margin:8px 0 16px}
.activity-window-controls{display:flex;align-items:end;gap:8px;flex-wrap:wrap;margin:16px 0}.activity-window-controls label{font-size:12px;display:grid;gap:4px}.activity-window-controls input{color:#263950;border:1px solid #cbd7e7;border-radius:5px;padding:9px;background:white}
button.activity-day{font-family:inherit;text-align:left;cursor:pointer;width:100%;min-width:0}.activity-day.is-selected{outline:2px solid #2654c8;outline-offset:1px}.activity-date-detail{padding:14px;border:1px solid #cbd7e7;border-radius:6px;margin:16px 0;background:#f7f9fd;line-height:1.5}.activity-date-detail p{font-size:13px;margin:7px 0 0}.profile-efficiency-table{min-width:650px}.profile-efficiency-table caption{text-align:left;padding:14px 0;color:#53657f;font-size:12px}.profile-efficiency-table th[scope=row]{font-weight:500}.discord-navigation-dialog{max-width:480px}.discord-navigation-dialog h2{margin-top:0}.discord-destination{overflow-wrap:anywhere}.discord-navigation-dialog .dialog-actions{display:flex;gap:10px;justify-content:flex-end}.discord-navigation-dialog form{margin:0}
.profile-help summary:focus-visible,.activity-day:focus-visible,.activity-window-controls button:focus-visible,.activity-window-controls input:focus-visible{outline:3px solid #2654c8;outline-offset:3px}
.activity-label-mobile{display:none!important}
@media(max-width:700px){.activity-day .activity-label-full{display:none}.activity-day .activity-label-mobile{display:block!important;white-space:nowrap;font-size:10px}.activity-day small{display:none}.clear-field .activity-day{min-height:65px}.clear-field .activity-day strong{font-size:13px}}
.discord-navigation-dialog{width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:0}.discord-navigation-dialog .dialog-body{padding:24px}.discord-navigation-dialog h2{font-size:21px;margin:0}.discord-navigation-dialog p{font-size:13px;line-height:1.6;color:#53657f;margin:12px 0}.discord-navigation-dialog .discord-destination{padding:12px;background:#f7f9fd;border:1px solid #dce5f1;border-radius:5px}.discord-navigation-dialog .dialog-actions{align-items:center;padding:16px 0 0;margin:0;border-top:1px solid #dce5f1}.discord-navigation-dialog form{display:block;padding:0}.discord-navigation-dialog .button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;font-size:13px;line-height:1.2;text-decoration:none}
