:root{--bg:#0d0f1c;--panel:#171a2e;--ink:#f1f2f8;--faint:#8b8d98;--gold:#f5b842;--brand:#6c5ce7}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;user-select:none}body{background:var(--bg);color:var(--ink);font-family:-apple-system,Roboto,'Segoe UI',sans-serif;min-height:100vh;display:flex;flex-direction:column;align-items:center;overflow:hidden}#sparks{font-size:34px;font-weight:800;margin-top:26px;letter-spacing:-1px}#mult{font-size:13px;color:var(--faint);margin-top:2px}#star{position:relative;width:230px;height:230px;border-radius:50%;margin:34px 0 22px;border:none;cursor:pointer;background:radial-gradient(circle at 42% 38%,#fff 4%,var(--c1,#6c5ce7) 36%,var(--c2,#2b246b) 78%,transparent 100%);box-shadow:0 0 70px 12px rgba(108,92,231,.42);transition:transform .07s}#star:active{transform:scaleX(1.06) scaleY(.9)}#astra{display:flex;align-items:center;justify-content:center;width:100%;height:100%;position:relative;z-index:1;animation:breathe var(--breath,4s) ease-in-out infinite}#sky{position:absolute;inset:0;border-radius:50%;overflow:hidden;pointer-events:none;color:#fff;opacity:.9;z-index:0}#sky svg{width:100%;height:100%;display:block}#skyline{font-size:12px;color:var(--faint);margin-top:6px;cursor:pointer;padding:0 24px;text-align:center;line-height:1.4}#skyline b{color:#c9b3ff;font-weight:700}#astra svg{width:72%;height:72%}@keyframes breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.03)}}#msg{position:fixed;left:0;right:0;bottom:26px;text-align:center;font-size:13px;color:var(--faint);padding:0 24px;line-height:1.5}.riser{position:fixed;font-weight:800;color:var(--gold);font-size:18px;pointer-events:none;animation:rise .6s ease-out forwards}@keyframes rise{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-46px)}}.vp{animation:vpArc .7s cubic-bezier(.2,.8,.2,1) both}@keyframes vpArc{from{transform:translateY(18px);opacity:0}to{transform:none;opacity:1}}.vp-ai{animation:vpAi 1.6s ease both}@keyframes vpAi{0%{transform:translateY(18px);opacity:0}40%{transform:translateY(9px);opacity:.8}70%{transform:translateY(9px);opacity:.8}100%{transform:none;opacity:1}}.vp-tie{animation:vpTie 1.8s ease both}@keyframes vpTie{0%{transform:translateY(18px);opacity:0}35%{transform:translateY(4px);opacity:.9}55%{transform:translateY(18px);opacity:.5}100%{transform:none;opacity:1}}.vp-unchecked{animation:vpBack 1.2s ease both;opacity:.7}@keyframes vpBack{from{transform:translateY(-10px);opacity:1}to{transform:none;opacity:.7}}.vp-fold{animation:vpFold .8s ease both;transform-origin:top}@keyframes vpFold{0%{transform:scaleY(1)}50%{transform:scaleY(.85)}100%{transform:scaleY(1)}}.vp-appeal{animation:vpUp 1s ease both}@keyframes vpUp{from{transform:translateY(14px);opacity:.5}to{transform:none;opacity:1}}#hint{font-size:12px;color:var(--faint);margin-top:4px}#acc{position:absolute;top:2%;left:50%;transform:translateX(-50%);font-size:34px;pointer-events:none}#taskbtn,#wheelbtn{margin-top:10px;background:var(--panel);color:var(--ink);border:1px solid #2a2e4a;border-radius:12px;padding:9px 18px;font-size:13px;font-weight:700;cursor:pointer}#task{display:none;position:fixed;left:10px;right:10px;bottom:10px;background:var(--panel);border:1px solid var(--gold);border-radius:18px;padding:14px;z-index:9;max-height:72vh;overflow-y:auto}#task h3{font-size:14px;margin-bottom:8px}#panel{margin-top:14px;text-align:left}#tide{width:100%;max-width:380px;margin-top:14px;padding:0 10px;text-align:left}#tide h4{font-size:12px;color:var(--muted);margin:14px 0 6px;font-weight:700;text-transform:uppercase;letter-spacing:.4px}#tide svg{width:100%;display:block;background:#11142a;border:1px solid #2a2e4a;border-radius:12px}#tide input[type=range]{width:100%;margin-top:8px;accent-color:var(--gold)}#tide .note{font-size:11.5px;color:var(--faint);line-height:1.35;margin-top:4px}#panel h4{font-size:12px;color:var(--muted);margin:14px 0 6px;font-weight:700;text-transform:uppercase;letter-spacing:.4px}.row{display:flex;align-items:center;gap:8px;background:var(--panel);border:1px solid #2a2e4a;border-radius:12px;padding:9px 11px;margin-bottom:6px}.row .t{flex:1;font-size:13px}.row .s{font-size:12px;color:var(--muted)}.row button{background:var(--gold);color:#241a00;border:none;border-radius:9px;padding:7px 12px;font-size:12.5px;font-weight:700;cursor:pointer}.row button[disabled]{opacity:.45;cursor:default}.bar{height:5px;background:#2a2e4a;border-radius:4px;overflow:hidden;margin-top:5px}.bar i{display:block;height:100%;background:var(--gold)}.tk{background:#20233a;border-radius:10px;padding:10px;margin-bottom:8px;font-size:12.5px;line-height:1.4}.tk b{display:block;font-size:10.5px;color:var(--faint);letter-spacing:.5px;margin-bottom:3px}.seam{border-bottom:1px dashed var(--gold);cursor:pointer}#pt .card.ref{cursor:pointer}#pt .card.ref .ttl::after{content:' ›';color:var(--faint)}.tk .tt{font-weight:700;margin-bottom:2px}.tbtns{display:flex;gap:8px;margin-top:8px}.tbtns button{flex:1;border:none;border-radius:10px;padding:10px 0;font-size:13px;font-weight:700;color:#fff;cursor:pointer}#pt{display:none;position:fixed;left:10px;right:10px;top:10px;bottom:10px;overflow-y:auto;background:var(--panel);border:1px solid #2a2e4a;border-radius:14px;padding:12px;text-align:left;z-index:20}#pt .ptabs{display:flex;gap:6px;margin-bottom:10px}#pt .ptabs button{flex:1;background:#20233a;color:var(--faint);border:none;border-radius:10px;padding:8px 0;font-size:12.5px;font-weight:700;cursor:pointer}#pt .ptabs button.on{background:var(--brand);color:#fff}#pt .note{font-size:11.5px;color:var(--faint);line-height:1.35;margin-bottom:10px}#pt .card{background:#20233a;border-radius:12px;padding:11px;margin-bottom:8px}#pt .card .kind{font-size:10.5px;color:var(--brand);font-weight:700;text-transform:uppercase;letter-spacing:.4px}#pt .card .ttl{font-size:13.5px;font-weight:700;margin:3px 0}#pt .card .txt{font-size:12.5px;color:#c9cbd8;line-height:1.4}#pt .card .meta{font-size:11.5px;color:var(--faint);margin-top:6px}#pt .card .rw{float:right;color:var(--gold);font-weight:700;font-size:13px}#pt .act{display:flex;gap:8px;margin-top:9px}#pt .act button{flex:1;border:none;border-radius:10px;padding:9px 0;font-size:12.5px;font-weight:700;color:#fff;cursor:pointer}#pt textarea{width:100%;box-sizing:border-box;background:#171a2e;color:var(--ink);border:1px solid #2a2e4a;border-radius:10px;padding:8px;font-size:13px;font-family:inherit;margin-top:8px}