@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/space-grotesk-latin-400-normal-CJ-V5oYT.woff2)format("woff2"),url(/assets/space-grotesk-latin-400-normal-BnQMeOim.woff)format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-500-normal-lFbtlQH6.woff2)format("woff2"),url(/assets/space-grotesk-latin-500-normal-CNSSEhBt.woff)format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-700-normal-RjhwGPKo.woff2)format("woff2"),url(/assets/space-grotesk-latin-700-normal-CwsQ-cCU.woff)format("woff")}@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/unbounded-latin-600-normal-oRSANpZr.woff2)format("woff2"),url(/assets/unbounded-latin-600-normal-BPdB_PEv.woff)format("woff")}@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/unbounded-latin-800-normal-CN2Hxyoo.woff2)format("woff2"),url(/assets/unbounded-latin-800-normal-Cjred_zf.woff)format("woff")}@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/unbounded-latin-900-normal-DrIEwloP.woff2)format("woff2"),url(/assets/unbounded-latin-900-normal-4cp7xOrc.woff)format("woff")}:root{--font-head:"Unbounded", "Space Grotesk", system-ui, sans-serif;--font-body:"Space Grotesk", system-ui, -apple-system, sans-serif;--bg:#0b0b12;--ink:#f4f4ff;--muted:#f4f4ff9e;--glass:#1414229e;--glass-strong:#0e0e1adb;--line:#ffffff1a;--accent:#2f7bff;--accent-2:#7db4ff;--accent-ink:#fff;--accent-glow:#2f7bff73;--good:#3ddc84;--warn:#ffb020;--bad:#ff4d5e;--radius:22px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}:root[data-theme=rose]{--accent:#ff4fa3;--accent-2:#ffa3d1;--accent-glow:#ff4fa373}:root[data-theme=blue]{--accent:#2f7bff;--accent-2:#7db4ff;--accent-glow:#2f7bff73}:root[data-theme=lila]{--accent:#a259ff;--accent-2:#cfa8ff;--accent-glow:#a259ff73}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);height:100%;color:var(--ink);font-family:var(--font-body);overscroll-behavior:none;margin:0;overflow:hidden}body.game{touch-action:none;width:100%;height:100%;position:fixed;inset:0}body.game .screen.scroll{touch-action:pan-y;overscroll-behavior:contain}body.game .tbl-wrap{touch-action:pan-x pan-y}body.game input,body.game textarea,body.game select{touch-action:manipulation}button,input,select{font:inherit;color:inherit}button{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:0 0;border:0;padding:0}h1,h2,h3{font-family:var(--font-head);letter-spacing:-.01em;margin:0}h1{font-size:clamp(28px,7vw,44px);font-weight:900;line-height:1.05}h2{font-size:clamp(20px,5vw,28px);font-weight:800}h3{text-transform:uppercase;letter-spacing:.08em;color:var(--ink);text-shadow:0 2px 10px #000000e6;padding:4px 6px 0;font-size:13px;font-weight:700}p{margin:0;line-height:1.45}#gl{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}#ui{pointer-events:none;position:fixed;inset:0}#ui>*{pointer-events:auto}.screen{padding:calc(16px + var(--safe-top)) 16px calc(16px + var(--safe-bottom));flex-direction:column;animation:.35s both fade-in;display:flex;position:absolute;inset:0}.screen.scroll{-webkit-overflow-scrolling:touch;overflow-y:auto}.screen.center{text-align:center;justify-content:center;align-items:center}.screen.vignette{background:radial-gradient(at 50% 55%,#07070dd1 0%,#07070d8c 45%,#07070d26 80%)}.screen.bottom{justify-content:flex-end}.stack{flex-direction:column;gap:12px;display:flex}.row{align-items:center;gap:10px;display:flex}.spread{justify-content:space-between}.grow{flex:1}.wrap{width:100%;max-width:520px;margin:0 auto}.mt{margin-top:16px}.mb{margin-bottom:16px}.muted{color:var(--muted)}.small{font-size:13px}.accent{color:var(--accent)}.head-glow{text-shadow:0 0 24px var(--accent-glow)}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes pop{0%{opacity:0;transform:scale(.6)}70%{opacity:1;transform:scale(1.08)}to{transform:scale(1)}}@keyframes pulse{0%,to{box-shadow:0 0 0 0 var(--accent-glow)}50%{box-shadow:0 0 0 14px #0000}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.card{background:var(--glass-strong);-webkit-backdrop-filter:blur(18px)saturate(140%);border:1px solid var(--line);border-radius:var(--radius);padding:16px}.card.strong{background:var(--glass-strong)}.card.accent-border{border-color:color-mix(in srgb, var(--accent) 60%, transparent);box-shadow:0 0 40px -10px var(--accent-glow)}.pill{border:1px solid var(--line);white-space:nowrap;background:#ffffff14;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;display:inline-flex}.pill.accent{background:color-mix(in srgb, var(--accent) 22%, transparent);border-color:color-mix(in srgb, var(--accent) 50%, transparent);color:var(--accent-2)}.pill.good{color:var(--good);background:#3ddc8429;border-color:#3ddc8480}.pill.bad{color:var(--bad);background:#ff4d5e29;border-color:#ff4d5e80}.btn{min-height:54px;font-family:var(--font-head);letter-spacing:.01em;border:1px solid var(--line);color:var(--ink);-webkit-user-select:none;user-select:none;background:#ffffff14;border-radius:18px;justify-content:center;align-items:center;gap:8px;padding:0 22px;font-size:15px;font-weight:800;transition:transform .12s,background .2s,box-shadow .2s;display:inline-flex}.btn:active{transform:scale(.97)}.btn.primary{background:var(--accent);color:var(--accent-ink);box-shadow:0 12px 30px -8px var(--accent-glow);border-color:#0000}.btn.primary:hover{box-shadow:0 16px 40px -8px var(--accent-glow)}.btn.ghost{background:0 0}.btn.block{width:100%}.btn.big{border-radius:22px;min-height:64px;font-size:18px}.btn.sm{border-radius:12px;min-height:40px;padding:0 14px;font-size:13px}.btn.icon{border-radius:14px;width:46px;min-height:46px;padding:0}.btn:disabled{opacity:.45;pointer-events:none}.btn.danger{background:var(--bad);color:#fff}.field{flex-direction:column;gap:6px;display:flex}.field label{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:12px;font-weight:700}.input{border:1px solid var(--line);width:100%;min-height:54px;color:var(--ink);background:#ffffff0f;border-radius:16px;outline:none;padding:0 16px;font-size:17px}.input:focus{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 25%, transparent)}.input::placeholder{color:#f4f4ff59}.otp{justify-content:center;gap:8px;display:flex}.otp input{text-align:center;width:44px;height:56px;font-family:var(--font-head);border:1px solid var(--line);color:var(--ink);background:#ffffff0f;border-radius:14px;outline:none;font-size:22px;font-weight:800}.otp input:focus{border-color:var(--accent)}.tiles{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;display:grid}.tile{text-align:center;border:1.5px solid var(--line);background:#ffffff0f;border-radius:20px;padding:18px 12px;transition:transform .12s,border-color .2s,background .2s}.tile:active{transform:scale(.97)}.tile.selected{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 18%, transparent);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 18%, transparent)}.tile .emoji{margin-bottom:6px;font-size:34px;display:block}.tile .name{font-family:var(--font-head);font-size:14px;font-weight:800}.tile .sub{color:var(--muted);margin-top:2px;font-size:12px}.bar{background:#ffffff1a;border-radius:999px;height:10px;overflow:hidden}.bar>i{background:linear-gradient(90deg, var(--accent), var(--accent-2));border-radius:999px;height:100%;transition:width .5s cubic-bezier(.2,.8,.2,1);display:block}.bar.good>i{background:linear-gradient(90deg, #22c55e, var(--good))}.bar.bad>i{background:linear-gradient(90deg,#ff4d5e,#ff8a95)}.topbar{align-items:center;gap:8px;display:flex}.topbar .stat{font-family:var(--font-head);background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:14px;align-items:center;gap:6px;padding:8px 12px;font-size:14px;font-weight:800;display:flex}.avatar{width:44px;height:44px;font-family:var(--font-head);background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#fff;box-shadow:0 8px 20px -6px var(--accent-glow);border-radius:14px;place-items:center;font-weight:900;display:grid}.quote{font-family:var(--font-head);text-shadow:0 2px 20px #000c,0 0 40px #0009;max-width:440px;font-size:clamp(18px,4.6vw,24px);font-weight:800;line-height:1.25}.quote-author{color:var(--accent-2);margin-top:6px;font-size:13px;font-weight:500}.dock{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.dock .app{background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);text-align:left;border-radius:20px;flex-direction:column;align-items:flex-start;gap:8px;min-height:92px;padding:14px;transition:transform .12s;display:flex}.dock .app:active{transform:scale(.97)}.dock .app .ic{font-size:26px}.dock .app .t{font-family:var(--font-head);font-size:14px;font-weight:800}.dock .app .s{color:var(--muted);font-size:12px}.dock .app.hero{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 55%, #000), color-mix(in srgb, var(--accent) 20%, #000));border-color:color-mix(in srgb, var(--accent) 60%, transparent);grid-column:span 2}.dock .app.hero .s{color:#ffffffbf}.q-card{background:var(--glass-strong);border:1px solid var(--line);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:26px;padding:20px}.q-text{font-size:18px;font-weight:500;line-height:1.4}.q-img{width:120px;height:120px;margin:4px auto 12px;display:block}.answers{flex-direction:column;gap:10px;margin-top:16px;display:flex}.answer{text-align:left;border:1.5px solid var(--line);background:#ffffff0f;border-radius:18px;align-items:center;gap:12px;padding:14px 16px;font-size:15px;line-height:1.35;transition:border-color .15s,background .15s,transform .12s;display:flex}.answer:active{transform:scale(.985)}.answer .box{border:2px solid #ffffff4d;border-radius:8px;flex:none;place-items:center;width:24px;height:24px;font-size:14px;display:grid}.answer.selected{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 16%, transparent)}.answer.selected .box{background:var(--accent);border-color:var(--accent)}.answer.right{border-color:var(--good);background:#3ddc8424}.answer.right .box{background:var(--good);border-color:var(--good);color:#062}.answer.wrong{border-color:var(--bad);background:#ff4d5e24;animation:.4s shake}.answer.wrong .box{background:var(--bad);border-color:var(--bad)}.explain{border-left:3px solid var(--accent);background:#ffffff0f;border-radius:16px;margin-top:14px;padding:14px;font-size:14px;line-height:1.45}.hud{pointer-events:none;position:absolute;inset:0}.hud>*{pointer-events:auto}.hud-top{top:calc(10px + var(--safe-top));align-items:flex-start;gap:8px;display:flex;position:absolute;left:12px;right:12px}.speedo{right:14px;bottom:calc(150px + var(--safe-bottom));background:var(--glass-strong);border:2px solid var(--line);text-align:center;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:50%;place-items:center;width:104px;height:104px;display:grid;position:absolute}.speedo .v{font-family:var(--font-head);font-size:30px;font-weight:900;line-height:1}.speedo .u{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-top:2px;font-size:10px}.speedo.over{border-color:var(--bad);box-shadow:0 0 30px -4px #ff4d5eb3}.limit{right:14px;bottom:calc(262px + var(--safe-bottom));color:#111;width:54px;height:54px;font-family:var(--font-head);background:#fff;border:6px solid #d62828;border-radius:50%;place-items:center;font-size:18px;font-weight:900;display:grid;position:absolute}.examiner{left:12px;right:130px;bottom:calc(150px + var(--safe-bottom));align-items:flex-end;gap:10px;display:flex;position:absolute}.examiner .face{background:var(--glass-strong);border:1px solid var(--line);border-radius:16px;flex:none;place-items:center;width:48px;height:48px;font-size:26px;display:grid}.examiner .bubble{background:var(--glass-strong);border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:18px 18px 18px 4px;max-width:100%;padding:10px 14px;font-size:14px;line-height:1.35;animation:.25s fade-in}.examiner .bubble.bad{background:#460a14d9;border-color:#ff4d5e99}.examiner .bubble.good{background:#0a3c1ed9;border-color:#3ddc8499}.nav{background:var(--glass-strong);border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:16px;align-items:center;gap:10px;padding:8px 12px;display:flex}.nav .arrow{font-size:26px;line-height:1}.nav .txt{font-size:13px;font-weight:700}.nav .dist{color:var(--muted);font-size:12px}.faults{flex-direction:column;align-items:flex-end;gap:4px;margin-left:auto;display:flex}.faults .fp{font-family:var(--font-head);background:var(--glass-strong);border:1px solid var(--line);border-radius:14px;padding:8px 12px;font-size:18px;font-weight:900}.faults .fp.hot{color:var(--bad);border-color:#ff4d5e99}.controls{left:12px;right:12px;bottom:calc(14px + var(--safe-bottom));justify-content:space-between;align-items:flex-end;gap:8px;display:flex;position:absolute}.ctl{background:var(--glass-strong);border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);-webkit-user-select:none;user-select:none;touch-action:none;border-radius:22px;place-items:center;width:66px;height:66px;font-size:26px;display:grid}.ctl.on{background:var(--accent);color:#fff;border-color:#0000}.ctl.wide{width:84px}.ctl.tall{height:96px}.ctl small{letter-spacing:.08em;text-transform:uppercase;font-size:10px}.ctl.blink.active{color:#222;background:#ffb020;animation:.8s steps(2,end) infinite blink}@keyframes blink{50%{opacity:.35}}.pedals,.steer{gap:8px;display:flex}.kbd-hint{left:50%;bottom:calc(14px + var(--safe-bottom));color:var(--muted);background:var(--glass-strong);border:1px solid var(--line);white-space:nowrap;border-radius:12px;padding:8px 14px;font-size:12px;position:absolute;transform:translate(-50%)}.mirror-flash{pointer-events:none;background:radial-gradient(ellipse at var(--mx,50%) 50%, #ffffff59, transparent 40%);opacity:0;transition:opacity .15s;position:absolute;inset:0}.mirror-flash.on{opacity:1}.fail-overlay{background:#5a000a8c;place-items:center;animation:.3s fade-in;display:grid;position:absolute;inset:0}.big-num{font-family:var(--font-head);font-size:64px;font-weight:900;line-height:1}.stars{letter-spacing:4px;font-size:34px}.badge-pop{animation:.5s cubic-bezier(.2,.8,.2,1) both pop}.list{flex-direction:column;gap:8px;display:flex}.list .item{border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:left;background:#0e0e1ad6;border-radius:16px;align-items:center;gap:12px;padding:12px 14px;display:flex}.list .item .ic{text-align:center;width:32px;font-size:22px}.list .item .t{font-size:14px;font-weight:700}.list .item .s{color:var(--muted);font-size:12px}.list .item.locked{opacity:.5}.list .item.selected{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent)}#toast{top:calc(14px + var(--safe-top));z-index:50;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.toast{background:var(--glass-strong);border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:14px;padding:10px 16px;font-size:14px;font-weight:700;animation:.3s fade-in;box-shadow:0 10px 30px #0006}.toast.xp{border-color:color-mix(in srgb, var(--accent) 60%, transparent);color:var(--accent-2)}.swatches{flex-wrap:wrap;gap:10px;display:flex}.swatch{border:3px solid #0000;border-radius:50%;width:40px;height:40px;transition:transform .12s;box-shadow:inset 0 0 0 2px #00000040}.swatch.selected{border-color:#fff;transform:scale(1.12)}.steps{flex-direction:column;gap:0;display:flex}.step{gap:12px;padding:10px 0;display:flex}.step .dot{border:1px solid var(--line);background:#ffffff1a;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:13px;font-weight:800;display:grid}.step.done .dot{background:var(--good);color:#052;border-color:#0000}.step.active .dot{background:var(--accent);color:#fff;border-color:#0000;animation:1.6s infinite pulse}.step .t{font-size:14px;font-weight:700}.step .s{color:var(--muted);font-size:12px}.intro-title{font-family:var(--font-head);letter-spacing:-.03em;white-space:nowrap;background:linear-gradient(180deg, #fff, var(--accent-2));color:#0000;filter:drop-shadow(0 0 30px var(--accent-glow));-webkit-background-clip:text;background-clip:text;font-size:clamp(44px,13vw,96px);font-weight:900;line-height:.95;animation:4s ease-in-out infinite float}.intro-sub{color:var(--muted);max-width:320px;margin:12px auto 0;font-size:15px}@media (min-width:720px){.dock{grid-template-columns:repeat(3,1fr)}.dock .app.hero{grid-column:span 3}}@media (max-width:430px){.ctl{border-radius:16px;width:52px;height:52px;font-size:20px}.ctl.tall{height:78px}.ctl small{font-size:9px}.controls{gap:4px}.controls .row{gap:6px!important}.examiner{right:124px;bottom:calc(176px + var(--safe-bottom))}.examiner .bubble{font-size:13px}.speedo{width:92px;height:92px;bottom:calc(176px + var(--safe-bottom))}.speedo .v{font-size:26px}.limit{bottom:calc(276px + var(--safe-bottom))}}.backoffice{background:#0b0b12}.bo-wrap{width:100%;max-width:1120px;margin:0 auto}.tbl-wrap{border:1px solid var(--line);background:#0e0e1ad6;border-radius:14px;overflow-x:auto}.tbl{border-collapse:collapse;width:100%;font-size:13px}.tbl th,.tbl td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:10px 12px}.tbl th{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);white-space:nowrap;font-size:11px}.tbl tr:last-child td{border-bottom:0}.grid2{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}select.input{appearance:none}details>summary{cursor:pointer;list-style:none;display:inline-flex}details>summary::-webkit-details-marker{display:none}.tbl a{color:var(--accent-2)}
