:root{--night: #141c44;--night-2: #1f2a66;--ink: #3a2a1c;--ink-soft: #6b5238;--paper: #fff6e3;--paper-2: #fbeccb;--edge: #ecd3a0;--amber: #ffb547;--amber-d: #d9861a;--green: #3fbf85;--green-d: #1f8a5a;--good-bg: #e2f7ea;--lilac: #9b6cf0;--lilac-bg: #f0e8ff;--sky: #3d7bff;--focus: #2f6bff;--radius: 18px;--foot: 220px;font-size:18px;font-family:ui-rounded,SF Pro Rounded,Nunito,Segoe UI Variable Display,Segoe UI,system-ui,-apple-system,sans-serif;color-scheme:light;-webkit-text-size-adjust:100%}html.big-text{font-size:21px}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:radial-gradient(120% 90% at 50% 10%,#25337a 0%,var(--night) 55%,#0c1130 100%);color:var(--paper);-webkit-tap-highlight-color:transparent;overscroll-behavior:none}#game{position:fixed;inset:0;width:100%;height:100%;display:block;touch-action:none}body.picture-mode{background:radial-gradient(circle at 18% 14%,#fff3cf 0 3.2vmin,rgba(185,200,255,.35) 3.3vmin,transparent 12vmin),radial-gradient(60% 18% at 50% 58%,rgba(255,179,71,.35),transparent 70%),radial-gradient(90% 40% at 50% 70%,#3d6b52 0 60%,transparent 61%),radial-gradient(140% 60% at 50% 85%,#2b5a4a 0 60%,#1d3b34 61%),linear-gradient(#1d2860,var(--night) 55%)}body.picture-mode #game{display:none}#ui{position:fixed;inset:0;pointer-events:none}.ic{width:1.35em;height:1.35em;flex:none}.paper{background:repeating-linear-gradient(0deg,rgba(160,110,40,.035) 0 2px,transparent 2px 28px),var(--paper);color:var(--ink);border:3px solid var(--edge);border-radius:24px;box-shadow:0 18px 40px #04081e73,0 2px #fff9 inset}.panel{width:100%;max-width:580px;padding:22px;display:flex;flex-direction:column;gap:12px}.panel.narrow{max-width:440px}.panel.wide{max-width:920px}h1,h2,h3{margin:0;line-height:1.15}h2{font-size:1.5rem;display:flex;align-items:center;gap:10px;color:#2c3a8f}h3{font-size:1.1rem;color:#2c3a8f}p{margin:0;line-height:1.45}.btn{font:inherit;font-weight:800;font-size:1rem;color:var(--ink);min-height:48px;padding:10px 16px;border-radius:14px;border:3px solid #e3c68e;background:#fffaf0;box-shadow:0 4px #dcbc80;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:transform .08s ease,box-shadow .08s ease,background .15s ease;text-align:center;touch-action:manipulation;pointer-events:auto}@media(hover:hover){.btn:hover:not(:disabled){background:#fff;transform:translateY(-1px);box-shadow:0 5px #dcbc80}}.btn:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px #dcbc80}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}:focus-visible{outline:4px solid var(--focus);outline-offset:3px}.btn.primary{background:linear-gradient(#ffcd70,#ffaa2c);border-color:#d88a1d;box-shadow:0 5px #b86d0e;color:#3b2412}@media(hover:hover){.btn.primary:hover:not(:disabled){background:linear-gradient(#ffd786,#ffb33f);box-shadow:0 6px #b86d0e}}.btn.primary:active:not(:disabled){box-shadow:0 1px #b86d0e}.btn.big{min-height:58px;font-size:1.15rem;width:100%}.btn.small{min-height:44px;font-size:.9rem;padding:6px 12px}.btn.ghost{background:transparent;border-color:transparent;box-shadow:none;color:var(--ink-soft)}@media(hover:hover){.btn.ghost:hover:not(:disabled){background:#fff9;box-shadow:none}}.icon-btn{width:48px;min-width:48px;padding:0}.row{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.row>.btn{flex:1 1 auto}.row.left{justify-content:flex-start;align-items:center}.row.left>.btn{flex:0 0 auto}.row.three>.btn{flex:1 1 0;flex-direction:column;gap:2px;font-size:.85rem;min-height:74px;padding:8px 6px}.row.three .ic{width:1.7em;height:1.7em}.eyebrow{font-size:.8rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--amber-d);display:flex;align-items:center;gap:6px;justify-content:center}.sub{color:var(--ink-soft)}.small-note{font-size:.88rem;color:var(--ink-soft);display:flex;gap:8px;align-items:flex-start}details.more{background:#fffdf6;border:2px dashed #e8cf9c;border-radius:14px;padding:0 12px}details.more summary{cursor:pointer;font-weight:800;color:#2c5fb8;min-height:44px;display:flex;align-items:center;list-style:none}details.more summary:before{content:"+";display:inline-grid;place-items:center;width:24px;height:24px;margin-right:8px;border-radius:50%;background:#dbe7ff;font-weight:900}details.more[open] summary:before{content:"−"}details.more summary::-webkit-details-marker{display:none}details.more p{padding-bottom:12px}.screens{position:fixed;inset:0;display:none;z-index:30;overflow-y:auto;-webkit-overflow-scrolling:touch}.screens.visible{display:block;pointer-events:auto}.screen{min-height:100%;width:100%;display:flex;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));animation:rise .28s ease-out}.center-screen{align-items:center;justify-content:center;background:#0a0e2c80}.list-screen,.map-screen{flex-direction:column;align-items:center;gap:14px;background:#0a0e2cb8}@keyframes rise{0%{opacity:0;transform:translateY(14px)}}.screen-head{width:100%;max-width:1000px;display:flex;align-items:center;gap:12px}.screen-head h2{flex:1;color:var(--paper);justify-content:center;font-size:1.6rem}.screen-intro{color:#d7defc}.count-pill{background:var(--paper);color:var(--ink);font-weight:900;border-radius:999px;padding:8px 14px}.title-screen{align-items:flex-end;justify-content:center}.title-card{max-width:460px;width:100%;padding:22px;text-align:center;display:flex;flex-direction:column;gap:12px}.title-card h1{font-size:clamp(2.3rem,9vw,3.6rem);color:#2c3a8f;letter-spacing:-.01em}.title-card h1 span{color:var(--amber-d)}.lede{font-size:1.05rem;color:var(--ink-soft)}.progress-row{display:flex;gap:4px;justify-content:center;align-items:center;flex-wrap:wrap}.mini-badge{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#efe0bd;color:#b89a66}.mini-badge.got{background:var(--amber);color:#3b2412}.mini-badge .ic{width:20px;height:20px}.progress-row .count{font-weight:900;margin-left:6px;color:var(--ink-soft)}@media(min-width:900px){.title-screen{align-items:center;justify-content:flex-start;padding-left:6vw}}.howto{list-style:none;padding:0;margin:0;display:grid;gap:10px}.howto li{display:flex;align-items:center;gap:12px;background:#fffaf0;border-radius:16px;padding:10px 12px;font-weight:700;font-size:1.05rem}.step-num{width:32px;height:32px;flex:none;border-radius:50%;background:#2c3a8f;color:#fff;display:grid;place-items:center;font-weight:900}.howto-ic{width:52px;height:52px;flex:none;border-radius:14px;display:grid;place-items:center}.howto-ic .ic{width:32px;height:32px}.howto-ic.risk{background:#ffe4b5;color:#a35d00}.howto-ic.card{background:#dbe9ff;color:#2456b8}.howto-ic.spot{background:#ffe0ea;color:#b0336b}.howto-ic.safe{background:var(--good-bg);color:var(--green-d)}.callout{display:flex;gap:12px;align-items:center;border-radius:16px;padding:12px}.owl-callout{background:#fff1c9;border:2px solid #f2cf73}.owl-callout .ic,.learned .ic,.clue .ic{width:40px;height:40px;color:#8a5a1c}.trail{list-style:none;margin:0;padding:0;width:100%;max-width:1000px;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.node-btn{font:inherit;width:100%;height:100%;min-height:176px;text-align:left;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto 1fr auto;gap:4px 10px;padding:14px;border-radius:20px;border:3px solid var(--edge);background:var(--paper);color:var(--ink);box-shadow:0 6px #d8b979,0 12px 26px #04081e59;cursor:pointer;transition:transform .1s ease}@media(hover:hover){.node-btn:hover:not(:disabled){transform:translateY(-3px)}}.node-btn:active:not(:disabled){transform:translateY(3px)}.node-num{width:34px;height:34px;border-radius:50%;background:#2c3a8f;color:#fff;font-weight:900;display:grid;place-items:center;flex:none}.node-ic{justify-self:end;width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:#dbe9ff;color:#2456b8}.node-ic .ic{width:34px;height:34px}.node-title{grid-column:1 / -1;font-weight:900;font-size:1.1rem}.node-tag{grid-column:1 / -1;color:var(--ink-soft);font-size:.9rem}.node-status{grid-column:1 / -1;display:flex;align-items:center;gap:6px;font-weight:800;color:#2456b8}.node.done .node-status{color:var(--green-d)}.node.done .node-ic{background:var(--good-bg);color:var(--green-d)}.node.locked .node-btn{cursor:not-allowed;filter:grayscale(.7);opacity:.6;box-shadow:none}.node.locked .node-status{color:var(--ink-soft)}.node.next .node-btn{border-color:var(--amber);animation:glowPulse 2.2s ease-in-out infinite}.star{margin-left:auto;color:#e8a400}.star .ic{fill:#ffd166}@keyframes glowPulse{0%,to{box-shadow:0 6px #d8b979,0 0 #ffb54799}50%{box-shadow:0 6px #d8b979,0 0 0 10px #ffb54700}}.message-card{position:relative;text-align:center}.message-card .corner{position:absolute;top:10px;right:10px;width:44px;padding:0}.pictures{display:flex;justify-content:center;gap:14px;margin-top:4px}.pic{width:76px;height:76px;border-radius:22px;display:grid;place-items:center;background:#dbe9ff;color:#2456b8;animation:bob 3s ease-in-out infinite}.pic:nth-child(2){background:#ffe4b5;color:#a35d00;animation-delay:.3s}.pic:nth-child(3){background:#ffe0ea;color:#b0336b;animation-delay:.6s}.pic .ic{width:44px;height:44px}@keyframes bob{50%{transform:translateY(-5px)}}.from{display:inline-flex;align-self:center;align-items:center;gap:6px;background:#fffaf0;border-radius:999px;padding:6px 14px;color:var(--ink-soft)}.story{font-size:1.35rem;font-weight:800;line-height:1.35}.dilemma-body{display:flex;flex-direction:column;gap:10px;text-align:left}.dilemma-body h3{text-align:center}.choices{display:grid;gap:10px}.choice{justify-content:flex-start;text-align:left;min-height:60px;width:100%;font-size:1.05rem}.choice .ic{width:1.6em;height:1.6em;color:#2456b8}.key{display:inline-grid;place-items:center;min-width:24px;height:24px;border-radius:7px;background:#efe0bd;color:var(--ink-soft);font-size:.75rem;font-weight:900;flex:none}@media(hover:none){.key{display:none}}.reply{border-radius:18px;padding:14px;display:flex;flex-direction:column;gap:10px;animation:rise .25s ease-out}.reply.good{background:var(--good-bg);border:3px solid #8fdcb4}.reply.think{background:var(--lilac-bg);border:3px solid #cdb6ff}.reply-head{display:flex;align-items:center;gap:8px;font-size:1.15rem}.reply.good .reply-head .ic{color:var(--green-d);width:32px;height:32px}.reply.think .reply-head .ic{color:#6b45c9;width:36px;height:36px}.safer{display:flex;gap:10px;align-items:center;background:#fff;border-radius:14px;padding:10px 12px}.safer .ic{width:36px;height:36px;color:var(--green-d)}.results{text-align:center}.results h2{justify-content:center}.badge-big{width:104px;height:104px;border-radius:50%;margin:0 auto;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#ffe29a,var(--amber));color:#5a3408;border:5px solid #fff3cf;box-shadow:0 0 0 5px var(--amber),0 10px 24px #00000040;animation:pop .6s cubic-bezier(.2,1.6,.4,1)}.badge-big.think{background:radial-gradient(circle at 35% 30%,#efe4ff,#c9b0ff);color:#4b2c9a;box-shadow:0 0 0 5px #c9b0ff,0 10px 24px #00000040}.badge-big .ic{width:58px;height:58px}@keyframes pop{0%{transform:scale(.3)}}.res-list{list-style:none;margin:0;padding:0;display:grid;gap:8px;text-align:left}.res-list li{display:flex;gap:10px;align-items:flex-start;background:#fffaf0;border-radius:14px;padding:10px 12px;border:2px solid transparent}.res-list li.held{border-color:#9fe0bf}.res-list li.muddled{border-color:#cdb6ff;background:#faf6ff}.res-ic{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;flex:none}.held .res-ic{background:var(--good-bg);color:var(--green-d)}.muddled .res-ic{background:var(--lilac-bg);color:#6b45c9}.res-state{font-size:.8rem;font-weight:900;padding:2px 8px;border-radius:999px;margin-left:4px}.held .res-state{background:var(--good-bg);color:var(--green-d)}.muddled .res-state{background:var(--lilac-bg);color:#5b36b8}.learned,.clue{display:flex;gap:12px;align-items:center;text-align:left;border-radius:16px;padding:12px;background:#fff1c9;border:2px solid #f2cf73}.new-words{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:center}.word-chip{display:inline-flex;align-items:center;gap:6px;background:#dbe9ff;color:#1f4aa0;border-radius:999px;padding:4px 12px;font-weight:800}.bonus{text-align:left;background:#f4f0ff;border:2px solid #d8c8ff;border-radius:16px;padding:0 12px}.bonus summary{min-height:48px;display:flex;align-items:center;gap:8px;font-weight:800;cursor:pointer;color:#4b2c9a}.bonus summary .ic{color:#e8a400}.bonus-q{font-weight:700;margin-bottom:8px}.bonus-opts{display:grid;gap:8px}.small-choice{min-height:48px;font-size:.95rem}.small-choice.picked-good{border-color:var(--green);background:var(--good-bg)}.small-choice.picked-think{border-color:#cdb6ff;background:var(--lilac-bg)}.bonus-why{display:flex;gap:8px;align-items:center;min-height:12px;margin:10px 0 12px;font-weight:700}.bonus-why.good .ic{color:#e8a400}.bonus-why.think .ic{color:#6b45c9}.words{list-style:none;margin:0;padding:0;width:100%;max-width:1000px;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.word{display:flex;gap:12px;align-items:flex-start;background:var(--paper);color:var(--ink);border-radius:18px;padding:14px;border:3px solid var(--edge)}.word>div{display:flex;flex-direction:column;gap:6px;flex:1}.word-ic{width:52px;height:52px;border-radius:16px;flex:none;display:grid;place-items:center;background:#dbe9ff;color:#2456b8}.word-ic .ic{width:32px;height:32px}.word.locked{background:#e6dcc6;border-color:#d3c4a3;color:#6b5a40}.word.locked .word-ic{background:#d8cfbb;color:#8a7b5c}.tips{margin:0;padding-left:22px;display:grid;gap:6px}.discs{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.disc{background:#fffaf0;border:2px solid var(--edge);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:8px}.disc ul{margin:0;padding-left:20px;display:grid;gap:4px;color:var(--ink-soft)}.disc-head{display:flex;gap:8px;align-items:center;color:#2c3a8f}.disc-head .node-num{width:28px;height:28px;font-size:.85rem}.disc-try{display:flex;gap:8px;align-items:flex-start;background:#fff1c9;border-radius:12px;padding:8px 10px;font-size:.92rem}.reset-note{color:var(--ink-soft);font-size:.9rem}.toggle-row,.slider-row,.seg-row{display:flex;align-items:center;gap:12px;min-height:56px;padding:6px 12px;border-radius:14px;background:#fffaf0;font-weight:700;cursor:pointer}.toggle-row>span,.slider-row>span,.seg-row>span{flex:1}.toggle-row input{appearance:none;-webkit-appearance:none;width:56px;height:32px;flex:none;border-radius:16px;background:#d9c7a3;position:relative;cursor:pointer;margin:0;transition:background .15s;order:3}.toggle-row input:after{content:"";position:absolute;top:4px;left:4px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 2px 4px #0003;transition:transform .15s}.toggle-row input:checked{background:var(--green)}.toggle-row input:checked:after{transform:translate(24px)}.slider-row input{flex:2;accent-color:var(--amber-d);height:44px;min-width:100px}.slider-row output{min-width:36px;text-align:right;font-weight:900}.seg{display:flex;gap:6px}.seg-btn{min-height:44px;padding:6px 12px}.seg-btn.on,.seg-btn.on:hover:not(:disabled){background:var(--green);color:#fff;border-color:var(--green-d);box-shadow:0 4px 0 var(--green-d)}.hud{position:fixed;inset:0;z-index:10;pointer-events:none}.hud[hidden]{display:none}.hud.paused{visibility:hidden}.hud-top{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;gap:10px;padding:max(10px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) 10px max(12px,env(safe-area-inset-left));background:linear-gradient(#0a0e2ce6,#0a0e2c8c 70%,#0a0e2c00);pointer-events:auto}.hud-title{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.15}.hud-title .m-num{font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--amber)}.hud-title b{font-size:1.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meter-btn{font:inherit;display:flex;align-items:center;gap:8px;min-height:48px;padding:6px 14px;border-radius:999px;border:3px solid #bfe9d2;background:var(--paper);color:var(--ink);font-weight:900;cursor:pointer;pointer-events:auto}.meter-btn .ic{color:var(--green-d)}.meter-bar{width:56px;height:10px;border-radius:5px;background:#eadbbd;overflow:hidden}.meter-bar i{display:block;height:100%;background:var(--green);transition:width .4s ease}.dash{position:absolute;top:78px;right:12px;width:280px;max-height:calc(100% - 90px - var(--foot));overflow-y:auto;background:#fff6e3f7;color:var(--ink);border:3px solid var(--edge);border-radius:20px;padding:14px;display:flex;flex-direction:column;gap:10px;pointer-events:auto;box-shadow:0 12px 30px #04081e66}.dash-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.dash-row{font:inherit;width:100%;display:flex;align-items:center;gap:8px;min-height:48px;padding:6px 8px;border-radius:12px;border:2px solid transparent;background:#fffaf0;color:var(--ink);font-weight:800;text-align:left;cursor:pointer}@media(hover:hover){.dash-row:hover{border-color:var(--edge)}}.dash-row.selected{border-color:var(--amber)}.dash-name{flex:1;font-size:.92rem}.chip{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:900;padding:3px 8px;border-radius:999px;white-space:nowrap}.chip .ic{width:16px;height:16px}.st-risk .chip{background:#ffe7bd;color:#8a4b00}.st-safe .chip,.st-covered .chip,.st-already .chip{background:var(--good-bg);color:var(--green-d)}.st-muddle .chip{background:var(--lilac-bg);color:#5b36b8}.forecast{display:flex;gap:8px;align-items:flex-start;background:#e8edff;border-radius:14px;padding:10px;font-size:.9rem}.forecast .ic{color:#2c3a8f}.forecast.tip{background:#fff1c9}.forecast.tip .ic{color:#a35d00}.spot-layer{position:absolute;inset:0;pointer-events:none}.spot-btn{font:inherit;position:absolute;left:0;top:0;width:56px;height:56px;padding:0;border-radius:50%;border:4px solid var(--amber);background:var(--paper);color:var(--ink);display:grid;place-items:center;box-shadow:0 6px 14px #04081e73;cursor:pointer;pointer-events:auto;will-change:transform;z-index:1}.spot-ic .ic{width:30px;height:30px;display:block}.spot-badge{position:absolute;top:-8px;right:-8px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;border:2px solid #fff;background:var(--amber);color:#3b2412}.spot-badge .ic{width:16px;height:16px}.spot-name{position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%);white-space:nowrap;font-size:.72rem;font-weight:900;color:#fff;background:#0c1032d1;padding:2px 8px;border-radius:999px;pointer-events:none}.spot-btn.st-safe,.spot-btn.st-covered{border-color:var(--green)}.spot-btn.st-safe .spot-badge,.spot-btn.st-covered .spot-badge,.spot-btn.st-already .spot-badge{background:var(--green);color:#fff}.spot-btn.st-already{border-color:#9fe0bf;border-style:dashed;opacity:.9}.spot-btn.st-muddle{border-color:#b58cff}.spot-btn.st-muddle .spot-badge{background:#b58cff;color:#fff}.spot-btn.target{animation:targetPulse 1.3s ease-in-out infinite}.spot-btn.selected{box-shadow:0 0 0 5px #ffd166,0 6px 14px #04081e73;z-index:3}@keyframes targetPulse{0%,to{box-shadow:0 0 #ffd166e6,0 6px 14px #04081e73}50%{box-shadow:0 0 0 9px #ffd16600,0 6px 14px #04081e73}}@media(hover:hover){.spot-btn:hover{z-index:4}}.bubble{position:absolute;top:80px;left:50%;transform:translate(-50%);width:max-content;max-width:min(560px,calc(100% - 24px));display:none;align-items:center;gap:10px;padding:10px 14px;border-radius:18px;background:var(--paper);color:var(--ink);border:3px solid var(--edge);box-shadow:0 10px 26px #04081e73;pointer-events:auto;z-index:5}.bubble.show{display:flex;animation:rise .22s ease-out}.b-ic{width:44px;height:44px;flex:none;border-radius:14px;display:grid;place-items:center;background:#fff1c9;color:#8a5a1c}.b-ic .ic{width:30px;height:30px}.bubble.b-good{border-color:#9fe0bf}.bubble.b-good .b-ic{background:var(--good-bg);color:var(--green-d)}.bubble.b-think{border-color:#cdb6ff}.bubble.b-think .b-ic{background:var(--lilac-bg);color:#6b45c9}.bubble.b-info .b-ic{background:#dbe9ff;color:#2456b8}.bubble p{font-size:.98rem}.brief{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(440px,calc(100% - 32px));padding:18px;display:flex;flex-direction:column;gap:10px;pointer-events:auto;z-index:8;animation:rise .25s ease-out}.brief{max-height:calc(100% - 16px);overflow-y:auto}.brief[hidden]{display:none}.hud.briefing:before{content:"";position:absolute;inset:0;background:#0a0e2c73;pointer-events:auto;z-index:7}.brief-row{display:flex;align-items:center;gap:12px;background:#e8edff;border-radius:14px;padding:10px 12px;font-weight:700}.brief-row>.ic{width:34px;height:34px;color:#2c3a8f}.brief-row p{flex:1}.brief-row.steps{background:#fff1c9}.brief-row.steps>.ic{display:none}.lanterns{display:flex;gap:2px;color:#b86d0e}.lanterns .ic{width:26px;height:26px}.brief-row.tip{background:#ffe7bd}.brief-row.tip>.ic{color:#a35d00}.brief-row.owl{background:var(--good-bg)}.brief-row.owl>.ic{color:var(--green-d)}.hud-bottom{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:1fr auto;grid-template-areas:"plan drill" "hand drill";gap:8px 14px;align-items:center;padding:10px max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:linear-gradient(#0a0e2c00,#0a0e2cc7 22%,#0a0e2cf0);pointer-events:auto}.hud-bottom[hidden]{display:none}.plan-row{grid-area:plan;display:flex;align-items:center;gap:8px;min-width:0}.plan-lbl{display:flex;align-items:center;gap:6px;font-weight:900;font-size:.8rem;color:#ffe2a6;text-transform:uppercase;letter-spacing:.05em}.plan-slots{list-style:none;margin:0;padding:4px 2px;display:flex;gap:6px;flex:1;overflow-x:auto;scrollbar-width:none}.plan-slots li{flex:none}.slot{font:inherit;position:relative;min-width:66px;height:54px;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:2px 6px}.slot.empty{border:2px dashed rgba(255,246,227,.45);color:#fff6e373}.slot.filled{border:3px solid #fff;background:var(--paper);color:var(--ink);cursor:pointer;font-weight:800}.slot .slot-n{position:absolute;top:-7px;left:-7px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#2c3a8f;color:#fff;font-size:.72rem;font-weight:900}.slot.empty .slot-n{background:#2c3a8fcc;color:#ffffffbf}.slot-spot{font-size:.62rem;max-width:76px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slot.free-step{background:#fff1c9}.slot .free{position:absolute;top:-8px;right:-8px;font-size:.6rem}.slot.playing{box-shadow:0 0 0 4px #ffd166,0 0 18px 4px #ffd166b3}.hand{grid-area:hand;display:flex;gap:8px;flex-wrap:wrap}.card{font:inherit;--c: #6fb7ff;--cd: #2f79c8;position:relative;width:96px;min-height:86px;padding:8px 6px 6px;border-radius:16px;border:3px solid var(--c);background:var(--paper);color:var(--ink);box-shadow:0 5px 0 var(--cd);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-weight:900;font-size:.8rem;line-height:1.1;text-align:center;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;touch-action:manipulation}.card>.ic{width:34px;height:34px;color:var(--cd)}.card .key{position:absolute;top:4px;left:4px;min-width:18px;height:18px;font-size:.65rem}@media(hover:hover){.card:hover{transform:translateY(-3px)}}.card:active{transform:translateY(2px);box-shadow:0 2px 0 var(--cd)}.card.picked{transform:translateY(-9px);background:#fff;box-shadow:0 0 0 4px #ffd166,0 10px 0 var(--cd)}.card.spent:not(.picked){opacity:.55}.card.hinted{animation:hintPulse .9s ease-in-out 4}@keyframes hintPulse{50%{transform:translateY(-8px) scale(1.06);box-shadow:0 0 0 6px #ffd166,0 0 26px 8px #ffd166cc}}.free{position:absolute;top:-9px;right:-8px;background:var(--green);color:#fff;font-size:.66rem;font-weight:900;padding:2px 7px;border-radius:999px;border:2px solid #fff}.c-verify{--c: #6fb7ff;--cd: #2f79c8}.c-preview{--c: #56c7c0;--cd: #1f8c86}.c-private{--c: #ff9ec7;--cd: #c2457d}.c-passphrase{--c: #ffb547;--cd: #c27410}.c-permissions{--c: #b58cff;--cd: #6b45c9}.c-update{--c: #7ddc8a;--cd: #2e9a44}.c-backup{--c: #ff8a5c;--cd: #c7502a}.c-adult{--c: #ffd166;--cd: #b98a12;background:#fff8dc}.slot.filled.c-verify .ic,.slot.filled.c-preview .ic,.slot.filled.c-private .ic,.slot.filled.c-passphrase .ic,.slot.filled.c-permissions .ic,.slot.filled.c-update .ic,.slot.filled.c-backup .ic,.slot.filled.c-adult .ic{color:var(--cd)}.slot.filled{border-color:var(--c, #fff)}.drill-btn{grid-area:drill;width:220px;min-height:72px;align-self:end;flex-direction:column;gap:4px}.drill-btn .ic{width:30px;height:30px}.drill-btn.ready{animation:readyPulse 1.6s ease-in-out infinite}@keyframes readyPulse{50%{box-shadow:0 5px #b86d0e,0 0 0 8px #ffd16659}}.drill-bar{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:linear-gradient(#0a0e2c00,#0a0e2ce6 30%);pointer-events:auto}.drill-bar[hidden]{display:none}.drill-head{display:flex;align-items:center;gap:8px;color:#ffe2a6}.drill-sub{color:#d7defc;font-size:.9rem}.drill-chips{list-style:none;margin:0;padding:0;display:flex;gap:6px;flex-wrap:wrap;flex:1}.drill-chips li{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#fff6e32e;color:#e7ebff;font-weight:800;font-size:.85rem}.drill-chips li.held{background:var(--good-bg);color:var(--green-d)}.drill-chips li.muddled{background:var(--lilac-bg);color:#5b36b8}.coach{position:fixed;left:0;top:0;z-index:25;display:none;align-items:center;gap:8px;max-width:260px;padding:10px 14px;border-radius:16px;background:#2f6bff;color:#fff;font-weight:900;box-shadow:0 10px 24px #04081e80;pointer-events:none}.coach.show{display:flex}.coach:after{content:"";position:absolute;left:50%;bottom:-10px;margin-left:-10px;border:10px solid transparent;border-bottom:0;border-top-color:#2f6bff}.coach.below:after{bottom:auto;top:-10px;border:10px solid transparent;border-top:0;border-bottom-color:#2f6bff}.coach .ic{width:28px;height:28px;animation:bob 1.2s ease-in-out infinite}.coached{box-shadow:0 0 0 5px #ffd166,0 0 22px 8px #ffd166bf!important}.activity-layer{position:fixed;inset:0;z-index:20;display:none;align-items:center;justify-content:center;padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));background:#0a0e2c99;overflow-y:auto;pointer-events:auto}.activity-layer.visible{display:flex}.activity-layer.paused{visibility:hidden}.activity{position:relative;max-width:620px;margin:auto;animation:rise .25s ease-out}.activity h2{padding-right:52px}.act-close{position:absolute;top:12px;right:12px}.act-body{display:flex;flex-direction:column;gap:12px}.act-feedback:empty{display:none}.act-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.act-choices .choice{justify-content:center;text-align:center}.step1.used{background:#eef7ff;border-color:#b8d6ff;box-shadow:none}.compare{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mini-card{background:#fff;border:3px solid #ecd9b0;border-radius:16px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}.mini-card.book{border-color:#b8d6ff;background:#f5f9ff}.mini-card .lbl{display:flex;align-items:center;gap:6px;font-size:.8rem;font-weight:900;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.04em}.field{display:flex;flex-direction:column;gap:2px;position:relative}.field .k{font-size:.72rem;font-weight:800;color:#9a8058}.field .v{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:1rem;font-weight:700;word-break:break-all}mark{background:#ffd166;color:#3b2412;border-radius:4px;padding:0 1px;box-shadow:0 0 0 2px #ffb547}.match{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;font-weight:900;align-self:flex-start}.match:empty{display:none}.match .ic{width:16px;height:16px}.match.same{color:var(--green-d)}.match.diff{color:#6b45c9;background:var(--lilac-bg);border-radius:999px;padding:1px 8px}.fake-link{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px;border-radius:16px;background:#fff;border:3px solid #b8d6ff;color:#2456b8;font-weight:900;font-size:1.2rem;text-decoration:underline;text-underline-offset:4px}.addr-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 14px;border-radius:14px;background:#20355e;color:#fff;animation:rise .25s ease-out}.addr-bar[hidden]{display:none}.addr-bar code{font-size:1.1rem;font-weight:800;word-break:break-all}.addr-bar .tip{flex-basis:100%;font-size:.85rem;color:#cfe0ff}.pass-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;min-height:56px}.pslot{font:inherit;min-width:84px;min-height:48px;border-radius:12px;display:grid;place-items:center;font-weight:900;padding:4px 10px}.pslot.empty{border:3px dashed #e0c792;color:#c7a970}.pslot.filled{border:3px solid var(--green);background:var(--good-bg);color:var(--green-d);cursor:pointer;letter-spacing:.04em}.meter{display:flex;flex-direction:column;gap:6px;align-items:center}.meter .meter-bar{width:100%;height:auto;display:flex;gap:5px;background:none}.meter .seg{flex:1;height:14px;border-radius:7px;background:#eadbbd;transition:background .2s}.meter .seg.on.s1{background:#ffb547}.meter .seg.on.s2{background:#ffd166}.meter .seg.on.s3{background:#7ddc8a}.meter .seg.on.s4{background:var(--green)}.meter-lbl{display:flex;align-items:center;gap:6px;font-weight:900;color:var(--green-d)}.tiles{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.tile{font:inherit;min-width:84px;min-height:50px;padding:6px 12px;border-radius:12px;border:3px solid #e3c68e;background:#fffaf0;box-shadow:0 4px #dcbc80;color:var(--ink);font-weight:900;letter-spacing:.05em;cursor:pointer;touch-action:manipulation}@media(hover:hover){.tile:hover:not(:disabled){background:#fff}}.tile:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px #dcbc80}.tile:disabled{opacity:.35;cursor:default;box-shadow:none}.ask-list li.shake,.tile.shake{animation:shake .4s ease}@keyframes shake{25%{transform:translate(-5px)}75%{transform:translate(5px)}}.ask-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.ask-list li{display:grid;grid-template-columns:44px 1fr auto;gap:6px 10px;align-items:center;padding:8px 10px;border-radius:16px;background:#fff;border:3px solid #f0e2c4}.ask-ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#f1e8ff;color:#6b45c9}.ask-name{font-weight:800}.ask-name small{display:block;font-size:.72rem;color:#9a8058;text-transform:uppercase;letter-spacing:.04em}.ask-btns{display:flex;gap:6px}.ask-btns .btn{min-height:46px;padding:6px 10px;font-size:.88rem}.ask-why{grid-column:1 / -1;display:flex;align-items:center;gap:6px;font-size:.88rem;font-weight:700}.ask-why:empty{display:none}.ask-why.think{background:var(--lilac-bg);color:#4b2c9a;border-radius:10px;padding:6px 8px;animation:rise .2s ease-out}.ask-why.think .ic{color:#6b45c9}.ask-list li.allowed{border-color:#9fe0bf;background:#f4fcf7}.ask-list li.allowed .ask-why{color:var(--green-d)}.ask-list li.denied{border-color:#b8d6ff;background:#f5f9ff}.ask-list li.denied .ask-why{color:#2456b8}.ask-list li.allowed .ask-btns,.ask-list li.denied .ask-btns{opacity:.5}.fatal{position:fixed;inset:0;display:grid;place-items:center;padding:16px;pointer-events:auto}@media(max-width:899px){.dash{display:none;inset:72px 12px auto;width:auto;max-height:62vh;z-index:6}.hud.dash-open .dash{display:flex}.hud-bottom{grid-template-columns:1fr;grid-template-areas:"plan" "hand" "drill";gap:8px}.hand{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.card{width:auto;min-height:70px;font-size:.7rem;padding:6px 2px 4px}.card>.ic{width:28px;height:28px}.drill-btn{width:100%;min-height:54px;flex-direction:row}.bubble{top:72px}.meter-bar{width:36px}.meter-btn{padding:6px 10px}.compare,.act-choices{grid-template-columns:1fr}.ask-list li{grid-template-columns:40px 1fr}.ask-btns{grid-column:1 / -1}.ask-btns .btn{flex:1}.panel{padding:18px 16px}.story{font-size:1.2rem}.pic{width:64px;height:64px}.pic .ic{width:38px;height:38px}.spot-btn{width:50px;height:50px}.spot-ic .ic{width:26px;height:26px}.hud-title b{font-size:.92rem;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.plan-lbl span{display:none}.slot{min-width:58px}}@media(min-width:900px){.bubble{left:calc(50% - 146px);max-width:min(560px,calc(100% - 330px))}}@media(max-width:599px){.bubble{top:66px;padding:6px 10px;gap:8px;border-radius:14px}.bubble p{font-size:.84rem;line-height:1.3}.b-ic{width:34px;height:34px;border-radius:10px}.b-ic .ic{width:24px;height:24px}.hud-top{padding-bottom:6px}.hud-bottom{gap:6px;padding-top:6px}.slot{height:50px;min-width:58px}.slot .ic{width:20px;height:20px}.card{min-height:60px;gap:2px}.card>.ic{width:24px;height:24px}.drill-btn{min-height:50px;font-size:1.05rem}.spot-btn{width:46px;height:46px;border-width:3px}.spot-ic .ic{width:24px;height:24px}.spot-badge{width:22px;height:22px;top:-7px;right:-7px}.spot-badge .ic{width:14px;height:14px}.spot-name{font-size:.64rem;padding:1px 6px;top:calc(100% + 2px)}}@media(max-width:380px){.meter-txt{display:none}}.reduced-motion *,.reduced-motion *:before,.reduced-motion *:after{animation:none!important;transition-duration:1ms!important;scroll-behavior:auto!important}.reduced-motion .card.hinted{transform:translateY(-6px);box-shadow:0 0 0 6px #ffd166,0 0 22px 6px #ffd166cc}.reduced-motion .spot-btn.target{box-shadow:0 0 0 6px #ffd166d9,0 6px 14px #04081e73}.reduced-motion .node.next .node-btn{box-shadow:0 6px #d8b979,0 0 0 6px #ffb5478c}.reduced-motion .drill-btn.ready{box-shadow:0 5px #b86d0e,0 0 0 6px #ffd16673}@media(max-height:520px)and (min-width:600px){.hud-bottom{top:62px;left:auto;right:0;width:340px;grid-template-columns:1fr;grid-template-areas:"plan" "hand" "drill";align-content:end;gap:6px;padding-left:20px;background:linear-gradient(90deg,#0a0e2c00,#0a0e2ce6 14%)}.hand{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.plan-lbl{display:none}.brief{gap:6px;padding:12px}.brief-row{padding:6px 10px}.brief .btn.big{min-height:48px}.card{width:auto;min-height:56px;font-size:.68rem;padding:4px 2px}.card>.ic{width:22px;height:22px}.drill-btn{width:100%;min-height:48px;flex-direction:row}.slot{height:48px;min-width:54px}.bubble{top:60px;left:calc(50% - 170px);max-width:calc(100% - 370px);padding:5px 10px}.bubble p{font-size:.8rem}.b-ic{width:30px;height:30px}.b-ic .ic{width:22px;height:22px}.spot-btn{width:44px;height:44px;border-width:3px}.spot-name{font-size:.62rem}.drill-bar{padding-top:6px}}@media print{html,body{overflow:visible;background:#fff;color:#000;height:auto}#game,.hud,.activity-layer,.screen-head .btn,.toggle-row,.row{display:none!important}#ui,.screens,.screen{position:static;display:block;background:#fff;overflow:visible}.paper{box-shadow:none;border:none;background:#fff}.screen-head h2{color:#000}.disc{break-inside:avoid}}
