:root{--ink: #f4f6fb;--muted: rgba(244, 246, 251, .62);--glass: rgba(10, 14, 30, .55);--glass-2: rgba(10, 14, 30, .78);--line: rgba(255, 255, 255, .12);--accent: #7fe3ea;--accent-2: #ffd36b;--radius: 14px;font-family:Outfit,Avenir Next,SF Pro Text,-apple-system,system-ui,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%;background:#070a1a;color:var(--ink);overflow:hidden}#c{position:fixed;inset:0;width:100%;height:100%;display:block;touch-action:none}button{font:inherit;color:inherit;cursor:pointer}#hud{position:fixed;inset:0;pointer-events:none}#hud>*{pointer-events:auto}#topbar{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;pointer-events:none}#topbar>*{pointer-events:auto}.brand .title{font-weight:800;letter-spacing:.22em;font-size:15px;text-shadow:0 2px 12px rgba(0,0,0,.5)}.brand .sub{font-size:11px;color:var(--muted);letter-spacing:.04em;margin-top:2px}#meter{width:min(340px,34vw)}.meter-label{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.meter-bar{height:8px;border-radius:99px;background:#ffffff1f;overflow:hidden;box-shadow:inset 0 1px 2px #0006}#meter-fill{height:100%;width:0%;border-radius:99px;background:linear-gradient(90deg,#7ee36a,#7fe3ea 60%,#ffd36b);transition:width .6s cubic-bezier(.2,.8,.2,1);box-shadow:0 0 12px #7fe3ea80}.topright{display:flex;gap:8px}.pill{background:var(--glass);border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-size:13px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:background .15s,transform .15s}.pill:hover{background:var(--glass-2);transform:translateY(-1px)}.pill{white-space:nowrap}#quest{position:absolute;left:20px;top:84px;width:min(320px,80vw);background:var(--glass);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:transform .5s cubic-bezier(.2,.8,.2,1),opacity .4s}#quest.pop{animation:pop .5s cubic-bezier(.2,.8,.2,1)}@keyframes pop{0%{transform:scale(.96)}50%{transform:scale(1.03)}to{transform:scale(1)}}.quest-head{display:flex;align-items:baseline;gap:10px;font-weight:700;font-size:15px}.quest-kicker{font-size:10px;letter-spacing:.16em;color:var(--accent-2)}#quest-line{font-size:13px;color:var(--muted);line-height:1.45;margin:6px 0 10px}.quest-progress{height:5px;border-radius:99px;background:#ffffff1f;overflow:hidden}#quest-fill{height:100%;width:0;background:var(--accent-2);border-radius:99px;transition:width .4s cubic-bezier(.2,.8,.2,1)}#quest-count{font-size:11px;color:var(--muted);margin-top:6px;letter-spacing:.04em}#hint{position:absolute;left:50%;bottom:118px;transform:translate(-50%);font-size:13px;color:var(--muted);text-shadow:0 1px 8px rgba(0,0,0,.7);pointer-events:none;transition:opacity .3s;white-space:nowrap}#toolbar{position:absolute;left:50%;bottom:22px;transform:translate(-50%);display:flex;gap:6px;padding:8px;background:var(--glass);border:1px solid var(--line);border-radius:18px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 10px 40px #00000073}.tool{position:relative;width:60px;height:64px;border-radius:12px;border:1px solid transparent;background:#ffffff0a;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;transition:transform .15s cubic-bezier(.2,.8,.2,1),background .15s,border-color .15s}.tool .ico{font-size:22px;line-height:1;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}.tool .name{font-size:10px;letter-spacing:.04em;color:var(--muted)}.tool .key{position:absolute;top:4px;right:6px;font-size:9px;color:#ffffff59}.tool:hover{background:#ffffff1a;transform:translateY(-2px)}.tool.active{background:#7fe3ea29;border-color:#7fe3ea99;transform:translateY(-4px)}.tool.active .name{color:var(--ink)}.tool.locked{opacity:.35;filter:grayscale(1)}.tool.locked:after{content:"🔒";position:absolute;bottom:4px;right:6px;font-size:9px}.tool.just-unlocked{animation:unlock 1.2s cubic-bezier(.2,.8,.2,1)}@keyframes unlock{0%{transform:scale(.6) rotate(-12deg);opacity:0}60%{transform:scale(1.15);opacity:1}to{transform:scale(1)}}#brush{position:absolute;right:20px;bottom:30px;display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:var(--glass);border:1px solid var(--line);border-radius:999px;padding:8px 14px;backdrop-filter:blur(10px)}#brush input{width:110px;accent-color:var(--accent)}#toasts{position:absolute;right:20px;top:84px;display:flex;flex-direction:column;gap:8px;align-items:flex-end;pointer-events:none}.toast{background:var(--glass-2);border:1px solid var(--line);border-radius:12px;padding:10px 14px;font-size:13px;max-width:320px;backdrop-filter:blur(12px);animation:toastin .5s cubic-bezier(.2,.8,.2,1) both,toastout .5s ease-in 4s forwards;box-shadow:0 10px 30px #0006}.toast.big{font-size:15px;font-weight:600;border-color:#ffd36b80}.toast .t-kicker{display:block;font-size:10px;letter-spacing:.16em;color:var(--accent-2);margin-bottom:3px}@keyframes toastin{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:none}}@keyframes toastout{to{opacity:0;transform:translateY(-8px)}}.overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#070a1a59,#070a1ad9);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:opacity .6s ease;z-index:10}.overlay.hidden{opacity:0;pointer-events:none}.card{width:min(560px,92vw);padding:40px 44px;border-radius:22px;background:#0e1226bf;border:1px solid var(--line);box-shadow:0 30px 80px #0009;text-align:center;animation:cardin .8s cubic-bezier(.2,.8,.2,1)}.card.small{width:min(400px,92vw);padding:32px}@keyframes cardin{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}.eyebrow{font-size:11px;letter-spacing:.24em;color:var(--accent);text-transform:uppercase}.card h1{margin:10px 0 18px;font-size:48px;letter-spacing:.12em;font-weight:800;text-wrap:balance}.card h2{margin:0 0 8px;font-size:24px}.story{font-size:16px;line-height:1.6;color:#f4f6fbd9;margin:0 0 14px}.muted{color:var(--muted);font-size:14px}.tiny{font-size:11px;color:#ffffff59;margin-top:18px}.keys{margin-top:24px;font-size:12px;color:var(--muted);line-height:1.9}.keys b{color:var(--ink);font-weight:600}button.big{margin-top:10px;padding:14px 32px;border-radius:999px;border:none;font-size:16px;font-weight:700;background:linear-gradient(135deg,#7ee36a,#7fe3ea);color:#08101f;box-shadow:0 10px 30px #7fe3ea59;transition:transform .15s,box-shadow .15s}button.big:hover{transform:translateY(-2px);box-shadow:0 14px 36px #7fe3ea80}.row{display:flex;gap:10px;justify-content:center;margin-top:12px}.row button:not(.big){padding:10px 16px;border-radius:999px;border:1px solid var(--line);background:#ffffff0f}.row button.danger{border-color:#ff787866;color:#ffb3b3}@media (max-width: 1180px){#brush{bottom:104px}}#joy,#touch-actions,.touch-only{display:none}#joy{position:absolute;left:22px;bottom:110px;width:132px;height:132px;touch-action:none}#joy-base{position:absolute;inset:0;border-radius:50%;background:#0a0e1e73;border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:inset 0 0 0 26px #ffffff08,0 10px 30px #0006}#joy-knob{position:absolute;left:50%;top:50%;width:54px;height:54px;margin:-27px 0 0 -27px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#a9f0f4,#7fe3ea 45%,#3fb2c4);box-shadow:0 6px 16px #00000073,0 0 18px #7fe3ea73;transition:transform .08s linear}#joy.active #joy-knob{transition:none}#touch-actions{position:absolute;right:18px;bottom:110px;flex-direction:column;align-items:flex-end;gap:10px}.touch-btn{width:64px;height:64px;border-radius:50%;border:1px solid rgba(255,255,255,.18);font-size:26px;background:#0a0e1e80;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 10px 30px #0006;touch-action:none;-webkit-user-select:none;user-select:none}.touch-btn:active{background:#7fe3ea40}.touch-btn.small{width:44px;height:44px;font-size:20px}#brush-touch{display:flex;gap:8px}@media (pointer: coarse){#joy{display:block}#touch-actions{display:flex}.touch-only{display:block}#brush{display:none}#hint{bottom:100px}}@media (max-width: 720px){#meter{display:none}#topbar{padding:10px 12px}.brand .title{font-size:12px;letter-spacing:.16em;white-space:nowrap}.brand .sub{display:none}.pill{padding:7px 11px;font-size:12px}.pill .lbl{display:none}#quest{width:min(250px,66vw);top:56px;left:12px;padding:10px 12px}#quest-line{font-size:12px}#toolbar{max-width:calc(100vw - 28px);overflow-x:auto;scrollbar-width:none;gap:4px;padding:6px;bottom:14px;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}#toolbar::-webkit-scrollbar{display:none}.tool{width:50px;height:54px;flex:0 0 auto;scroll-snap-align:center}.tool .name,.tool .key,#brush{display:none}#toasts{top:212px;right:12px}.toast{font-size:12px;max-width:46vw;padding:8px 10px}#hint{font-size:12px;white-space:normal;text-align:center;width:70vw}.card{padding:28px 22px}.card h1{font-size:34px}.keys{font-size:11px}}@media (max-width: 720px) and (pointer: coarse){#joy{left:16px;bottom:96px;width:120px;height:120px}#touch-actions{right:14px;bottom:96px}#hint{bottom:228px}}
