:root{color:#1a1510;font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;line-height:1.4}*{box-sizing:border-box}html,body,#root{background:#1e1a16;width:100%;height:100%;margin:0;overflow:hidden}.app{width:100%;height:100%;position:relative}.hud{pointer-events:none;z-index:10;position:absolute;inset:0}.top-bar{color:#fff8f0;background:linear-gradient(#14100c8c,#0000);align-items:center;gap:16px;padding:16px 20px;display:flex}.pause-btn{pointer-events:auto;color:#fff8f0;cursor:pointer;background:#1e1812bf;border:1px solid #ffffff40;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:16px;transition:background .15s;display:flex}.pause-btn:hover{background:#32281ed9}.meter{align-items:center;gap:8px;min-width:160px;display:flex}.meter span{opacity:.9;width:28px;font-size:12px}.bar{background:#fff3;border-radius:999px;flex:1;height:10px;overflow:hidden}.fill{height:100%;transition:width .1s linear}.fill.hp{background:#5ecf7a}.fill.xp{background:#6ec0ff}.fill.threat{background:#f0c14a}.threat-soft .fill.threat{background:#f08a3a}.threat-hard .fill.threat{background:#e23b3b}.meta{font-variant-numeric:tabular-nums;gap:12px;margin-left:auto;display:flex}.phase{text-transform:uppercase;opacity:.7;letter-spacing:.06em;font-size:12px}.skills{pointer-events:auto;gap:10px;display:flex;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}.skill{pointer-events:auto;color:#fff8f0;cursor:pointer;background:#1e1812bf;border:1px solid #ffffff40;border-radius:10px;flex-direction:column;align-items:center;gap:4px;min-width:72px;padding:10px 12px;display:flex}.skill.cd{opacity:.55}.skill.locked{opacity:.35;filter:grayscale(.8)}.skill kbd{opacity:.7;font-size:11px}.skill em{color:#f0c14a;font-size:11px;font-style:normal}.hint{color:#fff8f0a6;white-space:nowrap;margin:0;font-size:11px;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.edge-cue{color:#f55;text-shadow:0 0 8px #00000080;transform-origin:0 120px;pointer-events:none;width:0;height:0;font-size:28px;position:absolute;top:50%;left:50%}.prop-cue{color:gold;transform-origin:0 100px;opacity:.8;font-size:22px;animation:1s ease-in-out infinite alternate prop-pulse}@keyframes prop-pulse{0%{opacity:.5}to{opacity:1}}.death{pointer-events:auto;color:#fff8f0;-webkit-overflow-scrolling:touch;background:#0c0806b8;flex-direction:column;justify-content:safe center;align-items:center;gap:8px;padding:16px;display:flex;position:absolute;inset:0;overflow-y:auto}.death h1{margin:0 0 8px;font-size:42px;font-weight:700}.title-badge{color:#f0c14a;margin:4px 0 12px;font-size:28px}.restart{opacity:.8}.death button{color:#1a1510;cursor:pointer;background:#f0c14a;border:none;border-radius:8px;margin-top:8px;padding:10px 22px;font-weight:700}.hud.danger:before{content:"";pointer-events:none;animation:.7s ease-in-out infinite alternate danger-pulse;position:absolute;inset:0;box-shadow:inset 0 0 80px #b4141473}@keyframes danger-pulse{0%{opacity:.55}to{opacity:1}}.toast{color:#fff8f0;background:#14100cb3;border-radius:8px;padding:8px 14px;font-size:14px;animation:.15s ease-out toast-in;position:absolute;top:72px;left:50%;transform:translate(-50%)}.toast.ok{background:#285a32d9}.toast.fail{background:#6e281ee0}.toast.levelup{color:#fff8e0;background:#b48c14d9;border:2px solid gold;font-size:18px;font-weight:700;box-shadow:0 0 20px #ffd70080}@keyframes toast-in{0%{opacity:0;transform:translate(-50%)translateY(-6px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.hud.threat-pulse .top-bar{box-shadow:inset 0 0 40px #e23b3b40}.self-noise{color:#f86;font-size:12px}.population{opacity:.85;font-variant-numeric:tabular-nums;font-size:12px}.boss-cue{color:#f44;letter-spacing:.08em;font-size:12px;font-weight:700;animation:.6s ease-in-out infinite alternate boss-blink}@keyframes boss-blink{0%{opacity:1}to{opacity:.5}}.hud-nausea{pointer-events:auto;opacity:.9;cursor:pointer;white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:flex}.toast.guide{text-align:center;background:#1e283cd1;max-width:min(520px,90vw)}.skill-slap.ready{border-color:#ffdd668c}.skill-tape.ready{border-color:#c8c8c88c}.skill-megaphone.ready{border-color:#ff66448c}.skill-gag.ready{border-color:#9b6bff8c}.briefing{pointer-events:auto;z-index:20;background:#0c0806c7;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0;overflow:hidden}.briefing-card{color:#fff8f0;-webkit-overflow-scrolling:touch;background:linear-gradient(160deg,#2a221c 0%,#1a1510 100%);border-radius:14px;width:min(720px,100%);max-height:100%;padding:28px 28px 20px;overflow-y:auto;box-shadow:0 20px 50px #00000073}.briefing-header{justify-content:space-between;align-items:center;gap:12px;margin:0 0 10px;display:flex}.briefing-header h1{flex:1;margin:0;font-size:26px;font-weight:700;line-height:1.25}.lang-btn{color:#fff8f0;cursor:pointer;background:#282018cc;border:1px solid #ffffff4d;border-radius:6px;flex-shrink:0;padding:6px 12px;font-size:12px;font-weight:600;transition:background .15s,border-color .15s}.lang-btn:hover{background:#3c3024e6;border-color:#ffffff80}.donation-btn{color:gold;cursor:pointer;white-space:nowrap;background:#ffd7001f;border:1px solid #ffd70066;border-radius:8px;flex-shrink:0;padding:8px 14px;font-size:13px;transition:background .15s}.donation-btn:hover{background:#ffd70033}.briefing .lede{opacity:.9;margin:0 0 8px;font-size:14px}.briefing h2{opacity:.95;margin:14px 0 8px;font-size:15px;font-weight:600}.skill-list{grid-template-columns:1fr 1fr;gap:8px 14px;margin:0;padding:0;list-style:none;display:grid}.skill-list li{background:#ffffff0d;border-radius:8px;padding:10px 12px}.skill-name{align-items:center;gap:8px;margin-bottom:4px;display:flex}.skill-icon-wrap{color:#1a1510;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.skill-icon-slap{color:#fff8f0;background:#1a3a6c}.skill-icon-tape{background:#d8d8d8}.skill-icon-megaphone{background:#ff8a6a}.skill-icon-gag{background:#b894ff}.skill .skill-icon-wrap{width:28px;height:28px;margin-bottom:2px}.skill .skill-icon-wrap svg{width:18px;height:18px}.skill-name kbd{opacity:.7;border:1px solid #ffffff40;border-radius:4px;padding:1px 5px;font-size:11px}.skill-list .skill-desc{flex-direction:column;gap:1px;margin:0;font-size:12px;display:flex}.skill-list .pro{color:#9ddeb0}.skill-list .con{color:#f0b090}.skill-name .unlock{color:#f0c14a;opacity:.85;margin-left:auto;font-size:10px;font-style:normal}.skill-list .perks{color:#6ec0ff;margin-top:1px;font-size:11px}.nausea-toggle{cursor:pointer;align-items:center;gap:8px;margin:16px 0 14px;font-size:13px;display:flex}.briefing-go{color:#1a1510;cursor:pointer;background:#f0c14a;border:none;border-radius:10px;width:100%;padding:12px 16px;font-size:16px;font-weight:700}.briefing-go:hover{filter:brightness(1.05)}.briefing-foot{opacity:.65;text-align:center;margin:12px 0 0;font-size:12px}.skill-icon-poop{color:#fff8f0;background:#1a4d2e}.skill-icon-civility{background:gold}.donation-trigger{color:gold;cursor:pointer;background:0 0;border:1px solid #ffd70066;border-radius:8px;width:100%;margin:8px 0;padding:8px 16px;font-size:13px;display:block}.donation-trigger:hover{background:#ffd70014}.donation-modal{pointer-events:auto;z-index:30;background:#0c0806cc;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.donation-card{color:#fff8f0;text-align:center;-webkit-overflow-scrolling:touch;background:linear-gradient(160deg,#2a221c 0%,#1a1510 100%);border-radius:14px;width:min(440px,100%);max-height:100%;padding:24px;overflow-y:auto}.donation-card h2{margin:0 0 12px;font-size:20px}.donation-lede{opacity:.85;margin:0 0 20px;font-size:13px;line-height:1.5}.donation-lede p{text-align:justify;margin:0 0 10px}.donation-link{text-align:center;border-radius:10px;width:100%;margin-bottom:10px;padding:12px 16px;font-size:15px;font-weight:600;text-decoration:none;display:block}.donation-link.afdian{color:#fff;background:#9468ff}.donation-link.kofi{color:#fff;background:#ff5e5b}.donation-close{color:#fff8f0;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:8px;width:100%;margin-top:8px;padding:10px;font-size:14px}.donation-qr{border:1px solid #ffffff26;border-radius:8px;width:120px;height:120px;margin:12px auto 0;display:block}.touch-controls{pointer-events:none;z-index:15;display:none;position:absolute;inset:0}@media (hover:none) and (pointer:coarse){.touch-controls{display:block}}.joystick-zone{pointer-events:auto;touch-action:none;width:45%;height:60%;position:absolute;bottom:0;left:0}.touch-actions{right:max(16px, env(safe-area-inset-right));bottom:max(20px, env(safe-area-inset-bottom));pointer-events:auto;flex-direction:column;gap:12px;display:flex;position:absolute}.touch-btn{color:#fff8f0;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;cursor:pointer;background:#1e1812b3;border:2px solid #ffffff4d;border-radius:50%;width:60px;height:60px;font-size:14px;font-weight:600}.touch-btn:active{background:#3c3228d9}.touch-btn:disabled{opacity:.4}@media (hover:none) and (pointer:coarse){.top-bar{padding:max(8px, env(safe-area-inset-top)) 12px 8px;gap:8px}.meter{min-width:100px}.meter span{font-size:10px}.meta{gap:8px;font-size:11px}.hud-nausea{display:none}.skills{bottom:max(12px, env(safe-area-inset-bottom));right:max(12px, env(safe-area-inset-right));flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:198px;left:auto;transform:none}.skill{touch-action:manipulation;-webkit-tap-highlight-color:transparent;border-radius:50%;flex-direction:column;justify-content:center;width:54px;min-width:54px;height:54px;padding:4px;position:relative}.skill kbd,.skill-label{display:none}.skill .skill-icon-wrap{width:30px;height:30px;margin:0}.skill .skill-icon-wrap svg{width:20px;height:20px}.skill em{background:#000000bf;border-radius:999px;padding:1px 5px;font-size:9px;font-style:normal;line-height:1.2;position:absolute;bottom:-3px;right:-3px}.touch-actions{bottom:calc(max(12px, env(safe-area-inset-bottom)) + 124px);right:max(12px, env(safe-area-inset-right));flex-direction:row;gap:8px}.touch-btn{width:54px;height:54px;font-size:12px}.hint{display:none}.briefing{padding:10px}.briefing-card{-webkit-overflow-scrolling:touch;max-height:100%;padding:14px 14px 12px;overflow-y:auto}.briefing-header{gap:8px;margin-bottom:6px}.briefing-header h1{font-size:18px}.lang-btn{padding:4px 8px;font-size:11px}.donation-btn{padding:6px 10px;font-size:12px}.briefing .lede{margin-bottom:4px;font-size:11px}.briefing h2{margin:8px 0 4px;font-size:13px}.skill-list{grid-template-columns:1fr 1fr;gap:4px}.skill-list li{padding:6px 8px}.skill-icon-wrap{width:26px;height:26px}.skill-list .skill-desc{font-size:11px}.skill-list .perks{font-size:10px}.nausea-toggle{margin:8px 0;font-size:12px}.briefing-go{padding:10px 16px;font-size:15px}.briefing-foot{margin-top:6px;font-size:10px}.death h1{font-size:28px}.title-badge{font-size:20px}.donation-modal{padding:12px}.donation-card{-webkit-overflow-scrolling:touch;max-height:100%;padding:16px;overflow-y:auto}.donation-qr{width:90px;height:90px}}.rotate-overlay{z-index:100;color:#fff8f0;text-align:center;background:#1e1a16;justify-content:center;align-items:center;padding:40px;font-size:18px;display:none;position:fixed;inset:0}@media (hover:none) and (pointer:coarse) and (orientation:portrait){.rotate-overlay{display:flex}}@media (hover:none) and (pointer:coarse){html,body{touch-action:none;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}canvas{touch-action:none}}@media (hover:none) and (pointer:coarse) and (orientation:portrait) and (aspect-ratio>=2/3){.rotate-overlay{display:none!important}}@media (pointer:coarse) and (hover:hover){.touch-controls{display:block}}@media (width<=1024px) and (hover:hover) and (pointer:fine){.touch-controls{display:block}}body.force-mobile-hud .top-bar{padding:max(8px, env(safe-area-inset-top)) 12px 8px;gap:8px}body.force-mobile-hud .meter{min-width:100px}body.force-mobile-hud .meter span{font-size:10px}body.force-mobile-hud .hud-nausea{display:none}body.force-mobile-hud .skills{bottom:max(12px, env(safe-area-inset-bottom));right:max(12px, env(safe-area-inset-right));flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:198px;left:auto;transform:none}body.force-mobile-hud .skill{touch-action:manipulation;-webkit-tap-highlight-color:transparent;border-radius:50%;flex-direction:column;justify-content:center;width:54px;min-width:54px;height:54px;padding:4px;position:relative}body.force-mobile-hud .skill kbd,body.force-mobile-hud .skill-label,body.force-mobile-hud .hint{display:none}body.force-mobile-hud .touch-actions{bottom:calc(max(12px, env(safe-area-inset-bottom)) + 124px);right:max(12px, env(safe-area-inset-right));flex-direction:row;gap:8px}body.force-mobile-hud .touch-btn{width:54px;height:54px;font-size:12px}
