#cinema-v2[hidden],#cinema-nav[hidden]{display:none!important}
html:has(body.v2-open){display:block;overflow:auto;touch-action:pan-y pinch-zoom;height:auto;min-height:100%}
body.v2-open{display:block;overflow:visible;touch-action:pan-y pinch-zoom;user-select:auto;height:auto;min-height:100dvh}
body.v2-open>#game{display:none}
#cinema-v2{font:16px/1.45 system-ui,-apple-system,sans-serif;background:#14131e;color:#f3e9d4;min-height:100dvh;width:100%;box-sizing:border-box;padding:clamp(12px,3vw,32px);touch-action:pan-y pinch-zoom}
#cinema-v2 *{box-sizing:border-box}
#cinema-v2 button,#cinema-v2 input,#cinema-v2 select,#cinema-nav button{font:inherit}
#cinema-v2 button,#cinema-nav button{min-height:48px;border:1px solid #665e72;border-radius:6px;background:#302b40;color:#f5ecda;padding:10px 16px;cursor:pointer}
#cinema-v2 button:hover,#cinema-nav button:hover{background:#45384f;border-color:#d4ae75}
#cinema-v2 button:focus-visible,#cinema-v2 input:focus-visible,#cinema-v2 select:focus-visible,#cinema-nav button:focus-visible{outline:3px solid #f2cd85;outline-offset:3px}
#cinema-v2 button:disabled{opacity:.45;cursor:default}
#cinema-v2 .primary{background:#e3bf81;color:#201c27;border-color:#e3bf81;font-weight:750}
#cinema-v2 h1{font:400 clamp(28px,5vw,46px)/1.1 Georgia,serif;margin:8px 0 16px}
#cinema-v2 h2{font:400 25px/1.2 Georgia,serif;margin:8px 0 12px}
#cinema-v2 h3{font-size:16px;margin:6px 0}
#cinema-v2 p{margin:10px 0;color:#d4c9bc}
#cinema-v2 .eyebrow{color:#d4ae75;font:700 11px/1.4 system-ui;letter-spacing:.16em;text-transform:uppercase}
#cinema-v2 .page{max-width:1040px;margin:0 auto}
#cinema-v2 .topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px}
#cinema-v2 .row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
#cinema-v2 .stack{display:grid;gap:12px}
#cinema-v2 .panel{border:1px solid #4e4656;border-radius:8px;padding:clamp(14px,3vw,24px);background:#201c2b}
#cinema-v2 .split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(250px,1fr);gap:24px}
#cinema-v2 .mode-tabs{margin:20px 0}
#cinema-v2 [aria-pressed=true]{border-color:#e3bf81;background:#514139}
#cinema-v2 .chapter-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:8px;margin:16px 0}
#cinema-v2 .chapter-list button{text-align:left}
#cinema-v2 .muted{font-size:13px;color:#aaa0b2}
#cinema-v2 .notice{border-left:3px solid #e3bf81;padding:10px 14px;background:#312b36;min-height:44px}
#cinema-v2 .hero-stage{background:#10111a;border:1px solid #625261;max-width:960px;margin:auto}
#cinema-v2 .hero-stage canvas{width:100%;height:auto;max-width:100%;aspect-ratio:16/9;image-rendering:pixelated;touch-action:none}
#cinema-v2 .hero-stage.pixel{width:min(100%,480px)}
#cinema-v2 .hero-controls{max-width:960px;display:flex;gap:16px;margin:12px auto}
#cinema-v2 .hero-controls button{min-height:72px;flex:1;touch-action:none;user-select:none;-webkit-user-select:none;font-weight:700}
#cinema-v2 .hero-controls.left{flex-direction:row-reverse}
#cinema-v2 .hero-goal{max-width:960px;margin:0 auto 12px;font-size:14px;color:#e3bf81;min-height:21px}
#cinema-v2 .chapter-goal{font-size:14px;color:#e3bf81}
#cinema-v2 .tray-recipe{font-size:13px;color:#e3bf81;margin:8px 0}
#cinema-v2 .counter-waiting{grid-column:1/-1;align-self:center;text-align:center;font-size:14px}
#cinema-v2 .selected-guest{font-size:14px;color:#e3bf81;margin:0 0 12px}
#cinema-v2 .seating-actions button{padding:10px 12px}
#cinema-v2 .hud{display:flex;gap:18px;flex-wrap:wrap;justify-content:space-between;max-width:960px;margin:0 auto 12px;font-variant-numeric:tabular-nums}
#cinema-v2 .orders{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-height:132px}
#cinema-v2 .order{text-align:left;border-top:4px solid #d4ae75}
#cinema-v2 .order strong,#cinema-v2 .order span{display:block}
#cinema-v2 .order time{display:block;margin-top:10px;font-size:13px;color:#e3bf81}
#cinema-v2 .trays{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}
#cinema-v2 .tray{min-height:172px;border:2px solid #615764;padding:12px;background:#262231;border-radius:8px}
#cinema-v2 .tray.selected{border-color:#e3bf81;background:#342c37}
#cinema-v2 .tray.ready{border-color:#9abb9e}
#cinema-v2 .products{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
#cinema-v2 .products button{flex:1;min-width:110px}
#cinema-v2 .group-list{display:grid;gap:8px}
#cinema-v2 .group-list button{text-align:left;min-height:64px}
#cinema-v2 .group-list small{display:block;font-size:13px;color:#cfc1b2}
#cinema-v2 .auditorium{overflow-x:auto;padding:16px 4px;touch-action:pan-x pan-y pinch-zoom}
#cinema-v2 .screen{height:8px;background:#e3d5b4;margin:8px 20px 24px;text-align:center;box-shadow:0 10px 26px #bba46b33}
#cinema-v2 .seat-row{display:flex;justify-content:center;gap:5px;margin:7px 0;min-width:max-content}
#cinema-v2 .seat{width:48px;min-width:48px;height:48px;padding:2px;border-radius:5px 5px 12px 12px;background:#623642;font-size:12px;position:relative}
#cinema-v2 .seat.aisle-before{margin-left:18px}
#cinema-v2 .seat.closed{background:#29232e;color:#978a93}
#cinema-v2 .seat.shadow{background:repeating-linear-gradient(45deg,#282c38,#282c38 4px,#565467 4px,#565467 6px)}
#cinema-v2 .seat.preview{outline:3px solid #a7c9a5}
#cinema-v2 .seat.invalid{outline:3px dashed #e9ab89}
#cinema-v2 .seat.occupied{background:#4d6667;color:#fff}
#cinema-v2 .screening .seat.occupied{background:#253c45}
#cinema-v2 .screening .screen{box-shadow:0 20px 65px 22px #f7e6b34d}
#cinema-v2 .settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;border-bottom:1px solid #443b4c}
#cinema-v2 select{background:#302b40;color:#f5ecda;min-height:48px;max-width:200px;border:1px solid #665e72;padding:8px}
#cinema-v2 input[type=checkbox]{width:24px;height:24px;accent-color:#d4ae75}
#cinema-v2 input[type=range]{min-height:44px;max-width:45%;accent-color:#d4ae75}
#cinema-v2 .result-score{font:400 64px/1 Georgia,serif;color:#e3bf81;margin:24px 0}
#cinema-v2 .momo-portrait{image-rendering:pixelated;width:96px;height:120px}
#cinema-v2 .item-art{width:32px;height:32px;min-width:32px;image-rendering:pixelated;display:inline-block;vertical-align:middle;aspect-ratio:1}
#cinema-v2 .guest-art{width:32px;height:40px;image-rendering:pixelated;float:right;aspect-ratio:4/5}
#cinema-v2 .counter-art{width:96px;height:60px;image-rendering:pixelated;aspect-ratio:8/5;display:inline-block}
#cinema-v2 .wardrobe-preview canvas{width:100%;height:auto;aspect-ratio:16/9}
#cinema-v2 .seat.occupied:before{content:'';display:block;width:9px;height:7px;background:#ead4ab;margin:0 auto 2px;box-shadow:0 4px #282333}
body:not(.v2-open)>#game{width:min(100vw,calc((100dvh - 88px)*1.777778));height:min(calc(100dvh - 88px),56.25vw);margin-bottom:76px}
#cinema-nav{position:fixed;bottom:max(8px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;gap:6px;max-width:calc(100% - 16px);padding:6px;background:#15121fe8;border:1px solid #51455e;border-radius:8px;font:13px system-ui;z-index:3}
#cinema-nav button{padding:8px 12px;min-height:44px;white-space:nowrap}
#save-warning{position:fixed;top:0;left:0;right:0;z-index:50;background:#573726;color:#fff3d8;font:14px/1.5 system-ui;padding:10px 14px}
#save-warning:empty{display:none}
body:has(#save-warning:not(:empty)) #cinema-v2{padding-top:90px}
@media(max-width:650px){#cinema-v2 .split{grid-template-columns:1fr}#cinema-v2 .topbar{margin-bottom:14px}#cinema-v2 .orders{gap:6px}#cinema-v2 .order{padding:9px 7px;font-size:13px}#cinema-v2 .trays{gap:8px}#cinema-v2 .tray{padding:8px}#cinema-v2 .hud{font-size:13px;gap:8px}#cinema-nav{flex-wrap:wrap;justify-content:center;width:max-content}#cinema-nav button{font-size:12px;padding:6px 10px}#cinema-v2 .hero-controls button{min-height:88px}}
@media(max-width:650px){#cinema-v2 .counter-game .topbar{margin-bottom:6px}#cinema-v2 .counter-game h1{font-size:22px!important;margin-bottom:10px}#cinema-v2 .counter-art{width:64px;height:40px}#cinema-v2 .counter-game .orders{min-height:100px}#cinema-v2 .counter-game .trays{margin:10px 0}#cinema-v2 .counter-game .tray{min-height:128px}#cinema-v2 .counter-game .tray>button{padding:8px 6px;font-size:13px}#cinema-v2 .counter-game .products{margin-top:6px;gap:6px}#cinema-v2 .counter-game .products button{padding:6px 4px;font-size:13px;min-width:95px}#cinema-v2 .counter-game .item-art{width:24px;height:24px;min-width:24px}#cinema-v2 .counter-game .guest-art{width:24px;height:32px}#cinema-v2 .counter-game .notice{font-size:13px;margin:8px 0}}
@media(max-width:650px){#cinema-v2 .counter-game .hud{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:2px 8px;align-items:center}#cinema-v2 .counter-game .counter-art{width:40px;height:25px;grid-row:1/3}#cinema-v2 .counter-game .hud>span{grid-column:2}#cinema-v2 .counter-game .hud>button{grid-column:3;grid-row:1/3}#cinema-v2 .seating-guests .group-list{grid-template-columns:repeat(2,minmax(0,1fr))}#cinema-v2 .seating-guests .group-list button{font-size:13px;padding:8px;min-width:0}#cinema-v2 .seating-guests .group-list small{font-size:12px}#cinema-v2 .seating-game .auditorium{padding-top:4px;padding-bottom:4px}#cinema-v2 .hero-goal{font-size:13px;min-height:38px}}
@media(min-width:651px){#cinema-v2 .flight-game .hero-stage:not(.pixel){width:min(100%,960px,calc(max(160px,100dvh - 340px)*1.777778))}#cinema-v2 .flight-game .hero-controls{width:min(100%,960px,calc(max(160px,100dvh - 340px)*1.777778))}}
@media(orientation:portrait) and (max-width:700px){body:not(.v2-open){flex-direction:column}body:not(.v2-open)>#game{margin-top:-110px}#cinema-nav{bottom:25px;max-width:350px}}
@media(prefers-reduced-motion:reduce){#cinema-v2 *{scroll-behavior:auto!important;transition:none!important}}
