:root{
  --night:#07101f;--panel:#0c1a2d;--panel-2:#10233a;--ink:#eef7ff;--muted:#8ca2b9;
  --cyan:#54e7ff;--blue:#2f78ff;--red:#ff536c;--amber:#ffc857;--green:#66f0a6;
  --line:#203853;--shadow:#02060d;--radius:18px;
  font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;color:var(--ink);
  background:var(--night);font-synthesis:none;
}
*{box-sizing:border-box}html{background:var(--night);scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(circle at 50% -15%,#153458 0,transparent 42%),var(--night);color:var(--ink);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}a{color:inherit}.topbar{height:72px;max-width:1240px;margin:auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(84,231,255,.15)}.brand{display:flex;align-items:center;gap:11px;text-decoration:none}.brand-clock{display:flex;align-items:flex-end;justify-content:center;width:48px;height:43px;padding:4px 5px;border:1px solid #3b7297;border-radius:9px;background:#0d2035;box-shadow:inset 0 0 16px rgba(84,231,255,.11),0 3px 0 #020811;font:800 18px/1 ui-monospace,monospace;color:var(--cyan)}.brand-clock span{font-size:10px;margin:0 0 2px 1px;color:#83a9c4}.brand>span:last-child{display:grid}.brand strong{font-size:15px;letter-spacing:1.8px}.brand small{font-size:10px;color:var(--muted);margin-top:1px}.top-actions{display:flex;align-items:center;gap:9px}.live-pill{display:flex;align-items:center;gap:6px;font-size:12px;color:#90a7bd}.live-pill i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 8px var(--green)}.top-button{border:1px solid #29445e;border-radius:999px;background:#0b1a2a;padding:7px 12px;font-size:12px;text-decoration:none}.top-button:hover{border-color:#4c7b9b;background:#10243a}main{max-width:1240px;margin:auto;padding:24px}.game-shell{border:1px solid #27455f;border-radius:24px;background:#091421;box-shadow:0 24px 80px rgba(0,0,0,.45);overflow:hidden}.hud{min-height:82px;display:grid;grid-template-columns:150px 1fr 220px;align-items:center;gap:28px;padding:14px 22px;background:linear-gradient(180deg,#10243a,#0b1a2b);border-bottom:1px solid #284760}.hud span,.hud small{color:#8ca4b9;font-size:11px;letter-spacing:.5px}.hud-clock span{display:block;text-transform:uppercase}.hud-clock strong{display:block;font:900 29px/1.1 ui-monospace,monospace;color:var(--cyan);text-shadow:0 0 18px rgba(84,231,255,.35);margin-top:2px}.objective>span{display:block;color:#dbeaff;font-size:12px;font-weight:750;margin-bottom:7px}.time-track,.suspicion-track{height:8px;border-radius:99px;background:#07101b;box-shadow:inset 0 1px 3px #000;overflow:hidden}.time-track i,.suspicion-track i{display:block;height:100%;width:100%;background:linear-gradient(90deg,var(--cyan),#58a5ff);border-radius:99px;transition:width .15s}.suspicion>div:first-child{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}.suspicion b{font:800 13px ui-monospace,monospace}.suspicion small{display:block;margin-top:4px;font-size:10px}.suspicion-track i{width:0;background:linear-gradient(90deg,var(--amber),var(--red));box-shadow:0 0 12px rgba(255,83,108,.65)}.stage-wrap{position:relative;aspect-ratio:8/5;max-height:calc(100vh - 225px);min-height:420px;background:#07101f;overflow:hidden}.stage-wrap canvas{display:block;width:100%;height:100%;object-fit:contain;image-rendering:auto}.scanlines{position:absolute;inset:0;pointer-events:none;opacity:.08;background:repeating-linear-gradient(0deg,transparent 0 3px,#77d8ff 3px 4px);mix-blend-mode:screen}.overlay{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;width:min(640px,calc(100% - 64px));margin:auto;padding:42px 46px;border:1px solid #416483;border-radius:24px;background:linear-gradient(145deg,rgba(9,22,38,.97),rgba(5,12,23,.98));box-shadow:0 24px 80px rgba(0,0,0,.75),inset 0 0 45px rgba(51,131,191,.08);backdrop-filter:blur(6px)}.overlay[hidden],.tutorial-card[hidden],.floating-tip[hidden]{display:none}.title-stamp,.result-kicker,.dialog-kicker{font:800 11px/1.3 ui-monospace,monospace;letter-spacing:2px;color:var(--cyan)}.start-overlay h1{font-size:clamp(37px,5vw,60px);letter-spacing:-2.8px;line-height:1.04;margin:15px 0}.start-overlay h1 em{font-style:normal;color:var(--cyan);text-shadow:0 0 24px rgba(84,231,255,.22)}.lead{max-width:540px;margin:0 0 20px;color:#adc1d2;font-size:15px}.brief-grid{width:100%;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #294862;border-radius:13px;overflow:hidden;margin-bottom:14px}.brief-grid>div{padding:11px 13px;border-right:1px solid #294862;background:#0d1c2c}.brief-grid>div:last-child{border:0}.brief-grid span,.brief-grid strong{display:block}.brief-grid span{font-size:10px;color:#7791a7}.brief-grid strong{font-size:12px;margin-top:3px}.rules{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:7px;margin-bottom:18px}.rules>div{display:flex;align-items:center;gap:8px;font-size:11px;color:#9bb0c2}.rules kbd{min-width:58px;text-align:center;border:1px solid #47657e;border-bottom-width:3px;border-radius:6px;background:#13283d;padding:5px 7px;font:700 10px ui-monospace,monospace;color:#e6f5ff}.primary-button,.secondary-button{width:100%;min-height:50px;border-radius:12px;padding:12px 16px;font-weight:850;border:1px solid #76edff;transition:transform .15s,box-shadow .15s,background .15s}.primary-button{display:flex;align-items:center;justify-content:space-between;background:var(--cyan);color:#06121f;box-shadow:0 5px 0 #167893,0 0 22px rgba(84,231,255,.18)}.primary-button:hover{transform:translateY(-2px);box-shadow:0 7px 0 #167893,0 0 28px rgba(84,231,255,.26)}.primary-button:active{transform:translateY(4px);box-shadow:0 1px 0 #167893}.secondary-button{border-color:#365a77;background:#102238}.secondary-button:hover{background:#17304b;border-color:#4d7897}.microcopy{width:100%;text-align:center;color:#6f8699;font-size:10px;margin:12px 0 0}.challenge-note{width:100%;border-left:3px solid var(--amber);background:#2a2417;color:#e5d5a8;padding:10px 12px;border-radius:7px;margin-bottom:13px;font-size:12px}.compact{align-items:center;text-align:center;width:300px;height:260px;padding:30px}.compact p{font-size:12px;color:#9cb0c2;margin:0}.compact strong{font:900 100px/.9 ui-monospace,monospace;color:var(--cyan);text-shadow:0 0 30px rgba(84,231,255,.45);margin:17px 0}.compact span{font-size:12px;color:#9cb0c2}.tutorial-card{position:absolute;z-index:4;right:18px;top:18px;width:270px;border:1px solid #3c739a;border-radius:14px;padding:14px 15px;background:rgba(7,17,29,.94);box-shadow:0 12px 35px rgba(0,0,0,.45)}.tutorial-card>span{display:block;color:var(--cyan);font:800 10px ui-monospace,monospace}.tutorial-card strong{font-size:15px}.tutorial-card p{font-size:11px;color:#9db0c1;margin:4px 0 9px}.tutorial-card button{border:0;background:transparent;padding:0;color:#6f8aa0;font-size:10px;text-decoration:underline}.floating-tip{position:absolute;z-index:3;left:50%;bottom:20px;transform:translateX(-50%);padding:8px 13px;border:1px solid #47657d;border-radius:999px;background:rgba(7,17,29,.9);font-size:11px;color:#d7e9f6;white-space:nowrap}.result-overlay{width:min(590px,calc(100% - 64px));align-items:stretch;padding:36px 42px}.result-overlay.win{border-color:#4fdca1}.result-overlay.win .result-kicker{color:var(--green)}.result-overlay.lose{border-color:#a64155}.result-overlay.lose .result-kicker{color:var(--red)}.result-overlay h2{font-size:clamp(30px,4.5vw,49px);letter-spacing:-2px;line-height:1.08;margin:10px 0 9px}.result-body{font-size:13px;color:#9fb4c5;margin:0 0 17px}.result-time{display:flex;justify-content:space-between;align-items:end;border-top:1px solid #29435a;border-bottom:1px solid #29435a;padding:13px 0}.result-time span{font-size:11px;color:#8da5b8}.result-time strong{font:900 34px/1 ui-monospace,monospace;color:var(--cyan)}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:13px 0}.result-stats div{border:1px solid #29445c;border-radius:9px;padding:9px;background:#0c1c2d}.result-stats span,.result-stats strong{display:block}.result-stats span{font-size:9px;color:#718ca2}.result-stats strong{font-size:12px;margin-top:2px}.result-overlay blockquote{margin:0 0 14px;padding:10px 13px;border-left:3px solid var(--cyan);background:#0d2032;border-radius:0 8px 8px 0;font-size:12px;color:#d8e7f1}.result-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.share-status{text-align:center;min-height:15px;margin:8px 0 0;color:#88a1b4;font-size:10px}.mobile-controls{display:none}.legend{min-height:50px;display:flex;align-items:center;gap:22px;padding:10px 20px;border-top:1px solid #254158;background:#0b1928;color:#8fa6b9;font-size:11px}.legend span{display:flex;align-items:center;gap:7px}.legend i{display:inline-block;width:13px;height:13px;border-radius:4px}.legend-player{background:var(--cyan);box-shadow:0 0 8px var(--cyan)}.legend-view{background:rgba(255,83,108,.62)}.legend-hide{border:1px solid #5ab4ff;background:rgba(47,120,255,.25)}.legend-exit{background:var(--green);box-shadow:0 0 8px rgba(102,240,166,.5)}.legend button{margin-left:auto;border:0;background:transparent;color:#9eb5c7;text-decoration:underline;font-size:11px}.story-strip{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:64px 30px 55px}.story-strip span{display:block;color:#708ba1;font-size:11px;letter-spacing:1.2px;text-transform:uppercase}.story-strip strong{display:block;margin-top:8px;font-size:clamp(24px,3vw,38px);letter-spacing:-1.3px}.story-strip p{align-self:end;color:#829bae;font-size:14px;margin:0}footer{display:flex;justify-content:space-between;max-width:1180px;margin:auto;padding:20px 0 34px;border-top:1px solid #182c40;color:#688298;font-size:11px}footer div{display:flex;gap:18px}footer button{border:0;background:transparent;padding:0;color:inherit}footer a{text-decoration:none}dialog{position:relative;max-width:520px;border:1px solid #41627d;border-radius:18px;padding:30px;background:#0b1b2d;color:#e7f4ff;box-shadow:0 20px 80px #000}dialog::backdrop{background:rgba(1,5,11,.78)}dialog h2{font-size:28px;line-height:1.15;margin:10px 0 14px}dialog p{color:#9eb1c1;font-size:13px}.dialog-close{position:absolute;right:13px;top:9px;border:0;background:transparent;font-size:26px}.noscript{position:fixed;z-index:99;inset:10px auto auto 10px;padding:13px;background:#321722;border:1px solid var(--red)}
@media(max-width:760px){body{touch-action:pan-y}.topbar{height:62px;padding:0 13px}.brand-clock{width:43px;height:38px}.brand small,.live-pill,.desktop-only{display:none}main{padding:8px}.game-shell{border-radius:15px}.hud{min-height:68px;grid-template-columns:76px 1fr 105px;gap:9px;padding:9px}.hud-clock strong{font-size:20px}.objective>span{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.suspicion small{display:none}.suspicion>div:first-child span{font-size:9px}.stage-wrap{min-height:0;max-height:none;aspect-ratio:8/5}.overlay{width:calc(100% - 20px);padding:18px 18px;border-radius:14px;justify-content:center}.title-stamp{font-size:8px}.start-overlay h1{font-size:29px;letter-spacing:-1.4px;margin:8px 0}.lead{font-size:11px;line-height:1.35;margin-bottom:9px}.brief-grid{margin-bottom:8px}.brief-grid>div{padding:6px}.brief-grid span{font-size:8px}.brief-grid strong{font-size:9px}.rules{grid-template-columns:1fr 1fr;gap:3px;margin-bottom:8px}.rules>div{font-size:8px;gap:4px}.rules kbd{min-width:43px;padding:3px;font-size:8px}.primary-button,.secondary-button{min-height:38px;padding:7px 10px;font-size:12px}.microcopy{margin-top:6px;font-size:8px}.compact{width:210px;height:170px}.compact strong{font-size:65px;margin:8px 0}.tutorial-card{top:7px;right:7px;width:210px;padding:8px}.tutorial-card strong{font-size:11px}.tutorial-card p{font-size:9px;margin:2px 0 4px}.result-overlay{padding:15px}.result-overlay h2{font-size:27px}.result-body{font-size:10px;margin-bottom:7px}.result-time{padding:7px 0}.result-time strong{font-size:25px}.result-stats{margin:7px 0}.result-stats div{padding:5px}.result-overlay blockquote{padding:6px 8px;margin-bottom:8px;font-size:9px}.result-actions{gap:6px}.mobile-controls{display:flex;min-height:146px;justify-content:space-between;align-items:center;padding:9px 14px;background:#081522;border-top:1px solid #254157;user-select:none;touch-action:none}.dpad{position:relative;width:124px;height:124px}.dpad button,.action-pad button{position:absolute;border:1px solid #365975;background:#10263a;box-shadow:0 3px 0 #03101b;color:#cbe3f2}.dpad button.active,.action-pad button.active{transform:translateY(2px);background:#1e4565;box-shadow:0 1px 0 #03101b}.dpad button{width:42px;height:42px;border-radius:9px;font-size:13px}.dpad [data-key=up]{left:41px;top:0}.dpad [data-key=left]{left:0;top:41px}.dpad [data-key=down]{left:41px;top:82px}.dpad [data-key=right]{left:82px;top:41px}.action-pad{position:relative;width:172px;height:115px}.action-pad button{width:52px;height:52px;border-radius:50%;display:grid;place-content:center;line-height:1}.action-pad b{font-size:15px}.action-pad span{font-size:8px;color:#82a1b8;margin-top:3px}.action-pad .hide-button{left:0;top:42px;border-color:#397fd4}.action-pad .decoy-button{left:60px;top:2px;border-color:#cb9e3b}.action-pad .run-button{right:0;top:52px;border-color:#bf4d60}.legend{display:none}.story-strip{grid-template-columns:1fr;padding:38px 15px;gap:15px}.story-strip strong{font-size:25px}.story-strip p{font-size:12px}footer{padding:16px;display:block}footer div{margin-top:8px}.challenge-note{padding:6px;font-size:9px;margin-bottom:6px}}
@media(max-width:390px){.start-overlay h1{font-size:25px}.lead{display:none}.rules{margin-bottom:6px}.brief-grid{margin-bottom:6px}.mobile-controls{padding-left:8px;padding-right:8px}.action-pad{transform:scale(.92);transform-origin:right center}.result-overlay h2{font-size:23px}.result-stats{gap:4px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.brand-symbol{width:47px;height:47px;overflow:visible;filter:drop-shadow(0 4px 0 #020811)}
.brand-symbol .logo-door{fill:#0d2035;stroke:#54e7ff;stroke-width:2.5}
.brand-symbol .logo-arrow{fill:none;stroke:#66f0a6;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
.brand-symbol circle{fill:#ffc857}
.legend-stairs{background:#a976ff;box-shadow:0 0 8px rgba(169,118,255,.5)}
.result-stats{grid-template-columns:repeat(4,1fr)}
@media(max-width:760px){.brand-symbol{width:42px;height:42px}.result-stats{grid-template-columns:repeat(2,1fr)}}
.stage-wrap canvas{touch-action:none;cursor:crosshair}
.stage-wrap.danger{box-shadow:inset 0 0 90px rgba(255,83,108,.28)}
@media(min-width:761px){
  .start-overlay{inset:22px auto 22px 22px;width:min(520px,52%);margin:0;padding:28px 32px;background:linear-gradient(145deg,rgba(9,22,38,.91),rgba(5,12,23,.95));backdrop-filter:blur(9px)}
  .start-overlay h1{font-size:clamp(36px,4.2vw,54px);margin:11px 0}
  .start-overlay .lead{font-size:14px;margin-bottom:14px}
  .start-overlay .rules{margin-bottom:13px}
}
