:root{color-scheme:dark;--ink:#17101c;--paper:#fff0d3;--amber:#ffbd59;--red:#b4324e;--muted:#c2a9ad;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo",sans-serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#17101c;color:var(--paper)}body{background:radial-gradient(ellipse at 50% 10%,#442038 0,#17101c 65%);overscroll-behavior:none}button,select{font:inherit;min-height:44px;min-width:44px;color:var(--paper);border:1px solid #795264;background:#2d1c2d;border-radius:9px;padding:8px 12px;cursor:pointer;touch-action:manipulation}button:hover{background:#513048}button:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid var(--amber);outline-offset:2px}button:disabled{opacity:.4;cursor:default}button[aria-pressed=true]{background:#99402f;border-color:#ffc06b}.primary,#start{background:var(--amber);color:#28171b;font-weight:800;border-color:var(--amber)}header{max-width:1120px;margin:auto;height:58px;display:flex;align-items:center;justify-content:space-between;padding:7px 12px;gap:8px}.brand{color:var(--paper);text-decoration:none;font-size:13px;font-weight:900;letter-spacing:1px}.brand span{color:#d49c84;font-size:10px;margin-left:10px}.top-actions{display:flex;gap:6px}main{max-width:1080px;margin:auto;padding:0 14px 16px}.mast{display:flex;justify-content:space-between;align-items:center;margin:5px 0 12px}.mast small{font-size:11px;text-transform:uppercase;letter-spacing:2px;color:#e1ac88}.mast h1{font-family:Georgia,"Apple SD Gothic Neo",serif;font-size:27px;margin:4px 0 0}.mast>div:last-child{display:flex;gap:6px}.play-layout{display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:20px}.stage-panel{min-width:0;box-shadow:0 20px 70px #0006;border:1px solid #664250;border-radius:13px;overflow:hidden;background:#170e18}.scene-line{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;font-size:13px;border-bottom:1px solid #5f3546}.scene-line strong{font-weight:600}.scene-line span{color:var(--amber)}.stage-wrap{position:relative}canvas{display:block;width:100%;height:auto;touch-action:none}#entry{position:absolute;inset:10% 9%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:25px;background:#1c111ceF;border:1px solid #ce985e;border-radius:8px;box-shadow:0 20px 40px #0009}#entry[hidden]{display:none}#entry small{letter-spacing:3px;color:var(--amber);font-size:10px}#entry h2{font-family:Georgia,"Apple SD Gothic Neo",serif;font-size:34px;margin:12px 0}#entry p{font-size:15px;line-height:1.7;color:#e3c9bd;margin:0 0 20px}#entry button{width:100%;min-height:48px}.timing{display:flex;justify-content:space-between;gap:6px;padding:9px 12px;font-size:12px;background:#2e1b29;color:#eac5a6}.timing.clapping{background:#683722;color:#ffe1a0}.suspicion{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:11px}.suspicion label{white-space:nowrap}.suspicion meter{width:100%;height:9px;appearance:none}.suspicion meter::-webkit-meter-bar{background:#432532;border:0;border-radius:5px}.suspicion meter::-webkit-meter-optimum-value{background:linear-gradient(90deg,#f9c66e,#ed5d52)}.suspicion span{min-width:30px}aside{display:flex;flex-direction:column;gap:13px;padding-top:8px}.assignment{border-top:1px solid #82566b;padding-top:15px}.assignment>span{color:#ffce87;font-size:12px;font-weight:700}.assignment p{font-size:14px;line-height:1.6;margin:8px 0 18px;color:#ddc4c6}#props{display:flex;flex-direction:column;gap:7px}#props span{background:#36202f;padding:9px;border-radius:6px;font-size:13px}#props span.done{color:#ffc56f;border:1px solid #b37d42}#props b{display:inline-grid;place-items:center;width:22px;height:22px;border:1px solid #f1bf76;border-radius:50%;margin-right:8px;color:#ffd596}#notice{min-height:56px;font-size:13px;line-height:1.6;margin:0;padding:10px;background:#211420;border-left:3px solid #d19663}.controls{display:flex;gap:12px;align-items:center;justify-content:center}.stick-box{width:100px;flex-shrink:0;text-align:center}.stick-box small{font-size:10px;color:#bea2af}#stick{position:relative;width:96px;height:96px;touch-action:none;user-select:none;border:2px solid #886477;border-radius:50%;background:radial-gradient(#4a2d40,#241520);box-shadow:inset 0 0 10px #0005}#stick>span{position:absolute;width:43px;height:43px;left:calc(50% - 21.5px);top:calc(50% - 21.5px);border-radius:50%;background:linear-gradient(#d4a0a7,#815165);border:2px solid #f1bec3;z-index:2}#stick i{position:absolute;inset:0;display:grid;place-content:center;color:#c5a6b7;font-size:26px;font-style:normal;pointer-events:none}.action-grid{display:grid;gap:6px;flex:1}.action-grid button{font-size:12px;white-space:nowrap;padding:7px}.utility{display:flex;gap:6px}.utility button{flex:1;font-size:12px}#save-status{font-size:10px;color:#bca7b5}#guide-link{font-size:10px;color:#d6ac85;letter-spacing:1px;min-height:44px;padding:12px 0}dialog{background:#281725;color:var(--paper);border:1px solid #aa6d77;border-radius:14px;max-width:min(620px,calc(100vw - 24px));max-height:90dvh;padding:25px;box-shadow:0 20px 80px #000c}dialog::backdrop{background:#09060cc9}.close{position:absolute;right:8px;top:8px;font-size:24px;background:none;border:0}dialog h2{padding-right:32px;font-family:Georgia,"Apple SD Gothic Neo",serif}dialog p{font-size:14px;line-height:1.8;color:#e7cdd0}.dialog-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.dialog-actions button{flex:1}.level-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.level-grid button{text-align:left;font-size:12px;line-height:1.6}.level-grid b{display:block;color:var(--amber);font-size:18px}.level-grid small{display:block;color:#f9c365}.stars{font-size:38px;color:var(--amber);letter-spacing:6px}.hint{font-size:12px;color:#bfa5b4}.gamenow-exit-handle{z-index:40!important}
@media(max-width:740px){header{height:49px;padding:3px 9px}.brand span{display:none}.brand{font-size:11px}.top-actions select{max-width:94px;padding:5px;font-size:12px}main{padding:0 8px 8px}.mast{margin:2px 0 7px}.mast small{font-size:9px;letter-spacing:1px}.mast h1{font-size:20px;margin-top:2px}.mast>div:last-child{margin-right:42px;gap:4px}.play-layout{grid-template-columns:1fr;gap:6px}.stage-panel{max-width:480px;width:100%;margin:auto}.scene-line{padding:7px 10px;font-size:11px}.timing{font-size:10px;padding:7px}.suspicion{padding:5px 8px;font-size:10px}.suspicion meter{height:8px}aside{padding:0;gap:5px}.assignment{display:none}#notice{min-height:32px;padding:6px 8px;font-size:11px;line-height:1.45}.controls{gap:12px;padding:0 4px}.stick-box{width:90px}#stick{width:88px;height:88px}.stick-box small{display:none}.action-grid{grid-template-columns:1fr 1fr;gap:5px}.action-grid button{font-size:11px}#work{grid-column:1/-1}.utility{gap:5px}.utility button{min-height:44px}.utility{position:relative}#save-status{display:none}#guide-link{display:none}#entry{inset:7%;padding:16px}#entry h2{font-size:26px;margin:8px 0}#entry p{font-size:12px;line-height:1.6;margin-bottom:12px}#entry small{font-size:8px;letter-spacing:2px}.gamenow-exit-handle{top:54px!important}dialog{padding:18px}.level-grid{gap:5px}.level-grid button{padding:7px;font-size:10px}}
@media(max-width:740px) and (max-height:650px){.mast{margin:0 0 3px}.mast h1{font-size:18px}.mast small{display:none}header{height:45px}.scene-line{padding:5px 9px}.stage-wrap{max-height:calc(100dvh - 276px);min-height:210px;display:flex;justify-content:center}canvas{width:auto;max-width:100%;height:100%;aspect-ratio:640/570}.timing{padding:5px;font-size:9px}#notice{min-height:30px}.controls{gap:10px}.stick-box{width:88px}.action-grid button{font-size:10px}.gamenow-exit-handle{top:47px!important}}
@media(orientation:landscape) and (max-height:540px){header{height:44px;max-width:none;padding-right:48px}.mast{margin:0 0 5px;height:40px}.mast h1{font-size:19px}.mast small{display:none}.mast>div:last-child{margin-right:0}.play-layout{grid-template-columns:minmax(0,1fr) 265px;gap:12px}.stage-panel{max-width:none}.stage-wrap{height:calc(100dvh - 166px);min-height:150px;display:flex;justify-content:center}canvas{height:100%;width:auto;max-width:100%;aspect-ratio:640/570}.scene-line{padding:4px 10px}.timing{padding:5px 10px;font-size:10px}.suspicion{padding:5px 10px}aside{padding:0;gap:7px;max-height:calc(100dvh - 95px);overflow:auto}.assignment{display:none}#notice{min-height:46px;font-size:11px;padding:7px}.controls{gap:8px}.stick-box{width:90px}#stick{width:88px;height:88px}.action-grid{display:grid;grid-template-columns:1fr;gap:5px}.action-grid button{font-size:11px}#save-status{display:none}#guide-link{display:none}#entry{inset:3% 9%;padding:10px}#entry h2{font-size:22px;margin:4px 0}#entry small{display:none}#entry p{font-size:11px;margin:5px 0}#entry button{min-height:44px}.gamenow-exit-handle{top:2px!important}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
/* Stage composition preserves the playable floor while trimming audience rows on short screens. */
@media(min-width:741px) and (min-height:541px){main{max-width:min(980px,calc(100vw - 160px))}header{max-width:min(1020px,calc(100vw - 150px))}}
@media(max-width:740px){#gamenow-mobile-menu-launcher{top:51px!important}.stage-wrap{height:min(calc((100vw - 18px)*.890625),calc(100dvh - 382px));overflow:hidden;display:block}canvas{width:100%;height:auto;max-width:none}.stage-panel{flex-shrink:0}}
@media(max-width:740px) and (max-height:650px){.stage-wrap{height:calc(100dvh - 360px);min-height:190px;max-height:none}canvas{width:100%;height:auto;transform:translateY(-16px)}#gamenow-mobile-menu-launcher{top:45px!important}#entry{inset:5%;padding:12px}#entry p{font-size:11px}#entry h2{font-size:21px;margin:6px 0}}
@media(orientation:landscape) and (max-height:540px){main{padding-bottom:0}.stage-wrap{height:calc(100dvh - 166px);overflow:hidden;display:flex;align-items:flex-start}canvas{width:calc((100dvh - 166px)*1.65);height:auto;max-width:none;transform:translateY(-36px)}#gamenow-mobile-menu-launcher{top:2px!important}.stage-panel{margin:0}.mast>div:last-child{margin-right:0}}
