/* Rob the Rich: forest green, treasure gold, target marks and carved block type. */
:root{--ink:#172f2b;--paper:#fff6db;--muted:#c3d4ba;--gold:#ffd447;--line:#93b6a84d;--mint:#70dc92;--pixel:'District Pixel',Impact,sans-serif}
body{color:var(--paper)}
button{transition:background .12s,transform .12s,box-shadow .12s}
button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #5ee4ee;outline-offset:4px}
.primary,.secondary,.text-button,.help-link,.role strong,.segmented button,.bot-setting,.section-label,.character-caption strong,.eyebrow,h1,h2,h3,.timer strong,.health-number strong,.ammo strong,.weapon-name,.kill-emblem strong,.kill-confirmation>b,.result-grid strong,.guide-example strong,.cast-label,.play-invitation{font-family:var(--pixel);font-weight:400;letter-spacing:0}
#menu{background:linear-gradient(0deg,#102d26c9,transparent 37%),linear-gradient(90deg,#173d3429,transparent 50%,#173d3429)}
.topbar{height:85px;padding:22px 28px;border:0;align-items:flex-start;pointer-events:none}
.topbar>*{pointer-events:auto}
.brand{position:absolute;top:9px;left:50%;transform:translateX(-50%);width:430px;line-height:0;filter:drop-shadow(0 6px 0 #172f2b55);transition:transform .15s}
.brand:hover{transform:translateX(-50%) rotate(-1deg)}.game-logo{width:100%;height:auto;overflow:visible}
.local{background:#173d34e8;border:2px solid #fff6db52;box-shadow:0 4px 0 #172f2b80;padding:11px 13px;font:12px var(--pixel);letter-spacing:0;gap:8px}
.local i{background:#75ed93;width:9px;height:9px;border-radius:0;box-shadow:0 0 0 2px #152e24}
.local span{display:none}.menu-actions{margin-left:auto;gap:12px}.menu-actions .text-button{padding:11px 15px;font-size:13px;background:#fff5d9;color:#244b3e;border:2px solid #21372b;box-shadow:0 4px 0 #21372b}.menu-actions .text-button span{font-family:Arial,sans-serif;font-size:17px;margin-left:8px}
.menu-actions .text-button:hover{background:#ffe58a;transform:translateY(-2px)}#music-toggle[aria-pressed=false]{background:#d8e1cf;color:#526958}
.hunt-board{position:absolute;left:28px;top:25%;width:260px;padding:22px 22px 19px;background:#173e35ed;border:3px solid #2f2119;box-shadow:inset 0 0 0 2px #719986,5px 6px 0 #172c2466;transform:rotate(-1deg)}
.hunt-board:before,.hunt-board:after{content:'';position:absolute;top:8px;width:5px;height:5px;background:#f3ce70;box-shadow:1px 1px #271e17}.hunt-board:before{left:8px}.hunt-board:after{right:8px}
.hunt-board .eyebrow{font-size:9px;color:#91d9a7;line-height:1.5}.hunt-board h1{font-size:28px;line-height:1.32;margin:18px 0 13px}.hunt-board h1 em{color:#ffd447}.hunt-board p{font-size:13px;line-height:1.6;color:#e4efd5}
.hunt-board ol{list-style:none;padding:0;margin:22px 0;counter-reset:hunt}.hunt-board li{display:grid;grid-template-columns:32px 1fr;column-gap:9px;margin:17px 0;counter-increment:hunt}.hunt-board li:before{content:counter(hunt);grid-row:span 2;background:#ffdc62;color:#253f2d;width:26px;height:26px;display:grid;place-items:center;font:15px var(--pixel);box-shadow:2px 3px #081b18}.hunt-board b{font:13px var(--pixel);color:#fff2c0}.hunt-board li span{font-size:12px;line-height:1.5;color:#bfdbbd;margin-top:5px}.hunt-board>small{font-size:9px;color:#aaceb0;letter-spacing:.6px}
#character-stage{position:absolute;left:50%;transform:translateX(-50%);top:23%;width:min(560px,41vw);height:48%;pointer-events:none}
.cast-label{position:absolute;top:94%;font-size:12px;white-space:nowrap;text-align:center;padding:8px 10px;background:#1b3d30f2;border:2px solid #162d23;box-shadow:0 3px #0d241c;color:#a0f2a9;transform:translateX(-50%)}.hood-label{left:25%}.rich-label{left:75%;background:#523d1df2;color:#ffe278}.cast-label small{display:block;font:9px Arial,sans-serif;margin-top:7px;color:#fff3d1;letter-spacing:.3px}
.hero{top:auto;bottom:67px;left:50%;transform:translateX(-50%);max-width:none;text-align:center;width:370px}.hero .play-invitation{font-size:11px;line-height:1.4;color:#fff5cf;text-shadow:2px 2px #153c2a;margin:0 0 13px}.playline{display:block}.play-note{display:none}
.primary{border:3px solid #273522;box-shadow:inset 0 3px 0 #fff3a7,inset 0 -4px 0 #d59225,0 6px 0 #273522;background:#ffd447;color:#253724;font-size:15px;min-height:58px;padding:15px 20px;gap:15px}.primary:hover{background:#ffe677;transform:translateY(-2px);box-shadow:inset 0 3px 0 #fff3a7,inset 0 -4px 0 #d59225,0 8px 0 #273522}.primary:active{transform:translateY(4px);box-shadow:inset 0 2px 0 #fff3a7,0 2px 0 #273522}.primary span{font-family:Arial,sans-serif;font-size:21px;line-height:1}#play{width:100%}
.help-link{width:100%;max-width:none;justify-content:center;gap:18px;background:#286d4b;color:#fff3d1;border:2px solid #183729;box-shadow:inset 0 2px 0 #71b37d,0 4px 0 #183729;padding:12px 20px;margin-top:14px;font-size:12px}.help-link span{font:14px var(--pixel);background:#fff2c5;color:#285038;width:20px;height:20px;display:grid;place-items:center}.help-link:hover{background:#318155;color:white;border-color:#183729}.hero .menu-controls{justify-content:center;gap:7px;font-size:8px;margin-top:15px;color:#e6f5ce;letter-spacing:0}kbd{border:1px solid #ddd9b878;background:#18362b9c;border-radius:0;color:#fff7d6;box-shadow:0 2px #102c24;font-family:var(--pixel);font-size:9px}
.loadout{right:28px;bottom:150px;width:304px;max-width:none;padding:18px;background:#fff3d5;border:3px solid #342e22;box-shadow:inset 0 0 0 2px #e5c57c,6px 7px 0 #162f2580;backdrop-filter:none;color:#244738}
.character-caption{display:flex!important;margin:0 0 17px;padding:0 0 17px;border-bottom:2px dashed #b0ba8c;gap:7px}.character-caption>span{font:9px var(--pixel);color:#618564;letter-spacing:0}.character-caption strong{font-size:22px;color:#214f37;line-height:1.3}.character-caption small{display:block;font-size:12px;line-height:1.5;color:#586c4f}.section-label{font-size:11px;color:#3e6545;margin-bottom:13px}.section-label span{color:#759060}
.roles{grid-template-columns:1fr;gap:10px}.role{min-height:77px;padding:13px 12px 12px 48px;border:2px solid #a1b88a;background:#e4eacb;box-shadow:0 3px #9bab7c}.role strong{font-size:14px;white-space:normal;margin:2px 0 8px;color:#31543a}.role small{font-size:9px;color:#627350;line-height:1.4}.role-icon{display:block;width:25px;height:25px;left:11px;top:20px;color:#65875c}.role i{display:none}.role.selected{background:#2f8250;border-color:#173f2c;box-shadow:inset 0 2px #8bd395,0 4px #173f2c}.role.selected strong,.role.selected .role-icon{color:#f1ffcb}.role.selected small{color:#d3ebc1}.role[data-role=rich].selected{background:#ffda5c;border-color:#715123;box-shadow:inset 0 2px #fff6b2,0 4px #715123}.role[data-role=rich].selected strong,.role[data-role=rich].selected .role-icon{color:#63421e}.role[data-role=rich].selected small{color:#76602b}.role:hover{transform:translateX(-2px);background:#d3e5bc}.role.selected:hover{background:#39915a}.role[data-role=rich].selected:hover{background:#ffe681}
.mode-row{flex-wrap:wrap;gap:17px;margin-top:20px}.segmented{width:100%;gap:8px}.segmented button{flex:1;padding:11px 8px;font-size:12px;background:#dce4c4;border:2px solid #a4b590;color:#647856;box-shadow:0 2px #a4b590}.segmented button.selected{background:#274f3a;color:#fff5ce;border-color:#1d392b;box-shadow:inset 0 2px #517954,0 2px #1d392b}.segmented small{display:block;font:9px Arial,sans-serif;margin:7px 0 0}.bot-setting{width:100%;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#456148}.bot-setting select{background:#fffbed;border:2px solid #abc09b;font:11px var(--pixel);color:#385a3d;padding:6px;max-width:150px}.bot-setting select option{background:#fff3d5;color:#244738}.loadout p{font-size:11px;line-height:1.6;color:#5d7253;margin-top:14px}
.menu-footer{height:38px;border:0;background:#153e32c9;padding:0 28px;color:#d3e9c7;font-size:9px;letter-spacing:.5px}.menu-footer b{color:#83bc80}.menu-footer>span:nth-child(2){font:10px var(--pixel);color:#ffdf71}
/* Shared screens keep the same carved edges, green base and gold actions. */
.overlay{background:#0b3025bc;backdrop-filter:blur(5px)}.dialog,.panel,#help{background:#193f34;border:3px solid #322c1f;box-shadow:inset 0 0 0 2px #6a987b,7px 8px 0 #10291e88}.dialog{max-height:92vh;overflow:auto}.dialog h2,.panel h2,.help-header h2{font:27px/1.4 var(--pixel);color:#ffdc67;letter-spacing:0}.dialog p,.panel>small{color:#daebd0}.eyebrow{font-size:10px;color:#9ed6a3;line-height:1.5}
.secondary{font-size:12px;background:#36644c;border:2px solid #102d23;box-shadow:inset 0 2px #679674,0 4px #102d23;color:#fff5d1}.secondary:hover{background:#43785a}.dialog>.text-button{color:#cce4b9;font-size:11px}.settings-dialog label{font-family:var(--pixel);font-size:11px}.settings-dialog select{background:#2f6347;font-size:11px;border:2px solid #76a67c}.dialog .disclosure{color:#b9d2b0}.result-grid strong{font-size:25px;line-height:1.4}.result-grid small{color:#b7d6af;font-size:10px}.result-grid{gap:15px}.results-dialog h2{font-size:30px}.ledger-row{font-size:12px;padding:12px 0}.ledger-row.heading{font:10px var(--pixel);color:#9fcea9}.ledger-row.you{background:#a1df7415;padding-left:6px}.result-buttons{gap:12px}.result-buttons .primary,.result-buttons .secondary{font-size:11px;gap:8px}.round-end{background:radial-gradient(ellipse at center,#315d3bd9,#0f3025ed)}.round-end h2{font:clamp(38px,5.5vw,80px)/1.35 var(--pixel);color:#ffde58;text-shadow:0 5px #8c611d,4px 9px #172e21}.round-end[data-outcome=defeat] h2{color:#ff9272;text-shadow:0 5px #934c2e,4px 9px #172e21}.round-end p{color:#e3f0d0}.round-end>section>span{color:#b8d7a8}
#help{scrollbar-color:#7eb688 #193f34}.help-header{background:#193f34;border-bottom:2px solid #527555}.help-header button{border:2px solid #163326;background:#477555;color:#fff4cb;box-shadow:0 3px #163326}.guide-intro,.guide-bots,.guide-role>p,.guide-rules li,.guide-extract p,.help-details p{color:#d0e4c4}.guide-switch{gap:12px;border:0}.guide-switch button{flex:1;font:12px var(--pixel);padding:14px;background:#2c5842;border:2px solid #74916b;color:#dbedc6}.guide-switch button[aria-pressed=true]{background:#ffdc62;color:#33432b;border-color:#d39c31;box-shadow:0 4px #936827}.guide-switch span{font:11px Arial,sans-serif;color:inherit;margin-top:9px}.guide-heading h3{font:21px/1.4 var(--pixel);color:#fff3c7}.guide-heading>span{color:#ffdf72}.guide-example{background:#284e32;border:2px solid #729957;border-left:5px solid #ffda51}.guide-example strong{font-size:29px;color:#ffdf64}.guide-example p,.guide-example dt{color:#d0e5c1}.guide-example small,.guide-label{color:#a5d8a1}.guide-rules b,.guide-role p b,.guide-extract b,.help-details b{color:#fff6d5}.guide-role .guide-tip{color:#cef6bb}.help-details summary{font:12px/1.5 var(--pixel);color:#ffdf78}.guide-extract h3{font:18px var(--pixel)}.help-footer{color:#a0c396}.guide-role .guide-caution{color:#ffc79e}
/* Combat stays clear in the middle; larger pixel numerals anchor the corners. */
.timer strong{font-size:30px;line-height:1.5;text-shadow:3px 3px #193522}.timer small{font:9px var(--pixel);color:#ffe182}.health-number strong{font-size:42px;text-shadow:3px 3px #173e2c}.ammo strong{font-size:38px;text-shadow:3px 3px #173e2c}.weapon-name{font-size:13px}.boss-track{height:11px;border:2px solid #183b2d;box-shadow:0 2px #10271f}.health-track{height:9px;border:2px solid #163727}.health-track i{background:#7dea92}.boss-panel>div:first-child{font:10px var(--pixel);letter-spacing:0}.vital-line{font:10px var(--pixel);letter-spacing:0}.hud-bottom .contribution>strong{font-family:var(--pixel);font-size:26px}.hud-bottom .contribution>small{font:9px var(--pixel);letter-spacing:0}.weapon-keys kbd.active{background:#ffe482;color:#244329}.damage-popup{font-family:var(--pixel);font-weight:400;font-size:24px}.damage-popup small{font-family:Arial,sans-serif}.kill-emblem strong{font-size:28px}.kill-confirmation>b{font-size:11px;letter-spacing:0}.kill-emblem svg{fill:#194e36;stroke:#ffdf5e;stroke-width:4}.kill-emblem .kill-blades{stroke:#8dd681;stroke-width:4}.spectator{background:#1a4637f5;border:3px solid #7baa72;box-shadow:0 5px #173321}.spectator>strong{font:19px var(--pixel)}#notice{font:12px/1.7 var(--pixel);letter-spacing:0;border:2px solid #bdc780;background:#173e32e8;color:#fff0a5}
#loading{background:#193f34}#loading strong{font-family:var(--pixel);font-size:36px;color:#ffdf72}
@media(max-width:1180px){.hunt-board{display:none}.brand{left:34%;width:390px}#character-stage{left:34%;width:54vw}.hero{left:34%}.loadout{right:22px;width:292px}.local{font-size:10px;padding:9px}.menu-actions .text-button{font-size:11px;padding:10px}}
@media(max-height:780px){.brand{width:330px;top:3px}.hunt-board{top:24%;padding:17px;width:242px}.hunt-board h1{font-size:24px}.hunt-board ol{margin:15px 0}.hunt-board li{margin:12px 0}.loadout{bottom:78px;padding:15px;width:290px}.character-caption{padding-bottom:12px;margin-bottom:12px}.character-caption strong{font-size:19px}.role{min-height:65px;padding-top:10px;padding-bottom:10px}.role strong{font-size:12px}.mode-row{margin-top:16px;gap:13px}.loadout p{font-size:10px}.hero{bottom:48px;width:335px}.hero .play-invitation{display:none}#character-stage{top:20%;height:47%;width:min(540px,43vw)}.cast-label{font-size:10px;padding:6px 8px}.cast-label small{font-size:8px}.hero .primary{min-height:53px;font-size:13px}.help-link{padding:9px;margin-top:12px}.hero .menu-controls{margin-top:11px}.dialog h2{font-size:24px}.settings-dialog label{margin:19px 0}}
@media(max-width:1000px){.topbar{padding:14px}.local{display:none}.brand{left:33%;width:310px}.hero{left:33%;width:310px}#character-stage{left:33%;width:57vw}.loadout{right:15px;width:270px;padding:14px}.character-caption strong{font-size:18px}.menu-actions .text-button{font-size:10px;padding:9px}.menu-footer{padding:0 16px;font-size:8px}.menu-footer>span:nth-child(2){display:none}}
@media(max-width:760px){.brand{left:28%;width:260px}.loadout{width:240px;right:12px;bottom:60px}.hero{left:28%;width:270px}#character-stage{left:28%;width:52vw}.role-icon{display:block}.role{padding-left:43px}.role small{font-size:8px}.bot-setting{display:flex}.cast-label small{display:none}.cast-label{font-size:8px}.menu-controls{display:none!important}.results-dialog{max-width:94vw}.result-grid strong{font-size:19px}.guide-heading{flex-direction:column;gap:8px}.help-header h2{font-size:22px}.guide-heading h3{font-size:18px}}
@media(prefers-reduced-motion:reduce){button,.brand{transition:none}}

/* Comfortable pixel sizes and room for the cast, without overlapping the play action. */
.hero .play-invitation{display:none}.hood-label{left:30%}.rich-label{left:70%}
.menu-actions .text-button{font-size:15px}.local{font-size:14px}.primary{font-size:18px}.help-link{font-size:15px}.role strong{font-size:17px}.section-label{font-size:13px}.segmented button{font-size:14px}.bot-setting,.bot-setting select{font-size:13px}.cast-label{font-size:13px}
@media(max-height:780px){.role strong{font-size:14px}.cast-label{font-size:11px}.hero .primary{font-size:16px}.help-link{font-size:13px}.section-label{font-size:12px}}
@media(max-width:1000px){.menu-actions .text-button{font-size:12px}.role strong{font-size:14px}.cast-label{font-size:10px}.section-label{font-size:11px}}

@media(max-height:780px){#character-stage{height:45%}}

/* Free matches lead; the range is a small, separate warm-up entry. */
#online-play.primary{width:100%}#online-play.primary:after{content:'▶';font:20px Arial,sans-serif}
.warmup-entry{border-top:2px dashed #b0ba8c;margin-top:16px;padding-top:15px}
.warmup-entry .secondary{width:100%;min-height:42px;padding:10px;font-size:13px;display:flex;justify-content:space-between;align-items:center}
.warmup-entry>small{display:block;text-align:center;font-size:10px;color:#627350;margin-top:9px}
.paid-later{display:flex;justify-content:space-between;gap:8px;margin-top:16px;font:10px var(--pixel);color:#657457}
.paid-later span{font:9px Arial,sans-serif;border:1px solid #adb997;padding:2px 5px;background:#e4eacb}
#range-guide{position:absolute;left:28px;top:108px;width:290px;padding:16px 18px;background:#193f34e8;border:2px solid #7d9e73;box-shadow:0 4px #163626;color:#e4f1d4;pointer-events:none}
#range-guide>small{font:9px var(--pixel);color:#acdca1}
#range-guide h2{font:17px/1.5 var(--pixel);color:#ffdd64;margin:10px 0}
#range-guide p{font:12px/1.6 Arial,sans-serif;margin:10px 0}
.range-numbers{display:flex;gap:28px;padding:12px 0;border-top:1px solid #7d9e7377;border-bottom:1px solid #7d9e7377;font:10px var(--pixel);color:#c5dfb2}
.range-numbers b{font-size:24px;color:#fff4d3;margin-right:4px}
.range-controls{display:grid;gap:10px;font:11px Arial,sans-serif;margin-top:16px}.range-controls kbd{padding:3px 5px}.range-controls b{color:#ffdd64}
#hud.training .boss-panel,#hud.training #minimap,#hud.training #location,#hud.training .timer,#hud.training .contribution,#hud.training #network-status{display:none}
@media(max-height:780px){.loadout{bottom:66px}.warmup-entry{margin-top:11px;padding-top:10px}.paid-later{margin-top:12px}#range-guide{top:84px;width:253px;padding:12px 14px}#range-guide h2{font-size:14px}#range-guide p{font-size:11px}.range-controls{gap:9px;margin-top:12px}}
@media(max-width:1000px){#range-guide{left:18px}.warmup-entry .secondary{font-size:12px}}

.range-controls kbd{font-family:Consolas,monospace;font-size:12px}
