@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Russo+One&display=swap');
:root{--bg:#101516;--panel:#192022;--line:#303a3b;--text:#ecece4;--muted:#9ba7a5;--gold:#dfb56b;--green:#afc6a4;font-family:Manrope,Arial,sans-serif;color:var(--text);background:var(--bg);color-scheme:dark;font-size:16px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0}button,a,input{ -webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--gold);outline-offset:4px}button{border:0}h1,h2,h3,p{margin:0}.header{height:88px;max-width:1440px;margin:auto;padding:0 44px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:12px;font-family:'Russo One',sans-serif;font-size:20px;letter-spacing:1px;line-height:1.2}.brand-small{display:block;font-size:12px;letter-spacing:2.5px;color:var(--muted)}.brand-mark{width:40px;height:42px;background:var(--gold);color:#192022;display:grid;place-items:center;font-size:19px;clip-path:polygon(0 0,100% 0,100% 77%,50% 100%,0 77%)}nav{display:flex;gap:30px;font-size:14px;font-weight:600;color:var(--muted)}nav a{padding:32px 0}.nav-active{color:var(--gold);border-bottom:2px solid var(--gold)}.wallet-button{display:flex;gap:24px;align-items:center;padding:12px 17px;border:1px solid #535b55;border-radius:5px;color:var(--text);background:transparent;font-size:14px}.wallet-button:hover{border-color:var(--gold)}.wallet-button span{color:var(--gold)}.demo-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-height:43px;display:flex;justify-content:center;align-items:center;gap:14px;background:#1b231f;font-size:12px;color:#b7c4b5;padding:9px 20px}.demo-label{font-weight:800;font-size:10px;letter-spacing:1px;background:#344134;padding:3px 6px;border-radius:3px}.demo-strip button{background:transparent;color:var(--gold);font-size:12px;text-decoration:underline;text-underline-offset:3px}main{max-width:1352px;margin:auto;padding:36px 0 0}.heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px;gap:24px}.eyebrow{font-family:Manrope,Arial,sans-serif;font-size:12px;letter-spacing:2px;font-weight:700;color:var(--muted);margin-bottom:12px}h1{font-family:'Russo One',Manrope,sans-serif;font-size:clamp(27px,2.7vw,40px);font-weight:400;line-height:1.16;letter-spacing:-.6px}h1 span{color:var(--gold)}.balance{border-left:1px solid var(--line);padding:6px 4px 6px 34px;min-width:220px}.label{font-size:14px;color:var(--muted)}.balance>div{display:flex;align-items:center;gap:10px;margin:5px 0}.balance strong{font-size:34px;font-weight:800;line-height:1.2}.balance>div>span:last-child{font-size:12px;color:var(--gold);font-weight:800;letter-spacing:1px}.scrap-icon{border:2px solid var(--gold);color:var(--gold);width:23px;height:23px;display:grid;place-items:center;font-size:13px;line-height:1;transform:rotate(-9deg)}.balance p{font-size:12px;color:var(--muted)}.workspace{display:grid;grid-template-columns:minmax(0,1.46fr) minmax(335px,1fr);gap:24px}.stage{position:relative;min-height:535px;overflow:hidden;border:1px solid #4a5047;border-radius:7px;background:#26302c;isolation:isolate}.room{position:absolute;width:100%;height:100%;object-fit:cover;image-rendering:pixelated;filter:brightness(.75);z-index:-3}.scene-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,rgba(9,15,15,.5) 0%,transparent 35%,rgba(8,14,15,.15) 64%,#0b1112 100%)}.scene-top{display:flex;justify-content:space-between;position:absolute;left:25px;right:25px;top:24px;font-size:11px;letter-spacing:2px;color:#d0d3be;font-weight:700}.scene-count{opacity:.65}.raccoon{position:absolute;height:91%;max-width:96%;width:auto;object-fit:contain;left:50%;bottom:10px;transform:translateX(-50%);image-rendering:pixelated;z-index:-1;filter:drop-shadow(0 9px 0 #0003)}.scene-status{position:absolute;right:24px;top:64px;padding:7px 10px;border:1px solid #6c745c;background:#141d18cc;font-size:12px;color:#d8e0c1}.scene-floor{position:absolute;bottom:24px;left:25px;right:25px;display:flex;justify-content:space-between;align-items:flex-end;padding-top:50px;background:linear-gradient(transparent,#0b1112c9)}.scene-floor .eyebrow{color:var(--gold);font-size:10px;margin-bottom:3px}.scene-floor h2{font-family:'Russo One',sans-serif;font-weight:400;font-size:30px;margin-bottom:3px}.scene-floor #character-type{font-size:13px;color:#b8c1b9}.power{text-align:right;border-left:1px solid #ffffff30;padding-left:26px}.power span{display:block;font-size:10px;color:#d0bc98;letter-spacing:1.5px}.power strong{display:block;font-family:'Russo One',sans-serif;font-weight:400;font-size:38px;line-height:1.3}.panel{border:1px solid var(--line);border-radius:7px;background:var(--panel)}.mission{padding:28px 28px 20px;display:flex;flex-direction:column}.section-kicker{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:11px;letter-spacing:1.4px;color:var(--muted);margin-bottom:23px}.status{background:#2c382f;color:#bdceb6;padding:5px 8px;letter-spacing:0;font-size:11px;border-radius:3px}.mission h2{font-family:'Russo One',Manrope,sans-serif;font-weight:400;font-size:29px;line-height:1.18;margin-bottom:14px}.muted{font-size:14px;color:var(--muted);line-height:1.65}.mission-location{display:flex;align-items:center;gap:13px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 0;margin-top:20px}.location-icon{width:39px;height:39px;display:grid;place-items:center;background:#2c332d;color:var(--gold);font-size:24px}.mission-location strong{font-size:14px;font-weight:600}.mission-location span{display:block;font-size:12px;color:var(--muted);margin-top:2px}.modes{padding:0;margin:19px 0 15px;border:0;display:flex;gap:8px}.modes legend{font-size:12px;color:var(--muted);margin-bottom:8px}.modes label{flex:1}.modes input{position:absolute;opacity:0;width:1px;height:1px}.modes label>span{display:block;border:1px solid var(--line);border-radius:4px;padding:9px 12px;font-size:14px;font-weight:600;cursor:pointer}.modes small{display:block;font-size:11px;color:var(--muted);font-weight:400;margin-top:3px}.modes input:checked+span{border-color:#aa8c56;background:#40372a;color:var(--gold)}.modes input:focus-visible+span{outline:2px solid var(--gold)}.modes input:disabled+span{opacity:.45;cursor:default}.reward-row{display:flex;justify-content:space-between;align-items:center;margin:2px 0 19px;font-size:14px;color:var(--muted)}.reward-row strong{color:var(--text);font-size:24px}.reward-row small{font-size:11px;color:var(--gold);letter-spacing:1px}.primary{background:var(--gold);border:1px solid var(--gold);border-radius:4px;color:#201d16;font-size:14px;font-weight:800;padding:15px 17px;width:100%;display:flex;justify-content:center;align-items:center;gap:16px;transition:background .15s,transform .15s}.primary:hover:not(:disabled){background:#edc985;transform:translateY(-1px)}.primary span{font-size:21px;line-height:1}.mission-note{font-size:11px;line-height:1.5;color:var(--muted);text-align:center;margin-top:11px}.skip{background:none;color:var(--gold);text-decoration:underline;font-size:12px;padding:10px 0 0}.timer-row{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-bottom:8px}.timer-row strong{color:var(--gold);font-variant-numeric:tabular-nums}progress{height:5px;border:0;width:100%;display:block;accent-color:var(--gold);margin-bottom:15px}progress::-webkit-progress-bar{background:#3b4039}progress::-webkit-progress-value{background:var(--gold)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin:35px 0 18px;gap:20px}.section-heading .eyebrow{font-size:11px;margin-bottom:8px}.section-heading h2{font-family:'Russo One',Manrope,sans-serif;font-weight:400;font-size:23px}.section-aside{font-size:12px;color:var(--muted)}.crew-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.crew-card{display:flex;align-items:center;gap:8px;padding:5px 12px 5px 0;text-align:left;color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:5px;position:relative;min-height:108px}.crew-card:hover{border-color:#72776a}.crew-card.selected{border-color:var(--gold);background:#2b2c24}.crew-card img{width:96px;height:96px;object-fit:contain;image-rendering:pixelated}.crew-name{display:block;font-weight:800;font-size:15px;margin-bottom:2px}.crew-type{font-size:11px;color:var(--muted)}.crew-bottom{font-size:11px;color:var(--gold);display:block;margin-top:9px}.crew-card.selected:after{content:'✓';position:absolute;top:8px;right:9px;color:var(--gold);font-size:12px}.shop-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.shop-card{border:1px solid var(--line);border-radius:6px;background:var(--panel);overflow:hidden}.shop-image{width:100%;height:140px;object-fit:cover;image-rendering:pixelated;display:block}.shop-body{padding:16px}.shop-body h3{font-size:16px;margin:0 0 5px}.shop-body p{font-size:12px;color:var(--muted);line-height:1.5;min-height:36px}.shop-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:17px}.price{font-weight:800;color:var(--gold);font-size:16px}.price small{font-size:10px}.buy{border:1px solid #64634e;background:#35392c;color:#dccc9b;padding:8px 12px;border-radius:3px;font-size:12px}.buy:disabled{background:#212a26;border-color:#3c4c3e;color:#b4c4b0;opacity:.65}.afford{font-size:11px;color:var(--muted);margin-top:9px;min-height:16px}footer{border-top:1px solid var(--line);padding:28px 0;margin-top:38px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand-footer{font-weight:800;font-size:13px;letter-spacing:1px}.brand-footer span{display:block;font-size:9px;letter-spacing:1.5px;margin-top:4px;color:var(--muted)}footer p{font-size:11px;max-width:390px;line-height:1.6;color:var(--muted)}footer button{background:none;color:var(--muted);font-size:12px;text-decoration:underline;white-space:nowrap}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#d9b573;color:#191e19;border-radius:5px;padding:15px 24px;font-size:14px;font-weight:700;max-width:90vw;box-shadow:0 10px 50px #0008;transition:.2s;z-index:50}#toast.show{opacity:1;transform:translate(-50%,0)}dialog{background:var(--panel);color:var(--text);border:1px solid #606250;border-radius:8px;width:min(490px,92vw);padding:28px;box-shadow:0 20px 100px #0008}dialog::backdrop{background:#030707d9;backdrop-filter:blur(5px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.dialog-top .eyebrow{margin:0;font-size:11px}.close{background:none;color:var(--muted);font-size:28px;line-height:1;padding:2px 7px}dialog h2{font-size:25px;line-height:1.3;margin-bottom:20px}dialog ol{padding-left:22px;font-size:14px;line-height:1.7;color:var(--text)}dialog li{padding-left:5px;margin-bottom:12px}dialog .primary{margin-top:23px}.secondary{width:100%;padding:12px;margin-top:10px;background:transparent;color:var(--muted);border:1px solid var(--line);border-radius:4px}.wallet-state{font-size:13px;overflow-wrap:anywhere;color:var(--gold);margin-top:20px;line-height:1.6}[hidden]{display:none!important}.on-mission .raccoon{opacity:.6;animation:breathe 3s ease-in-out infinite}.on-mission .scene-status{border-color:#ab8a54;color:var(--gold)}@keyframes breathe{50%{opacity:.35;transform:translate(-50%,-4px)}}@media(min-width:1441px){main{max-width:1264px}}@media(max-width:1400px){main{padding-left:34px;padding-right:34px}}@media(max-width:1000px){.header{padding:0 25px;gap:18px}nav{gap:20px}.workspace{grid-template-columns:minmax(0,1fr) minmax(320px,1fr);gap:18px}.mission{padding:22px}.crew-grid{grid-template-columns:repeat(2,1fr)}.shop-grid{grid-template-columns:repeat(2,1fr)}.shop-image{height:160px}.stage{min-height:540px}.scene-floor{left:18px;right:18px}.scene-floor h2{font-size:26px}}@media(max-width:720px){.header{height:75px;padding:0 18px}.brand{font-size:17px}.brand-small{font-size:10px}.brand-mark{width:32px;height:36px;font-size:16px}nav{display:none}.wallet-button{font-size:12px;padding:10px;gap:6px}.demo-strip{font-size:11px;gap:9px;line-height:1.5;justify-content:flex-start}.demo-strip button{white-space:nowrap;font-size:11px}main{padding:26px 17px 0}.heading{align-items:flex-start;gap:12px;margin-bottom:22px}.heading .eyebrow{font-size:9px;letter-spacing:1.2px}.heading h1{font-size:26px;line-height:1.2}.balance{min-width:0;border-left:0;padding:0;text-align:right}.balance .label{font-size:11px}.balance>div{justify-content:flex-end;gap:5px;flex-wrap:wrap;max-width:135px}.balance strong{font-size:24px}.balance>div>span:last-child{font-size:9px}.balance p{font-size:10px;max-width:135px}.scrap-icon{display:none}.workspace{grid-template-columns:1fr;gap:16px}.stage{min-height:370px;aspect-ratio:1.05}.raccoon{height:96%;bottom:0}.scene-top{top:17px;left:18px;right:18px;font-size:10px}.scene-status{top:44px;right:17px;font-size:11px}.scene-floor{bottom:19px}.mission{padding:24px}.mission h2{font-size:27px}.mission h2 br{display:none}.mission .muted{font-size:14px}.section-heading{margin-top:30px;align-items:flex-start;flex-direction:column;gap:8px}.section-heading h2{font-size:21px}.crew-grid{gap:9px}.crew-card{min-height:105px;padding-right:6px;gap:0}.crew-card img{width:72px;height:92px}.crew-name{font-size:13px}.crew-type,.crew-bottom{font-size:10px}.crew-card.selected:after{right:6px;top:5px}.shop-grid{gap:10px}.shop-image{height:110px}.shop-body{padding:12px}.shop-body h3{font-size:14px}.shop-body p{font-size:11px}.shop-bottom{flex-wrap:wrap;gap:8px;margin-top:12px}.buy{width:100%}.afford{font-size:10px}.price{font-size:14px}.shop-bottom .price small{font-size:10px}footer{flex-wrap:wrap;gap:15px;margin-top:28px}footer p{order:3;max-width:100%}footer button{font-size:11px}.brand-footer{font-size:12px}.mission-note{font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Readable action labels at all viewport sizes. */
.muted{font-size:16px}.mission-note{font-size:12px}.timer-row{font-size:14px}.status{font-size:12px}.mission-location span{font-size:13px}.crew-type{font-size:12px}.crew-bottom{font-size:12px}.shop-body p{font-size:14px}.buy{font-size:14px}.scene-floor #character-type{font-size:14px}@media(max-width:720px){.mission .muted{font-size:16px}.wallet-button{font-size:14px}.crew-name{font-size:14px}.crew-type{font-size:12px}.crew-bottom{font-size:12px}.crew-card{min-height:120px}.shop-body p{font-size:14px}.mission-note{font-size:12px}.shop-bottom{align-items:flex-end}.afford{font-size:12px}}

/* Grid children must shrink independently of artwork and intrinsic text widths. */
.workspace,.crew-grid,.shop-grid{min-width:0}
.workspace>* ,.crew-grid>* ,.shop-grid>*{min-width:0}
.room{inset:0;display:block;max-width:100%}
.crew-card>span{min-width:0;overflow-wrap:anywhere}
.crew-card img{flex-shrink:0}
.contracts{margin-top:24px;padding:24px}
.contracts .section-heading{margin:0 0 12px}
.contract-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px}
.contract-card{min-width:0;background:#131a1b;border:1px solid var(--line);border-radius:5px;padding:18px}
.contract-card h3{font-size:16px;margin-bottom:8px}
.contract-card p{color:var(--muted);font-size:14px;line-height:1.5;min-height:42px}
.contract-card .timer-row{margin-top:20px}
.contract-card .buy{width:100%;min-height:44px}
.contract-card.completed{border-color:#657b5d}
@media(max-width:720px){
.workspace{grid-template-columns:minmax(0,1fr)}
.stage{min-height:0;width:100%;aspect-ratio:1 / 1.05}
.heading{flex-wrap:wrap}.heading>div{min-width:0}.heading h1{font-size:clamp(22px,6vw,26px)}
.header{gap:10px;flex-wrap:wrap;height:auto;min-height:75px;padding-block:12px}.wallet-button{max-width:100%;overflow-wrap:anywhere}
.crew-grid,.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.crew-card{flex-direction:column;align-items:flex-start;padding:12px;gap:4px}.crew-card img{width:80px;height:80px;align-self:center;max-width:100%}
.crew-bottom{line-height:1.5}.scene-floor h2{font-size:clamp(20px,6vw,26px)}.scene-floor>div{min-width:0}.power{padding-left:12px;flex-shrink:0}
.scene-top{letter-spacing:1px}.scene-floor #character-type{font-size:12px}.mission{padding:20px;min-width:0}.section-kicker{flex-wrap:wrap}
.modes{min-width:0}.modes label{min-width:0}.modes label>span{padding:9px 8px}
.contracts{padding:18px}.contract-grid{grid-template-columns:minmax(0,1fr)}.contract-card p{min-height:0}
.demo-strip{flex-wrap:wrap}.demo-strip>span:nth-child(2){flex:1;min-width:150px}
}

/* Atmospheric light and restrained pixel motion, clipped to the play area. */
body{background:radial-gradient(ellipse at 12% 0%,#24332b66,transparent 45%),var(--bg)}
.header{border-bottom:1px solid #dfb56b0a}
.brand-mark{filter:drop-shadow(0 3px 10px #dfb56b22)}
.stage{box-shadow:0 18px 50px #0004;transition:border-color .3s,box-shadow .3s}
.stage:after{content:'';position:absolute;inset:0;pointer-events:none;z-index:2;background:repeating-linear-gradient(0deg,transparent 0 3px,#0000000d 3px 4px);opacity:.4}
.scene-atmosphere{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:-1;background:radial-gradient(ellipse at 45% 25%,#e2b56b1a,transparent 65%)}
.scene-atmosphere i{position:absolute;width:3px;height:3px;background:#e8c58a;box-shadow:0 0 8px #e8c58a66;bottom:15%;left:15%;opacity:0;animation:pixel-drift 9s linear infinite}
.scene-atmosphere i:nth-child(2){left:31%;animation-delay:-2s;animation-duration:11s}.scene-atmosphere i:nth-child(3){left:49%;animation-delay:-5s}.scene-atmosphere i:nth-child(4){left:66%;animation-delay:-7s;animation-duration:13s}.scene-atmosphere i:nth-child(5){left:82%;animation-delay:-4s}.scene-atmosphere i:nth-child(6){left:57%;animation-delay:-9s;animation-duration:12s}
.raccoon{animation:idle-float 5s ease-in-out infinite}
.scene-status{backdrop-filter:blur(8px);border-radius:4px;transition:color .3s,border-color .3s}
.on-mission .scene-atmosphere{background:radial-gradient(ellipse at 50% 45%,#dfb56b22,transparent 65%)}
.workspace:has(.on-mission) .location-icon{animation:signal-pulse 2s ease-in-out infinite}
.reward-ready{border-color:var(--gold);box-shadow:0 0 28px #dfb56b20,0 18px 50px #0004}
.reward-ready .scene-status{color:#efcf8e;border-color:#d9b36c;background:#352a19e8}
.claim-ready{animation:signal-pulse 2s ease-in-out infinite}
.reward-float{position:absolute;z-index:4;top:28%;left:0;width:100%;text-align:center;pointer-events:none;color:#ffe0a0;font-size:clamp(22px,5vw,36px);font-weight:800;text-shadow:0 3px 0 #37200c,0 0 26px #edb85977;animation:reward-rise 1.6s ease-out forwards}
.panel{background:linear-gradient(140deg,#202829,var(--panel) 65%)}
.contracts{position:relative;border-top-color:#8c7550;background:linear-gradient(120deg,#302b204d,transparent 55%),var(--panel)}
.contract-card{transition:border-color .2s,background .2s}
.contract-card.completed{background:linear-gradient(140deg,#25362b,#151c1b)}
.crew-card,.shop-card{transition:transform .22s,border-color .22s,box-shadow .22s}
.shop-image{transition:transform .5s,filter .5s}.shop-card{isolation:isolate}.shop-body{position:relative;background:var(--panel)}
.buy,.secondary,.wallet-button{transition:background .2s,border-color .2s,transform .2s}
.buy:not(:disabled):hover,.secondary:hover{border-color:var(--gold);background:#45422c}
button:active:not(:disabled){transform:translateY(1px)}
.heading,.workspace,.contracts,.crew,.decor{animation:section-in .6s ease-out both}.workspace{animation-delay:.06s}.contracts{animation-delay:.12s}.crew{animation-delay:.18s}.decor{animation-delay:.24s}
dialog[open]{animation:section-in .22s ease-out both}
@media(hover:hover){.crew-card:hover,.shop-card:hover{transform:translateY(-4px);border-color:#ab905c;box-shadow:0 12px 25px #0003}.shop-card:hover .shop-image{transform:scale(1.035);filter:brightness(1.13)}}
@keyframes idle-float{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,-5px)}}
@keyframes pixel-drift{0%{transform:translate(0,0);opacity:0}20%{opacity:.55}80%{opacity:.25}100%{transform:translate(22px,-240px);opacity:0}}
@keyframes signal-pulse{0%,100%{box-shadow:0 0 0 0 #dfb56b00}50%{box-shadow:0 0 20px 2px #dfb56b33}}
@keyframes reward-rise{0%{opacity:0;transform:translateY(24px) scale(.92)}18%,65%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(-35px)}}
@keyframes section-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:720px){.header{gap:8px}.wallet-button{font-size:13px}.scene-floor #character-type{max-width:185px;display:block;line-height:1.4}.scene-floor .power span{font-size:11px}.heading h1{font-size:clamp(23px,6vw,30px)}.contract-card .timer-row{gap:8px;flex-wrap:wrap}.scene-atmosphere i:nth-child(even){display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.scene-atmosphere i{display:none}.reward-float{opacity:1}}
/* Social workshop: the same salvage palette, with a readable gallery surface. */
.connection{border:1px solid var(--gold);background:#302b20;padding:16px;border-radius:6px;margin-bottom:18px;line-height:1.6}.connection .buy{margin-left:8px}
.view-tabs{display:flex;gap:8px;margin:0 0 28px;padding-bottom:15px;border-bottom:1px solid var(--line);flex-wrap:wrap}.view-tabs button{color:var(--muted);background:transparent;padding:12px 16px;border:1px solid transparent;border-radius:5px;font-weight:700;font-size:14px}.view-tabs button[aria-selected=true]{background:#dfb56b14;border-color:#a98a55;color:var(--gold)}.view-tabs span{margin-left:6px;font-size:12px;color:var(--muted)}
.stage{border-color:var(--room-frame,#4a5047)}.light-layer{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 15%,var(--room-light,transparent),transparent 75%);opacity:.3;z-index:0;mix-blend-mode:screen}.decor-layer{position:absolute;inset:0;pointer-events:none;z-index:0}.placed-decor{position:absolute;object-fit:contain;image-rendering:pixelated;width:26%;max-height:38%;filter:drop-shadow(0 5px 7px #0008)}.decor-left{left:0;bottom:19%}.decor-right{right:0;bottom:18%}.decor-wall{right:5%;top:10%;width:21%}.scene-top,.scene-floor,.scene-status{z-index:3}.has-embers .scene-atmosphere{z-index:1}.has-embers .scene-atmosphere i{width:4px;height:4px;box-shadow:0 0 12px #ffd57b;animation-duration:6s}
.slot-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin-bottom:18px}.slot-strip>div{min-width:0;border:1px solid var(--line);border-radius:5px;padding:12px;background:#192022;display:flex;flex-direction:column;gap:6px}.slot-strip span{text-transform:uppercase;letter-spacing:1px;color:var(--muted);font-size:12px}.slot-strip strong{font-size:14px;overflow-wrap:anywhere}.slot-strip button{background:none;text-align:left;color:var(--gold);font-size:12px;padding:5px 0;margin-top:auto}
.accessory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.accessory-card{min-width:0;background:var(--panel);border:1px solid var(--line);border-radius:6px;overflow:hidden;display:flex;flex-direction:column}.accessory-preview{height:175px;display:grid;place-items:center;background:radial-gradient(circle at 50% 80%,#52604c44,#111a1b 75%);position:relative;overflow:hidden}.accessory-preview img{height:100%;width:100%;object-fit:contain;image-rendering:pixelated}.slot-label{position:absolute;top:10px;left:10px;background:#101516c9;color:var(--muted);border:1px solid var(--line);font-size:12px;padding:4px 7px;text-transform:uppercase;letter-spacing:1px}.accessory-card .shop-body{display:flex;flex:1;flex-direction:column}.accessory-card .shop-bottom{margin-top:auto;padding-top:18px;flex-wrap:wrap}.accessory-card .buy{width:100%}.accessory-card.locked .accessory-preview{filter:saturate(.35)}.finish-swatch{display:grid;place-items:center;width:90px;height:90px;font-size:50px;color:var(--swatch);text-shadow:0 0 26px var(--swatch)}.finish-swatch.frame{border:4px solid var(--swatch);border-radius:10px;font-family:'Russo One';font-size:27px}.finish-swatch.light{border-radius:50%;background:radial-gradient(circle,var(--swatch),transparent 70%);font-size:0;opacity:.75}.finish-swatch.effect{font-size:64px}
.achievement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:25px 0}.achievement-card{display:flex;align-items:flex-start;gap:18px;padding:22px;border:1px solid var(--line);border-radius:6px;background:var(--panel);min-width:0}.achievement-card>div{min-width:0;flex:1}.achievement-medal{display:grid;place-items:center;border:1px solid #49514b;color:var(--muted);background:#111a1b;width:50px;height:56px;flex-shrink:0;font-size:20px}.achievement-card .eyebrow{font-size:12px;display:block;margin-bottom:8px}.achievement-card h3{font-size:18px}.achievement-card p{font-size:14px;color:var(--muted);line-height:1.6;margin-top:8px}.achievement-card .timer-row{margin-top:18px;flex-wrap:wrap;gap:8px;font-size:12px}.achievement-card.unlocked{border-color:#aa8b54;background:linear-gradient(130deg,#3d342644,#192022)}.unlocked .achievement-medal{color:var(--gold);border-color:var(--gold);box-shadow:0 0 25px #dfb56b12}
.board-toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:20px 0}.board-toolbar label{font-size:14px;color:var(--muted)}input:not([type=radio]):not([type=checkbox]),select{font:inherit;background:#101819;color:var(--text);border:1px solid #515a53;border-radius:5px;padding:12px;min-width:0;max-width:100%}input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.leader-row{display:flex;gap:16px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:6px;background:var(--panel);margin-top:12px;min-width:0}.leader-row>img{width:70px;height:70px;object-fit:contain;image-rendering:pixelated}.rank-number{font-family:'Russo One';color:var(--gold);font-size:20px;min-width:38px}.leader-name{flex:1;min-width:0}.leader-name strong{font-size:18px;overflow-wrap:anywhere}.leader-name>span{display:block;font-size:13px;color:var(--muted);margin-top:5px}.leader-name a{display:inline-block;color:var(--gold);font-size:14px;margin-top:7px;overflow-wrap:anywhere}.leader-name small{color:var(--muted);font-size:12px}.leader-points{text-align:center;min-width:65px}.leader-points strong{font-size:25px;display:block}.leader-points span{font-size:12px;color:var(--muted)}.empty-state{padding:45px 24px;text-align:center;border:1px dashed #61634c;border-radius:6px;margin-top:25px;background:#1b2422}.empty-state p{color:var(--muted);line-height:1.7;margin:12px auto 20px;max-width:540px}.empty-state h3{font-size:22px}
.profile-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px;margin-top:25px}.profile-form,.profile-summary{padding:28px;min-width:0}.profile-form>label{display:block;margin:19px 0 9px;font-size:14px;font-weight:700}.profile-form>label:first-child{margin-top:0}.profile-form>input,.profile-form>select{width:100%}.field-note{font-size:13px;color:var(--muted);line-height:1.65;margin:10px 0 18px}.profile-form .check-row{display:flex;align-items:flex-start;gap:10px;line-height:1.6}.check-row input{width:18px;height:18px;accent-color:var(--gold);flex-shrink:0;margin-top:3px}.profile-summary{text-align:center;background:radial-gradient(ellipse at 50% 20%,#4b4a2d66,transparent 70%),var(--panel)}.profile-summary>img{width:180px;height:180px;object-fit:contain;image-rendering:pixelated}.profile-summary h2{overflow-wrap:anywhere}.profile-stats{display:flex;justify-content:center;gap:32px;border-block:1px solid var(--line);padding:22px 0;margin-top:22px}.profile-stats strong{display:block;color:var(--gold);font-size:30px}.profile-stats span{font-size:13px;color:var(--muted)}.visit-dialog{width:min(780px,94vw);max-height:92dvh;overflow-y:auto}.visit-heading{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap}.visit-heading h2{margin-bottom:7px;overflow-wrap:anywhere}.visit-stage{min-height:0!important;aspect-ratio:1.3;margin-top:20px}.visit-stage .raccoon{height:94%}.badge-shelf{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px;color:var(--muted);font-size:14px}.earned-badge{padding:8px 11px;border:1px solid #7a714a;border-radius:4px;color:var(--gold);background:#383324}
@media(max-width:1000px){.accessory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.slot-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.achievement-card{padding:18px;gap:12px}}
@media(max-width:720px){.view-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.view-tabs button{padding:11px 7px;font-size:14px}.view-tabs span{display:block;margin:3px 0 0}.accessory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.accessory-preview{height:140px}.achievement-grid,.profile-layout{grid-template-columns:minmax(0,1fr)}.profile-form,.profile-summary{padding:20px}.slot-strip{gap:6px}.slot-strip>div{padding:10px}.slot-strip strong{font-size:12px}.leader-row{gap:10px;flex-wrap:wrap;padding:14px}.leader-row>img{width:48px;height:60px}.rank-number{font-size:16px;min-width:30px}.leader-name{flex-basis:calc(100% - 110px)}.leader-row>.buy{flex:1;min-height:44px}.leader-points{text-align:left}.leader-points strong,.leader-points span{display:inline;font-size:16px;margin-right:5px}.leader-name strong{font-size:16px}.visit-dialog{padding:18px}.visit-stage{aspect-ratio:1 / 1.05}.modes{flex-wrap:wrap}.modes label{flex-basis:30%;min-width:85px}.modes label>span{font-size:13px}.modes small{font-size:12px}.achievement-card .timer-row{line-height:1.5}}
/* Explicit button shapes and stronger contrast for touch and desktop. */
.primary{background:linear-gradient(#f3cc87,#dbac59);color:#171a15;border:1px solid #ffe0a2;border-bottom:4px solid #8c692e;box-shadow:0 3px 0 #080e0c66,0 0 16px #dfb56b16;min-height:48px;text-decoration:none;font-size:15px;font-weight:800;cursor:pointer}
.buy,.secondary,.wallet-button,.view-tabs button,button.skip{background:#344a42;color:#f0e4c9;border:1px solid #9ca98a;border-bottom:3px solid #60735e;border-radius:6px;box-shadow:0 3px 0 #080e0c66;min-height:44px;padding:11px 16px;font-weight:700;text-decoration:none;cursor:pointer}
.view-tabs button{background:#263a35;border-color:#6c8275;color:#e4e9e1}.view-tabs button[aria-selected=true]{color:#201b12;background:#e7bc73;border-color:#f9dca2;border-bottom-color:#94713a;box-shadow:0 3px 0 #080e0c66}
.buy:not(:disabled):hover,.secondary:not(:disabled):hover,.wallet-button:hover,button.skip:hover{background:#466252;border-color:#e2cf9e;color:#fff2d4;transform:translateY(-1px)}
.primary:hover:not(:disabled){background:linear-gradient(#ffdda1,#edbd69);box-shadow:0 4px 0 #080e0c66,0 0 24px #dfb56b29}
button:disabled,.buy:disabled,.primary:disabled,.secondary:disabled{background:#28312f;color:#9caaa2;border-color:#46524d;box-shadow:none;opacity:.7;cursor:not-allowed;transform:none}
button:focus-visible,a:focus-visible{outline:3px solid #8dfff0;outline-offset:4px}
button:active:not(:disabled),a.primary:active{transform:translateY(2px);box-shadow:none}
.slot-strip button,footer button,.demo-strip button{border:1px solid #657767;background:#263930;border-radius:4px;color:#e6d4ae;padding:8px 12px;min-height:36px;text-decoration:none}
.close{border:1px solid #7a8a7b;border-radius:5px;background:#2d3e35;color:#f1e9d3;min-width:40px;min-height:40px}
.header-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.header nav{gap:18px}
.social-quest{padding:26px;margin-top:24px;border-color:#a9905b}.social-quest h3{font-size:24px;margin-bottom:12px}.social-quest>label,.social-quest form>label,#nickname-form label{display:block;font-size:14px;font-weight:700;margin:20px 0 9px}
textarea{background:#101819;color:var(--text);border:1px solid #627568;border-radius:5px;font:inherit;font-size:15px;line-height:1.6;padding:14px;width:100%;resize:vertical;min-height:96px;overflow-wrap:anywhere}textarea:focus-visible{outline:2px solid var(--gold)}
.social-actions{display:flex;gap:12px;align-items:stretch;margin-top:14px}.social-actions>*{flex:1;margin:0}.social-quest form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}.social-quest form label{grid-column:1/-1;margin:0}.social-status{margin-top:20px;border-left:3px solid var(--gold);background:#25362d;padding:14px;line-height:1.6;font-size:14px}
[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.button-link{display:block;text-align:center}
#nickname-form input{width:100%}#wallet-help{margin-top:14px}#signed-in-panel .secondary{margin-top:18px}
.admin-main{max-width:1000px;padding:32px 20px;margin:auto}.admin-toolbar{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:25px}.review-card{padding:24px;margin:18px 0}.review-card h2{margin-bottom:10px;font-size:22px}.review-card p{line-height:1.7;overflow-wrap:anywhere}.review-card code{color:var(--gold);font-size:16px}.review-card label{display:flex;gap:10px;align-items:flex-start;margin:20px 0;line-height:1.6}.review-card input[type=checkbox]{margin-top:6px;accent-color:var(--gold)}.review-buttons{display:flex;gap:12px;margin-top:16px}.review-buttons button{flex:1;margin:0}.review-card textarea{margin-top:10px}
@media(max-width:1000px){.header{height:auto;min-height:88px;flex-wrap:wrap;padding-block:12px}.header nav{order:3;width:100%;justify-content:center}.header nav a{padding:8px}}
@media(max-width:720px){.header-actions{gap:6px;justify-content:flex-end;flex:1}.wallet-button{font-size:12px;padding:8px;min-height:42px}.social-quest{padding:18px}.social-actions{flex-direction:column}.social-quest form{grid-template-columns:minmax(0,1fr)}.social-quest form label{grid-column:auto}.slot-strip button{font-size:12px;padding:7px}.buy{padding:10px 12px}.review-buttons{flex-direction:column}.header nav{display:none}}

.mining-bonus{display:flex;justify-content:space-between;align-items:center;gap:28px;margin-top:24px;padding:26px;border-color:#97763f;background:linear-gradient(115deg,#3d3120,var(--panel) 75%)}.mining-bonus h2{font-family:'Russo One',sans-serif;font-size:24px;font-weight:400;margin-bottom:12px}.mining-bonus>div:first-child{max-width:720px;min-width:0}.bonus-multiplier{min-width:180px;text-align:center}.bonus-multiplier>strong{display:block;font-family:'Russo One';font-size:46px;color:var(--gold)}.bonus-multiplier>span{display:block;color:var(--muted);font-size:13px;margin:4px 0 14px}.bonus-state{display:inline-block;margin-top:16px;padding:7px 10px;border:1px solid #8e794d;border-radius:4px;color:#ead3a5;font-size:12px;letter-spacing:.7px}.bonus-earned{border-color:#81c5a6}.bonus-earned .bonus-state{border-color:#81c5a6;color:#b8f4d8;background:#233c31}@media(max-width:720px){.mining-bonus{flex-direction:column;align-items:stretch;padding:20px;gap:18px}.mining-bonus h2{font-size:22px}.bonus-multiplier{min-width:0}.bonus-multiplier>strong{font-size:40px}}
