@font-face{font-family:Horde Brass;src:url('/img/horde/ui/horde-brass.woff2?v=20261003-bold-m') format('woff2');font-display:swap;font-weight:400}
:root{--bg:#1b1c20;--panel:#2e2f33;--line:#5d5e62;--ink:#f2e4bd;--dim:#b3b4b8;--amber:#d7a453;--amber2:#ffe0a0;--bad:#ed895b;--pixel:'Horde Brass',monospace}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;height:100%;background:#18191d;color:var(--ink);font:14px/1.6 var(--pixel);overflow:hidden;overscroll-behavior:none;font-synthesis:none}
button{font:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible{outline:3px solid #fff0c2;outline-offset:5px}
#c{position:fixed;inset:0;display:block;width:100vw;height:100vh;height:100dvh;touch-action:none}
#c,#hud,#enemy-bars,#loadout{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.pixel{font-family:var(--pixel);font-weight:400;letter-spacing:0}
#hud{position:fixed;inset:0 0 auto;padding:calc(12px + env(safe-area-inset-top)) 12px 0;display:flex;gap:10px;justify-content:space-between;align-items:flex-start;pointer-events:none;font-variant-numeric:tabular-nums}
.hud-panel{background:#222327eb;border:2px solid #18191d;box-shadow:inset 0 0 0 2px #7c7d81,inset 0 0 0 4px #404145,0 3px 0 #18191d;padding:10px 12px;position:relative}
.health-panel{width:244px;max-width:calc(100% - 142px)}
.hud-heading{display:flex;flex-wrap:wrap;gap:3px 6px;justify-content:space-between;align-items:center;color:#d6bd85;font:10px/1.3 var(--pixel);letter-spacing:.3px;margin-bottom:5px}
#lvl{display:flex;align-items:center;gap:9px;margin-top:7px}
.attack-stat{color:#c4c5c9;font:9px/1.2 var(--pixel);white-space:nowrap}.attack-stat b{font-weight:400;color:#f2e4bd}
.timer-label.overtime{color:#ffa778}
#h-lv{font:12px/1.2 var(--pixel);color:#ebe0b8;white-space:nowrap}
#lvl .bar{flex:1;height:10px;padding:2px;background:#16171b;box-shadow:0 0 0 1px #65666a;overflow:hidden}
#lvl .bar i{display:block;height:100%;width:0;background:#afb0b4;border-top:2px solid #d8d9dd;border-bottom:1px solid #717276}
.hud-bottom{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:9px;color:#c7c9ab;white-space:nowrap;font-size:10px}
.hud-bottom img{width:16px;height:16px;image-rendering:pixelated}
#h-kills{font:16px/1 var(--pixel);color:#ffdc91}
#h-spawn{margin-left:auto;color:#999a9e;font-size:9px}
#hud .right{margin-right:52px;min-width:80px;text-align:center;padding:10px 9px}
.timer-label{font-size:9px;letter-spacing:1.5px;color:#d6bd85;margin-bottom:6px}
#h-time{font:24px/1 var(--pixel);color:#fff1c9;white-space:nowrap}
#h-tier{margin-top:8px;font-size:8px;letter-spacing:.7px;color:#bbbcc0;white-space:nowrap}
#enemy-bars{position:fixed;inset:0;overflow:hidden;pointer-events:none}
#hud,#loadout{z-index:2}
.enemy-health{position:absolute;text-align:center;color:#fff0cf;font-family:var(--pixel);font-variant-numeric:tabular-nums;text-shadow:1px 1px #161319,-1px 1px #161319,1px -1px #161319,-1px -1px #161319}
.enemy-name{display:block;font-size:6px;line-height:11px;white-space:nowrap}
.enemy-health.boss .enemy-name{font-size:8px;line-height:15px;color:#ffe1a1}
.enemy-track{height:9px;border:2px solid #17131c;background:#38222d;clip-path:polygon(2px 0,calc(100% - 2px) 0,calc(100% - 2px) 1px,100% 1px,100% calc(100% - 1px),calc(100% - 2px) calc(100% - 1px),calc(100% - 2px) 100%,2px 100%,2px calc(100% - 1px),0 calc(100% - 1px),0 1px,2px 1px)}
.enemy-track i{display:block;height:100%;background:#d64250;border-top:1px solid #ff8c7b;border-bottom:1px solid #8a253b}
.enemy-hp{display:block;font-size:6px;line-height:9px;margin-top:2px}
.music-toggle,.hud-toggle{position:fixed;top:calc(12px + env(safe-area-inset-top));right:12px;z-index:25;width:44px;height:44px;padding:8px;border:2px solid #18191d;background:#333438;box-shadow:inset 0 0 0 2px #7c7d81,inset 0 -4px #202125,0 3px #18191d;color:var(--ink);display:grid;place-items:center}
.music-toggle img,.hud-toggle img{width:24px;height:24px;image-rendering:pixelated}.music-toggle:active,.hud-toggle:active{transform:translateY(2px);box-shadow:inset 0 0 0 2px #c6b176}
#loadout{position:fixed;bottom:calc(16px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;gap:7px;pointer-events:none}
.equip-slot{width:52px;height:52px;position:relative;display:grid;place-items:center;background:#2a2b2fed;border:2px solid #17181c;box-shadow:inset 0 0 0 2px #7c7d81,inset 0 -5px #3f4044,0 3px #17181c}
.equip-slot img{width:36px;height:36px;image-rendering:pixelated}.equip-slot.empty img{opacity:.2;filter:grayscale(1)}
.equip-slot span{position:absolute;bottom:-5px;right:-3px;min-width:16px;height:16px;background:#e3b76e;color:#2d2e32;border:2px solid #232428;text-align:center;font:10px/12px var(--pixel)}
.equip-slot.empty span{display:none}
.sheet{position:fixed;inset:0;display:none;place-items:center;background:#111216c7;padding:24px 20px;overflow:auto;z-index:20}
.sheet.on{display:grid}
.card{position:relative;width:100%;max-width:440px;background:var(--panel);border:4px solid #18191d;padding:28px 26px 24px;box-shadow:inset 0 0 0 2px #d1a663,inset 0 0 0 5px #4e4f53,inset 0 0 0 7px #7b794e,0 8px 0 #101115;clip-path:polygon(8px 0,calc(100% - 8px) 0,calc(100% - 8px) 4px,100% 4px,100% calc(100% - 8px),calc(100% - 4px) calc(100% - 8px),calc(100% - 4px) 100%,8px 100%,8px calc(100% - 4px),0 calc(100% - 4px),0 8px,8px 8px)}
.card:before,.card:after{content:'';position:absolute;top:12px;width:4px;height:4px;background:#f1cc82;box-shadow:0 2px #836442}
.card:before{left:12px}.card:after{right:12px}
.eyebrow{text-align:center;color:#b7b8bc;font-size:10px;letter-spacing:2px;text-transform:uppercase;margin-bottom:12px}
.card h1{font:24px/1.35 var(--pixel);text-align:center;color:#ffe2a6;margin:0 0 12px;text-shadow:0 3px #1b1c20}
.card p{margin:8px 0 15px;color:var(--dim);font-size:14px;line-height:1.65}
.card p b{color:var(--ink);font-weight:400}
.card .subtitle{text-align:center;margin:0 0 20px}
#up-title{font-size:12px;letter-spacing:1px;color:#bebfc3;text-shadow:none;margin-bottom:9px}
.upgrade-title{font:24px/1.4 var(--pixel);color:#ffe0a0;text-align:center;margin:0 0 8px;text-shadow:0 3px #1e1f23}
.upgrade-emblem{width:48px;height:48px;margin:0 auto 14px;display:block;image-rendering:pixelated}
#up-opts{display:grid;gap:12px}
.opt{position:relative;width:100%;appearance:none;display:grid;grid-template-columns:48px 1fr 12px;align-items:center;gap:14px;text-align:left;border:2px solid #1c1d21;background:#3f4044;color:var(--ink);padding:14px 12px;box-shadow:inset 0 2px #7a7b7f,inset 2px 0 #66676b,inset -2px 0 #2f3034,inset 0 -4px #27282c,0 2px #1c1d21;min-height:102px}
.opt:hover{background:#494a4e;box-shadow:inset 0 0 0 2px #caa264,inset 0 -4px #35363a,0 2px #1c1d21}
.opt:active{transform:translateY(2px);background:#36373b;box-shadow:inset 0 0 0 2px #e1b872}
.opt-icon{display:grid;width:48px;height:48px;place-items:center;background:#25262a;border:2px solid #707175;box-shadow:inset 0 0 0 2px #1e1f23}
.opt-icon img{width:36px;height:36px;image-rendering:pixelated}
.opt-copy{min-width:0}.opt b{display:block;font:16px/1.35 var(--pixel);color:#ffe1a1;margin:4px 0 7px}
.opt .description{display:block;font-size:12px;line-height:1.65;color:#c7c8cc}
.opt .category{display:block;font-size:8px;line-height:1.2;letter-spacing:1.5px;color:#b4b5b9}
.opt .chevron{font:16px var(--pixel);color:#c5ab6d}
.menu-foot{display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:1px;color:#97989c;margin-top:20px;text-align:center;justify-content:center}
.menu-foot:before,.menu-foot:after{content:'';height:2px;flex:1;background:#5d5e62;box-shadow:0 2px #242529}
button.primary{appearance:none;display:block;width:100%;margin-top:20px;border:2px solid #1e1f23;background:#cc9b51;color:#25262a;box-shadow:inset 0 3px #ffe0a0,inset 3px 0 #e8b765,inset -3px 0 #9f713d,inset 0 -5px #8c6235,0 3px #1a1b1f;padding:16px 14px;font:16px/1.2 var(--pixel)}
button.primary:hover{background:#e1b263}button.primary:active{transform:translateY(2px);box-shadow:inset 0 2px #ffe0a0,inset 0 -2px #8c6235}
.alpha-home{display:block;width:fit-content;margin:16px auto 0;padding:5px;color:#c4c5c9;font-size:11px;text-decoration:underline;text-underline-offset:3px}
.alpha-home:focus-visible{outline:2px solid #ffe0a0;outline-offset:3px}
#fox-preview{display:block;width:128px;height:128px;margin:0 auto 12px;image-rendering:pixelated}
#s-start h1{font-size:40px;letter-spacing:2px;margin-bottom:4px}
@media(max-width:440px){.card{padding:25px 18px 22px}.sheet{padding:20px 14px}.health-panel{padding:10px;width:220px}.hud-bottom{font-size:9px}#h-spawn{font-size:8px}#hud{gap:8px}#hud .right{padding:10px 6px;min-width:74px}.opt{gap:11px;padding:12px 10px;min-height:104px}.opt b{font-size:14px}.opt .description{font-size:11px}#s-start h1{font-size:32px}}
@media(max-height:700px){.sheet{padding-top:12px;padding-bottom:12px}.card{padding-top:22px;padding-bottom:18px}.upgrade-emblem{width:32px;height:32px;margin-bottom:8px}.opt{min-height:88px;padding-top:10px;padding-bottom:10px}#up-opts{gap:8px}.card .subtitle{margin-bottom:14px}.menu-foot{margin-top:14px}#fox-preview{width:96px;height:96px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
/* Keep modal content reachable on short screens and above gameplay controls. */
.sheet{align-items:safe center;z-index:30}

/* Stone, iron and a little treasure-room brass. */
[hidden]{display:none!important}
html,body{position:fixed;inset:0}
.card{background:linear-gradient(135deg,#36373c,#27282e 75%)}
#lvl .bar i{background:#90afc2;border-top-color:#d2e1e8;border-bottom-color:#526878}
#slot-skis img{width:44px;height:44px}
/* Treasure reel: small pixel stage, readable reward, one action. */
#s-loot{--loot-accent:#e5bf7b;background:#10121bd9}
#s-loot[data-rarity="common"]{--loot-accent:#c9d8d8}
#s-loot[data-rarity="rare"]{--loot-accent:#83d9ed}
#s-loot[data-rarity="epic"]{--loot-accent:#d8a0ff}
.loot-card{max-width:384px;text-align:center;overflow:hidden;padding:22px 22px 24px;background:#30313b;box-shadow:inset 0 0 0 2px #9b9390,inset 0 0 0 5px #464650,inset 0 0 0 7px #22242d,0 8px 0 #101115}
.loot-card:before,.loot-card:after{background:#d6c4a0;box-shadow:0 2px #645b54}
.loot-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:0 0 14px;text-align:left;font-size:10px;line-height:16px;color:#c9c1af}
#loot-tag{color:var(--loot-accent);font-size:8px;letter-spacing:1px;white-space:nowrap;padding:2px 5px;border:1px solid #64616b;background:#22252e}
.loot-stage{position:relative;width:100%;padding:4px;border:2px solid #151720;background:#5d5960;box-shadow:inset 0 2px #a29a91,inset 0 -2px #292a34,0 3px #191b24}
#loot-icon{display:block;width:100%;height:auto;aspect-ratio:2;image-rendering:pixelated}
.loot-reward{padding-top:17px;min-height:96px;display:flex;flex-direction:column;justify-content:center}
#loot-name{font-size:24px;line-height:1.25;margin:0 0 10px;color:#fff0cd;text-wrap:balance}
#loot-stats{font-size:16px;line-height:1.4;color:var(--loot-accent)}
#loot-description{font-size:12px;line-height:1.6;color:#bec0cd;margin:8px auto 0;max-width:288px;text-wrap:balance}
.loot-card #b-loot{margin-top:18px;min-height:48px;padding:13px 12px;font-size:16px}
#s-loot.spinning #loot-name{font-size:20px;color:#e4d5b5}
#s-loot.spinning #loot-stats{font-size:12px;color:#a9aab9}
#s-loot.landed .loot-stage{border-color:var(--loot-accent);animation:loot-lock .24s steps(3,end)}
#s-loot.landed .loot-reward{animation:loot-copy .25s steps(4,end) both}
@keyframes loot-lock{0%{transform:translateY(2px)}40%{transform:translateY(-2px)}100%{transform:none}}
@keyframes loot-copy{from{opacity:.3;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:360px){.loot-card{padding:20px 16px}#loot-name{font-size:22px}.loot-heading{font-size:9px}}
@media(max-height:500px) and (min-width:560px){.loot-card{max-width:620px;padding:18px 22px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:20px}.loot-heading{grid-column:1/-1;margin-bottom:10px}.loot-stage{grid-row:2/4;align-self:center}.loot-reward{padding-top:0;min-height:90px}#loot-name{font-size:22px}.loot-card #b-loot{margin-top:12px}#loot-description{font-size:11px}}
@media(prefers-reduced-motion:reduce){#s-loot.landed .loot-stage,#s-loot.landed .loot-reward{animation:none}}


/* Opacity follows simulation ticks; the camera changes only while opaque. */
#ski-fade{position:fixed;inset:0;background:#13151b;pointer-events:none;z-index:28}

/* Compact, owned-only equipment. Charges belong to their inventory icons. */
#health-bar{height:16px;padding:2px;background:#15161b;border:1px solid #77777d;box-shadow:inset 0 1px 2px #07080a}
#health-fill{display:block;height:100%;width:100%;background:#c63b44;border-top:2px solid #ed7e78;border-bottom:2px solid #8e242f}
#health-bar.low #health-fill{background:#e2444f}
#loadout{gap:17px;max-width:calc(100% - 20px);align-items:flex-end;bottom:calc(21px + env(safe-area-inset-bottom))}
.equip-group{min-width:0}.equip-label{color:#d2d3d7;background:#24252ae6;width:fit-content;padding:2px 5px;margin-bottom:5px;font:8px/1.4 var(--pixel);letter-spacing:1px}
.equip-row{display:flex;gap:7px}
.equip-slot{flex:none;width:46px;height:50px}.equip-slot img{width:32px;height:32px}
#slot-skis img{width:40px;height:40px}
.item-track{position:absolute;bottom:-8px;left:0;right:0;height:7px;padding:1px;background:#171920;border:1px solid #6e777d}
.item-track i{display:block;height:100%;width:100%;background:#99d9e5}.low .item-track i{background:#ecad63}
.equip-slot small{position:absolute;bottom:2px;left:3px;font:8px/1 var(--pixel);color:#f5ebcf;text-shadow:0 1px #000}
button.equip-slot{padding:0;pointer-events:auto;touch-action:none;-webkit-touch-callout:none;user-select:none}
button.equip-slot:disabled{cursor:default}button.equip-slot:disabled img{opacity:.65}
#slot-nuke{box-shadow:inset 0 0 0 2px #b298d6,inset 0 -5px #454052,0 3px #17181c}
@media(max-width:380px){#loadout{gap:12px}.equip-row{gap:5px}.equip-slot{width:42px;height:46px}}
@media(max-height:480px){#loadout{bottom:calc(12px + env(safe-area-inset-bottom))}}

#slot-shovel.digging .item-track i{background:#d7ae72}
@media(max-width:360px){#loadout{gap:10px}.equip-row{gap:4px}.equip-slot{width:38px;height:44px}.equip-slot img{width:30px;height:30px}#slot-skis img{width:36px;height:36px}}

#slot-anchor.selected{box-shadow:inset 0 0 0 2px #bce9ee,inset 0 -5px #3b6570,0 0 0 2px #60909b}
/* Extra relics wrap within Items; weapon grouping and touch targets stay intact. */
#loadout{width:max-content}#weapons-group{flex:none}#items-group .equip-row{flex-wrap:wrap;row-gap:16px}
#slot-swag,#slot-magnet,#slot-ice-crown{box-shadow:inset 0 0 0 2px #b298d6,inset 0 -5px #454052,0 3px #17181c}
#slot-pounce{box-shadow:inset 0 0 0 2px #7fbbc9,inset 0 -5px #34444f,0 3px #17181c}
#slot-swag .item-track i{background:#c5a7ee}
#slot-swag.swag-active{box-shadow:inset 0 0 0 2px #ffe69a,inset 0 -5px #695329,0 0 12px #f7c85975}
#slot-swag.swag-active .item-track i{background:#ffe69a}
#swag-mode{color:#ffe69a;white-space:nowrap}

/* End-of-run keeps the score and collected gear, without a fixed enemy quota. */
.end-card{max-width:520px}
.end-card .eyebrow{font-size:9px;letter-spacing:2px;margin-bottom:10px}
.end-card #end-title{font-size:24px;margin-bottom:6px;outline:none}
.end-card #end-message{text-align:center;font-size:11px;line-height:1.6;max-width:330px;margin:0 auto 17px}
.end-score{text-align:center;padding:14px 8px 16px;background:#202126;border:2px solid #17181d;box-shadow:inset 0 2px #505158}
.end-score>div{display:flex;align-items:center;justify-content:center;gap:12px;color:#ffe0a0;font:38px/1.3 var(--pixel);font-variant-numeric:tabular-nums}
.end-score img{width:28px;height:28px;image-rendering:pixelated}
.end-score>span{font-size:9px;letter-spacing:1.6px;color:#c6bdab}
.end-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 23px;padding:14px 0;border-bottom:2px solid #505158}
.end-stats>div{text-align:center;padding:0 4px}
.end-stats>div+div{border-left:1px solid #505158}
.end-stats dt{font-size:8px;line-height:1.4;letter-spacing:.3px;color:#b9bac1}
.end-stats dd{margin:7px 0 0;font:18px/1.2 var(--pixel);color:#f0e4c6;font-variant-numeric:tabular-nums}
.end-equipment{margin-top:19px}
.end-equipment h2{display:flex;align-items:center;gap:12px;font:10px/1.4 var(--pixel);color:#cebb96;margin:0 0 12px}
.end-equipment h2:after{content:'';height:2px;background:#505158;flex:1;box-shadow:0 1px #1c1d22}
.end-gear{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;margin:0;padding:0}
.end-gear-entry{display:flex;align-items:center;gap:10px;min-width:0}
.end-gear-icon{position:relative;flex:none;width:46px;height:46px;display:grid;place-items:center;border:2px solid #17181d;background:#24252b;box-shadow:inset 0 0 0 2px #82838b,inset 0 -5px #404148}
.end-gear-icon img{width:36px;height:36px;object-fit:contain;image-rendering:pixelated}
.end-gear-entry[data-rarity="rare"] .end-gear-icon{box-shadow:inset 0 0 0 2px #7fbbc9,inset 0 -5px #34444f}
.end-gear-entry[data-rarity="epic"] .end-gear-icon{box-shadow:inset 0 0 0 2px #b69bd8,inset 0 -5px #4c405d}
.end-quantity{position:absolute;right:-4px;bottom:-4px;padding:1px 3px;border:2px solid #202126;background:#e0b675;color:#25262b;font:9px/1.2 var(--pixel)}
.end-gear-copy{min-width:0}.end-gear-copy b{display:block;font-size:11px;font-weight:500;line-height:1.4;color:#eee1c5;overflow-wrap:break-word}
.end-gear-copy small{display:block;font-size:8px;letter-spacing:.4px;color:#adaeb7;margin-top:3px}
.end-gear-damage{display:block;margin-top:4px;font-size:10px;line-height:1.4;color:#c2d8e5;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.end-card #end-empty{margin:0;padding:14px;border:1px dashed #5c5d65;color:#a9aab3;font-size:11px;text-align:center}
.end-card .primary{margin-top:25px}.end-card .alpha-home{margin-top:12px}
@media(max-width:360px){.end-card #end-title{font-size:19px}.end-gear{grid-template-columns:1fr;gap:12px 9px}.end-gear-entry{gap:7px}.end-gear-icon{width:40px;height:40px}.end-gear-icon img{width:32px;height:32px}.end-gear-copy b{font-size:10px}.end-stats dt{font-size:7px}.end-equipment h2{font-size:9px}}

#slot-ice-crown .item-track i{background:#b9edff}

#health-bar.taking-hit{outline:2px solid #ffe0ba;box-shadow:0 0 0 4px #9b3e3e}

/* Leaderboard: Mobbed handles only, no photos. Same panel language as the sheets. */
button.ghost{appearance:none;display:block;width:100%;margin-top:12px;border:2px solid #1e1f23;background:#3a3b3f;color:var(--ink);box-shadow:inset 0 3px #5f6064,inset 3px 0 #4c4d51,inset -3px 0 #2b2c30,inset 0 -5px #26272b,0 3px #1a1b1f;padding:13px 14px;font:13px/1.2 var(--pixel)}
button.ghost:hover{background:#45464a}button.ghost:active{transform:translateY(2px);box-shadow:inset 0 2px #5f6064,inset 0 -2px #26272b}
.board-card{max-width:520px;max-height:calc(100dvh - 48px);display:flex;flex-direction:column;min-height:0}
.board-card>*{flex-shrink:0}
.board-card .board-status{text-align:center;font-size:11px;color:var(--dim);margin:0 0 12px}
.board-list{list-style:none;margin:0;padding:0 2px 0 0;display:grid;gap:6px;max-height:400px;min-height:60px;flex:0 1 auto;overflow:auto;overscroll-behavior:contain}
.board-row{display:grid;grid-template-columns:minmax(30px,max-content) minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;background:#25262a;border:2px solid #17181d;box-shadow:inset 0 2px #45464b}
.board-row.you{background:#2c2a24;box-shadow:inset 0 0 0 2px #d1a663,inset 0 2px #45464b}
.board-rank{font:13px/1 var(--pixel);color:#c5ab6d;text-align:right}
.board-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:13px/1.3 var(--pixel);color:#f0e4c6}
.board-weapons{display:flex;gap:4px;margin-top:5px}.board-weapons img{width:16px;height:16px;image-rendering:pixelated}
.board-meta{text-align:right;font:14px/1.1 var(--pixel);color:#ffe0a0;font-variant-numeric:tabular-nums}
.board-meta small{display:block;margin-top:4px;font:9px/1 var(--pixel);color:var(--dim);letter-spacing:.5px}
.board-you{margin:14px 0 0;padding-top:12px;border-top:2px solid #505157}
.board-you h2{margin:0 0 8px;font:11px/1.4 var(--pixel);color:#ffe0a0;letter-spacing:1px}
#board-best-list{list-style:none;margin:0;padding:0}
.board-card #board-no-best{margin:0;font-size:11px}
@media(max-width:440px){.board-card{padding:22px 14px 18px}.board-row{gap:7px;padding:8px 7px}.board-rank,.board-name,.board-meta{font-size:11px}}
@media(max-height:500px){#s-board{padding:10px 20px}.board-card{max-height:calc(100dvh - 20px);padding:18px 14px}.board-card .eyebrow{display:none}.board-card h1{font-size:18px;margin-bottom:4px}.board-you{margin-top:8px;padding-top:6px}.board-card button.ghost{padding:8px;margin-top:8px}}
.board-line{text-align:center;font:12px/1.6 var(--pixel);color:#ffe0a0;margin:12px 0 0}
.board-error{min-height:16px;text-align:center;font-size:11px;color:var(--bad);margin:8px 0 0}
.pixel-input{display:block;width:100%;box-sizing:border-box;margin-top:6px;padding:12px;background:#1e1f23;color:var(--ink);border:2px solid #0f1013;box-shadow:inset 0 2px #0b0c0f,inset 0 0 0 2px #5d5e62;font:16px/1.4 var(--pixel);letter-spacing:.5px;outline:none}
.pixel-input:focus{box-shadow:inset 0 2px #0b0c0f,inset 0 0 0 2px #d1a663}

/* Pause menu: one top-right button, music before the run, pause during it. */
.pause-stats{text-align:center;font:13px/1.6 var(--pixel);color:#ffe0a0;margin:0 0 4px}

/* Title screen: the fox and the name do the talking. */
body:has(#s-start.on) :is(#hud,#loadout,#enemy-bars){visibility:hidden}
#s-start{background:#111620a6}
#s-start .start-card{max-width:400px;padding:24px 30px 22px;background:#292c35;box-shadow:inset 0 0 0 2px #777783,inset 0 0 0 5px #3b3e48,inset 0 0 0 7px #20232b,0 8px 0 #101115;text-align:center}
.start-badge{width:fit-content;margin:0 auto;padding:4px 8px;border:1px solid #716550;color:#d2b37f;background:#24262e;font-size:8px;letter-spacing:2px;line-height:1}
#s-start #fox-preview{width:192px;height:192px;margin:-10px auto -6px;filter:drop-shadow(0 4px #171b2580)}
#s-start h1{font-size:40px;letter-spacing:0;margin:0 0 28px;color:#ffe1a1;text-shadow:0 4px #171b25}
#s-start #b-start{margin:0;min-height:56px;font-size:24px;letter-spacing:2px}
#s-start #b-board{margin-top:10px;min-height:44px;font-size:12px}
#s-start .start-controls{display:grid;gap:4px;margin:20px 0 0;font-size:10px;line-height:1.5;color:#bbbcc5}
#s-start .start-controls>span:last-child{color:#8e929f;font-size:8px;letter-spacing:.5px}
#s-start .start-touch{display:none}
#s-start .alpha-home{font-size:9px;color:#969aa8;margin-top:16px}
@media(hover:none) and (pointer:coarse){#s-start .start-desktop{display:none}#s-start .start-touch{display:block}}
@media(max-width:440px){#s-start .start-card{padding:22px 24px 18px}#s-start h1{font-size:32px;margin-bottom:24px}}
@media(max-width:360px){#s-start .start-card{padding:22px 20px 18px}#s-start h1{font-size:30px}}
@media(max-height:700px){#s-start #fox-preview{width:128px;height:128px;margin:0 auto}#s-start .start-controls{margin-top:14px}#s-start h1{margin-bottom:20px}}
@media(max-height:500px) and (min-width:560px){#s-start .start-card{max-width:600px;display:grid;grid-template-columns:160px 1fr;column-gap:26px;padding:22px 28px}#s-start .start-badge{grid-column:1;grid-row:1;align-self:start}#s-start #fox-preview{grid-column:1;grid-row:1/5;width:160px;height:160px;align-self:center;margin:12px 0 0}#s-start h1{grid-column:2;font-size:32px;margin:0 0 16px}#s-start #b-start,#s-start #b-board,#s-start .start-controls{grid-column:2}#s-start .alpha-home{grid-column:1;grid-row:5;align-self:end;margin:0 auto}#s-start .start-controls{grid-row:5;margin:12px 0 0}}

/* Sound settings: two pixel sliders. The amber fill tracks the thumb via --fill. */
.vol{display:grid;grid-template-columns:1fr auto;gap:6px 12px;align-items:center;margin-top:16px;font-size:11px;letter-spacing:2px;color:#ddb05f}
.vol output{font:inherit;color:var(--ink)}
.pixel-range{-webkit-appearance:none;appearance:none;grid-column:1/3;width:100%;height:36px;margin:0;background:transparent;--fill:100%}
.pixel-range::-webkit-slider-runnable-track{height:14px;border:2px solid #0f1013;background:linear-gradient(90deg,var(--amber) var(--fill),#1e1f23 var(--fill));box-shadow:inset 0 2px #0b0c0f}
.pixel-range::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:30px;margin-top:-10px;background:#f0c058;border:2px solid #1e1f23;box-shadow:inset 0 -5px #b98530,0 3px #18191d}
.pixel-range::-moz-range-track{height:14px;border:2px solid #0f1013;background:linear-gradient(90deg,var(--amber) var(--fill),#1e1f23 var(--fill))}
.pixel-range::-moz-range-thumb{width:24px;height:30px;border-radius:0;background:#f0c058;border:2px solid #1e1f23}
.pixel-range:focus-visible{outline:2px solid #d1a663;outline-offset:2px}
#s-sound .primary{margin-top:18px}
/* The speaker button must sit above the start and recap sheets (z-index 30) or it cannot be tapped there. */
#btn-music{z-index:40}
