:root { --night:#252735; --surface:#30313f; --surface-2:#3d3b48; --cream:#f0dfbb; --muted:#b2ada7; --gold:#dfbb7c; --orange:#bb8064; --aqua:#a1b69a; --rose:#c98987; --line:#5a555d; }
body { background:#252735; color:var(--cream); font-family:monospace; }
button,input,select { font-family:monospace!important; }
.shell { width:min(1440px,100%); max-width:100%; margin:auto; padding:18px 24px; }
.brand { margin-bottom:18px; }.brand-mark { border-radius:3px; background:#dfbb7c; box-shadow:4px 4px 0 #171e2b; }.brand strong { letter-spacing:.06em; }.brand span { color:#b9b09e; }
.season-badge { color:#c9b991; border:1px solid #625b5b; background:#30313f; border-radius:2px; }
.hero-stage,.menu-card,.lobby-panel,.canvas-frame,.controls-panel,.turn-card { border:2px solid #625b5b; border-radius:4px; box-shadow:6px 6px 0 #1c2230; background:#30313f; }
.hero-stage { min-height:660px; }.hero-backdrop { image-rendering:pixelated; object-fit:fill; opacity:1; }.hero-stage::after { background:linear-gradient(#25273566,transparent 55%); }
.hero-copy { padding:40px 30px; width:100%; }.hero-copy h1 { font-family:monospace; font-size:clamp(36px,4.5vw,66px); line-height:1.08; letter-spacing:-.05em; text-shadow:3px 3px #252735; }.hero-copy p { max-width:420px; font-family:monospace; font-size:15px; line-height:1.65; }
.eyebrow,.card-kicker { color:#b8c69b; }.feature-row span,.arena-tag { border-radius:2px; backdrop-filter:none; background:#252735d9; }.arena-tag { border-color:#99866b; }
.menu-card { min-height:660px; }.menu-card h2 { font-family:monospace; font-size:27px; letter-spacing:-.03em; }.menu-card input:not([type=range]),.solo-settings select,.online-settings select,.rule-settings select { border-radius:2px; background:#252735; border-color:#625b5b; color:#f0dfbb; }
.fighter-choice,.arena-choice,.weapon,.rule-settings { border-radius:2px; background-color:#252735; box-shadow:none!important; }.fighter-portrait { background-color:#3d3b48; border-radius:0; image-rendering:pixelated; }.fighter-choice.selected,.weapon.selected { background:#635b48; border-color:#dfbb7c; }.arena-choice { image-rendering:pixelated; }.arena-choice small { color:#f0dfbb; }.arena-choice.selected { border-color:#c3ce9f; }
.primary-button,.secondary-button,.fire-button,.icon-button,.room-code { border-radius:2px; border:2px solid #95866e; box-shadow:3px 3px 0 #1b202c; }.primary-button { background:#dfbb7c; }.secondary-button,.icon-button { background:#414454; }.fire-button { background:#b96f66; color:#fff0cf; border-color:#e2ab89; }.room-code { background:#252735; }
.game-wrap { width:100%; min-width:0; }.canvas-frame { width:100%; }.canvas-vignette { display:none; }canvas { image-rendering:pixelated; background:#252735; }
.game-topbar { grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); }.fighter>div { min-width:0; }.fighter strong { font-family:monospace; }.health-track,.health-track i { border-radius:0; }.health-track i { background:#d6a46c; }.fighter.right .health-track i { background:#a1b69a; }.turn-card { min-width:190px; box-shadow:none; }.turn-card strong { font-family:monospace; }.turn-timer { background:#30313f; box-shadow:none; border-color:#dfbb7c; border-radius:2px; }.turn-card small,.turn-card span { color:#c8bda7; }
.move-control { background:#252735eb; border:1px solid #817666; border-radius:2px; backdrop-filter:none; box-shadow:3px 3px 0 #1b202c; }.move-control button { border-radius:2px; background:#414454; border-color:#817666; }
.controls-panel { grid-template-columns:minmax(110px,1fr) minmax(0,3fr) minmax(110px,1fr) 112px; gap:12px; }.weapons { width:100%; min-width:0; }.weapon { min-width:72px; }.weapon span { image-rendering:pixelated; }.weapon::after { border-radius:0; background:#55515a; }.control-group label,.keyboard-help { color:#c9bda9; }.status-chip,.roster-player { border-radius:2px; box-shadow:none; backdrop-filter:none; }
.result-overlay { backdrop-filter:none; background:#252735e8; }.result-overlay h2 { font-family:monospace; }
@media(max-width:820px){.shell{padding:12px}.hero-stage{min-height:500px}.menu-card{min-height:auto}.controls-panel{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 100px}.controls-panel .control-group:nth-of-type(2){display:block}.weapons{grid-row:2;grid-column:1/-1}.fire-button{grid-column:3;grid-row:1}.turn-card{min-width:145px}.fighter>div{width:100%}}
@media(max-width:560px){.shell{padding:8px}.brand strong{font-size:14px}.brand span{font-size:8px}.hero-stage{min-height:460px}.hero-copy{padding:28px 20px}.hero-copy h1{font-size:38px}.hero-copy p{font-size:13px}.menu-card{padding:24px 16px}.game-topbar{gap:6px}.fighter>div{width:100%;min-width:0}.turn-card{min-width:118px;padding:5px}.turn-card strong{font-size:10px}.turn-card span{font-size:6px;letter-spacing:0}.turn-timer{width:25px;height:25px;right:-7px;top:-9px}.fighter strong{font-size:10px}.controls-panel{padding:10px;gap:8px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 76px}.fire-button{font-size:11px}.control-group label{font-size:8px;letter-spacing:0}.move-control{position:relative;left:auto;bottom:auto;transform:none;justify-content:center;border:0;border-top:1px solid #625b5b;box-shadow:none}.move-control button{width:48px;height:38px}.online-roster{top:5px;width:95%;gap:3px}.roster-player{min-width:0;flex:1;padding:4px}.roster-player header{font-size:7px}.weapon{min-width:66px}.game-wrap .keyboard-help{display:block;font-size:8px;line-height:1.5}}
