/* style.css */

:root{--bg:#14151e;--surface:#1c1d29;--line:#353542;--ink:#ece7de;--muted:#a09ba8;--gold:#e5bd88;--teal:#9bd1c5;--pink:#de9cb7;--lilac:#bda3e2}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px 'DM Sans',sans-serif}button{font:inherit;color:inherit;cursor:pointer;transition:background .15s,border-color .15s}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:2px solid var(--gold);outline-offset:4px}button:active:not(:disabled){transform:translateY(1px)}a{color:inherit}button,input{-webkit-tap-highlight-color:transparent}.shell{max-width:1600px;padding:0 44px;margin:auto}header{height:94px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.brand{display:flex;gap:14px;align-items:center;text-decoration:none;font:700 21px 'Barlow Condensed',sans-serif;letter-spacing:2px}.brand small{font:10px 'Space Mono',monospace;color:var(--gold);letter-spacing:4.7px;display:block;margin-top:4px}.brand-mark{width:41px;height:43px;border:2px solid var(--gold);color:var(--gold);font:700 22px Georgia;display:flex;align-items:center;justify-content:center;letter-spacing:-4px;box-shadow:4px 4px 0 #7c5f452b}.brand-mark span{transform:translateY(6px);font-size:20px}.header-label{font:9px 'Space Mono',monospace;color:#a7a1ad;letter-spacing:1.7px;display:flex;align-items:center;gap:9px}.live-dot{display:inline-block;width:6px;height:6px;background:var(--teal);box-shadow:0 0 9px #9bd1c545}.header-actions{display:flex;gap:10px}.header-actions button{background:none;border:1px solid var(--line);padding:10px 13px;font:10px 'Space Mono',monospace;color:var(--muted)}.header-actions button:hover{background:#242532}.dashboard-top{display:flex;align-items:center;justify-content:space-between;padding:29px 0 27px;gap:24px}.eyebrow{font:9px 'Space Mono',monospace;letter-spacing:1.6px;color:var(--muted)}h1{font:600 29px 'Barlow Condensed',sans-serif;margin:8px 0 0;letter-spacing:.4px}h1 em{font:italic 25px Georgia,serif;letter-spacing:-.4px;color:var(--gold);margin-left:9px}.resources{display:flex;gap:30px}.resource{display:flex;align-items:center;gap:12px;min-width:138px;border-left:1px solid var(--line);padding-left:26px}.resource .symbol{font-size:27px}.gold{color:var(--gold)}.lilac{color:var(--lilac)}.pink{color:var(--pink)}.resource div>span{font:8px 'Space Mono',monospace;color:var(--muted);letter-spacing:1.3px}.resource strong{display:block;font:600 27px 'Barlow Condensed',sans-serif;line-height:1.15;letter-spacing:1px;margin:4px 0}.resource small{font-size:10px;color:var(--muted)}.notice{display:flex;align-items:center;justify-content:space-between;background:#29263b;border:1px solid #514666;padding:13px 18px;font-size:12px;line-height:1.7;margin-bottom:19px;gap:15px}.notice[hidden]{display:none}.notice strong{color:var(--lilac);margin-right:8px}.notice button{background:none;border:0;font-size:22px;color:var(--muted)}.play-layout{display:grid;grid-template-columns:minmax(0,1fr) 278px;gap:24px}.arcade{min-width:0;border:1px solid #4a4341;align-self:start;background:#191b26;box-shadow:0 14px 32px #0002}.stage-bar{height:41px;display:flex;align-items:center;justify-content:space-between;padding:0 15px;background:#252431;border-bottom:1px solid #51473d;font:9px 'Space Mono',monospace;letter-spacing:1.3px}.stage-bar>span{display:flex;align-items:center;gap:9px;color:var(--gold)}.stage-bar>div{display:flex;align-items:center;gap:14px;color:var(--muted)}.stage-bar button{background:none;border:0;font-size:15px;padding:4px}.screen{position:relative;overflow:hidden;background:#242137;aspect-ratio:960/450}canvas#gallery{width:100%;height:100%;display:block;image-rendering:pixelated;touch-action:none}.scanlines{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,#0000 0px,#0000 3px,#0000000c 3px,#0000000c 4px);box-shadow:inset 0 0 80px #0002}.start-overlay{position:absolute;inset:0;display:flex;align-items:center;padding:35px 8%;background:linear-gradient(90deg,#111424eb,#15172490 44%,transparent 85%)}.start-overlay[hidden]{display:none}.start-overlay .eyebrow{font-size:9px;color:var(--gold)}.start-overlay h2{font:700 clamp(32px,3.5vw,54px)/.98 'Barlow Condensed',sans-serif;letter-spacing:1px;margin:14px 0;color:#f5e8d5}.start-overlay p:not(.eyebrow){color:#d4c7c2;font-size:12px;line-height:1.8;margin-bottom:20px}.primary{border:1px solid #f0cfa4;background:var(--gold);color:#292332;padding:13px 20px;display:flex;align-items:center;justify-content:space-between;gap:25px;font-weight:700;font-size:12px;box-shadow:3px 3px 0 #523f35}.primary:hover{background:#f3cda0}.start-overlay small{display:block;font-size:9px;color:#beb1b1;margin-top:13px}.arcade-controls{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;padding:16px;gap:11px;background:#23232f;border-top:1px solid #635242}.control-intro{display:flex;flex-direction:column;justify-content:center;gap:8px}.control-intro>span:last-child{font-size:10px;color:var(--muted)}.control-intro .eyebrow{font-size:8px;color:#c4b4a4}.game-control{position:relative;border:1px solid #49434d;background:#2c2b37;padding:11px 13px;text-align:left;border-bottom:3px solid #11131e;overflow:hidden;touch-action:manipulation;user-select:none}.game-control:hover{background:#373240}.game-control>span{display:flex;align-items:center;justify-content:space-between;font:700 15px 'Barlow Condensed',sans-serif;letter-spacing:1.3px;gap:8px}.game-control kbd{font:8px 'Space Mono',monospace;color:#b6aebb;border:1px solid #615761;box-shadow:0 2px #1d1c25;padding:2px 4px}.game-control small{font-size:8px;display:block;color:#b8adba;margin-top:6px;white-space:nowrap}.game-control.accent{border-color:#60766e;background:#30413f}.game-control.accent small{color:#a3c7bc}.game-control i{position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--teal)}.run-summary{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;gap:10px;color:var(--muted);font:8px 'Space Mono',monospace}.run-summary strong{color:#d7cbd1;margin-left:5px;font-size:10px}.run-summary button{background:none;border:0;color:var(--gold);font-size:10px;padding:0}.run-summary button strong{color:var(--gold)}.right-rail{display:flex;flex-direction:column;gap:15px}.mission-card,.event-card,.prestige-teaser{padding:19px;border:1px solid var(--line);background:var(--surface)}.card-heading{display:flex;justify-content:space-between;align-items:center}.card-heading>span:last-child:not(.eyebrow){font:10px 'Space Mono',monospace;color:var(--gold)}h2{font:600 24px 'Barlow Condensed',sans-serif;letter-spacing:.3px;margin:14px 0 8px}.mission-card p,.event-card p{font-size:12px;color:var(--muted);line-height:1.7;margin:0 0 16px}.progress-copy{display:flex;justify-content:space-between;font:9px 'Space Mono',monospace;color:#c6b2d6;gap:10px}progress{appearance:none;display:block;width:100%;height:4px;border:0;background:#363341;margin:10px 0 16px}progress::-webkit-progress-bar{background:#363341}progress::-webkit-progress-value{background:var(--lilac)}progress::-moz-progress-bar{background:var(--lilac)}.quiet-button{background:transparent;border:1px solid #565064;width:100%;padding:10px;font-size:11px;color:#d6c2e3}.quiet-button:not(:disabled):hover{background:#40344e}.event-card{background:linear-gradient(130deg,#312737,#241f2e);border-color:#524050}.event-card .eyebrow{color:var(--pink)}.event-dot{width:6px;height:6px;background:var(--pink);box-shadow:0 0 12px #de9cb766}.event-card h2{color:#ebc8d3}.event-countdown{font:700 12px 'Space Mono',monospace;color:var(--pink)}.event-mini{font:8px/1.8 'Space Mono',monospace;color:#a98b9f;margin-top:12px}.prestige-teaser{background:transparent;border:0;padding:1px 1px 0}.prestige-teaser>div{display:flex;gap:15px;align-items:center}.prestige-teaser strong{font:500 39px 'Barlow Condensed',sans-serif;color:var(--lilac)}.prestige-teaser p{font-size:11px;line-height:1.7;color:var(--muted)}.prestige-teaser button{display:flex;justify-content:space-between;width:100%;padding:10px 0;border:0;border-top:1px solid var(--line);background:none;font-size:11px;color:#c3b0d7}.news{display:flex;align-items:center;gap:19px;margin:20px 0 25px;padding:13px 17px;border-left:2px solid #b89267;background:#1d1d27}.news>span{font:8px 'Space Mono',monospace;letter-spacing:1.4px;color:var(--gold);white-space:nowrap}.news p{margin:0;font-size:11px;color:#bfb5c2;line-height:1.6}.news .wire-star{margin-left:auto;font-size:16px}.management{border-top:1px solid var(--line)}.management-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.tabs{display:flex;gap:29px;overflow:auto}.tabs button{background:none;border:0;border-bottom:2px solid transparent;color:var(--muted);padding:19px 0;font-size:13px;white-space:nowrap}.tabs button[aria-selected=true]{color:var(--gold);border-color:var(--gold)}.chapter-label{font:8px 'Space Mono',monospace;color:#797580;letter-spacing:1px;white-space:nowrap}#panel{min-height:230px;padding:22px 0}.panel-intro{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 19px}.panel-intro p{font-size:12px;color:var(--muted);margin:0;line-height:1.7}.buy-amount{display:flex;gap:3px;align-items:center;white-space:nowrap;font-size:10px}.buy-amount span{color:var(--muted);margin-right:6px}.buy-amount button{background:#252432;border:1px solid #41404d;padding:5px 9px;font:10px monospace}.buy-amount button.selected{background:#554335;color:var(--gold);border-color:#9c7757}.upgrade-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.upgrade{display:grid;grid-template-columns:43px 1fr auto;gap:12px;align-items:center;width:100%;text-align:left;background:#20212c;border:1px solid #353542;padding:16px}.upgrade:disabled{opacity:1}.upgrade:hover:not(:disabled){border-color:#a88863;background:#292735}.upgrade .icon{font:27px Georgia;width:43px;height:44px;display:grid;place-items:center;color:#cfaa7f;background:#33303a;border:1px solid #5d4b45}.upgrade strong{display:block;font-size:13px;font-weight:500}.upgrade small{display:block;font-size:10px;color:var(--muted);margin-top:6px;line-height:1.4}.upgrade .cost{text-align:right;font:12px 'Space Mono',monospace;color:var(--gold);white-space:nowrap}.upgrade:disabled .cost{color:#807986}.upgrade.locked{opacity:.55}.upgrade .cost small{font:8px 'Space Mono',monospace;margin-top:7px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.card{border:1px solid var(--line);background:var(--surface);padding:20px}.card h3{font:600 22px 'Barlow Condensed',sans-serif;margin:9px 0}.card p{font-size:12px;color:var(--muted);line-height:1.8;margin:9px 0 17px}.card .meta{font:9px 'Space Mono',monospace;color:var(--gold)}.card button{border:1px solid #655469;background:#3a3047;padding:10px 15px;font-size:11px;color:#e0c8f1;width:100%}.card button:hover:not(:disabled){background:#4c3b60}.card.selected{border-color:var(--gold)}.card.locked{opacity:.65}.daily-grid{margin-top:20px}.panel-subhead{font:600 21px 'Barlow Condensed',sans-serif;letter-spacing:.5px;margin:25px 0 13px}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:18px}.legacy-card{border:1px solid #5f4a67;background:linear-gradient(120deg,#302739,#1d1e2a);padding:25px}.legacy-card h3{font:600 28px 'Barlow Condensed',sans-serif;margin:0 0 10px}.legacy-card p{font-size:12px;color:#b8adbd;line-height:1.8}.legacy-card .big{font:500 42px 'Barlow Condensed',sans-serif;color:var(--lilac)}.legacy-card .big small{font:12px 'DM Sans',sans-serif;color:#baa8c9;margin-left:10px}.legacy-card button{background:#bda3e2;color:#252134;padding:12px 19px;border:0;font-size:12px;font-weight:700}.legacy-card.foundation{border-color:#67563f;background:linear-gradient(120deg,#352b29,#211f28)}.foundation .big{color:var(--gold)}.foundation button{background:var(--gold)}.skill-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.skill{position:relative;border:1px solid #3e374b;background:#23212f;padding:18px}.skill .rank{position:absolute;right:17px;top:18px;font:9px monospace;color:var(--lilac)}.skill h3{font-size:13px;margin:0 30px 9px 0}.skill p{font-size:11px;color:var(--muted);line-height:1.7;min-height:36px;margin:0 0 15px}.skill button{width:100%;padding:8px;background:transparent;border:1px solid #605071;color:#cab3e0;font:10px 'Space Mono',monospace}.art-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:12px}.artwork{text-align:center;min-width:0}.artwork canvas{width:100%;height:auto;image-rendering:pixelated;background:#302737}.artwork small{display:block;font-size:9px;color:var(--muted);line-height:1.5;margin-top:6px}.collection-heading{display:flex;justify-content:space-between;align-items:center;margin:25px 0 16px;gap:20px}.collection-heading h3{font:600 23px 'Barlow Condensed',sans-serif;margin:0}.collection-heading p{font-size:11px;color:var(--muted);line-height:1.6}.collection-heading button{background:#333044;border:1px solid #6a5767;padding:12px 18px;color:var(--pink);font-size:11px}.district-card{padding:0;overflow:hidden}.district-picture{height:112px;background-image:none;background-size:100% 335%;background-position:center 0}.district-card[data-district="1"] .district-picture,.district-card[data-district="4"] .district-picture{background-position:center 48%}.district-card[data-district="2"] .district-picture,.district-card[data-district="5"] .district-picture{background-position:center 100%}.district-content{padding:18px}.district-content h3{margin-top:0}.district-card button{color:var(--gold);border-color:#766347;background:#3a302d}.district-card .meta{font-size:8px;line-height:1.8}footer{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding:25px 0 30px;gap:20px}footer>span{font:11px 'Barlow Condensed',sans-serif;letter-spacing:1.5px;color:#a29aab}footer b{font:8px 'Space Mono',monospace;color:var(--gold);margin-left:9px;letter-spacing:1px}footer small{display:block;font:10px 'DM Sans',sans-serif;color:#797581;letter-spacing:0;margin-top:7px}footer>div{display:flex;align-items:center;gap:17px;font-size:10px;color:#97919e}footer button{background:none;border:0;border-bottom:1px solid #504858;color:#aaa0b4;font-size:10px;padding:3px 0}dialog{background:#23212e;color:var(--ink);border:1px solid #7e665a;padding:32px;max-width:540px;width:90%;box-shadow:0 25px 100px #0008}dialog::backdrop{background:#0b0c15b8;backdrop-filter:blur(4px)}dialog h2{font-size:32px;color:var(--gold);margin:7px 0 18px}dialog p,dialog li{font-size:13px;line-height:1.8;color:#c4bacb}dialog li{margin-bottom:8px}dialog .close{float:right;background:none;border:0;color:var(--muted);font-size:25px;margin:-10px -10px 0 10px}#dialog-actions{display:flex;gap:12px;margin-top:22px}#dialog-actions button{border:1px solid #6e5b70;background:#3d304b;color:#e2cdea;padding:12px 18px;font-size:12px}#dialog-actions button.confirm{background:var(--gold);border-color:var(--gold);color:#26202c}.screen:fullscreen{display:flex;align-items:center;justify-content:center;background:#10111c;aspect-ratio:auto}.screen:fullscreen canvas{max-height:100vh;object-fit:contain}.screen:fullscreen .start-overlay{padding-left:15%}body.reduced .scanlines{display:none}
@media(min-width:1450px){.play-layout{grid-template-columns:minmax(0,1fr) 310px}.right-rail{gap:20px}.mission-card,.event-card{padding:24px}.arcade-controls{padding:20px}.game-control{padding:14px 17px}.prestige-teaser{padding:3px 2px}}
@media(max-width:1200px){.shell{padding:0 26px}.header-label{display:none}.resource{padding-left:15px;min-width:110px}.resources{gap:15px}h1{font-size:25px}h1 em{font-size:22px;display:block;margin:4px 0 0}.play-layout{grid-template-columns:minmax(0,1fr) 247px;gap:18px}.control-intro{display:none}.arcade-controls{grid-template-columns:1fr 1fr 1fr}.run-summary>span:nth-child(3){display:none}.chapter-label{display:none}.art-grid{grid-template-columns:repeat(6,1fr)}.upgrade{grid-template-columns:35px 1fr auto;padding:13px;gap:9px}.upgrade .icon{width:35px;height:38px;font-size:23px}.upgrade strong{font-size:12px}.upgrade .cost{font-size:10px}.start-overlay h2{font-size:37px}.start-overlay p:not(.eyebrow){font-size:11px;margin-bottom:13px}.start-overlay small{display:none}.start-overlay{padding:20px 6%}.start-overlay .eyebrow{font-size:8px}}
@media(max-width:940px){.play-layout{grid-template-columns:1fr}.right-rail{display:grid;grid-template-columns:1fr 1fr}.prestige-teaser{display:none}.dashboard-top{padding:23px 0}.resource{min-width:100px}.resource .symbol{font-size:21px}.resources{gap:10px}.resource strong{font-size:24px}.resource small{font-size:8px}.resource div>span{font-size:7px}.start-overlay h2{font-size:45px}.start-overlay p:not(.eyebrow){font-size:12px}.start-overlay small{display:block}.upgrade-grid,.skill-grid{grid-template-columns:1fr 1fr}.cards{grid-template-columns:repeat(2,1fr)}.cards .card:last-child:nth-child(odd){grid-column:1/-1}.mission-card,.event-card{padding:17px}.mission-card h2,.event-card h2{margin:11px 0 7px}.event-card p{margin-bottom:10px}.quiet-button{padding:8px}.event-mini{margin-top:10px}.management-header{overflow:hidden}.tabs{gap:24px}footer{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.shell{padding:0 14px}header{height:75px}.brand{font-size:17px;gap:10px;letter-spacing:1.5px}.brand small{font-size:8px;letter-spacing:3.6px}.brand-mark{width:31px;height:34px;font-size:18px}.brand-mark span{font-size:16px}.header-actions{gap:6px}.header-actions button{padding:8px;font-size:8px}.header-actions #help{font-size:15px;padding:4px 10px}.header-actions #help span{display:none}.dashboard-top{display:block;padding:19px 0 17px}.chapter-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.chapter-title>.eyebrow{font-size:7px;max-width:100px;line-height:1.6}h1{font-size:18px;margin:0}h1 em{display:inline;font-size:17px;margin-left:6px}.resources{justify-content:space-between;gap:0}.resource{min-width:0;flex:1;padding-left:10px;gap:8px}.resource:first-child{border-left:0;padding-left:0}.resource .symbol{font-size:21px}.resource strong{font-size:24px;margin:3px 0}.resource small{font-size:8px}.resource div>span{font-size:7px;letter-spacing:.5px}.notice{font-size:11px;padding:10px 12px;line-height:1.5}.stage-bar{height:33px;padding:0 10px;font-size:8px;letter-spacing:.8px}.stage-bar>div{gap:10px}.stage-bar #walk-status{font-size:6px}.screen{aspect-ratio:960/510}.screen canvas{object-fit:cover}.start-overlay{padding:12px 6%;background:linear-gradient(90deg,#111424eb,#15172490 65%,transparent)}.start-overlay h2{font-size:30px;margin:8px 0;line-height:.95}.start-overlay .eyebrow{font-size:7px;margin:0}.start-overlay p:not(.eyebrow){font-size:9px;line-height:1.5;margin:0 0 11px}.start-overlay .primary{font-size:10px;padding:9px 12px;gap:15px}.start-overlay small{display:none}.arcade-controls{padding:10px 9px;gap:6px}.game-control{padding:10px 8px}.game-control>span{font-size:13px;letter-spacing:.7px}.game-control small{font-size:7px;line-height:1.5;white-space:normal;min-height:20px}.game-control kbd{display:none}.run-summary{padding:10px 9px;font-size:6px;gap:6px}.run-summary strong{font-size:8px;margin-left:3px}.run-summary button{font-size:8px}.right-rail{gap:10px}.mission-card,.event-card{padding:13px}.card-heading .eyebrow{font-size:7px;letter-spacing:.8px}.card-heading>span:last-child:not(.eyebrow){font-size:8px}.mission-card h2,.event-card h2{font-size:21px}.mission-card p,.event-card p{font-size:10px;line-height:1.5;margin-bottom:13px}.progress-copy{font-size:7px;gap:4px}.quiet-button{font-size:9px;padding:8px 4px}.event-countdown{font-size:10px}.event-mini{font-size:6px;line-height:1.8}.news{gap:10px;padding:11px 10px;margin:15px 0 18px}.news>span{font-size:7px;letter-spacing:.6px}.news p{font-size:10px}.news .wire-star{display:none}.tabs{gap:23px}.tabs button{font-size:12px;padding:15px 0}#panel{padding:17px 0}.panel-intro{align-items:flex-start;flex-direction:column;gap:12px}.panel-intro p{font-size:11px}.upgrade-grid{grid-template-columns:1fr;gap:8px}.upgrade{padding:12px 14px;grid-template-columns:38px 1fr auto;gap:13px}.upgrade strong{font-size:13px}.upgrade small{font-size:10px}.upgrade .cost{font-size:11px}.two-cols,.cards,.skill-grid{grid-template-columns:1fr}.cards .card:last-child:nth-child(odd){grid-column:auto}.legacy-card{padding:20px}.legacy-card h3{font-size:25px}.legacy-card p{font-size:12px}.skill{padding:16px}.skill p{min-height:0}.skill h3{font-size:14px}.skill p{font-size:12px}.card h3{font-size:24px}.card p{font-size:12px}.card button{font-size:12px}.art-grid{grid-template-columns:repeat(4,1fr);gap:10px}.collection-heading{align-items:flex-start;flex-direction:column;gap:5px}.collection-heading button{width:100%}footer{padding:20px 0}footer>div{flex-wrap:wrap;gap:15px;font-size:10px}.district-picture{height:130px}.run-summary>span:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){button{transition:none}.scanlines{display:none}}
@media(min-width:941px) and (max-width:1200px){.prestige-teaser{display:none}}
@media(max-width:600px){.screen{aspect-ratio:640/450}.screen canvas{object-fit:fill}.start-overlay h2{font-size:34px}.start-overlay p:not(.eyebrow){font-size:10px;margin-bottom:13px}.start-overlay .primary{padding:11px 14px}}

/* Game-first viewport. Management lives in a separate, scrollable menu. */
html,body{height:100%;overflow:hidden;overscroll-behavior:none}
.shell{width:100%;max-width:none;height:100vh;height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);display:flex;flex-direction:column;background:#14151e}
header{height:50px;flex:none;padding:0 20px}.brand{font-size:17px;gap:10px}.brand-mark{width:28px;height:30px;font-size:17px}.brand-mark span{font-size:15px}.brand small{display:none}.header-actions button{min-height:40px}.header-label{font-size:8px}
main{display:flex;flex:1;min-height:0;flex-direction:column}.chapter-title{display:none}.dashboard-top{flex:none;padding:8px 20px;display:block}.resources{gap:20px;justify-content:center}.resource{min-width:130px;padding-left:20px;gap:9px}.resource:first-child{border:0}.resource strong{font-size:25px;margin:0;display:inline-block}.resource small{margin-left:8px;font-size:9px}.resource div>span{display:block;font-size:7px}.resource .symbol{font-size:23px}.resource:last-child small,#rep-bonus{display:none}
.play-layout{display:flex;flex:1;min-height:0;gap:0}.arcade{width:100%;display:flex;flex-direction:column;align-self:stretch;min-height:0;border-left:0;border-right:0;box-shadow:none}.stage-bar{height:40px;flex:none;padding:0 20px}.stage-bar button{min-width:44px;min-height:38px}.screen{aspect-ratio:auto;flex:1;min-height:0;width:100%}.screen canvas{object-fit:fill}.arcade-controls{flex:none;grid-template-columns:repeat(3,minmax(0,1fr));padding:8px max(12px,calc((100vw - 650px)/2));gap:10px}.control-intro{display:none}.game-control{min-height:57px;padding:8px 14px}.game-control>span{font-size:17px}.game-control small{min-height:0;margin-top:3px;font-size:9px}
.game-dock{flex:none;display:flex;justify-content:center;background:#1b1b28;border-top:1px solid #49404b;padding:3px 12px;gap:6px}.game-dock button{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;flex:1;max-width:150px;min-height:51px;border:0;background:transparent;color:#bdb4c6;font-size:12px}.game-dock button:hover{background:#353042;color:var(--gold)}.game-dock b{position:relative;color:var(--gold);font:25px Georgia}.game-dock i{position:absolute;right:-5px;top:0;background:#9bd1c5;width:8px;height:8px;border-radius:50%}.game-dock i[hidden]{display:none}.news{flex:none;margin:0;padding:5px 20px;min-height:25px;gap:10px;border:0}.news p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px}.news>span{font-size:7px}.news .wire-star{display:none}
.start-overlay{padding:20px 8%}.start-overlay h2{font-size:clamp(38px,5vw,64px)}.start-overlay p:not(.eyebrow){font-size:13px}.start-overlay .primary{min-height:48px;font-size:13px}.start-overlay small{display:block}
#game-menu{width:min(1020px,94vw);max-width:1020px;height:min(850px,94dvh);max-height:94dvh;padding:0;overflow:hidden;margin:auto;border:1px solid #75606b;border-radius:14px;background:#1c1c29}#game-menu[open]{display:flex;flex-direction:column}#game-menu::backdrop{background:#070915a6;backdrop-filter:blur(3px)}.menu-top{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;flex:none;background:#292333}.menu-top h2{margin:3px 0 0;font-size:28px}.menu-top .eyebrow{font-size:8px}#close-menu{border:1px solid #68596e;background:#342b3e;width:46px;height:46px;font-size:27px;border-radius:8px}.menu-wallet{display:flex;align-items:center;gap:24px;padding:12px 24px;border-bottom:1px solid #49404b;font:14px 'Space Mono',monospace;color:var(--gold);flex:none}.menu-wallet span:nth-child(2){color:var(--lilac)}.menu-wallet span:nth-child(3){color:var(--pink)}.menu-wallet small{margin-left:auto;font:10px 'DM Sans',sans-serif;color:var(--muted)}.menu-body{overflow-y:auto;min-height:0;padding:0 24px 16px;overscroll-behavior:contain}.management{border:0}.management-header{position:sticky;top:0;background:#1c1c29;z-index:1;display:block}.tabs{gap:0;justify-content:space-between}.tabs button{padding:16px 12px;min-height:48px}.chapter-label{display:none}#game-menu .right-rail{display:none}#game-menu[data-tab=missions] .right-rail{display:grid;grid-template-columns:1fr 1fr;margin-bottom:20px}#game-menu .mission-card,#game-menu .prestige-teaser{display:none}#game-menu .event-card{grid-column:1/-1}.run-summary{padding:16px 0;border-top:1px solid var(--line)}.run-summary button{min-height:44px;font-size:12px}.run-summary>span:nth-child(n){display:block}.run-summary>span{font-size:8px}.run-summary strong{font-size:10px}.menu-body footer{margin:0;padding:16px 0;gap:12px}.menu-body footer>div{flex-wrap:wrap;gap:12px}.menu-body footer button{min-height:44px}.menu-body button{touch-action:manipulation}.buy-amount button{min-width:44px;min-height:44px}.skill button,.card button,.quiet-button{min-height:44px}#dialog{max-height:90dvh;overflow:auto}#close-dialog{min-width:44px;min-height:44px}
@media(max-width:600px){header{height:42px;padding:0 10px}.brand{font-size:14px;letter-spacing:1px;gap:7px}.brand-mark{width:23px;height:25px;font-size:14px}.brand-mark span{font-size:12px}.header-actions button{min-height:40px}.header-actions #help{min-width:44px}.dashboard-top{padding:6px 12px}.resources{gap:0;justify-content:space-between}.resource{flex:1;min-width:0;padding-left:12px;gap:6px}.resource:first-child{flex:1.3}.resource .symbol{font-size:20px}.resource strong{font-size:24px;letter-spacing:.3px}.resource small{display:block;margin-left:0;font-size:8px}.resource div>span{font-size:6px;letter-spacing:.5px}.stage-bar{height:36px;padding:0 12px;font-size:8px}.stage-bar #walk-status{display:none}.stage-bar>div{gap:0}.stage-bar button{min-height:36px}.arcade-controls{padding:7px 10px;gap:8px}.game-control{min-height:58px;padding:8px 10px;border-radius:7px}.game-control>span{font-size:18px;letter-spacing:1px;justify-content:center}.game-control small{font-size:8px;text-align:center;line-height:1.3;white-space:normal}.game-control kbd{display:none}.game-dock{padding:3px 5px;gap:0}.game-dock button{flex-direction:column;gap:1px;font-size:10px;min-height:53px}.game-dock b{font-size:23px;line-height:25px}.news{padding:3px 12px;min-height:22px}.news>span{display:none}.news p{font-size:9px}.start-overlay{padding:20px 8%}.start-overlay h2{font-size:46px;margin:12px 0}.start-overlay p:not(.eyebrow){font-size:12px;line-height:1.6}.start-overlay .eyebrow{font-size:8px}.start-overlay small{font-size:9px}#game-menu{width:100%;height:94dvh;max-height:94dvh;max-width:100%;margin:auto 0 0;border-radius:16px 16px 0 0;border-bottom:0;padding-bottom:env(safe-area-inset-bottom)}.menu-top{padding:12px 16px}.menu-top h2{font-size:25px}.menu-wallet{gap:16px;padding:10px 16px;flex-wrap:wrap;font-size:12px}.menu-wallet small{width:100%;margin:0;font-size:9px}.menu-body{padding:0 14px 12px}.tabs button{padding:14px 8px;font-size:11px}.tabs{gap:4px}.upgrade{padding:12px 10px;gap:8px;grid-template-columns:30px minmax(0,1fr) auto}.upgrade .icon{width:30px;height:34px}.upgrade .cost{font-size:10px}.run-summary{flex-wrap:wrap;gap:12px}.run-summary button{width:100%;text-align:left}.menu-body footer>span{display:none}.menu-body footer>div{gap:12px}.menu-body footer #save-status{width:100%}}
@media(max-height:500px) and (orientation:landscape){header{display:none}.dashboard-top{padding:3px 12px}.resources{justify-content:center}.resource{display:flex;min-width:120px;flex:none;padding-left:18px}.resource div>span{display:none}.resource strong{font-size:22px}.resource small{display:inline;margin-left:6px}.stage-bar{height:30px;font-size:8px}.stage-bar button{min-height:30px}.arcade{position:relative}.arcade-controls{position:absolute;z-index:2;bottom:10px;left:12px;right:12px;background:none;border:0;padding:0;display:flex;justify-content:flex-end;pointer-events:none}.game-control{pointer-events:auto;width:90px;min-height:49px;background:#252331dd}.game-control small,.game-control kbd{display:none}.game-control>span{font-size:17px}.game-control:first-of-type{margin-right:auto}.game-dock{padding:0 10px}.game-dock button{min-height:44px;flex-direction:row;gap:7px}.news{display:none}.start-overlay h2{font-size:30px;margin:6px 0}.start-overlay p:not(.eyebrow),.start-overlay small{display:none}.start-overlay .primary{min-height:44px}.start-overlay{padding:10px 8%}#game-menu{height:96dvh;max-height:96dvh}.menu-top{padding:6px 16px}.menu-top .eyebrow{display:none}.menu-top h2{font-size:24px}.menu-wallet{padding:7px 16px}.menu-wallet small{width:auto;margin-left:auto}.tabs button{padding:10px;min-height:44px}}

/* Arcade menu system: pixel borders, semantic icons and readable targets. */
.pixel-icon{width:24px;height:24px;display:inline-block;vertical-align:middle;flex:none;filter:drop-shadow(2px 2px 0 #100e20)}
#game-menu,#dialog{border:4px solid #ddbb79;border-radius:0;box-shadow:0 0 0 4px #272238,0 0 0 6px #735f51,8px 8px 0 #070813;background:#201e31;color:#fff3d8}
#game-menu::backdrop,#dialog::backdrop{background:#080c19c9;backdrop-filter:none}
.menu-top{background:#343047;border-bottom:3px solid #887457}.menu-top h2,#dialog h2{font-family:'Courier New',monospace;font-size:24px;font-weight:900;text-shadow:2px 2px #100d20;letter-spacing:-.5px}
#close-menu{border-radius:0;border:2px solid #c9ac7d;box-shadow:3px 3px #100e20;color:#fff3d8}
.menu-wallet{font-size:13px;color:#ffe09b;background:#191a2b}.menu-wallet small{color:#c5c5d7;font-size:11px}
.menu-body{background:repeating-linear-gradient(0deg,#211f32 0 3px,#242136 3px 6px)}
.management-header{background:#211f32;border-bottom:2px solid #77624e}.tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;padding:8px 0}.tabs button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:9px 5px;border:2px solid #595067;background:#302b42;font:700 13px 'Courier New',monospace;color:#d6d0e4;min-height:68px}.tabs button[aria-selected=true]{background:#594c42;color:#ffdf95;border-color:#f2cd88;box-shadow:inset 0 -4px #b08c55}.tabs button[aria-selected=true]:after{display:none}
#game-menu .card,#game-menu .skill,#game-menu .upgrade,#game-menu .legacy-card,#game-menu .event-card{border:2px solid #686077;border-radius:0;background:#2b283e;box-shadow:3px 3px #131225}
#game-menu .card h3,#game-menu .skill h3,#game-menu .upgrade strong{font-family:'Courier New',monospace;font-weight:900;font-size:18px;color:#ffe4aa;line-height:1.25}#game-menu p,#game-menu .skill p{font-size:14px;line-height:1.6;color:#e0dce9}#game-menu .meta{font-size:11px;line-height:1.6;color:#cbc1da}
#game-menu button,#dialog button{border-radius:0;touch-action:manipulation}#game-menu .card button,#game-menu .skill button,#game-menu .legacy-card button,#game-menu .quest-toolbar button{background:#514333;border:2px solid #e2bd79;box-shadow:3px 3px #141221;color:#ffe7b3;font:bold 14px 'Courier New',monospace;min-height:48px;padding:10px 12px}
#game-menu button:disabled{opacity:1;color:#b0aabd;background:#272536;border-color:#524a61;box-shadow:none;cursor:default}#game-menu .upgrade.locked{background:#222131}#game-menu .upgrade small{font-size:12px;line-height:1.5;color:#ccc3d5}.upgrade .cost small{font-size:10px!important}.buy-amount{gap:7px}.buy-amount button.selected{background:#e1bd7d;color:#211e30;border:2px solid #fff0bd;box-shadow:inset 0 -4px #aa8448}.buy-amount button.selected:before{content:'✓ ';font-weight:bold}
.quest-toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:16px 0;color:#a8f4d4;font:bold 13px 'Courier New',monospace}.quest-hint{border-left:3px solid #89b9bb;padding-left:10px;font-size:13px!important}.quest-ready{border-color:#a8edc8!important}.quest-ready .meta{color:#b2f3d4!important}.quest-ready button{background:#34564d!important;color:#d5ffe8!important;border-color:#a4e6be!important}progress{height:12px;border:2px solid #100f20;border-radius:0;background:#151525}progress::-webkit-progress-bar{background:#151525}progress::-webkit-progress-value{background:#a7d8b1}
.game-dock{border-top:3px solid #796449;background:#252136;gap:5px}.game-dock button{font:bold 12px 'Courier New',monospace;color:#eee2c6;border:2px solid transparent}.game-dock button:hover{border-color:#dcb775;background:#403448}.game-dock b{display:flex;align-items:center;color:#f2cd88}.game-dock i{width:auto;min-width:15px;height:15px;right:-7px;top:-6px;border-radius:0;background:#b8efcf;color:#172c27;font:bold 11px monospace;padding:1px 3px;box-shadow:2px 2px #151525}
.game-control{border-radius:0;border:2px solid #83705c;box-shadow:inset 0 -3px #292339;background:#342e43}.game-control>span{font:bold 15px 'Courier New',monospace;letter-spacing:0}.game-control small{color:#ddd0de}.game-control.accent{border-color:#81bdaa;background:#2c443f}
.quest-tracker{position:absolute;z-index:2;left:12px;bottom:10px;max-width:calc(100% - 24px);display:flex;gap:9px;align-items:center;text-align:left;background:#1b1d30ed;border:2px solid #ac915f;padding:7px 10px;min-height:46px;color:#ffdfa0;box-shadow:3px 3px #100e22;font:12px 'Courier New',monospace}.quest-tracker span{min-width:0}.quest-tracker b{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:260px}.quest-tracker small{display:block;margin-top:4px;color:#dfdeec;font-size:11px}.tap-hint{position:absolute;z-index:1;left:14px;bottom:69px;font:bold 10px 'Courier New',monospace;color:#f7e6be;text-shadow:1px 1px #101223;pointer-events:none;opacity:.85}.start-overlay{z-index:3}.screen canvas{touch-action:none}.scanlines{pointer-events:none}
button:focus-visible,a:focus-visible,canvas:focus-visible{outline:3px solid #b9fff1;outline-offset:3px}#panel button:focus-visible{outline-offset:4px}.menu-body{scrollbar-color:#bca379 #211f32}
@media(max-width:600px){#game-menu{width:calc(100% - 12px);margin:auto 6px 6px;max-height:94dvh;height:94dvh;border-radius:0}.menu-top{padding:10px 12px}.menu-top h2{font-size:20px}.menu-top .eyebrow{font-size:9px}.menu-body{padding:0 10px 12px}.tabs{gap:3px}.tabs button{font-size:11px;padding:8px 2px;min-height:64px}.tabs .pixel-icon{width:21px;height:21px}.menu-wallet{gap:12px;padding:10px 12px}.quest-toolbar{align-items:stretch;flex-direction:column;gap:8px}.quest-toolbar button{width:100%}.game-dock button{font-size:10px;gap:5px;min-height:57px}.game-control>span{font-size:13px}.game-control small{font-size:9px}.quest-tracker{left:10px;bottom:8px;padding:6px 8px;max-width:calc(100% - 20px)}.quest-tracker b{max-width:240px;font-size:11px}.quest-tracker small{font-size:10px}.tap-hint{font-size:9px;bottom:65px}#game-menu .card{padding:16px}#game-menu .panel-intro p{font-size:13px}#game-menu .upgrade strong{font-size:14px}#game-menu .upgrade{grid-template-columns:28px minmax(0,1fr) auto}#game-menu .upgrade small{font-size:11px}.upgrade .cost b{font-size:11px}}
@media(max-height:500px) and (orientation:landscape){.quest-tracker{left:115px;bottom:8px;max-width:calc(100% - 335px)}.tap-hint{display:none}.tabs button{min-height:48px;flex-direction:row}.menu-top h2{font-size:18px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.scanlines{display:none}}
@font-face{font-family:Pixelify;src:url('assets/pixelify-bold.ttf') format('truetype');font-weight:700;font-display:swap}
.menu-top h2,#dialog h2,#game-menu .card h3,#game-menu .skill h3,.game-control>span{font-family:Pixelify,'Courier New',monospace;font-weight:700;letter-spacing:.2px}.menu-top h2{font-size:30px}.tabs button,.game-dock button{font-family:Pixelify,'Courier New',monospace;font-size:16px}.game-control>span{font-size:20px}#game-menu .card h3{font-size:24px}#game-menu .skill h3{font-size:21px}
@media(max-width:600px){.menu-top h2{font-size:25px}.tabs button,.game-dock button{font-size:13px}.game-control>span{font-size:18px}}
.master-portrait{display:block;width:100%;height:170px;object-fit:contain;image-rendering:pixelated;background:linear-gradient(#171b2c,#343044);border:2px solid #6c5973;margin:14px 0}.master-title{color:#ffd992!important;font-weight:bold}

/* Six distinct destination previews. */
.district-card .district-picture{background-image:none;background-size:200% 300%;filter:none}
.district-card[data-district="0"] .district-picture{background-position:0% 0%}
.district-card[data-district="1"] .district-picture{background-position:100% 0%}
.district-card[data-district="2"] .district-picture{background-position:0% 50%}
.district-card[data-district="3"] .district-picture{background-position:100% 50%}
.district-card[data-district="4"] .district-picture{background-position:0% 100%}
.district-card[data-district="5"] .district-picture{background-position:100% 100%}

/* Readable equipment rows, with explicit purchase targets and milestone icons. */
.shop-item{display:grid;grid-template-columns:64px minmax(0,1fr) 124px;gap:14px;align-items:center;padding:16px;background:#242434;border:2px solid #51455a;box-shadow:inset 0 -3px #171725;color:#fff1d5}.shop-art{text-align:center;background:#171c2a;padding:7px 3px;border:2px solid #786246}.item-icon{display:block;width:48px;height:48px;margin:auto}.shop-art small{display:block;font-size:11px;color:#e8c891;margin-top:6px}.shop-info strong{display:block;font-size:17px;color:#fff0cd}.shop-info small{display:block;line-height:1.45;color:#b9bbc7;font-size:12px}.shop-level{display:block;color:#dfbb72;font-size:11px;margin:5px 0}.shop-info progress{width:100%;height:7px;margin:6px 0;accent-color:#e7b667}.shop-buy{min-height:84px;padding:10px 5px;background:#446b4c;border:2px solid #8eb476;color:#fff5cf;box-shadow:inset 0 -4px #28482e}.shop-buy b,.shop-buy span,.shop-buy small{display:block}.shop-buy b{font-family:Pixelify,monospace;font-size:19px}.shop-buy span{font-size:14px;margin:5px 0}.shop-buy small{font-size:11px}.shop-buy:disabled{background:#302b3c;border-color:#60506a;color:#b7aabd;opacity:1;box-shadow:inset 0 -3px #211d2a}.shop-item.locked .shop-art{filter:grayscale(1);opacity:.55}.buy-amount{flex-wrap:wrap}.panel-intro>small{color:#b9bbc7;font-size:12px}.upgrade-grid{grid-template-columns:1fr}
@media(max-width:600px){.shop-item{grid-template-columns:46px minmax(0,1fr) 96px;gap:8px;padding:10px 7px}.item-icon{width:36px;height:36px}.shop-info strong{font-size:14px}.shop-info small{font-size:11px}.shop-art small{font-size:9px}.shop-buy b{font-size:16px}.shop-buy span{font-size:12px}.shop-buy small{font-size:10px}.shop-art{padding:6px 0}}
/* Atelier Village and the permanent travel inventory. */
.game-dock{grid-template-columns:repeat(6,minmax(0,1fr))}.tabs{grid-template-columns:repeat(6,minmax(0,1fr))}.inventory-item{display:flex;gap:24px;align-items:center;padding:24px;border:2px solid #ac8b57;background:#242333;margin-bottom:20px}.inventory-item h3{margin:8px 0;color:#ffdc91}.inventory-item p{color:#c9c5cd;line-height:1.6}.inventory-item small{display:block;margin-top:12px;color:#d2b881}.hub-key{width:85px;height:110px;flex-shrink:0}.village-seal{font-size:60px;color:#ffd77c}.village-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:6px 0 18px}.village h3{font-family:Pixelify,monospace;font-size:27px;color:#ffdc91;margin:8px 0}.village-heading p{color:#c7becd;font-size:13px}.village-map{position:relative;border:3px solid #b49358;overflow:hidden;background:#252035}.village-map img{display:block;width:100%;image-rendering:pixelated}.village-person{position:absolute;transform:translate(-50%,-50%);background:#221e32ed;border:2px solid #f0c874;padding:9px 12px;color:#ffe5a4;box-shadow:3px 3px #1119;font-family:Pixelify,monospace;font-size:20px;min-height:44px}.village-person small{display:block;color:#eee4d9;font-family:inherit;font-size:12px}.village-person.selected{background:#79502d;border-color:#fff3bf}.person-0{left:14%;top:69%}.person-1{left:38%;top:37%}.person-2{left:78%;top:76%}.person-3{left:87%;top:48%}.village-talk{padding:22px;background:#272336;border:2px solid #847250;border-top:0}.village-talk p,.village-journal p{line-height:1.7;color:#ded7df}.village-quest{background:#181c2a;border-left:4px solid #d3ac67;padding:20px;margin-top:22px}.village-quest h4{font-size:21px;margin:9px 0;color:#ffe1a4}.village-quest progress{width:100%;display:block;height:10px;accent-color:#e6be76;margin:16px 0}.village-journal{padding:18px;border:2px solid #65556e;margin-top:18px}.village-journal summary{cursor:pointer;color:#e9c689;font-family:Pixelify,monospace;font-size:20px}.village-journal article{border-top:1px solid #65556e;margin-top:16px}.hall-open{position:absolute;top:3%;right:2%;font:14px Pixelify,monospace;color:#fff2b7;background:#2f503e;padding:10px;border:2px solid #ffe095}#game-menu[data-tab="hub"] .right-rail,#game-menu[data-tab="hub"] .run-summary{display:none}#game-menu[data-tab="hub"] .management-header{display:none}#game-menu[data-tab="hub"] .management{width:100%}
@media(max-width:600px){.inventory-item{padding:16px;gap:14px;align-items:flex-start}.hub-key{width:48px;height:70px}.village-heading{display:block}.village-heading button{width:100%;margin-top:10px}.village-map{margin:0 -7px}.village-person{font-size:14px;padding:5px 7px;min-width:56px}.village-person small{display:none}.village-talk{padding:15px}.village-quest{padding:14px}.village-talk h3{font-size:25px}.village-talk p{font-size:14px}.tabs{gap:4px}.tabs button{padding:10px 3px;font-size:11px}.game-dock button{font-size:11px;padding:8px 2px}.hall-open{font-size:10px;padding:5px}}
#village-view{display:block;width:100%;height:400px;border:3px solid #ac8d57;background:#202437;image-rendering:pixelated}.village-controls{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:12px;padding:12px;background:#181d2b;border:2px solid #7b674c;align-items:center}.village-controls span{text-align:center;color:#f6d792;font:16px Pixelify,monospace}.village-controls button{min-height:48px;touch-action:manipulation}.village-directions{font-size:12px;color:#bdb8c9}.roulette-display{position:relative;width:210px;height:225px;margin:20px auto}.wheel-pointer{position:absolute;top:-10px;left:90px;z-index:2;color:#fff1bf;font-size:30px}.roulette-wheel{position:absolute;top:10px;width:200px;height:200px;border:8px solid #d3aa60;border-radius:50%;background:conic-gradient(#9d73ae 0deg 45deg,#252536 45deg 90deg,#d5ac53 90deg 135deg,#252536 135deg 180deg,#5fa4aa 180deg 225deg,#252536 225deg 270deg,#9d73ae 270deg 315deg,#252536 315deg 360deg);transform:rotate(var(--stop));box-shadow:0 0 0 4px #3b2d3e;display:grid;place-items:center}.roulette-wheel span{background:#242439;border:3px solid #eed89a;border-radius:50%;width:60px;height:60px;text-align:center;line-height:55px;font-size:35px;color:#ffe5a3}.auction-room>button{display:block;width:100%;min-height:48px}.auction-room #spin-result{text-align:center;color:#ffe3a0;min-height:48px}@media(max-width:600px){#village-view{height:360px}.village-controls{gap:6px;padding:8px}.village-controls button{padding:12px 6px;font-size:12px}.village-controls span{font-size:14px}}
.village button,.inventory-item button{background:#4b3d51;border:2px solid #b49b69;color:#ffe5a4;padding:12px 16px;font-family:Pixelify,monospace;cursor:pointer;box-shadow:inset 0 -3px #241e31}.village button:hover,.inventory-item button:hover{background:#67516a}.village button:disabled{background:#292634;border-color:#5d5265;color:#a79daa;cursor:default}.village button:focus-visible,.inventory-item button:focus-visible{outline:3px solid #fff0b8;outline-offset:3px}

.auction-art{width:96px;height:112px;image-rendering:pixelated;display:block;margin-bottom:12px}
/* Main-window village and tactile console controls. */
.in-village #quest-tracker,.in-village .tap-hint{display:none}#village-navigation[hidden]{display:none}#village-navigation{display:grid;grid-template-columns:64px minmax(130px,1fr) 64px auto;gap:10px;padding:10px 16px;background:#282639;border-top:2px solid #a28b67}#village-navigation button{min-height:48px;background:#454156;border:2px solid #8f88a1;box-shadow:0 4px #171725;color:#fff0c2;font-family:Pixelify,monospace;padding:8px;touch-action:none;user-select:none}#village-navigation #village-left,#village-navigation #village-right{background:#252332;border-radius:9px;font-size:22px}#village-navigation #village-exit{font-size:12px;touch-action:manipulation}.arcade-controls{display:flex!important;align-items:center;justify-content:center;gap:32px;padding:16px 18px 23px;background:linear-gradient(140deg,#bab8c9,#8c8b9f);border-top:4px solid #dedce8;box-shadow:inset 0 -6px #5a566c}.arcade-controls .control-intro{display:none}.arcade-controls .game-control{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;flex:none;width:86px;height:86px;min-width:0;padding:4px;border-radius:50%;border:3px solid #d9c9ef;background:#74569d;color:#fff1ff;box-shadow:0 7px 0 #352545,0 10px 0 5px #6d697c,inset 0 3px 3px #baa0d5;overflow:visible;touch-action:manipulation}.arcade-controls .game-control::before{font:32px Pixelify,monospace;line-height:1}.arcade-controls #jump::before{content:'B'}.arcade-controls #pitch::before{content:'Y'}.arcade-controls #dash::before{content:'A'}.arcade-controls #pitch{background:#a297be;color:#30263f;border-color:#e7dcf2;box-shadow:0 7px #5c526f,0 10px 0 5px #6d697c,inset 0 3px 3px #e3d9ee}.arcade-controls #dash{background:#655187}.arcade-controls .game-control>span{font:13px Pixelify,monospace;letter-spacing:1px;margin-top:3px}.arcade-controls .game-control small,.arcade-controls .game-control kbd,.arcade-controls #dash-bar{display:none}.arcade-controls .game-control:active:not(:disabled){transform:translateY(5px);box-shadow:0 2px #352545,0 5px 0 5px #6d697c,inset 0 2px 4px #241b35}.arcade-controls .game-control:disabled{opacity:.6}#leaderboard{width:min(600px,95vw);max-height:90dvh;padding:24px;background:#242135;color:#f4e6ca;border:4px solid #c9ac74;box-shadow:0 0 0 4px #171623}#leaderboard::backdrop{background:#090c19bb}.board-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.board-head h2{font:28px Pixelify,monospace;margin:0}#leaderboard p{line-height:1.6;font-size:14px}#leaderboard button{padding:10px 14px;border:2px solid #9b8766;background:#4b3b5b;color:#ffe9bf;font-family:Pixelify,monospace;min-height:44px}#leaderboard input{display:block;width:100%;margin:10px 0;padding:12px;background:#131725;color:#fff0dc;border:2px solid #8e809a;font-size:16px}.board-filters{display:flex;gap:8px;margin:20px 0}.board-filters button[aria-pressed=true]{background:#796345}#board-rows{padding:0;list-style:none}#board-rows li{display:flex;justify-content:space-between;gap:15px;padding:12px;border-bottom:1px solid #5d506b}#board-rows li span{overflow-wrap:anywhere}#board-profile{display:flex;gap:10px;align-items:center;justify-content:space-between}#board-profile[hidden]{display:none}#leaderboard small{color:#c0b6c8;line-height:1.6;display:block}
@media(max-width:600px){.arcade-controls{gap:27px;padding:14px 10px 22px}.arcade-controls .game-control{width:70px;height:70px}.arcade-controls .game-control::before{font-size:28px}.arcade-controls .game-control>span{font-size:11px}#village-navigation{grid-template-columns:50px 1fr 50px;gap:8px;padding:8px}#village-navigation #village-exit{grid-column:1/-1;min-height:30px;padding:4px;background:transparent;border:0;box-shadow:none}#village-interact{font-size:12px}#leaderboard{padding:16px}.header-actions{gap:5px}.header-actions button{padding:8px}}

/* Raspoutine lives inside the main arcade canvas. */
.in-club #village-navigation,.in-club .arcade-controls,.in-club .game-dock,.in-club .header-actions,.in-club .stage-bar button{display:none!important}
#rhythm-controls{padding:10px 16px;background:#291328;border-top:3px solid #c6976b}#rhythm-controls[hidden]{display:none}.rhythm-help{text-align:center;font-size:13px;color:#ebc68c;margin-bottom:8px}.rhythm-pads{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.rhythm-pads button{touch-action:none;height:62px;font:700 24px monospace;border:3px solid #f9d8aa;border-radius:10px;background:#94506f;box-shadow:0 4px #3b1c3e}.rhythm-pads button:nth-child(2){background:#776098}.rhythm-pads button:nth-child(3){background:#357d78}.rhythm-pads button:nth-child(4){background:#a27433}.rhythm-pads button:active{transform:translateY(3px);box-shadow:0 1px #3b1c3e}.rhythm-options{display:flex;justify-content:space-between;margin-top:10px}.rhythm-options button{font-size:12px;padding:8px 12px}

.rhythm-options button{background:#4b2949;color:#ffebc9;border:2px solid #ae7c81;min-height:40px}.in-club .rhythm-pads button{color:#fff4da}

/* Art circuit progression */
.progress-hud{display:flex;gap:8px;background:#161827;padding:5px 10px;border-top:2px solid #51405e;min-height:34px;align-items:center}.progress-hud button{font:13px "Pixelify Sans",monospace;color:#eed6ab;background:#292339;border:2px solid #63526c;padding:5px 8px;min-height:30px}.progress-hud #bonus-status{flex:1;text-align:left}.progress-hud #opening-night{color:#ffe593;border-color:#b88e56}.progress-section{padding:14px 0 24px;border-bottom:3px solid #63516f;margin-bottom:24px}.progress-section button{margin:5px 4px 0 0}.progress-card .unlock-copy{color:#a8f6df}.progress-card progress{width:100%;height:9px}.material-list{display:flex;flex-wrap:wrap;gap:8px}.material-list span{padding:8px;background:#292439;border:1px solid #66536c}.field-guide{margin:16px 0;padding:14px;background:#201d2f;border:2px solid #6b5371}.field-guide summary{cursor:pointer;color:#f1d3a1;font-family:"Pixelify Sans",monospace;font-size:20px}.field-guide .cards{margin-top:14px}.enemy-icon{display:inline-block;font-size:38px;color:#dfb6ed;text-shadow:3px 3px #0c1020}.species-1,.species-4{color:#a8dfef}.species-3{color:#aae8c7}.species-5{color:#efbf7b}.hunt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0}.hunt-grid button{min-height:62px;border:3px solid #9b755c;background:#3f2d39;color:#ffe2b4;font-family:"Pixelify Sans",monospace}.hunt-grid button:disabled{opacity:.7}.in-village .progress-hud{display:none}@media(max-width:600px){.progress-hud{gap:4px;padding:3px 6px}.progress-hud button{font-size:11px;padding:4px}.progress-card{min-width:0}.hunt-grid{gap:5px}.hunt-grid button{font-size:12px}.progress-section .cards{grid-template-columns:1fr}}

#dialog [data-progress-action]{min-height:44px;padding:9px 12px;background:#382b43;border:2px solid #ad8d63;color:#ffe2b4;font:15px "Pixelify Sans",monospace;cursor:pointer}#dialog [data-progress-action]:disabled{opacity:.6;cursor:default}#dialog [data-progress-action]:focus-visible{outline:3px solid #a8f6e3;outline-offset:2px}
.progress-section>.cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px}

/* menus.css */
/* Compact arcade menus: one decision per row, details on demand. */
#menu-feedback{position:absolute;bottom:14px;left:20px;right:20px;z-index:12;padding:12px 16px;border:2px solid #b5f3c7;background:#234a48;color:#e0ffe9;box-shadow:4px 4px #0a1726;font:16px/1.3 Pixelify;pointer-events:none}
#game-menu[data-tab] .right-rail,#game-menu[data-tab] .run-summary{display:none}#game-menu .objective progress,#game-menu .mini-milestone progress{margin:0}
@media(max-width:360px){#game-menu #panel .menu-sections button{font-size:12px!important;letter-spacing:0}}
.progress-hud button,.hunt-grid button{font-family:Pixelify,monospace}.quest-tile:has(.quest-bottom button:not(:disabled)){border-color:#eccb7b;background:#303e50}
#game-menu{width:min(760px,96vw);max-height:94dvh;border:3px solid #778db3;background:#131d30;box-shadow:0 0 0 3px #090f1d,8px 8px 0 #080d18;color:#edf4ff}
#game-menu .menu-top{padding:12px 18px;background:#263957;border-bottom:3px solid #080f20;min-height:62px}
#game-menu .menu-top .eyebrow{display:none}#game-menu .menu-top h2{font:22px Pixelify,monospace;letter-spacing:1px;margin:0;color:#fff1c8}
#game-menu #close-menu{width:44px;height:44px;background:#bb596a;border:2px solid #ffb5b5;color:white;box-shadow:3px 3px #10182b;font-size:28px}
#game-menu .menu-wallet{background:#0b1425;padding:10px 18px;gap:22px;font-size:16px}#game-menu .menu-wallet small{font-size:11px;color:#a3bbd5}
#game-menu .menu-body{padding:0 16px 16px;background:linear-gradient(90deg,#162137,#1c2941 50%,#162137);overflow-y:auto;overscroll-behavior:contain}
#game-menu .management{border:0;margin:0;background:none}#game-menu .management-header{display:block;position:sticky;top:0;background:#152137;z-index:5;border-bottom:2px solid #4d6080;padding:0}
#game-menu .chapter-label,#game-menu .right-rail,#game-menu .run-summary{display:none}
#game-menu .tabs{display:grid;grid-template-columns:repeat(6,1fr);gap:0;overflow:visible;margin:0}
#game-menu .tabs button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:66px;font:15px Pixelify,monospace;padding:8px 2px;color:#aabedb;border:0;border-bottom:4px solid transparent;background:none}
#game-menu .tabs .pixel-icon{width:24px;height:24px}#game-menu .tabs button[aria-selected=true]{color:#ffe096;background:#304263;border-bottom-color:#ffe096}
#game-menu #panel{padding:12px 0 0;min-height:300px}#game-menu button{border-radius:0}#game-menu #panel button{font:15px Pixelify,monospace;min-height:44px;padding:8px 12px;border:2px solid #8ad4bd;background:#2f655e;color:#f0fff4;box-shadow:2px 2px 0 #090f20}
#game-menu #panel button:disabled{opacity:1;background:#253147;border-color:#52627e;color:#8f9fb8;box-shadow:2px 2px #10182b;cursor:default}#game-menu #panel button:hover:not(:disabled){background:#427e70;border-color:#d3ffdb}
#game-menu #panel h3{font:19px Pixelify,monospace;letter-spacing:0;margin:0 0 4px;color:#f4edda}#game-menu #panel small{font:13px/1.35 Pixelify,monospace;color:#b8c9e1}
#game-menu .menu-sections{display:flex;gap:6px;margin:0 0 14px}#game-menu #panel .menu-sections button{flex:1;min-width:0;background:#23304a;border-color:#546a91;color:#baceee;padding:8px 4px;font-size:16px;box-shadow:0 3px #091326}#game-menu #panel .menu-sections button[aria-pressed=true]{background:#594877;color:#fff0be;border-color:#c0a3e4}
.shop-tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap;background:#0c1628;padding:8px;margin-bottom:10px;border:1px solid #3a506e}.shop-tools>span{font:13px Pixelify;color:#aebcce;margin-right:3px}#game-menu #panel .shop-tools button{min-height:36px;background:#2b3853;border-color:#53678d;padding:6px 10px;font-size:14px}#game-menu #panel .shop-tools button[aria-pressed=true]{color:#201a21;background:#f2c779;border-color:#ffebae}
.available-filter{display:flex;align-items:center;gap:5px;margin-left:auto;min-height:36px;font:13px Pixelify;color:#bcd1dd}.available-filter input{accent-color:#8de1bf;width:18px;height:18px}
.compact-shop{display:grid;gap:7px}.buy-row,.loot-row{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:12px;background:#253551;border:2px solid #455a7b;box-shadow:0 3px #0a1426;padding:10px;margin:0 0 8px}.buy-row:nth-child(even),.loot-row:nth-child(even){background:#22324d}.upgrade-art,.loot-art{display:flex;align-items:center;justify-content:center;width:58px;height:60px;background:#132138;border:2px solid #617498;box-shadow:inset 3px 3px #0b1527}.upgrade-art .item-icon,.loot-art .loot-icon{width:40px;height:40px;image-rendering:pixelated;filter:drop-shadow(2px 3px #07101d)}
.loot-icon{width:24px;height:24px;flex-shrink:0;vertical-align:middle;image-rendering:pixelated}.buy-copy,.loot-copy{min-width:0}.buy-copy small,.loot-copy small{display:block}.level-chip{display:inline-block;font:12px Pixelify;color:#f7d187;padding:2px 5px;background:#142039;margin-bottom:3px}.buy-copy .level-chip{float:left;margin-right:7px}.mini-milestone{clear:both;display:flex;gap:6px;align-items:center;margin-top:7px}.mini-milestone progress{height:5px;width:65px;flex-shrink:0}.mini-milestone span{font:11px Pixelify;color:#95aeca}
#game-menu #panel .buy-action{width:108px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:#347361;border-color:#a4e6be;min-height:60px}.buy-action b{font:17px Pixelify;color:#ecffe8}.buy-action span{font:14px Pixelify;white-space:nowrap}.buy-action:disabled b{color:#a3b3c8}
#game-menu .locked-row{border-style:dashed;background:#19253c}.locked-row .upgrade-art{border-color:#42516c}.locked-row h3{color:#acbbd0!important}.item-details{margin:14px 0;color:#bdcce2;border-top:1px solid #3a4d6e;font:14px/1.6 Pixelify}.item-details summary,.menu-settings>summary{cursor:pointer;padding:12px 4px;min-height:44px;color:#a8bddc}.item-details p{margin:0 8px 12px;max-width:58ch;font:14px/1.6 Pixelify}
.section-caption{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:20px 0 10px}.section-caption span{font:12px Pixelify;color:#a5bbd8}.section-caption:first-of-type{margin-top:8px}.loot-action{max-width:170px}.loot-action button{width:100%}.inline-reward{display:block;font:12px Pixelify;color:#e9c79b;margin-top:5px}.equipped-row{border-color:#8bd9b9}
.quest-tile{background:#243552;border:2px solid #576e97;box-shadow:0 4px #0b1427;padding:14px;margin-bottom:12px}.quest-top{display:flex;align-items:center;gap:10px;margin-bottom:14px}.quest-top>.loot-icon{width:30px;height:30px}.quest-top h3{flex:1}.quest-top button{font-size:13px!important;padding:6px!important;min-height:38px!important;border-color:#687fa6!important;background:#344567!important;white-space:nowrap}.objective{display:grid;grid-template-columns:1fr auto;gap:6px;margin:10px 0;font:14px Pixelify;color:#c2d1e4}.objective b{color:#ffda8f;font-size:13px;font-weight:normal}.objective progress{grid-column:1/-1;width:100%;height:8px;border:0;background:#0c1628}progress::-webkit-progress-bar{background:#0c1628}progress::-webkit-progress-value{background:#8bd2b8}.quest-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:16px}.reward-chips{display:flex;gap:5px;flex-wrap:wrap}.reward-chip{display:flex;gap:4px;align-items:center;font:15px Pixelify;padding:4px;background:#121e32;color:#f5d18b}.reward-chip .loot-icon{width:20px;height:20px}.unlock-next{display:flex;align-items:center;gap:8px;border-top:1px solid #536486;margin-top:13px;padding-top:12px;font:14px Pixelify;color:#aec7e1}.unlock-next b{color:#a8efd0}.reroll-row{display:flex;justify-content:flex-end;margin:-7px 0 14px}#game-menu #panel .reroll-row button{font-size:12px;min-height:32px;padding:4px 10px}
.material-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.material-grid article{padding:16px 8px;text-align:center;background:#253650;border:2px solid #516582}.material-grid .loot-icon{display:block;margin:auto auto 10px;width:40px;height:40px}.material-grid b{font:24px Pixelify;color:#f5d087}.material-grid h3{font-size:15px!important;margin-top:7px!important}.material-grid small{font-size:11px!important}.skill-branch h4{font:14px Pixelify;color:#adbbe1;padding:8px 0;border-bottom:1px solid #4e6082}.reset-hero{padding:22px;background:#2b3155;border:2px solid #a396c9;text-align:center}.reset-hero>.loot-icon{width:55px;height:55px;display:block;margin:0 auto 16px}.reset-hero h3{font-size:28px!important;margin:10px 0 22px!important}.reset-hero>button{width:100%;margin:15px 0}.reset-facts{display:grid;gap:8px;font:13px/1.5 Pixelify;text-align:left;color:#bcd2da}.reset-facts span:first-child{color:#efb5b0}
.world-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:14px}.world-tile{border:2px solid #657393;background:#23334e}.world-thumb{height:140px;image-rendering:pixelated;background-image:none;background-size:200% 300%;background-position:0 0;border-bottom:2px solid #111b2d}.world-tile[data-world="1"] .world-thumb{background-position:100% 0}.world-tile[data-world="2"] .world-thumb{background-position:0 50%}.world-tile[data-world="3"] .world-thumb{background-position:100% 50%}.world-tile[data-world="4"] .world-thumb{background-position:0 100%}.world-tile[data-world="5"] .world-thumb{background-position:100% 100%}.world-info{padding:12px}.world-info small{font-size:11px!important;color:#ebd494!important}.world-info h3{margin-top:7px!important}.world-info p{font:13px Pixelify;color:#a6bcd7}.world-info button{width:100%;margin-top:5px}.world-tile.locked-row .world-thumb{filter:saturate(.45) brightness(.65)}
.character-select{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.character-tile{padding:12px;background:#263650;border:2px solid #627497;text-align:center}.character-tile canvas{display:block;image-rendering:pixelated;margin:auto;max-width:100%;background:linear-gradient(#15233a,#35466d)}.character-tile h3{margin-top:12px!important}.character-tile button{width:100%;margin-top:12px}.mini-collection{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.mini-collection figure{margin:0;background:#28364f;border:2px solid #5a6685;padding:8px}.mini-collection canvas{width:100%;height:auto;image-rendering:pixelated}.mini-collection figcaption{font:12px Pixelify;text-align:center;margin-top:6px}
.guide-entry{background:#243450;border:2px solid #526787;margin:9px 0;padding:8px}.guide-entry>summary{display:flex;align-items:center;gap:12px;cursor:pointer;min-height:56px}.guide-entry summary>span:nth-child(2){flex:1}.guide-entry b{font:17px Pixelify;display:block}.guide-entry p{font:14px/1.6 Pixelify;padding:0 8px}.monster-mini{width:50px;height:55px;flex-shrink:0;background:none 0 0/600% 100%;image-rendering:pixelated}.monster-1{background-position:20% 0}.monster-2{background-position:40% 0}.monster-3{background-position:60% 0}.monster-4{background-position:80% 0}.monster-5{background-position:100% 0}.menu-settings{margin-top:18px;border-top:1px solid #4b5a76;font:14px Pixelify}.menu-settings footer{padding:10px 0;border:0}.menu-settings footer>span{display:none}.menu-settings footer>div{display:flex;flex-wrap:wrap;gap:8px}.menu-settings footer button{min-height:44px;padding:8px}#save-status{width:100%;font-size:12px}
@media(max-width:600px){#game-menu{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border-width:0}#game-menu .menu-top{padding:8px 12px;min-height:60px}#game-menu .menu-top h2{font-size:20px}#game-menu .menu-wallet{padding:8px 12px;gap:20px;font-size:15px}#game-menu .menu-wallet small{display:none}#game-menu .menu-body{padding:0 9px 12px}#game-menu .tabs button{font-size:14px;min-height:61px}#game-menu .tabs .pixel-icon{width:22px;height:22px}#game-menu .menu-sections{gap:5px;margin-bottom:12px}#game-menu #panel .menu-sections button{font-size:14px}.buy-row,.loot-row{grid-template-columns:44px minmax(0,1fr) auto;gap:8px;padding:8px}.upgrade-art,.loot-art{width:44px;height:52px}.upgrade-art .item-icon,.loot-art .loot-icon{width:32px;height:32px}#game-menu #panel h3{font-size:17px}#game-menu #panel .buy-action{width:86px;padding:6px;min-height:58px}.buy-action b{font-size:15px}.buy-action span{font-size:13px}.mini-milestone{gap:5px}.mini-milestone progress{width:35px}.mini-milestone span{font-size:10px}#game-menu #panel small{font-size:12px}.shop-tools{gap:5px;padding:7px}#game-menu #panel .shop-tools button{padding:6px 9px}.available-filter{margin-left:0;font-size:12px}.loot-action{max-width:106px}#game-menu #panel .loot-action button{font-size:13px;padding:7px}.quest-tile{padding:11px}.quest-top{gap:7px}.quest-top h3{font-size:17px!important}.quest-top>.loot-icon{width:23px;height:23px}.quest-top button{font-size:12px!important}.world-thumb{height:100px}.world-info{padding:9px}.world-info button{font-size:13px!important;padding:8px 4px!important}.world-grid{gap:8px}.world-info h3{font-size:17px!important}.mini-collection{grid-template-columns:repeat(3,1fr)}.material-grid{gap:6px}.material-grid article{padding:12px 4px}.objective{font-size:13px}.objective b{font-size:12px}}
@media(prefers-reduced-motion:no-preference){#game-menu #panel button:not(:disabled):active{transform:translate(2px,2px);box-shadow:none}}


@media(min-width:760px){.character-select{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* arcade-ui.css */
/* One pixel palette, one playfield. Controls live inside the arcade. */
.arcade{height:auto!important;min-height:0!important}.screen{flex:1}.screen canvas#gallery{position:absolute;inset:0;width:100%;height:100%}.screen .arcade-controls #pitch{padding:3px;background:#283e5b;border:2px solid #8da1ba;box-shadow:3px 3px #0a1426;color:#fff1d5}.screen .arcade-controls #dash small{white-space:normal}
body,button,input,summary{font-family:Pixelify,monospace}button{border-radius:0!important}.shell{max-width:1440px;padding:0 18px}header{height:56px}.brand{font:20px Pixelify;letter-spacing:1px}.brand small{font-family:Pixelify}.header-label,.dashboard-top,.news{display:none}.header-actions button{font:12px Pixelify;min-height:36px}.play-layout{display:block;margin:10px 0 0}.arcade{border:3px solid #566482}.stage-bar{font:12px Pixelify;background:#17243a;border-color:#566482;height:32px}.screen{height:min(74dvh,760px);min-height:410px;aspect-ratio:auto}.screen .pixel-icon{width:32px;height:32px;flex-shrink:0}.screen .resources{position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:2;gap:16px;pointer-events:none;white-space:nowrap;text-shadow:2px 2px #101523}.screen .resource{border:0;min-width:0;padding:0;gap:6px}.screen .resource strong{font:25px Pixelify;margin:0}.screen .resource div>span,.screen .resource .symbol,.screen .resource small{display:none}.screen .resource #income{display:block;font:15px Pixelify;color:#ffdf94;text-align:center}.screen .resource:nth-child(2){color:#d6b2fa}.screen .resource:nth-child(3){display:none}.screen .resource #rep-bonus{display:none}
.screen .game-dock{position:absolute;z-index:4;right:14px;bottom:14px;display:flex;padding:0;margin:0;border:0;background:none;gap:8px;box-shadow:none}.screen .game-dock button{display:none;min-height:60px;width:58px;padding:3px;background:#21334b;border:2px solid #8da1ba;box-shadow:3px 3px #0a1426;font:12px Pixelify;flex-direction:column;gap:1px;align-items:center;justify-content:center}.screen .game-dock button[data-menu=gallery],.screen .game-dock button[data-menu=missions],.screen .game-dock button[data-menu=inventory]{display:flex}.screen .game-dock b{height:32px}.screen .game-dock svg{width:30px;height:30px}.screen .game-dock button[data-menu=inventory]{background:#665237;border-color:#e5c586}
.screen .arcade-controls{position:absolute;z-index:4;left:14px;bottom:14px;gap:8px;padding:0;background:none;border:0;box-shadow:none;align-items:flex-end}.screen .arcade-controls .game-control{border-radius:0;width:52px;height:60px;border:2px solid #8da1ba;background:#253d5c;color:#f8ecd0;box-shadow:3px 3px #0a1426;overflow:hidden}.screen .arcade-controls .game-control::before{display:none}.screen .arcade-controls .game-control>span{font:11px Pixelify;letter-spacing:0;margin:0}.screen .arcade-controls #dash{order:-1;width:68px;height:68px;background:#225b70;border:2px solid #7ed9df}.screen .arcade-controls #dash small{display:block;font:9px Pixelify;line-height:10px;max-height:20px;text-align:center}.screen .arcade-controls #dash-bar{display:block;position:absolute;left:0;bottom:0;height:3px;background:#b3f7df}.screen .arcade-controls #jump{display:none}.screen .arcade-controls #pitch{width:44px;height:48px}.screen .arcade-controls #pitch svg{width:25px;height:25px}.screen .arcade-controls .game-control:disabled{opacity:.68}.screen .arcade-controls .game-control:active:not(:disabled){transform:translateY(2px);box-shadow:1px 1px #0a1426}
.screen .quest-tracker{top:85px;bottom:auto;left:12px;max-width:280px;min-height:38px;padding:5px 7px;font:13px Pixelify;background:#15233bdd;border:2px solid #6b83a0;box-shadow:2px 2px #0c1322}.screen .quest-tracker b{font:13px Pixelify;max-width:210px}.screen .quest-tracker small{font:11px Pixelify}.screen .quest-tracker svg{width:25px;height:25px}.screen .tap-hint{bottom:92px;left:14px;font:11px Pixelify}.screen .progress-hud{position:absolute;right:12px;top:86px;display:flex;flex-direction:column;max-width:210px;background:none;border:0;padding:0;z-index:3;gap:5px}.screen .progress-hud button{font:11px Pixelify;padding:5px 7px;min-height:30px;background:#192b41e8;border:1px solid #7e91ad;text-align:left}.income-goal,#prestige-shortcut{position:absolute;z-index:3;top:12px;display:flex;align-items:center;gap:5px;text-align:left;min-height:46px;padding:4px 6px;background:#15243bdd;border:2px solid #75829c;color:#ffdfa0;font:13px Pixelify;box-shadow:2px 2px #0a1223}.income-goal{left:12px}.income-goal small,#prestige-shortcut small{display:block;font:10px Pixelify;color:#c2d1e8}.income-goal b{display:block}.income-goal.ready{border-color:#b6e4b8;background:#245345}#prestige-shortcut{right:12px}.start-overlay{z-index:5}.start-overlay h2{font-family:Pixelify}.start-overlay p,.start-overlay small,.start-overlay button{font-family:Pixelify}.start-overlay .primary{font-size:18px}
.screen #village-navigation{position:absolute;bottom:14px;left:14px;right:14px;z-index:4;display:grid;grid-template-columns:56px 56px 1fr auto;gap:8px;background:none;border:0;padding:0;pointer-events:none}.screen #village-navigation button{pointer-events:auto;background:#1c304ae8;border:2px solid #a0afc4;box-shadow:3px 3px #0a1223;font:14px Pixelify;min-height:48px}.screen #village-left{grid-column:1;grid-row:1}.screen #village-right{grid-column:2;grid-row:1}.screen #village-interact{grid-column:3;grid-row:1}.screen #village-navigation #village-exit{grid-column:4;grid-row:1;border:2px solid #a0afc4;padding:5px 10px;font-size:12px}.screen #village-navigation[hidden]{display:none}.in-village .screen .game-dock,.in-village .screen .arcade-controls,.in-village .screen .progress-hud,.in-village #income-goal,.in-village #prestige-shortcut{display:none!important}
#village-dialogue{position:absolute;z-index:6;left:50%;bottom:82px;transform:translateX(-50%);width:min(530px,calc(100% - 24px));max-height:calc(100% - 150px);overflow-y:auto;padding:14px;background:#18263ef5;border:3px solid #a9b8c9;box-shadow:5px 5px #081221;color:#e8eced;font:15px Pixelify}#village-dialogue[hidden],#auction-controls[hidden]{display:none}.talk-close{float:right;font-size:24px;background:#744457;border:2px solid #dba6ac;min-width:36px;min-height:36px}.talk-heading{display:flex;align-items:center;gap:12px;padding-right:34px}.npc-portrait{width:48px;height:60px;image-rendering:pixelated;border:2px solid #cab886}.talk-heading h3{margin:3px 0;font-size:21px;color:#ffdc91}.talk-heading small{font-size:9px;color:#adc4d8}#village-dialogue h4{margin:10px 0 3px;font-size:19px;color:#abd8e2}#village-dialogue p{margin:5px 0 10px;line-height:1.35}#village-dialogue small{display:block}#village-dialogue button:not(.talk-close){background:#34465e;border:2px solid #94a7bb;padding:7px 10px;min-height:40px;margin-top:8px}.talk-objective progress{display:block;width:100%;height:9px;accent-color:#91d0af;margin:6px 0}.talk-links{display:flex;gap:5px;flex-wrap:wrap}.talk-links button{font-size:12px;flex:1}
.in-auction .screen #village-navigation,.in-auction .screen .resources{display:none!important}#auction-controls{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);width:min(480px,calc(100% - 24px));z-index:5;background:#20253bf2;border:3px solid #d1ad70;box-shadow:4px 4px #0c1223;padding:10px;text-align:center;font:14px Pixelify}#auction-controls p{margin:0 0 8px}#auction-controls button{min-height:44px;background:#674654;border:2px solid #e3bb7c;padding:6px 10px;font:15px Pixelify}#auction-spin{display:inline-flex;align-items:center;gap:8px}#auction-controls details{font-size:11px;margin-top:8px;color:#d2c6d2}#auction-controls details[open]{max-height:95px;overflow:auto}#auction-controls summary{cursor:pointer}.in-club #income-goal,.in-club #prestige-shortcut,.in-club .screen .resources,.in-club .screen .progress-hud{display:none!important}
#game-menu .loot-icon,#game-menu .pixel-icon{image-rendering:pixelated}#game-menu .menu-sections button{font-size:14px}#dialog{background:#17263b;border:3px solid #94a8c4;color:#e9e9e5;font-family:Pixelify}#dialog button{background:#344c66;border:2px solid #98aec2;color:#ffe0a5;font-family:Pixelify}#dialog h2{color:#ffde96}#game-menu .monster-mini{background-size:600% 300%}#game-menu .monster-0,#game-menu .monster-3{background-position:0 0}#game-menu .monster-1,#game-menu .monster-4{background-position:0 50%}#game-menu .monster-2,#game-menu .monster-5{background-position:0 100%}
@media(max-width:600px){.shell{padding:0}header{height:44px;padding:0 8px}.brand{font-size:15px;gap:7px}.brand-mark{width:24px;height:27px;font-size:15px}.brand-mark span{font-size:13px}.brand small{font-size:8px;letter-spacing:2px}.header-actions{gap:4px}.header-actions button{font-size:10px;min-height:30px;padding:4px 6px}.play-layout{margin:0}.arcade{border:0}.stage-bar{height:26px;padding:0 8px;font-size:10px}.screen{height:calc(100dvh - 70px);min-height:480px}.screen .resources{top:12px;gap:7px}.screen .resource strong{font-size:20px}.screen .resource:nth-child(2){display:none}.screen .resource #income{font-size:13px}.income-goal,#prestige-shortcut{top:9px;min-height:42px;padding:3px;font-size:10px}.income-goal{left:7px}.income-goal .pixel-icon{width:22px;height:22px}.income-goal small{font-size:8px}#prestige-shortcut{right:7px}#prestige-shortcut .pixel-icon{width:22px;height:22px}#prestige-shortcut small{font-size:9px}.screen .quest-tracker{top:66px;left:7px;max-width:calc(100% - 115px);padding:4px}.screen .quest-tracker b{font-size:11px;max-width:170px}.screen .quest-tracker small{font-size:10px}.screen .quest-tracker .pixel-icon{display:none}.screen .progress-hud{right:7px;top:66px;max-width:97px}.screen .progress-hud button{font-size:10px;padding:4px;max-height:70px;overflow:auto}.screen .game-dock{right:8px;bottom:12px;gap:5px}.screen .game-dock button{width:48px;min-height:54px;font-size:11px}.screen .arcade-controls{left:8px;bottom:12px;gap:6px}.screen .arcade-controls #dash{width:62px;height:66px}.screen .arcade-controls #pitch{width:42px;height:46px}.screen #village-navigation{left:8px;right:8px;grid-template-columns:45px 45px 1fr;gap:5px;bottom:12px}.screen #village-navigation #village-exit{position:absolute;right:0;bottom:59px;min-height:30px;font-size:11px;background:#203047ed}.screen #village-interact{font-size:11px;padding:5px}.screen #village-navigation button{min-height:48px}.talk-heading h3{font-size:18px}#village-dialogue{bottom:126px;font-size:14px;max-height:calc(100% - 210px);padding:10px}.screen .tap-hint{font-size:10px}.screen .resource #money{max-width:100px;overflow:hidden}#game-menu .menu-sections{gap:3px}#game-menu .menu-sections button{font-size:12px;padding:8px 4px}}
@media(max-height:500px) and (orientation:landscape){header{display:none}.shell{padding:0}.play-layout{margin:0}.stage-bar{height:25px}.screen{height:calc(100dvh - 25px);min-height:0}.screen .quest-tracker{top:64px}.screen .progress-hud{top:64px}.screen .resources{top:8px}.screen .arcade-controls #dash{width:58px;height:58px}.screen .game-dock button{min-height:48px;width:48px}#village-dialogue{bottom:70px;max-height:calc(100% - 100px)}#auction-controls{width:360px;padding:5px}#auction-controls details{margin-top:3px}}

#auction-balance{display:block;color:#ffdf98;margin:4px 0 8px;font-size:12px}.loot-action [data-track]{margin-top:5px;font-size:11px}
.in-club .screen{height:calc(100dvh - 234px);min-height:320px}.rhythm-pads button{font-family:Pixelify!important}.rhythm-help,.rhythm-options button{font-family:Pixelify}.in-club #rhythm-controls{height:158px;box-sizing:border-box}.rhythm-pads button{height:56px}
@media(max-height:500px) and (orientation:landscape){.in-club .screen{height:calc(100dvh - 143px);min-height:220px}.in-club #rhythm-controls{height:116px;padding:4px 12px}.rhythm-help{margin-bottom:3px;font-size:11px}.rhythm-pads button{height:35px}.rhythm-options{margin-top:4px}.rhythm-options button{min-height:30px;padding:4px 8px}}

.header-actions #open-leaderboard{display:flex;align-items:center;gap:4px}.header-actions #open-leaderboard svg{width:18px;height:18px;filter:none}
.menu-wallet>span{display:flex;align-items:center;gap:5px}.menu-wallet .pixel-icon{width:19px;height:19px;filter:none}
.start-overlay{pointer-events:none}.start-overlay button{pointer-events:auto}

/* Contemporary collection: original works in the arcade's pixel frames. */
.collection-heading{display:flex;justify-content:space-between;gap:12px;padding:12px 0;color:var(--gold)}
.collection-next{display:flex;gap:14px;border:2px solid var(--gold);background:#171b28;padding:12px;margin-bottom:14px}.collection-next canvas{width:112px;height:128px;flex-shrink:0;align-self:center}.collection-next h3{margin:5px 0;font-size:17px;line-height:1.2}.collection-next p{margin:5px 0;font-size:13px}.collection-next small{display:block}.collection-next button{margin-top:8px}.collection-series{display:flex;gap:6px;overflow-x:auto;padding-bottom:12px}.collection-series button{flex:0 0 125px;white-space:normal;font-size:12px;display:grid;justify-items:center;gap:4px}.collection-series [aria-pressed=true]{border-color:var(--gold);background:#59412c}.collection-series svg{width:24px;height:24px}.masterpiece-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.masterpiece-card{position:relative;min-width:0;padding:8px;display:flex;flex-direction:column;align-items:stretch;gap:5px;text-align:left;background:#191b2b}.masterpiece-card canvas{width:100%;height:auto;image-rendering:pixelated}.masterpiece-card b{font-size:13px;line-height:1.25;overflow-wrap:anywhere}.masterpiece-card small{font-size:11px;color:#cabfae}.masterpiece-card .art-state{font-size:10px;color:#edca83;display:flex;align-items:center;gap:4px}.art-state svg{width:12px;height:12px}.masterpiece-card.owned{border-color:#8dd4bb}.art-credit{display:block;color:#b9b0a4;font-size:11px}#art-detail{display:block;width:min(100%,320px);height:auto;margin:auto;image-rendering:pixelated}@media(max-width:600px){.masterpiece-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-next{gap:10px;padding:8px}.collection-next canvas{width:88px;height:auto}.collection-next h3{font-size:15px}}

#panel .collection-series{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));overflow:visible}#panel .collection-series button{min-width:0;background:#27384d;border-color:#697b90;padding:7px 4px}#panel .collection-series [aria-pressed=true]{background:#604630;border-color:#f2cb81}.masterpiece-card b{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.collection-next>div{min-width:0}.collection-next h3{overflow-wrap:anywhere}#panel .masterpiece-grid{margin-top:10px}@media(max-width:600px){#panel .collection-series{grid-template-columns:repeat(3,minmax(0,1fr))}#panel .collection-series button{font-size:11px}}

/* refinement.css */
/* v24: visible currency names, grounded village, shared arcade cabinet palette. */
:root{--cabinet:#13243a;--paper:#f2dfb0;--brass:#cea165;--steel:#71889f}
.screen .resources{top:8px;left:10px;right:10px;transform:none;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:4px;padding:6px 10px;width:auto;z-index:6;background:#102033ee;border:2px solid var(--steel);box-shadow:0 3px #091321;pointer-events:auto;cursor:pointer;white-space:normal;min-height:61px;text-shadow:1px 2px #070e1c}
.screen .resource{display:flex!important;align-items:center;justify-content:center;gap:7px;padding:0;border:0}.screen .resource .symbol{display:block;width:30px;height:30px;background:none}.screen .resource .symbol svg{width:30px;height:30px}.screen .resource div>span{display:block;font:10px Pixelify;letter-spacing:.5px;color:#e0cfac}.screen .resource strong{font:21px Pixelify;line-height:22px;color:#fff0c8}.screen .resource:nth-child(2) strong{color:#d9b5f1}.screen .resource:nth-child(3) strong{color:#97dfd8}.screen .resource #income{font:11px Pixelify;text-align:left;color:#a9dac2;white-space:nowrap}.screen .resource #rep-bonus,.screen .resource small:not(#income){display:none}
.income-goal,#prestige-shortcut{top:88px;min-height:40px;font-size:12px;z-index:6}.income-goal .pixel-icon,#prestige-shortcut .pixel-icon{width:26px;height:26px}.screen .quest-tracker{top:140px;z-index:4}.screen .progress-hud{top:140px}.screen .tap-hint{bottom:94px;left:14px}.screen .start-overlay{padding-top:140px;padding-bottom:90px}.start-overlay h2{font-size:clamp(28px,4vw,50px)}.start-overlay p{font-size:15px}
.menu-wallet>span{display:grid;grid-template-columns:23px auto;grid-template-rows:12px 20px;column-gap:5px;align-items:center}.menu-wallet>span .pixel-icon{grid-row:1/3}.menu-wallet>span small{display:block;font:10px Pixelify;color:#c5c7c9}.menu-wallet>span b{font-size:16px}.menu-wallet>small{font:11px Pixelify}.tabs{background:#14243b}.tabs button[aria-selected=true]{background:#38516c;border-bottom-color:#e2bb73}.menu-sections button{background:#20364b}.menu-sections button[aria-pressed=true]{background:#5b4267;color:#fff0c8;border-color:#c2a1c7}.buy-row,.loot-row,.quest-tile{background:#1c3048;border:2px solid #5c758d;box-shadow:inset 0 2px #81909d22,0 3px #0b1525}.buy-action:not(:disabled),.loot-action button:not(:disabled){background:#336258;border-color:#9fceb2;box-shadow:inset 0 2px #b1dec033,2px 2px #0b1726}.upgrade-art,.loot-art{background:#0c1c30;border:2px solid #9a825f;box-shadow:inset 0 0 0 2px #203249}.upgrade-art .item-icon,.upgrade-art .pixel-icon,.loot-art .pixel-icon{width:44px;height:44px}.next-upgrade{border-color:#d5b16c}.technique-preview{display:grid;grid-template-columns:60px 1fr;align-items:center;gap:5px 10px;background:#112138;padding:12px;border:2px solid #ba945f;margin:10px 0}.technique-preview .pixel-icon{width:56px;height:56px;grid-row:1/3}.technique-preview span{font-size:13px;color:#bbd8d5}.ledger-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ledger-grid article{padding:12px;background:#192f46;border:2px solid #60788d}.ledger-grid .pixel-icon{float:left;width:36px;height:36px;margin-right:10px}.ledger-grid h3{font-size:17px;color:#f0cf91}.ledger-grid p{font-size:14px;line-height:1.4}.ledger-grid article:last-child{grid-column:1/-1}.npc-portrait{width:64px;height:76px;background:#16283c}
.in-village .screen .resources{grid-template-columns:1.5fr 1fr 1fr}.in-village .screen .resource:nth-child(2),.in-village .screen .resource:nth-child(3){display:flex!important}.in-village .screen .quest-tracker,.in-village .screen .tap-hint{display:none!important}.screen #village-navigation{grid-template-columns:54px 54px 1fr auto}.screen #village-navigation #village-interact{font-size:13px}.in-auction .screen .resources,.in-club .screen .resources{display:none!important}
@media(max-width:600px){.screen .resources{left:6px;right:6px;padding:5px 4px;gap:2px;min-height:62px}.screen .resource{gap:3px}.screen .resource div>span{font-size:8px;letter-spacing:0}.screen .resource strong{font-size:17px}.screen .resource .symbol,.screen .resource .symbol svg{width:23px;height:26px}.screen .resource #income{font-size:9px}.income-goal,#prestige-shortcut{top:85px;min-height:36px;font-size:10px;padding:3px 5px}.income-goal{left:7px;max-width:57%}#prestige-shortcut{right:7px}.income-goal small,#prestige-shortcut small{font-size:9px}.income-goal .pixel-icon,#prestige-shortcut .pixel-icon{width:23px;height:23px}.screen .quest-tracker{top:131px;left:7px;max-width:calc(100% - 14px);min-height:37px}.screen .quest-tracker b{font-size:12px}.screen .quest-tracker small{font-size:10px}.screen .progress-hud{top:180px;right:7px;max-width:220px}.screen .start-overlay{padding-top:190px;padding-bottom:110px}.start-overlay h2{font-size:30px}.start-overlay p{font-size:13px}.menu-wallet{gap:10px;padding:7px 10px}.menu-wallet>small{display:none}.menu-wallet>span small{font-size:9px}.menu-wallet>span b{font-size:14px}.ledger-grid{grid-template-columns:1fr}.ledger-grid article:last-child{grid-column:auto}.screen #village-navigation{left:7px;right:7px;bottom:16px;grid-template-columns:48px 48px 1fr;gap:5px}.screen #village-navigation #village-exit{position:absolute;bottom:60px;right:0;min-height:36px}.screen #village-navigation #village-interact{font-size:11px;padding:4px}.screen #village-navigation button{min-height:50px}#village-dialogue{bottom:133px;max-height:calc(100% - 226px);padding:10px}.talk-heading h3{font-size:19px}.talk-heading small{font-size:8px}.talk-heading{gap:8px}}
@media(max-height:500px) and (min-width:601px){.screen .resources{max-width:480px;left:50%;transform:translateX(-50%);min-height:50px}.income-goal,#prestige-shortcut{top:12px}.screen .quest-tracker,.screen .progress-hud{top:78px}.screen .start-overlay{padding-top:80px}.in-village .screen .resources{max-width:450px}}

#game-menu .menu-wallet>span small{display:block;margin:0;font:9px Pixelify;color:#bbcad8}#game-menu .menu-wallet>span{min-width:70px}#game-menu .menu-wallet{gap:12px}.in-village .screen .resources{cursor:pointer}.ledger-grid p{margin:8px 0 0}#dialog:has(.ledger-grid){width:min(650px,94vw);border:3px solid #a68c62;background:#14243b}#dialog:has(.ledger-grid) h2{color:#e7cc92}
@media(max-width:600px){#game-menu[data-tab=legacy] .menu-sections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}#game-menu .menu-sections button{min-width:0;white-space:normal;overflow-wrap:normal}#game-menu .menu-body{overflow-x:hidden}}

#sync-warning{position:absolute;top:83px;left:8px;right:8px;z-index:12;background:#6c4930;border:2px solid #f2cf94;color:#fff3d1;font:13px Pixelify;padding:12px;min-height:48px}#sync-warning[hidden]{display:none}

/* focus.css */
/* v25: the scene is the screen; secondary management belongs in the menu. */
html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#101522}
body .shell{width:100%;max-width:none;height:100dvh;margin:0;padding:0;display:flex;flex-direction:column}
.shell>header,.dashboard-top,.news{display:none!important}
.shell>main{height:100%;min-height:0;display:flex;flex-direction:column;padding:0;margin:0}
.play-layout{flex:1;min-height:0;width:100%;display:flex;margin:0!important}
.play-layout .arcade{flex:1;min-height:0;width:100%;border:0;box-shadow:none;display:flex;flex-direction:column}
.arcade .stage-bar{height:32px;min-height:32px;padding:0 10px;border-bottom:1px solid #5b718b;font:10px Pixelify;background:#101c2e}
.stage-bar>div{display:flex;align-items:center;gap:4px}.stage-bar #walk-status{display:none}.stage-bar button{width:34px;height:30px;min-height:30px;padding:0;font:17px Pixelify;background:#1c2e45;border:0}
.arcade .screen{height:auto;flex:1;min-height:0;aspect-ratio:auto;overflow:hidden;border:0}
.screen #gallery{display:block;width:100%;height:100%;min-height:0;max-height:none;object-fit:fill;touch-action:manipulation}
.screen .resources{top:5px;left:7px;right:auto;width:354px;min-height:43px;height:43px;padding:3px 7px;gap:6px;border:1px solid #657b92;background:#101b2ddd;box-shadow:0 2px #080f1c;grid-template-columns:1.55fr 1fr 1fr}
.screen .resource{gap:4px;justify-content:flex-start}.screen .resource div>span{font:8px/9px Pixelify;color:#cdd3d4;letter-spacing:0}.screen .resource strong{font:16px/17px Pixelify}.screen .resource .symbol,.screen .resource .symbol svg{width:23px;height:26px}.screen .resource #income{font:9px/10px Pixelify;color:#a8debc;margin:0}
.screen #income-goal,.screen #prestige-shortcut{display:none!important}
.screen #quest-tracker{top:53px;left:7px;right:auto;width:354px;max-width:none;height:28px;min-height:28px;padding:3px 7px;display:flex;align-items:center;gap:6px;border:1px solid #617992;background:#102138d9;box-shadow:none;overflow:hidden}
.screen #quest-tracker .pixel-icon,.screen #quest-tracker svg{width:19px;height:19px;flex:none}.screen #quest-tracker b{font:11px Pixelify;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;text-align:left}.screen #quest-tracker>span{font:10px Pixelify;white-space:nowrap;color:#b0e4c9;display:block}.screen #quest-tracker>i{position:absolute;bottom:0;left:0;height:2px;background:#a1dfc1}
.screen .progress-hud{top:6px;right:8px;left:auto;max-width:180px;gap:4px;display:flex;align-items:flex-end;flex-direction:column;background:none}
.screen .progress-hud #bonus-status{display:flex;align-items:center;gap:4px;padding:3px 5px;min-height:25px;font:10px Pixelify;border:1px solid #697896;background:#13243bd9}.screen #bonus-status[hidden]{display:none!important}.screen #bonus-status .pixel-icon{width:17px;height:17px}
.screen #opening-night{position:fixed;right:12px;bottom:95px;min-height:44px;min-width:44px;padding:4px;background:#46324a;border:2px solid #d2a4cf;display:flex;align-items:center;gap:4px;font:11px Pixelify}.screen #opening-night[hidden]{display:none!important}.screen #opening-night .pixel-icon{width:24px;height:24px}
.screen .tap-hint{bottom:89px;left:12px;font:9px Pixelify;opacity:.8}.screen .scanlines{box-shadow:none;opacity:.4}
.screen .start-overlay{padding:100px 8% 90px;align-items:center}.start-overlay h2{font-size:clamp(30px,4vw,48px)}.start-overlay small{display:none}.screen .start-overlay p:not(.eyebrow){font:13px/1.5 Pixelify}
#quick-tools{position:absolute;right:8px;top:8px;z-index:20;padding:8px;border:2px solid #6f87a1;background:#12243e}#quick-tools[hidden]{display:none}#quick-tools .header-actions{display:flex;gap:5px}#quick-tools button{min-width:44px;min-height:44px;font:11px Pixelify}#quick-tools .pixel-icon{width:21px;height:21px}
#sync-warning{top:84px;font-size:12px}
.screen .game-dock{bottom:max(10px,env(safe-area-inset-bottom));right:10px;gap:5px}.screen .game-dock button{min-width:48px;min-height:56px;padding:5px;font-size:10px}.screen .game-dock .pixel-icon{width:27px;height:27px}
.screen .arcade-controls{bottom:max(10px,env(safe-area-inset-bottom));left:10px;gap:7px}.screen .arcade-controls .game-control{min-width:48px;min-height:58px;padding:5px}.screen .arcade-controls .pixel-icon{width:28px;height:26px}.screen .arcade-controls .game-control>span{font-size:10px}.screen #dash-tip{font-size:9px}
.in-village .screen .resources{width:354px;grid-template-columns:1.55fr 1fr 1fr}.in-village #opening-night,.in-village #quest-tracker,.in-village .progress-hud{display:none!important}
/* Compact menu chrome, illustrated items, short stats, expandable explanations. */
#game-menu{width:min(820px,96vw);max-height:94dvh;border-color:#9aabbb}
#game-menu .menu-top{min-height:45px;padding:5px 12px}.menu-top #menu-title{font-size:19px;letter-spacing:.5px}#game-menu #close-menu{height:36px;min-height:36px;width:38px}
#game-menu .menu-wallet{padding:5px 12px;gap:16px;min-height:35px}#game-menu .menu-wallet>span{grid-template-columns:20px auto;grid-template-rows:10px 16px;gap:0 3px;min-width:58px}#game-menu .menu-wallet>span b{font-size:13px}#game-menu .menu-wallet .pixel-icon{width:20px;height:22px}
#game-menu .tabs{gap:0;display:grid;grid-template-columns:repeat(6,1fr);overflow:visible}#game-menu .tabs button{padding:4px 2px;min-height:51px;font:11px Pixelify}#game-menu .tabs button .pixel-icon{width:25px;height:25px}#game-menu #panel{padding-top:7px}
#game-menu #panel .menu-sections{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin-bottom:8px}#game-menu #panel .menu-sections:has(button:nth-child(3):last-child){grid-template-columns:repeat(3,1fr)}#game-menu #panel .menu-sections:has(button:nth-child(4):last-child){grid-template-columns:repeat(4,1fr)}#game-menu #panel .menu-sections:has(button:nth-child(2):last-child){grid-template-columns:repeat(2,1fr)}
#game-menu #panel .menu-sections button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;min-height:48px;min-width:0;padding:3px;font:11px Pixelify!important;letter-spacing:0;border-width:1px}#game-menu .menu-sections .pixel-icon{width:21px;height:21px}#game-menu .menu-sections button span{overflow:hidden;text-overflow:ellipsis;max-width:100%}
#game-menu .shop-tools{padding:3px 0 8px;gap:4px;flex-wrap:wrap}#game-menu .shop-tools>span{display:none}#game-menu .shop-tools button{min-height:32px;font-size:11px;padding:4px 8px}.available-filter{font-size:10px!important}
#game-menu .compact-shop{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
#game-menu .buy-row{position:relative;display:flex;flex-direction:column;gap:5px;padding:10px 8px 8px;margin:0;text-align:center;min-width:0;background:linear-gradient(#263c53,#17283e);border:2px solid #69819a}
#game-menu .buy-row .upgrade-art{width:62px;height:61px;margin:0;flex:none;background:#102136;display:grid;place-items:center}.buy-row .upgrade-art .pixel-icon,#game-menu .buy-row .upgrade-art .item-icon{width:54px;height:54px}
#game-menu .buy-row .buy-copy{width:100%;min-width:0}#game-menu .buy-row h3{font:15px/1.1 Pixelify;min-height:32px;margin:3px 0 4px;color:#f5dfaf}#game-menu .buy-row .level-chip{position:absolute;top:7px;right:5px;font:9px Pixelify;padding:2px 3px;background:#193147}#game-menu .buy-row .buy-copy>small{font:12px Pixelify;color:#a6e1c7;display:block;margin:2px 0 5px;min-height:14px}#game-menu .mini-milestone{display:flex;gap:4px;align-items:center}#game-menu .mini-milestone progress{flex:1;height:3px}#game-menu .mini-milestone span{font:9px Pixelify;white-space:nowrap}
#game-menu .buy-row .buy-action{width:100%;min-height:37px;margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:4px;padding:5px 7px}#game-menu .buy-action b{font-size:10px}#game-menu .buy-action>span{font-size:13px}
#game-menu .loot-row{grid-template-columns:52px minmax(0,1fr) auto;padding:9px;gap:9px;margin:7px 0}#game-menu .loot-art{width:48px;height:50px}#game-menu .loot-art .pixel-icon{width:40px;height:40px}#game-menu .loot-copy h3{font:16px/1.1 Pixelify;margin:0 0 4px}#game-menu .loot-copy small{font:11px/1.3 Pixelify}.loot-action button{font:12px Pixelify;min-height:38px!important;padding:6px!important}
#game-menu .skill-branch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#game-menu .skill-branch h4{grid-column:1/-1;margin:8px 0 0}#game-menu .skill-branch .loot-row{display:flex;flex-direction:column;text-align:center;align-items:center;margin:0;gap:6px}#game-menu .skill-branch .loot-action{width:100%}#game-menu .skill-branch .loot-action button{width:100%}#game-menu .section-caption{margin:10px 0 6px}#game-menu .section-caption h3{font-size:16px}#game-menu .section-caption>span{font-size:10px}
#game-menu .quest-tile{padding:10px}#game-menu .quest-top h3{font:17px Pixelify}#game-menu .objective{font:12px Pixelify}.quest-top .pixel-icon{width:28px;height:28px}.quest-top button{font-size:10px!important;padding:4px!important;min-height:30px!important}.unlock-next{font-size:11px!important}#game-menu .technique-preview{padding:9px;grid-template-columns:45px 1fr}#game-menu .technique-preview .pixel-icon{width:40px;height:40px}#game-menu .technique-preview span{font-size:11px}
.habitat-guide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.habitat-guide article{background:#1b3048;border:2px solid #64788b;padding:9px;text-align:center}.habitat-guide h3{font:16px Pixelify;color:#eecb8a}.habitat-pair{display:grid;grid-template-columns:1fr 1fr;gap:4px}.habitat-pair figure{margin:5px 0}.species-thumb{display:block;height:80px;background-repeat:no-repeat;background-size:300% 100%;background-position:0 center;image-rendering:pixelated}.habitat-pair figcaption{font:11px Pixelify}.habitat-guide small{font:11px Pixelify;color:#b3c6d3;display:block;margin-top:6px}
@media(max-width:600px){
 .arcade .stage-bar{height:30px;min-height:30px;padding:0 6px}.stage-bar>span{font-size:9px}.stage-bar button{height:28px;min-height:28px;width:32px}
 .screen .resources,.in-village .screen .resources{left:5px;right:5px;top:4px;width:auto;height:41px;min-height:41px;padding:2px 5px;gap:4px}.screen .resource .symbol,.screen .resource .symbol svg{width:20px;height:24px}.screen .resource strong{font-size:15px}.screen .resource div>span{font-size:7px}.screen .resource #income{font-size:9px}
 .screen #quest-tracker{left:5px;right:5px;top:50px;width:auto;height:26px;min-height:26px}.screen #quest-tracker b{font-size:10px}.screen #quest-tracker>span{font-size:10px}
 .screen .progress-hud{top:80px;right:5px;max-width:160px}.screen #opening-night{bottom:89px;right:9px}.screen .start-overlay{padding:90px 8% 90px}.screen .game-dock{right:7px;gap:4px}.screen .arcade-controls{left:7px;gap:5px}.screen .game-dock button{min-width:44px;padding:4px}.screen .arcade-controls .game-control{min-width:46px}
 #game-menu{width:100vw;height:100dvh;max-height:100dvh;margin:0;border-width:0}#game-menu .menu-top{min-height:44px;padding:4px 9px}#game-menu .menu-body{padding:0 9px 10px}#game-menu .tabs button{font-size:10px}#game-menu .compact-shop{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}#game-menu .buy-row{padding:7px 6px 6px}#game-menu .buy-row h3{font-size:14px}#game-menu .loot-row{grid-template-columns:42px minmax(0,1fr) auto;padding:7px;gap:6px}#game-menu .loot-art{width:40px;height:44px}#game-menu .loot-art .pixel-icon{width:34px;height:34px}#game-menu .loot-copy h3{font-size:14px}.loot-action button{max-width:90px;font-size:11px}#game-menu .loot-copy small{font-size:10px}#game-menu .menu-wallet>span small{font-size:8px}
 .habitat-guide{grid-template-columns:1fr}#game-menu .world-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}#game-menu .world-thumb{height:95px}#game-menu .world-info{padding:7px}#game-menu .world-info h3{font-size:16px!important}#game-menu .world-info p{font-size:10px}#game-menu .world-info button{font-size:11px;padding:5px}
}
@media(max-height:500px) and (min-width:601px){.screen .resources{left:6px;right:auto;transform:none;width:330px;min-height:40px;height:40px}.screen #quest-tracker{top:49px;width:330px}.screen .start-overlay{padding-top:70px;padding-bottom:60px}.screen .start-overlay p{display:none}.screen .game-dock button{min-height:46px}.screen #opening-night{bottom:70px}}

.screen .arcade-controls{width:max-content;right:auto;justify-content:flex-start;padding:0;margin:0}
#game-menu .monster-mini{background-image:none;background-size:300% 100%;background-position:0 center}
#game-menu .monster-1{background-image:none}#game-menu .monster-2{background-image:none}#game-menu .monster-3{background-image:none}#game-menu .monster-4{background-image:none}#game-menu .monster-5{background-image:none}

.club-welcome{display:flex;align-items:center;gap:12px;margin:10px 0}.club-welcome h3{font:24px Pixelify;margin:4px 0}.club-welcome small{font:10px Pixelify;color:#dfaebf}.club-welcome .npc-portrait{width:56px;height:64px;border:2px solid #b09372}.night-select{display:grid;grid-template-columns:1fr 1fr;gap:10px}.night-card{border:2px solid #a97e91;background:#281d32;padding-bottom:10px;text-align:center}.night-picture{height:120px;background:url(assets/raspoutine-interior-v17.webp) center/cover;display:grid;place-items:center}.night-picture b{font:26px Pixelify;color:#fff0ce;background:#321329b9;padding:5px 12px}.night-card h3{font:18px Pixelify;margin:9px 4px 5px}.night-card small{font:11px Pixelify}.night-card button{display:block;margin:9px auto 0;background:#813c60;border:2px solid #d89fae;padding:8px;font:13px Pixelify;min-height:42px}.night-reward{font:12px Pixelify;color:#b1dfbd;padding:10px 0}.night-card:nth-child(2) .night-picture{background-position:right center}
@media(min-width:601px){.screen #village-navigation{display:flex;gap:7px;align-items:center}.screen #village-navigation #village-interact{width:auto;min-width:200px;padding:9px 16px;margin-left:10px}.screen #village-navigation #village-exit{margin-left:auto}.screen #village-navigation #village-left,.screen #village-navigation #village-right{width:54px}}

.menu-sections button{position:relative}.menu-sections .has-reward::after{content:"!";position:absolute;right:3px;top:2px;background:#9ee1bc;color:#142c32;padding:0 3px;font:11px Pixelify}

/* Scope collection controls above the shared purchase-button rules. */
#game-menu #panel .collection-heading{flex-direction:row;align-items:center;margin:6px 0;padding:6px 0;gap:8px;font-size:12px}
#game-menu #panel .collection-series button{background:#27384d;border-color:#697b90;padding:7px 4px;font:12px Arial,sans-serif;min-width:0}
#game-menu #panel .collection-series button[aria-pressed=true]{background:#604630;border-color:#f2cb81;color:#fff1ce}
#game-menu #panel .masterpiece-card{background:#161f30;border-color:#52617a;padding:8px;box-shadow:2px 2px #090f20}
#game-menu #panel .masterpiece-card.owned{border-color:#8dd4bb}#game-menu #panel .masterpiece-card:hover{background:#283b51;border-color:#e5bd88}
@media(max-width:600px){#game-menu #panel .collection-series button{font-size:11px}#game-menu #panel .collection-heading{font-size:11px}}

/* readability.css */
/* Small information uses native screen-resolution text; headings retain the arcade face. */
:root{--read-font:Arial,Helvetica,sans-serif}
body,button,input,summary{font-family:var(--read-font)}
.screen .resources,.screen #quest-tracker,.screen .game-dock,.screen .arcade-controls{text-shadow:none}
.screen .resource div>span{font:700 9px/10px var(--read-font);letter-spacing:.3px}
.screen .resource strong{font:700 16px/17px var(--read-font);font-variant-numeric:tabular-nums}
.screen .resource #income{font:700 11px/12px var(--read-font);color:#bbf1d0}
.screen #quest-tracker b{font:700 12px/16px var(--read-font)}
.screen #quest-tracker>span{font:700 12px/16px var(--read-font)}
.arcade .stage-bar,.stage-bar>span{font:700 11px var(--read-font);letter-spacing:.6px}
.screen .game-dock button{font:700 12px var(--read-font)}
.screen .arcade-controls .game-control>span,.screen .arcade-controls .game-control small{font-family:var(--read-font);font-size:11px;letter-spacing:0}
.screen .tap-hint{font:700 10px var(--read-font);text-shadow:none;opacity:1}
.screen #bonus-status,.screen #opening-night,#quick-tools button{font:700 12px var(--read-font)}
.screen .start-overlay p:not(.eyebrow){font:500 15px/1.5 var(--read-font)}
#game-menu :is(p,small,button,summary,label,.objective,.night-reward,.technique-preview span,.habitat-pair figcaption),#dialog :is(p,button,small),#village-dialogue :is(p,button,small){font-family:var(--read-font)!important;text-shadow:none!important;letter-spacing:0}
#game-menu #panel small{font-size:12px;line-height:1.45;color:#d2e0ee}
#game-menu #panel button,#game-menu .tabs button{font-family:var(--read-font)!important;font-weight:700;font-size:13px}
#game-menu #panel .menu-sections button{font:700 12px/1.25 var(--read-font)!important}
#game-menu button :is(b,span){font-family:inherit!important;font-weight:700}
#game-menu .buy-action b{font-size:13px}#game-menu .buy-action span{font-size:16px;font-variant-numeric:tabular-nums}
#game-menu .buy-row .buy-copy>small{font:700 13px/1.4 var(--read-font);color:#b5efd1}
#game-menu .buy-row .level-chip,#game-menu .mini-milestone span{font:700 10px/14px var(--read-font)}
#game-menu .menu-wallet,#game-menu .menu-wallet>span small{font:700 12px/1.3 var(--read-font)}
#game-menu .menu-wallet b{font:700 16px var(--read-font);font-variant-numeric:tabular-nums}
#game-menu .item-details p{font:400 14px/1.6 var(--read-font)}
#game-menu .available-filter,#menu-feedback{font:600 13px/1.4 var(--read-font)}
.screen #chain-hud{position:absolute;z-index:5;left:50%;margin-left:-88px;bottom:94px;width:176px;padding:7px 9px 6px;box-sizing:border-box;border:2px solid #d8b56e;background:#101c30;box-shadow:3px 3px #080f1c;color:#ffe3a8;pointer-events:none;font:700 12px/20px var(--read-font);text-shadow:none;image-rendering:auto}
.screen #chain-hud[hidden]{display:none}.screen #chain-hud>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.screen #chain-count{font:700 18px/20px var(--read-font);font-variant-numeric:tabular-nums;margin-left:3px;color:#fff4d8}
.screen #chain-bonus{font:700 16px/20px var(--read-font);font-variant-numeric:tabular-nums;color:#b6f4da}
.screen #chain-meter{height:4px;background:#31435d;margin-top:4px;overflow:hidden}
.screen #chain-fill{display:block;width:100%;height:100%;background:#a4eccd;transform-origin:left;transition:transform .12s linear}
.screen.has-chain .tap-hint{display:none}.in-village #chain-hud,.in-club #chain-hud,.in-auction #chain-hud{display:none}
.reduced #chain-fill{transition:none}
.screen #encounter-hud{position:absolute;z-index:3;top:88px;left:50%;transform:translateX(-50%);max-width:calc(100% - 24px);width:max-content;padding:5px 10px;border:1px solid #738da4;background:#101c30ed;color:#fff1cf;text-align:center;pointer-events:none;font:700 13px/18px var(--read-font);text-shadow:none}
.screen #encounter-hud[hidden],.screen #encounter-hud [hidden]{display:none}
.screen #encounter-hud strong,.screen #encounter-hud span{display:block;font:inherit}.screen #encounter-wave{color:#c4eadc}
.screen #encounter-hud[data-kind=boss],.screen #encounter-hud[data-kind=warning]{min-width:230px;border-color:#e1ad76;background:#342238f5;font-size:14px}
.screen #boss-progress{display:block;width:100%;height:5px;margin:5px 0 0;accent-color:#a4eccd}
.in-village #encounter-hud,.in-club #encounter-hud,.in-auction #encounter-hud{display:none}
@media(max-width:600px){.screen #chain-hud{left:auto;right:7px;margin-left:0;width:154px}}
@media(max-width:360px){#game-menu .tabs button{font-size:11px}.screen .resource div>span{font-size:8px}.screen #quest-tracker b{font-size:11px}}
@media(max-height:500px) and (min-width:601px){.screen #chain-hud{bottom:70px}}

/* polish.css */
/* Shared arcade cabinet language; small text stays at native screen resolution. */
#game-menu .menu-sections{position:sticky;top:0;z-index:3;background:#111c2e;padding:6px 0;border-bottom:2px solid #5b7188}
#game-menu .menu-sections button{min-height:58px;display:flex;flex-direction:column;gap:3px;align-items:center;justify-content:center;border:2px solid #566b82;background:#26374c;box-shadow:inset 0 2px #7894aa,0 3px #080e1c}
#game-menu .menu-sections button[aria-pressed=true]{background:#664338;border-color:#efc176;box-shadow:inset 0 2px #ffe2a1,0 3px #21131b;color:#fff2cc}
#game-menu .menu-sections .pixel-icon{width:27px;height:27px}
.story-lead{padding:15px;background:#22384b;border:2px solid #c49c68;box-shadow:4px 4px #101522;margin:12px 0 18px}
.story-lead-top{display:flex;align-items:center;gap:12px}.story-lead-top>.pixel-icon{width:50px;height:50px;flex-shrink:0}
.story-lead h3{margin:3px 0;font:23px Pixelify,monospace;color:#ffe0a0}.story-lead p{font:14px/1.5 Arial,sans-serif;color:#eadfc7;margin:12px 0}
.story-lead small{font:12px/1.4 Arial,sans-serif;color:#b9d0dd}.story-lead-top button{margin-left:auto}
.story-lead-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #577181;padding-top:12px;margin-top:12px;font:12px/1.6 Arial,sans-serif}
.story-lead-bottom b{color:#b4e2c4}.story-lead button{min-height:42px;background:#41654f;border:2px solid #a0c99c;padding:7px 12px;color:#fff0d5}
.route-chip{display:flex;align-items:center;gap:7px;font:13px Arial,sans-serif;color:#a9dbe8;margin:10px 0}.route-chip .pixel-icon{width:24px;height:24px}
.chapter-road{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin:16px 0}.chapter-road>span{display:flex;align-items:center;justify-content:center;gap:5px;border:2px solid #3b4c63;background:#152033;opacity:.55;padding:6px 2px}.chapter-road .pixel-icon{width:25px;height:25px}.chapter-road .done{border-color:#87c5a7;opacity:1}.chapter-road .current{border-color:#eabe74;background:#4d382d;opacity:1}.chapter-road b{font:12px Arial,sans-serif}
#game-menu .quest-tile{border:2px solid #58768b;background:#182c3d;box-shadow:3px 3px #101725}.quest-bottom .reward-chip{background:#142335;border:1px solid #60778b;padding:5px}
#game-menu .story-journal article{border-left:3px solid #7ba59c;padding:3px 12px;margin:12px 0;font:13px/1.5 Arial,sans-serif}
#game-menu .story-journal h4{color:#ebc181;margin:4px 0}.monster-role{display:inline-flex;align-items:center;gap:6px;color:#efcb87}
#auction-controls{position:absolute!important;bottom:12px!important;left:50%!important;transform:translateX(-50%);width:min(520px,calc(100% - 20px))!important;max-height:38%!important;overflow:auto;background:#231b2df5!important;border:2px solid #d2a463!important;box-shadow:4px 4px #090d18;padding:12px!important;z-index:22;text-align:center}
#auction-controls p{font:14px/1.4 Arial,sans-serif!important;margin:0 0 6px}#auction-controls small,#auction-controls details{font:12px/1.4 Arial,sans-serif!important}#auction-controls details{text-align:left;border-top:1px solid #785443;margin-top:8px;padding-top:6px}
#auction-controls button{min-height:42px;border:2px solid #be9870;background:#513244;color:#fff1c8;padding:8px 12px;margin:8px 4px 0;font:14px Arial,sans-serif}#auction-controls #auction-spin{background:#805337;border-color:#f4d397}#auction-controls #auction-spin .pixel-icon{width:26px;height:26px;vertical-align:middle;margin-right:6px}
.in-auction .screen .game-dock,.in-auction .screen .arcade-controls,.in-auction .screen #village-navigation,.in-auction .screen #income-goal,.in-auction .screen #prestige-shortcut{display:none!important}
.auction-caption{position:absolute;top:14px;left:50%;transform:translateX(-50%);text-align:center;padding:7px 16px;background:#261827ed;border:2px solid #b79158;color:#ffe0a1;z-index:12;pointer-events:none;font:20px Pixelify,monospace;white-space:nowrap}.auction-caption small{display:block;font:11px Arial,sans-serif;color:#d8c4ac}
@media(max-width:600px){.story-lead{padding:11px}.story-lead h3{font-size:20px}.story-lead-top{gap:7px;flex-wrap:wrap}.story-lead-top>.pixel-icon{width:38px;height:38px}.story-lead-top button{min-height:32px;margin-left:0}.story-lead-bottom{align-items:flex-start}.chapter-road{gap:3px}.chapter-road>span{flex-direction:column}.story-lead p{font-size:13px}#game-menu .menu-sections button{min-width:0;min-height:57px;font-size:12px}.auction-caption{font-size:18px}#auction-controls{padding:10px!important}}
@media(max-height:500px) and (min-width:601px){#auction-controls{left:auto!important;right:10px;width:285px!important;transform:none;max-height:65%!important}.auction-caption{left:22%;font-size:16px}.auction-caption small{display:none}}

.giant-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}.giant-guide article{background:#1a273b;border:2px solid #647589;padding:9px;text-align:center}.giant-guide h4{font:18px Pixelify;margin:7px 0}.giant-guide small{font:12px Arial;line-height:1.4}.giant-thumb{height:105px;background-size:auto 315.08%;background-position:top center;background-repeat:no-repeat;image-rendering:pixelated}@media(max-width:600px){.giant-guide{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:601px){#auction-controls{left:auto!important;right:14px!important;transform:none;width:340px!important;max-height:45%!important}}
@media(max-height:500px) and (min-width:601px){#auction-controls{width:300px!important;max-height:65%!important;padding:9px!important}#auction-controls p{font-size:12px!important}#auction-controls button{font-size:12px;padding:7px 9px}}

/* First-visit registration shares the existing leaderboard identity. */
#leaderboard.board-welcome{max-width:430px}#leaderboard.board-welcome .board-filters,#leaderboard.board-welcome #board-rows,#leaderboard.board-welcome>small{display:none}#board-guest[hidden]{display:none}#leaderboard.board-welcome #board-join{display:block;width:100%;background:#806235;margin:16px 0 10px}#leaderboard.board-welcome #board-guest{width:100%;background:transparent}#leaderboard.board-welcome h2{font-size:26px}#board-status{overflow-wrap:anywhere}

.curation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.curation-grid button{padding:8px;background:#26374e;border:2px solid #6c7991;color:#f4e6ca;min-width:0}.curation-grid button[aria-pressed=true]{border-color:#f1cc77;background:#4b3e59}.curation-grid canvas{width:100%;height:auto;max-height:120px;object-fit:contain;image-rendering:pixelated}.curation-grid b,.curation-grid small{display:block;overflow-wrap:anywhere}.curation-grid b{font-size:13px;margin:5px 0}.curation-grid small{font:12px Arial,sans-serif}

#game-menu #panel .curation-grid button{position:relative;background:#26374e;border-color:#64768c}#game-menu #panel .curation-grid button[aria-pressed=true]{background:#514166;border-color:#f1cc77;box-shadow:inset 0 0 0 1px #f1cc77}#game-menu #panel .curation-grid button[aria-pressed=true]::after{content:"✓";position:absolute;right:5px;top:5px;background:#f1cc77;color:#192435;padding:2px 5px;font:bold 16px Arial}
/* Journey: one playable next step, compact rewards, optional depth. */
.journey-view{--journey-edge:#705867}.journey-next{padding:16px;border:2px solid #bd9256;background:linear-gradient(135deg,#302633,#191b2c);box-shadow:4px 4px 0 #0d101b}.journey-heading{display:flex;gap:12px;align-items:center}.journey-heading h3{font-family:Arial,sans-serif;font-size:21px;line-height:1.2;margin:5px 0;color:#fff0ce}.journey-heading small,.journey-reward-label,.journey-unlocks>small{font:700 10px/1.4 Arial,sans-serif;letter-spacing:1px;color:#e4b875}.journey-heading span:not(.journey-emblem){font:12px Arial,sans-serif;color:#c5bdd0}.journey-emblem{padding:8px;background:#121825;border:2px solid #705867}.journey-emblem svg{width:48px;height:48px}.journey-steps{display:flex;gap:6px;margin:13px 0}.journey-steps>span{display:flex;align-items:center;justify-content:center;gap:6px;flex:1;border:1px solid #63566b;background:#171c2a;padding:4px;opacity:.65}.journey-steps svg{width:26px;height:26px}.journey-steps .current{border-color:#f6c974;opacity:1}.journey-steps .done{border-color:#8de1bf;opacity:1}.journey-steps small{font:700 11px Arial,sans-serif}.journey-tip{display:block;color:#d4cbd7;font:13px/1.45 Arial,sans-serif;margin:9px 0 13px}.journey-go{display:flex;justify-content:center;align-items:center;gap:10px;width:100%;min-height:48px;background:#f6c974!important;color:#20202d!important;border:2px solid #ffe6a7!important;box-shadow:0 4px 0 #855232;font:bold 16px Arial,sans-serif!important}.journey-go:disabled{opacity:.45}.journey-go svg{width:28px;height:28px}.journey-reward-label{margin:17px 0 7px}.journey-prizes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.journey-prize{display:grid;grid-template-columns:28px 1fr;align-items:center;gap:0 5px;padding:7px 5px;background:#101726;border:1px solid #504452;min-width:0}.journey-prize svg{grid-row:span 2;width:28px;height:28px}.journey-prize b{color:#ffdfa1;font:700 15px Arial,sans-serif}.journey-prize small{font:10px/1.4 Arial,sans-serif;color:#d1cbd7}.journey-unlocks{padding:12px;margin:10px 0;background:#222d36;border-left:3px solid #8de1bf}.journey-unlocks>small{display:block;color:#8de1bf}.journey-unlocks>span{display:flex;align-items:center;gap:10px;margin-top:5px;font:14px Arial,sans-serif}.journey-unlocks svg{width:32px;height:32px}.journey-view summary{display:flex;align-items:center;gap:8px;min-height:48px;cursor:pointer;font:700 13px Arial,sans-serif}.journey-view summary::after{content:'+';margin-left:auto;color:#f6c974}.journey-view details[open]>summary::after{content:'−'}.journey-view summary>svg{width:28px;height:28px;flex-shrink:0}.journey-view summary>b{font:11px Arial,sans-serif;color:#8de1bf}.journey-view .item-details{margin-top:8px}.journey-return{display:flex;gap:9px;padding:10px;margin-bottom:10px;background:#243738;border:1px solid #6aa69a;font:12px Arial,sans-serif}.journey-return svg{width:32px;height:32px}.journey-return b,.journey-return small{display:block;margin-top:3px}.journey-return small{color:#a6cfbf}.journey-projects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:10px}.journey-projects article{display:flex;align-items:center;flex-direction:column;text-align:center;background:#171c2a;border:1px solid #63566b;padding:10px 6px;gap:7px}.journey-projects article>svg{width:40px;height:40px}.journey-projects h4{font:700 13px Arial,sans-serif;margin:0}.journey-projects b{font:12px Arial,sans-serif}.journey-projects button{display:flex;align-items:center;justify-content:center;gap:3px;min-height:44px;width:100%;font:12px Arial,sans-serif}.journey-projects button svg{width:22px;height:22px}.journey-requirements{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0;font:12px Arial,sans-serif}.journey-requirements span{display:flex;align-items:center;gap:4px}.journey-requirements svg{width:23px;height:23px}.journey-requirements .over-budget{color:#ff8b8b}.journey-view .curation-grid{margin-bottom:12px}.journey-view .curation-grid button{font-family:Arial,sans-serif}.journey-view .curation-grid button[aria-pressed=true]{outline:3px solid #8de1bf;outline-offset:-3px}.journey-view .objective span{font-family:Arial,sans-serif}.start-overlay #journey-start{display:flex;align-items:center;justify-content:center;gap:7px;margin:10px auto;min-height:44px;padding:8px 12px;font:700 13px Arial,sans-serif;background:#1c2934;color:#f6d49b;border:1px solid #9e7952}.start-overlay #journey-start svg{width:25px;height:25px}@media(max-width:420px){.journey-next{padding:11px}.journey-heading h3{font-size:18px}.journey-emblem svg{width:40px;height:40px}.journey-prize{grid-template-columns:22px 1fr;gap:0 3px}.journey-prize svg{width:22px;height:22px}.journey-prize b{font-size:14px}.journey-prize small{font-size:9px}.journey-projects{grid-template-columns:1fr}.journey-projects article{display:grid;grid-template-columns:40px 1fr 1fr;text-align:left}.journey-projects article>svg{grid-row:span 2}.journey-projects button{grid-column:2/4}.journey-view summary{font-size:12px}.journey-view summary>b{font-size:10px}}
.journey-unlocks p{font:12px/1.45 Arial,sans-serif;color:#c6d8d5;margin:5px 0 0}.start-overlay #journey-start small{display:block;margin:3px 0 0;font:12px Arial,sans-serif;color:#b6d1cf}
/* Shared cabinet language: readable effects, pixel rewards, a single purchase lead. */
#game-menu .visual-menu .loot-row,#game-menu .visual-menu .buy-row,#game-menu .visual-menu .quest-tile,#game-menu .visual-menu .world-tile,#game-menu .visual-menu .character-tile,#game-menu .visual-menu .material-grid article{background:linear-gradient(135deg,#2c2938,#192133);border:1px solid #705867;box-shadow:3px 3px 0 #0c1321}
#game-menu .visual-menu .loot-row,#game-menu .visual-menu .buy-row{padding:12px;gap:12px;margin-bottom:10px}
#game-menu .visual-menu .loot-art,#game-menu .visual-menu .upgrade-art{background:#101827;border:2px solid #705867;box-shadow:inset 2px 2px #080e19}
#game-menu .visual-menu .loot-art svg{width:40px;height:40px}
#game-menu .visual-menu small,#game-menu .visual-menu .objective,#game-menu .visual-menu .item-details p,#game-menu .visual-menu .world-info p,#game-menu .visual-menu .inline-reward{font-family:Arial,sans-serif;line-height:1.4}
#game-menu .visual-menu .item-effect{color:#c9d6dd;font-size:12px;margin:4px 0}
#game-menu .visual-menu .level-chip{color:#f6d58d;background:#101827;font:700 11px Arial,sans-serif;padding:4px 6px}
#game-menu .visual-menu .loot-action button{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px;min-width:92px;font:700 13px Arial,sans-serif}
#game-menu .visual-menu .loot-action button svg{width:24px;height:24px;flex-shrink:0}
#game-menu .visual-menu .price-kind{flex-basis:100%;font:10px Arial,sans-serif;color:inherit;opacity:.85}
#game-menu .visual-menu .reward-chips{gap:6px}
#game-menu .visual-menu .reward-chip{display:grid;grid-template-columns:24px auto;gap:0 5px;align-items:center;min-width:70px;padding:7px;background:#101827;border:1px solid #514451;font:700 14px Arial,sans-serif}
#game-menu .visual-menu .reward-chip svg{grid-row:span 2;width:24px;height:24px}
#game-menu .visual-menu .reward-chip small{font:10px Arial,sans-serif;color:#c9c9d2}
#game-menu .visual-menu .quest-bottom{flex-wrap:wrap}
#game-menu .visual-menu .quest-bottom>button{margin-left:auto}
#game-menu .visual-menu .section-caption{margin:14px 0 9px}
#game-menu .visual-menu .item-details{margin:8px 0;border-top:1px solid #544b60}
#game-menu .visual-menu .item-details summary{font:700 12px Arial,sans-serif;color:#c7c5d1}
#game-menu .visual-menu .loot-copy .item-details summary{padding:6px 0;min-height:30px}
#game-menu .visual-menu .unlock-next{border-color:#536d69;color:#9ed4c0}
#game-menu .visual-menu .world-info>p{font-size:12px;margin:7px 0}
#game-menu .visual-menu .world-info button{display:inline-flex;align-items:center;justify-content:center;gap:4px}
#game-menu .visual-menu .reset-hero{background:linear-gradient(135deg,#302633,#191b2c);border:2px solid #bd9256;padding:18px}
#game-menu .visual-menu .reset-facts{font:12px/1.5 Arial,sans-serif;background:#121a28;padding:10px}
#game-menu .visual-menu .reset-hero p{font:13px Arial,sans-serif}
#game-menu .visual-menu .purchase-next{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center;margin:0 0 14px;padding:12px;background:#293934;border:2px solid #8bbca2;box-shadow:3px 3px #0b1420}
#game-menu .visual-menu .purchase-next>svg{width:40px;height:40px}
#game-menu .visual-menu .purchase-next h3{font-size:19px;margin:3px 0}
#game-menu .visual-menu .purchase-next small{font:700 10px Arial,sans-serif;letter-spacing:1px;color:#ace1c6}
#game-menu .visual-menu .purchase-next p{font:12px/1.4 Arial,sans-serif;margin:4px 0 0;color:#d2dedb}
#game-menu .visual-menu .purchase-next button{font:700 12px Arial,sans-serif;padding:9px;min-width:88px;background:#f6c974;border-color:#ffe4a2;color:#1d2430}
#game-menu .visual-menu article[data-recommended=true]{border:2px solid #e9c273;position:relative}
#game-menu .visual-menu article[data-recommended=true] .upgrade-art,#game-menu .visual-menu article[data-recommended=true] .loot-art{border-color:#e9c273}
#game-menu .visual-menu article[data-recommended=true] .buy-copy h3::after,#game-menu .visual-menu article[data-recommended=true] .loot-copy h3::after{content:'NEXT';font:700 9px Arial,sans-serif;padding:3px 5px;margin-left:7px;background:#e9c273;color:#1d2430;vertical-align:middle}
#game-menu .visual-menu .habitat-guide{display:block}.habitat-card{background:#1b2638;border:1px solid #705867;margin:9px 0;padding:10px}.habitat-card summary{display:flex;align-items:center;gap:10px;cursor:pointer;min-height:44px}.habitat-card summary svg{width:32px;height:32px}.habitat-card summary::after{content:'+';margin-left:auto;color:#f6c974}.habitat-card[open] summary::after{content:'−'}
#game-menu .visual-menu button:focus-visible,#game-menu .visual-menu article:focus-visible{outline:3px solid #fff1bf;outline-offset:3px}
@media(max-width:520px){#game-menu .visual-menu .purchase-next{grid-template-columns:36px minmax(0,1fr);padding:10px}#game-menu .visual-menu .purchase-next>svg{width:34px;height:34px}#game-menu .visual-menu .purchase-next button{grid-column:1/-1;width:100%;min-height:40px}#game-menu .visual-menu .loot-row,#game-menu .visual-menu .buy-row{grid-template-columns:44px minmax(0,1fr) 86px;padding:9px;gap:8px}#game-menu .visual-menu .loot-art,#game-menu .visual-menu .upgrade-art{width:44px;height:48px}#game-menu .visual-menu .loot-art svg{width:34px;height:34px}#game-menu .visual-menu .loot-action{min-width:0}#game-menu .visual-menu .loot-action button{min-width:0;font-size:12px;padding:6px!important}#game-menu .visual-menu .buy-action{width:86px}#game-menu .visual-menu .loot-copy h3,#game-menu .visual-menu .buy-copy h3{font-size:16px}#game-menu .visual-menu .reward-chip{min-width:60px;padding:5px;font-size:13px}#game-menu .visual-menu .loot-copy .reward-chips{margin-top:7px}#game-menu .visual-menu .story-lead-bottom{flex-wrap:wrap;gap:8px}#game-menu .visual-menu .story-lead-top{flex-wrap:wrap}#game-menu .visual-menu .reset-hero{padding:12px}}
#game-menu #panel .visual-menu .purchase-next button{background:#f6c974;border-color:#ffe4a2;color:#1d2430;font:700 12px Arial,sans-serif}#game-menu #panel .visual-menu small{font-family:Arial,sans-serif}#game-menu #panel .visual-menu .reward-chip small{font-size:10px}#game-menu #panel .visual-menu .price-kind{font-size:10px}#game-menu #panel .visual-menu .purchase-next small{font:700 10px Arial,sans-serif;letter-spacing:1px;color:#ace1c6}#game-menu #panel .visual-menu .loot-copy>.item-effect{font:12px/1.4 Arial,sans-serif}#game-menu #panel .visual-menu .loot-action button{font:700 13px Arial,sans-serif}#game-menu #panel .visual-menu .mini-milestone span{font:10px Arial,sans-serif}
#game-menu #panel .visual-menu .shop-price{display:flex;align-items:center;justify-content:center;gap:3px;font:12px Arial,sans-serif}.shop-price svg{width:18px;height:18px}#game-menu #panel .visual-menu article[data-recommended=true] .buy-action:not(:disabled){background:#e9c273;color:#1d2430;border-color:#ffe7a8}#game-menu #panel .visual-menu article[data-recommended=true] .buy-action:not(:disabled) b{color:#1d2430}
.world-thumb{image-rendering:pixelated}

.roster-worlds{display:grid;gap:12px}.roster-world{border:2px solid #657488;background:#142238;padding:8px}.roster-world>summary{display:flex;align-items:center;gap:10px;cursor:pointer;padding:8px}.roster-world>summary small{margin-left:auto;color:#b7ccd4}.roster-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin-top:10px}.roster-card{padding:10px;background:#1c3047;border:2px solid #405672;text-align:center}.roster-card h4{font:700 17px Pixelify,monospace;margin:7px 0}.roster-card small{display:block;font:13px/1.4 Arial,sans-serif;margin-top:8px;color:#c4d7df}.roster-sprite{width:120px;height:144px;margin:auto;background-repeat:no-repeat;background-size:720px 720px;image-rendering:pixelated}.roster-locked .roster-sprite{filter:brightness(.3) saturate(.2)}.roster-card .reward-chips{justify-content:center;margin-top:10px}.roster-card .reward-chip{font-size:12px;padding:3px}.roster-card .reward-chip svg{width:18px;height:18px}.roster-card .reward-chip small{font-size:10px;margin:0}@media(max-width:500px){.roster-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.roster-card{padding:5px}.roster-sprite{width:120px}.roster-world>summary{padding:5px;gap:5px}}

/* layout-v42.css */
/* Combat telemetry lives outside the scene; controls stay on the bottom edge. */
.arcade .stage-bar{display:flex;align-items:center;gap:6px;padding-left:max(6px,env(safe-area-inset-left));padding-right:max(6px,env(safe-area-inset-right))}
.arcade .stage-bar>span{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex:1}
.arcade .stage-bar>div:last-child{flex:none;gap:2px}
.arcade .stage-bar .stage-chain-slot{width:132px;flex:0 0 132px;display:block}
.stage-bar #chain-hud{position:relative;width:100%;padding:1px 5px 3px;margin:0;border:1px solid #bca06a;background:#162336;color:#ffe4aa;font:700 10px/17px Arial,sans-serif;pointer-events:none;box-shadow:none}
.stage-bar #chain-hud[hidden]{visibility:hidden;display:block}
.stage-bar #chain-hud>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:4px}
.stage-bar #chain-count{font-size:12px;font-variant-numeric:tabular-nums;color:#fff1cf}.stage-bar #chain-bonus{color:#b6f4da;font-size:11px;font-variant-numeric:tabular-nums}
.stage-bar #chain-meter{height:2px;background:#3a475e}.stage-bar #chain-fill{display:block;width:100%;height:100%;background:#a4eccd;transform-origin:left;transition:transform .12s linear}.reduced .stage-bar #chain-fill{transition:none}
.in-village .stage-chain-slot{visibility:hidden}
.screen #street-status{position:absolute;z-index:4;top:6px;right:max(8px,env(safe-area-inset-right));width:min(350px,calc(100% - 385px));display:flex;align-items:stretch;flex-direction:column;gap:4px;pointer-events:none}
.screen #street-status #encounter-hud{position:static;transform:none;min-width:0;width:auto;max-width:100%;margin:0;padding:4px 7px;text-align:left;font-size:11px;line-height:15px}
.screen #street-status #encounter-wave{font-size:10px;line-height:14px}.screen #street-status #boss-progress{margin-top:3px;height:4px}
.screen #street-status #bonus-status{position:static;max-width:100%;min-height:26px;display:flex;flex-wrap:wrap;align-items:center;gap:3px;padding:3px 5px;pointer-events:auto;background:#15243ae8;border:1px solid #71839c;font:700 11px Arial,sans-serif}
.screen #street-status #bonus-status .pixel-icon{width:16px;height:16px}.screen #street-status #bonus-status[hidden]{display:none}
.screen .arcade-controls #opening-night{position:relative;inset:auto;min-width:46px;width:46px;min-height:58px;margin:0;padding:3px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;order:3;font:700 10px Arial,sans-serif}
.screen .arcade-controls #opening-night .pixel-icon{width:25px;height:25px}.screen .arcade-controls #opening-night:enabled{border-color:#ffe49a;box-shadow:0 0 0 1px #8c6445}
.screen .arcade-controls{left:max(7px,env(safe-area-inset-left));bottom:max(10px,env(safe-area-inset-bottom));gap:5px}.screen .game-dock{right:max(7px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom))}
#game-menu,#dialog,#leaderboard{overscroll-behavior:contain}.menu-body{overscroll-behavior:contain}button{touch-action:manipulation}
@media(max-width:760px){.screen #street-status{top:82px;left:5px;right:5px;width:auto;align-items:flex-start}.screen #street-status #encounter-hud{max-width:100%}.screen #street-status #bonus-status{width:auto}.screen .arcade-controls .game-control{min-width:44px;width:44px;padding:4px}.screen .arcade-controls #opening-night{min-width:44px;width:44px}.screen .game-dock button{min-width:44px;width:44px;padding:3px}.screen .arcade-controls .game-control small{white-space:nowrap;font-size:9px}.arcade .stage-bar .stage-chain-slot{width:122px;flex-basis:122px}}
@media(max-width:360px){.arcade .stage-bar .stage-chain-slot{width:111px;flex-basis:111px}.stage-bar #chain-hud{padding-inline:3px;font-size:9px}.arcade .stage-bar{gap:3px}.arcade .stage-bar>div:last-child button{width:29px}.arcade .stage-bar>span{font-size:9px}.screen .game-dock{gap:3px}.screen .arcade-controls{gap:4px}}
@media(max-height:500px) and (min-width:601px){.screen #street-status{top:5px;left:auto;right:max(8px,env(safe-area-inset-right));width:calc(100% - 360px);max-width:360px}.screen .arcade-controls .game-control,.screen .arcade-controls #opening-night{min-height:46px}.screen .arcade-controls #opening-night .pixel-icon{height:20px}}

@media(max-width:600px){#game-menu #panel .visual-menu .purchase-next{grid-template-columns:28px minmax(0,1fr) 56px;gap:7px;padding:8px;margin-bottom:9px}#game-menu #panel .visual-menu .purchase-next>svg{width:27px;height:27px}#game-menu #panel .visual-menu .purchase-next h3{font-size:15px;line-height:1.15;margin:2px 0}#game-menu #panel .visual-menu .purchase-next small{font-size:8px;letter-spacing:.5px}#game-menu #panel .visual-menu .purchase-next p{font-size:11px;margin:2px 0}#game-menu #panel .visual-menu .purchase-next button{grid-column:auto;width:auto;min-width:0;min-height:44px;padding:5px}#menu-feedback{left:9px;right:9px;bottom:max(8px,env(safe-area-inset-bottom));font-size:11px;padding:6px 9px}}

.in-village .arcade .stage-bar .stage-chain-slot{display:none}

/* story-v43.css */
/* Short optional notes retain the established pixel panels and readable body type. */
.art-story-note,.story-banter{margin:8px 0}.art-story-note p,.story-banter p{font:14px/1.5 Arial,sans-serif;color:#e3e7ed;overflow-wrap:anywhere}.art-story-note h4{font-size:15px;line-height:1.3;margin:8px 0}.art-story-note>small{font:700 10px/1.4 Arial,sans-serif;color:#91d8cc;letter-spacing:.05em}.art-story-note a{display:inline-flex;align-items:center;min-height:44px;color:#f5d18b;text-decoration:underline}.art-story-note .story-fiction-note{font-size:11px;color:#aab5c4;margin-bottom:4px}.art-story-note summary,.story-banter summary{min-height:44px;box-sizing:border-box;align-content:center;cursor:pointer;line-height:1.4;white-space:normal}.story-journal article{min-width:0;overflow-wrap:anywhere}.club-welcome p{font:13px/1.4 Arial,sans-serif;margin:8px 0 0;color:#d6cbd5}

/* audio-v45.css */
#quick-tools{max-width:calc(100% - 16px);max-height:calc(100% - 24px);overflow:auto}
.sound-mixer{display:grid;gap:8px;padding:12px;background:#171a29;border:2px solid #a48560;color:#fff0d1;min-width:230px;box-sizing:border-box}
.sound-mixer label{display:grid;grid-template-columns:24px 1fr 48px;align-items:center;gap:4px;font:600 14px system-ui,sans-serif}
.sound-mixer label>span:first-child{color:#f0c875;font-size:22px;image-rendering:pixelated}
.sound-mixer output{text-align:right;font-variant-numeric:tabular-nums}
.sound-mixer input{grid-column:1/-1;width:100%;height:36px;min-height:36px;margin:0;accent-color:#e4b96c;cursor:pointer;touch-action:pan-y}
.sound-mixer input:focus-visible{outline:2px solid #8bded6;outline-offset:2px}
#rhythm-controls .sound-mixer{grid-template-columns:1fr 1fr;min-width:0;padding:6px 10px;gap:18px}
#rhythm-controls .sound-mixer label{font-size:12px;grid-template-columns:18px 1fr 36px}
#rhythm-controls .sound-mixer input{height:28px;min-height:28px}
.in-club #quick-tools{display:none}
#rhythm-controls{position:relative}
#club-mixer{position:absolute;bottom:58px;left:10px;right:10px;z-index:50}
#club-mixer[hidden]{display:none}
.rhythm-options{gap:4px}
.rhythm-options button{flex:1;padding:6px 4px;font-size:11px}

/* save-v46.css */
.save-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px;background:#101b2b;border:2px solid #738595}.save-summary span{display:flex;flex-direction:column;font:13px system-ui}.save-summary b{font-size:18px;color:#ffe2a0}.reset-warning,.reset-loss{border:2px solid #e58c7e;padding:10px;background:#42202d}.reset-keep{border:2px solid #80c4a5;padding:10px;background:#183931;margin-top:8px}.reset-ack{display:flex;align-items:center;gap:12px;padding:12px;border:2px solid #e5bb74;margin-top:12px;font:600 15px system-ui}.reset-ack input{width:26px;height:26px;flex:none}#dialog-actions button:disabled{opacity:.4;cursor:not-allowed}#dialog .save-summary+h3{margin-top:16px}

/* story-v47.css */
.story-progress{border:2px solid #d8b16c;background:#142b39;padding:12px;margin-bottom:12px}.story-progress>div:first-child{display:flex;align-items:center;gap:9px}.story-progress strong{margin-left:auto;color:#ffe2a4;font-size:25px}.story-progress progress{display:block;width:100%;height:12px;margin:8px 0;accent-color:#8de1bf}.story-progress small{display:block;font-family:Arial,sans-serif;font-size:12px;line-height:1.45;color:#cbd6e1}.story-acts{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;margin:10px 0}.story-acts>span{display:flex;align-items:center;justify-content:center;gap:3px;padding:5px;border:1px solid #617181;opacity:.45}.story-acts .done{opacity:1;color:#8de1bf;border-color:#8de1bf}.story-acts .current{opacity:1;background:#584322;border:2px solid #f6c974}.story-returning{display:flex;gap:10px;background:#203549;border-left:4px solid #f6c974;padding:12px;margin-bottom:12px}.story-returning>svg{flex-shrink:0}.story-returning p,.story-returning small,.story-route-state{font:13px/1.5 Arial,sans-serif}.story-returning p{margin:6px 0}.story-returning small{color:#cbd6e1}.story-route-state{padding:8px;background:#142b39;color:#ffe2a4}.story-progress svg,.story-acts svg{width:24px;height:24px}

/* story-v48.css */
.story-ready-banner{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px;border:2px solid #ffe3a1;background:#514025;margin:10px 0;color:#fff0c6}.story-ready-banner span{font:13px/1.4 Arial,sans-serif}.story-ready-banner svg{width:28px;height:28px}.screen .quest-tracker.story-ready{background:#514025!important;border:2px solid #ffe3a1!important;color:#fff4d7!important}.game-dock button.story-ready,#tab-missions.story-ready{outline:2px solid #ffe3a1;outline-offset:-2px;background:#514025!important}.story-ready #quest-badge{background:#ffe3a1;color:#181827;font-weight:bold}
