:root,:root[data-theme=dark]{--bg: #0b0f1a;--bg2: #141a2b;--card: #1b2336;--card2: #232c44;--text: #eef1f8;--muted: #9aa3bd;--primary: #6c5ce7;--primary2: #8b7bff;--good: #2ecc71;--bad: #e74c3c;--gold: #ffd166;--line: #2a334d;color-scheme:dark}:root[data-theme=light]{--bg: #f3f5fb;--bg2: #ffffff;--card: #ffffff;--card2: #eef1f8;--text: #161b27;--muted: #5b647a;--primary: #6c5ce7;--primary2: #5a4bd4;--good: #16a34a;--bad: #dc2626;--gold: #b8860b;--line: #e3e8f1;color-scheme:light}body,.card,.choice,.topbar,.bottomnav,.stat,.powerbtn{transition:background-color .2s ease,color .2s ease,border-color .2s ease}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;overscroll-behavior:none}button{font-family:inherit;cursor:pointer;border:none}a{color:var(--primary2)}.app{max-width:520px;margin:0 auto;height:100dvh;display:flex;flex-direction:column;position:relative;background:var(--bg)}body.admin-host .app{max-width:1000px}body.admin-host .content{padding-bottom:24px}body.admin-host .stat-grid{grid-template-columns:repeat(4,1fr)}.topbar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;gap:8px}.topbar .brand{font-weight:800;font-size:18px;letter-spacing:.3px}.topbar .brand span{color:var(--primary2)}.chips{display:flex;gap:8px;align-items:center}.chip{background:var(--card);border:1px solid var(--line);border-radius:999px;padding:6px 10px;font-size:13px;font-weight:700;display:flex;gap:6px;align-items:center}.chip.gold{color:var(--gold)}.langtoggle button{background:var(--card);color:var(--muted);border:1px solid var(--line);border-radius:8px;padding:5px 8px;font-weight:700;font-size:12px}.langtoggle button.active{background:var(--primary);color:#fff;border-color:var(--primary)}.lang-select{background:var(--card);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-weight:800;font-size:13px}[dir=rtl] .choice{text-align:right}[dir=rtl] .skip{margin-left:0;margin-right:auto}[dir=rtl] .bubble.user{align-self:flex-start}[dir=rtl] .bubble.assistant{align-self:flex-end}.content{flex:1;overflow-y:auto;padding:4px 16px 84px}.content.nopad{padding:0 0 64px}.bottomnav{position:absolute;bottom:0;left:0;right:0;display:flex;background:var(--bg2);border-top:1px solid var(--line)}.bottomnav a{flex:1;text-align:center;padding:10px 0 14px;color:var(--muted);text-decoration:none;font-size:11px;font-weight:700}.bottomnav a.active{color:var(--primary2)}.bottomnav .ico{font-size:20px;display:block}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px;margin:12px 0}.row{display:flex;align-items:center;justify-content:space-between;gap:10px}.muted{color:var(--muted)}.h1{font-size:22px;font-weight:800;margin:12px 2px}.h2{font-size:15px;font-weight:800;margin:6px 2px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px}.btn{background:var(--primary);color:#fff;border-radius:12px;padding:13px 16px;font-weight:800;font-size:15px;width:100%}.btn:active{transform:translateY(1px)}.btn.ghost{background:var(--card2);color:var(--text)}.btn.sm{width:auto;padding:8px 12px;font-size:13px;border-radius:10px}.btn:disabled{opacity:.5}.cat{display:flex;align-items:center;gap:14px}.cat .icon{font-size:30px;width:48px;height:48px;display:grid;place-items:center;background:var(--card2);border-radius:12px}.cat .meta{flex:1}.cat .name{font-weight:800;font-size:16px}.elo-pill{background:var(--primary);color:#fff;border-radius:999px;padding:4px 10px;font-weight:800;font-size:13px}.auth{padding:24px 18px;display:flex;flex-direction:column;gap:12px;justify-content:center;flex:1}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:13px;color:var(--muted);font-weight:700}.field input,select{background:var(--card);border:1px solid var(--line);color:var(--text);border-radius:10px;padding:12px;font-size:15px}.error{color:var(--bad);font-size:13px;font-weight:700}.feed{height:100%;position:relative;overflow:hidden}.qcard{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;padding:18px;transition:transform .28s ease,opacity .28s ease}.qcard .topic{color:var(--muted);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.qcard .prompt{font-size:24px;font-weight:800;line-height:1.25;margin:14px 0 18px;flex:0 0 auto}.choices{display:flex;flex-direction:column;gap:12px;margin-top:auto}.choice{background:var(--card);border:2px solid var(--line);color:var(--text);border-radius:14px;padding:16px;font-size:16px;font-weight:700;text-align:left;transition:all .15s}.choice:active{transform:scale(.99)}.choice.correct{border-color:var(--good);background:#2ecc7126}.choice.wrong{border-color:var(--bad);background:#e74c3c26}.choice.hidden{opacity:.25;pointer-events:none}.choice .letter{display:inline-block;width:22px;color:var(--muted);font-weight:800}.feedbar{display:flex;gap:10px;margin-top:14px;align-items:center}.powerbtn{background:var(--card2);border:1px solid var(--line);border-radius:12px;padding:10px 12px;font-weight:800;font-size:13px;color:var(--text);display:flex;gap:6px;align-items:center}.powerbtn:disabled{opacity:.4}.skip{margin-left:auto;background:transparent;color:var(--muted);font-weight:700}.result{position:absolute;top:0;right:0;bottom:0;left:0;background:#0b0f1aeb;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:24px;text-align:center;z-index:5}.result .big{font-size:30px;font-weight:900}.result .delta{font-size:40px;font-weight:900;margin:6px 0}.result .delta.up{color:var(--good)}.result .delta.down{color:var(--bad)}.result .expl{color:var(--muted);margin:10px 0 20px;max-width:360px}.result .earn{color:var(--gold);font-weight:800}.swipehint{color:var(--muted);font-size:13px;margin-top:16px;animation:bob 1.4s infinite}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.lb-row{display:flex;align-items:center;gap:12px;padding:12px 6px;border-bottom:1px solid var(--line)}.lb-row .pos{width:30px;font-weight:900;color:var(--muted);text-align:center}.lb-row.me{background:#6c5ce726;border-radius:10px}.lb-row .nm{flex:1;font-weight:700}.lb-row .rt{font-weight:900;color:var(--primary2)}.pos.gold{color:var(--gold)}.admin textarea,.admin input,.admin select{width:100%;background:var(--card);border:1px solid var(--line);color:var(--text);border-radius:8px;padding:10px;font-size:14px}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px}.stat .v{font-size:24px;font-weight:900}.stat .k{color:var(--muted);font-size:12px;font-weight:700}.seg{display:flex;background:var(--card2);border:1px solid var(--line);border-radius:12px;padding:4px;gap:4px}.seg-btn{flex:1;background:transparent;color:var(--muted);border-radius:9px;padding:10px;font-weight:800;font-size:14px}.seg-btn.active{background:var(--primary);color:#fff}.chat{display:flex;flex-direction:column;gap:8px;min-height:240px;max-height:52vh;overflow-y:auto;padding:8px;background:var(--bg2);border:1px solid var(--line);border-radius:12px}.bubble{max-width:85%;padding:10px 12px;border-radius:12px;font-size:14px;line-height:1.35;white-space:pre-wrap}.bubble.user{align-self:flex-end;background:var(--primary);color:#fff;border-bottom-right-radius:4px}.bubble.assistant{align-self:flex-start;background:var(--card2);color:var(--text);border-bottom-left-radius:4px}.chat-input{display:flex;gap:8px;margin-top:10px}.chat-input input{flex:1;background:var(--card);border:1px solid var(--line);color:var(--text);border-radius:10px;padding:12px;font-size:15px}.shop-ico{font-size:24px;width:44px;height:44px;display:grid;place-items:center;background:var(--card2);border-radius:12px}.shop-ico.frame-gold{box-shadow:0 0 0 2px var(--gold) inset}.shop-ico.frame-neon{box-shadow:0 0 0 2px #00e5ff inset,0 0 8px #00e5ff}.powerbtn.armed{background:var(--primary);color:#fff;border-color:var(--primary)}.badge-grid{display:flex;flex-wrap:wrap;gap:8px}.badge-chip{display:flex;align-items:center;gap:6px;padding:8px 10px;border-radius:10px;background:var(--card);border:1px solid var(--line);font-size:13px;font-weight:700}.badge-chip .b-ico{font-size:18px}.badge-chip.tier-bronze{border-color:#cd7f32}.badge-chip.tier-silver{border-color:#9aa3bd}.badge-chip.tier-gold{border-color:var(--gold)}.badge-chip.tier-platinum{border-color:#67e8f9}.badge-toast{margin:8px 0;background:#ffd16626;border:1px solid var(--gold);color:var(--gold);border-radius:10px;padding:8px 12px;font-weight:800}.tab-scroll{display:flex;gap:6px;overflow-x:auto;padding-bottom:6px;margin-bottom:10px;-webkit-overflow-scrolling:touch}.tab-scroll::-webkit-scrollbar{height:0}.tab-scroll .seg-btn{flex:0 0 auto;background:var(--card2);border:1px solid var(--line);border-radius:999px;padding:8px 14px}.tab-scroll .seg-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.result-actions{display:flex;gap:16px;margin-top:12px}.link-btn{background:transparent;color:var(--muted);font-weight:700;font-size:13px}.link-btn:disabled{color:var(--good);opacity:1}.center{display:grid;place-items:center;height:100%;color:var(--muted);padding:24px;text-align:center}.spinner{width:28px;height:28px;border:3px solid var(--line);border-top-color:var(--primary2);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.wheel-card{display:flex;flex-direction:column;align-items:center;gap:10px}.wheel-wrap{position:relative;width:220px;height:220px}.wheel{width:220px;height:220px;border-radius:50%;border:6px solid var(--card2);box-shadow:0 6px 24px #00000040;transition:transform 3.6s cubic-bezier(.16,.84,.3,1)}.wheel-ico{position:absolute;top:50%;left:50%;width:24px;height:24px;margin:-12px 0 0 -12px;display:grid;place-items:center;font-size:20px;pointer-events:none}.wheel-pointer{position:absolute;top:-4px;left:50%;transform:translate(-50%);width:0;height:0;z-index:3;border-left:11px solid transparent;border-right:11px solid transparent;border-top:18px solid var(--text);filter:drop-shadow(0 1px 1px rgba(0,0,0,.4))}.wheel-spin{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:72px;height:72px;border-radius:50%;z-index:2;background:var(--primary);color:#fff;border:4px solid var(--bg2);font-weight:900;font-size:14px;letter-spacing:.5px;cursor:pointer;box-shadow:0 4px 12px #0000004d}.wheel-spin:disabled{opacity:.7;cursor:default}.wheel-status{text-align:center;font-weight:800;font-size:14px}.wheel-status .ok{color:var(--primary2, #22c55e)}.cat.locked{opacity:.55}
