:root{--plasma:#ff6b7d;--plasma-deep:#5f1020;--o2:#7de8ff;--membrane:#ffb3c0;--uv:#b389ff;--good:#7df2b0;--danger:#ff5964;font-size:clamp(14px,1.45vmin,19px)}*{box-sizing:border-box;margin:0;padding:0}html,body,#app{width:100%;height:100%;overflow:hidden}body{color:#ffeef1;-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;background:#1c060d;font-family:Avenir Next,Segoe UI,system-ui,sans-serif}#scene{width:100%;height:100%;display:block;position:absolute;inset:0}.hidden{display:none!important}#hud{z-index:10;pointer-events:none;justify-content:space-between;align-items:center;padding:.9rem 1.2rem;display:flex;position:absolute;top:0;left:0;right:0}#hud>*{pointer-events:auto}.hud-left,.hud-right{align-items:center;gap:.9rem;display:flex}.hud-title{flex-direction:column;line-height:1.15;display:flex}#hudZone{letter-spacing:.14em;color:var(--membrane);font-size:1.05rem;font-weight:800}#hudSub{letter-spacing:.1em;opacity:.75;font-size:.72rem}.icon-btn{width:2.4rem;height:2.4rem;color:var(--membrane);cursor:pointer;background:#280810bf;border:1px solid #ffb3c066;border-radius:50%;font-size:1.15rem;transition:transform .15s,background .15s}.icon-btn:hover{background:#501220e6;transform:scale(1.08)}.icon-btn.off{opacity:.4}.score-box{text-align:right;flex-direction:column;line-height:1.05;display:flex}.score-box span{color:#fff;font-variant-numeric:tabular-nums;font-size:1.25rem;font-weight:800}.score-box label{letter-spacing:.3em;opacity:.7;font-size:.58rem}.o2{color:var(--o2);background:#7de8ff1f;border:1px solid #7de8ff66;border-radius:2rem;padding:.3rem .75rem;font-size:.95rem;font-weight:700}.o2 b{font-variant-numeric:tabular-nums}.pips{gap:.35rem;display:flex}.pip{background:var(--good);border-radius:50%;width:.85rem;height:.85rem;transition:all .25s;box-shadow:0 0 8px #7df2b0cc}.pip.lost{box-shadow:none;background:#3a1520;transform:scale(.8)}.panel{z-index:14;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center;background:#1c060deb;border:1px solid #ffb3c059;border-radius:1.1rem;width:min(34rem,92vw);padding:1.4rem 1.6rem;animation:.35s ease-out rise;position:absolute;bottom:7%;left:50%;transform:translate(-50%);box-shadow:0 18px 60px #0000008c}@keyframes rise{0%{opacity:0;transform:translate(-50%)translateY(16px)}}.panel h3{letter-spacing:.16em;color:var(--membrane);margin-bottom:.6rem;font-size:1.05rem}.panel p{font-size:1rem;line-height:1.55}.choices{flex-direction:column;gap:.55rem;margin-top:.9rem;display:flex}.choices button{font:inherit;cursor:pointer;color:#ffeef1;background:#380e1ad9;border:1px solid #ffb3c04d;border-radius:.7rem;padding:.7rem 1rem;transition:all .15s}.choices button:hover{background:#601a2ce6;transform:translateY(-1px)}.choices button.right{border-color:var(--good);background:#2ea06459}.choices button.wrong{border-color:var(--danger);background:#c83c4666}.overlay{z-index:20;text-align:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:radial-gradient(at 50% 35%,#5a122480,#100308ed 75%);flex-direction:column;justify-content:center;align-items:center;gap:1.4rem;padding:2rem;display:flex;position:absolute;inset:0}h1{letter-spacing:.12em;background:linear-gradient(180deg, #ffd7de 15%, var(--plasma) 60%, #a1263c 95%);color:#0000;text-shadow:0 0 50px #ff6b7d4d;-webkit-background-clip:text;background-clip:text;font-size:clamp(2.6rem,7vmin,4.6rem);font-weight:900}h2{letter-spacing:.14em;color:var(--membrane);font-size:clamp(1.6rem,4vmin,2.4rem)}.tag{opacity:.88;font-size:1.02rem;line-height:1.6}.menu-btns{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}button.primary,.menu-btns button{font:inherit;cursor:pointer;letter-spacing:.14em;color:#ffeef1;background:#280a14d9;border:1px solid #ffb3c073;border-radius:2rem;padding:.85rem 2.1rem;font-size:.95rem;font-weight:700;transition:transform .15s,box-shadow .15s,background .15s}button.primary{color:#33060e;background:linear-gradient(#ff9daa,#d94257);border:none;box-shadow:0 6px 26px #ff6b7d66}button.primary:hover{transform:translateY(-2px)scale(1.03);box-shadow:0 10px 36px #ff6b7d8c}.menu-btns button:not(.primary):hover{background:#501426f2;transform:translateY(-1px)}.best{letter-spacing:.18em;color:var(--o2);opacity:.9;font-size:.85rem}.brief{text-align:left;flex-direction:column;gap:.7rem;max-width:34rem;font-size:1rem;line-height:1.7;list-style-position:inside;display:flex}.brief b{color:#fff}.res-stats{font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:center;gap:2.2rem;display:flex}.res-stats .cell{flex-direction:column;line-height:1.1;display:flex}.res-stats .cell b{color:var(--o2);font-size:1.7rem}.res-stats .cell label{letter-spacing:.26em;opacity:.7;font-size:.62rem}.res-facts{opacity:.88;text-align:left;background:#280a1499;border:1px solid #ffb3c040;border-radius:.8rem;max-width:36rem;max-height:24vh;padding:.8rem 1.1rem;font-size:.9rem;line-height:1.6;overflow-y:auto}.res-facts p{margin-bottom:.55rem}.res-facts b{color:var(--membrane)}#toast{z-index:15;pointer-events:none;letter-spacing:.06em;color:#ffeef1;background:#1c060de0;border:1px solid #ffb3c066;border-radius:2rem;max-width:min(40rem,92vw);padding:.6rem 1.4rem;font-size:1rem;font-weight:700;animation:.3s ease-out toastIn;position:absolute;top:16%;left:50%;transform:translate(-50%)}#toast.bad{color:#ffb5ba;border-color:#ff59648c}@keyframes toastIn{0%{opacity:0;transform:translate(-50%)translateY(-8px)}}.sub-art{width:11rem;height:6rem;position:relative}.sub-body{background:linear-gradient(#ffe9a8,#e8b84a 60%,#9a7420);border-radius:2rem;width:8rem;height:3.2rem;position:absolute;top:2rem;left:1rem;box-shadow:0 6px 30px #ffc85a59}.sub-dome{background:radial-gradient(circle at 35% 30%,#d9f6ff,#6fc4e8 60%,#2a7fa8);border:3px solid #9a7420;border-radius:50%;width:2.6rem;height:2.6rem;position:absolute;top:1.1rem;left:6.4rem}.sub-fin{background:linear-gradient(#e8b84a,#9a7420);border-radius:.4rem 1.4rem 0 .4rem;width:2.2rem;height:1.8rem;position:absolute;top:1.4rem;left:.2rem}.bubble{border:2px solid #7de8ffb3;border-radius:50%;animation:2.6s ease-in infinite bub;position:absolute}.b1{width:.7rem;height:.7rem;top:2.2rem;left:9.6rem}.b2{width:.5rem;height:.5rem;animation-delay:.6s;top:1.4rem;left:10.3rem}.b3{width:.4rem;height:.4rem;animation-delay:1.3s;top:3rem;left:10rem}@keyframes bub{0%{opacity:0;transform:translateY(0)}25%{opacity:1}to{opacity:0;transform:translateY(-2.6rem)}}@media (prefers-reduced-motion:reduce){.bubble{animation:none}*{transition-duration:.01ms!important}}
