:root{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}.game-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px clamp(12px,3vw,32px);display:flex}.game-header h1{font:600 clamp(18px, 2.4vw, 24px) / 1.1 var(--font-pixel);letter-spacing:.01em;margin:0}.top-actions{gap:8px;display:flex}.game-main{padding:0 clamp(12px,3vw,32px) 24px}.hud,.stage{width:min(100%,177.778dvh - 426.667px);min-width:min(100%,320px);margin:0 auto}.hud{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:8px;display:flex}.stage-label{font:600 15px/1.2 var(--font-pixel);margin:0 auto 0 0}.skills{align-items:center;gap:6px;display:flex}.slot{border:2px dashed var(--ink-soft);border-radius:2px;place-items:center;width:30px;height:30px;display:grid;position:relative}.slot.on{background:var(--gold);border:2px solid var(--frame)}.slot canvas,.icon-btn canvas,.badge-fly canvas{width:21px;height:21px;image-rendering:pixelated}.icon-btn{background:var(--panel);border:2px solid var(--frame);border-radius:2px;place-items:center;width:36px;height:34px;padding:0;display:grid}.stage{aspect-ratio:16/9;border:4px solid var(--frame);background:#1e1c19;position:relative;overflow:hidden;container-type:inline-size}#game{width:100%;height:100%;image-rendering:pixelated;cursor:pointer;display:block}.layer{pointer-events:none;position:absolute;inset:0}.hot{pointer-events:auto;background:0 0;border:0;padding:0;position:absolute}.hot:before{content:"";position:absolute;inset:-8px}.banner{background:var(--frame);color:#f3d67c;border:2px solid var(--gold);font:600 clamp(13px, 2vw, 18px) / 1.2 var(--font-pixel);white-space:nowrap;pointer-events:none;padding:6px 14px;position:absolute;top:8%;left:50%;transform:translate(-50%)}.card{background-color:var(--panel);width:min(92%,460px);color:var(--ink);border:3px solid var(--frame);box-shadow:6px 6px 0 var(--pink);background-image:linear-gradient(var(--panel-line) 1px, transparent 1px), linear-gradient(90deg, var(--panel-line) 1px, transparent 1px);background-size:16px 16px;padding:14px 16px;position:absolute;bottom:5%;left:50%;transform:translate(-50%)}.card[hidden]{display:none}.card h2{font:600 19px/1.2 var(--font-pixel);margin:0 28px 6px 0}.card p{max-width:60ch;margin:0 0 10px}.card .actions{flex-wrap:wrap;gap:8px;display:flex}.card .close{color:var(--ink);font:600 22px/1 var(--font-pixel);background:0 0;border:0;padding:4px 6px;position:absolute;top:6px;right:8px}.callbox{font:600 17px/1.2 var(--font-pixel);flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.hint{text-align:center;color:var(--ink-soft);max-width:70ch;margin:10px auto 0;font-size:14px}.pads{justify-content:center;gap:10px;margin-top:12px;display:none}.pad{border:3px solid var(--frame);background:var(--panel);width:64px;height:52px;color:var(--ink);font:600 18px/1 var(--font-pixel);touch-action:none;-webkit-user-select:none;user-select:none;border-radius:2px}.pad.use{background:var(--lime);color:var(--on-lime)}@media (pointer:coarse){.pads{display:flex}}.toast{background:var(--frame);color:#fff;font:600 14px/1.3 var(--font-pixel);border:2px solid var(--lime);pointer-events:none;opacity:0;white-space:nowrap;padding:6px 12px;position:absolute;top:22%;left:50%;transform:translate(-50%)}.badge-fly{z-index:30;background:var(--gold);border:2px solid var(--frame);pointer-events:none;place-items:center;width:30px;height:30px;display:grid;position:fixed}@media (width<=640px){.card{bottom:calc(10px + env(safe-area-inset-bottom,0px));z-index:15;position:fixed}}.icon-btn[hidden],.hot[hidden]{display:none}.stage-label:focus{outline:none}.stage-label:focus-visible{outline:3px solid var(--pink);outline-offset:2px}.door-sign{background:var(--frame);color:#f3d67c;border:2px solid var(--gold);max-width:34%;font:600 clamp(9px, 1.45cqi, 13px) / 1.15 var(--font-pixel);pointer-events:none;flex-direction:column;gap:1px;padding:.25em .5em;display:flex;position:absolute}.door-sign.right{text-align:right}.door-sign span{color:#e8dcc0;font-weight:400}.card ul{max-width:60ch;margin:0 0 10px;padding-left:20px}.card li+li{margin-top:3px}.card .card-links{flex-wrap:wrap;gap:4px 16px;padding-left:0;list-style:none;display:flex}.card{max-height:88%;overflow:auto}.task{margin:4px 0 10px}.task[hidden]{display:none}.task-help{color:var(--ink-soft);margin:0 0 8px;font-size:14px}.task-area{-webkit-user-select:none;user-select:none;position:relative}.task-status{min-height:1.4em;font:600 14px/1.3 var(--font-pixel);margin:8px 0 0}.task-status.done{color:var(--ink);border-left:4px solid var(--lime);padding-left:8px}.task-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.task-controls{justify-content:center;gap:8px;margin-top:8px;display:flex}.docs{flex-wrap:wrap;flex:1;gap:6px;display:flex}.doc{border:2px solid var(--frame);width:34px;height:44px;box-shadow:2px 2px 0 var(--gold);touch-action:none;cursor:grab;background:#f3efe4;padding:5px}.doc .lines{background:repeating-linear-gradient(#8a8270 0 2px,#0000 2px 6px);height:100%;display:block}.machine{text-align:center;color:#f3efe4;border:3px solid var(--frame);width:96px;height:64px;font:600 12px/1.2 var(--font-pixel);background:#3f6273;place-items:center;padding:6px;display:grid}.meter{gap:4px;margin-top:10px;display:flex}.meter .day{text-align:center;border:2px solid var(--ink-soft);font:400 11px/1.2 var(--font-pixel);color:var(--ink-soft);flex:1;padding:2px 0}.meter .day.used{background:var(--lime);color:var(--on-lime);border-color:var(--on-lime)}.set{border:3px solid var(--frame);background:#2b2620;height:120px;position:relative;overflow:hidden}.rail{border-bottom:3px solid #8a8270;height:22px;position:absolute;top:8px;left:8px;right:8px}.lamp{background:var(--gold);border:2px solid var(--frame);touch-action:none;cursor:grab;border-radius:2px 2px 10px 10px;width:26px;height:22px;position:absolute;top:0;left:0}.lamp:focus-visible{outline:3px solid var(--pink);outline-offset:2px}.product{--lit:0;width:44px;height:64px;filter:brightness(calc(.35 + var(--lit) * .9));background:#5c4a3a;border:2px solid #1b1712;position:absolute;bottom:10px;transform:translate(-50%)}.product .garment{clip-path:polygon(20% 0,80% 0,100% 25%,85% 35%,85% 100%,15% 100%,15% 35%,0 25%);background:#c96d3d;position:absolute;inset:8px 6px}.floor-line{background:#5c4a3a;height:2px;position:absolute;bottom:8px;left:0;right:0}.book{color:#1d261b;border:2px solid var(--frame);background:#efe6d0;padding:6px 10px;font-size:14px}.reservations{margin:4px 0 0;padding-left:16px}.guests{flex-wrap:wrap;gap:6px;display:flex}.guest{border:2px solid var(--frame);background:var(--panel);color:var(--ink);font:600 14px/1.2 var(--font-pixel);padding:6px 10px}.guest[aria-pressed=true]{background:var(--lime);color:var(--on-lime)}.guest:disabled{opacity:.7;cursor:default}.keyboard{border:2px solid var(--frame);background:#6a4a2d;grid-template-columns:repeat(8,1fr);gap:4px;margin-top:10px;padding:6px;display:grid}.key{border:2px solid var(--frame);background:var(--gold);color:#1b1712;height:34px;font:600 14px/1 var(--font-pixel)}.key:disabled{opacity:.35;cursor:default}.lanes{border:3px solid var(--frame);background:#3a2018;grid-template-columns:repeat(3,1fr);height:130px;display:grid;position:relative;overflow:hidden}.lane{background:0 0;border:0;border-right:1px dashed #ffffff26;padding:0}.lane:last-of-type{border-right:0}.drop{color:#1b1712;border:2px solid var(--frame);font:600 12px/1.2 var(--font-pixel);white-space:nowrap;pointer-events:none;background:#efe6d0;padding:2px 6px;position:absolute;top:0}.drop.sauce{background:#e08070}.drop.basil{background:#9cc27a}.pizza{border:3px solid var(--gold);pointer-events:none;background:#d9b27a;border-radius:50%;width:54px;height:22px;position:absolute;bottom:6px}.pizza.sauce{background:radial-gradient(circle,#c0392b 55%,#d9b27a 58%)}.pizza.sauce.cheese{background:radial-gradient(circle,#f3e7c6 30%,#c0392b 34% 55%,#d9b27a 58%)}.pizza.sauce.cheese.basil{background:radial-gradient(circle at 35% 45%,#3d7a2a 8%,#0000 10%),radial-gradient(circle at 65% 55%,#3d7a2a 8%,#0000 10%),radial-gradient(circle,#f3e7c6 30%,#c0392b 34% 55%,#d9b27a 58%)}.peel-track{border:3px solid var(--frame);background:#3a2018;justify-content:space-between;align-items:center;height:70px;padding:0 8px;display:flex;position:relative}.pizza.peel{pointer-events:auto;touch-action:none;cursor:grab;position:relative;bottom:auto}.oven{color:#f07a1e;width:76px;height:52px;font:600 12px/1 var(--font-pixel);background:#1b1712;border:3px solid #6a4a2d;border-radius:30px 30px 2px 2px;place-items:center;display:grid}.sites{justify-content:center;min-height:84px}.site{background:var(--panel);color:var(--ink);border:3px solid var(--frame);box-shadow:3px 3px 0 var(--gold);font:400 13px/1.2 var(--font-body);touch-action:none;cursor:grab;flex-direction:column;align-items:center;gap:2px;padding:8px 12px;display:flex}.site strong{font:600 18px/1 var(--font-pixel)}.site[aria-pressed=true]{background:var(--lime);color:var(--on-lime)}.site.merged{cursor:default;box-shadow:3px 3px 0 var(--lime)}.plus{font:600 20px/1 var(--font-pixel)}.credits{text-align:center;color:var(--ink-soft);margin:18px auto 0;font-size:12px}
