:root{color-scheme:dark;--bg:#071521;--panel:#102b3b;--line:#2c5160;--text:#edf6ef;--muted:#a0b8bc;--orange:#f6a34a;--teal:#75e3cd;font-family:Inter,"Segoe UI","Microsoft YaHei",sans-serif;color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:wait;opacity:.6}button:focus-visible,a:focus-visible{outline:3px solid var(--teal);outline-offset:4px}button{transition:background .16s,transform .16s}button:hover:not(:disabled){filter:brightness(1.12)}button:active{transform:translateY(1px)}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.screen{position:fixed;inset:0;z-index:10;overflow:auto}.menu{background:var(--bg);isolation:isolate;min-height:620px}.masthead{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;padding:32px 4.5vw;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:800;letter-spacing:2px}.brand small{display:block;font-size:10px;color:var(--muted);letter-spacing:4px;margin-top:4px}.edition{font-size:10px;letter-spacing:2px;color:var(--muted);display:flex;align-items:center;gap:12px}.edition i,.signal,.eyebrow>span{display:inline-block;width:6px;height:6px;background:var(--teal);border-radius:50%}.quiet,.secondary{border:1px solid #6a8a8d66;background:#102b3b55;border-radius:8px;padding:12px 19px;font-size:12px}.hero-art{position:absolute;inset:0;z-index:-3;background:url('art/hero.webp') 35% center/cover no-repeat}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#07152112 10%,#07152122 35%,#071521c9 62%,#071521ee),linear-gradient(0deg,#071521 0%,transparent 30%,transparent 78%,#071521aa)}.intro{position:relative;margin:7vh 6vw 150px 55%;max-width:580px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--muted);font-weight:600;line-height:1.8}.intro .eyebrow{color:var(--teal);display:flex;align-items:center;gap:10px}h1{font-size:clamp(42px,4.6vw,78px);font-weight:900;letter-spacing:-3px;line-height:1.15;margin:26px 0}h1 span{color:var(--orange)}.lead{color:#c0d0d0;font-size:15px;line-height:1.9;margin:0 0 30px}.actions{display:flex;gap:12px;flex-wrap:wrap}.primary{background:var(--orange);color:#18232b;border:0;border-radius:8px;padding:17px 24px;font-weight:800;font-size:15px;min-width:190px;display:flex;align-items:center;justify-content:space-between;gap:30px;box-shadow:0 6px 30px #f6a34a20}.primary span{font-size:22px}.secondary{display:flex;align-items:center;gap:20px}.micro,.record{font-size:10px;color:var(--muted);line-height:1.8}.mission-card{position:absolute;left:4.5vw;bottom:100px;width:350px;background:linear-gradient(135deg,#102b3beb,#081925ee);border:1px solid #5c8c9866;border-radius:14px;padding:22px;backdrop-filter:blur(15px);box-shadow:0 15px 45px #0003}.card-top{display:flex;justify-content:space-between;align-items:center}.tag{font-size:9px;letter-spacing:1px;color:var(--teal);border:1px solid #75e3cd44;padding:5px 7px;border-radius:4px}.mission-card h2{font-size:22px;margin:14px 0 8px}.mission-card p{font-size:12px;color:var(--muted);margin:0}.stats{display:flex;justify-content:space-between;margin:20px 0}.stats span{font-size:10px;color:var(--muted)}.stats b{display:block;color:var(--text);font-size:26px;font-weight:500;font-variant-numeric:tabular-nums;margin-bottom:4px}.card-bottom{border-top:1px solid var(--line);padding-top:15px;font-size:10px;color:var(--muted);display:flex;align-items:center;gap:8px}.card-bottom span:last-child{margin-left:auto;color:var(--teal)}.menu-footer{position:absolute;bottom:0;left:4.5vw;right:4.5vw;min-height:68px;display:flex;gap:24px;align-items:center;border-top:1px solid #78949b33;font-size:10px;color:var(--muted);letter-spacing:1px}.menu-footer>a{margin-left:auto}.text-button{border:0;background:transparent;padding:10px 0;font-size:inherit;color:var(--muted)}#world{z-index:0}#hud{position:fixed;inset:0;z-index:3;pointer-events:none}#hud button{pointer-events:auto}.panel{position:absolute;top:max(20px,env(safe-area-inset-top));border:1px solid #60889577;border-radius:10px;background:#071521dd;box-shadow:0 10px 20px #0002;backdrop-filter:blur(8px);padding:12px 18px}.hud-left{left:24px;min-width:155px}.hud-task{left:50%;transform:translateX(-50%);text-align:center;min-width:210px}.panel strong{display:block;font-size:16px;margin-top:3px}.hud-right{right:24px;min-width:170px;padding-right:64px}.hud-right button{position:absolute;right:12px;top:16px;width:40px;height:40px;background:#214252;border:1px solid var(--line);border-radius:8px}.core-dots{display:flex;justify-content:center;gap:7px;margin-top:8px}.core-dots i{width:16px;height:4px;background:#315361;border-radius:3px}.core-dots i.active{background:var(--teal);box-shadow:0 0 10px #75e3cd77}#health{display:flex;gap:5px;margin-top:8px}#health i{width:20px;height:9px;background:var(--orange);transform:skewX(-10deg)}#health i.empty{background:#294453}.objective{position:absolute;top:130px;left:50%;transform:translateX(-50%);padding:8px 14px;border-radius:30px;font-size:12px;color:var(--teal);background:#071521b0;white-space:nowrap}.keyboard-tip{position:absolute;left:24px;bottom:24px;font-size:11px;color:#c0d4d4;background:#071521b0;padding:10px;border-radius:6px}kbd{font:11px inherit;border:1px solid #557681;padding:2px 5px;border-radius:4px;margin:0 3px}.clock{position:absolute;right:24px;bottom:24px;color:var(--muted);font:12px monospace}.extract{position:absolute;left:50%;bottom:80px;transform:translateX(-50%);border:0;background:var(--teal);color:var(--bg);padding:16px 30px;font-weight:800;border-radius:10px}.toast{position:absolute;left:50%;bottom:135px;transform:translateX(-50%);font-size:13px;color:var(--orange);text-align:center;background:#071521dd;border-radius:8px;padding:10px 20px}.toast:empty{display:none}.modal{position:fixed;inset:0;z-index:30;display:grid;place-items:center;background:#020d17bb;backdrop-filter:blur(10px);padding:20px}.dialog{position:relative;background:linear-gradient(145deg,#163547,#0a1d2b);border:1px solid #426577;border-radius:20px;padding:35px;max-width:560px;width:100%;max-height:90dvh;overflow:auto;box-shadow:0 30px 100px #0008}.dialog h2{font-size:30px;margin:8px 0 20px}.dialog p{font-size:13px;line-height:1.9;color:var(--muted)}.dialog .close{position:absolute;right:16px;top:14px;width:38px;height:38px;font-size:24px;background:transparent;border:1px solid var(--line);border-radius:50%}.dialog-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.dialog-actions button{min-height:44px}.setting{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px}.setting input{width:23px;height:23px;accent-color:var(--teal)}.result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.result-grid>div{padding:18px 8px;background:#07152188;border-radius:9px;text-align:center;color:var(--muted);font-size:11px}.result-grid b{display:block;font-size:25px;color:var(--teal);margin-bottom:8px}.score{font-size:48px;font-weight:800;color:var(--orange);margin:20px 0 0}.touch-controls{display:none;position:absolute;inset:auto 18px max(16px,env(safe-area-inset-bottom)) 18px;justify-content:space-between;align-items:end;gap:12px}.touch-controls button{touch-action:none;user-select:none;border:1px solid #63869399;background:#0d293bd9;border-radius:14px;min-width:52px;min-height:52px;font-size:12px}.touch-move,.touch-actions{display:flex;gap:8px;align-items:end}.touch-actions .fire{background:#d98c3ddd;border-color:var(--orange);font-weight:800}.touch-actions button:nth-child(3){height:64px}.touch-actions .fire{height:74px;min-width:66px}#rotate-hint{display:none}.artbook{max-width:1200px;margin:auto;padding:30px 35px 80px}.artbook header{display:flex;justify-content:space-between;align-items:center}.artbook h1{font-size:50px;letter-spacing:-2px;margin-top:65px}.artbook .intro-copy{color:var(--muted);max-width:700px;line-height:1.9}.art-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:35px}.art-card{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--panel)}.art-card img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.art-card div{padding:18px}.art-card h2{font-size:17px;margin:0 0 6px}.art-card p{font-size:12px;color:var(--muted);line-height:1.7}.audio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.audio-item{background:var(--panel);border:1px solid var(--line);padding:16px;border-radius:10px;font-size:13px}.audio-item audio{width:100%;height:34px;margin-top:12px}.audio-item a{font-size:11px;color:var(--teal)}.provenance{border:1px solid var(--line);padding:20px;border-radius:12px;line-height:1.9;color:var(--muted);font-size:12px;margin-top:40px}.provenance a{color:var(--teal)}
@media(pointer:coarse){.touch-controls{display:flex}.keyboard-tip{display:none}.clock{bottom:110px}.objective{top:112px}}@media(max-width:900px){.masthead{padding:20px 25px}.edition{display:none}.intro{margin-top:9vh;margin-left:51%;margin-right:24px}h1{font-size:48px}.mission-card{width:290px;bottom:95px;left:25px;padding:18px}.menu-footer{left:25px;right:25px;gap:14px}.menu-footer>span{display:none}.menu-footer>a{margin-left:0}.menu-footer button{margin-left:auto}.hud-left{left:12px;min-width:125px}.hud-right{right:12px;min-width:135px}.panel{padding:8px 12px}.hud-right{padding-right:54px}.hud-task{min-width:155px}.panel strong{font-size:13px}.eyebrow{font-size:9px}.hud-right button{top:8px}#health i{width:14px}.audio-grid{grid-template-columns:1fr 1fr}}@media(max-height:650px) and (min-width:650px){.menu{min-height:390px}.masthead{padding:18px 28px}.intro{margin-top:10px;margin-bottom:90px}h1{font-size:40px;margin:16px 0}.lead{font-size:12px;margin-bottom:17px}.mission-card{bottom:70px;width:280px;padding:16px}.mission-card h2{font-size:18px}.stats{margin:12px 0}.stats b{font-size:20px}.menu-footer{min-height:48px}.micro{margin:6px 0}.record{display:none}.primary{padding:12px 18px;min-width:170px}.objective{top:90px;font-size:10px}.panel{top:10px}.dialog{padding:25px}.dialog h2{font-size:24px}}@media(max-width:600px){.menu{min-height:820px}.hero-art{background-position:27% top;background-size:auto 65%;background-repeat:no-repeat}.hero-shade{background:linear-gradient(0deg,#071521 32%,#07152188 56%,#07152111 84%,#07152199)}.masthead{padding:18px}.brand{font-size:14px;gap:8px}.brand small{font-size:9px}.quiet{font-size:10px;padding:10px}.intro{margin:280px 24px 250px;max-width:none}h1{font-size:44px;line-height:1.1;letter-spacing:-2px;margin:15px 0}.intro h1 br{display:none}.lead{font-size:12px;margin-bottom:20px}.intro .eyebrow{font-size:9px}.primary{min-width:175px;padding:14px 18px;font-size:13px}.secondary{padding:12px;font-size:11px}.mission-card{left:24px;right:24px;width:auto;bottom:75px;padding:17px}.mission-card h2{font-size:18px;margin:8px 0}.stats{margin:12px 0}.stats b{font-size:22px}.menu-footer{font-size:9px;left:24px;right:24px}.hud-left{min-width:100px;left:8px}.hud-right{right:8px;min-width:105px;padding-right:42px}.hud-right button{width:30px;height:36px;right:6px}.hud-task{top:95px;min-width:170px}.objective{top:185px;font-size:10px;max-width:95vw;white-space:normal;text-align:center}.panel .eyebrow{letter-spacing:1px}#health{gap:3px}#health i{width:12px}.touch-controls{left:8px;right:8px;display:flex;gap:5px}.touch-controls button{min-width:48px;min-height:48px;font-size:10px;border-radius:10px}.touch-move,.touch-actions{gap:4px}.touch-actions .fire{min-width:48px;height:65px}.touch-actions button:nth-child(3){height:56px}.keyboard-tip{display:none}.extract{bottom:110px}.toast{bottom:165px;min-width:220px}.artbook{padding:25px 18px}.artbook h1{font-size:36px}.art-grid,.audio-grid{grid-template-columns:1fr}.dialog{padding:26px 22px}.dialog h2{font-size:25px}#rotate-hint{position:fixed;display:block;bottom:0;left:0;right:0;z-index:4;text-align:center;font-size:9px;color:var(--muted);pointer-events:none;background:#07152188;padding:3px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Compact landscape touch layout */
@media(max-width:900px) and (max-height:500px){.touch-controls{display:flex}.keyboard-tip{display:none}.clock{bottom:108px}.toast{bottom:108px}.objective{top:95px}.panel{top:max(10px,env(safe-area-inset-top))}}

/* Flow-based portrait menu */
@media(max-width:600px){.intro{margin:280px 24px 24px}.mission-card{position:relative;left:auto;right:auto;bottom:auto;width:auto;margin:24px}.menu-footer{position:relative;left:auto;right:auto;bottom:auto;margin:0 24px;min-height:68px}.menu{padding-bottom:12px}}
