#storeGame[hidden],#storeDialog[hidden]{display:none!important}
#storeGame{position:fixed;inset:0;z-index:80;background:#101821;color:#fff0d2;font:14px Arial,sans-serif;display:grid;grid-template-rows:60px 38px minmax(0,1fr) 38px;overflow:hidden;touch-action:auto;user-select:none;-webkit-user-select:none}
#storeGame *{box-sizing:border-box}#storeGame button{font:inherit;cursor:pointer;touch-action:none}#storeGame button:focus-visible{outline:3px solid white;outline-offset:3px}
.store-top{display:flex;align-items:center;gap:24px;padding:8px 22px;border-bottom:2px solid #d99a40;background:#14202b}.store-title{margin-right:auto;line-height:1.4}.store-title small{display:block;color:#c0af94;font:9px LastCallArcade,monospace;letter-spacing:1px}.store-title strong{font:15px LastCallArcade,monospace;color:#ffcf6c}.store-stat{display:flex;flex-direction:column;gap:4px;min-width:65px}.store-stat span{font:8px LastCallArcade,monospace;color:#bdc9cf}.store-stat b{font:17px LastCallArcade,monospace;color:#ffdf94}.store-stat.urgent b{color:#ff8374}.store-top button{background:#273948;color:#ffe7b8;border:1px solid #d6a04b;border-radius:3px;min-height:38px;padding:7px 12px;font-weight:bold!important}
.store-list{display:flex;gap:18px;align-items:center;justify-content:center;background:#24323a;border-bottom:1px solid #596267;font-size:12px;color:#f4dcc1}.store-list>strong{color:#ffcf6c;font-size:10px;letter-spacing:1px}.store-list span{white-space:nowrap}.store-list .done{color:#9fdfa8}.store-floor{position:relative;min-height:0;overflow:hidden;background:#302c29}#storeCanvas{display:block;width:100%;height:100%;outline:none;touch-action:none}
.store-help{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 22px;background:#14202b;border-top:2px solid #d99a40;font-size:11px;color:#bdc9cf}.store-help strong{color:#ffcf6c}.store-pad{display:none}.store-toast{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);padding:10px 18px;max-width:90%;background:#14202bed;border:1px solid #ffcf6c;box-shadow:0 3px 12px #0007;text-align:center;color:#ffe9bd;font-size:14px;font-weight:bold;pointer-events:none;opacity:0;transition:opacity .15s}.store-toast.visible{opacity:1}
#storeDialog{position:absolute;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;background:#071019d9;padding:18px;overflow:auto;touch-action:pan-y}.store-card{width:min(620px,100%);max-height:100%;overflow:auto;padding:32px;background:#182a36;border:2px solid #e4af58;box-shadow:8px 8px #0008;text-align:center}.store-eyebrow{font:10px/1.6 LastCallArcade,monospace;letter-spacing:1px;color:#ffc76b;margin:0 0 18px}.store-card h2{font:clamp(22px,3vw,37px)/1.3 LastCallArcade,monospace;color:#ffe2a4;margin:0 0 16px}.store-card p{font-size:15px;line-height:1.65;color:#d3dedf;margin:14px 0}.store-objectives{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0}.store-objectives div{padding:14px 8px;border:1px solid #53636b;background:#213743;font-size:12px;line-height:1.6}.store-objectives b{display:block;color:#ffc76b;font-size:24px;margin-bottom:6px}.store-card button{min-height:46px;margin:5px;padding:12px 20px;background:#efb752;border:2px solid #ffe4a3;color:#18212b;font-weight:800!important}.store-card button.secondary{background:transparent;color:#efc987;border:1px solid #778b92}.store-card button:disabled{opacity:.55;cursor:wait!important}.store-result{color:#ffcf6c!important;font:28px LastCallArcade,monospace!important;line-height:1.5!important}.store-save{min-height:24px}.store-save.error{color:#ffb6a3!important}
body.store-playing .wrap{visibility:hidden}body.store-playing #mobileExit{display:none!important}body.store-playing #rotateOverlay{z-index:120!important}
@media(pointer:coarse){#storeGame{grid-template-rows:48px 30px minmax(0,1fr) 68px}.store-top{padding:4px max(12px,env(safe-area-inset-right)) 4px max(12px,env(safe-area-inset-left));gap:18px}.store-title strong{font-size:12px}.store-title small{font-size:7px}.store-stat{min-width:54px}.store-stat span{font-size:6px}.store-stat b{font-size:13px}.store-top button{font-size:11px!important;min-height:36px;padding:6px 10px}.store-list{gap:16px;font-size:11px}.store-list>strong{font-size:9px}.store-help{padding:5px max(12px,env(safe-area-inset-right)) 5px max(12px,env(safe-area-inset-left))}.store-keyboard{display:none}.store-pad{display:flex;gap:12px}.store-pad button{display:flex;align-items:center;justify-content:center;border:2px solid #f4c16b;background:#263a49;color:#ffe3a5;border-radius:8px;width:52px;height:48px;font:900 25px Arial,sans-serif!important;box-shadow:0 3px #080e15}.store-pad button.held{background:#b77e34;color:white}.store-help>strong{font-size:10px;max-width:220px;text-align:center}.store-card{padding:18px;max-width:630px}.store-card h2{font-size:22px;margin-bottom:10px}.store-card p{font-size:13px;margin:10px 0;line-height:1.45}.store-eyebrow{margin-bottom:10px}.store-objectives{margin:12px 0;gap:8px}.store-objectives div{padding:7px;font-size:11px}.store-objectives b{font-size:19px;margin-bottom:2px}.store-card button{min-height:42px;padding:9px 15px}.store-toast{bottom:8px;font-size:12px;padding:8px 12px}.store-result{font-size:23px!important}}
@media(max-width:600px){.store-title{display:none}.store-top{gap:12px;justify-content:space-between}.store-list{gap:10px;font-size:10px}.store-list>strong{display:none}.store-help>strong{display:none}}
@media(prefers-reduced-motion:reduce){.store-toast{transition:none}}
/* 1.27 graphics pass: warm warehouse lighting, painted steel and brass trim. */
#storeGame{background:#15251f;color:#f5edcf}
.store-top{background:linear-gradient(180deg,#284339,#172d26);border-bottom-color:#b99952;box-shadow:0 3px 12px #0004;z-index:2}
.store-title{position:relative;padding-left:51px}.store-title:before{content:'HH';position:absolute;left:0;top:0;width:36px;height:36px;display:grid;place-items:center;border:2px solid #d7b660;color:#ead28b;font:bold 17px Georgia,serif;transform:rotate(-5deg);box-shadow:2px 2px #061a1555}
.store-title small{color:#c8ccb5}.store-title strong{color:#f5d488}.store-stat span{color:#b9c9b9}.store-stat b{color:#f8e4b4}.store-top button{background:linear-gradient(#3a5344,#263c31);border-color:#ab9157;color:#f5dfaa;box-shadow:inset 0 1px #ffffff18,0 2px #0c1e17}.store-top button:hover{background:#496348}
.store-list{background:linear-gradient(#e1d9bb,#d0c7a8);border-bottom:1px solid #9d9d80;color:#314237;box-shadow:0 2px 7px #15231a2b;z-index:1}.store-list>strong{color:#3f523b}.store-list span:before{content:'';display:inline-block;width:8px;height:8px;border:1px solid #7e8969;border-radius:1px;margin-right:6px}.store-list .done{color:#326437;font-weight:bold}.store-list .done:before{background:#537047;border-color:#537047;box-shadow:inset 0 0 0 1px #d4ddab}
.store-help{background:linear-gradient(#253e33,#172d25);border-top-color:#ad9353;color:#d0d7bd}.store-help strong{color:#edda9d}.store-toast{border-color:#ddc477;background:#203c30f5;color:#fff0bb;border-radius:4px;box-shadow:0 5px 20px #0005}
#storeDialog{background:#091b16d9;backdrop-filter:blur(3px)}.store-card{background:radial-gradient(ellipse at top,#355645,#1b322a 70%);border-color:#b49a58;box-shadow:0 15px 60px #0008,inset 0 0 0 5px #162c2377;border-radius:5px}.store-card h2{color:#f6df9a;text-shadow:3px 3px #10251c}.store-eyebrow{color:#d5c48a}.store-card p{color:#dce1cf}.store-objectives div{background:#162e2580;border-color:#748369;border-radius:3px}.store-objectives b{color:#e9c773}.store-card button{background:linear-gradient(#efd59a,#c5a455);border-color:#f1d9a1;color:#223626;border-radius:3px;box-shadow:0 3px #07180f80}.store-card button.secondary{border-color:#8d9b80;color:#e7d09a}.store-card button:hover{filter:brightness(1.1)}
@media(pointer:coarse){.store-title{padding-left:0}.store-title:before{display:none}.store-pad button{background:linear-gradient(#395544,#233b30);border-color:#d5b66c;color:#f3dfa4;box-shadow:0 3px #081b12}.store-pad button.held{background:#b39448;color:#fff}.store-list span:before{width:6px;height:6px;margin-right:4px}}

/* Static scenery scrolls as a cached compositor layer; the foreground draws actors. */
#storeScenery{position:absolute;top:0;left:0;z-index:0;pointer-events:none;will-change:transform;transform-origin:top left}
#storeCanvas{position:relative;z-index:1;background:transparent}.store-floor{background:#152320}.store-toast{z-index:2}

/* Level 2 now uses the same scene-overlay HUD as Levels 1 and 3. */
#storeGame{grid-template-rows:minmax(0,1fr) 30px 42px 38px}
.store-champion-value{display:flex;align-items:center;justify-content:center;gap:.5em;max-width:100%;min-width:0;white-space:nowrap}#storeChampionName{min-width:0;overflow:hidden;text-overflow:ellipsis}#storeBest{flex-shrink:0}
#storeDialog{z-index:30}
.store-supplies{display:flex;gap:16px;align-items:center;min-width:0}.store-supplies>strong{color:#3f523b;font-size:10px;letter-spacing:.5px}
.store-utility{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 max(14px,env(safe-area-inset-right)) 0 max(14px,env(safe-area-inset-left));background:#101722;color:#e2dcc5}
.store-level{font:11px LastCallArcade,monospace;color:#f3cf84}.store-personal{display:flex;align-items:center;gap:8px;white-space:nowrap;font:9px LastCallArcade,monospace;color:#c9d4d2}.store-personal b{font:14px LastCallArcade,monospace;color:#84e4da}
.store-actions-inline{display:flex;gap:8px}#storeGame .store-actions-inline button{min-height:32px;padding:5px 10px;font:bold 10px Arial,sans-serif;border:1px solid #b99952;border-radius:3px;background:#1e2838;color:#ffe3a5;white-space:nowrap}.store-actions-inline button:hover{filter:brightness(1.25)}
.store-best-result{font-size:12px!important;color:#b9e7cd!important}
@media(pointer:coarse),(max-height:500px){#storeGame{grid-template-rows:minmax(0,1fr) 24px 44px 68px}.store-champion-value{gap:.35em}.store-utility{padding:0 8px;gap:8px}.store-level{font-size:9px}.store-personal{font-size:8px;gap:5px}.store-personal b{font-size:13px}.store-actions-inline{gap:5px}#storeGame .store-actions-inline button{min-height:44px;font-size:9px;padding:4px 8px}.store-supplies{gap:12px}.store-supplies>strong{font-size:8px}}
@media(max-width:650px){.store-supplies>strong{display:none}.store-level{font-size:8px}.store-personal{flex-direction:column;gap:2px;font-size:8px}.store-personal b{font-size:12px}.store-actions-inline{gap:5px}#storeGame .store-actions-inline button{font-size:8px;padding:4px 6px}.store-pad{gap:7px}.store-pad button{width:48px}.store-utility{gap:6px}}
