:root{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;--bg:#101018;--surface:#1a1b27;--surface2:#242635;--border:#313449;--accent:#6370f0;--accent2:#8b5cf6;--danger:#f04060;--success:#3dd68c;--warning:#f4a33d;--text:#f2f4fb;--muted:#8b90ad;--text-muted:#8b90ad;--on-accent:#fff;--radius:16px;--shadow-card:0 14px 34px #0000003d;--shadow-home-card:var(--shadow-card);--shadow-home-hero:var(--shadow-card);--home-card-bg:var(--surface);--shadow-control:0 8px 18px #0000002e;--home-indigo-bg:color-mix(in srgb, var(--accent) 13%, transparent);--home-indigo-fg:var(--accent);--home-purple-bg:color-mix(in srgb, var(--accent2) 14%, transparent);--home-purple-fg:var(--accent2);--home-blue-bg:#2563eb24;--home-blue-fg:#60a5fa;--home-arrow:color-mix(in srgb, var(--muted) 55%, transparent);--body-bg:linear-gradient(180deg, color-mix(in srgb, var(--bg) 94%, var(--surface)) 0%, var(--bg) 58%, color-mix(in srgb, var(--surface) 34%, var(--bg)) 100%);--chrome-bg:color-mix(in srgb, var(--bg) 82%, transparent);--chrome-surface:color-mix(in srgb, var(--surface) 92%, transparent);--chrome-border:color-mix(in srgb, var(--border) 72%, transparent);--card-border:color-mix(in srgb, var(--border) 72%, transparent);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--header-h:calc(58px + env(safe-area-inset-top,0px))}:root[data-theme=light]{--bg:#f3f4f9;--surface:#fff;--surface2:#f1f5f9;--border:#e2e8f0;--accent:#4f46e5;--accent2:#7c3aed;--danger:#d12a4e;--success:#1f9d57;--warning:#d28a17;--text:#1e293b;--muted:#64748b;--text-muted:#64748b;--on-accent:#fff;--shadow-card:0 8px 30px #0f172a12;--shadow-home-card:0 16px 40px #5567e821, 0 6px 20px #0f172a0f;--shadow-home-hero:0 12px 36px #0f172a14, 0 4px 12px #0f172a0a;--home-card-bg:linear-gradient(145deg, #fffffffa, #ffffffe6);--shadow-control:0 1px 2px #0f172a0d;--body-bg:linear-gradient(145deg, #e8f4fff5 0%, #f9fbfff5 42%, #f4effff5 100%);--chrome-bg:#eff5ffc2;--chrome-surface:#fffffff5;--chrome-border:transparent;--card-border:#ffffffb8;--home-indigo-bg:#eef2ff;--home-indigo-fg:#4f46e5;--home-purple-bg:#faf5ff;--home-purple-fg:#9333ea;--home-blue-bg:#eff6ff;--home-blue-fg:#2563eb;--home-arrow:#cbd5e1;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box;margin:0;padding:0}html{scrollbar-gutter:stable;background:var(--body-bg);min-height:100%}.ph-icon{flex-shrink:0;display:block}body{background:var(--body-bg);color:var(--text);font-family:var(--font-sans);-webkit-tap-highlight-color:transparent;min-height:100vh;overflow-x:clip}body:before{content:none}#root{flex-direction:column;align-items:center;min-height:100vh;display:flex}.page{z-index:1;width:100%;max-width:480px;padding:16px 20px 108px;animation:.35s fadeUp;position:relative}.page>.section-title:first-child{margin-top:6px}.progress-page,.config-page{height:calc(100vh - var(--header-h));height:calc(100dvh - var(--header-h));flex-direction:column;display:flex}.config-page{padding:0 20px}.progress-page{padding:0}.config-top,.progress-top{flex-shrink:0;padding-top:12px}.progress-top{padding-left:20px;padding-right:20px}.config-scroll,.progress-scroll{flex:1;min-height:0;overflow-y:auto}.config-scroll{padding-bottom:108px}.seg-track{background:var(--surface);border:1px solid var(--border);border-radius:11px;gap:4px;padding:4px;display:flex}.seg-tab{min-height:38px;color:var(--muted);font-family:var(--font-sans);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:1px solid #0000;border-radius:8px;flex:1;font-size:.92rem;font-weight:600;transition:background .18s,border-color .18s,color .18s,transform .12s}.seg-tab:active{transform:scale(.98)}.seg-tab.active{background:color-mix(in srgb, var(--accent) 12%, var(--surface));border-color:color-mix(in srgb, var(--accent) 35%, var(--border));color:var(--text)}.dominio-tab{flex-direction:column;gap:16px;display:flex}.dominio-empty{text-align:center;color:var(--muted);padding:48px 24px}.dominio-level-card{border:1.5px solid var(--lvl-border,var(--border));background:var(--lvl-bg,var(--surface));border-radius:16px;flex-direction:column;gap:4px;padding:14px 18px;display:flex}.dominio-level-card.lvl-none{--lvl-bg:var(--surface);--lvl-border:var(--border);--lvl-color:var(--muted)}.dominio-level-card.lvl-iniciante{--lvl-color:var(--accent);--lvl-bg:color-mix(in srgb, var(--accent) 8%, var(--surface));--lvl-border:color-mix(in srgb, var(--accent) 35%, var(--border))}.dominio-level-card.lvl-inter{--lvl-color:var(--success);--lvl-bg:color-mix(in srgb, var(--success) 8%, var(--surface));--lvl-border:color-mix(in srgb, var(--success) 35%, var(--border))}.dominio-level-card.lvl-avancado{--lvl-color:var(--warning);--lvl-bg:color-mix(in srgb, var(--warning) 8%, var(--surface));--lvl-border:color-mix(in srgb, var(--warning) 35%, var(--border))}.dominio-level-card.lvl-lenda{--lvl-color:#f59e0b;--lvl-bg:color-mix(in srgb, #f59e0b 10%, var(--surface));--lvl-border:color-mix(in srgb, #f59e0b 40%, var(--border))}.dominio-level-label{color:var(--lvl-color,var(--muted));font-size:20px;font-weight:800;line-height:1}.dominio-level-next{color:var(--muted);font-size:12px}.dominio-range-row{align-items:center;gap:10px;display:flex}.dominio-range-label{color:var(--muted);white-space:nowrap;font-size:12px;font-weight:600}.dominio-range-chips{flex-wrap:wrap;gap:6px;display:flex}.dominio-range-chip{font-size:12px;font-weight:700;font-family:var(--font-sans);background:var(--surface2);border:1px solid var(--border);color:var(--muted);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:20px;padding:5px 11px;transition:background .15s,border-color .15s,color .15s}.dominio-range-chip.active{background:color-mix(in srgb, var(--accent) 12%, var(--surface2));border-color:color-mix(in srgb, var(--accent) 55%, var(--border));color:var(--text)}.dominio-bars-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden}.dominio-op-row{grid-template-columns:minmax(0,120px) 1fr 38px;align-items:center;gap:10px;padding:12px 16px;display:grid}.dominio-op-row.divider{border-top:1px solid var(--border)}.dominio-op-label{color:var(--text);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:7px;min-width:0;font-size:12px;display:flex;overflow:hidden}.dominio-op-sym{background:color-mix(in srgb, var(--accent) 14%, transparent);width:21px;height:21px;color:var(--accent);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.dominio-op-bar-track{background:var(--surface2);border-radius:4px;height:8px;overflow:hidden}.dominio-op-bar-fill{border-radius:4px;height:100%;transition:width .35s}.dominio-op-bar-fill.full{background:var(--success)}.dominio-op-bar-fill.partial{background:color-mix(in srgb, var(--accent) 75%, var(--success) 25%)}.dominio-op-pct{color:var(--text);text-align:right;font-size:12px;font-weight:700}.dominio-op-pct.muted{color:var(--muted);font-weight:400}.dominio-weak-section{flex-direction:column;gap:10px;display:flex}.dominio-weak-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.dominio-weak-title{color:var(--text);font-size:13px;font-weight:700}.dominio-weak-train-btn{border:1px solid color-mix(in srgb, var(--accent) 45%, var(--border));background:color-mix(in srgb, var(--accent) 10%, var(--surface));color:var(--accent);font:inherit;cursor:pointer;border-radius:8px;padding:7px 12px;font-size:12px;font-weight:800}.dominio-weak-list{flex-direction:column;gap:6px;display:flex}.dominio-weak-item{background:var(--surface);border:1px solid var(--border);border-radius:10px;justify-content:space-between;align-items:center;padding:9px 14px;display:flex}.dominio-fact{font-size:15px;font-weight:600;font-family:var(--font-mono);color:var(--text)}.dominio-wrong-count{color:var(--danger);font-size:12px}.setup-page{padding-top:5px}.setup-page .card{margin-bottom:6px;padding:14px 16px}.setup-page .section-title{margin-bottom:8px}.game-page{padding:calc(14px + env(safe-area-inset-top,0px)) 20px max(10px, env(safe-area-inset-bottom,0px));touch-action:manipulation;flex-direction:column;height:100dvh;min-height:0;display:flex;overflow:hidden}.game-empty{justify-content:center}.game-empty-card{text-align:center;width:min(100%,420px);margin:0 auto;padding:28px 24px}.game-empty-card h1{margin:8px 0;font-size:1.35rem}.game-empty-card p{color:var(--muted);margin:0 0 22px;line-height:1.55}.game-empty-icon{background:color-mix(in srgb, var(--accent) 15%, var(--surface));width:54px;height:54px;color:var(--accent);border-radius:50%;place-items:center;margin:0 auto;font-size:1.6rem;font-weight:800;display:grid}.game-topbar{flex-shrink:0;justify-content:flex-end;align-items:center;gap:8px;height:34px;margin-bottom:4px;display:flex}.game-exit-btn{border:1px solid var(--border);background:var(--surface);width:34px;height:34px;color:var(--muted);cursor:pointer;border-radius:50%;font-size:1.25rem;line-height:1}.game-exit-btn:active{transform:scale(.95)}.game-exit-btn:hover{color:var(--text);border-color:var(--muted)}.game-pause-btn{border:1px solid var(--border);background:var(--surface);height:34px;color:var(--muted);cursor:pointer;font-family:var(--font-sans);letter-spacing:.03em;border-radius:999px;padding:0 14px;font-size:.72rem;font-weight:700;transition:color .15s,border-color .15s,transform .12s}.game-pause-btn:hover{color:var(--text);border-color:var(--muted)}.game-pause-btn:active{transform:scale(.95)}.discard-overlay{z-index:100;background:#0000008c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.discard-dialog{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:center;width:100%;max-width:320px;padding:24px 20px 20px}.discard-title{color:var(--text);margin-bottom:8px;font-size:1.1rem;font-weight:800}.discard-msg{color:var(--muted);margin-bottom:20px;font-size:.88rem}.discard-actions{gap:10px;display:flex}.discard-cancel-btn{background:var(--surface2);border:1px solid var(--border);color:var(--text);font-family:var(--font-sans);cursor:pointer;border-radius:10px;flex:1;padding:12px;font-size:.9rem;font-weight:700;transition:transform .12s}.discard-cancel-btn:active{transform:scale(.95)}.discard-confirm-btn{background:var(--danger);color:#fff;font-family:var(--font-sans);cursor:pointer;border:none;border-radius:10px;flex:1;padding:12px;font-size:.9rem;font-weight:700;transition:transform .12s}.discard-confirm-btn:active{transform:scale(.95)}@keyframes fadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.app-header{z-index:20;background:var(--chrome-bg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--chrome-border);width:100%;position:sticky;top:0}.app-header-inner{width:100%;max-width:480px;padding:calc(10px + env(safe-area-inset-top,0px)) max(24px, env(safe-area-inset-right,0px)) 14px max(24px, env(safe-area-inset-left,0px));grid-template-columns:72px minmax(0,1fr) 72px;align-items:center;gap:12px;margin:0 auto;display:grid}.top-notice-slot:not(:empty)+.app-header .app-header-inner{padding-top:18px}.top-notice-slot:not(:empty)+.home-page .home-page-top{padding-top:12px}.brand{cursor:pointer;text-align:center;background:0 0;border:none;flex-direction:column;justify-self:center;align-items:center;gap:8px;min-width:0;padding:0;display:flex}.brand-logo-row{align-items:center;gap:8px;min-width:0;display:inline-flex}.brand-mark{background:linear-gradient(145deg, var(--accent), var(--accent2));color:#fff;width:32px;height:32px;font-family:var(--font-mono);box-shadow:0 8px 18px color-mix(in srgb, var(--accent) 22%, transparent);border-radius:9px;flex-shrink:0;grid-template-columns:repeat(2,1fr);place-items:center;gap:1px;font-size:.62rem;font-weight:800;line-height:1;display:grid}.brand-subtitle{max-width:260px;color:var(--muted);letter-spacing:0;text-wrap:balance;margin-top:1px;font-size:.75rem;font-weight:400;line-height:1.25;display:block}.icon-btn{width:40px;height:40px;color:var(--accent);cursor:pointer;background:#fff;border:1px solid #f1f5f9;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:border-color .2s,transform .15s;display:flex;box-shadow:0 1px 2px #0f172a0d}.icon-btn:hover{border-color:color-mix(in srgb, var(--accent) 22%, var(--card-border))}.icon-btn:active{transform:scale(.96)}.header-side{justify-content:flex-start;align-items:center;width:72px;height:40px;display:flex}.header-side-right{justify-content:flex-end;justify-self:end}.hgoal{border:1.5px solid var(--border);width:auto;min-width:56px;height:40px;color:var(--text);cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:5px;padding:0 11px;transition:border-color .2s,transform .15s;display:flex;position:relative;box-shadow:0 1px 2px #0f172a0d}.hgoal:hover{border-color:var(--muted)}.hgoal:active{transform:scale(.96)}.hgoal.done{border-color:var(--border);background:0 0}.hgoal-ring{pointer-events:none;flex-shrink:0;display:block;transform:rotate(-90deg)}.hgoal-ring-bg{fill:none;stroke:#e2e8f0;stroke-width:2.5px}.hgoal-ring-fg{fill:none;stroke:var(--accent);stroke-width:2.5px;stroke-linecap:round;transition:stroke-dashoffset .4s}.hgoal-streak{color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap;justify-content:center;align-items:center;gap:3px;font-size:.75rem;font-weight:800;line-height:1;display:inline-flex}.hgoal:not(.done) .hgoal-streak .ph-icon{display:none}.hgoal.done .hgoal-streak{color:var(--accent)}.hgoal.done .hgoal-streak .ph-icon{width:13px;height:13px}.top-notice-slot{width:100%;padding:calc(10px + env(safe-area-inset-top,0px)) max(20px, env(safe-area-inset-right,0px)) 0 max(20px, env(safe-area-inset-left,0px));z-index:30;flex-direction:column;align-items:center;gap:8px;display:flex;position:relative}.top-notice-slot:empty{display:none}@media (display-mode:standalone){.top-notice-slot{padding-top:max(54px, calc(10px + env(safe-area-inset-top,0px)))}}.quota-warning{background:color-mix(in srgb, var(--danger) 15%, var(--surface));border:1px solid color-mix(in srgb, var(--danger) 40%, var(--border));width:100%;max-width:480px;color:var(--text);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:8px 20px;font-size:.8rem;display:flex;position:relative}.quota-warning button{color:var(--muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:2px 4px;font-size:1rem;line-height:1}.tabbar{z-index:20;background:var(--chrome-surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--chrome-border);position:fixed;bottom:0;left:0;right:0}.tabbar-inner{max-width:480px;padding:8px max(16px, env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) max(16px, env(safe-area-inset-left,0px));gap:2px;margin:0 auto;display:flex}.tab{color:var(--muted);font-family:var(--font-sans);letter-spacing:0;text-transform:none;cursor:pointer;background:0 0;border:0;border-radius:12px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:6px 2px;font-size:.65rem;font-weight:600;text-decoration:none;transition:color .2s,background .2s;display:flex}.tab-ico{justify-content:center;align-items:center;width:24px;height:24px;line-height:1;transition:transform .2s;display:inline-flex}.tab.active{color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, transparent)}.tab.active .tab-ico{transform:translateY(-1px)}.tab.disabled{cursor:default;opacity:.42;color:var(--muted);-webkit-text-fill-color:var(--muted)}.empty-state{text-align:center;color:var(--muted);padding:12px 0;font-size:.9rem}.stepper{flex-shrink:0;align-items:center;gap:8px;display:flex}.stepper-btn{background:var(--surface2);border:1px solid var(--border);width:34px;height:34px;color:var(--text);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;font-size:1.2rem;font-weight:700;line-height:1;transition:border-color .2s;display:flex}.stepper-btn:hover{border-color:var(--muted)}.stepper-val{justify-content:center;align-items:baseline;min-width:46px;display:inline-flex}.stepper-val small{color:var(--muted);margin-left:2px;font-size:.62rem}.stepper-input{width:38px;font-family:var(--font-mono);color:var(--accent);text-align:center;appearance:textfield;background:0 0;border:none;padding:0;font-size:1.2rem;font-weight:700}.stepper-input:focus{outline:none}.stepper-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.stepper-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.account-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.account-page-card{flex-direction:column;gap:12px;display:flex}.account-stack{justify-content:space-between;align-items:center;gap:12px;display:flex}.account-page .account-email{max-width:260px;margin-top:4px}.account-page-action{text-align:center;min-width:72px}.account-page-card .account-page-action{white-space:nowrap}.account-page-card .account-page-action:disabled{opacity:.55;cursor:wait}.account-checkbox-row{cursor:pointer;color:var(--text);-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-size:.88rem;font-weight:600;display:flex}.account-checkbox-row input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.goal-card{align-items:center;gap:18px;display:flex}.goal-ring{background:conic-gradient(var(--accent2) calc(var(--pct,0) * 1%), var(--border) 0);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:76px;height:76px;display:flex;position:relative}.goal-ring:before{content:"";background:var(--surface);border-radius:50%;position:absolute;inset:7px}.goal-ring-num{font-family:var(--font-mono);color:var(--text);font-size:1.05rem;font-weight:700;position:relative}.goal-ring-num small{color:var(--muted);font-size:.62rem}.goal-info{min-width:0}.goal-streak{color:var(--text);margin-bottom:4px;font-size:1.05rem;font-weight:800}.goal-freeze{color:var(--muted);font-size:.85rem;font-weight:600}.goal-sub{color:var(--muted);font-size:.8rem}.validation-card{border-color:var(--danger)}.validation-msg{color:var(--danger);font-size:.82rem;font-weight:700;line-height:1.4}.validation-msg+.validation-msg{margin-top:8px}.logo{letter-spacing:-.02em;color:var(--text);font-size:2.25rem;font-weight:400;line-height:1}.home-page-top .brand-subtitle{margin-top:9px}.section-title{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-top:15px;margin-bottom:10px;font-size:.65rem;font-weight:700}.card{background:var(--surface);border:1px solid var(--card-border);border-radius:var(--radius);box-shadow:var(--shadow-card);margin-bottom:10px;padding:18px}.home-page{padding:0 24px 112px}.home-page-top{padding:calc(env(safe-area-inset-top,0px) + 10px) 0 18px;text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.home-account-row{justify-content:flex-end;align-items:center;gap:8px;width:100%;margin-bottom:10px;display:flex}.home-hero-card{background:var(--surface);border:1px solid var(--card-border);box-shadow:var(--shadow-home-hero);border-radius:28px;margin-bottom:14px;padding:18px;position:relative;overflow:hidden}.home-hero-top{align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.home-hero-text{flex:1;min-width:0}.home-hero-illu{pointer-events:none;flex-shrink:0;width:130px;height:112px;margin-top:-8px;margin-right:-8px}.home-hero-illu img{object-fit:contain;mix-blend-mode:multiply;width:100%;height:100%}:root:not([data-theme=light]) .home-hero-illu{display:none}.home-kicker{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:7px;font-size:.72rem;font-weight:600;display:inline-flex}.home-kicker-icon{color:var(--accent2);width:15px;height:15px}.home-title{color:var(--text);letter-spacing:0;margin-bottom:7px;font-size:1.44rem;font-weight:700;line-height:1.12}.home-subtitle{color:var(--muted);margin-bottom:0;font-size:.875rem;line-height:1.5}.home-primary-btn{z-index:1;background:linear-gradient(90deg, var(--accent), var(--accent2));color:#fff;cursor:pointer;width:100%;min-height:50px;font-family:var(--font-sans);box-shadow:0 12px 22px color-mix(in srgb, var(--accent) 16%, transparent);border:0;border-radius:15px;justify-content:center;align-items:center;gap:8px;font-size:.95rem;font-weight:600;display:inline-flex;position:relative}.home-primary-btn:active{transform:scale(.98)}.home-primary-btn .ph-icon{margin-top:1px}.home-track-bar{margin:0 0 14px}.track-page{height:calc(100vh - var(--header-h));height:calc(100dvh - var(--header-h));flex-direction:column;padding-top:0;padding-bottom:0;display:flex}.track-page-head{flex-shrink:0;padding-top:12px}.track-page-head .section-title{margin-top:0}.track-page .track-switch{grid-template-columns:repeat(auto-fit,minmax(0,1fr));margin-bottom:14px}.track-page .track-level-switch{background:var(--surface);grid-template-columns:repeat(auto-fit,minmax(0,1fr))}.track-page .track-level-switch button{letter-spacing:0;border:1px solid #0000;height:34px;font-size:.68rem}.track-page .track-level-switch button.active{background:color-mix(in srgb, var(--accent) 12%, var(--surface));border-color:color-mix(in srgb, var(--accent) 35%, var(--border));color:var(--accent);box-shadow:none}.track-page-intro{color:var(--muted);margin:0 0 14px;font-size:.86rem;line-height:1.5}.track-blocks{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;align-items:stretch;gap:10px;min-height:0;padding-bottom:108px;display:grid;overflow-y:auto}.track-block{text-align:left;background:var(--surface);border:1px solid var(--card-border);border-radius:16px;flex-direction:column;width:100%;height:100%;padding:13px 12px;display:flex}.track-block-card{cursor:pointer;transition:transform .12s,box-shadow .2s}.track-block-card:active{transform:scale(.985)}.track-block-card:focus-visible{outline:2px solid color-mix(in srgb, var(--accent) 70%, #fff);outline-offset:2px}.track-block-clickable{cursor:pointer;font:inherit;transition:transform .12s,box-shadow .2s}.track-block-clickable:active{transform:scale(.985)}.track-block.current{border-color:var(--accent);box-shadow:0 2px 10px color-mix(in srgb, var(--accent) 10%, transparent)}.track-block.unlocked{border-color:color-mix(in srgb, var(--accent) 35%, var(--border));opacity:.85}.track-block.unlocked .track-block-status{color:color-mix(in srgb, var(--accent) 60%, var(--muted))}.track-block.cleared{border-color:color-mix(in srgb, var(--accent) 50%, var(--border))}.track-block.cleared .track-block-badge{color:color-mix(in srgb, var(--accent) 70%, var(--muted))}.track-block.cleared .track-block-status{color:color-mix(in srgb, var(--accent) 70%, var(--muted));font-weight:600}.track-block.locked{opacity:.6}.track-block-head{align-items:center;gap:10px;display:flex}.track-block-badge{background:color-mix(in srgb, var(--accent) 12%, var(--surface));width:30px;height:30px;color:var(--muted);font-family:var(--font-sans);border:0;border-radius:50%;flex-shrink:0;place-items:center;padding:0;font-size:.85rem;font-weight:800;display:grid}.track-block-play{cursor:pointer;transition:transform .12s}.track-block-play:active{transform:scale(.94)}.track-block-play:focus-visible{outline:2px solid color-mix(in srgb, var(--accent) 70%, #fff);outline-offset:2px}.track-block.mastered .track-block-badge{color:var(--accent)}.track-block.current .track-block-badge{background:linear-gradient(90deg, var(--accent), var(--accent2));color:#fff}.track-block-title-wrap{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.track-block-title{color:var(--text);font-size:.9rem;font-weight:700;line-height:1.2}.track-block-status{color:var(--muted);font-size:.7rem}.track-block.current .track-block-status{color:var(--accent);font-weight:600}.track-block-desc{color:var(--muted);margin:10px 0 0;font-size:.76rem;line-height:1.4}.track-block-progress{margin-top:auto;padding-top:10px}.track-block .mastery-bar{margin:0}.track-block-foot{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:5px 8px;margin-top:8px;font-size:.72rem;display:flex}.track-op-pill{border:1px solid color-mix(in srgb, var(--accent) 18%, var(--border));color:color-mix(in srgb, var(--muted) 75%, var(--accent));letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;border-radius:999px;margin-left:auto;padding:4px 7px;font-size:.58rem;font-weight:800;line-height:1}.learn-page.track-detail-page{padding-bottom:108px;overflow-y:auto}.learn-page.learn-detail-page{height:auto;padding-bottom:calc(108px + env(safe-area-inset-bottom,0px));display:block;overflow:visible}.track-detail-page .learn-detail-head{margin-bottom:8px}.track-detail-page .learn-detail-title{font-size:1.22rem}.track-detail-page .learn-detail-idea{font-size:.82rem;line-height:1.42}.track-lock-inline{color:var(--accent2);margin:7px 0 0;font-size:.74rem;font-weight:700;line-height:1.35}.track-detail-page .section-title{margin-bottom:7px}.track-detail-page .mastery-mini-card{padding:9px 14px}.track-detail-page .learn-walk{margin-bottom:0;padding:10px}.track-example-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.track-example-item{background:var(--surface2);border:1px solid var(--border);text-align:center;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:58px;padding:8px 4px;display:flex}.track-example-item span,.track-example-item strong{color:var(--text);font-family:var(--font-mono);font-size:.84rem;line-height:1}.track-example-item strong{color:var(--accent)}.track-range-card{margin-bottom:0;width:fit-content;margin-inline:auto;padding:12px 16px}.track-range-line{font-variant-numeric:tabular-nums;color:var(--text);justify-content:center;align-items:center;gap:8px;font-weight:600;display:inline-flex}.track-range-op{color:var(--accent);font-size:1.15rem;font-weight:800;line-height:1}.track-range-arrow{color:var(--muted);font-size:.9rem}.track-range-part{font-size:.95rem}.track-detail-actions{gap:10px;margin-top:12px;display:grid}.track-detail-actions .btn-primary,.track-detail-actions .btn-secondary{margin:0}.home-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.home-card{background:var(--home-card-bg);border:1px solid var(--card-border);min-width:0;min-height:160px;box-shadow:var(--shadow-home-card);color:var(--text);cursor:pointer;font-family:var(--font-sans);text-align:left;border-radius:26px;flex-direction:column;justify-content:flex-start;align-items:stretch;padding:20px 18px 18px;display:flex}.home-card:active{transform:scale(.98)}.home-card.nav-card{justify-content:flex-start;min-height:0}.home-card-top{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:12px;display:grid}.home-card-icon{border-radius:18px;justify-content:center;align-items:center;width:50px;height:50px;display:inline-flex}.home-card-icon.indigo{background:var(--home-indigo-bg);color:var(--home-indigo-fg)}.home-card-icon.violet{background:var(--home-purple-bg);color:var(--home-purple-fg)}.home-card-icon.blue{background:var(--home-blue-bg);color:var(--home-blue-fg)}.home-card-arrow{color:var(--home-arrow);justify-content:center;align-items:center;display:inline-flex}.home-card-title{min-width:0;color:var(--text);white-space:nowrap;margin-bottom:0;font-size:1.06rem;font-weight:700;line-height:1.2}.home-card-copy,.home-card-foot{color:var(--muted);font-size:.95rem;line-height:1.38}.home-card-foot{color:color-mix(in srgb, var(--muted) 70%, #fff);font-size:.95rem;font-weight:500;line-height:1.25}.home-card-value{color:var(--text);margin-bottom:14px;font-size:1.05rem;line-height:1.45}.home-progress{background:var(--border);border-radius:999px;height:6px;margin-bottom:10px;overflow:hidden}.home-progress span{background:linear-gradient(90deg, var(--accent), var(--accent2));border-radius:inherit;height:100%;display:block}.home-segments{grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:10px;display:grid}.home-segments span{background:color-mix(in srgb, var(--surface2) 86%, #fff);border-radius:999px;height:6px}.home-segments .filled{background:var(--home-indigo-fg)}@media (width<=430px){.home-page{padding-left:16px;padding-right:16px}.home-grid{gap:10px}.home-card{border-radius:22px;min-height:150px;padding:15px 13px}.home-card-top{grid-template-columns:auto minmax(0,1fr);gap:8px;margin-bottom:10px;padding-right:18px;position:relative}.home-card-icon{border-radius:14px;width:40px;height:40px}.home-card-icon .ph-icon{width:21px;height:21px}.home-card-arrow{position:absolute;top:50%;right:0;transform:translateY(-50%)}.home-card-arrow .ph-icon{width:16px;height:16px}.home-card-title{font-size:.88rem;line-height:1.15}.home-card-copy{font-size:.84rem;line-height:1.4}.home-card-value{margin-bottom:12px;font-size:.96rem}.home-card-foot{font-size:.78rem}}.range-group{grid-template-columns:1fr 1fr;gap:10px;display:grid}.input-label{color:var(--muted);margin-bottom:6px;font-size:.8rem;display:block}.number-input{background:var(--surface2);border:1px solid var(--border);width:100%;color:var(--text);font-family:var(--font-mono);-webkit-appearance:none;border-radius:8px;outline:none;padding:10px 12px;font-size:1rem;transition:border-color .2s}.number-input:focus{border-color:var(--accent)}.ops-card{padding:10px 12px}.op-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;display:grid}.op-chip{background:var(--surface2);border:1px solid var(--border);min-width:0;min-height:50px;color:var(--muted);cursor:pointer;font-family:var(--font-sans);-webkit-tap-highlight-color:transparent;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:3px;transition:background .18s,border-color .18s,color .18s,transform .12s;display:flex}.op-chip:active{transform:scale(.97)}.op-chip.selected{background:color-mix(in srgb, var(--accent) 10%, var(--surface2));border-color:color-mix(in srgb, var(--accent) 40%, var(--border));color:var(--text)}.op-symbol{font-family:var(--font-mono);color:color-mix(in srgb, var(--accent) 55%, var(--muted));font-size:1.16rem;font-weight:800;line-height:1}.op-chip.selected .op-symbol{color:var(--accent2)}.op-label{white-space:nowrap;text-transform:uppercase;color:currentColor;max-width:100%;font-size:.52rem;font-weight:700;line-height:1;display:block}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{background:var(--surface2);border:1.5px solid var(--border);cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--muted);border-radius:50px;align-items:center;gap:6px;padding:8px 18px;font-size:.88rem;font-weight:700;transition:all .18s;display:flex}.chip:hover{border-color:var(--muted);color:var(--text)}.chip.selected{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.chip .check{opacity:0;font-size:.7rem;transition:opacity .15s}.chip.selected .check{opacity:1}.chip-hint{color:var(--muted);text-align:center;margin-top:8px;font-size:.7rem}.chip-hint.warn{color:var(--danger);font-weight:700}.ranges-card{padding:10px 12px}.range-row{grid-template-columns:minmax(70px,.72fr) 1fr 1fr;align-items:center;gap:7px;display:grid}.range-row+.range-row{border-top:1px solid var(--border);margin-top:8px;padding-top:8px}.range-name{min-width:0;color:var(--text);white-space:nowrap;font-size:.75rem;font-weight:500}.inline-number{background:var(--surface2);border:1px solid var(--border);border-radius:9px;align-items:center;gap:5px;min-width:0;padding:6px 8px;transition:border-color .2s;display:flex}.inline-number:focus-within{border-color:var(--accent)}.inline-number span{color:var(--muted);text-transform:uppercase;font-size:.58rem;font-weight:500}.inline-number input{width:100%;min-width:0;color:var(--text);font-family:var(--font-mono);text-align:right;-webkit-appearance:none;appearance:textfield;background:0 0;border:0;outline:0;font-size:16px;font-weight:500}.inline-number input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.inline-number input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.toggle-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.settings-card{padding:0;overflow:hidden}.config-account-row{text-align:left;cursor:pointer;width:100%;font:inherit;align-items:center;gap:12px;margin-bottom:14px;padding:12px 14px;display:flex}.config-account-row:active{transform:scale(.99)}.config-account-icon{background:color-mix(in srgb, var(--accent) 12%, var(--surface));width:34px;height:34px;color:var(--accent);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.config-account-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.config-account-text .toggle-sub{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.config-account-caret{color:var(--muted);flex-shrink:0}.settings-section{padding:9px 14px}.settings-section+.settings-section{border-top:1px solid var(--border)}.voice-inline-row{align-items:center;gap:8px;margin-top:10px;display:flex}.voice-inline-select{background:var(--bg);border:1.5px solid var(--border);min-width:0;color:var(--text);font-family:var(--font-sans);cursor:pointer;border-radius:8px;flex:1;padding:7px 8px;font-size:.76rem}.voice-test-inline-btn{border:1.5px solid var(--accent2);color:var(--accent2);font-family:var(--font-sans);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;white-space:nowrap;background:0 0;border-radius:8px;flex-shrink:0;padding:7px 12px;font-size:.72rem;font-weight:800}.voice-test-inline-btn:active{background:#40e0f01f}.voice-test-status{color:var(--muted);margin-top:6px;font-size:.7rem}.app-version{text-align:center;color:color-mix(in srgb, var(--muted) 65%, transparent);font-size:.62rem;font-family:var(--font-mono);-webkit-user-select:text;user-select:text;margin-top:18px}.gradatim-card{background:#ecfdf5;border:.5px solid #a7f3d0;border-radius:10px;margin-top:20px;padding:12px 14px;text-decoration:none;display:block}.gradatim-name{color:#064e3b;letter-spacing:-.01em;margin-bottom:4px;font-size:.81rem;font-weight:700}.gradatim-sub{color:#64748b;margin-bottom:7px;font-size:.75rem;line-height:1.45}.gradatim-go{color:#64748b;font-size:.75rem}.gradatim-go span{color:#059669;font-weight:600}.pro-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card);margin-top:20px;padding:16px}.pro-card-head{align-items:center;gap:8px;margin-bottom:10px;display:flex}.pro-badge{letter-spacing:.08em;color:var(--on-accent);background:linear-gradient(100deg, var(--accent), var(--accent2));border-radius:999px;padding:3px 9px;font-size:.66rem;font-weight:800}.pro-soon{color:var(--muted);font-size:.72rem;font-weight:600}.pro-title{letter-spacing:-.01em;margin-bottom:8px;font-size:1rem;font-weight:700}.pro-list{gap:7px;margin:0 0 14px;padding:0;list-style:none;display:grid}.pro-list li{color:var(--text-muted);font-size:.8rem;line-height:1.45}.pro-btn{background:linear-gradient(100deg, var(--accent), var(--accent2));width:100%;color:var(--on-accent);cursor:pointer;border:0;border-radius:12px;padding:12px 14px;font-family:inherit;font-size:.85rem;font-weight:700}.pro-form{gap:8px;display:flex}.pro-form .pro-btn{flex:none;width:auto}.pro-input{border:1px solid var(--border);background:var(--surface2);min-width:0;color:var(--text);border-radius:12px;flex:1;padding:10px 12px;font-family:inherit;font-size:16px}.pro-note{color:var(--muted);margin-top:9px;font-size:.7rem}.pro-joined{font-size:.85rem;line-height:1.5}.install-card .toggle-row{align-items:center}.install-btn{background:color-mix(in srgb, var(--accent) 10%, var(--surface2));border:1.5px solid color-mix(in srgb, var(--accent) 38%, var(--border));min-width:112px;min-height:40px;color:var(--accent);font-family:var(--font-sans);cursor:pointer;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:.78rem;font-weight:800;display:inline-flex}.install-btn:active{transform:scale(.97)}.install-steps{flex-direction:column;gap:12px;margin:0 0 18px;padding:0;list-style:none;display:flex}.install-steps li{color:var(--text);align-items:center;gap:10px;font-size:.9rem;line-height:1.35;display:flex}.install-steps .ph-icon{color:var(--accent)}.voice-select{align-items:center;gap:10px;margin-top:12px;display:flex}.voice-select-label{color:var(--muted);flex-shrink:0;font-size:.76rem;font-weight:700}.voice-select select{background:var(--bg);border:1.5px solid var(--border);min-width:0;color:var(--text);font-family:var(--font-sans);cursor:pointer;border-radius:10px;flex:1;padding:9px 10px;font-size:.8rem}.toggle-info{flex:1}.toggle-label-text{color:var(--text);margin-bottom:1px;font-size:.86rem;font-weight:700}.toggle-sub{color:var(--muted);font-size:.72rem}.switch{flex-shrink:0;width:52px;height:28px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.sw-slider{background:var(--border);cursor:pointer;border-radius:50px;transition:background .2s;position:absolute;inset:0}.sw-slider:before{content:"";background:var(--muted);border-radius:50%;width:20px;height:20px;transition:transform .2s,background .2s;position:absolute;top:4px;left:4px}.switch input:checked+.sw-slider{border:1px solid var(--accent);background:#5567e838}.switch input:checked+.sw-slider:before{background:var(--accent);transform:translate(24px)}.tuning-card{padding:10px 12px}.duration-segment{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 92%, var(--border));border-radius:7px;grid-template-columns:1fr 1fr;gap:3px;margin-bottom:9px;padding:2px;display:grid}.duration-segment button{min-width:0;height:28px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;font-size:.75rem;font-weight:700}.duration-segment button.active{background:var(--card);color:var(--text);box-shadow:0 1px 3px #0f172a14}.tuning-row{grid-template-columns:minmax(58px,.5fr) minmax(0,1fr) minmax(34px,auto);align-items:center;gap:8px;display:grid}.tuning-row+.tuning-row{border-top:1px solid var(--border);margin-top:9px;padding-top:9px}.tuning-option{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding-top:12px;display:flex}.tuning-option .toggle-label-text{font-size:.84rem;font-weight:500}.tuning-label{color:var(--text);white-space:nowrap;font-size:.76rem;font-weight:500}.tuning-value{color:var(--text);font-family:var(--font-mono);text-align:right;font-size:.86rem;font-weight:500}.slider-wrap{align-items:center;gap:14px;display:flex}.range-slider{-webkit-appearance:none;background:var(--border);cursor:pointer;border-radius:4px;outline:none;flex:1;height:4px}.range-slider::-webkit-slider-thumb{-webkit-appearance:none;background:color-mix(in srgb, var(--accent) 55%, var(--bg));border:2px solid var(--bg);cursor:pointer;border-radius:50%;width:16px;height:16px;transition:transform .15s}.range-slider::-webkit-slider-thumb:active{transform:scale(1.2)}.slider-value{font-family:var(--font-mono);color:var(--text);text-align:center;min-width:36px;font-size:1.2rem;font-weight:700}.btn-primary{background:linear-gradient(90deg, var(--accent), var(--accent2));width:100%;color:var(--on-accent);border-radius:var(--radius);font-family:var(--font-sans);letter-spacing:.06em;cursor:pointer;text-transform:uppercase;box-shadow:0 12px 22px color-mix(in srgb, var(--accent) 18%, transparent);border:none;margin-top:8px;padding:16px;font-size:1rem;font-weight:700;transition:opacity .15s,transform .15s}.btn-primary:hover{opacity:.9}.btn-primary:active{opacity:.9;transform:scale(.97)}.btn-primary:disabled{opacity:.45;cursor:not-allowed}.btn-primary:disabled:active{transform:none}.btn-secondary{background:var(--surface);width:100%;color:var(--text);border:1.5px solid var(--border);border-radius:var(--radius);font-family:var(--font-sans);cursor:pointer;text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px;padding:14px;font-size:.95rem;font-weight:700;transition:border-color .2s}.btn-secondary:hover{border-color:var(--muted)}.google-btn{box-sizing:border-box;border-radius:var(--radius);color:#1f1f1f;width:100%;min-height:44px;font-family:var(--font-sans);letter-spacing:.15px;cursor:pointer;background:#fff;border:1px solid #747775;justify-content:center;align-items:center;gap:12px;padding:12px 16px;font-size:.95rem;font-weight:600;transition:background .15s,box-shadow .15s,border-color .15s;display:flex}.google-btn:hover:not(:disabled){background:#f7f8f8;box-shadow:0 1px 2px #3c404333,0 1px 3px 1px #3c404314}.google-btn:active:not(:disabled){background:#f1f3f4}.google-btn:disabled{opacity:.55;cursor:not-allowed}.google-btn-g{flex:none;display:block}.google-btn-label{line-height:1}:root[data-theme=dark] .google-btn{color:#e3e3e3;background:#131314;border-color:#8e918f}:root[data-theme=dark] .google-btn:hover:not(:disabled){background:#1e1f20;box-shadow:0 1px 3px #0006}:root[data-theme=dark] .google-btn:active:not(:disabled){background:#282a2c}.reset-confirm-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.reset-confirm-msg{color:var(--muted);flex:100%;margin-bottom:4px;font-size:.85rem}.btn-danger-sm{color:#fff;border-radius:var(--radius);font-family:var(--font-sans);cursor:pointer;background:#c0392b;border:none;padding:8px 14px;font-size:.85rem;font-weight:700}.btn-danger-sm:hover{background:#a93226}.btn-ghost-sm{color:var(--muted);border:1.5px solid var(--border);border-radius:var(--radius);font-family:var(--font-sans);cursor:pointer;background:0 0;padding:8px 14px;font-size:.85rem;font-weight:600}.btn-ghost-sm:hover{border-color:var(--muted)}.reset-status-msg{color:var(--muted);padding:10px 20px 14px;font-size:.85rem}.progress-bar-wrap{background:var(--border);border-radius:4px;flex-shrink:0;height:4px;margin-bottom:24px;overflow:hidden}.progress-bar{background:var(--accent);border-radius:4px;height:100%;transition:width .4s}.meta-row{flex-shrink:0;justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.meta-label{letter-spacing:.15em;text-transform:uppercase;color:var(--muted);font-size:.7rem}.meta-value{font-family:var(--font-mono);color:var(--text);font-size:.85rem}.question-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:center;margin-bottom:20px;padding:28px 24px;position:relative;overflow:hidden}.game-page .question-card{flex-direction:column;flex:80px;justify-content:center;min-height:0;max-height:140px;margin-bottom:12px;padding:10px 20px;display:flex}.game-page .voice-question-card{max-height:180px}.game-page .progress-bar-wrap{margin-bottom:12px}.game-page .answer-wrap{margin-bottom:10px}.game-page .feedback{min-height:40px;margin-bottom:6px;padding:8px 12px}@media (height<=680px){.game-page .nk{padding:11px 8px}.game-page .question-card{max-height:120px;padding:8px 16px}.game-page .voice-question-card{max-height:165px}}.question-card:after{content:"";pointer-events:none;background:radial-gradient(80% 60% at 50% 0,#5567e812 0%,#0000 70%);position:absolute;inset:0}.op-badge{font-family:var(--font-mono);letter-spacing:.15em;background:var(--surface2);border:1px solid var(--border);color:var(--muted);text-transform:uppercase;border-radius:50px;margin-bottom:18px;padding:4px 14px;font-size:.7rem;display:inline-block}.question-display{font-family:var(--font-mono);color:var(--text);font-size:clamp(2rem,8vw,2.8rem);font-weight:700;line-height:1.15}.q-op{color:var(--accent);margin:0 10px}.q-eq{color:var(--muted);margin:0 8px}.q-prompt-long{font-size:clamp(1.35rem,5.6vw,2rem)}.answer-wrap{gap:10px;margin-bottom:16px;display:flex}.answer-input{background:var(--surface);border:2px solid var(--border);border-radius:var(--radius);color:var(--text);font-family:var(--font-mono);text-align:center;-webkit-appearance:none;outline:none;flex:1;padding:14px;font-size:1.4rem;font-weight:700;transition:border-color .2s}.answer-input:focus{border-color:var(--accent2)}.answer-input.correct{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 6%, var(--surface))}.answer-input.wrong{border-color:var(--danger);background:#f040600f;animation:.3s shake}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}75%{transform:translate(8px)}}.btn-confirm{background:var(--accent);color:var(--on-accent);border-radius:var(--radius);font-family:var(--font-sans);cursor:pointer;border:none;padding:14px 22px;font-size:1rem;font-weight:700;transition:transform .15s}.btn-confirm:active{transform:scale(.95)}.timer-wrap{flex-shrink:0;width:52px;height:52px;position:relative}.timer-svg{transform:rotate(-90deg)}.timer-bg{fill:none;stroke:var(--border);stroke-width:4px}.timer-ring{fill:none;stroke:var(--accent2);stroke-width:4px;stroke-linecap:round;transition:stroke-dashoffset .9s linear}.timer-num{font-family:var(--font-mono);color:var(--accent2);justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex;position:absolute;inset:0}.feedback{text-align:center;opacity:0;border-radius:10px;min-height:48px;margin-bottom:14px;padding:12px;font-size:.95rem;font-weight:700;transition:opacity .25s}.feedback.show{opacity:1}.feedback.ok{background:color-mix(in srgb, var(--accent) 10%, var(--surface));color:var(--accent)}.feedback.bad{color:var(--danger);background:#f040601a}.strategy-card{background:color-mix(in srgb, var(--accent2) 8%, var(--surface));border:1px solid color-mix(in srgb, var(--accent2) 35%, var(--border));border-radius:10px;margin:-4px 0 10px;padding:10px 12px}.strategy-title{color:var(--accent2);letter-spacing:.02em;margin-bottom:6px;font-size:.76rem;font-weight:800}.strategy-step{font-family:var(--font-mono);color:var(--text);font-size:.9rem;font-weight:600;line-height:1.5}.review-pause{background:var(--surface);border:1px solid var(--border);color:var(--muted);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin:-4px 0 14px;padding:10px 12px;font-size:.78rem;display:flex}.review-next-btn{background:var(--accent2);color:var(--on-accent);font-family:var(--font-sans);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;border:0;border-radius:9px;flex-shrink:0;padding:9px 13px;font-size:.78rem;font-weight:800}.review-next-btn:active{transform:scale(.96)}.numpad{touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px;display:grid}.nk{appearance:none;background:var(--surface);border:1.5px solid var(--border);font-family:var(--font-mono);color:var(--text);cursor:pointer;text-align:center;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:10px;padding:16px 8px;font-size:1.2rem;font-weight:700;transition:background .12s,transform .1s}.nk.zero-wide{grid-column:1/3}.nk:active{background:var(--surface2);transition-duration:0s;transform:scale(.96)}.nk:focus-visible{outline:2px solid var(--accent2);outline-offset:2px}.nk.neg{color:var(--accent2)}.nk.del{color:var(--danger);font-size:1.1rem}.nk.ok{background:var(--accent);color:var(--on-accent);border-color:var(--accent);letter-spacing:.04em;font-size:.95rem;font-weight:700}.nk.ok:active{background:color-mix(in srgb, var(--accent) 75%, #000)}@media (pointer:fine){.numpad{display:none}}@media (pointer:coarse){.answer-input{pointer-events:none;caret-color:#0000}.btn-confirm{display:none}}.voice-area{flex-direction:column;align-items:center;gap:10px;padding:16px 0 8px;display:flex}.voice-wave{align-items:flex-end;gap:5px;height:44px;display:flex}.wave-bar{background:var(--accent2);transform-origin:bottom;border-radius:5px;width:5px;animation:1.1s ease-in-out infinite wave}.wave-bar:first-child{height:10px;animation-delay:0s}.wave-bar:nth-child(2){height:24px;animation-delay:.12s}.wave-bar:nth-child(3){height:34px;animation-delay:.24s}.wave-bar:nth-child(4){height:20px;animation-delay:.36s}.wave-bar:nth-child(5){height:30px;animation-delay:.18s}.wave-bar:nth-child(6){height:16px;animation-delay:.3s}.wave-bar:nth-child(7){height:10px;animation-delay:60ms}.wave-bar.still{opacity:.4;animation:none;height:4px!important}@keyframes wave{0%,to{opacity:.7;transform:scaleY(1)}50%{opacity:1;transform:scaleY(1.5)}}.voice-status{color:var(--accent2);letter-spacing:.1em;text-transform:uppercase;font-size:.78rem}.btn-speak{border:1.5px solid var(--accent2);color:var(--accent2);font-family:var(--font-sans);cursor:pointer;letter-spacing:.08em;text-transform:uppercase;-webkit-tap-highlight-color:transparent;background:0 0;border-radius:50px;padding:7px 18px;font-size:.8rem;font-weight:700;transition:all .2s}.btn-speak:active{background:#40e0f026}.result-hero{padding:0 0 8px 6px}.result-hero-top{align-items:center;gap:12px;display:flex}.result-emoji{flex-shrink:0;font-size:2rem;line-height:1}.result-title{margin-bottom:2px;font-size:1.1rem;font-weight:800}.result-sub{color:var(--muted);font-size:.8rem}.stat-grid{grid-template-columns:repeat(4,1fr);gap:6px;margin:10px 0;display:grid}.stat-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:center;padding:10px 6px}.stat-num{font-family:var(--font-mono);color:var(--text);font-size:1.15rem;font-weight:700;line-height:24px}.stat-num.md{font-size:1rem}.stat-num.sm{font-size:.85rem}.stat-num.xs{font-size:.72rem}.stat-lbl{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-top:3px;font-size:.6rem}.adaptive-summary{padding:10px 14px}.adaptive-row{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;font-size:.78rem;display:flex}.adaptive-row+.adaptive-row{border-top:1px solid var(--border);margin-top:7px;padding-top:7px}.adaptive-row strong{font-family:var(--font-mono);color:var(--accent2);font-size:1rem}.mastery-card{padding:14px}.mastery-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.mastery-title{color:var(--text);font-size:.88rem;font-weight:800;line-height:1.3}.mastery-sub{color:var(--muted);margin-top:4px;font-size:.76rem}.mastery-pct{font-family:var(--font-mono);color:var(--text);flex-shrink:0;font-size:1.55rem;font-weight:800;line-height:1}.mastery-bar{background:var(--border);border-radius:999px;height:7px;margin:14px 0 10px;position:relative;overflow:hidden}.mastery-fill{background:color-mix(in srgb, var(--accent) 55%, var(--border));border-radius:inherit;z-index:1;height:100%;transition:width .35s;position:relative}.mastery-fill.near{z-index:0;background:color-mix(in srgb, var(--accent) 24%, var(--border));position:absolute;top:0;left:0}.mastery-metrics{color:var(--muted);flex-wrap:wrap;gap:8px 12px;font-size:.72rem;display:flex}.mastery-metrics strong{color:var(--text);font-weight:800}.mastery-legend{border-top:1px solid var(--border);color:var(--muted);flex-direction:column;gap:4px;margin-top:12px;padding-top:12px;font-size:.72rem;line-height:1.4;display:flex}.mastery-legend b{color:var(--text);font-weight:700}.mastery-hint{color:var(--muted);margin-top:10px;font-size:.72rem;font-style:italic;line-height:1.45}.mastery-note{border-top:1px solid var(--border);color:var(--success);margin-top:12px;padding-top:12px;font-size:.78rem;font-weight:700}.chart-hdr{justify-content:space-between;align-items:baseline;margin-bottom:12px;display:flex}.chart-hdr-label{color:var(--text);font-size:.75rem;font-weight:700}.chart-hdr-value{color:var(--muted);font-size:.72rem}.wbars-card{padding:14px 16px 12px}.wbars{gap:6px;display:flex}.wbar-col{flex-direction:column;flex:1;align-items:center;gap:4px;display:flex}.wbar-area{flex-direction:column;justify-content:flex-end;align-items:center;width:100%;height:52px;display:flex}.wbar-val{color:var(--muted);font-variant-numeric:tabular-nums;min-height:10px;margin-bottom:2px;font-size:.58rem;font-weight:700;line-height:1}.wbar{background:color-mix(in srgb, var(--accent) 65%, var(--border));border-radius:3px 3px 0 0;width:100%}.wbar.today{background:var(--accent)}.wbar.empty{background:var(--border);border-radius:2px}.wbar-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;font-size:.6rem;font-weight:700}.wbar-label.today{color:var(--accent2)}.heatmap-card{padding:14px 16px}.heatmap-wrap{align-items:flex-start;gap:5px;display:flex}.heatmap-dow-col{flex-direction:column;flex-shrink:0;gap:3px;padding-top:1px;display:flex}.heatmap-dow{height:13px;color:var(--muted);text-transform:uppercase;text-align:right;width:20px;font-size:.58rem;font-weight:700;line-height:13px}.heatmap-grid{grid-template-rows:repeat(7,13px);grid-auto-columns:13px;grid-auto-flow:column;gap:3px;display:grid;overflow-x:auto}.heatmap-cell{border:0;border-radius:2px;padding:0}button.heatmap-cell{cursor:pointer}button.heatmap-cell:disabled{cursor:default}.heatmap-cell.selected{outline:1.5px solid var(--text);outline-offset:-1px}.heatmap-cell.lvl-0{background:var(--surface2)}.heatmap-cell.lvl-1{background:color-mix(in srgb, var(--accent) 30%, var(--surface2))}.heatmap-cell.lvl-2{background:color-mix(in srgb, var(--accent) 62%, var(--surface2))}.heatmap-cell.lvl-3{background:var(--accent)}.heatmap-cell.future{visibility:hidden}.heatmap-cell.today{outline:1.5px solid var(--accent2);outline-offset:-1px}.heatmap-months{gap:3px;margin-bottom:3px;margin-left:25px;display:flex}.heatmap-month-lbl{width:13px;color:var(--muted);white-space:nowrap;flex-shrink:0;font-size:9px;font-weight:600;overflow:visible}.heatmap-day-detail{background:var(--surface2);color:var(--muted);border-radius:8px;justify-content:space-between;align-items:center;gap:10px;margin-top:10px;padding:7px 10px;font-size:.72rem;display:flex}.heatmap-day-detail-date{color:var(--text);font-weight:700}.heatmap-legend{justify-content:flex-end;align-items:center;gap:4px;margin-top:8px;display:flex}.heatmap-legend-txt{color:var(--muted);font-size:.6rem}.history-title{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-size:.65rem;font-weight:700}.history-list{flex-direction:column;gap:4px;max-height:180px;margin-bottom:10px;padding-right:4px;display:flex;overflow-y:auto}.history-item{background:var(--surface);border:1px solid var(--border);font-family:var(--font-mono);border-radius:8px;justify-content:space-between;align-items:center;padding:7px 12px;font-size:.8rem;display:flex}.history-item.hit{border-left:3px solid var(--success)}.history-item.miss{border-left:3px solid var(--danger)}.history-item .expr{color:var(--muted)}.session-item{grid-template-columns:minmax(0,1fr) 56px 56px;gap:10px;display:grid}.session-item .expr{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.session-item .session-score{color:var(--text);text-align:right;font-variant-numeric:tabular-nums}.session-item .session-time{color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}.skill-history-list{max-height:360px}.skill-history-item{grid-template-columns:minmax(0,1fr) 78px 92px 68px;gap:10px;display:grid}.skill-history-item .expr{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.skill-status,.skill-recent,.skill-next{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.skill-status{font-family:var(--font-sans);font-size:.72rem;font-weight:800}.skill-status.mastered{color:var(--success)}.skill-status.due{color:var(--accent2)}.skill-status.learning{color:var(--muted)}.skill-recent{color:var(--text)}.skill-next{color:var(--muted);font-size:.72rem}.skill-mastery-list{max-height:300px}.skill-mastery-item{grid-template-columns:minmax(0,1fr) 44px 92px;align-items:center;gap:10px;display:grid}.skill-mastery-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-sans);color:var(--text);font-size:.82rem;font-weight:600;overflow:hidden}.skill-mastery-count{text-align:right;font-variant-numeric:tabular-nums;color:var(--muted);font-size:.78rem}.skill-pill{text-align:center;letter-spacing:.03em;border:1px solid var(--border);white-space:nowrap;border-radius:50px;padding:3px 6px;font-size:.66rem;font-weight:800}.skill-pill.mastered{color:var(--success);border-color:color-mix(in srgb, var(--success) 40%, var(--border))}.skill-pill.review{color:var(--accent2);border-color:color-mix(in srgb, var(--accent2) 40%, var(--border))}.skill-pill.learning{color:var(--text)}.skill-pill.new{color:var(--muted)}.learn-page{height:calc(100vh - var(--header-h));height:calc(100dvh - var(--header-h));flex-direction:column;padding-top:0;padding-bottom:0;display:flex}.learn-page-top{flex-shrink:0;padding-top:12px}.learn-note{color:var(--muted);margin:-2px 0 12px;font-size:.8rem;line-height:1.45}.learn-filter{background:var(--surface);border:1px solid var(--border);border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-bottom:12px;padding:4px;display:grid}.learn-filter-chip{color:var(--muted);cursor:pointer;font-family:var(--font-sans);background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:8px 10px;font-size:.78rem;font-weight:800;display:flex}.learn-filter-chip.selected{background:var(--surface2);border-color:var(--border);color:var(--text)}.learn-filter-chip strong{background:color-mix(in srgb, var(--accent2) 14%, transparent);color:var(--accent2);border-radius:50px;min-width:22px;padding:2px 6px;font-size:.68rem}.learn-levels-row{align-items:center;gap:10px;margin-top:12px;display:flex}.learn-levels-label{color:var(--text-muted);white-space:nowrap;min-width:56px;font-size:.75rem;font-weight:700}.learn-levels{background:var(--surface);border:1px solid var(--border);border-radius:8px;flex:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;min-width:0;padding:4px;display:grid}.learn-level-chip{color:var(--muted);cursor:pointer;font-family:var(--font-sans);background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;min-height:34px;padding:7px 4px;font-size:.76rem;font-weight:800;display:flex}.learn-level-chip.selected{background:color-mix(in srgb, var(--accent) 12%, var(--surface));border-color:color-mix(in srgb, var(--accent) 30%, var(--border));color:var(--accent)}.learn-level-note{color:var(--muted);margin-top:8px;font-size:.72rem;line-height:1.4}.learn-list{flex-direction:column;flex:1;gap:10px;min-height:0;padding-bottom:108px;display:flex;overflow-y:auto}.learn-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:14px}.learn-card.mastered{background:color-mix(in srgb, var(--accent) 7%, var(--surface));border-color:color-mix(in srgb, var(--accent) 28%, var(--border))}.learn-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.learn-title{color:var(--text);font-size:.95rem;font-weight:800;line-height:1.25}.learn-idea{color:var(--muted);margin-top:4px;font-size:.78rem;line-height:1.45}.learn-tag{border:1px solid var(--border);color:var(--accent2);text-transform:uppercase;border-radius:50px;flex-shrink:0;padding:4px 8px;font-size:.65rem;font-weight:800}.learn-card-foot{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding-top:12px;font-size:.76rem;display:flex}.learn-open-btn{background:var(--surface2);border:1px solid var(--border);color:var(--text);cursor:pointer;font-family:var(--font-sans);letter-spacing:.05em;text-transform:uppercase;border-radius:8px;flex-shrink:0;padding:8px 12px;font-size:.74rem;font-weight:800}.learn-open-btn:active{transform:scale(.97)}.learn-detail-topbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:11px;display:flex}.learn-back-btn{border:1px solid var(--border);color:var(--muted);cursor:pointer;font-family:var(--font-sans);background:0 0;border-radius:8px;padding:8px 12px;font-size:.76rem;font-weight:800}.learn-detail-head{margin-bottom:10px}.learn-detail-title{color:var(--text);font-size:1.35rem;line-height:1.15}.learn-detail-idea{color:var(--muted);margin-top:6px;font-size:.85rem;line-height:1.45}.learn-walk{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin-bottom:10px;padding:13px}.lw-ask{color:var(--muted);margin-bottom:11px;font-size:.9rem}.lw-ask strong{color:var(--text);font-family:var(--font-mono);font-size:1.02rem;font-weight:800}.lw-tip{color:var(--text);margin:0 0 14px;font-size:.9rem;line-height:1.6}.lw-steps{flex-direction:column;gap:11px;margin:0 0 11px;padding:0;list-style:none;display:flex}.lw-step{align-items:flex-start;gap:12px;display:flex}.lw-step-num{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--accent);border-radius:50%;flex:none;justify-content:center;align-items:center;width:24px;height:24px;margin-top:1px;font-size:.8rem;font-weight:800;display:flex}.lw-step-body{flex-direction:column;gap:5px;min-width:0;display:flex}.lw-step-say{color:var(--text);font-size:.88rem;line-height:1.45}.lw-step-math{background:var(--surface2);color:var(--text);font-family:var(--font-mono);border-radius:6px;align-self:flex-start;padding:4px 10px;font-size:.92rem;font-weight:700}.lw-answer{background:color-mix(in srgb, var(--accent) 12%, var(--surface));border:1px solid color-mix(in srgb, var(--accent) 26%, var(--border));color:var(--accent);font-family:var(--font-mono);text-align:center;border-radius:8px;padding:9px 14px;font-size:1rem;font-weight:800}.result-history-item{grid-template-columns:minmax(0,1fr) minmax(34px,auto) 48px auto;gap:10px;display:grid}.history-status{justify-content:flex-end;align-items:center;gap:6px;display:flex}.history-mark{text-align:center;flex-shrink:0;width:20px;font-size:.95rem;font-weight:700;line-height:.8}.history-mark.levelup{color:var(--accent)}.history-mark.mastered{color:#e0a82e;font-size:1.3rem}.history-mark.weakened{color:var(--danger)}.history-mark.none{color:var(--muted);opacity:.55;font-size:.8rem;font-weight:400}.result-history-item .expr{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.history-answer{color:var(--text);text-align:right}.history-time{color:var(--accent2);text-align:right;font-variant-numeric:tabular-nums}.dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.dot.hit{background:var(--success)}.dot.miss{background:var(--danger)}.history-list::-webkit-scrollbar{width:4px}.history-list::-webkit-scrollbar-track{background:0 0}.history-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.conquistas-page{height:calc(100vh - var(--header-h));height:calc(100dvh - var(--header-h));flex-direction:column;padding-bottom:0;display:flex}.conquistas-header{text-align:center;flex-shrink:0;padding:16px 0 20px}.conquistas-scroll{flex:1;min-height:0;padding-bottom:108px;overflow-y:auto}.conquistas-count{font-family:var(--font-mono);color:var(--text);font-size:2.4rem;font-weight:800;line-height:1}.conquistas-count span{color:var(--muted);font-size:1.4rem}.conquistas-sub{color:var(--muted);margin-top:4px;font-size:.78rem}.badge-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:8px;display:grid}.badge-card{text-align:center;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);flex-direction:column;align-items:center;gap:5px;padding:14px 8px 12px;display:flex;position:relative}.badge-card.unlocked{border-color:color-mix(in srgb, var(--accent) 40%, var(--border));background:color-mix(in srgb, var(--accent) 6%, var(--surface))}.badge-card.locked{opacity:.45}.badge-chip{border-radius:30%;flex-shrink:0;justify-content:center;align-items:center;margin-bottom:2px;display:inline-flex}.badge-name{color:var(--text);font-size:.72rem;font-weight:800;line-height:1.2}.badge-desc{color:var(--muted);font-size:.6rem;line-height:1.3}.badge-date{color:var(--accent2);font-size:.58rem;font-weight:700;line-height:1;position:absolute;top:5px;right:6px}.badge-unlock-toast{background:color-mix(in srgb, var(--accent) 10%, var(--surface));border:1.5px solid color-mix(in srgb, var(--accent) 40%, var(--border));border-radius:var(--radius);flex-direction:column;gap:8px;margin-bottom:12px;padding:12px 36px 12px 14px;animation:.3s fadeUp;display:flex;position:relative}.badge-toast-close{cursor:pointer;color:var(--muted);background:0 0;border:none;padding:2px 4px;font-size:.8rem;position:absolute;top:8px;right:10px}.badge-toast-item{align-items:center;gap:10px;display:flex}.badge-toast-label{color:var(--accent2);text-transform:uppercase;letter-spacing:.06em;font-size:.68rem;font-weight:700}.badge-toast-name{color:var(--text);font-size:.88rem;font-weight:800}.pwa-toast{background:var(--surface2);border:1px solid var(--border);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;width:100%;max-width:480px;margin:0;padding:10px 12px;animation:.3s fadeUp;display:flex;position:relative;box-shadow:0 8px 24px #00000038}.pwa-toast-msg{color:var(--text);font-size:.85rem;font-weight:700}.pwa-toast-actions{flex-shrink:0;gap:8px;display:flex}.pwa-toast-btn{border:1.5px solid var(--border);color:var(--muted);font-family:var(--font-sans);cursor:pointer;background:0 0;border-radius:8px;padding:7px 12px;font-size:.78rem;font-weight:700;transition:border-color .2s,color .2s}.pwa-toast-btn:hover{border-color:var(--muted);color:var(--text)}.pwa-toast-btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.account-bar{align-items:center;gap:8px;min-width:0;display:flex}.account-email{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-size:.72rem;overflow:hidden}.account-btn{border:1.5px solid var(--border);color:var(--text);font-family:var(--font-sans);letter-spacing:.04em;cursor:pointer;text-transform:uppercase;background:0 0;border-radius:50px;flex-shrink:0;padding:6px 14px;font-size:.72rem;font-weight:700;transition:border-color .2s}.account-btn:hover{border-color:var(--muted)}.modal-backdrop{z-index:100;background:#0009;justify-content:center;align-items:center;padding:20px;animation:.2s fadeUp;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:360px;padding:28px 22px;position:relative;box-shadow:0 20px 60px #00000080}.modal-title{margin-bottom:18px;font-size:1.2rem;font-weight:800}.modal-form{flex-direction:column;gap:10px;margin-bottom:10px;display:flex}.modal-msg{color:var(--muted);text-align:center;margin-top:10px;font-size:.78rem}.modal-switch{width:100%;color:var(--accent2);font-family:var(--font-sans);cursor:pointer;text-align:center;background:0 0;border:none;margin-top:14px;font-size:.8rem;font-weight:700;display:block}.modal-close{color:var(--muted);cursor:pointer;background:0 0;border:none;font-size:1.1rem;line-height:1;position:absolute;top:14px;right:14px}.modal-close:hover{color:var(--text)}.save-status{color:var(--muted);margin-top:6px;font-size:.72rem}.mastery-mini-card{padding:8px 14px}.mastery-mini-top{justify-content:space-between;align-items:baseline;margin-bottom:5px;display:flex}.learn-page .mastery-mini-card{padding:9px 14px}.learn-page .mastery-mini-card .mastery-bar{margin:0}.learn-page .mastery-mini-top{margin-bottom:7px}.mastery-mini-pct{color:var(--accent2);font-size:.86rem;font-weight:800}.mastery-mini-stats{color:var(--text-muted);gap:7px;font-size:.7rem;font-weight:600;display:flex}.mastery-mini-due{color:var(--accent2)}.mastery-mini-new{color:var(--success)}.q-hidden{visibility:hidden}.lightning-card{border-color:color-mix(in srgb, var(--accent2) 35%, var(--border))}.practice-rounds-row{align-items:center;gap:10px;padding:14px 0 10px;display:flex}.practice-rounds-label{color:var(--text-muted);white-space:nowrap;min-width:56px;font-size:.75rem;font-weight:700}.practice-rounds-row .range-slider{flex:1}.practice-rounds-value{text-align:right;min-width:28px;font-size:.85rem;font-weight:700}
