:root{color-scheme:dark;--birs-graphite:#0d0f12;--birs-warm-white:#f2f0e9;--birs-electric-blue:#4d72ff;--birs-fire-orange:#ff7a1a;--color-bg:var(--birs-graphite);--color-surface:#141820;--color-surface-elevated:#1a202a;--color-text:var(--birs-warm-white);--color-text-secondary:#c8c5bc;--color-text-muted:#8e938d;--color-border:#2c3440;--color-border-strong:#465161;--color-action:var(--birs-electric-blue);--color-action-hover:#7893ff;--color-achievement:var(--birs-fire-orange);--color-success:#64d89a;--color-warning:#ffc05c;--color-error:#ff6b5f;--color-timeout:#ff8b66;--color-focus:var(--birs-electric-blue);--color-overlay:rgba(13,15,18,.76);--color-disabled:#59606a;--font-sans:Arial,Helvetica,system-ui,sans-serif;--font-numeric:"Arial","Helvetica",system-ui,sans-serif;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--shadow-panel:0 20px 60px rgba(0,0,0,.24);--shell-max:1180px}*{box-sizing:border-box}html{min-width:320px;text-size-adjust:100%}body,html{background:var(--color-bg)}body{margin:0;min-height:100vh;overflow-x:clip;color:var(--color-text);font-family:var(--font-sans);text-rendering:optimizeLegibility}button,input,select,textarea{font:inherit}a{color:var(--color-action-hover);text-underline-offset:.18em}img{max-width:100%;height:auto}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.skip-link{position:fixed;top:var(--space-3);left:var(--space-3);z-index:20;transform:translateY(-180%);border-radius:var(--radius-sm);background:var(--color-action);color:#fff;padding:var(--space-3) var(--space-4);font-weight:800}.skip-link:focus{transform:translateY(0)}.app-shell{min-height:100vh;display:grid;grid-template-rows:auto auto 1fr}.shell-header{width:min(100%,var(--shell-max));margin:0 auto;padding:var(--space-4);display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.brand-link{display:inline-flex;width:-moz-fit-content;width:fit-content;align-items:center;gap:var(--space-3);color:var(--color-text);text-decoration:none}.brand-link img{width:96px}.brand-link span{max-width:18rem;color:var(--color-text-muted);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.primary-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--space-2);gap:var(--space-2)}.nav-link{min-height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);text-decoration:none;font-weight:750;text-align:center;overflow-wrap:anywhere}.nav-link[aria-current=page]{border-color:var(--color-action);color:var(--color-text);box-shadow:inset 0 -3px 0 var(--color-action)}.shell-status{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;justify-content:center;border-block:1px solid var(--color-border);color:var(--color-text-muted);padding:var(--space-2) var(--space-4);text-align:center;font-size:.78rem}.sound-toggle{min-height:32px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#10141b;color:var(--color-text-secondary);padding:.35rem .6rem;font-weight:750;cursor:pointer}.sound-toggle[aria-pressed=true]{border-color:rgba(77,114,255,.58);color:var(--color-text)}.shell-main{width:min(100%,var(--shell-max));margin:0 auto;padding:var(--space-5) var(--space-4) var(--space-7)}.page-stack{display:grid;grid-gap:var(--space-5);gap:var(--space-5)}.page-header{display:grid;grid-gap:var(--space-3);gap:var(--space-3);max-width:760px}.auth-panel h1,.hero-panel h1,.page-header h1{margin:0;color:var(--color-text);font-size:clamp(2.25rem,7vw,5rem);line-height:.95;letter-spacing:0}.empty-state p,.error-state p,.hero-copy,.page-header p,.support-copy{color:var(--color-text-secondary);line-height:1.65}.hero-panel{min-height:min(620px,72vh);display:grid;align-content:center;grid-gap:var(--space-4);gap:var(--space-4)}.hero-panel>p{margin:0}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-3)}.home-foundation-panel{max-width:760px}.panel{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-5);box-shadow:var(--shadow-panel)}.icon-button,.ui-button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border-radius:var(--radius-sm);border:1px solid transparent;padding:.75rem 1rem;font-weight:800;cursor:pointer;text-decoration:none;text-align:center;overflow-wrap:anywhere}.ui-button--primary{background:var(--color-action);color:#fff}.ui-button--primary:hover{background:var(--color-action-hover)}.ui-button--secondary{background:transparent;color:var(--color-text);border-color:var(--color-border-strong)}.ui-button--quiet{background:transparent;color:var(--color-text-secondary);border-color:transparent}.ui-button--destructive{background:#4a1f21;color:#ffd9d4;border-color:#7d3835}.icon-button:disabled,.ui-button:disabled{cursor:not-allowed;opacity:.62;color:var(--color-disabled)}.button-link-reset{color:inherit;text-decoration:none}.icon-button{width:44px;padding:0;background:transparent;color:var(--color-text);border-color:var(--color-border)}.field-stack{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.field-label{color:var(--color-text-secondary);font-size:.92rem;font-weight:750}.field-control{width:100%;min-height:46px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:#10141b;color:var(--color-text);padding:.75rem .85rem;scroll-margin-block:30vh}.field-control[aria-invalid=true]{border-color:var(--color-error)}.field-error,.field-help{margin:0;font-size:.86rem;line-height:1.45}.field-help{color:var(--color-text-muted)}.field-error{color:#ffb8b1}.status-badge{width:-moz-fit-content;width:fit-content;display:inline-flex;align-items:center;gap:var(--space-2);border:1px solid var(--color-border);border-radius:999px;padding:.35rem .6rem;color:var(--color-text-secondary);font-size:.78rem;font-weight:850;letter-spacing:.05em;text-transform:uppercase;overflow-wrap:anywhere}.status-badge:before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:currentColor}.status-badge--active{color:var(--color-action-hover);border-color:rgba(77,114,255,.55)}.status-badge--success{color:var(--color-success)}.status-badge--waiting,.status-badge--warning{color:var(--color-warning)}.status-badge--error{color:var(--color-error)}.status-badge--timeout{color:var(--color-timeout)}.inline-message{display:grid;grid-gap:var(--space-1);gap:var(--space-1);border:1px solid var(--color-border);border-left-width:4px;border-radius:var(--radius-md);padding:var(--space-4);background:#10141b;color:var(--color-text-secondary)}.inline-message--success{border-left-color:var(--color-success)}.inline-message--waiting,.inline-message--warning{border-left-color:var(--color-warning)}.inline-message--error,.inline-message--timeout{border-left-color:var(--color-error)}.inline-message--active{border-left-color:var(--color-action)}.loading-indicator{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-text-secondary)}.loading-dot{width:.62rem;height:.62rem;border-radius:50%;background:var(--color-action);animation:birs-pulse 1.1s ease-in-out infinite}.empty-state,.error-state{display:grid;grid-gap:var(--space-3);gap:var(--space-3);max-width:640px}.empty-state h2,.error-state h2{margin:0;font-size:clamp(1.35rem,4vw,2rem)}.empty-state p,.error-state p{margin:0}.skeleton{min-height:6rem;border-radius:var(--radius-md);background:linear-gradient(90deg,#161b23,#202735,#161b23);background-size:240% 100%;animation:birs-skeleton 1.4s linear infinite}.dialog-backdrop{position:fixed;inset:0;z-index:15;display:grid;place-items:center;padding:var(--space-4);background:var(--color-overlay)}.dialog{width:min(100%,520px);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface-elevated);padding:var(--space-5)}.auth-page{min-height:100vh;display:grid;place-items:center;padding:var(--space-5)}.auth-panel{width:min(100%,440px);display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.auth-brand{display:inline-flex;align-items:center;gap:var(--space-3);color:var(--color-text);text-decoration:none}.auth-brand img{width:96px}.auth-brand span{color:var(--color-text-muted);font-size:.72rem;letter-spacing:.09em;text-transform:uppercase}.eyebrow{margin:var(--space-5) 0 0;color:var(--color-action-hover);font-size:.75rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.auth-form{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.auth-footer,.auth-links{margin-top:var(--space-2);font-size:.92rem}.auth-footer{color:var(--color-text-muted)}.gameplay-shell{display:grid;grid-gap:var(--space-5);gap:var(--space-5)}.gameplay-entry{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.decision-panel,.encounter-result,.flow-panel,.history-panel,.readiness-panel,.side-panel{display:grid;grid-gap:var(--space-4);gap:var(--space-4);align-content:start}.decision-panel h2,.encounter-result h2,.flow-panel h2,.history-panel h2,.readiness-panel h2,.side-panel h2{margin:0;font-size:1.22rem}.panel-copy{margin:0;color:var(--color-text-secondary);line-height:1.55}.mode-grid,.range-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-2);gap:var(--space-2)}.choice-tile{min-height:44px;display:flex;align-items:center;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);color:var(--color-text-secondary);background:#10141b}.choice-tile:has(input:checked){border-color:var(--color-action);color:var(--color-text);box-shadow:inset 0 -3px 0 var(--color-action)}.choice-tile input{inline-size:1rem;block-size:1rem;accent-color:var(--color-action)}.arena-layout{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.arena-heading{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.arena-heading h2{margin:0;font-size:clamp(1.7rem,6vw,3.2rem)}.arena-heading p{margin:0;color:var(--color-text-secondary);line-height:1.6}.scoreboard{display:grid;grid-template-columns:1fr;grid-gap:var(--space-4);gap:var(--space-4)}.encounter-context,.player-fire{display:grid;grid-gap:var(--space-2);gap:var(--space-2);justify-items:start}.encounter-context span,.metric small,.metric span,.player-fire>span{color:var(--color-text-muted);font-size:.82rem}.fire-slots{display:flex;gap:var(--space-2)}.fire-slot{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:#10141b;color:transparent;overflow:hidden}.fire-slot img{width:22px}.fire-slot--earned{color:var(--color-achievement);border-color:rgba(255,122,26,.72);background:rgba(255,122,26,.12);box-shadow:0 0 0 1px rgba(255,122,26,.12),0 0 22px rgba(255,122,26,.16)}.fire-slot--earned:before{content:"";width:18px;height:24px;border-radius:60% 60% 55% 55%;background:var(--color-achievement);-webkit-clip-path:polygon(50% 0,72% 34%,100% 55%,84% 100%,50% 82%,16% 100%,0 55%,28% 34%);clip-path:polygon(50% 0,72% 34%,100% 55%,84% 100%,50% 82%,16% 100%,0 55%,28% 34%)}.fire-slot--earned span{position:absolute;clip:rect(0 0 0 0)}.encounter-context strong{color:var(--color-text);font-family:var(--font-numeric);font-size:2.4rem}.decision-topline{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;justify-content:space-between}.timer-pill{min-height:36px;display:inline-flex;align-items:center;gap:var(--space-2);width:-moz-fit-content;width:fit-content;border:1px solid var(--color-border);border-radius:999px;padding:.45rem .7rem;color:var(--color-text-secondary);font-family:var(--font-numeric);overflow-wrap:anywhere}.timer-pill--active{border-color:rgba(77,114,255,.58)}.timer-pill--warning{border-color:var(--color-warning);color:var(--color-warning)}.timer-pill--waiting{border-color:var(--color-border-strong)}.timer-pill--timeout{border-color:var(--color-timeout);color:var(--color-timeout)}.range-rail-block{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.range-rail-labels{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-3);color:var(--color-text-muted);font-family:var(--font-numeric)}.range-rail-labels strong{color:var(--color-text)}.range-rail{position:relative;height:10px;border-radius:999px;background:#0c1016;border:1px solid var(--color-border);overflow:hidden}.range-rail span{position:absolute;inset-block:0;border-radius:inherit;background:var(--color-action);transition:left .28s ease,width .28s ease}.pr-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.metric{min-height:92px;display:grid;grid-gap:var(--space-1);gap:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);background:#10141b}.metric strong{color:var(--color-text);font-family:var(--font-numeric);font-size:1.8rem}.metric--quiet{opacity:.84}.guess-form{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.result-feedback{display:grid;grid-template-columns:auto 1fr;grid-gap:var(--space-2) var(--space-3);gap:var(--space-2) var(--space-3);align-items:center;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);padding:var(--space-4);background:#10141b}.result-feedback img{grid-row:span 2;width:34px;height:34px}.result-feedback span{color:var(--color-text-secondary);line-height:1.45}.guess-history{display:grid;grid-gap:var(--space-3);gap:var(--space-3);margin:0;padding-left:1.2rem}.guess-history li{color:var(--color-text-secondary)}.guess-history span,.guess-history strong{display:block}.tournament-shell{display:grid;grid-gap:var(--space-5);gap:var(--space-5)}.tournament-hero{display:grid;grid-gap:var(--space-4);gap:var(--space-4);align-items:end;min-height:280px;padding:clamp(1.25rem,4vw,2.5rem);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:linear-gradient(135deg,rgba(77,114,255,.16),rgba(22,163,74,.1)),#0e1218}.tournament-hero h1{margin:var(--space-3) 0 var(--space-2);font-size:clamp(2.4rem,8vw,5rem);line-height:.96}.muted-copy,.tournament-hero p,.tournament-summary span{color:var(--color-text-secondary)}.tournament-summary{display:grid;grid-gap:var(--space-1);gap:var(--space-1);width:min(100%,360px);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);background:rgba(12,16,22,.86)}.tournament-summary strong{font-size:1.1rem}.tournament-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.tournament-card{display:grid;grid-gap:var(--space-1);gap:var(--space-1);min-height:118px;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);color:var(--color-text);text-decoration:none;background:#10141b}.tournament-card:focus-visible,.tournament-card:hover{border-color:var(--color-action)}.tournament-card strong{font-family:var(--font-numeric);font-size:1.8rem}.tournament-card small{color:var(--color-text-muted)}.tournament-grid,.tournament-panel{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.tournament-panel--primary{border-color:rgba(77,114,255,.34)}.tournament-panel--wide{min-width:0}.tournament-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:var(--space-3);gap:var(--space-3);margin:0}.assignment-row,.pool-card,.tournament-facts div{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);background:#0c1016}.tournament-facts dt{color:var(--color-text-muted);font-size:.82rem}.tournament-facts dd{margin:var(--space-1) 0 0;color:var(--color-text);font-weight:700}.tournament-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.progression-steps,.tournament-listing{display:grid;grid-gap:var(--space-2);gap:var(--space-2);margin:0;padding-left:1.2rem;color:var(--color-text-secondary)}.assignment-list,.pool-grid{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.assignment-row strong,.pool-card h3{margin:0;color:var(--color-text)}.assignment-row p,.pool-card p{margin:var(--space-2) 0 0;color:var(--color-text-secondary)}.pool-card ul{display:grid;grid-gap:.35rem;gap:.35rem;margin:var(--space-3) 0 0;padding-left:1.1rem}.assignment-row{display:grid;grid-gap:var(--space-1);gap:var(--space-1)}.assignment-row span{color:var(--color-action);font-weight:700}.standings-table-wrap{min-width:0;overflow-x:auto}.standings-table{width:100%;min-width:760px;border-collapse:collapse;color:var(--color-text-secondary)}.standings-table caption{text-align:left;color:var(--color-text-muted);margin-bottom:var(--space-2)}.standings-table td,.standings-table th{border-bottom:1px solid var(--color-border);padding:.75rem .6rem;text-align:left;vertical-align:top}.standings-table th{color:var(--color-text);font-size:.82rem}.standings-table td:first-child,.standings-table td:nth-child(3),.standings-table td:nth-child(5),.standings-table td:nth-child(6),.standings-table td:nth-child(7){font-family:var(--font-numeric)}.history-panel,.profile-panel,.spectator-shell{display:grid;grid-gap:var(--space-5);gap:var(--space-5)}.spectator-hero{display:grid;grid-gap:var(--space-4);gap:var(--space-4);align-items:center;min-height:240px;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:clamp(1.25rem,4vw,2.4rem);background:linear-gradient(135deg,rgba(77,114,255,.14),rgba(242,240,233,.04)),#0e1218}.spectator-hero h1{margin:var(--space-3) 0 var(--space-2);font-size:clamp(2rem,7vw,4.2rem);line-height:1}.spectator-hero p{max-width:760px;color:var(--color-text-secondary)}.spectator-hero img{width:72px;height:72px;justify-self:start}.spectator-grid,.spectator-panel{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.spectator-panel--primary,.spectator-panel--wide{min-width:0}.profile-fields,.spectator-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:var(--space-3);gap:var(--space-3);margin:0}.profile-fields div,.spectator-facts div{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);background:#0c1016}.profile-fields dt,.spectator-facts dt{color:var(--color-text-muted);font-size:.82rem}.profile-fields dd,.spectator-facts dd{margin:var(--space-1) 0 0;color:var(--color-text);font-weight:700}.spectator-actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}.state-list{display:grid;grid-gap:var(--space-2);gap:var(--space-2);margin:0;padding-left:1.2rem;color:var(--color-text-secondary)}.connectivity-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));grid-gap:var(--space-2);gap:var(--space-2)}.connectivity-strip span,.history-kind,.provenance-chip{display:inline-flex;width:-moz-fit-content;width:fit-content;align-items:center;border:1px solid var(--color-border);border-radius:999px;padding:.35rem .55rem;color:var(--color-text-secondary);font-size:.78rem;text-transform:uppercase;overflow-wrap:anywhere}.history-list{margin:0;padding:0;list-style:none}.history-list,.history-row{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.history-row{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);background:#10141b}.history-row h3{margin:var(--space-2) 0 var(--space-1)}.history-row p,.history-row span{color:var(--color-text-secondary)}.history-row strong{display:block;color:var(--color-text);margin-bottom:var(--space-2)}.global-state-panel{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}@keyframes birs-pulse{0%,to{opacity:.45;transform:scale(.82)}50%{opacity:1;transform:scale(1)}}@keyframes birs-skeleton{0%{background-position:100% 0}to{background-position:-140% 0}}@media (min-width:700px){.shell-header{grid-template-columns:auto 1fr;align-items:center;padding-block:var(--space-5)}.primary-nav{display:flex;justify-content:flex-end}.nav-link{padding-inline:var(--space-4)}.auth-brand img,.brand-link img{width:120px}.gameplay-entry{grid-template-columns:1fr 1fr;align-items:start}.gameplay-entry .page-header{grid-column:1/-1}.tournament-hero{grid-template-columns:minmax(0,1fr) auto}.pool-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.spectator-hero{grid-template-columns:minmax(0,1fr) auto}.history-row{grid-template-columns:minmax(0,1fr) minmax(180px,auto);align-items:center}.scoreboard{grid-template-columns:1fr auto 1fr;align-items:center}.player-fire:last-child{justify-items:end}.encounter-context{justify-items:center;text-align:center}.guess-form{grid-template-columns:minmax(0,1fr) auto;align-items:start}}@media (min-width:1100px){.shell-main{padding-top:var(--space-7)}.hero-panel{min-height:min(680px,74vh)}.arena-layout{grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr);align-items:start}.arena-heading,.scoreboard{grid-column:1/-1}.decision-panel{grid-row:span 3}.spectator-grid,.tournament-grid{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr)}.spectator-panel--primary,.spectator-panel--wide,.tournament-panel--primary,.tournament-panel--wide{grid-column:1/-1}}@media (max-width:420px){.shell-header,.shell-main{padding-inline:var(--space-3)}.primary-nav{gap:.35rem}.nav-link{font-size:.82rem}.brand-link span{display:none}.panel{padding:var(--space-4)}.mode-grid,.pr-grid,.range-grid,.tournament-facts{grid-template-columns:1fr}.decision-topline{align-items:flex-start}.status-badge,.timer-pill{max-width:100%}}@media (max-height:520px) and (orientation:landscape){.shell-main{padding-block:var(--space-4) var(--space-5)}.hero-panel,.spectator-hero,.tournament-hero{min-height:auto}.auth-panel h1,.hero-panel h1,.page-header h1,.spectator-hero h1,.tournament-hero h1{font-size:2rem;line-height:1.05}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:0s!important}}