:root{color-scheme:light;--bg: #faf7f2;--surface: #fffdf7;--surface-subtle: #f5f0e6;--surface-muted: #ebe3d2;--ink: #1f2a25;--ink-soft: #3d4943;--muted: #6e766f;--border: #e3dcca;--border-strong: #c9c0aa;--primary: #3d6b56;--primary-hover: #2f5443;--primary-soft: #e8f0eb;--accent: #c97a4a;--accent-soft: #f8e9dc;--success: #15803d;--success-soft: #e9f8ef;--warning: #b45309;--warning-soft: #fff4df;--danger: #b4233a;--danger-soft: #fff0f3;--focus: rgba(61, 107, 86, 0.26);--shadow-sm: 0 1px 2px rgba(31, 42, 37, 0.05);--shadow-md: 0 10px 30px rgba(31, 42, 37, 0.08);--shadow-lg: 0 22px 60px rgba(31, 42, 37, 0.11);--radius: 14px;--radius-lg: 22px;--r-xs: 6px;--r-sm: 10px;--r-md: 14px;--r-lg: 20px;--r-pill: 999px;--header-h: 64px;--font-scale: 1;--space-scale: 1;--focus-outline: 3px;--text: var(--ink);--text-muted: var(--muted);--bg-card: var(--surface);--shadow-soft: var(--shadow-sm)}body[data-accent=teal]{--primary: #0f766e;--primary-hover: #115e59;--primary-soft: #ccfbf1;--focus: rgba(15, 118, 110, 0.26)}body[data-accent=green]{--primary: #15803d;--primary-hover: #166534;--primary-soft: #dcfce7;--focus: rgba(21, 128, 61, 0.26)}body[data-accent=purple]{--primary: #7c3aed;--primary-hover: #6d28d9;--primary-soft: #ede9fe;--focus: rgba(124, 58, 237, 0.26)}body[data-accent=orange]{--primary: #c2410c;--primary-hover: #9a3412;--primary-soft: #ffedd5;--focus: rgba(194, 65, 12, 0.26)}body[data-accent=pink]{--primary: #be185d;--primary-hover: #9d174d;--primary-soft: #fce7f3;--focus: rgba(190, 24, 93, 0.26)}body.theme-dark{color-scheme:dark;--bg: #0a0a0a;--surface: #161616;--surface-subtle: #1e1e1e;--surface-muted: #262626;--ink: #f4f1ea;--ink-soft: #c9c6bf;--muted: #8d8a85;--border: #2b2b2b;--border-strong: #3a3a3a;--primary: #7eb89a;--primary-hover: #a4d4b8;--primary-soft: rgba(126, 184, 154, 0.18);--accent: #e3a079;--accent-soft: rgba(227, 160, 121, 0.18);--success: #4ade80;--success-soft: rgba(74, 222, 128, 0.14);--warning: #fbbf24;--warning-soft: rgba(251, 191, 36, 0.14);--danger: #fb7185;--danger-soft: rgba(251, 113, 133, 0.14);--focus: rgba(126, 184, 154, 0.36);--shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.42);--shadow-md: 0 16px 42px rgba(0, 0, 0, 0.38);--shadow-lg: 0 30px 80px rgba(0, 0, 0, 0.52);--text: var(--ink);--text-muted: var(--muted);--bg-card: var(--surface);--shadow-soft: var(--shadow-sm)}body.theme-soft-light{color-scheme:light;--bg: #fff7ed;--surface: #fffaf3;--surface-subtle: #fff3e4;--surface-muted: #ffe8cc;--ink: #24140a;--ink-soft: #5b3820;--muted: #8a6042;--border: #f0cfa8;--border-strong: #dda76e;--primary: #c75b12;--primary-hover: #9a430c;--primary-soft: #ffe1bf;--success: #227a3b;--success-soft: #eaf8e7;--warning: #a34800;--warning-soft: #ffe6c7;--danger: #b4233a;--danger-soft: #fff0f3;--focus: rgba(199, 91, 18, 0.24);--shadow-sm: 0 1px 2px rgba(120, 63, 20, 0.08);--shadow-md: 0 10px 30px rgba(120, 63, 20, 0.1);--shadow-lg: 0 22px 60px rgba(120, 63, 20, 0.14);--text: var(--ink);--text-muted: var(--muted);--bg-card: var(--surface);--shadow-soft: var(--shadow-sm)}*{box-sizing:border-box}html{scroll-behavior:smooth}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--muted) 30%,transparent);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--muted) 55%,transparent)}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--muted) 30%,transparent) transparent}body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink);font-family:"Inter",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:calc(15px * var(--font-scale));line-height:1.5;-webkit-font-smoothing:antialiased}body[data-text-scale=large]{--font-scale: 1.12}body[data-text-scale=xl]{--font-scale: 1.24}body[data-density=compact]{--space-scale: 0.88}body[data-density=spacious]{--space-scale: 1.18}body[data-line-spacing=roomy]{--reading-line-height: 1.72}body[data-line-spacing=wide]{--reading-line-height: 1.95}body[data-letter-spacing=slight]{--reading-letter-spacing: 0.025em}body[data-letter-spacing=wide]{--reading-letter-spacing: 0.055em}body[data-font-style=readable]{font-family:Verdana,Tahoma,Arial,sans-serif}body[data-font-style=rounded]{font-family:ui-rounded,"SF Pro Rounded","Avenir Next",Inter,system-ui,sans-serif}body[data-font-style=opendyslexic]{font-family:"OpenDyslexic","Open Dyslexic",Verdana,Arial,sans-serif}body[data-font-style=lexie]{font-family:"Lexie Readable",Verdana,Arial,sans-serif}body[data-line-spacing],body[data-letter-spacing]{line-height:var(--reading-line-height, 1.5);letter-spacing:var(--reading-letter-spacing, 0)}body[data-line-spacing] p,body[data-line-spacing] li,body[data-line-spacing] textarea,body[data-line-spacing] .teach-bubble,body[data-line-spacing] .study-feedback{line-height:var(--reading-line-height, 1.5)}body[data-letter-spacing] p,body[data-letter-spacing] li,body[data-letter-spacing] input,body[data-letter-spacing] textarea,body[data-letter-spacing] button,body[data-letter-spacing] .teach-bubble{letter-spacing:var(--reading-letter-spacing, 0)}body[data-dyscalculia=on] .study-data-table,body[data-dyscalculia=on] .study-scatter text,body[data-dyscalculia=on] input,body[data-dyscalculia=on] .home-focus-metrics strong,body[data-dyscalculia=on] .hero-stats strong{font-variant-numeric:tabular-nums;letter-spacing:0.04em}body[data-dyscalculia=on] .study-data-table td,body[data-dyscalculia=on] .study-data-table th{padding-block:12px}body.relax-mode{--primary: #3f8f7a;--primary-hover: #347a68;--primary-soft: rgba(63, 143, 122, 0.14);--warning: #b7791f;--danger: #b4535a}body.relax-mode .attention-nudge-card,body.relax-mode .study-feedback.needs-review{border-color:color-mix(in srgb,var(--primary) 28%,var(--border));background:color-mix(in srgb,var(--primary) 8%,var(--surface))}body.relax-mode .game-card[data-game=survival] .emoji-decor{display:none}body.relax-mode .study-auto-note{color:var(--ink-soft)}body.relax-mode .home-focus-metrics div:first-child strong,body.relax-mode .home-mini-lesson small{color:transparent;position:relative}body.relax-mode .home-focus-metrics div:first-child strong::after{content:"shown later";position:absolute;inset:0;color:var(--muted)}body.relax-mode .home-mini-lesson small::after{content:"Ready when you are";color:var(--muted)}body.theme-dark{background:radial-gradient(ellipse 80% 40% at 50% -10%,color-mix(in srgb,var(--primary) 7%,transparent),transparent),var(--bg)}body.theme-dark .app-header{border-bottom-color:#2b2b2b;background:rgba(10,10,10,0.92);box-shadow:0 1px 0 rgba(255,255,255,0.03),0 18px 50px rgba(0,0,0,0.4)}body.theme-dark .menu-toggle,body.theme-dark .account-menu-btn{border-color:#2f2f2f;background:rgba(22,22,22,0.96);color:#ece9e2;box-shadow:inset 0 1px 0 rgba(255,255,255,0.05),0 8px 24px rgba(0,0,0,0.35)}body.theme-dark .menu-toggle:hover,body.theme-dark .account-menu-btn:hover{border-color:#454545;background:rgba(30,30,30,0.98)}body.theme-dark .side-menu{background:rgba(13,13,13,0.98)}body.theme-soft-light{background:radial-gradient(ellipse 80% 40% at 50% -10%,rgba(249,115,22,0.14),transparent),linear-gradient(180deg,rgba(249,115,22,0.08),transparent 420px),var(--bg)}.welcome-gate{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:28px;overflow-y:auto;background:linear-gradient(180deg,color-mix(in srgb,var(--primary-soft) 54%,var(--bg)),var(--bg))}body.auth-loading .welcome-gate{opacity:0;pointer-events:none}body.auth-loading .app-header,body.auth-loading .app-main{visibility:hidden}body:not(.is-authenticated) .app-header,body:not(.is-authenticated) .app-main,body:not(.is-authenticated) .side-menu,body:not(.is-authenticated) .menu-backdrop{display:none!important}.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}.icon{width:18px;height:18px;flex:0 0 auto;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;fill:none}button .icon,.tab .icon{margin-right:7px}.welcome-gate[hidden],.welcome-gate[hidden]:has(.lp),.welcome-gate.is-signup[hidden]:has(.lp){display:none!important}.lux-welcome{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse 90% 60% at 50% 0%,rgba(79,130,255,0.18) 0%,transparent 55%),radial-gradient(ellipse 50% 50% at 10% 95%,rgba(99,102,241,0.12) 0%,transparent 55%),radial-gradient(ellipse 55% 45% at 92% 10%,rgba(79,156,255,0.10) 0%,transparent 50%),linear-gradient(165deg,#060a14 0%,#0b1022 50%,#080c18 100%);color:#f0f4ff;overflow:hidden}.lux-welcome[hidden]{display:none}.lux-welcome.is-exit{animation:lux-fade-out 460ms ease forwards}.lux-aurora{position:absolute;inset:-40% -20%;background:conic-gradient(from 210deg at 50% 48%,transparent 0%,rgba(99,102,241,0.10) 12%,rgba(79,156,255,0.14) 22%,transparent 34%,rgba(74,222,128,0.07) 48%,transparent 56%,rgba(99,102,241,0.08) 72%,transparent 82%);filter:blur(60px);animation:lux-aurora-rotate 28s linear infinite;pointer-events:none}@keyframes lux-aurora-rotate{to{transform:rotate(1turn)}}.lux-particles{position:absolute;inset:0;pointer-events:none;overflow:hidden}.lux-particles span{position:absolute;width:3px;height:3px;border-radius:50%;background:rgba(255,255,255,0.25);animation:lux-float linear infinite;opacity:0}.lux-particles span:nth-child(1){left:8%;animation-duration:14s;animation-delay:0s;width:2px;height:2px}.lux-particles span:nth-child(2){left:18%;animation-duration:11s;animation-delay:1.2s;background:rgba(99,102,241,0.4)}.lux-particles span:nth-child(3){left:28%;animation-duration:16s;animation-delay:2.6s;width:2px;height:2px}.lux-particles span:nth-child(4){left:38%;animation-duration:12s;animation-delay:0.8s;background:rgba(74,222,128,0.35)}.lux-particles span:nth-child(5){left:50%;animation-duration:18s;animation-delay:3.2s;width:2px;height:2px}.lux-particles span:nth-child(6){left:60%;animation-duration:13s;animation-delay:1.8s;background:rgba(79,156,255,0.4)}.lux-particles span:nth-child(7){left:70%;animation-duration:15s;animation-delay:4.1s}.lux-particles span:nth-child(8){left:80%;animation-duration:10s;animation-delay:0.5s;width:4px;height:4px;background:rgba(99,102,241,0.3)}.lux-particles span:nth-child(9){left:88%;animation-duration:17s;animation-delay:2.0s;width:2px;height:2px}.lux-particles span:nth-child(10){left:45%;animation-duration:20s;animation-delay:5.0s;background:rgba(74,222,128,0.25)}.lux-particles span:nth-child(11){left:15%;animation-duration:19s;animation-delay:3.8s;width:2px;height:2px}.lux-particles span:nth-child(12){left:72%;animation-duration:14s;animation-delay:6.0s;background:rgba(79,156,255,0.3)}@keyframes lux-float{0%{transform:translateY(100vh) scale(0.4);opacity:0}10%{opacity:1}90%{opacity:1}100%{transform:translateY(-10vh) scale(1);opacity:0}}.lux-welcome-shell{position:relative;z-index:2;display:flex;justify-content:center;align-items:center;width:100%;max-width:520px}.lux-welcome-card{position:relative;width:100%;border-radius:28px;border:1px solid rgba(255,255,255,0.08);background:linear-gradient(165deg,rgba(15,20,38,0.82) 0%,rgba(8,12,24,0.90) 100%);box-shadow:0 0 0 1px rgba(99,102,241,0.08),0 60px 140px rgba(0,0,0,0.6),0 0 100px rgba(79,130,255,0.05),inset 0 1px 0 rgba(255,255,255,0.07);padding:52px 44px 48px;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;animation:lux-card-in 900ms cubic-bezier(0.16,1,0.3,1) both}.lux-logo-wrap{position:relative;width:72px;height:72px;margin-bottom:10px;animation:lux-mark-in 1s cubic-bezier(0.16,1,0.3,1) 100ms both}.lux-logo-ring{position:absolute;inset:-8px;border-radius:50%;border:1.5px solid rgba(99,102,241,0.25);animation:lux-ring-breathe 4s ease-in-out infinite}.lux-logo-ring::before{content:"";position:absolute;inset:-4px;border-radius:50%;background:conic-gradient(from 0deg,transparent 70%,rgba(99,102,241,0.45) 85%,transparent 100%);animation:lux-spin 6s linear infinite}.lux-logo-ring::after{content:"";position:absolute;inset:4px;border-radius:50%;background:radial-gradient(circle,rgba(99,102,241,0.15) 0%,transparent 70%)}@keyframes lux-ring-breathe{0%,100%{transform:scale(1);opacity:0.7}50%{transform:scale(1.06);opacity:1}}.lux-welcome-mark{position:relative;z-index:1;width:72px;height:72px;filter:drop-shadow(0 0 20px rgba(99,102,241,0.45))}.lux-greeting{font-size:13px;letter-spacing:0.12em;text-transform:uppercase;color:rgba(165,180,252,0.7);font-weight:600;margin-top:4px;animation:lux-text-in 700ms cubic-bezier(0.16,1,0.3,1) 200ms both}.lux-user-name{font-size:clamp(26px,5vw,36px);font-weight:800;letter-spacing:-0.025em;line-height:1.15;margin:2px 0 0;background:linear-gradient(135deg,#ffffff 30%,rgba(165,180,252,0.9) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:lux-text-in 700ms cubic-bezier(0.16,1,0.3,1) 300ms both}.lux-subtitle{max-width:32ch;color:rgba(203,213,225,0.6);font-size:15px;line-height:1.6;margin:2px 0 0;animation:lux-text-in 700ms cubic-bezier(0.16,1,0.3,1) 400ms both}.lux-stats{display:flex;align-items:center;gap:20px;margin:14px 0 4px;padding:12px 24px;border-radius:14px;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.06);animation:lux-text-in 700ms cubic-bezier(0.16,1,0.3,1) 500ms both}.lux-stats[hidden]{display:none}.lux-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.lux-stat-num{font-size:22px;font-weight:800;color:#fff;font-variant-numeric:tabular-nums}.lux-stat-label{font-size:11px;text-transform:uppercase;letter-spacing:0.08em;color:rgba(203,213,225,0.5);font-weight:500}.lux-stat-divider{width:1px;height:28px;background:rgba(255,255,255,0.08)}#lux-welcome-enter{margin-top:16px;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:220px;padding:14px 36px;border-radius:14px;background:linear-gradient(135deg,#6366f1 0%,#4f82ff 100%);color:#fff;font-weight:700;font-size:15px;letter-spacing:-0.01em;border:none;box-shadow:0 0 0 1px rgba(99,102,241,0.3),0 12px 36px rgba(99,102,241,0.3),0 4px 12px rgba(0,0,0,0.3),inset 0 1px 0 rgba(255,255,255,0.15);cursor:pointer;transition:transform 200ms ease,box-shadow 200ms ease,filter 200ms ease;animation:lux-text-in 700ms cubic-bezier(0.16,1,0.3,1) 600ms both}#lux-welcome-enter svg{transition:transform 200ms ease}#lux-welcome-enter:hover{transform:translateY(-2px);filter:brightness(1.08);box-shadow:0 0 0 1px rgba(99,102,241,0.4),0 18px 48px rgba(99,102,241,0.35),0 4px 12px rgba(0,0,0,0.3),inset 0 1px 0 rgba(255,255,255,0.2)}#lux-welcome-enter:hover svg{transform:translateX(3px)}#lux-welcome-enter:active{transform:translateY(0);filter:brightness(0.96)}.lux-tip{display:block;margin-top:10px;font-size:13px;color:rgba(203,213,225,0.35);line-height:1.5;max-width:30ch;animation:lux-text-in 700ms cubic-bezier(0.16,1,0.3,1) 750ms both}.lux-tip:empty{display:none}@keyframes lux-text-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 540px){.lux-welcome-card{padding:40px 28px 36px;border-radius:22px}.lux-user-name{font-size:26px}.lux-stats{gap:16px;padding:10px 18px}}.purchase-success-screen{position:fixed;inset:0;z-index:140;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 50% 18%,color-mix(in srgb,var(--primary-soft) 74%,transparent),transparent 34%),linear-gradient(135deg,color-mix(in srgb,var(--surface) 88%,transparent),color-mix(in srgb,var(--bg) 96%,transparent));opacity:0;pointer-events:none;transition:opacity 220ms ease}.purchase-success-screen.is-visible{opacity:1;pointer-events:auto}.purchase-success-screen[hidden]{display:none}.purchase-success-shell{position:relative;width:min(720px,100%)}.purchase-success-glow{position:absolute;inset:-42px;border-radius:32px;background:radial-gradient(circle at 28% 22%,color-mix(in srgb,var(--primary) 28%,transparent),transparent 32%),radial-gradient(circle at 74% 78%,color-mix(in srgb,var(--success) 24%,transparent),transparent 34%);filter:blur(14px);opacity:0.88;animation:purchase-glow 4.8s ease-in-out infinite alternate}.purchase-success-card{position:relative;overflow:hidden;display:grid;justify-items:center;gap:18px;padding:clamp(34px,6vw,64px);border:1px solid color-mix(in srgb,var(--border-strong) 74%,transparent);border-radius:24px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 96%,transparent),color-mix(in srgb,var(--surface-subtle) 92%,transparent));box-shadow:0 30px 90px color-mix(in srgb,var(--primary) 18%,transparent),var(--shadow-lg);text-align:center}.purchase-success-card::before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 0%,transparent 28%,rgba(255,255,255,0.46) 44%,transparent 60%,transparent 100%);transform:translateX(-120%);animation:purchase-shine 2.9s ease 480ms both}.purchase-success-mark{position:relative;display:grid;place-items:center;width:92px;height:92px;border-radius:999px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 92%,#fff),color-mix(in srgb,var(--success) 86%,#fff));box-shadow:0 18px 42px color-mix(in srgb,var(--primary) 30%,transparent);animation:purchase-pop 700ms cubic-bezier(.2,1.4,.35,1) both}.purchase-success-mark::before,.purchase-success-mark::after{content:"";position:absolute;inset:-9px;border:1px solid color-mix(in srgb,var(--primary) 34%,transparent);border-radius:inherit;animation:purchase-ring 1.8s ease-out infinite}.purchase-success-mark::after{animation-delay:520ms}.purchase-success-mark span{width:34px;height:18px;border-left:5px solid #fff;border-bottom:5px solid #fff;transform:rotate(-45deg) translate(2px,-3px)}.purchase-success-card h1{position:relative;z-index:1;max-width:620px;margin:0;color:var(--ink);font-size:clamp(38px,7vw,68px);line-height:0.98;letter-spacing:0}.purchase-success-copy{position:relative;z-index:1;max-width:560px;margin:0;color:var(--ink-soft);font-size:clamp(17px,2vw,21px);font-weight:650}.purchase-success-ribbon{position:relative;z-index:1;display:inline-flex;padding:10px 16px;border:1px solid color-mix(in srgb,var(--primary) 32%,var(--border));border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:0.08em}.purchase-success-actions{position:relative;z-index:1;display:flex;flex-wrap:wrap;justify-content:center;gap:12px;width:100%}.purchase-success-actions button{min-width:160px}#purchase-success-status{position:relative;z-index:1;margin:0}.welcome-stage{position:relative;width:min(1180px,100%);min-height:600px;display:grid;place-items:center}.welcome-panel{width:min(640px,100%);border:1px solid var(--border);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:var(--shadow-lg);padding:28px;transition:opacity 260ms ease,transform 260ms ease}.welcome-intro{display:grid;gap:18px;width:min(1180px,100%);padding:0;overflow:hidden;border-color:color-mix(in srgb,var(--primary) 20%,var(--border));background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 98%,transparent),color-mix(in srgb,var(--primary-soft) 36%,var(--surface))),var(--surface)}.welcome-signup{position:absolute;display:grid;grid-template-columns:minmax(260px,0.78fr) minmax(360px,1fr);gap:0;width:min(1040px,100%);padding:0;opacity:0;pointer-events:none;transform:translateY(18px) scale(0.98);overflow:hidden;border-color:color-mix(in srgb,var(--border-strong) 58%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 98%,transparent),color-mix(in srgb,var(--surface-subtle) 82%,transparent)),radial-gradient(circle at 8% 0%,color-mix(in srgb,var(--primary-soft) 70%,transparent),transparent 46%);box-shadow:0 28px 80px color-mix(in srgb,#101828 16%,transparent),inset 0 1px 0 rgba(255,255,255,0.72);transition:width 0.35s cubic-bezier(0.4,0,0.2,1),grid-template-columns 0.35s cubic-bezier(0.4,0,0.2,1)}.welcome-signup::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 9%,transparent),transparent 34%),linear-gradient(315deg,color-mix(in srgb,var(--success) 8%,transparent),transparent 42%)}.welcome-signup.is-login{width:min(900px,100%);grid-template-columns:minmax(260px,0.86fr) minmax(340px,1fr)}.welcome-auth-side{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;min-height:620px;padding:36px 32px;background:linear-gradient(160deg,#0a1628 0%,#0f2847 40%,#122f56 70%,#0d1f3a 100%);color:#fff}.welcome-auth-side::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at 20% 20%,rgba(56,142,255,0.18),transparent),radial-gradient(ellipse 40% 40% at 80% 80%,rgba(120,80,255,0.12),transparent);pointer-events:none}.welcome-auth-side::after{content:"";position:absolute;top:-40%;right:-30%;width:70%;height:80%;border-radius:50%;background:radial-gradient(circle,rgba(56,142,255,0.08),transparent 70%);pointer-events:none}.welcome-auth-side-content{position:relative;z-index:1;display:flex;flex-direction:column;gap:0}.welcome-auth-side-top{display:flex;align-items:center;gap:10px;margin-bottom:28px}.welcome-auth-mark-sm{width:32px;height:32px;border-radius:8px;background:rgba(255,255,255,0.12);padding:3px}.welcome-auth-brand-name{font-size:14px;font-weight:800;color:rgba(255,255,255,0.7);letter-spacing:0.02em}.welcome-auth-side h2{max-width:320px;margin:0 0 12px;color:#fff;font-size:clamp(28px,3.2vw,36px);line-height:1.1;letter-spacing:-0.02em}.welcome-auth-subtitle{color:rgba(255,255,255,0.6);font-size:14px;font-weight:500;line-height:1.55;max-width:300px;margin:0 0 24px}.welcome-auth-tools-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:24px}.welcome-auth-tool-chip{display:inline-flex;align-items:center;gap:5px;padding:6px 11px;border:1px solid rgba(255,255,255,0.12);border-radius:8px;background:rgba(255,255,255,0.06);color:rgba(255,255,255,0.85);font-size:12px;font-weight:700;letter-spacing:0.01em}.welcome-auth-tool-chip svg{opacity:0.7}.welcome-auth-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.welcome-auth-pills span{padding:6px 12px;border:1px solid rgba(255,255,255,0.1);border-radius:999px;background:rgba(255,255,255,0.05);color:rgba(255,255,255,0.55);font-size:11px;font-weight:700;letter-spacing:0.02em}.welcome-auth-main{min-width:0;padding:36px 34px;display:flex;flex-direction:column;justify-content:center}.welcome-auth-main>h2{margin:4px 0 0;color:var(--ink);font-size:clamp(28px,3.6vw,38px);line-height:1.05;letter-spacing:-0.02em;transition:opacity 0.15s ease}.welcome-auth-main>.eyebrow{transition:opacity 0.15s ease}.welcome-auth-tagline{margin-top:6px;color:var(--ink-soft);font-size:14px;font-weight:500}.welcome-selling-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0 18px}.welcome-selling-points div{position:relative;overflow:hidden;display:grid;gap:7px;min-height:112px;padding:14px;border:1px solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:16px;background:linear-gradient(145deg,rgba(255,255,255,0.96),color-mix(in srgb,var(--primary) 7%,var(--surface-subtle))),var(--surface-subtle);box-shadow:var(--shadow-sm)}.welcome-selling-points div::before{content:"";width:30px;height:4px;border-radius:999px;background:linear-gradient(90deg,var(--primary),var(--accent))}.welcome-selling-points strong{color:var(--ink);font-size:14px;line-height:1.15}.welcome-selling-points span{color:var(--ink-soft);font-size:12px;font-weight:760;line-height:1.35}.welcome-signup.is-login .welcome-selling-points{display:none}.welcome-signup.is-login .welcome-auth-main{align-self:center}#welcome-name-field,#welcome-username-field,#welcome-referral-field{max-height:80px;opacity:1;overflow:hidden;transition:max-height 0.3s cubic-bezier(0.4,0,0.2,1),opacity 0.25s ease,margin 0.3s cubic-bezier(0.4,0,0.2,1),padding 0.3s cubic-bezier(0.4,0,0.2,1)}.welcome-signup.is-login #welcome-name-field,.welcome-signup.is-login #welcome-username-field,.welcome-signup.is-login #welcome-referral-field{max-height:0;opacity:0;margin:-6px 0;padding:0;pointer-events:none}.welcome-gate.is-signup .welcome-intro{opacity:0;pointer-events:none;transform:translateY(-18px) scale(0.98)}.welcome-gate.is-signup .welcome-signup{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}.welcome-gate.is-complete{opacity:0;transition:opacity 240ms ease}.welcome-brand{display:flex;align-items:center;gap:12px;color:var(--ink);font-weight:900}.welcome-mark{width:44px;height:44px}.welcome-copy{color:var(--ink-soft);font-size:18px;line-height:1.55}.landing-shell{display:grid;grid-template-columns:minmax(0,0.88fr) minmax(420px,1fr);gap:28px;padding:clamp(28px,4vw,46px);align-items:center}.landing-copy{display:grid;gap:18px;align-content:center;min-width:0}.landing-copy h1{max-width:10.5ch;margin:0;color:var(--ink);font-size:clamp(54px,6.4vw,84px);line-height:0.95;letter-spacing:0}.landing-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:4px}.landing-actions button{min-width:150px;min-height:54px}.landing-trust{display:flex;flex-wrap:wrap;gap:9px;margin-top:4px}.landing-trust span{display:inline-flex;align-items:center;min-height:34px;padding:8px 12px;border:1px solid color-mix(in srgb,var(--primary) 20%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--surface) 86%,var(--primary-soft));color:var(--ink-soft);font-size:13px;font-weight:900}.landing-showcase{overflow:hidden;border:1px solid color-mix(in srgb,var(--primary) 26%,var(--border));border-radius:24px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 96%,var(--primary-soft)),var(--surface)),var(--surface);box-shadow:var(--shadow-lg)}.landing-browser-bar{display:flex;align-items:center;gap:8px;min-height:46px;padding:0 16px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--ink) 5%,var(--surface))}.landing-browser-bar span{width:10px;height:8px;border-radius:999px;background:color-mix(in srgb,var(--danger) 70%,#fff)}.landing-browser-bar span:nth-child(2){background:color-mix(in srgb,var(--warning) 72%,#fff)}.landing-browser-bar span:nth-child(3){background:color-mix(in srgb,var(--success) 70%,#fff)}.landing-browser-bar strong{margin-left:8px;color:var(--muted);font-size:12px;font-weight:900}.landing-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px}.landing-product-card{display:grid;gap:9px;min-height:150px;padding:16px;border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border));border-radius:20px;background:color-mix(in srgb,var(--surface) 92%,var(--surface-subtle));box-shadow:var(--shadow-sm)}.landing-product-card.is-main{grid-column:1 / -1;min-height:230px;padding:22px;background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 9%,var(--surface)),var(--surface))}.landing-product-card.is-accent{background:linear-gradient(145deg,color-mix(in srgb,var(--warning) 16%,var(--surface)),var(--surface))}.landing-product-card small{color:var(--primary);font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:0.06em}.landing-product-card strong{color:var(--ink);font-size:21px;line-height:1.12}.landing-product-card.is-main strong{max-width:15ch;font-size:clamp(34px,3vw,44px);line-height:1.02}.landing-product-card p{margin:0;color:var(--muted);font-weight:800;line-height:1.4}.landing-progress-row{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:auto;padding-top:16px;border-top:1px solid var(--border)}.landing-progress-row span{color:var(--muted);font-weight:900}.landing-progress-row b{display:grid;place-items:center;width:82px;height:82px;border:10px solid color-mix(in srgb,var(--primary) 18%,var(--surface-muted));border-right-color:var(--primary);border-radius:999px;color:var(--ink);font-size:26px}.landing-mini-bars{display:grid;gap:8px;margin-top:4px}.landing-mini-bars i{display:block;height:9px;border-radius:999px;background:linear-gradient(90deg,var(--primary),color-mix(in srgb,var(--success) 70%,var(--primary)))}.landing-proof-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;border-top:1px solid var(--border);background:var(--border)}.landing-proof-row div{display:grid;gap:7px;min-height:132px;padding:22px 24px;background:color-mix(in srgb,var(--surface) 94%,var(--surface-subtle))}.landing-proof-row strong{color:var(--ink);font-size:20px}.landing-proof-row span{color:var(--ink-soft);font-weight:780;line-height:1.42}.welcome-animation{position:relative;min-height:220px;margin:6px 0;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(180deg,var(--surface-subtle),var(--surface))}.lesson-card{position:absolute;display:grid;gap:8px;width:180px;padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-md);animation:welcome-card-float 2400ms ease-in-out infinite}.lesson-card strong{color:var(--ink);font-size:14px}.lesson-card span{display:block;height:8px;border-radius:999px;background:var(--surface-muted)}.lesson-card span:last-child{width:62%;background:var(--primary-soft)}.card-one{top:28px;left:28px}.card-two{top:80px;right:42px;animation-delay:240ms}.card-three{bottom:26px;left:122px;animation-delay:480ms}.welcome-path{position:absolute;inset:44px 54px;border:2px solid color-mix(in srgb,var(--primary) 34%,transparent);border-left-color:transparent;border-bottom-color:transparent;border-radius:28px;animation:welcome-path-pulse 1800ms ease-in-out infinite}.welcome-form{display:grid;gap:12px;margin-top:14px}.welcome-form[hidden],.compact-welcome-form[hidden],.welcome-verify-panel[hidden]{display:none}.compact-welcome-form{margin-top:18px}.welcome-mode-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-top:16px;padding:4px;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--surface-subtle) 92%,transparent)}.welcome-mode-switch button{min-height:40px;border:0;border-radius:10px;background:transparent;color:var(--ink-soft);font-size:13px;font-weight:650;box-shadow:none;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow }.welcome-mode-switch button.active{background:var(--surface);color:var(--primary);font-weight:750;box-shadow:0 1px 3px rgba(0,0,0,0.06),0 1px 2px rgba(0,0,0,0.04)}.welcome-signup .field span{color:var(--ink);font-size:13px;font-weight:650}.welcome-signup input{min-height:46px;border-radius:10px;border:1px solid var(--border);background:var(--surface);transition:border-color 0.15s ease,box-shadow 0.15s ease}.welcome-signup input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}.welcome-signup .btn-primary,.welcome-signup .btn-secondary{width:100%;min-height:46px;border-radius:10px;font-size:14px;font-weight:700}.welcome-signup .btn-primary{background:var(--primary);color:#fff;border:0;box-shadow:0 1px 3px rgba(0,0,0,0.1),0 1px 2px rgba(0,0,0,0.06);transition:background 0.15s ease,transform 0.1s ease,opacity 0.15s ease}.welcome-signup .btn-primary:hover{filter:brightness(1.08)}.welcome-signup .btn-primary:active{transform:scale(0.99)}.welcome-divider{display:flex;align-items:center;gap:12px;margin:4px 0}.welcome-divider span{flex-shrink:0;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:0.06em}.welcome-divider::before,.welcome-divider::after{content:"";flex:1;height:1px;background:var(--border)}.google-signin-wrap{display:flex;justify-content:center;width:100%}.google-signin-wrap>div{display:flex;justify-content:center;width:100%}.welcome-plan-select{display:grid;gap:12px;margin-top:2px;padding:14px;border:1px solid color-mix(in srgb,var(--border-strong) 62%,transparent);border-radius:16px;background:color-mix(in srgb,var(--surface) 88%,transparent)}.welcome-plan-select[hidden]{display:none}.welcome-plan-step{display:grid;gap:14px;margin-top:18px;animation:auth-step-in 360ms ease both}.welcome-plan-step[hidden]{display:none}.welcome-plan-step h3{margin:0;color:var(--ink);font-size:30px;line-height:1.05}.welcome-plan-step p{margin:0;color:var(--ink-soft);font-weight:750}.welcome-plan-head{display:flex;align-items:start;justify-content:space-between;gap:12px}.welcome-plan-head strong{display:block;margin-top:2px;color:var(--ink);font-size:15px}.welcome-plan-head small{color:var(--muted);font-weight:750;white-space:nowrap}.welcome-plan-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.welcome-plan-card{position:relative;overflow:hidden;display:grid;justify-content:stretch;gap:8px;min-height:132px;padding:14px;border-radius:16px;border-color:color-mix(in srgb,var(--border-strong) 68%,transparent);background:var(--surface-subtle);color:var(--ink);text-align:left;box-shadow:var(--shadow-sm);cursor:pointer}.welcome-plan-card::before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(255,255,255,0.62),transparent 58%);pointer-events:none}.welcome-plan-card.selected{border-color:var(--primary);box-shadow:0 0 0 4px var(--focus),var(--shadow-md);transform:translateY(-1px)}.welcome-plan-card-top,.welcome-plan-card small,.welcome-plan-perk,.welcome-plan-credits,.plan-impact-note{position:relative;z-index:1}.welcome-plan-card-top{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.welcome-plan-card-top strong{color:var(--ink);font-size:17px;line-height:1.15}.welcome-plan-card-top b{color:var(--primary);font-size:14px;white-space:nowrap}.welcome-plan-card small{color:color-mix(in srgb,var(--ink-soft) 92%,transparent);line-height:1.35;font-weight:700}.welcome-plan-perk{width:fit-content;padding:5px 8px;border:1px solid rgba(255,255,255,0.72);border-radius:999px;background:rgba(255,255,255,0.48);color:var(--ink);font-size:11px;font-weight:900}.welcome-plan-credits{align-self:end;width:fit-content;padding:6px 9px;border-radius:999px;background:rgba(255,255,255,0.62);color:var(--ink);font-size:12px;font-weight:900}.plan-impact-note{width:fit-content;padding:6px 9px;border:1px solid color-mix(in srgb,var(--success) 34%,rgba(255,255,255,0.76));border-radius:999px;background:color-mix(in srgb,var(--success) 10%,rgba(255,255,255,0.72));color:color-mix(in srgb,var(--success) 58%,var(--ink));font-size:11px;font-weight:900;line-height:1.25}.welcome-plan-card.free{background:linear-gradient(145deg,#f8fafc,#e8f2ff)}.welcome-plan-card.basic{background:linear-gradient(145deg,#eff6ff,#dbeafe)}.welcome-plan-card.premium{background:linear-gradient(145deg,#ecfdf5,#d1fae5)}.welcome-plan-card.pro{background:linear-gradient(145deg,#fff7ed,#fed7aa)}.welcome-plan-card.super{background:linear-gradient(145deg,#f5f3ff,#ddd6fe)}.welcome-plan-card.vip{background:linear-gradient(145deg,#fdf2f8,#fbcfe8)}body.theme-dark .welcome-plan-card.free{background:linear-gradient(145deg,#181818,#242424)}body.theme-dark .welcome-plan-card.basic{background:linear-gradient(145deg,#1a1a1a,#2a2a2a)}body.theme-dark .welcome-plan-card.premium{background:linear-gradient(145deg,#1a2e25,#1a3d2e)}body.theme-dark .welcome-plan-card.pro{background:linear-gradient(145deg,#2d2418,#3d2e1a)}body.theme-dark .welcome-plan-card.super{background:linear-gradient(145deg,#231e36,#2e2650)}body.theme-dark .welcome-plan-card.vip{background:linear-gradient(145deg,#2d1e28,#3d2238)}.welcome-form-copy{color:var(--ink-soft);font-size:14px;line-height:1.5}#welcome-status{margin-top:14px}.welcome-link-btn{justify-self:start;min-height:0;margin-top:10px;padding:0;border:0;border-radius:0;background:transparent;color:var(--primary);box-shadow:none;font-size:13px;font-weight:850}.welcome-recovery-actions{display:flex;flex-wrap:wrap;gap:14px}.welcome-recovery-actions[hidden]{display:none}.welcome-link-btn:hover{background:transparent;box-shadow:none;color:var(--primary-hover);transform:none}button,input,textarea,select{font:inherit}input,textarea,select{font-size:max(1em,16px)}button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:10px 16px;border:1px solid transparent;border-radius:var(--radius);background:var(--primary);color:#fff;cursor:pointer;font-weight:700;font-size:14px;line-height:1.1;letter-spacing:0.01em;transition:background 180ms cubic-bezier(0.32,0.72,0,1),border-color 180ms cubic-bezier(0.32,0.72,0,1),box-shadow 180ms cubic-bezier(0.32,0.72,0,1),color 180ms cubic-bezier(0.32,0.72,0,1),transform 140ms cubic-bezier(0.32,0.72,0,1);will-change:transform}button:hover{background:var(--primary-hover);box-shadow:var(--shadow-sm);transform:translateY(-1px)}button:active{transform:translateY(0) scale(0.97);transition-duration:80ms}button:focus-visible{outline:none;box-shadow:0 0 0 2px var(--bg, #fff),0 0 0 4px var(--primary)}button:disabled{cursor:not-allowed;opacity:0.42;box-shadow:none;transform:none;filter:grayscale(0.4)}@media (pointer: coarse){button{min-height:44px}input,select,textarea{min-height:44px}}.btn-danger:disabled,#record-stop:disabled,#monthly-test:disabled{opacity:0.32;filter:grayscale(0.7)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:none;box-shadow:0 0 0 3px var(--focus),0 0 0 1px color-mix(in srgb,var(--primary) 50%,transparent);border-radius:4px}input:focus-visible,textarea:focus-visible,select:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px var(--focus),inset 0 1px 3px rgba(16,24,40,0.03)}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1{max-width:780px;font-size:clamp(28px,calc(3.6vw * var(--font-scale)),calc(48px * var(--font-scale)));line-height:1.06;letter-spacing:-0.02em;font-weight:800}h2{font-size:calc(19px * var(--font-scale));line-height:1.25;letter-spacing:-0.01em;font-weight:700}h3{font-size:calc(16px * var(--font-scale));line-height:1.25;letter-spacing:0}small{color:var(--muted);font-size:12px;font-weight:600}.app-header{position:sticky;top:0;z-index:50;background:var(--surface);border-bottom:1px solid transparent;transition:border-color 160ms ease,box-shadow 160ms ease,background-color 160ms ease}@supports (backdrop-filter: blur(8px)) or (-webkit-backdrop-filter: blur(8px)){.app-header{background:color-mix(in srgb,var(--surface) 86%,transparent);-webkit-backdrop-filter:blur(14px) saturate(180%);backdrop-filter:blur(14px) saturate(180%)}}.app-header.is-scrolled{border-bottom-color:var(--border);box-shadow:0 1px 0 color-mix(in srgb,var(--border) 76%,transparent)}.header-inner{display:grid;grid-template-columns:auto minmax(160px,1fr) auto auto;align-items:center;gap:14px;max-width:1280px;min-height:var(--header-h);margin:0 auto;padding:9px 28px}.brand{display:flex;align-items:center;gap:10px;min-width:0}.brand-mark{position:relative;flex:0 0 auto;width:44px;height:44px;object-fit:contain;border-radius:10px;filter:drop-shadow(0 2px 7px rgba(16,24,40,0.16))}.brand{position:relative}.brand::after{content:"";position:absolute;top:4px;left:32px;width:9px;height:9px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 2px var(--surface),0 0 0 3px rgba(34,197,94,0.35);animation:brand-pulse 2.4s ease-in-out infinite;pointer-events:none}@keyframes brand-pulse{0%,100%{box-shadow:0 0 0 2px var(--surface),0 0 0 3px rgba(34,197,94,0.35)}50%{box-shadow:0 0 0 2px var(--surface),0 0 0 5px rgba(34,197,94,0.18)}}@media (prefers-reduced-motion: reduce){.brand::after{animation:none}}.brand-copy{display:grid;gap:1px;min-width:0}.brand-title{color:var(--ink);font-size:15px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand-subtitle{color:var(--muted);font-size:11px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-toggle{display:inline-flex;align-items:center;justify-self:start;gap:10px;min-height:44px;padding:6px 12px 6px 6px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--ink);cursor:pointer;transition:border-color 160ms ease,background-color 160ms ease,box-shadow 160ms ease}.menu-toggle:hover{border-color:var(--border-strong);background:var(--surface-subtle)}.menu-toggle[aria-expanded=true]{border-color:color-mix(in srgb,var(--primary) 50%,var(--border));background:color-mix(in srgb,var(--primary) 6%,var(--surface));box-shadow:0 0 0 4px var(--focus)}.menu-toggle-icon{display:grid;align-content:center;gap:4px;width:32px;height:32px;padding:8px 7px;border-radius:9px;background:var(--ink);flex:0 0 auto}.menu-toggle:hover .menu-toggle-icon{background:var(--primary)}.menu-toggle-icon span{display:block;height:2px;border-radius:999px;background:var(--surface);transition:width 180ms ease}.menu-toggle-icon span:nth-child(2){width:70%}.menu-toggle-icon span:nth-child(3){width:46%}.menu-toggle:hover .menu-toggle-icon span:nth-child(2),.menu-toggle:hover .menu-toggle-icon span:nth-child(3){width:100%}.menu-toggle-label-stack{display:grid;gap:1px;text-align:left;line-height:1.05}.menu-toggle-eyebrow{display:block;color:var(--muted);font-size:9px;font-weight:850;letter-spacing:0.1em;text-transform:uppercase}#current-section-label{display:block;color:var(--ink);font-size:13px;font-weight:800;line-height:1.1}@media (max-width: 720px){.menu-toggle{padding:6px;gap:0}.menu-toggle-label-stack{display:none}}.menu-backdrop{position:fixed;inset:0;z-index:55;background:rgba(16,24,40,0.32);animation:menu-backdrop-fade 180ms ease both;will-change:opacity}.menu-backdrop[hidden],.side-menu[hidden]{display:none}.side-menu{position:fixed;inset:0 auto 0 0;z-index:60;display:grid;grid-template-rows:auto 1fr;gap:14px;width:min(360px,calc(100vw - 28px));padding:22px;border-right:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-lg);animation:menu-slide-in 220ms cubic-bezier(0.2,0.9,0.3,1) both;transform-origin:left center;will-change:transform}.side-menu .tab,.side-menu .side-menu-section-label{opacity:1;animation:none}.side-menu .tabs button.tab{transition:transform 180ms cubic-bezier(0.34,1.4,0.45,1),background-color 180ms ease,border-color 180ms ease,box-shadow 180ms ease}.side-menu .tabs button.tab:hover:not(.active){transform:translateX(4px)}.edge-trigger-hint{position:fixed;left:0;top:60px;bottom:0;width:4px;background:linear-gradient(to right,color-mix(in srgb,var(--primary, #3b82f6) 60%,transparent),transparent);opacity:0;transition:opacity 220ms ease,width 220ms ease;pointer-events:none;z-index:58;overflow:hidden}.edge-trigger-hint .edge-trigger-fill{display:block;position:absolute;left:0;top:0;bottom:100%;width:100%;background:var(--primary, #3b82f6);box-shadow:0 0 24px 4px color-mix(in srgb,var(--primary, #3b82f6) 70%,transparent)}body.edge-hover-active .edge-trigger-hint{opacity:1;width:6px}body.edge-hover-active .edge-trigger-hint .edge-trigger-fill{animation:edge-trigger-fill 1000ms linear forwards}body:not(.is-authenticated) .edge-trigger-hint{display:none}.side-menu-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--border)}.side-menu-header .eyebrow{margin-bottom:4px}.menu-close{min-height:34px;padding:8px 10px;border-color:var(--border);background:var(--surface-subtle);color:var(--ink-soft);font-size:12px}.menu-close:hover{border-color:var(--border-strong);background:var(--surface);color:var(--ink)}.tabs{display:grid;align-content:start;gap:8px;overflow-y:auto;padding-right:2px}.tab{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:10px;row-gap:3px;min-height:58px;padding:11px 12px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--ink-soft);box-shadow:none;text-align:left}.tab[hidden]{display:none!important}.tab strong{grid-column:2;color:inherit;font-size:14px;line-height:1.15}.tab span{grid-column:2;color:var(--muted);font-size:12px;font-weight:650}.tab .icon{grid-row:1 / span 2;align-self:center;margin-right:0}.tab:hover{border-color:var(--border);background:var(--surface-subtle);color:var(--ink);box-shadow:none}.tab.active{border-color:color-mix(in srgb,var(--primary) 30%,var(--border));background:color-mix(in srgb,var(--primary-soft) 80%,var(--surface));color:var(--primary);box-shadow:0 1px 3px rgba(16,24,40,0.06)}.account-menu{position:relative;justify-self:end}.account-menu-btn{display:inline-flex;align-items:center;gap:8px;min-width:0;max-width:150px;min-height:42px;padding:5px 11px 5px 6px;border-color:var(--border);border-radius:12px;background:var(--surface);color:var(--ink);box-shadow:none}.account-menu-btn:hover{border-color:var(--border-strong);background:var(--surface-subtle);color:var(--ink)}.account-menu-btn[aria-expanded=true]{border-color:color-mix(in srgb,var(--primary) 48%,var(--border));box-shadow:0 0 0 4px var(--focus)}.account-avatar,.account-panel-avatar{display:grid;place-items:center;flex:0 0 auto;border-radius:999px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 92%,#fff),color-mix(in srgb,var(--success) 78%,#fff));color:#fff;font-weight:900}.account-avatar{width:30px;height:30px;font-size:13px}.account-menu-btn span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-panel{position:absolute;isolation:isolate;top:calc(100% + 12px);right:0;z-index:40;display:grid;gap:14px;width:min(410px,calc(100vw - 32px));padding:16px;border:1px solid color-mix(in srgb,var(--border-strong) 62%,transparent);border-radius:20px;background:color-mix(in srgb,var(--surface) 98%,transparent);box-shadow:var(--shadow-lg);transform-origin:top right;animation:account-panel-in 180ms ease both}.account-panel[hidden]{display:none}.account-panel::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:radial-gradient(circle at 12% 8%,color-mix(in srgb,var(--primary-soft) 74%,transparent),transparent 42%),linear-gradient(180deg,color-mix(in srgb,var(--surface-subtle) 72%,transparent),transparent 58%)}.account-panel-top{display:grid;grid-template-columns:48px minmax(0,1fr);gap:11px;align-items:center}.account-panel-avatar{width:48px;height:48px;box-shadow:0 12px 28px color-mix(in srgb,var(--primary) 24%,transparent);font-size:20px}.account-panel-kicker{display:block;margin-bottom:3px;color:var(--primary);font-size:11px;font-weight:900;letter-spacing:0.08em;text-transform:uppercase}.account-panel strong,#account-panel-name,#account-panel-email{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#account-panel-name{color:var(--ink);font-size:18px;line-height:1.2}#account-panel-email{margin-top:3px;color:var(--muted);font-size:13px;font-weight:650}.account-chip{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:30px;width:fit-content;max-width:100%;padding:6px 12px;border:1px solid color-mix(in srgb,var(--warning) 34%,var(--border));border-radius:999px;background:var(--warning-soft);color:var(--warning);font-size:11px;font-weight:850;letter-spacing:0.03em;box-shadow:0 1px 2px rgba(16,24,40,0.06)}.account-chip.is-verified{border-color:color-mix(in srgb,var(--success) 36%,var(--border));background:var(--success-soft);color:var(--success)}.account-chip.is-verified::before{content:"✓";font-size:11px;font-weight:900}.account-usage{display:grid;gap:12px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.account-usage-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.account-usage-head span{color:var(--ink);font-size:15px;font-weight:850}.account-usage-head strong{color:var(--primary);font-size:18px}.account-usage progress{width:100%;height:8px;overflow:hidden;border:0;border-radius:999px;background:var(--surface-muted)}.account-usage progress::-webkit-progress-bar{border-radius:999px;background:var(--surface-muted)}.account-usage progress::-webkit-progress-value{border-radius:999px;background:var(--success);transition:width 0.4s ease}.account-usage progress::-moz-progress-bar{border-radius:999px;background:var(--success);transition:width 0.4s ease}.account-usage progress.is-low::-webkit-progress-value{background:var(--warning)}.account-usage progress.is-low::-moz-progress-bar{background:var(--warning)}.account-usage progress.is-critical::-webkit-progress-value{background:var(--danger)}.account-usage progress.is-critical::-moz-progress-bar{background:var(--danger)}.account-billing-panel{display:grid;gap:10px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-sm)}.account-billing-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.account-billing-head strong{color:var(--ink);font-size:13px}.billing-option-list{display:grid;gap:8px}.billing-option-list.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-option{justify-content:space-between;min-height:54px;width:100%;border-color:var(--border);background:linear-gradient(145deg,var(--surface),var(--surface-subtle));color:var(--ink);text-align:left;box-shadow:0 1px 2px rgba(16,24,40,0.04);transition:border-color 150ms,background 150ms,box-shadow 150ms,transform 150ms}.billing-option:hover,.billing-option.active{border-color:var(--primary);background:var(--primary-soft);color:var(--ink);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 18%,transparent);transform:translateY(-1px)}.billing-option span{display:grid;gap:2px}.billing-option small{color:var(--muted)}.billing-option i{color:color-mix(in srgb,var(--success) 64%,var(--ink));font-size:11px;font-style:normal;font-weight:900;line-height:1.25}.billing-option b{color:var(--primary);font-size:13px}.account-panel-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.danger-zone{display:grid;gap:7px;padding:14px;border:1px solid color-mix(in srgb,var(--danger) 34%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--danger) 7%,var(--surface))}.danger-zone strong{color:var(--danger)}.danger-zone small{color:var(--ink-soft);font-weight:750;line-height:1.4}.account-action-danger{border-color:color-mix(in srgb,var(--danger) 46%,var(--border));color:var(--danger)}.admin-layout{display:grid;grid-template-columns:minmax(320px,0.85fr) minmax(420px,1.15fr);gap:18px}.admin-overview-panel{grid-column:1 / -1}.admin-stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:14px}.admin-stat-card{display:grid;gap:6px;min-height:116px;padding:16px;border:1px solid var(--border);border-radius:16px;background:linear-gradient(180deg,var(--surface-subtle),var(--surface));box-shadow:var(--shadow-md)}.admin-stat-card span{color:var(--primary);font-size:12px;font-weight:950;letter-spacing:0.08em;text-transform:uppercase}.admin-stat-card strong{color:var(--ink);font-size:28px;line-height:1}.admin-stat-card small{color:var(--muted);font-weight:800;line-height:1.35}.admin-chart-label{margin:0 0 10px;font-size:14px;font-weight:800;color:var(--ink)}.admin-bar-chart{display:flex;align-items:flex-end;gap:3px;height:120px;padding:0 2px 22px;border-bottom:2px solid var(--border);position:relative}.admin-bar{flex:1;min-width:0;height:var(--h, 0%);min-height:3px;background:var(--primary);border-radius:4px 4px 0 0;position:relative;transition:height 0.4s ease,opacity 0.2s ease;cursor:default}.admin-bar:hover{opacity:0.8}.admin-bar span{position:absolute;bottom:-20px;left:50%;transform:translateX(-50%);font-size:9px;font-weight:700;color:var(--muted);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity 0.15s ease}.admin-bar:hover span{opacity:1}.admin-retention-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-plan-badge{display:inline-block;padding:2px 8px;border-radius:8px;font-size:10px;font-weight:900;letter-spacing:0.06em;text-transform:uppercase}.admin-plan-free{background:var(--surface-muted);color:var(--muted)}.admin-plan-basic{background:#e3f2fd;color:#1565c0}.admin-plan-premium{background:#f3e5f5;color:#7b1fa2}.admin-plan-pro{background:#fff3e0;color:#e65100}.admin-plan-super_pro{background:#fce4ec;color:#c62828}.admin-plan-vip{background:#fff8e1;color:#f57f17}.admin-top-user-head{display:flex;align-items:center;gap:8px}.admin-top-user-row{transition:border-color 120ms ease,background 120ms ease}.admin-top-user-row:hover{background:var(--surface);border-color:var(--primary)}.admin-quick-credits{display:flex;align-items:center;gap:6px;margin:8px 0}.admin-quick-credits button{font-size:12px;padding:4px 10px}.admin-hourly-chart{display:grid;grid-template-columns:repeat(24,1fr);gap:2px;margin-top:8px}.admin-hour-cell{aspect-ratio:1;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;color:var(--muted);border:1px solid var(--border);cursor:default}.admin-adoption-bar{height:6px;border-radius:3px;background:var(--border);margin-top:4px}.admin-adoption-bar-fill{height:100%;border-radius:3px;background:var(--primary);transition:width 0.4s ease}.admin-at-risk-badge{display:inline-block;padding:2px 6px;border-radius:6px;font-size:10px;font-weight:900;background:#fff3e0;color:#e65100}.admin-metrics-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.admin-metrics-layout h3{margin:0 0 10px;color:var(--ink);font-size:16px}.admin-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.admin-hero-actions{display:flex;gap:8px;align-items:center}.admin-subnav{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 22px;padding:6px;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle);width:fit-content;max-width:100%}.admin-subnav-pill{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--ink-soft);font-size:14px;font-weight:700;cursor:pointer;transition:background 160ms ease,color 160ms ease,border-color 160ms ease}.admin-subnav-pill:hover{background:color-mix(in srgb,var(--surface) 80%,transparent);color:var(--ink)}.admin-subnav-pill.is-active{background:var(--surface);color:var(--primary);border-color:color-mix(in srgb,var(--primary) 35%,var(--border));box-shadow:0 1px 3px rgba(16,24,40,0.08)}.admin-subnav-icon{font-size:12px;opacity:0.65}.admin-subnav-pill.is-active .admin-subnav-icon{opacity:1;color:var(--primary)}.admin-subnav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--danger, #dc2626);color:#fff;font-size:10px;font-weight:900;line-height:1}.admin-view{display:none;gap:18px}.admin-view.is-active{display:grid}.admin-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}@media (max-width: 900px){.admin-grid-2{grid-template-columns:1fr}}.admin-card{padding:22px}.admin-card-head{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:12px 16px;margin-bottom:14px}.admin-card-head h2{margin:2px 0 0;font-size:18px}.admin-card-meta{font-size:12px;color:var(--muted);font-weight:700;letter-spacing:0.04em;text-transform:uppercase}.admin-card-sub{margin:6px 0 0;font-size:13px;color:var(--muted)}.admin-today-hero{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}@media (max-width: 720px){.admin-today-hero{grid-template-columns:1fr}}.admin-kpi-tile{display:grid;gap:6px;padding:20px 22px;border:1px solid var(--border);border-radius:16px;background:linear-gradient(180deg,var(--surface),var(--surface-subtle));box-shadow:0 1px 4px rgba(16,24,40,0.05)}.admin-kpi-label{font-size:12px;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;color:var(--muted)}.admin-kpi-value{font-size:32px;font-weight:800;line-height:1.1;color:var(--ink);font-variant-numeric:tabular-nums}.admin-kpi-delta{font-size:12px;font-weight:700;color:var(--muted)}.admin-kpi-delta-up{color:var(--success, #15803d)}.admin-kpi-delta-down{color:var(--danger, #dc2626)}.admin-kpi-delta-flat{color:var(--muted)}.admin-anomalies:not(:empty){display:grid;gap:10px}.admin-anomaly{display:flex;align-items:flex-start;gap:14px;padding:14px 16px;border:1px solid;border-radius:12px;background:var(--surface)}.admin-anomaly strong{display:block;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:2px}.admin-anomaly p{margin:0;font-size:14px;color:var(--ink);line-height:1.45}.admin-anomaly-icon{flex:0 0 auto;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:14px;font-weight:900}.admin-anomaly-high{border-color:color-mix(in srgb,var(--danger, #dc2626) 45%,var(--border));background:color-mix(in srgb,var(--danger, #dc2626) 6%,var(--surface))}.admin-anomaly-high .admin-anomaly-icon{background:var(--danger, #dc2626);color:#fff}.admin-anomaly-high strong{color:var(--danger, #dc2626)}.admin-anomaly-medium{border-color:color-mix(in srgb,#d97706 38%,var(--border));background:color-mix(in srgb,#fbbf24 8%,var(--surface))}.admin-anomaly-medium .admin-anomaly-icon{background:#d97706;color:#fff}.admin-anomaly-medium strong{color:#b45309}.admin-funnel{display:grid;gap:10px}.admin-funnel-row{display:grid;grid-template-columns:220px 1fr 110px;align-items:center;gap:12px}@media (max-width: 720px){.admin-funnel-row{grid-template-columns:1fr;gap:4px}}.admin-funnel-label{font-size:13px;font-weight:700;color:var(--ink)}.admin-funnel-bar{position:relative;height:14px;border-radius:999px;background:var(--surface-subtle);overflow:hidden}.admin-funnel-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--primary),color-mix(in srgb,var(--primary) 60%,#6366f1));border-radius:999px;transition:width 280ms cubic-bezier(0.32,0.72,0,1)}.admin-funnel-count{font-size:14px;font-weight:800;color:var(--ink);text-align:right;font-variant-numeric:tabular-nums}.admin-funnel-count small{display:block;font-size:11px;font-weight:600;color:var(--muted)}.admin-action-queue{display:grid;gap:10px}.admin-action-card{display:grid;grid-template-columns:44px 1fr auto;gap:14px;padding:14px 16px;border:1px solid var(--border);border-left-width:3px;border-radius:12px;background:var(--surface);align-items:center}.admin-action-high{border-left-color:var(--danger, #dc2626)}.admin-action-medium{border-left-color:#d97706}.admin-action-low{border-left-color:color-mix(in srgb,var(--primary) 55%,var(--border))}.admin-action-icon{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:22px;background:var(--surface-subtle)}.admin-action-body{min-width:0}.admin-action-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.admin-action-head strong{color:var(--ink);font-size:15px}.admin-action-plan-chip{padding:2px 8px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0.04em}.admin-action-time{font-size:12px;color:var(--muted);font-weight:600}.admin-action-reason{font-size:13px;color:var(--ink-soft);margin-top:2px}.admin-action-suggest{font-size:13px;font-weight:700;color:var(--primary);margin-top:4px}.admin-action-email-line{margin-top:4px;font-size:12px}.admin-action-email{color:var(--ink-soft);text-decoration:none;font-variant-numeric:tabular-nums}.admin-action-email:hover{color:var(--primary)}.admin-action-actions{display:flex;flex-direction:column;gap:6px;align-self:stretch;justify-content:center}.admin-action-actions .btn-secondary{padding:6px 12px;font-size:12px;white-space:nowrap;min-height:0}@media (max-width: 720px){.admin-action-card{grid-template-columns:36px 1fr}.admin-action-icon{width:36px;height:36px;font-size:18px}.admin-action-actions{grid-column:1 / -1;flex-direction:row;justify-content:flex-end}}.admin-table-list{display:grid;gap:8px}.admin-table-row{display:grid;gap:4px;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle)}.admin-table-row span{color:var(--muted);font-size:12px;font-weight:950;text-transform:uppercase}.admin-table-row b{color:var(--ink)}.admin-table-row small{color:var(--muted);font-weight:800}.admin-feed-section{border:1px solid var(--border);border-radius:14px;background:var(--surface);overflow:hidden}.admin-feed-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px 12px;border-bottom:1px solid var(--border)}.admin-feed-header h3{margin:0;font-size:15px;font-weight:800}.admin-feed-subtitle{margin:2px 0 0;font-size:12px;color:var(--muted);font-weight:600}.admin-feed-filter-select{padding:6px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-subtle);color:var(--ink);font-size:12px;font-weight:700;cursor:pointer}.admin-activity-feed{max-height:min(920px,74vh);overflow-y:auto;overscroll-behavior:contain}.admin-feed-footer{display:flex;justify-content:center;padding:12px 16px 16px}.admin-disputes-list{display:flex;flex-direction:column;gap:10px;max-height:720px;overflow-y:auto;overscroll-behavior:contain;padding:4px 0}.admin-dispute-card{border:1px solid var(--border);border-radius:12px;padding:12px 14px;background:var(--surface);font-size:13px;line-height:1.5}.admin-dispute-card.is-disagree{border-left:4px solid var(--warning, #c89858);background:color-mix(in srgb,var(--warning, #c89858) 6%,var(--surface))}.admin-dispute-card.is-resolved{opacity:0.6}.admin-dispute-head{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:11px;color:var(--ink-soft);margin-bottom:8px}.admin-dispute-flag{background:rgba(200,152,88,0.18);color:#6a3618;border:1px solid rgba(200,152,88,0.45);border-radius:999px;padding:2px 10px;font-weight:700;font-size:11px}.admin-dispute-body>div{margin:3px 0}.admin-dispute-verdicts{display:flex;gap:12px;margin-top:6px;font-size:12px}.admin-dispute-verdicts .verdict-yes{color:#1d4a36;font-weight:700}.admin-dispute-verdicts .verdict-no{color:#6a3618;font-weight:700}.admin-dispute-verdicts .verdict-na{color:var(--ink-soft);font-style:italic}.admin-dispute-llm{margin-top:6px;font-style:italic;color:var(--ink-soft)}.admin-dispute-note{margin-top:6px;padding:4px 8px;background:rgba(0,0,0,0.04);border-radius:6px;font-size:12px}.admin-dispute-actions{display:flex;gap:8px;margin-top:10px;align-items:center}.admin-dispute-actions button{padding:5px 12px;font-size:12px}.admin-dispute-resolved{font-size:11px;color:var(--ink-soft);font-style:italic}.feed-event{display:flex;align-items:flex-start;gap:12px;padding:12px 20px;border-bottom:1px solid color-mix(in srgb,var(--border) 50%,transparent);transition:background 0.15s}.feed-event:hover{background:var(--surface-subtle)}.feed-event:last-child{border-bottom:none}.feed-icon{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:color-mix(in srgb,currentColor 10%,transparent);margin-top:2px}.feed-icon svg{width:16px;height:16px}.feed-body{flex:1;min-width:0;display:grid;gap:3px}.feed-headline{display:flex;align-items:center;gap:6px;flex-wrap:wrap;line-height:1.4}.feed-name{font-size:13px;font-weight:800;color:var(--ink)}.feed-action-label{font-size:12px;color:var(--muted);font-weight:600}.feed-time{font-size:11px;color:var(--muted);font-weight:600;margin-left:auto;white-space:nowrap}.feed-detail{font-size:12px;color:var(--ink-soft);font-weight:600;white-space:normal;overflow-wrap:anywhere;line-height:1.4}.feed-subdetail{display:block;font-size:11px;color:var(--muted);font-weight:600;line-height:1.45}.feed-detail-muted{color:var(--muted);font-style:italic}.admin-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.admin-account-list{display:grid;gap:8px;margin-top:14px}.admin-account-row{justify-content:space-between;width:100%;min-height:76px;border-color:var(--border);background:var(--surface-subtle);color:var(--ink);text-align:left;gap:16px}.admin-account-row span{display:grid;gap:2px;min-width:0}.admin-account-row small{color:var(--muted)}.admin-account-row b{color:var(--primary)}.admin-account-summary{display:grid;gap:4px;padding:10px 14px;margin-bottom:10px;border:1px solid var(--border);border-radius:var(--radius-md, 12px);background:var(--surface-subtle);font-size:0.9rem;color:var(--ink)}.admin-account-summary small{color:var(--muted);font-size:0.78rem;line-height:1.4}.admin-internal-note{color:var(--muted)}.admin-account-row.is-internal{opacity:0.72;border-style:dashed}.admin-internal-badge{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:999px;background:var(--surface-muted, rgba(120, 120, 120, 0.16));color:var(--muted);font-size:0.62rem;font-style:normal;font-weight:700;letter-spacing:0.04em;vertical-align:middle;text-transform:uppercase}.admin-account-detail{display:grid;gap:14px}.admin-detail-head{display:grid;gap:3px}.admin-detail-head small{color:var(--muted);font-weight:800}.admin-detail-head strong{color:var(--ink);font-size:22px}.admin-detail-head span{color:var(--muted);font-weight:800}.admin-stats{display:flex;flex-wrap:wrap;gap:8px}.admin-stats span{padding:7px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface-subtle);color:var(--ink-soft);font-size:12px;font-weight:900}.admin-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admin-referral-panel{grid-column:1 / -1}.admin-referral-form{display:grid;grid-template-columns:minmax(180px,0.8fr) minmax(240px,1fr) auto;gap:10px;align-items:end}.admin-referral-list{display:grid;gap:8px;margin-top:14px}.admin-referral-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle)}.admin-referral-row div:first-child{display:grid;gap:3px}.admin-referral-row strong{color:var(--ink);font-size:18px}.admin-referral-row small,.admin-referral-meta span{color:var(--muted);font-weight:800}.admin-referral-meta{display:flex;gap:10px;align-items:center}.account-page{max-width:1120px;margin:0 auto}.account-hero{align-items:center;gap:18px;min-height:0;margin-bottom:20px;padding:28px 28px 22px}.account-hero h1{max-width:620px;font-size:clamp(34px,4.2vw,52px);line-height:1.02}.account-page-grid{display:grid;grid-template-columns:minmax(340px,420px) minmax(420px,1fr);gap:18px;align-items:start}.account-profile-card,.account-usage-card,.account-billing-panel{min-width:0}.account-profile-card{display:grid;gap:16px;padding:24px;background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 88%,var(--primary-soft)))}.account-usage-card{grid-column:2;padding:24px;background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 88%,var(--success-soft)))}.account-usage-card .account-usage,.account-billing-panel{border-radius:14px}.account-billing-panel{grid-column:1 / -1;display:grid;gap:16px;padding:22px}.account-billing-panel .account-billing-head{padding-bottom:4px;border-bottom:1px solid var(--border)}.account-billing-panel .account-billing-head h2{margin:2px 0 0;color:var(--ink);font-size:20px;line-height:1.15}.account-topup-head{margin-top:6px}.account-billing-panel .billing-option-list:not(.compact){grid-template-columns:repeat(5,minmax(0,1fr))}.account-billing-panel .billing-option-list.compact{grid-template-columns:repeat(2,minmax(0,1fr));max-width:520px}.account-billing-panel .billing-option{align-items:center;min-height:116px;padding:14px;border-radius:12px;flex-direction:column;justify-content:space-between}.account-billing-panel .billing-option span{gap:4px}.account-billing-panel .billing-option strong{color:var(--ink);font-size:16px;line-height:1.15}.account-billing-panel .billing-option small{font-size:12px;line-height:1.35}.account-billing-panel .billing-option em{color:var(--primary);font-size:11px;font-style:normal;font-weight:900;line-height:1.25}.account-billing-panel .billing-option b{align-self:flex-start;font-size:15px;white-space:nowrap}.account-usage-history{display:grid;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--border)}.account-perk-strip{display:flex;flex-wrap:wrap;gap:8px}.account-perk-strip span{width:fit-content;padding:6px 9px;border:1px solid var(--border);border-radius:999px;background:var(--surface-subtle);color:var(--ink);font-size:12px;font-weight:900}.account-credit-warning{display:grid;gap:2px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--warning) 44%,var(--border));border-radius:12px;background:var(--warning-soft);color:var(--ink)}.account-credit-warning[hidden]{display:none}.account-credit-warning strong{font-size:13px}.account-credit-warning span{color:var(--ink-soft);font-size:12px;font-weight:800}.account-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.account-section-head strong{color:var(--ink);font-size:15px}.usage-events-list{display:grid;gap:8px}.usage-event{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 74%,transparent)}.usage-event:last-child{border-bottom:0}.usage-event span{display:grid;gap:2px;min-width:0}.usage-event strong{color:var(--ink);font-size:13px}.usage-event b{color:var(--primary);font-size:13px;white-space:nowrap}.empty-note{margin:0;color:var(--muted);font-size:13px;font-weight:650}.info-page{max-width:1120px;margin:0 auto}.info-hero{min-height:0;margin-bottom:20px;padding:28px 28px 22px}.info-hero h1{max-width:760px;font-size:clamp(34px,4.2vw,52px);line-height:1.02}.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.legal-grid{align-items:stretch}.info-card{display:grid;align-content:start;gap:12px;min-height:260px;padding:24px}.info-card h2{margin:0;color:var(--ink);font-size:22px;line-height:1.15}.info-card p{margin:0;color:var(--ink-soft)}.info-hero-sub{margin:8px 0 0;color:var(--ink-soft);font-size:14px}.changelog-feed{display:grid;gap:24px;margin-top:24px}.changelog-entry{position:relative;background:var(--panel-bg, rgba(255, 252, 244, 0.6));border:1px solid rgba(193,162,96,0.18);border-radius:16px;padding:22px 26px;box-shadow:0 2px 12px rgba(76,50,18,0.04)}.changelog-entry-head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:14px;border-bottom:1px solid rgba(193,162,96,0.14);padding-bottom:12px}.changelog-date{font-size:12px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--brand, #c1a260);padding:4px 10px;border-radius:999px;background:rgba(193,162,96,0.14);white-space:nowrap}.changelog-entry-head h2{margin:0;font-size:19px;color:var(--ink);line-height:1.3;flex:1}.changelog-items{list-style:none;padding:0;margin:0;display:grid;gap:10px}.changelog-item{display:grid;grid-template-columns:80px 1fr;gap:12px;align-items:start;font-size:14px;color:var(--ink-soft);line-height:1.5}.changelog-tag{font-size:10px;font-weight:700;letter-spacing:0.08em;padding:3px 8px;border-radius:6px;text-align:center;white-space:nowrap;align-self:start;margin-top:1px}.changelog-tag-new{background:rgba(120,170,100,0.18);color:#5b7f55;border:1px solid rgba(120,170,100,0.28)}.changelog-tag-improved{background:rgba(193,162,96,0.18);color:#8a6f30;border:1px solid rgba(193,162,96,0.28)}.changelog-tag-fixed{background:rgba(215,97,72,0.16);color:#a04432;border:1px solid rgba(215,97,72,0.30)}.changelog-empty{color:var(--ink-soft);font-style:italic;padding:24px;text-align:center}#menu-changelog-btn{position:relative}.changelog-new-dot{position:absolute;top:8px;right:10px;grid-column:auto!important;font-size:9px!important;font-weight:800!important;letter-spacing:0.1em;padding:2px 6px;border-radius:999px;background:linear-gradient(135deg,#c1a260,#8a6f30);color:#fff!important;line-height:1;box-shadow:0 0 0 2px rgba(193,162,96,0.18);pointer-events:none}@media (max-width: 600px){.changelog-item{grid-template-columns:1fr;gap:4px}.changelog-tag{justify-self:start}}.info-action{display:inline-flex;align-items:center;justify-content:center;width:fit-content;min-height:42px;margin-top:4px;padding:10px 14px;border:1px solid color-mix(in srgb,var(--primary) 34%,var(--border));border-radius:10px;background:var(--primary);color:#fff;font-weight:850;text-decoration:none}.info-action:hover{background:var(--primary-hover);color:#fff}.info-list{display:grid;gap:10px;margin:0;padding-left:20px;color:var(--ink-soft);font-weight:650}.bug-report-card,.learning-feedback-card{grid-column:span 2}.learning-feedback-card{background:radial-gradient(circle at 92% 12%,color-mix(in srgb,var(--primary) 18%,transparent),transparent 32%),linear-gradient(145deg,color-mix(in srgb,var(--success) 8%,var(--surface)),var(--surface))}.bug-report-form{display:grid;gap:12px}.bug-report-form .info-action{border:0;cursor:pointer}.modal-backdrop{position:fixed;inset:0;z-index:130;display:grid;place-items:center;padding:24px;background:rgba(16,24,40,0.36);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-backdrop[hidden]{display:none}.credit-limit-card{display:grid;gap:14px;width:min(460px,100%);padding:26px;border:1px solid var(--border);border-radius:20px;background:var(--surface);box-shadow:var(--shadow-lg)}.credit-limit-card h2{margin:0;color:var(--ink);font-size:28px;line-height:1.08}.credit-limit-card p{margin:0;color:var(--ink-soft)}.credit-limit-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:4px}.account-profile-form{display:grid;gap:10px;padding:0;border:0;border-radius:0;background:transparent}.account-profile-form[hidden]{display:none}.account-field{display:grid;gap:7px}.account-field span{color:var(--ink);font-size:12px;font-weight:850}.account-field input{min-height:46px;padding:9px 11px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--ink);font:inherit}.account-two-factor{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;padding:12px 0;border:1px solid var(--border);border-width:1px 0;border-radius:0;background:transparent;cursor:pointer}.account-two-factor input{margin-top:3px;accent-color:var(--primary)}.welcome-trust-device{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;padding:10px 12px;margin:6px 0 4px;border:1px solid color-mix(in srgb,var(--border) 80%,transparent);border-radius:12px;background:color-mix(in srgb,var(--surface-subtle) 60%,transparent);cursor:pointer;font-size:13px}.welcome-trust-device input{margin-top:3px;accent-color:var(--primary);cursor:pointer}.welcome-trust-device strong{display:block;color:var(--ink);font-weight:800;font-size:13px;margin-bottom:2px}.welcome-trust-device small{display:block;color:var(--muted);font-size:11px;font-weight:600;line-height:1.4}.account-two-factor strong,.account-two-factor small{display:block}.account-two-factor strong{color:var(--ink);font-size:13px}.account-two-factor small{margin-top:3px;color:var(--muted);font-size:12px;line-height:1.35}#account-panel-status{margin:0}.account-action-btn{border-color:var(--border);background:var(--surface);color:var(--ink-soft);box-shadow:0 1px 2px rgba(16,24,40,0.06)}.account-action-btn:hover{border-color:var(--border-strong);background:var(--surface-subtle);color:var(--ink)}.account-action-primary{border-color:transparent;background:var(--primary);color:#fff;box-shadow:0 1px 2px rgba(16,24,40,0.14)}.account-action-primary:hover{background:var(--primary-hover);box-shadow:0 4px 12px color-mix(in srgb,var(--primary) 28%,transparent);color:#fff;transform:translateY(-1px)}.app-main{max-width:1280px;margin:0 auto;padding:calc(34px * var(--space-scale)) 28px calc(72px * var(--space-scale))}.lesson-context-bar{display:grid;grid-template-columns:minmax(240px,1fr) minmax(280px,560px) minmax(160px,auto);gap:14px;align-items:center;margin:-10px 0 26px;padding:18px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--surface) 92%,transparent);box-shadow:var(--shadow-sm)}.lesson-context-copy{display:grid;gap:3px;min-width:0}.lesson-context-copy strong{color:var(--ink);font-size:14px}.lesson-context-copy span,.lesson-context-current{color:var(--muted);font-size:12px;font-weight:700}.lesson-context-field{display:grid;gap:6px}.lesson-context-field span{color:var(--ink-soft);font-size:11px;font-weight:900;letter-spacing:0.06em;text-transform:uppercase}.lesson-context-field select{min-height:50px;width:100%;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;font-weight:750;padding:0 14px}.lesson-context-meta{display:grid;gap:4px;justify-self:end;max-width:380px;min-width:0}.lesson-context-current{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lesson-context-status{margin:0;text-align:right}.tab-panel{display:none;contain:layout style paint}@supports (view-transition-name: none){::view-transition-old(root),::view-transition-new(root){animation-duration:280ms;animation-timing-function:cubic-bezier(0.32,0.72,0,1)}::view-transition-old(root){animation-name:vt-fade-out}::view-transition-new(root){animation-name:vt-fade-in}}@keyframes vt-fade-out{from{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(0.992)}}@keyframes vt-fade-in{from{opacity:0;transform:scale(1.008)}to{opacity:1;transform:scale(1)}}.quiz-question.is-evaluating{position:relative;overflow:hidden;border-color:color-mix(in srgb,var(--primary, #3d6b56) 30%,var(--border, #d4cdb7));animation:quiz-eval-border 1.4s cubic-bezier(0.4,0,0.6,1) infinite}.quiz-question.is-evaluating::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,transparent 0%,color-mix(in srgb,var(--primary, #3d6b56) 14%,transparent) 50%,transparent 100%);background-size:200% 100%;animation:quiz-eval-sweep 1.8s linear infinite}@keyframes quiz-eval-border{0%,100%{border-color:color-mix(in srgb,var(--primary, #3d6b56) 30%,var(--border, #d4cdb7))}50%{border-color:color-mix(in srgb,var(--primary, #3d6b56) 55%,var(--border, #d4cdb7))}}@keyframes quiz-eval-sweep{from{background-position:200% 0}to{background-position:-200% 0}}html.cosy-low-fx .quiz-question.is-evaluating::after{animation:none;opacity:0}html.cosy-low-fx .quiz-question.is-evaluating{animation:none}@media (prefers-reduced-motion: reduce){.quiz-question.is-evaluating::after{animation:none;opacity:0}.quiz-question.is-evaluating{animation:none}}.tab-panel.active{display:grid;gap:22px}.study-home-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,0.55fr);gap:18px;align-items:stretch}.study-home-grid:has(.home-empty-hero){grid-template-columns:minmax(0,1fr) 340px;align-items:stretch}.study-home-grid>.home-mission-card,.study-home-grid>.home-next-action,.study-home-grid>.home-pwned-banner,.study-home-grid>.home-empty-hero,.study-home-grid>.home-welcome-hero,.study-home-grid>.home-empty-what-you-get,.study-home-grid>.home-quests-card,.study-home-grid>.home-onboarding-card,.study-home-grid>.home-spaced-card,.study-home-grid>.home-coach-card,.study-home-grid>.home-coach-report,.study-home-grid>.home-catchup-card,.study-home-grid>.home-contract-card,.study-home-grid>#home-daily-quests,.study-home-grid>#home-coach-report{grid-column:1 / -1}.study-home-grid>.home-analytics-card{grid-column:1}.study-home-grid>.home-goals-card{grid-column:2}.study-home-grid>.home-timeline-card{grid-column:1}.study-home-grid>.home-achievements-card{grid-column:2}.study-home-grid>.home-side-card{grid-column:2}.study-home-grid>.home-recent-card,.study-home-grid>.home-folders-card,.study-home-grid>.home-more{grid-column:1 / -1}.home-more{border:1px dashed color-mix(in srgb,var(--border) 80%,transparent);border-radius:16px;background:color-mix(in srgb,var(--surface-subtle) 60%,transparent);padding:0;overflow:hidden}.home-more>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:14px 18px;user-select:none;transition:background 160ms ease}.home-more>summary::-webkit-details-marker{display:none}.home-more>summary:hover{background:color-mix(in srgb,var(--primary) 6%,var(--surface-subtle))}.home-more-label{font-size:13px;font-weight:800;color:var(--ink);letter-spacing:-0.005em}.home-more-hint{font-size:11px;font-weight:600;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-more-chev{width:16px;height:16px;color:var(--muted);transition:transform 200ms ease}.home-more[open]>summary .home-more-chev{transform:rotate(180deg)}.home-more-body{display:grid;gap:18px;padding:6px 18px 18px}.home-more-body>*{grid-column:auto!important}@media (max-width: 640px){.home-more-hint{display:none}.home-more>summary{grid-template-columns:1fr auto}}.upload-advanced{margin:16px 0 4px;border:1px dashed color-mix(in srgb,var(--border) 80%,transparent);border-radius:16px;background:color-mix(in srgb,var(--surface-subtle) 60%,transparent);overflow:hidden}.upload-advanced-summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 18px;user-select:none}.upload-advanced-summary::-webkit-details-marker{display:none}.upload-advanced-summary:hover{background:color-mix(in srgb,var(--primary) 6%,var(--surface-subtle))}.upload-advanced-label{font-size:13px;font-weight:800;color:var(--ink);letter-spacing:-0.005em}.upload-advanced-hint{font-size:11px;font-weight:600;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-advanced-chev{width:16px;height:16px;color:var(--muted);transition:transform 200ms ease}.upload-advanced[open] .upload-advanced-chev{transform:rotate(180deg)}.upload-advanced-body{display:grid;gap:18px;padding:6px 18px 18px}@media (max-width: 640px){.upload-advanced-hint{display:none}.upload-advanced-summary{grid-template-columns:1fr auto}}.mission-secondary-collapse{margin-top:6px}.mission-secondary-collapse>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:transparent;color:var(--muted);font-size:13px;font-weight:700;user-select:none}.mission-secondary-collapse>summary::-webkit-details-marker{display:none}.mission-secondary-collapse>summary:hover{background:color-mix(in srgb,var(--primary) 8%,transparent);color:var(--primary)}.mission-secondary-collapse>summary svg{width:12px;height:12px;transition:transform 200ms ease}.mission-secondary-collapse[open]>summary svg{transform:rotate(180deg)}.mission-secondary-collapse[open] .mission-secondary-actions{margin-top:8px}.home-focus-card,.home-side-card{display:grid;gap:18px;align-content:start;padding:28px;overflow:hidden}.home-focus-card{min-height:260px;background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 86%,var(--primary-soft)))}.home-empty-hero{grid-row:span 2;display:grid;grid-template-columns:minmax(0,0.9fr) minmax(320px,0.7fr);gap:28px;min-height:520px;padding:clamp(26px,4vw,48px);overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 12%,var(--surface)) 0%,var(--surface) 48%,color-mix(in srgb,var(--accent) 12%,var(--surface)) 100%)}.home-empty-hero::before{content:"";position:absolute;inset:18px;border:1px solid color-mix(in srgb,var(--primary) 16%,transparent);border-radius:calc(var(--radius-lg) - 6px);pointer-events:none}.home-empty-copy{position:relative;z-index:1;display:grid;align-content:center;gap:18px}.home-empty-copy h2{max-width:12ch;margin:0;color:var(--ink);font-size:clamp(48px,6.6vw,86px);line-height:0.96}.home-empty-copy p:not(.eyebrow){max-width:58ch;color:var(--ink-soft);font-size:clamp(16px,1.4vw,20px);font-weight:760;line-height:1.45}.home-empty-actions{display:flex;flex-wrap:wrap;gap:12px}.home-empty-actions button{width:auto;min-height:52px}.home-empty-visual{position:relative;z-index:1;min-height:420px}.study-orbit-core{position:absolute;inset:50% auto auto 50%;display:grid;place-items:center;gap:10px;width:180px;height:180px;transform:translate(-50%,-50%);border:1px solid color-mix(in srgb,var(--primary) 28%,var(--border));border-radius:36px;background:rgba(255,255,255,0.72);box-shadow:0 26px 70px color-mix(in srgb,var(--primary) 22%,transparent)}.study-orbit-core img{width:84px;height:84px;object-fit:contain}.study-orbit-core strong{color:var(--ink);font-size:15px;font-weight:1000}.study-orbit-card{position:absolute;display:grid;gap:5px;min-width:168px;padding:16px;border:1px solid var(--border);border-radius:20px;background:color-mix(in srgb,var(--surface) 88%,white);box-shadow:var(--shadow-md)}.study-orbit-card span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--primary-soft);color:var(--primary)}.study-orbit-card strong{color:var(--ink);font-size:18px}.study-orbit-card small{color:var(--muted);font-size:12px;font-weight:850}.card-upload{top:12px;left:8px;transform:rotate(-3deg)}.card-summary{right:0;top:145px;transform:rotate(3deg)}.card-quiz{left:28px;bottom:16px;transform:rotate(2deg)}.home-empty-proof{display:grid;gap:16px;padding:22px}.home-proof-grid{display:grid;gap:10px}.home-proof-grid div{display:grid;gap:4px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle)}.home-proof-grid strong{color:var(--ink)}.home-proof-grid span{color:var(--ink-soft);font-size:13px;font-weight:780;line-height:1.4}.home-welcome-hero{display:grid;gap:28px;padding:clamp(28px,4vw,48px);background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 8%,var(--surface)) 0%,var(--surface) 50%,color-mix(in srgb,var(--primary-soft) 40%,var(--surface)) 100%);border:1.5px solid color-mix(in srgb,var(--primary) 16%,var(--border));text-align:center}.welcome-hero-badge{display:inline-block;margin:0 auto;padding:4px 14px;border-radius:100px;background:var(--primary-soft);color:var(--primary);font-size:13px;font-weight:900;letter-spacing:0.04em}.home-welcome-hero h2{max-width:28ch;margin:0 auto;font-size:clamp(26px,3.6vw,42px);line-height:1.15;color:var(--ink)}.welcome-hero-sub{max-width:50ch;margin:0 auto;color:var(--ink-soft);font-size:clamp(15px,1.2vw,18px);font-weight:700;line-height:1.5}.welcome-steps{display:flex;align-items:stretch;justify-content:center;gap:12px;margin:8px auto;max-width:820px}.welcome-step{flex:1;display:grid;gap:10px;padding:20px 18px;border:1px solid var(--border);border-radius:16px;background:var(--surface);text-align:left}.welcome-step-num{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--primary);color:#fff;font-size:16px;font-weight:900}.welcome-step-body{display:grid;gap:4px}.welcome-step-body strong{color:var(--ink);font-size:15px}.welcome-step-body span{color:var(--muted);font-size:13px;font-weight:700;line-height:1.4}.welcome-step-arrow{display:grid;place-items:center;color:var(--muted);flex-shrink:0}.welcome-step-arrow .icon{width:20px;height:20px}.welcome-cta-row{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.welcome-cta-row button{min-height:52px;font-size:16px}.welcome-cta-note{margin:12px auto 0;max-width:520px;text-align:center;font-size:13px;line-height:1.5;color:var(--muted)}.welcome-cta-note strong{color:var(--ink-soft);font-weight:700}@keyframes welcomePulse{0%,100%{box-shadow:0 0 0 0 color-mix(in srgb,var(--primary) 40%,transparent)}50%{box-shadow:0 0 0 10px color-mix(in srgb,var(--primary) 0%,transparent)}}.welcome-cta-pulse{animation:welcomePulse 2.4s ease-in-out infinite}.welcome-cta-pulse:hover{animation:none}.home-empty-what-you-get{display:grid;gap:18px;padding:clamp(22px,3vw,36px)}.welcome-features-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.welcome-feature{display:grid;gap:6px;padding:20px 16px;border:1px solid var(--border);border-radius:16px;background:var(--surface-subtle);transition:border-color 150ms ease,box-shadow 150ms ease}.welcome-feature:hover{border-color:var(--primary);box-shadow:var(--shadow-sm)}.welcome-feature-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--primary-soft);color:var(--primary)}.welcome-feature-icon .icon{width:20px;height:20px}.welcome-feature strong{color:var(--ink);font-size:15px}.welcome-feature span{color:var(--muted);font-size:13px;font-weight:700;line-height:1.4}@media (max-width: 768px){.welcome-steps{flex-direction:column}.welcome-step-arrow{transform:rotate(90deg)}.welcome-features-grid{grid-template-columns:1fr}}@media (min-width: 769px) and (max-width: 1024px){.welcome-features-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.home-side-card{min-height:220px}.home-side-card .step-list{display:grid;gap:18px;padding-left:24px}.home-side-card .step-list li{line-height:1.45}.home-focus-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center}.home-focus-card h2{margin:0 0 8px;color:var(--ink);font-size:clamp(30px,3.2vw,42px);line-height:1.08;max-width:18ch;overflow-wrap:anywhere}.home-focus-card p{max-width:62ch;color:var(--ink-soft);font-size:15px;line-height:1.55}.home-focus-card>.btn-primary{justify-self:start;width:auto;min-width:190px}.home-progress-ring,.lesson-card-meter{--progress: 0%;position:relative;display:grid;place-items:center;width:104px;height:104px;border-radius:999px;background:radial-gradient(circle at center,var(--surface) 58%,transparent 60%),conic-gradient(var(--primary) var(--progress),var(--surface-muted) 0);box-shadow:var(--shadow-md)}.home-progress-ring strong,.lesson-card-meter strong{color:var(--ink);font-size:22px;line-height:1}.home-progress-ring span,.lesson-card-meter span{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.home-progress-ring strong{position:absolute;left:50%;top:50%;transform:translate(-50%,-56%)}.home-progress-ring span{position:absolute;left:50%;top:calc(50% + 22px);transform:translateX(-50%)}.home-focus-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.home-focus-metrics div{display:grid;gap:4px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-subtle)}.home-focus-metrics .icon{color:var(--primary)}.home-focus-metrics strong,.home-focus-metrics span{display:block}.home-focus-metrics strong{color:var(--ink);font-size:18px}.home-focus-metrics span{margin-top:2px;color:var(--muted);font-size:12px;font-weight:850;text-transform:uppercase}.home-actions,.empty-action-row,.quiz-complete-actions{display:flex;flex-wrap:wrap;gap:10px}.home-actions button,.empty-action-row button,.quiz-complete-actions button{width:auto}.home-mini-list{display:grid;gap:10px}.home-onboarding-card,.home-coach-card,.home-goals-card,.home-analytics-card,.home-contract-card,.home-spaced-card,.home-timeline-card,.home-achievements-card{display:grid;gap:14px;padding:22px}.home-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.home-card-head h2{margin:0;color:var(--ink);font-size:26px;line-height:1.1}.home-goals-card{overflow:hidden;background:radial-gradient(circle at 86% 14%,color-mix(in srgb,var(--primary) 18%,transparent),transparent 34%),linear-gradient(145deg,color-mix(in srgb,var(--surface) 94%,var(--primary-soft)),var(--surface))}.home-analytics-card{gap:18px;background:radial-gradient(circle at 88% 11%,color-mix(in srgb,var(--primary) 16%,transparent),transparent 32%),linear-gradient(152deg,color-mix(in srgb,var(--surface) 93%,var(--primary-soft)),var(--surface))}.analytics-weekly-wrap{display:grid;grid-template-columns:190px minmax(0,1fr);gap:20px;align-items:center}.analytics-week-ring{--progress: 0%;position:relative;width:170px;height:170px;border-radius:999px;background:radial-gradient(circle at center,var(--surface) 62%,transparent 63%),conic-gradient(var(--primary) var(--progress),color-mix(in srgb,var(--primary) 16%,var(--surface-muted)) 0)}.analytics-week-ring strong,.analytics-week-ring span{position:absolute;left:50%;transform:translateX(-50%)}.analytics-week-ring strong{top:calc(50% - 22px);color:var(--ink);font-size:52px;line-height:1}.analytics-week-ring span{top:calc(50% + 32px);color:var(--muted);font-size:13px;font-weight:900;text-transform:uppercase}.analytics-comparison{display:grid;gap:11px}.analytics-row{display:grid;gap:8px}.analytics-row>div:first-child{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.analytics-row strong{color:var(--ink);font-size:20px}.analytics-row small{color:var(--ink-soft);font-size:17px;font-weight:820}.analytics-bar{height:12px;border-radius:999px;background:color-mix(in srgb,var(--primary) 18%,var(--surface-muted));overflow:hidden}.analytics-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--primary),color-mix(in srgb,var(--primary) 70%,#66a5ff))}.analytics-bar i.is-last-week{background:linear-gradient(90deg,color-mix(in srgb,var(--primary) 55%,#b8c8ff),#9eb7ff)}.analytics-bar i.is-month{background:linear-gradient(90deg,color-mix(in srgb,var(--success) 80%,#38bfa2),#7de3cf)}.analytics-trend{margin:6px 0 0;font-size:15px;font-weight:900}.analytics-trend.is-up{color:color-mix(in srgb,var(--success) 85%,#0d7f67)}.analytics-trend.is-down{color:color-mix(in srgb,var(--danger) 88%,#d84f45)}.analytics-quick-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.analytics-quick-cards article{display:grid;gap:8px;padding:14px;border:1px solid color-mix(in srgb,var(--primary) 32%,var(--border));border-radius:16px;background:linear-gradient(152deg,color-mix(in srgb,var(--primary) 28%,#172d8e),color-mix(in srgb,var(--primary) 46%,#1e338f))}.analytics-quick-cards small{color:color-mix(in srgb,#f2f5ff 82%,#cad5ff);font-size:11px;font-weight:900;text-transform:uppercase}.analytics-quick-cards strong{color:#eef3ff;font-size:38px;line-height:1}.analytics-activity-card{display:grid;gap:14px;padding:14px;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--surface) 83%,var(--surface-subtle))}.analytics-activity-head{display:grid;gap:2px}.analytics-activity-head strong{color:var(--ink);font-size:29px}.analytics-activity-head small{color:var(--muted);font-size:15px;font-weight:840}.analytics-day-bars{display:grid;grid-template-columns:repeat(14,minmax(0,1fr));gap:7px;align-items:end;min-height:170px}.analytics-day{display:grid;grid-template-rows:1fr auto;gap:7px;align-items:end}.analytics-day i{display:block;width:100%;min-height:4px;border-radius:8px 8px 6px 6px;background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 35%,#aebdff),color-mix(in srgb,var(--primary) 82%,#3f57c9));transition:height 0.4s ease}.analytics-day.is-empty i{background:var(--surface-muted);opacity:0.5}.analytics-day span{color:var(--muted);font-size:11px;font-weight:900;text-align:center}.home-spaced-card{background:radial-gradient(circle at 92% 10%,color-mix(in srgb,var(--warning) 18%,transparent),transparent 34%),linear-gradient(145deg,color-mix(in srgb,var(--primary) 7%,var(--surface)),var(--surface));display:grid;gap:6px;align-content:start}.home-spaced-card.is-due{border-color:color-mix(in srgb,var(--warning) 42%,var(--border))}.home-spaced-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.home-spaced-head h2{margin:0;font-size:22px;letter-spacing:-0.01em}.home-spaced-sub{margin:6px 0 8px!important;font-size:13px;font-weight:600!important;color:var(--muted)!important}.spaced-review-start-quiz{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:12px;border:0;background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 75%,var(--accent)));color:#fffdf7;font-weight:800;letter-spacing:0.01em;box-shadow:inset 0 1px 0 rgba(255,255,255,0.28),0 8px 22px -10px color-mix(in srgb,var(--primary) 55%,transparent);cursor:pointer;transition:transform 160ms ease,filter 180ms ease,box-shadow 200ms ease}.spaced-review-start-quiz:hover{transform:translateY(-1px);filter:brightness(1.06)}.spaced-review-start-quiz .icon{width:16px;height:16px;margin:0;display:block}.home-spaced-preview{list-style:none;padding:0;margin:4px 0 0;display:grid;gap:6px}.home-spaced-preview li{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:var(--ink-soft);font-weight:600;line-height:1.4}.home-spaced-preview li.home-spaced-more{color:var(--muted);font-style:italic;padding-left:18px}.home-spaced-bullet{flex-shrink:0;color:color-mix(in srgb,var(--warning) 65%,var(--ink));font-size:11px;line-height:1.6;font-weight:800}.home-spaced-card h2,.home-spaced-card p{margin:0}.home-spaced-card p{color:var(--ink-soft);font-weight:800;line-height:1.45}.home-spaced-card .eyebrow+h2{margin-top:0}.spaced-review-list{display:grid;gap:10px}.spaced-review-item{display:grid;gap:9px;padding:14px;border:1px solid var(--border);border-radius:16px;background:var(--surface-subtle)}.spaced-review-item strong{color:var(--ink);font-size:17px;line-height:1.2}.spaced-review-item small{color:var(--muted);font-weight:800;line-height:1.35}.sr-quiz-overlay{position:fixed;inset:0;z-index:900;display:grid;place-items:center;padding:20px;background:rgba(16,24,40,0)}.sr-quiz-overlay.is-visible{background:rgba(16,24,40,0.45)}.sr-quiz-card{width:100%;max-width:560px;border-radius:22px;background:var(--surface);border:1px solid var(--border);box-shadow:0 24px 60px rgba(16,24,40,0.18),0 4px 14px rgba(16,24,40,0.06);overflow:hidden;transform:translateY(20px) scale(0.97);opacity:0;transition:transform 220ms ease,opacity 220ms ease}.sr-quiz-overlay.is-visible .sr-quiz-card{transform:translateY(0) scale(1);opacity:1}.sr-quiz-header{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--border)}.sr-quiz-header .sr-quiz-progress{margin-left:auto}.sr-quiz-progress{font-size:13px;font-weight:800;letter-spacing:0.04em;color:var(--muted);text-transform:uppercase}.sr-quiz-close{display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:10px;background:var(--surface-muted);color:var(--ink-soft);cursor:pointer;transition:background 120ms ease}.sr-quiz-close:hover{background:var(--border)}.sr-quiz-close .icon{width:16px;height:16px}.sr-quiz-body{padding:28px 24px 32px;display:grid;gap:20px}.sr-quiz-label{margin:0;font-size:13px;font-weight:800;letter-spacing:0.04em;text-transform:uppercase;color:var(--primary)}.sr-quiz-prompt{margin:0;font-size:clamp(20px,3vw,26px);line-height:1.2;font-weight:850;color:var(--ink)}.sr-quiz-reveal{justify-self:start}.sr-quiz-reveal .icon{width:16px;height:16px;vertical-align:-2px;margin-right:4px}.sr-quiz-answer-zone{display:grid;gap:18px;animation:panel-in 200ms ease both}.sr-quiz-answer{display:grid;gap:8px;padding:18px;border-radius:16px;border:1px solid color-mix(in srgb,var(--success) 30%,var(--border));background:color-mix(in srgb,var(--success) 6%,var(--surface))}.sr-quiz-answer-label{margin:0;font-size:11px;font-weight:900;letter-spacing:0.06em;text-transform:uppercase;color:var(--success)}.sr-quiz-answer-text{margin:0;color:var(--ink);font-weight:700;line-height:1.45}.sr-quiz-advice{margin:0;font-size:13px;font-weight:600;color:var(--muted);line-height:1.4;font-style:italic}.sr-quiz-grade-row{display:flex;gap:10px}.sr-quiz-grade-row .icon{width:15px;height:15px;vertical-align:-2px;margin-right:3px}.sr-quiz-summary{display:grid;gap:16px;justify-items:center;text-align:center;padding-top:12px}.sr-quiz-summary h2{margin:0;color:var(--ink);font-size:26px}.sr-quiz-summary-ring{--pct: 0%;width:110px;height:110px;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--success) var(--pct),var(--surface-muted) 0);position:relative}.sr-quiz-summary-ring::before{position:absolute;inset:10px;border-radius:inherit;background:var(--surface);content:""}.sr-quiz-summary-ring strong,.sr-quiz-summary-ring span{position:relative;z-index:1}.sr-quiz-summary-ring strong{align-self:end;font-size:28px;color:var(--ink)}.sr-quiz-summary-ring span{align-self:start;font-size:12px;font-weight:800;color:var(--muted)}.sr-quiz-summary-stats{display:flex;gap:14px;justify-content:center;margin:0}.sr-quiz-stat-good{font-weight:800;color:var(--success)}.sr-quiz-stat-retry{font-weight:800;color:#f97316}.sr-quiz-summary-hint{margin:0;font-size:13px;color:var(--muted);font-weight:600}.sr-quiz-title{font-weight:800;font-size:14px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.sr-quiz-input-form{display:grid;gap:12px}.sr-quiz-textarea{width:100%;padding:14px 16px;border-radius:var(--radius);border:1.5px solid var(--border);background:var(--surface);color:var(--ink);font-size:15px;font-weight:600;line-height:1.5;resize:vertical;font-family:inherit;transition:border-color 0.15s ease}.sr-quiz-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 15%,transparent)}.sr-quiz-submit{justify-self:start}.sr-quiz-feedback{animation:panel-in 200ms ease both}.sr-quiz-result{display:grid;gap:12px;padding:18px;border-radius:16px}.sr-quiz-result.is-correct{border:1px solid color-mix(in srgb,var(--success) 30%,var(--border));background:color-mix(in srgb,var(--success) 6%,var(--surface))}.sr-quiz-result.is-wrong{border:1px solid color-mix(in srgb,#f97316 30%,var(--border));background:color-mix(in srgb,#f97316 6%,var(--surface))}.sr-quiz-result-label{margin:0;font-size:15px;font-weight:900;display:flex;align-items:center;gap:6px}.sr-quiz-result-label .icon{width:18px;height:18px}.sr-quiz-result.is-correct .sr-quiz-result-label{color:var(--success)}.sr-quiz-result.is-wrong .sr-quiz-result-label{color:#f97316}.sr-quiz-result-detail{margin:0;font-size:14px;font-weight:600;color:var(--muted)}.sr-quiz-correction{display:grid;gap:6px}.sr-quiz-correction-label{margin:0;font-size:11px;font-weight:900;letter-spacing:0.06em;text-transform:uppercase;color:var(--success)}.sr-quiz-correction-text{margin:0;color:var(--ink);font-weight:700;line-height:1.45}.sr-quiz-correction-advice{margin:0;font-size:13px;font-weight:600;color:var(--muted);line-height:1.4;font-style:italic}.sr-quiz-your-answer{margin:0;font-size:13px;color:var(--muted);line-height:1.4}.sr-quiz-your-answer strong{font-weight:800}.sr-quiz-next{justify-self:start}.sr-quiz-next .icon{width:14px;height:14px;vertical-align:-2px;margin-right:3px}.quiz-post-submit-actions{display:flex;gap:10px;flex-wrap:wrap;padding:4px 0}@media (max-width: 480px){.sr-quiz-overlay{padding:10px}.sr-quiz-body{padding:20px 18px 24px}.sr-quiz-grade-row{flex-direction:column}.quiz-post-submit-actions{flex-direction:column}}.home-goals-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.home-goals-head h2{margin:0;color:var(--ink);font-size:26px;line-height:1.1}.home-streak-pill{display:grid;place-items:center;flex:0 0 auto;min-width:92px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--warning) 38%,var(--border));border-radius:20px;background:color-mix(in srgb,var(--warning) 14%,var(--surface));box-shadow:var(--shadow-sm)}.home-streak-pill strong{color:var(--ink);font-size:30px;line-height:1}.home-streak-pill span{color:var(--muted);font-size:10px;font-weight:950;text-transform:uppercase}.home-contract-card{grid-column:1 / -1;align-content:start;gap:18px;min-height:420px;padding:34px 34px 44px;overflow:hidden}.home-contract-card .home-card-head{gap:28px}.home-contract-card .home-card-head h2{max-width:min(31ch,100%);font-size:clamp(30px,2.2vw,38px);line-height:1.08;overflow-wrap:anywhere}.home-contract-card .home-streak-pill{min-width:118px;padding:16px 18px;margin-top:10px}.goal-progress-list{display:grid;gap:10px}.goal-progress-item{display:grid;gap:9px;padding:14px;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--surface) 86%,var(--surface-subtle))}.goal-progress-item.is-exceeded{border-color:color-mix(in srgb,#16a34a 40%,var(--border));background:color-mix(in srgb,#16a34a 10%,var(--surface))}.goal-progress-item.is-exceeded strong{color:#15803d}.goal-progress-item.is-exceeded span{color:#15803d;font-weight:800}.goal-progress-item.is-exceeded progress::-webkit-progress-value{background:#16a34a!important}.goal-progress-item.is-exceeded progress::-moz-progress-bar{background:#16a34a!important}.goal-progress-item>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.goal-progress-item strong{color:var(--ink);font-size:18px}.goal-progress-item span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.goal-progress-item progress{width:100%;height:8px;overflow:hidden;border:0;border-radius:999px;background:var(--surface-muted)}.goal-progress-item progress::-webkit-progress-bar{border-radius:999px;background:var(--surface-muted)}.goal-progress-item progress::-webkit-progress-value{border-radius:999px;background:linear-gradient(90deg,var(--primary),color-mix(in srgb,var(--success) 70%,var(--primary)))}.goal-progress-item progress::-moz-progress-bar{border-radius:999px;background:linear-gradient(90deg,var(--primary),color-mix(in srgb,var(--success) 70%,var(--primary)))}.goal-nudge{display:grid;gap:4px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--warning) 48%,var(--border));border-radius:14px;background:var(--warning-soft)}.goal-nudge strong{color:var(--ink)}.goal-nudge span{color:var(--ink-soft);font-size:13px;font-weight:800}.daily-goals-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:end}.daily-goals-form button{grid-column:1 / -1}.home-goals-card small{color:var(--ink-soft);font-size:12px;font-weight:760;line-height:1.4}.timeline-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.timeline-item{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:16px;background:var(--surface-subtle)}.timeline-item>span{display:grid;place-items:center;width:38px;height:38px;border-radius:14px;background:var(--primary-soft);color:var(--primary)}.timeline-item strong{display:block;color:var(--ink)}.timeline-count{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:999px;background:color-mix(in srgb,var(--primary) 14%,var(--surface));color:var(--primary);font-size:10px;font-weight:800;font-style:normal;letter-spacing:0.02em}.timeline-item small,.timeline-empty{color:var(--muted);font-weight:800;line-height:1.45}.timeline-item.is-focus>span{background:var(--success-soft);color:var(--success)}.achievement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.achievement-badge{display:grid;gap:5px;min-height:112px;padding:13px;border:1px solid var(--border);border-radius:16px;background:var(--surface-subtle)}.achievement-badge>span{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:var(--surface-muted);color:var(--muted);font-weight:1000}.achievement-badge strong{color:var(--ink);font-size:15px}.achievement-badge small{color:var(--muted);font-size:12px;font-weight:800;line-height:1.35}.achievement-badge.is-earned{border-color:color-mix(in srgb,var(--success) 42%,var(--border));background:radial-gradient(circle at 88% 12%,color-mix(in srgb,var(--success) 18%,transparent),transparent 35%),var(--success-soft);animation:badge-pop 420ms ease both}.achievement-badge.is-earned>span{background:var(--success);color:#fff}.achievement-badge.is-locked{opacity:0.72}.achievement-progress{display:flex;align-items:center;gap:6px;margin-top:6px;width:100%}.achievement-progress-bar{flex:1;height:4px;background:var(--surface-muted);border-radius:999px;overflow:hidden}.achievement-progress-bar>div{height:100%;background:var(--primary);transition:width 0.4s ease}.achievement-progress-label{font-size:10px;font-weight:800;color:var(--ink-soft);letter-spacing:0.02em;white-space:nowrap}@keyframes badge-pop{0%{transform:scale(0.96)}70%{transform:scale(1.02)}100%{transform:scale(1)}}.onboarding-steps{display:grid;gap:10px}.onboarding-steps button{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;min-height:56px;padding:10px 12px;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle);color:var(--ink);text-align:left;box-shadow:none}.onboarding-steps button span{display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-weight:1000}.onboarding-steps button.is-done{border-color:color-mix(in srgb,var(--success) 34%,var(--border));background:var(--success-soft)}.onboarding-steps button.is-done span{background:var(--success);color:white}.coach-next-action,.progress-snapshot{display:grid;gap:6px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle)}.coach-next-action strong,.progress-snapshot strong{color:var(--ink);font-size:18px}.coach-next-action span,.progress-snapshot span,.home-coach-card small{color:var(--ink-soft);font-size:13px;font-weight:780;line-height:1.4}.badge-row,.home-folder-list{display:flex;flex-wrap:wrap;gap:8px}.badge-row span{padding:8px 10px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--accent) 13%,var(--surface));color:var(--ink);font-size:12px;font-weight:950}.home-folder{display:inline-grid;grid-template-columns:22px minmax(0,1fr);gap:8px;align-items:center;width:100%;min-height:58px;padding:11px;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle);color:var(--ink);text-align:left;box-shadow:none}.home-folder span{display:grid;gap:2px}.home-folder small{color:var(--muted);font-size:11px;font-weight:850}.home-recent-card,.home-folders-card{display:grid;gap:18px;padding:28px}.home-recent-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.home-recent-head .eyebrow{margin:0}.home-recent-count{font-size:12px;font-weight:700;color:var(--muted);letter-spacing:0.02em}.home-recent-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.home-mini-list.home-recent-grid{display:grid}.home-recent-tile{display:grid!important;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:center;width:100%;min-height:88px;padding:18px 18px;border:1px solid var(--border);border-radius:16px;background:var(--surface-subtle);color:var(--ink);text-align:left;cursor:pointer;border-left-width:1px!important;transition:transform 160ms cubic-bezier(0.2,0.9,0.3,1),border-color 160ms ease,box-shadow 160ms ease,background 160ms ease}.home-recent-tile:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--primary) 40%,var(--border));background:var(--primary-soft);box-shadow:0 10px 22px -16px rgba(76,50,18,0.25)}.home-recent-tile-icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent, #d76148) 14%,var(--surface));color:var(--accent, #d76148);border:1px solid color-mix(in srgb,var(--accent, #d76148) 20%,var(--border))}.home-recent-tile-icon svg{width:22px;height:22px;stroke-width:1.8}.home-recent-tile.lesson-kind-slides .home-recent-tile-icon{background:color-mix(in srgb,var(--primary, #3d6b56) 14%,var(--surface));color:var(--primary, #3d6b56);border-color:color-mix(in srgb,var(--primary, #3d6b56) 22%,var(--border))}.home-recent-tile.lesson-kind-lecture .home-recent-tile-icon{background:color-mix(in srgb,var(--success, #16a34a) 14%,var(--surface));color:var(--success, #16a34a);border-color:color-mix(in srgb,var(--success, #16a34a) 22%,var(--border))}.home-recent-tile-body{display:grid;gap:4px;min-width:0}.home-recent-tile-body strong{font-size:15px;font-weight:800;color:var(--ink);letter-spacing:-0.005em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.2}.home-recent-tile-body small{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:0.08em;display:block!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-recent-tile-status{display:inline-block!important;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--ink) 6%,var(--surface));color:var(--muted);letter-spacing:0.06em;max-width:100%}.home-recent-tile-status.is-ready{background:color-mix(in srgb,var(--primary, #3d6b56) 12%,var(--surface));color:color-mix(in srgb,var(--primary, #3d6b56) 80%,var(--ink))}.home-recent-tile-status.is-scored{background:color-mix(in srgb,var(--accent, #d76148) 14%,var(--surface));color:color-mix(in srgb,var(--accent, #d76148) 70%,var(--ink))}.home-folders-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.home-folders-head .eyebrow{margin:0}.home-folders-count{font-size:12px;font-weight:700;color:var(--muted);letter-spacing:0.02em}.home-folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;flex-wrap:initial}.home-folder-tile{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:center;width:100%;min-height:88px;padding:18px 18px;border:1px solid var(--border);border-radius:16px;background:var(--surface-subtle);color:var(--ink);text-align:left;cursor:pointer;transition:transform 160ms cubic-bezier(0.2,0.9,0.3,1),border-color 160ms ease,box-shadow 160ms ease,background 160ms ease}.home-folder-tile:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--primary) 40%,var(--border));background:var(--primary-soft);box-shadow:0 10px 22px -16px rgba(76,50,18,0.25)}.home-folder-tile-icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary, #3d6b56) 12%,var(--surface));color:var(--primary, #3d6b56);border:1px solid color-mix(in srgb,var(--primary, #3d6b56) 18%,var(--border))}.home-folder-tile-icon svg{width:22px;height:22px;stroke-width:1.8}.home-folder-tile-body{display:grid;gap:4px;min-width:0}.home-folder-tile-body strong{font-size:15px;font-weight:800;color:var(--ink);letter-spacing:-0.005em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-folder-tile-body small{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:0.08em}.home-folder-grid.home-folder-list{display:grid}.folder-filter-bar{display:flex;flex-wrap:wrap;gap:8px;padding:12px 0 16px;border-bottom:1px solid var(--border);margin-bottom:16px}.folder-pill{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:13px;font-weight:700;cursor:pointer;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow ;white-space:nowrap}.folder-pill:hover{border-color:color-mix(in srgb,var(--primary) 40%,var(--border));color:var(--ink);background:var(--primary-soft)}.folder-pill.is-active{background:var(--primary);color:#fff;border-color:var(--primary)}.folder-filter-bar+.section{animation:folder-fade 200ms ease}@keyframes folder-fade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.home-mini-lesson{display:grid;gap:4px;min-height:auto;padding:13px;border:1px solid var(--border);border-radius:12px;background:var(--surface-subtle);text-align:left;box-shadow:none}.home-mini-lesson:hover{border-color:color-mix(in srgb,var(--primary) 36%,var(--border));background:var(--primary-soft);transform:translateY(-1px)}.home-mini-lesson.lesson-kind-slides,.lesson-list-item.lesson-kind-slides{border-left:4px solid var(--primary)}.home-mini-lesson.lesson-kind-lecture,.lesson-list-item.lesson-kind-lecture{border-left:4px solid var(--success)}.home-mini-lesson span,.home-mini-lesson small{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:11px;font-weight:850;text-transform:uppercase}.home-mini-lesson strong{color:var(--ink);font-size:14px}.lesson-folder-heading{margin:18px 0 10px;color:var(--primary);font-size:14px;letter-spacing:0.08em;text-transform:uppercase}.hero-strip{position:relative;display:flex;justify-content:space-between;align-items:flex-end;gap:32px;padding:24px 28px 18px;margin-bottom:6px;border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(135deg,color-mix(in srgb,var(--primary-soft) 38%,var(--surface)) 0%,var(--surface) 55%);box-shadow:0 1px 4px rgba(16,24,40,0.05);overflow:hidden}.hero-strip::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 50% 100% at 100% 50%,color-mix(in srgb,var(--primary-soft) 42%,transparent),transparent 70%);pointer-events:none}.hero-strip::after{content:"";position:absolute;inset:0;background-image:radial-gradient(color-mix(in srgb,var(--primary) 18%,transparent) 1px,transparent 1px);background-size:22px 22px;background-position:0 0;opacity:0.35;mask-image:linear-gradient(120deg,transparent 30%,#000 75%,transparent 100%);-webkit-mask-image:linear-gradient(120deg,transparent 30%,#000 75%,transparent 100%);pointer-events:none}.hero-strip>*{position:relative;z-index:1}.eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:8px;color:var(--primary);font-size:11px;font-weight:900;letter-spacing:0.1em;text-transform:uppercase}.eyebrow::before{content:"";display:inline-block;width:14px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--primary),color-mix(in srgb,var(--primary) 30%,transparent))}.hero-stats{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.settings-jump-pills{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.settings-jump-pill{display:inline-flex;align-items:center;padding:7px 14px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--ink-soft);font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;transition:border-color 0.15s,color 0.15s,background 0.15s,transform 0.15s,box-shadow 0.15s}.settings-jump-pill:hover{border-color:color-mix(in srgb,var(--primary) 50%,var(--border));color:var(--primary);background:color-mix(in srgb,var(--primary) 6%,var(--surface));transform:translateY(-1px)}.settings-jump-pill.is-active{border-color:var(--primary);color:#fff;background:var(--primary);box-shadow:0 4px 10px color-mix(in srgb,var(--primary) 30%,transparent)}.settings-jump-pill:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@keyframes settings-pulse-anim{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--primary) 40%,transparent)}100%{box-shadow:0 0 0 14px transparent}}.settings-panel.settings-pulse{animation:settings-pulse-anim 1.2s ease-out;border-color:color-mix(in srgb,var(--primary) 50%,var(--border))!important}.settings-saved-toast{position:fixed;bottom:24px;right:24px;background:#16a34a;color:#ffffff;font-size:13px;font-weight:800;letter-spacing:0.02em;padding:10px 18px;border-radius:999px;box-shadow:0 12px 28px rgba(22,163,74,0.32);opacity:0;transform:translateY(8px);transition:opacity 0.2s ease,transform 0.2s ease;pointer-events:none;z-index:9999}.settings-saved-toast.is-visible{opacity:1;transform:translateY(0)}.hero-stats span{display:grid;gap:2px;min-width:98px;min-height:58px;padding:9px 14px;border:1px solid var(--border);border-radius:16px;background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--surface) 90%,var(--surface-muted)));color:var(--ink-soft);box-shadow:0 1px 2px rgba(16,24,40,0.06),inset 0 1px 0 rgba(255,255,255,0.7);font-size:12px;font-weight:750;letter-spacing:0.01em;transition:transform 180ms ease,box-shadow 180ms ease,border-color 180ms ease}.hero-stats span:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 45%,var(--border));box-shadow:0 4px 12px rgba(16,24,40,0.08),inset 0 1px 0 rgba(255,255,255,0.8)}.hero-stats span strong{color:var(--ink);font-size:24px;line-height:1}.hero-stats span span{min-width:0;min-height:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.quiz-actions{align-items:center}.quiz-actions button{min-height:38px;padding:9px 12px;border-radius:999px}.quiz-stuck-btn{width:fit-content;margin:10px 0 4px;min-height:36px;padding:8px 11px;font-size:12px;transition:background 150ms,border-color 150ms,color 150ms}.quiz-stuck-btn.is-active{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.quiz-inline-explanation{margin:4px 0 14px;border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:var(--radius);background:var(--surface-subtle);overflow:hidden;animation:quiz-explain-in 180ms ease}@keyframes quiz-explain-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.quiz-explain-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px 8px;border-bottom:1px solid var(--border)}.quiz-explain-header strong{font-size:13px;font-weight:600;color:var(--primary)}.quiz-explain-close{display:flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:none;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer;transition:background 150ms,color 150ms}.quiz-explain-close:hover{background:var(--surface-muted);color:var(--text)}.quiz-explain-close .icon{width:14px;height:14px}.quiz-explain-body{padding:12px 14px;font-size:13px;line-height:1.65;color:var(--text);white-space:pre-wrap}.quiz-explain-body p{margin:0 0 10px}.quiz-explain-body p:last-child{margin-bottom:0}.quiz-explain-footer{padding:8px 14px 12px;border-top:1px solid var(--border)}.quiz-explain-teach-link{background:none;border:none;padding:0;font-size:12px;font-weight:500;color:var(--primary);cursor:pointer;text-decoration:underline;text-underline-offset:2px;opacity:0.8;transition:opacity 150ms}.quiz-explain-teach-link:hover{opacity:1}.workspace-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:calc(20px * var(--space-scale));align-items:start}.dashboard-layout{display:grid;grid-template-columns:minmax(280px,0.8fr) minmax(0,1.2fr);gap:20px;align-items:start}.side-column{display:grid;gap:calc(20px * var(--space-scale));position:sticky;top:92px;align-self:start;max-height:calc(100vh - 110px);overflow-y:auto;scrollbar-width:thin}.panel{position:relative;min-width:0;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:0 4px 16px rgba(16,24,40,0.06)}.panel-main,.panel-small,.results-panel,.knowledge-checklist-panel,#ai-teach-panel,.dashboard-layout>.panel{padding:calc(22px * var(--space-scale))}.panel-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:12px 16px;padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid var(--border)}.panel-header>div:first-child{flex:1 1 220px;min-width:0}.panel-header>.status:not(:empty){flex:0 0 auto;align-self:flex-start}.panel-header h2{color:var(--ink);font-weight:700}.panel-header .eyebrow{margin-bottom:5px}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(16px * var(--space-scale));margin-bottom:calc(16px * var(--space-scale))}.field{display:grid;gap:8px;min-width:0;color:var(--ink-soft);font-size:13px;font-weight:800}.field[hidden]{display:none}.compact-field{margin-top:12px}input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],input[type=file],textarea,select{width:100%;border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--surface) 94%,var(--surface-subtle)));box-shadow:0 1px 2px rgba(16,24,40,0.04),inset 0 1px 3px rgba(16,24,40,0.03);color:var(--ink);padding:12px 13px;transition:border-color 150ms ease,box-shadow 150ms ease,background 150ms ease}input[type=text],input[type=email],input[type=password],input[type=number],input[type=search]{min-height:44px}select{min-height:44px;appearance:none}textarea{min-height:130px;resize:vertical;line-height:1.55}input[type=file]{min-height:44px;padding:8px;color:var(--muted);cursor:pointer}input[type=file]::file-selector-button{min-height:30px;margin-right:10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-subtle);color:var(--ink-soft);cursor:pointer;font:inherit;font-size:13px;font-weight:800}input[type=text]:hover,input[type=email]:hover,input[type=password]:hover,input[type=number]:hover,input[type=search]:hover,input[type=file]:hover,textarea:hover,select:hover{border-color:var(--border-strong)}input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,input[type=number]:focus,input[type=search]:focus,input[type=file]:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--focus);outline:0}input[type=range]{width:100%;accent-color:var(--primary)}.inline-section{margin-top:calc(18px * var(--space-scale));padding:calc(18px * var(--space-scale));border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-subtle)}.inline-section-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.inline-section-header .eyebrow{margin-bottom:5px}.source-note{align-self:stretch;display:grid;align-content:center;gap:6px;min-height:76px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--ink-soft);font-size:14px;line-height:1.4}.source-note strong{color:var(--ink);font-size:15px}.record-controls,.button-row,.lesson-actions{display:flex;flex-wrap:wrap;gap:8px}#record-preview{width:100%;min-height:38px;margin-top:12px}#record-preview:not([src]){display:none}.action-bar{display:grid;gap:12px;margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}.action-bar .btn-primary{justify-self:start}.lesson-source-panel{display:grid;gap:22px}.embedded-source-form{padding-top:22px;border-top:1px solid var(--border)}.embedded-source-header{margin-bottom:18px}.embedded-source-header .eyebrow{margin-bottom:5px}.btn-primary{background:var(--primary);box-shadow:0 1px 2px rgba(16,24,40,0.14);border-color:transparent}.btn-primary:hover{background:var(--primary-hover);box-shadow:0 4px 14px color-mix(in srgb,var(--primary) 30%,transparent);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0);box-shadow:0 1px 2px rgba(16,24,40,0.14)}.btn-secondary{border-color:var(--border);background:var(--surface);color:var(--ink-soft);box-shadow:0 1px 2px rgba(16,24,40,0.06)}.btn-secondary:hover{border-color:var(--border-strong);background:var(--surface-subtle);color:var(--ink);box-shadow:0 3px 8px rgba(16,24,40,0.07)}.btn-warning,#fortnightly-test{background:var(--warning)}.btn-warning:hover,#fortnightly-test:hover{background:color-mix(in srgb,var(--warning) 86%,black)}.btn-danger,#monthly-test,#record-stop{background:var(--danger)}.btn-danger:hover,#monthly-test:hover,#record-stop:hover{background:color-mix(in srgb,var(--danger) 86%,black)}.btn-ghost{background:transparent;color:var(--ink-soft);border:1px solid var(--border)}.btn-ghost:hover{background:var(--surface-subtle, #f8fafc);border-color:var(--ink-soft)}.upload-progress{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;color:var(--muted);font-size:12px;font-weight:800}.upload-progress progress{width:100%;height:8px;border:0;border-radius:999px;overflow:hidden;appearance:none;-webkit-appearance:none;background:var(--surface-muted)}.upload-progress progress::-webkit-progress-bar{border-radius:999px;background:var(--surface-muted)}.upload-progress progress::-webkit-progress-value{border-radius:999px;background:linear-gradient(90deg,var(--primary),color-mix(in srgb,var(--primary) 72%,#6d28d9))}.upload-progress progress::-moz-progress-bar{border-radius:999px;background:linear-gradient(90deg,var(--primary),color-mix(in srgb,var(--primary) 72%,#6d28d9))}.upload-progress.progress-working progress::-webkit-progress-value{background:linear-gradient(90deg,var(--primary),#7c3aed)}.upload-progress.progress-working progress::-moz-progress-bar{background:linear-gradient(90deg,var(--primary),#7c3aed)}.upload-progress.progress-error progress::-webkit-progress-value{background:var(--danger)}.upload-progress.progress-error progress::-moz-progress-bar{background:var(--danger)}.upload-progress.progress-done progress::-webkit-progress-value{background:var(--success)}.upload-progress.progress-done progress::-moz-progress-bar{background:var(--success)}.status{color:var(--muted);font-size:13px;font-weight:700}.status:not(:empty){display:inline-flex;align-items:center;width:fit-content;max-width:100%;min-height:34px;padding:7px 13px;border:1px solid var(--border);border-radius:999px;background:linear-gradient(180deg,var(--surface),var(--surface-subtle));box-shadow:0 1px 2px rgba(16,24,40,0.06);line-height:1.25}.status.status-working{border-color:color-mix(in srgb,var(--primary) 38%,var(--border));background:var(--primary-soft);color:var(--primary)}.status.status-working::before{content:"";width:7px;height:7px;margin-right:7px;border-radius:999px;background:currentColor;animation:status-pulse 900ms ease-in-out infinite}.status.status-success{border-color:color-mix(in srgb,var(--success) 34%,var(--border));background:var(--success-soft);color:var(--success)}.status.status-success::before{content:"✓";display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-right:7px;border-radius:50%;background:currentColor;color:var(--surface);font-size:11px;font-weight:900;flex-shrink:0}.status.status-error{border-color:color-mix(in srgb,var(--danger) 34%,var(--border));background:var(--danger-soft);color:var(--danger)}.status.status-error::before{content:"!";display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-right:7px;border-radius:50%;background:currentColor;color:var(--surface);font-size:12px;font-weight:900;flex-shrink:0}.step-list{display:grid;gap:10px;margin:0;padding-left:20px;color:var(--ink-soft);font-size:14px;font-weight:650}.step-list li::marker{color:var(--primary);font-weight:900}.output{display:grid;gap:14px;min-width:0}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-grid>*:last-child{grid-column:1 / -1}.section,.card,.output .card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle);padding:16px}.card,.output .card{display:grid;gap:12px}.section h3{margin-bottom:10px;color:var(--ink);font-size:16px}.section h4{margin:14px 0 7px;color:var(--ink-soft);font-size:14px}.section p{color:var(--ink-soft)}.empty-state{display:grid;place-items:start;gap:10px;min-height:200px;padding:28px;align-content:center;border-style:dashed;color:var(--ink-soft)}.empty-state h3{margin:0;color:var(--ink)}.empty-state-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.empty-state-actions .btn-primary,.empty-state-actions .btn-secondary{min-height:38px;padding:0 18px}.leaderboard-output{gap:12px}.leaderboard-current{display:grid;gap:4px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--primary) 36%,var(--border));border-radius:var(--radius);background:var(--primary-soft)}.leaderboard-current span{color:var(--muted);font-size:12px;font-weight:900;letter-spacing:0.08em;text-transform:uppercase}.leaderboard-current strong{color:var(--ink);font-size:18px}.leaderboard-bonus{display:inline-block;margin-left:6px;padding:2px 7px;background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 28%,transparent);border-radius:999px;font-size:10px;font-weight:800;letter-spacing:0.02em}.leaderboard-list{display:grid;gap:9px}.leaderboard-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px 12px;align-items:center;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle)}.leaderboard-row.is-current-user{border-color:color-mix(in srgb,var(--primary) 44%,var(--border));background:color-mix(in srgb,var(--primary-soft) 62%,var(--surface))}.leaderboard-row span,.leaderboard-row b{color:var(--ink)}.leaderboard-row small{grid-column:2 / 3}.section ul,.section ol{margin:0;padding-left:21px;color:var(--ink-soft)}.section li+li{margin-top:7px}.section li::marker{color:var(--primary)}.sources{margin-top:9px;padding:9px 11px;border:1px solid var(--border);border-left:3px solid var(--warning);border-radius:8px;background:color-mix(in srgb,var(--warning) 8%,var(--surface));color:var(--muted);font-size:12px;line-height:1.45}.quiz-question{display:grid;gap:10px;padding:15px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle)}.quiz-form .quiz-question:not(.is-current):not(.is-evaluating){display:none}.quiz-form.is-scored .quiz-question{display:grid!important}.quiz-progress-paged .quiz-progress-dots{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:8px 0 4px;padding:6px 0}.quiz-progress-paged .quiz-progress-dots::before{content:"";position:absolute;top:50%;left:4px;right:4px;height:2px;background:color-mix(in srgb,var(--border) 80%,transparent);border-radius:999px;z-index:0;pointer-events:none}.quiz-progress-dot{position:relative;z-index:1;width:10px;height:10px;border-radius:50%;border:none;background:color-mix(in srgb,var(--primary) 22%,var(--border));cursor:pointer;padding:0;transition:transform 160ms ease,background-color 160ms ease,box-shadow 160ms ease,width 160ms ease,height 160ms ease}.quiz-progress-dot:hover{transform:scale(1.3);background:color-mix(in srgb,var(--primary) 55%,var(--border))}.quiz-progress-dot:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 35%,transparent)}.quiz-progress-dot.is-answered{background:var(--primary);width:12px;height:12px}.quiz-progress-dot.is-current{background:var(--primary);width:14px;height:14px;box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 22%,transparent)}.quiz-nav-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.quiz-nav-row .btn-secondary{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-size:13px;min-height:0}.quiz-nav-row .btn-secondary:disabled{opacity:0.4;cursor:not-allowed}.quiz-nav-row .btn-secondary svg{width:14px;height:14px}.quiz-nav-row .quiz-nav-prev svg{order:-1}.quiz-nav-counter{font-size:12px;font-weight:700;color:var(--muted);letter-spacing:0.04em}.quiz-nav-row .quiz-nav-next[hidden]{display:none}.quiz-form{display:grid;gap:14px}.quiz-score-panel{display:grid;gap:14px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--success) 34%,var(--border));border-radius:var(--radius);background:var(--success-soft);color:var(--ink)}.quiz-score-panel[hidden]{display:none}.quiz-score-panel strong{color:var(--success);font-size:22px}.quiz-score-panel span{color:var(--ink-soft);font-size:13px;font-weight:800}.quiz-complete-badge{display:grid;gap:3px}.quiz-complete-badge.is-perfect strong{color:var(--success)}.quiz-complete-actions{justify-content:flex-end}.quiz-next-steps{display:grid;gap:10px}.quiz-next-steps>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.quiz-next-step{display:grid;grid-template-columns:24px minmax(0,1fr);gap:4px 9px;align-items:center;min-height:82px;padding:12px;border:1px solid color-mix(in srgb,var(--success) 28%,var(--border));border-radius:14px;background:var(--surface);color:var(--ink);text-align:left;box-shadow:none}.quiz-next-step .icon{grid-row:span 2;color:var(--primary)}.quiz-next-step strong{color:var(--ink);font-size:15px}.quiz-next-step span{color:var(--muted);font-size:12px;font-weight:800}.quiz-next-step:hover{transform:translateY(-1px);border-color:var(--primary);box-shadow:var(--shadow-sm)}.quiz-next-step:disabled{cursor:not-allowed;opacity:0.55;transform:none}.quiz-question+.quiz-question{margin-top:4px}.quiz-empty-warning{padding:10px 14px;margin:12px 0;background:color-mix(in srgb,var(--warning) 14%,var(--surface));color:color-mix(in srgb,var(--warning) 80%,var(--ink));border:1px solid color-mix(in srgb,var(--warning) 30%,transparent);border-radius:10px;font-size:13px;font-weight:700}.quiz-question.is-needs-answer{animation:quiz-needs-answer-pulse 1.6s ease-out}@keyframes quiz-needs-answer-pulse{0%,100%{box-shadow:0 0 0 0 transparent}20%{box-shadow:0 0 0 4px color-mix(in srgb,var(--warning) 35%,transparent)}60%{box-shadow:0 0 0 4px color-mix(in srgb,var(--warning) 18%,transparent)}}.quiz-question.is-correct{border-color:color-mix(in srgb,var(--success) 38%,var(--border));background:color-mix(in srgb,var(--success-soft) 72%,var(--surface))}.quiz-question.is-incorrect{border-color:color-mix(in srgb,var(--danger) 32%,var(--border));background:color-mix(in srgb,var(--danger-soft) 62%,var(--surface))}.quiz-prompt{color:var(--ink);line-height:1.45}.quiz-question label{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink-soft);cursor:pointer;font-weight:650}.quiz-question label:hover{border-color:var(--border-strong)}.quiz-question label:has(input[type=radio]:checked){border-color:var(--primary);background:var(--primary-soft);color:var(--ink)}.quiz-question input[type=radio]{accent-color:var(--primary)}body.theme-dark .panel,body.theme-dark .quiz-form,body.theme-dark .quiz-question,body.theme-dark .lesson-context-bar{border-color:#2b2b2b;background:linear-gradient(180deg,rgba(22,22,22,0.96),rgba(16,16,16,0.96));box-shadow:0 18px 54px rgba(0,0,0,0.4),inset 0 1px 0 rgba(255,255,255,0.035)}body.theme-dark .quiz-question label{border-color:#2f2f2f;background:rgba(13,13,13,0.82);color:#e7e3da}body.theme-dark .quiz-question label:hover{border-color:#454545;background:rgba(28,28,28,0.95)}body.theme-dark .quiz-question label:has(input[type=radio]:checked){border-color:var(--primary);background:color-mix(in srgb,var(--primary) 20%,transparent);color:#f4f1ea;box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 45%,transparent),0 14px 28px rgba(0,0,0,0.32)}body.theme-dark .quiz-question input[type=radio]{accent-color:var(--primary)}.quiz-result-detail{display:grid;gap:6px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink-soft);font-size:13px;line-height:1.45}.quiz-result-detail strong{color:var(--ink)}.quiz-result-detail span{display:block}.quiz-result-detail p,.study-feedback p{white-space:pre-line}.quiz-submit-btn{justify-self:start;min-width:160px}.quiz-dispute-btn{margin-top:8px;align-self:flex-start;padding:5px 12px;font-size:12px;font-weight:600;border-radius:999px;border:1px solid rgba(91,53,23,0.22);background:rgba(255,255,255,0.55);color:var(--ink-soft, #5b3517);cursor:pointer;transition:background 150ms,border-color 150ms,color 150ms}.quiz-dispute-btn:hover:not(:disabled){background:rgba(255,224,138,0.32);border-color:var(--warning, #c89858);color:var(--ink, #2d1a0c)}.quiz-dispute-btn:disabled{cursor:not-allowed;opacity:0.72}.quiz-dispute-result{margin-top:6px;font-size:13px;line-height:1.45;color:var(--ink-soft, #5b3517);font-style:italic;animation:dispute-result-in 320ms cubic-bezier(0.32,0.72,0,1)}@keyframes dispute-result-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.quiz-empty-state{max-width:680px}.practice-layout{align-items:start}.practice-warning{margin:0 0 18px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--warning) 38%,var(--border));border-radius:16px;background:color-mix(in srgb,var(--warning) 11%,var(--surface));color:var(--ink-soft);font-weight:850;line-height:1.45}.practice-paper-form,.practice-context-form,.assessment-result-form,.knowledge-checklist-form{display:grid;gap:14px}.practice-knowledge-layout,.knowledge-checklist-panel{margin-top:18px}.practice-context-list{display:grid;gap:10px}.practice-doc-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle)}.practice-doc-row div{display:grid;gap:3px}.practice-doc-row strong{color:var(--ink)}.practice-doc-row small{color:var(--muted);font-weight:800}.practice-paper-card{display:grid;gap:16px}.practice-paper-head{display:flex;justify-content:space-between;gap:14px;align-items:start}.practice-paper-head h3{margin:0;color:var(--ink);font-size:24px;line-height:1.1}.practice-paper-head small{color:var(--muted);font-weight:800}.practice-paper-head>span{flex:0 0 auto;padding:8px 11px;border:1px solid var(--border);border-radius:999px;background:var(--surface-subtle);color:var(--primary);font-weight:950}.practice-question-list{display:grid;gap:10px}.practice-question{border:1px solid var(--border);border-radius:14px;background:var(--surface);overflow:hidden}.practice-question summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:start;padding:14px;cursor:pointer;color:var(--ink);font-weight:850}.practice-question summary b{color:var(--primary);white-space:nowrap}.practice-answer{display:grid;gap:10px;padding:0 14px 14px;color:var(--ink-soft);font-weight:750;line-height:1.5}.practice-answer p,.practice-answer ul{margin:0}.practice-answer small{color:var(--muted);font-weight:850}.assessment-results-head{display:grid;gap:4px;margin-top:8px;padding-top:14px;border-top:1px solid var(--border)}.assessment-results-head h3,.assessment-results-head p{margin:0}.assessment-results-head p{color:var(--muted);font-weight:800}.assessment-results-list{display:grid;gap:12px}.assessment-result-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:14px;border:1px solid var(--border);border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 8%,var(--surface)),var(--surface-subtle))}.assessment-result-card h3,.assessment-result-card p{margin:0}.assessment-result-card h3{color:var(--ink);font-size:22px;line-height:1.1}.assessment-result-card small,.assessment-result-card span{color:var(--muted);font-weight:850}.assessment-result-card>p{grid-column:1 / -1;color:var(--ink-soft);font-weight:760;line-height:1.45}.knowledge-builder-card{position:sticky;top:110px}.knowledge-checklist-output{display:grid;gap:14px}.knowledge-checklist-card{display:grid;gap:16px}.knowledge-checklist-head{display:flex;justify-content:space-between;gap:16px;align-items:start}.knowledge-checklist-head h3,.knowledge-checklist-head p{margin:0}.knowledge-checklist-head h3{color:var(--ink);font-size:26px;line-height:1.1}.knowledge-checklist-head p{margin-top:6px;color:var(--ink-soft);font-weight:800;line-height:1.45}.knowledge-checklist-head span{flex:0 0 auto;color:var(--muted);font-weight:850}.knowledge-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.knowledge-column,.knowledge-next-steps{display:grid;align-content:start;gap:10px;min-height:180px;padding:14px;border:1px solid var(--border);border-radius:16px;background:var(--surface-subtle)}.knowledge-column h4,.knowledge-next-steps h4{margin:0;color:var(--ink);font-size:18px}.knowledge-column ul,.knowledge-next-steps ul{display:grid;gap:10px;margin:0;padding-left:18px}.knowledge-column li,.knowledge-next-steps li{color:var(--ink-soft);font-weight:780;line-height:1.45}.knowledge-column li strong{display:block;color:var(--ink)}.knowledge-column li span,.knowledge-column li em{display:block;margin-top:3px}.knowledge-column li em{color:var(--primary);font-style:normal}.knowledge-solid{background:color-mix(in srgb,var(--success) 10%,var(--surface))}.knowledge-iffy{background:color-mix(in srgb,var(--warning) 13%,var(--surface))}.knowledge-missing{background:color-mix(in srgb,var(--danger) 8%,var(--surface))}.study-session-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,0.5fr);gap:20px;align-items:start}.study-coach-shell{display:grid;gap:18px}.sc-session-header{display:grid;gap:14px;padding:24px;border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border));border-radius:20px;background:radial-gradient(circle at 95% 10%,color-mix(in srgb,var(--primary) 10%,transparent),transparent 40%),var(--surface)}.sc-session-hero h2{margin:0;color:var(--ink);font-size:28px;font-weight:850;line-height:1.1}.sc-session-hero p{margin:6px 0 0;max-width:54ch;color:var(--ink-soft);font-size:14px;font-weight:600;line-height:1.5}.sc-session-meta{display:flex;gap:8px;flex-wrap:wrap}.sc-meta-pill{display:flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.sc-meta-pill strong{color:var(--ink);font-size:18px;font-weight:800}.sc-meta-pill span{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.05em}.sc-sidebar{position:sticky;top:80px}.sc-timeline{display:grid;gap:0;border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:16px;overflow:hidden}.sc-timeline h4{margin:0 0 12px;color:var(--ink);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:0.06em}.sc-timeline-item{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-left:2px solid var(--border);margin-left:6px;padding-left:16px;position:relative}.sc-timeline-item:last-child{border-left-color:transparent}.sc-timeline-dot{position:absolute;left:-6px;top:14px;width:10px;height:10px;border-radius:50%;background:var(--border);border:2px solid var(--surface);flex-shrink:0}.sc-timeline-content{display:grid;gap:2px;min-width:0}.sc-timeline-content strong{color:var(--ink);font-size:13px;font-weight:700;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.sc-timeline-content span{color:var(--muted);font-size:11px;font-weight:700}.sc-progress-ring{flex-shrink:0}.sc-topbar{display:flex;gap:14px;align-items:center}.sc-topbar-info{display:grid;gap:3px;min-width:0}.sc-chunk-label{color:var(--ink);font-size:14px;font-weight:750}.sc-q-counter{color:var(--muted);font-size:12px;font-weight:700}.sc-phase-pills{display:flex;gap:6px;margin-top:4px}.sc-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:99px;font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:0.05em;color:var(--muted);background:var(--surface-subtle, #f8fafc);border:1px solid var(--border)}.sc-pill.is-active{color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,var(--surface));border-color:color-mix(in srgb,var(--primary) 30%,var(--border))}.sc-pill.is-done{color:#16a34a;background:var(--success-soft, #f0fdf4);border-color:#bbf7d0}.sc-pill svg{width:10px;height:10px}.sc-learn-section{display:grid;gap:16px}.sc-learn-header h3{display:flex;align-items:center;gap:8px;font-size:18px}.sc-learn-header p{margin:4px 0 0;color:var(--ink-soft);font-size:14px;font-weight:600}.sc-concept-cards{display:grid;gap:10px}.sc-concept-card{display:flex;gap:12px;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--primary) 3%,var(--surface));border-left:3px solid color-mix(in srgb,var(--primary) 40%,var(--border))}.sc-concept-num{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;border-radius:50%;background:var(--primary);color:#fff;font-size:12px;font-weight:800}.sc-concept-body{flex:1;min-width:0}.sc-concept-body p,.sc-concept-card p{margin:0;color:var(--ink);font-size:14px;font-weight:500;line-height:1.6}.sc-concept-list{margin:0;padding:0 0 0 4px;list-style:none;display:flex;flex-direction:column;gap:8px}.sc-concept-list li{color:var(--ink);font-size:13px;font-weight:450;line-height:1.6;padding-left:12px;position:relative}.sc-concept-list li::before{content:"";position:absolute;left:0;top:9px;width:4px;height:4px;border-radius:50%;background:var(--primary);opacity:0.5}.sc-concept-list li strong{color:var(--ink);font-weight:700}.sc-concept-card small{display:block;margin-top:6px;color:var(--muted);font-size:11px;font-weight:700}.sc-question{color:var(--ink);font-size:20px;font-weight:750;line-height:1.3}.sc-actions-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.sc-skip-btn{color:var(--muted)!important;font-size:13px!important}.sc-help-drawer{border:1px solid var(--border);border-radius:12px;background:var(--surface-subtle, #f8fafc);overflow:hidden}.sc-help-drawer summary{padding:10px 14px;cursor:pointer;color:var(--ink-soft);font-size:13px;font-weight:700;user-select:none;list-style:none}.sc-help-drawer summary::-webkit-details-marker{display:none}.sc-help-drawer summary::before{content:"+ ";font-weight:900;color:var(--primary)}.sc-help-drawer[open] summary::before{content:"− "}.sc-help-options{display:grid;gap:6px;padding:0 14px 12px}.sc-help-btn{display:flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--ink-soft);font-size:13px;font-weight:650;cursor:pointer;transition:background 150ms,border-color 150ms}.sc-help-btn:hover{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 6%,var(--surface));color:var(--primary)}.sc-help-btn:disabled{opacity:0.4;cursor:not-allowed}.sc-help-btn svg{width:16px;height:16px;flex-shrink:0}.sc-feedback{display:grid;gap:12px;padding:16px;border-radius:14px;border:1px solid var(--border)}.sc-feedback.is-correct{border-color:#bbf7d0;background:linear-gradient(135deg,#f0fdf4,#ecfdf5)}.sc-feedback.is-wrong{border-color:#fecdd3;background:linear-gradient(135deg,#fff1f2,#fef2f2)}.sc-feedback-header{display:flex;align-items:center;gap:8px}.sc-feedback-header strong{font-size:15px;font-weight:750}.sc-feedback.is-correct .sc-feedback-header strong{color:#166534}.sc-feedback.is-wrong .sc-feedback-header strong{color:#9f1239}.sc-feedback-body{margin:0;color:var(--ink-soft);font-size:14px;font-weight:600;line-height:1.55}.sc-model-answer{padding:12px 14px;border-radius:10px;background:color-mix(in srgb,var(--primary) 6%,#fff);border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border))}.sc-model-label,.sc-advice-label{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0.06em;color:var(--primary);margin-bottom:6px}.sc-model-answer p,.sc-advice p{margin:0;color:var(--ink);font-size:14px;font-weight:600;line-height:1.5}.sc-advice{padding:10px 14px;border-radius:10px;background:color-mix(in srgb,#f59e0b 5%,var(--surface));border:1px solid color-mix(in srgb,#f59e0b 18%,var(--border))}.sc-advice-label{color:#b45309}.sc-advice svg{width:14px;height:14px}.sc-continue-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:8px;border-top:1px solid var(--border)}.sc-continue-bar span{color:var(--muted);font-size:12px;font-weight:700}.sc-complete{display:flex;gap:20px;align-items:center;padding:28px 24px;border:1px solid color-mix(in srgb,#16a34a 25%,var(--border));border-radius:20px;background:radial-gradient(circle at 5% 50%,color-mix(in srgb,#16a34a 6%,transparent),transparent 40%),var(--surface)}.sc-complete-copy{display:grid;gap:8px}.sc-complete-copy .eyebrow{color:#16a34a}.sc-complete-copy h3{margin:0;color:var(--ink);font-size:24px;font-weight:850}.sc-complete-copy p{margin:0;color:var(--ink-soft);font-size:14px;font-weight:600;line-height:1.5}.sc-complete-stats{display:flex;gap:10px;margin-top:4px}.sc-stat{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:8px;font-size:13px;font-weight:700}.sc-stat svg{width:14px;height:14px}.sc-stat.is-green{color:#166534;background:var(--success-soft, #f0fdf4)}.sc-stat.is-red{color:#9f1239;background:#fff1f2}.sc-strictness-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sc-strictness-bar>span{color:var(--ink-soft);font-size:13px;font-weight:700}.sc-strictness-opt{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink-soft);font-size:12px;font-weight:650;cursor:pointer;transition:background 150ms,border-color 150ms}.sc-strictness-opt:has(input:checked){border-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--surface));color:var(--primary);font-weight:750}.sc-strictness-opt input[type=radio]{width:14px;height:14px;accent-color:var(--primary);margin:0;cursor:pointer}.sc-notes-fab{position:fixed;bottom:24px;right:24px;z-index:100;display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:var(--primary);color:#fff;box-shadow:0 6px 24px rgba(0,0,0,0.18);cursor:pointer;transition:transform 150ms,box-shadow 150ms}.sc-notes-fab:hover{transform:scale(1.08);box-shadow:0 8px 32px rgba(0,0,0,0.24)}.sc-notes-fab svg{width:22px;height:22px}.sc-notes-panel{position:fixed;bottom:24px;right:24px;z-index:101;width:min(380px,calc(100vw - 32px));height:min(420px,50vh);display:grid;grid-template-rows:auto 1fr;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:0 12px 48px rgba(0,0,0,0.16);overflow:hidden}.sc-notes-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--surface-subtle, #f8fafc);position:relative}.sc-notes-header::before{content:"";position:absolute;left:6px;top:50%;width:4px;height:16px;background-image:radial-gradient(circle,var(--muted) 1px,transparent 1.2px);background-size:4px 4px;background-repeat:repeat-y;transform:translateY(-50%);opacity:0.5;pointer-events:none}.sc-notes-header strong{padding-left:8px}.sc-notes-header strong{color:var(--ink);font-size:14px;font-weight:750}.sc-notes-close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--muted);cursor:pointer;border-radius:6px}.sc-notes-close:hover{background:#fee2e2;color:#dc2626}.sc-notes-close svg{width:16px;height:16px}.sc-notes-textarea{width:100%;height:100%;border:none;padding:14px 16px;font-family:inherit;font-size:16px;font-weight:500;line-height:1.6;color:var(--ink);background:var(--surface);resize:none;outline:none}.sc-notes-textarea::placeholder{color:var(--muted)}.sc-past-section{margin-top:16px}.sc-past-section h4{margin:0 0 12px;color:var(--ink);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:0.06em}.sc-past-empty p{color:var(--muted);font-size:13px;font-weight:600;line-height:1.5}.sc-past-card{display:grid;gap:10px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);margin-bottom:10px}.sc-past-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.sc-past-header strong{display:block;color:var(--ink);font-size:14px;font-weight:700;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.sc-past-header span{display:block;margin-top:2px;color:var(--muted);font-size:11px;font-weight:650}.sc-past-score{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;font-size:13px;font-weight:800}.sc-past-score.is-great{background:var(--success-soft, #f0fdf4);color:#166534}.sc-past-score.is-ok{background:#eff6ff;color:#1e40af}.sc-past-score.is-low{background:#fff7ed;color:#9a3412}.sc-past-stats{display:flex;gap:6px;flex-wrap:wrap}.sc-past-topics{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.sc-past-topics-label{color:var(--muted);font-size:11px;font-weight:750;margin-right:2px}.sc-topic-chip{display:inline-block;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:600;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sc-topic-chip.is-weak{background:#fff1f2;color:#9f1239}.sc-topic-chip.is-strong{background:var(--success-soft, #f0fdf4);color:#166534}.sc-past-notes{border:1px solid var(--border);border-radius:8px;overflow:hidden}.sc-past-notes summary{padding:8px 10px;cursor:pointer;color:var(--ink-soft);font-size:12px;font-weight:650;background:var(--surface-subtle, #f8fafc)}.sc-past-notes p{margin:0;padding:10px 12px;color:var(--ink-soft);font-size:13px;line-height:1.5}.sc-past-actions{display:flex;gap:6px;flex-wrap:wrap}.sc-past-action{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink-soft);font-size:11px;font-weight:650;cursor:pointer;transition:background 150ms,border-color 150ms,color 150ms}.sc-past-action:hover{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 6%,var(--surface));color:var(--primary)}.sc-past-action svg{width:12px;height:12px}.study-session-intro{display:grid;gap:10px}.study-coach-card{display:grid;gap:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:18px;box-shadow:var(--shadow-soft)}.study-coach-card.complete{border-color:color-mix(in srgb,var(--primary) 35%,var(--border));background:color-mix(in srgb,var(--primary) 8%,var(--surface))}.study-coach-card h3{color:var(--ink);font-size:22px;line-height:1.25}.study-visual-aid{display:grid;gap:12px;padding:14px;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--primary) 5%,var(--surface))}.study-visual-head{display:flex;justify-content:space-between;gap:12px;align-items:center;color:var(--ink)}.study-visual-head span{color:var(--muted);font-size:13px;font-weight:850}.study-visual-grid{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,0.75fr);gap:12px;align-items:stretch}.study-scatter{width:100%;min-height:220px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.study-scatter line{stroke:var(--ink-soft);stroke-width:2}.study-scatter circle{fill:var(--primary);stroke:var(--surface);stroke-width:2}.study-scatter text{fill:var(--muted);font-size:12px;font-weight:800}.study-data-table-wrap{max-height:220px;overflow:auto;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.study-data-table{width:100%;border-collapse:collapse;color:var(--ink-soft);font-size:13px;font-weight:800}.study-data-table th,.study-data-table td{padding:8px 10px;border-bottom:1px solid var(--border);text-align:left}.study-data-table th{position:sticky;top:0;background:var(--surface-subtle);color:var(--ink)}body.theme-dark .study-visual-aid{border-color:#2b2b2b;background:linear-gradient(180deg,rgba(20,20,20,0.98),rgba(14,14,14,0.98));box-shadow:0 18px 54px rgba(0,0,0,0.36),inset 0 1px 0 rgba(255,255,255,0.035)}body.theme-dark .study-scatter,body.theme-dark .study-data-table-wrap{border-color:#2b2b2b;background:#121212}body.theme-dark .study-scatter line{stroke:#6f6b64;opacity:0.9}body.theme-dark .study-scatter circle{fill:var(--primary);stroke:#0a0a0a;filter:drop-shadow(0 0 5px rgba(126,184,154,0.5))}body.theme-dark .study-scatter text{fill:#9c9890}body.theme-dark .study-data-table{color:#dcd9d1}body.theme-dark .study-data-table th{background:#1c1c1c;color:#f4f1ea}body.theme-dark .study-data-table td{border-bottom-color:#2b2b2b}body.theme-dark .study-data-table tr:nth-child(even) td{background:rgba(255,255,255,0.018)}.study-coach-topline,.study-actions,.study-summary-stats,.study-plan-list article{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.study-coach-topline{justify-content:space-between;color:var(--muted);font-size:13px;font-weight:800}.study-actions button{min-height:40px}.study-actions button:disabled{cursor:not-allowed;opacity:0.45}.study-feedback{display:grid;gap:8px;border:1px solid var(--border);border-radius:var(--radius);padding:14px;color:var(--ink-soft)}.study-feedback.is-correct{border-left:4px solid var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--surface))}.study-feedback.needs-review{border-left:4px solid var(--danger);background:color-mix(in srgb,var(--danger) 7%,var(--surface))}.study-auto-note{color:var(--muted);font-size:13px;font-weight:750}.study-feedback .btn-primary{justify-self:start}.study-summary-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.study-summary-stats.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.study-summary-stats div{min-width:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:12px}.study-summary-stats strong{display:block;color:var(--ink);font-size:24px;line-height:1}.study-summary-stats span{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.study-summary-empty,.study-summary-dashboard{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;margin-bottom:18px;border:1px solid var(--border);border-radius:20px;background:radial-gradient(circle at 92% 12%,color-mix(in srgb,var(--primary) 12%,transparent),transparent 34%),var(--surface);padding:20px}.study-summary-empty>.icon{width:46px;height:46px;color:var(--primary)}.study-summary-empty h3,.study-summary-command h3{margin:0;color:var(--ink);font-size:clamp(26px,4vw,42px);line-height:1.05}.study-summary-empty p,.study-summary-command p{max-width:760px;color:var(--ink-soft);font-weight:750;line-height:1.5}.study-summary-empty-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.study-summary-dashboard{grid-template-columns:minmax(0,1fr) minmax(260px,420px);align-items:center}.study-summary-command{min-width:0}.study-summary-priority-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px}.study-summary-priority-grid .study-summary-section:first-child{grid-row:span 2}.study-plan-list{display:grid;gap:12px}.study-plan-list article{justify-content:space-between;border-top:1px solid var(--border);padding-top:12px}.study-plan-list article:first-of-type{border-top:0;padding-top:0}.study-plan-list span{color:var(--muted);font-size:13px;font-weight:800}.study-resume-banner{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--primary) 34%,var(--border));border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:13px;font-weight:950}.study-summary-section ul{display:grid;gap:10px;padding-left:0;list-style:none}.study-summary-section li{display:grid;gap:5px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:12px}.study-summary-section li strong{color:var(--ink)}.study-summary-section li span{color:var(--ink-soft);line-height:1.45}.needs-review li{border-left:4px solid var(--danger)}.mastered-review li{border-left:4px solid var(--primary)}.lesson-list-item{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);transition:transform 180ms ease,border-color 180ms ease,box-shadow 180ms ease}.lesson-library-controls{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:12px;margin-bottom:16px}.lesson-library-list{display:grid;gap:10px}.lesson-list-item:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--primary) 32%,var(--border));box-shadow:var(--shadow-md)}.lesson-list-item+.lesson-list-item{margin-top:10px}.lesson-item-main{display:grid;gap:3px}.lesson-item-main small{color:var(--primary);font-size:12px;font-weight:850}.lesson-card-meter{grid-row:span 3;width:62px;height:62px}.lesson-card-meter strong{font-size:14px}.lesson-card-meter span{font-size:9px}.lesson-badges{display:flex;flex-wrap:wrap;gap:7px}.lesson-badges span{padding:6px 8px;border:1px solid var(--border);border-radius:999px;background:var(--surface-subtle);color:var(--muted);font-size:11px;font-weight:850}.lesson-item-main strong,.lesson-list-item strong{color:var(--ink);font-size:15px}.lesson-item-main span{color:var(--muted);font-size:13px;font-weight:700;text-transform:capitalize}.lesson-action-btn{min-height:34px;padding:7px 10px;border-color:var(--border);background:var(--surface-subtle);color:var(--ink-soft);box-shadow:none;font-size:12px}.lesson-action-btn:hover{border-color:var(--border-strong);background:var(--primary-soft);color:var(--primary);box-shadow:none}.lesson-action-btn.action-delete{border-color:color-mix(in srgb,var(--danger) 36%,var(--border));background:var(--danger-soft);color:var(--danger)}.lesson-action-btn.action-delete:hover{border-color:var(--danger);background:var(--danger);color:#fff}.teach-context-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:linear-gradient(135deg,var(--primary-soft),color-mix(in srgb,var(--surface) 86%,transparent))}.teach-context-card span,.teach-context-card small{color:var(--muted);font-size:11px;font-weight:850;text-transform:uppercase}.teach-context-card strong{display:block;margin-top:3px;color:var(--ink);font-size:17px}.teach-checklist{border:1px solid var(--border);border-radius:14px;background:var(--surface);overflow:hidden}.tc-header{display:flex;align-items:center;gap:12px;padding:14px 16px;background:color-mix(in srgb,var(--primary) 4%,var(--surface));border-bottom:1px solid var(--border);cursor:pointer}.tc-header-left{flex:1;min-width:0}.tc-header-left strong{display:block;font-size:14px;font-weight:800;color:var(--ink)}.tc-progress-text{font-size:12px;font-weight:600;color:var(--muted)}.tc-progress-bar{width:140px;height:8px;border-radius:4px;background:var(--surface-muted);overflow:hidden;flex-shrink:0;display:flex;align-items:stretch}.tc-progress-fill{height:100%;background:var(--primary);transition:width 0.3s ease}.tc-progress-fill-red{background:var(--danger)}.tc-progress-fill-yellow{background:#f59e0b}.tc-progress-fill-green{background:#16a34a}.tc-toggle{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink);cursor:pointer;transition:transform 0.2s ease,background 0.15s ease,border-color 0.15s ease;flex-shrink:0;padding:0}.tc-toggle:hover{background:var(--surface-subtle);border-color:color-mix(in srgb,var(--primary) 35%,var(--border))}.tc-toggle[aria-expanded=false]{transform:rotate(-90deg)}.tc-toggle svg{width:16px;height:16px;display:block}.tc-body{padding:12px 16px;display:grid;gap:16px}.tc-topic-title{margin:0 0 8px;font-size:13px;font-weight:800;color:var(--primary);text-transform:uppercase;letter-spacing:0.04em}.tc-concepts{display:grid;gap:10px}.tc-concept{display:flex;align-items:flex-start;gap:14px;padding:18px 20px;border:1px solid var(--border);border-left-width:4px;border-radius:14px;background:var(--surface);cursor:pointer;transition:border-color 0.15s,background 0.15s,box-shadow 0.15s}.tc-concept:hover{border-color:color-mix(in srgb,var(--primary) 40%,var(--border));box-shadow:0 2px 10px -4px rgba(31,42,37,0.10)}.tc-concept.is-done{background:color-mix(in srgb,#16a34a 5%,var(--surface));border-color:color-mix(in srgb,#16a34a 25%,var(--border))}.tc-concept[data-state=red],.cl-tab-concept[data-state=red]{border-left-color:var(--danger);background:color-mix(in srgb,var(--danger) 5%,var(--surface))}.tc-concept[data-state=red]:hover,.cl-tab-concept[data-state=red]:hover{border-color:color-mix(in srgb,var(--danger) 40%,var(--border));border-left-color:var(--danger)}.tc-concept[data-state=yellow],.cl-tab-concept[data-state=yellow]{border-left-color:#f59e0b;background:color-mix(in srgb,#f59e0b 6%,var(--surface))}.tc-concept[data-state=yellow]:hover,.cl-tab-concept[data-state=yellow]:hover{border-color:color-mix(in srgb,#f59e0b 45%,var(--border));border-left-color:#f59e0b}.tc-concept[data-state=green],.cl-tab-concept[data-state=green]{border-left-color:#16a34a;background:color-mix(in srgb,#16a34a 5%,var(--surface))}.tc-concept[data-state=green]:hover,.cl-tab-concept[data-state=green]:hover{border-color:color-mix(in srgb,#16a34a 35%,var(--border));border-left-color:#16a34a}.tc-concept[data-state=green] .tc-concept-label{color:color-mix(in srgb,#16a34a 50%,var(--ink))}.tc-concept input[type=checkbox]{margin-top:3px;width:18px;height:18px;accent-color:#16a34a;flex-shrink:0;cursor:pointer}.tc-state-toggle{display:flex;flex-direction:row;gap:6px;flex-shrink:0;padding-top:4px;align-items:center}.tc-state-dot{width:14px;height:14px;border-radius:50%;border:2px solid transparent;background:var(--surface-muted);cursor:pointer;padding:0;transition:transform 120ms ease,background 180ms ease,border-color 180ms ease,box-shadow 180ms ease;position:relative}.tc-state-dot:hover{transform:scale(1.15)}.tc-state-dot.tc-state-red{border-color:color-mix(in srgb,var(--danger) 50%,transparent)}.tc-state-dot.tc-state-red.is-active,.tc-state-dot.tc-state-red:hover{background:var(--danger);border-color:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 18%,transparent)}.tc-state-dot.tc-state-yellow{border-color:color-mix(in srgb,#f59e0b 55%,transparent)}.tc-state-dot.tc-state-yellow.is-active,.tc-state-dot.tc-state-yellow:hover{background:#f59e0b;border-color:#f59e0b;box-shadow:0 0 0 3px color-mix(in srgb,#f59e0b 22%,transparent)}.tc-state-dot.tc-state-green{border-color:color-mix(in srgb,#16a34a 50%,transparent)}.tc-state-dot.tc-state-green.is-active,.tc-state-dot.tc-state-green:hover{background:#16a34a;border-color:#16a34a;box-shadow:0 0 0 3px color-mix(in srgb,#16a34a 22%,transparent)}.tc-state-dot.is-active{transform:scale(1.05)}.tc-state-readonly{display:inline-block;width:16px;height:16px;border-radius:50%;flex-shrink:0;margin-top:4px;border:2px solid var(--border);background:var(--surface-muted)}.tc-state-readonly.tc-state-red{background:var(--danger);border-color:var(--danger)}.tc-state-readonly.tc-state-yellow{background:#f59e0b;border-color:#f59e0b}.tc-state-readonly.tc-state-green{background:#16a34a;border-color:#16a34a}.tc-concept-info{flex:1;min-width:0}.tc-concept-label{display:block;font-size:15px;font-weight:800;color:var(--ink);line-height:1.35}.tc-concept.is-done .tc-concept-label{text-decoration:line-through;opacity:0.6}.tc-concept-desc{display:block;margin-top:6px;font-size:13px;font-weight:500;color:var(--muted);line-height:1.5}.tc-teach-btn{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:10px;background:var(--surface-subtle);color:var(--primary);cursor:pointer;transition:background 0.15s,border-color 0.15s}.tc-teach-btn:hover{background:color-mix(in srgb,var(--primary) 10%,var(--surface));border-color:var(--primary)}.tc-teach-btn svg{width:14px;height:14px}.tc-loading{display:flex;align-items:center;gap:10px;padding:16px;font-size:13px;font-weight:600;color:var(--muted)}.tc-loading-spinner{width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin 0.6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.tc-error{padding:12px 16px;font-size:13px;color:#dc2626}#ai-teach-panel{display:grid;gap:14px}#ai-teach-panel .panel-header{display:grid;grid-template-columns:minmax(180px,0.22fr) minmax(0,1fr);align-items:start;margin-bottom:0}#ai-teach-panel .panel-header>div:first-child{min-width:0}#ai-teach-panel .panel-header h2{max-width:none;line-height:1.15}#teach-output{display:none}.teach-layout{display:grid;grid-template-columns:minmax(240px,300px) minmax(0,1fr);gap:calc(18px * var(--space-scale));align-items:start}@media (max-width: 1180px){.teach-layout{grid-template-columns:1fr}}.teach-history-panel{display:grid;gap:12px;padding:18px}.teach-history-list{display:grid;gap:10px}.history-empty{border:1px dashed var(--border);border-radius:var(--radius);color:var(--muted);padding:14px;font-size:13px;line-height:1.45}.teach-history-item{display:grid;gap:5px;width:100%;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--ink);padding:12px;text-align:left;cursor:pointer}.teach-history-item:hover,.teach-history-item.active{border-color:var(--primary);background:var(--primary-soft)}.teach-history-item strong{font-size:13px}.teach-history-item span,.teach-history-item small{color:var(--ink-soft);font-size:12px;line-height:1.35}.teach-history-item em{color:var(--primary);font-size:12px;font-style:normal;font-weight:800}.teach-lesson-picker{display:grid;gap:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle);padding:14px}.teach-lesson-picker[hidden]{display:none}.teach-picker-header{display:flex;justify-content:space-between;gap:10px;align-items:center}.teach-lessons-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;max-height:280px;overflow:auto}.teach-lesson-item{display:grid;gap:6px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--ink);padding:12px;text-align:left;cursor:pointer}.teach-lesson-item:hover,.teach-lesson-item.active{border-color:var(--primary);background:var(--primary-soft)}.teach-lesson-item strong{font-size:14px}.teach-lesson-item span{color:var(--ink-soft);font-size:12px}.teach-room{min-height:620px}.teach-toolbar,.teach-composer{display:flex;gap:10px;align-items:flex-end}.teach-toolbar{display:grid;grid-template-columns:repeat(auto-fit,minmax(138px,1fr));flex:1 1 auto;align-items:end;gap:10px;width:100%}.teach-toolbar .active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.teach-style-select{display:grid;gap:4px;min-width:0}.teach-style-select span{color:var(--muted);font-size:11px;font-weight:900;letter-spacing:0.08em;text-transform:uppercase}.teach-style-select select{width:100%;min-height:42px;border-radius:10px;font-weight:850}.teach-toolbar button{width:100%;min-height:42px;justify-content:center}.voice-disclosure{align-self:center;color:var(--muted);font-size:12px;font-weight:700}.teach-chat{display:grid;align-content:start;gap:16px;min-height:360px;max-height:58vh;overflow:auto;border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 5%,transparent),transparent 34%),var(--surface-subtle);padding:18px}.teach-message{display:flex}.teach-bubble-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.teach-read-btn{flex:0 0 auto;min-height:34px;padding:7px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface-subtle);color:var(--primary);font-size:12px;font-weight:900;cursor:pointer}.teach-message.student{justify-content:flex-end}.teach-bubble{width:min(880px,100%);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:16px;box-shadow:var(--shadow-sm)}.teach-bubble-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.teach-bubble-head-left{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.teach-turn-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 8px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:0.04em;text-transform:uppercase;background:color-mix(in srgb,var(--ink) 6%,var(--surface));color:var(--muted);border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);cursor:help}.teach-turn-chip-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.teach-turn-wrap{position:relative}.teach-turn-wrap .teach-bubble{border-left-width:3px}.teach-turn-explain .teach-turn-chip{background:color-mix(in srgb,var(--primary, #3d6b56) 14%,var(--surface));color:color-mix(in srgb,var(--primary, #3d6b56) 70%,var(--ink));border-color:color-mix(in srgb,var(--primary, #3d6b56) 28%,transparent)}.teach-turn-wrap-explain .teach-bubble{border-left-color:color-mix(in srgb,var(--primary, #3d6b56) 50%,var(--border))}.teach-turn-question .teach-turn-chip{background:color-mix(in srgb,var(--info, #5b8bd5) 14%,var(--surface));color:color-mix(in srgb,var(--info, #5b8bd5) 80%,var(--ink));border-color:color-mix(in srgb,var(--info, #5b8bd5) 28%,transparent)}.teach-turn-wrap-question .teach-bubble{border-left-color:color-mix(in srgb,var(--info, #5b8bd5) 60%,var(--border))}.teach-turn-worked_example .teach-turn-chip{background:color-mix(in srgb,var(--accent, #d76148) 14%,var(--surface));color:color-mix(in srgb,var(--accent, #d76148) 70%,var(--ink));border-color:color-mix(in srgb,var(--accent, #d76148) 28%,transparent)}.teach-turn-wrap-worked_example .teach-bubble{border-left-color:color-mix(in srgb,var(--accent, #d76148) 55%,var(--border))}.teach-turn-check .teach-turn-chip{background:color-mix(in srgb,var(--warning, #c9941e) 16%,var(--surface));color:color-mix(in srgb,var(--warning, #c9941e) 70%,var(--ink));border-color:color-mix(in srgb,var(--warning, #c9941e) 30%,transparent)}.teach-turn-wrap-check .teach-bubble{border-left-color:color-mix(in srgb,var(--warning, #c9941e) 55%,var(--border));background:color-mix(in srgb,var(--warning, #c9941e) 3%,var(--surface))}.teach-turn-recap .teach-turn-chip{background:color-mix(in srgb,var(--success, #16a34a) 14%,var(--surface));color:color-mix(in srgb,var(--success, #16a34a) 75%,var(--ink));border-color:color-mix(in srgb,var(--success, #16a34a) 28%,transparent)}.teach-turn-wrap-recap .teach-bubble{border-left-color:color-mix(in srgb,var(--success, #16a34a) 55%,var(--border))}.teach-plan-bubble{background:color-mix(in srgb,var(--primary) 4%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 25%,var(--border))}.teach-plan-head{margin-bottom:14px}.teach-plan-head .eyebrow{color:var(--primary);font-size:11px;font-weight:850;letter-spacing:0.1em;text-transform:uppercase}.teach-plan-head strong{display:block;margin-top:4px;font-size:20px;font-weight:800;color:var(--ink);letter-spacing:-0.01em}.teach-plan-head p{margin:6px 0 0;color:var(--ink-soft);font-size:14px}.teach-plan-head em{color:var(--ink);font-style:normal;font-weight:700}.teach-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}@media (max-width: 720px){.teach-plan-grid{grid-template-columns:1fr}}.teach-plan-option{display:grid;grid-template-rows:auto auto 1fr auto;gap:6px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;transition:border-color 160ms ease,background-color 160ms ease,transform 160ms ease,box-shadow 160ms ease}.teach-plan-option:hover:not(:disabled){border-color:color-mix(in srgb,var(--primary) 50%,var(--border));background:color-mix(in srgb,var(--primary) 6%,var(--surface));transform:translateY(-1px);box-shadow:0 6px 20px color-mix(in srgb,var(--primary) 14%,transparent)}.teach-plan-option:disabled{opacity:0.55;cursor:not-allowed}.teach-plan-option strong{font-size:15px;font-weight:800;color:var(--ink);letter-spacing:-0.005em}.teach-plan-option span{font-size:13px;color:var(--ink-soft);line-height:1.4}.teach-plan-option small{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:0.08em}.teach-plan-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:color-mix(in srgb,var(--ink) 5%,var(--surface));color:var(--ink)}.teach-plan-icon svg{width:18px;height:18px}.teach-plan-icon-weak{background:color-mix(in srgb,var(--accent, #d76148) 16%,var(--surface));color:color-mix(in srgb,var(--accent, #d76148) 80%,var(--ink))}.teach-plan-icon-topic{background:color-mix(in srgb,var(--primary) 16%,var(--surface));color:color-mix(in srgb,var(--primary) 80%,var(--ink))}.teach-plan-icon-free{background:color-mix(in srgb,var(--info, #5b8bd5) 16%,var(--surface));color:color-mix(in srgb,var(--info, #5b8bd5) 80%,var(--ink))}.teach-plan-footer{margin:14px 0 0;font-size:12px;color:var(--muted)}.teach-plan-footer-warning{color:color-mix(in srgb,var(--warning, #c9941e) 85%,var(--ink));font-weight:700}.teach-message.student .teach-bubble{max-width:720px;border-color:color-mix(in srgb,var(--primary) 35%,var(--border));background:var(--primary-soft)}body.theme-dark .teach-message.student .teach-bubble{background:color-mix(in srgb,var(--primary) 14%,#161616);border-color:color-mix(in srgb,var(--primary) 55%,var(--border));color:#f4f1ea}body.theme-dark .teach-message.student .teach-bubble>strong,body.theme-dark .teach-message.student .teach-bubble>b{color:#a4d4b8}body.theme-dark .teach-message.student .teach-bubble p,body.theme-dark .teach-message.student .teach-bubble li,body.theme-dark .teach-message.student .teach-bubble span{color:#f1f5f9}.teach-bubble>strong{display:block;margin-bottom:8px;color:var(--ink);font-size:13px;text-transform:uppercase}.read-aloud-transcript{max-height:140px;overflow:auto;margin-top:12px;padding:12px;border:1px solid color-mix(in srgb,var(--primary) 32%,var(--border));border-radius:14px;background:var(--surface-subtle);color:var(--ink-soft);font-weight:800;line-height:1.75}.read-aloud-transcript span{padding:2px 3px;border-radius:5px}.read-aloud-transcript .is-reading{background:var(--primary);color:white}.understanding-check{display:grid;gap:4px;margin-top:12px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--success) 35%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--success) 10%,var(--surface))}.understanding-check strong{color:var(--ink)}.understanding-check span{color:var(--ink-soft);font-weight:800}.immersive-teach{display:grid;gap:14px}.teach-blocks{display:grid;gap:12px}.teach-block-heading{margin:4px 0 0;color:var(--ink);line-height:1.18}h2.teach-block-heading{font-size:24px}h3.teach-block-heading,h4.teach-block-heading{font-size:17px}.teach-list-item{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:start;color:var(--ink-soft);line-height:1.55}.teach-list-index,.teach-list-dot{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:12px;font-weight:900}.teach-list-dot::before{width:7px;height:7px;border-radius:999px;background:currentColor;content:""}.teach-quote{margin:0;border-left:4px solid var(--primary);border-radius:var(--radius);background:var(--surface-subtle);padding:13px 14px}.teach-quote p{margin:0;color:var(--ink);line-height:1.55}.teach-quote cite{display:block;margin-top:8px;color:var(--muted);font-size:12px;font-style:normal}.teach-source-toggle{justify-self:start;border:1px solid var(--border);border-radius:999px;background:var(--surface-subtle);color:var(--primary);cursor:pointer;font-size:13px;font-weight:800;padding:8px 12px}.teach-source-toggle:hover{border-color:var(--primary);background:var(--primary-soft)}.teach-source-panel{display:grid;gap:10px}.teach-source-panel[hidden]{display:none}.teach-image-block{display:grid;gap:8px;margin:0}.teach-image-block img{width:100%;max-height:360px;object-fit:contain;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle)}.teach-image-block figcaption{color:var(--ink-soft);font-size:13px}.teach-thinking-bubble{max-width:460px}.thinking-row{display:flex;gap:7px;align-items:center}.thinking-row span{width:8px;height:8px;border-radius:999px;background:var(--primary);animation:teachTyping 1s infinite ease-in-out}.thinking-row span:nth-child(2){animation-delay:0.15s}.thinking-row span:nth-child(3){animation-delay:0.3s}.thinking-row p{margin:0 0 0 6px;color:var(--ink-soft);font-size:14px}@keyframes teachTyping{0%,80%,100%{opacity:0.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-4px)}}.teach-explanation{display:grid;gap:10px;color:var(--ink-soft);font-size:17px;line-height:1.65}.teach-emphasis{margin:4px 0;color:var(--ink);font-size:26px;font-weight:900;line-height:1.2}.teach-bubble strong,.teach-bubble b{color:var(--ink);font-weight:900}.teach-bubble mark{border-radius:6px;background:color-mix(in srgb,var(--warning) 32%,transparent);color:var(--ink);padding:1px 5px}.teach-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.teach-grid section{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle);padding:13px}.teach-grid h4{margin-bottom:8px;color:var(--primary);font-size:13px;text-transform:uppercase}.teach-grid ul,.teach-grid ol{margin:0;padding-left:18px;color:var(--ink-soft)}.teach-grid li+li{margin-top:7px}.teach-composer .field{flex:1}.teach-composer .btn-primary{min-width:128px;min-height:54px}.settings-layout{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:calc(18px * var(--space-scale));align-items:start}.settings-panel{grid-column:span 12;min-width:0;padding:calc(22px * var(--space-scale));align-self:start}.settings-panel .panel-header{min-height:64px;align-items:center}.settings-ai-model-panel{grid-column:1 / -1}.settings-layout>.settings-panel:nth-of-type(2){grid-column:span 8}.settings-layout>.settings-panel:nth-of-type(3){grid-column:span 4}.settings-layout>.settings-panel:nth-of-type(4){grid-column:1 / -1}.settings-plan-chip{width:fit-content;padding:7px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface-subtle);color:var(--primary);font-size:12px;font-weight:900}.settings-locked-control{position:relative}.settings-locked-control.is-locked select{opacity:0.58}.settings-model-routes{margin:16px 0}.settings-model-routes>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}.settings-model-routes dt{color:var(--muted)}.settings-model-routes dd{margin:0;font-weight:600;overflow-wrap:anywhere}.settings-model-tiers{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 14px}.settings-tier{padding:8px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface-muted);color:var(--muted);font-size:12px;font-weight:900}.settings-tier.is-included{border-color:color-mix(in srgb,var(--success) 34%,var(--border));background:var(--success-soft);color:var(--success)}.attention-nudge{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 38%,color-mix(in srgb,var(--primary) 22%,transparent),transparent 34%),rgba(3,7,18,0.82)}.attention-nudge[hidden]{display:none}.attention-nudge-card{display:grid;justify-items:center;gap:18px;width:min(1040px,94vw);min-height:min(560px,74vh);padding:clamp(28px,6vw,72px);border:4px solid color-mix(in srgb,var(--primary) 52%,white);border-radius:28px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 92%,white),color-mix(in srgb,var(--primary-soft) 54%,var(--surface))),var(--surface);color:var(--ink);text-align:center;box-shadow:0 40px 120px rgba(0,0,0,0.42);animation:attentionPop 260ms ease-out}.attention-nudge-card p:first-child{margin:0;padding:10px 16px;border-radius:999px;background:var(--primary);color:white;font-size:clamp(18px,2.2vw,30px);font-weight:1000;letter-spacing:0;text-transform:uppercase}.attention-nudge-card h2{max-width:900px;margin:0;color:var(--ink);font-size:clamp(58px,9vw,132px);font-weight:1000;line-height:0.94;text-transform:uppercase}.attention-nudge-card p:not(:first-child){max-width:820px;margin:0;color:var(--ink-soft);font-size:clamp(28px,4.2vw,58px);font-weight:950;line-height:1.05}.attention-nudge-card .btn-primary{min-width:min(420px,82vw);min-height:72px;font-size:clamp(22px,3vw,34px);font-weight:1000}@keyframes attentionPop{from{opacity:0;transform:scale(0.94)}to{opacity:1;transform:scale(1)}}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(16px * var(--space-scale));margin-bottom:calc(18px * var(--space-scale))}.settings-panel-copy{margin:0 0 14px;color:var(--ink-soft);font-weight:800;line-height:1.45}.settings-learning-panel textarea{min-height:124px;resize:vertical}.interest-chip-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:12px}.interest-chip-row button{min-height:36px;padding:8px 12px;border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--surface) 92%,var(--primary-soft));color:var(--ink);font-weight:850;cursor:pointer}.interest-chip-row button:hover{border-color:var(--primary);color:var(--primary)}.setting-check{display:flex;align-items:flex-start;gap:10px;min-height:44px;color:var(--ink-soft);font-weight:800}.setting-check>span{display:grid;gap:3px}.setting-check small{max-width:56ch;line-height:1.4}.setting-check input{width:18px;height:18px;accent-color:var(--primary)}.settings-choice-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.settings-grid-tight{margin-top:14px}.settings-quick-actions{margin-bottom:0}.settings-choice-row .active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.settings-warning{margin-bottom:14px;border:1px solid color-mix(in srgb,var(--warning) 45%,var(--border));border-radius:var(--radius);background:var(--warning-soft);color:var(--ink-soft);padding:12px 14px;font-size:13px;font-weight:750;line-height:1.45}.source-check-warning{margin-top:14px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--warning) 45%,var(--border));border-radius:14px;background:var(--warning-soft);color:var(--ink-soft);font-size:13px;font-weight:780;line-height:1.45}.retention-preview{display:grid;gap:6px;margin-top:14px;padding:14px;border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));border-radius:var(--radius);background:var(--primary-soft)}.retention-preview strong{color:var(--ink);font-size:15px}.retention-preview span{color:var(--ink-soft);font-size:13px;font-weight:780;line-height:1.4}#adhd-stars{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:0;transition:opacity 180ms ease}body.adhd-mode #adhd-stars{opacity:0.22}.star{position:absolute;border-radius:999px;animation:drift linear infinite}body.adhd-mode{--primary: #7dd3fc;--primary-hover: #bae6fd;--primary-soft: rgba(125, 211, 252, 0.16);--focus-outline: 4px}body.adhd-mode .brand-mark{filter:drop-shadow(0 2px 7px rgba(16,24,40,0.16)) saturate(1.12)}body[data-accent=blue]{--primary: #0b6bcb;--primary-hover: #0859ad;--primary-soft: #e8f2ff;--focus: rgba(11, 107, 203, 0.28)}body[data-accent=teal]{--primary: #0f766e;--primary-hover: #115e59;--primary-soft: #ccfbf1;--focus: rgba(15, 118, 110, 0.28)}body[data-accent=green]{--primary: #15803d;--primary-hover: #166534;--primary-soft: #dcfce7;--focus: rgba(21, 128, 61, 0.28)}body[data-accent=purple]{--primary: #7c3aed;--primary-hover: #6d28d9;--primary-soft: #ede9fe;--focus: rgba(124, 58, 237, 0.28)}body[data-accent=orange]{--primary: #c2410c;--primary-hover: #9a3412;--primary-soft: #ffedd5;--focus: rgba(194, 65, 12, 0.28)}body[data-accent=pink]{--primary: #be185d;--primary-hover: #9d174d;--primary-soft: #fce7f3;--focus: rgba(190, 24, 93, 0.28)}body[data-focus-preset=adhd-calm],body[data-focus-preset=adhd-structured]{--border-strong: color-mix(in srgb, var(--primary) 46%, var(--border))}body[data-focus-preset=adhd-calm] .panel,body[data-focus-preset=adhd-structured] .panel{border-width:2px}body[data-focus-preset=adhd-structured] .panel,body[data-focus-preset=high-contrast] .panel{box-shadow:none}body[data-focus-preset=adhd-structured] .panel-header,body[data-focus-preset=high-contrast] .panel-header{border-bottom-width:2px}body[data-focus-preset=adhd-structured] .eyebrow,body[data-focus-preset=high-contrast] .eyebrow{display:inline-flex;width:fit-content;padding:4px 7px;border-radius:6px;background:var(--primary-soft);color:var(--primary)}body[data-focus-preset=adhd-calm] .output,body[data-focus-preset=adhd-structured] .output{font-size:calc(16px * var(--font-scale));line-height:1.7}body[data-focus-preset=adhd-calm] button,body[data-focus-preset=adhd-structured] button,body[data-focus-preset=high-contrast] button{min-height:48px}body[data-focus-preset=high-contrast]{--bg: #ffffff;--surface: #ffffff;--surface-subtle: #f3f4f6;--ink: #030712;--ink-soft: #111827;--muted: #374151;--border: #111827;--border-strong: #030712;--focus: rgba(245, 158, 11, 0.62);--focus-outline: 5px;--shadow-sm: none;--shadow-md: none;--shadow-lg: none}body.theme-dark[data-focus-preset=high-contrast]{--bg: #000000;--surface: #0d0d0d;--surface-subtle: #1a1a1a;--ink: #ffffff;--ink-soft: #f9fafb;--muted: #d1d5db;--border: #e5e7eb;--border-strong: #ffffff}body[data-motion=reduced] *,body[data-motion=off] *{transition-duration:0.01ms!important}body[data-motion=reduced] .fc3d-inner,body[data-motion=off] .fc3d-inner,body[data-motion=reduced] .fc-card-wrap,body[data-motion=off] .fc-card-wrap,body[data-motion=reduced] .cm-card-inner,body[data-motion=off] .cm-card-inner{transition-duration:200ms!important}body[data-motion=reduced] .star,body[data-motion=off] .star,body[data-motion=off] #adhd-stars,body[data-motion=off] .lux-aurora,body[data-motion=off] .lux-particles span,body[data-motion=off] .lux-logo-ring,body[data-motion=off] .lux-logo-ring::before,body[data-motion=off] .welcome-animation{animation:none!important}body[data-motion=off] #adhd-stars{opacity:0}body[data-motion=reduced] .pm-dust,body[data-motion=off] .pm-dust{animation:none!important;opacity:var(--pm-dust-op, 0.4)}body[data-motion=off] .pm-dust{display:none}body[data-motion=reduced] .pm-star-drift,body[data-motion=off] .pm-star-drift{will-change:auto;transform:none!important}@keyframes panel-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes card-up{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.mobile-bottom-nav{display:none}@media (max-width: 768px){.mobile-bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:30;height:60px;padding-bottom:env(safe-area-inset-bottom,0);background:var(--surface);border-top:1px solid var(--border);box-shadow:0 -2px 12px rgba(0,0,0,0.06);justify-content:space-around;align-items:stretch}.mobile-bottom-nav .bnav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;flex:1;border:none;background:none;color:var(--muted);font-size:10px;font-weight:700;cursor:pointer;padding:6px 0;position:relative;transition:color 0.15s;-webkit-tap-highlight-color:transparent}.mobile-bottom-nav .bnav-item svg{width:22px;height:22px;flex-shrink:0}.mobile-bottom-nav .bnav-item.is-active{color:var(--primary)}.mobile-bottom-nav .bnav-item.is-active::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:32px;height:3px;border-radius:0 0 3px 3px;background:var(--primary)}.app-main{padding-bottom:calc(96px + env(safe-area-inset-bottom,0))!important}}@keyframes drift{from{transform:translate(0,0)}to{transform:translate(20px,-120vh)}}@keyframes welcome-card-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes welcome-path-pulse{0%,100%{opacity:0.32}50%{opacity:0.9}}@keyframes lux-card-in{0%{opacity:0;transform:translateY(28px) scale(0.97);filter:blur(8px)}100%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes lux-mark-in{0%{opacity:0;transform:scale(0.8) translateY(6px);filter:blur(4px)}100%{opacity:0.92;transform:scale(1) translateY(0);filter:blur(0) drop-shadow(0 0 14px rgba(126,184,154,0.45))}}@keyframes auth-step-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes lux-spin{to{transform:rotate(1turn)}}@keyframes lux-dot-pulse{0%,100%{opacity:0.22;transform:scale(0.75);background:rgba(255,255,255,0.22)}50%{opacity:1;transform:scale(1.2);background:#4ade80;box-shadow:0 0 8px rgba(74,222,128,0.6)}}@keyframes lux-fade-out{to{opacity:0}}@keyframes purchase-glow{from{transform:translate3d(-10px,8px,0) scale(0.98)}to{transform:translate3d(12px,-10px,0) scale(1.04)}}@keyframes purchase-shine{0%{transform:translateX(-120%)}100%{transform:translateX(120%)}}@keyframes purchase-pop{0%{opacity:0;transform:scale(0.58)}72%{opacity:1;transform:scale(1.08)}100%{transform:scale(1)}}@keyframes purchase-ring{from{opacity:0.72;transform:scale(0.86)}to{opacity:0;transform:scale(1.34)}}@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:0.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:0.001ms!important}}.reading-ruler{position:fixed;left:0;right:0;top:0;z-index:120;height:28px;pointer-events:none;background:linear-gradient(180deg,transparent 0 10px,color-mix(in srgb,var(--primary) 30%,transparent) 10px 18px,transparent 18px 100%);box-shadow:0 -80px 0 80px rgba(0,0,0,0.04),0 80px 0 80px rgba(0,0,0,0.04)}@media (max-width: 1280px){.header-inner{gap:10px;padding:8px 18px}.header-xp-display{display:none!important}.menu-toggle .menu-toggle-label-stack{display:none}.menu-toggle{padding:6px;gap:0}}@media (max-width: 1080px){.header-inner{grid-template-columns:auto minmax(0,1fr) auto;justify-items:stretch}.workspace-layout,.dashboard-layout,.study-home-grid,.study-home-grid:has(.home-empty-hero),.home-empty-hero,.study-session-layout,.lesson-context-bar,.teach-layout,.settings-layout,.account-page-grid,.teach-grid{grid-template-columns:1fr}.study-home-grid>.home-analytics-card,.study-home-grid>.home-goals-card,.study-home-grid>.home-timeline-card,.study-home-grid>.home-achievements-card,.study-home-grid>.home-side-card,.study-home-grid>.home-recent-card,.study-home-grid>.home-folders-card{grid-column:auto}.home-folder-grid,.home-recent-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.settings-layout>.settings-panel,.settings-layout>.settings-panel:nth-of-type(2),.settings-layout>.settings-panel:nth-of-type(3),.settings-layout>.settings-panel:nth-of-type(4){grid-column:1}.account-usage-card,.account-billing-panel{grid-column:auto}.admin-layout{grid-template-columns:1fr}.admin-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-bar-chart{height:90px;gap:2px}.admin-retention-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-hourly-chart{grid-template-columns:repeat(12,1fr)}.knowledge-columns{grid-template-columns:1fr}.knowledge-builder-card{position:relative;top:auto}.admin-metrics-layout{grid-template-columns:1fr}.admin-referral-form{grid-template-columns:1fr}.account-billing-panel .billing-option-list:not(.compact){grid-template-columns:repeat(3,minmax(0,1fr))}.info-grid{grid-template-columns:1fr}.bug-report-card{grid-column:auto}.lesson-context-meta{justify-self:start;max-width:100%}.lesson-context-status{text-align:left}.study-visual-grid{grid-template-columns:1fr}.home-focus-card h2{max-width:none}.home-empty-hero{min-height:auto}.side-column{grid-template-columns:repeat(2,minmax(0,1fr))}.achievement-grid,.quiz-next-steps>div{grid-template-columns:1fr}.analytics-weekly-wrap{grid-template-columns:1fr}.analytics-comparison{gap:12px}.analytics-quick-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 760px){.welcome-gate{padding:16px;align-items:start;overflow-y:auto}.welcome-stage{min-height:auto}.welcome-panel{padding:20px}.welcome-intro{padding:0}.landing-shell{grid-template-columns:1fr;padding:22px}.landing-copy h1{max-width:100%;font-size:46px}.landing-showcase{border-radius:20px}.landing-product-grid,.landing-proof-row{grid-template-columns:1fr}.landing-product-card.is-main{min-height:0}.landing-product-card.is-main strong{font-size:32px}.landing-progress-row{align-items:flex-start;flex-direction:column}.landing-actions button{width:100%}.welcome-signup,.welcome-signup.is-login{position:relative;width:100%;grid-template-columns:1fr;padding:0;overflow-y:auto}.welcome-auth-side{min-height:220px;padding:22px}.welcome-auth-side h2{max-width:100%;margin-bottom:14px;font-size:28px}.welcome-auth-preview{display:none}.welcome-auth-main{padding:22px}.welcome-auth-main>h2{font-size:34px}.home-empty-copy h2{max-width:100%;font-size:42px}.home-empty-visual{min-height:360px}.study-orbit-card{min-width:140px}.hero-stats{width:100%;justify-content:stretch}.hero-stats span{flex:1 1 120px}.welcome-selling-points{grid-template-columns:1fr}.welcome-selling-points div{min-height:0}.welcome-plan-options{grid-template-columns:1fr}.welcome-plan-head{flex-direction:column}.welcome-plan-head small{white-space:normal}.header-inner{grid-template-columns:auto minmax(0,1fr) auto;min-height:auto;gap:8px;padding:10px 14px}.menu-toggle{justify-self:start;min-width:44px;padding:6px;gap:0}.menu-toggle .menu-toggle-label-stack{display:none}.account-menu{grid-column:auto;justify-self:end}.side-menu{width:min(340px,calc(100vw - 22px));padding:18px}.account-menu-btn{justify-content:center;max-width:44px;width:44px;padding:6px}.account-menu-btn span:last-child{display:none}.app-main{padding:24px 16px 56px}.hero-strip{align-items:flex-start;flex-direction:column;gap:16px}.hero-stats{justify-content:flex-start}.account-billing-panel .account-billing-head{align-items:flex-start;flex-direction:column}.account-billing-panel .billing-option-list:not(.compact),.account-billing-panel .billing-option-list.compact{grid-template-columns:1fr;max-width:none}.admin-stat-grid{grid-template-columns:1fr}.account-billing-panel .billing-option{min-height:78px;flex-direction:row;align-items:center}.credit-limit-actions{grid-template-columns:1fr}.field-grid,.daily-goals-form,.lesson-library-controls,.settings-grid,.side-column,.summary-grid,.study-summary-stats,.study-summary-stats.compact,.analytics-quick-cards{grid-template-columns:1fr}.summary-grid>*:last-child{grid-column:auto}.inline-section-header{flex-direction:column}.record-controls,.button-row,.lesson-actions,.study-actions,.teach-composer{flex-direction:column;align-items:stretch}.record-controls>button,.button-row>button,.lesson-actions>button,.study-actions>button,.teach-composer>button,.action-bar .btn-primary,.panel-small>button,#teach-ask-btn{width:100%}#ai-teach-panel .panel-header{grid-template-columns:1fr}.teach-toolbar{grid-template-columns:1fr}.home-analytics-card{padding:20px;gap:18px}.analytics-week-ring{width:148px;height:148px}.analytics-day-bars{gap:6px}.analytics-day i{min-height:48px}}@media (max-width: 480px){h1{font-size:30px}.panel-main,.panel-small,.results-panel,.knowledge-checklist-panel,#ai-teach-panel,.dashboard-layout>.panel{padding:18px}.brand-subtitle{display:none}.account-panel-actions{grid-template-columns:1fr}.header-inner{grid-template-columns:auto 1fr auto;gap:8px;align-items:center;flex-wrap:nowrap}.menu-toggle .menu-toggle-label-stack,.menu-toggle>span:last-child{display:none}.menu-toggle{padding:6px!important;min-width:0;gap:0}.header-account-strip,.header-xp-display{display:none!important}.account-menu-btn{padding:6px 8px!important}.account-menu-btn span:not(.account-avatar){display:none}}.verify-page{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 18% 18%,color-mix(in srgb,var(--primary-soft) 80%,transparent),transparent 42%),radial-gradient(circle at 82% 12%,color-mix(in srgb,var(--surface-muted) 70%,transparent),transparent 38%),linear-gradient(180deg,color-mix(in srgb,var(--primary-soft) 42%,var(--bg)),var(--bg))}.verify-card{width:min(520px,100%);border:1px solid color-mix(in srgb,var(--border-strong) 58%,transparent);border-radius:24px;background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:var(--shadow-lg);padding:34px;text-align:center;display:grid;gap:16px;animation:verify-card-in 420ms ease both}.verify-icon{width:76px;height:76px;margin:0 auto;border-radius:999px;display:grid;place-items:center;background:var(--success-soft);color:var(--success);font-size:34px;font-weight:900}.verify-icon.error{background:var(--danger-soft);color:var(--danger)}.verify-card h1{max-width:none;font-size:clamp(28px,4vw,42px);letter-spacing:-0.035em}.verify-card p{color:var(--ink-soft);font-size:16px}.verify-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:8px}.verify-actions a{min-height:44px;padding:12px 16px;border-radius:10px;font-weight:800}.verify-primary{background:var(--primary);color:#fff}.verify-primary:hover{background:var(--primary-hover)}.verify-secondary{border:1px solid var(--border);background:var(--surface-subtle);color:var(--ink-soft)}.verify-secondary:hover{border-color:var(--border-strong);color:var(--ink)}@keyframes verify-card-in{from{opacity:0;transform:translateY(16px) scale(0.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes account-panel-in{from{opacity:0;transform:translateY(-6px) scale(0.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes menu-slide-in{0%{opacity:0;transform:translateX(-100%) scale(0.96);filter:blur(6px)}55%{opacity:1;transform:translateX(6px) scale(1.005);filter:blur(0)}80%{transform:translateX(-2px) scale(1)}100%{opacity:1;transform:translateX(0) scale(1);filter:blur(0)}}@keyframes menu-backdrop-fade{from{opacity:0}to{opacity:1}}@keyframes menu-item-rise{0%{opacity:0;transform:translateX(-24px)}60%{opacity:1;transform:translateX(3px)}100%{opacity:1;transform:translateX(0)}}@keyframes edge-trigger-fill{from{bottom:100%}to{bottom:0}}@keyframes status-pulse{0%,100%{transform:scale(0.7);opacity:0.55}50%{transform:scale(1);opacity:1}}.home-contract-card progress,.home-goals-card progress{width:100%;height:8px;margin:0 0 4px}.home-contract-card progress{margin:4px 0 18px}.contract-goal-list{display:grid;gap:10px;margin:0}.home-contract-card .contract-goal-list{min-height:56px}.contract-goal{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-subtle);font-weight:800}.contract-goal.is-done{border-color:rgba(40,139,70,0.45);background:rgba(40,139,70,0.12)}.contract-goal.is-done span{text-decoration:line-through;color:var(--muted)}.study-contract-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;margin-top:10px}.study-contract-form .field{min-width:0}.study-contract-form button{min-width:120px;min-height:54px}.home-contract-card>small{display:block;margin-top:2px;color:var(--muted);font-weight:800;line-height:1.35}.home-catchup-card{align-self:start;gap:14px;padding:20px;border-color:color-mix(in srgb,var(--primary) 30%,var(--border));background:radial-gradient(circle at 90% 8%,color-mix(in srgb,var(--primary) 14%,transparent),transparent 34%),linear-gradient(150deg,color-mix(in srgb,var(--surface) 95%,var(--primary-soft)),var(--surface))}.home-catchup-card p{margin:0;color:var(--muted);font-weight:800;line-height:1.45}.home-catchup-card h2{margin:0;color:var(--ink);font-size:clamp(32px,2.8vw,40px);line-height:1.06}.home-catchup-card .btn-secondary{justify-self:start;min-width:220px}.home-catchup-card .home-streak-pill{min-width:90px;padding:10px 12px}.home-catchup-card progress{width:100%;height:8px}.catchup-layout{align-items:start;grid-template-columns:minmax(0,1.35fr) minmax(300px,0.65fr)}.catchup-form{display:grid;gap:16px}.catchup-context-block,.catchup-context-form{display:grid;gap:12px}.catchup-context-block{padding:16px;border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border));border-radius:16px;background:color-mix(in srgb,var(--primary-soft) 24%,var(--surface))}.catchup-context-block h3,.catchup-context-block p{margin:0}.catchup-context-block p:not(.eyebrow),.catchup-side-panel .settings-panel-copy{color:var(--muted);font-weight:800;line-height:1.45}.catchup-resource-list{display:grid;gap:10px;max-height:310px;overflow:auto;padding-right:4px}.catchup-resource-option,.catchup-resource-empty{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;min-height:64px;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.catchup-resource-empty{grid-template-columns:minmax(0,1fr) auto;color:var(--muted)}.catchup-resource-option.is-recommended{border-color:color-mix(in srgb,var(--success) 42%,var(--border));background:color-mix(in srgb,var(--success-soft) 34%,var(--surface))}.catchup-resource-option span,.catchup-resource-empty span{display:grid;gap:3px;min-width:0}.catchup-resource-option strong,.catchup-resource-empty strong{color:var(--ink);overflow-wrap:anywhere}.catchup-resource-option small,.catchup-resource-option em{color:var(--muted);font-size:12px;font-style:normal;font-weight:850;overflow-wrap:anywhere}.catchup-resource-option em{color:var(--success)}.catchup-builder-panel,.catchup-side-panel,.catchup-plan-panel{border-color:color-mix(in srgb,var(--primary) 24%,var(--border))}.catchup-builder-panel{background:radial-gradient(circle at 88% 8%,color-mix(in srgb,var(--primary) 10%,transparent),transparent 34%),var(--surface)}.catchup-plan-panel .panel-header{margin-bottom:2px}.catchup-plan-list{display:grid;gap:10px}.catchup-plan-item{display:grid;gap:4px;width:100%;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface-subtle);color:var(--ink);text-align:left}.catchup-plan-item.active{border-color:var(--primary);box-shadow:0 0 0 3px rgba(11,107,203,0.12)}.catchup-plan-item span{color:var(--muted);font-weight:800}.catchup-output{display:grid;gap:16px}.catchup-empty,.catchup-minimum,.catchup-evidence{padding:16px 18px;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle)}.catchup-empty p,.catchup-minimum span,.catchup-evidence p{margin:6px 0 0;color:var(--muted);font-weight:800;line-height:1.45}.catchup-evidence{display:grid;gap:12px}.catchup-evidence h3{margin:0}.catchup-evidence-grid{display:flex;flex-wrap:wrap;gap:8px}.catchup-evidence-pill{display:inline-grid;gap:2px;max-width:280px;padding:9px 11px;border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));border-radius:999px;background:var(--surface)}.catchup-evidence-pill strong,.catchup-evidence-pill small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catchup-evidence-pill small{color:var(--muted);font-size:11px;font-weight:850}.catchup-plan-head{display:flex;justify-content:space-between;gap:18px;align-items:start}.catchup-plan-head h3,.catchup-plan-head p{margin:0}.catchup-plan-head p{color:var(--muted);font-weight:800;line-height:1.45}.catchup-progress{min-width:120px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle);text-align:center}.catchup-progress strong{display:block;color:var(--ink);font-size:28px}.catchup-progress span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.catchup-today,.catchup-priorities{display:grid;gap:14px}.catchup-today{padding:16px;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--surface) 88%,var(--surface-subtle))}.catchup-section-head h3{margin:2px 0 0}.catchup-task-list{display:grid;gap:10px}.catchup-task{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle);min-height:76px}.catchup-task.is-done{border-color:rgba(40,139,70,0.42);background:rgba(40,139,70,0.1)}.catchup-task span{display:grid;gap:3px;min-width:0;overflow-wrap:anywhere}.catchup-task small,.catchup-task em{color:var(--muted);font-style:normal;font-weight:800}.catchup-priorities{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:stretch}.catchup-priority-column{display:grid;gap:10px;padding:14px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--surface) 86%,var(--surface-subtle))}.catchup-priority-column .eyebrow{margin:0}.catchup-topic{display:grid;gap:5px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-subtle);min-height:108px}.catchup-topic span,.catchup-topic small{color:var(--muted);font-weight:800;line-height:1.35;overflow-wrap:anywhere}.catchup-actions{display:flex;gap:12px;flex-wrap:wrap}.concept-map-section{grid-column:1 / -1}.concept-map{display:grid;gap:16px}.concept-node-cloud{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.concept-node{display:inline-flex;align-items:center;min-height:42px;padding:10px 14px;border:1px solid var(--border);border-radius:999px;background:var(--surface-subtle);font-weight:850}.concept-node.is-main{border-color:rgba(15,107,215,0.55);background:rgba(15,107,215,0.12);color:var(--primary)}body.theme-dark .concept-node.is-main{border-color:color-mix(in srgb,var(--primary) 55%,transparent);background:color-mix(in srgb,var(--primary) 16%,transparent)}.concept-links{display:grid;gap:8px;margin:0;padding:0;list-style:none}.concept-links li{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:10px 12px;border:1px solid var(--border);border-radius:10px}.concept-links span{color:var(--muted);font-weight:800}.mind-map-panel{overflow:hidden}.mind-map-output{display:grid;gap:18px}.mm-interactive{display:grid;grid-template-columns:1fr 300px;grid-template-rows:auto 1fr;gap:0;min-height:680px;border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));border-radius:20px;overflow:hidden;background:var(--surface)}.mm-toolbar{grid-column:1 / -1;display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 14px;border-bottom:1px solid var(--border);background:var(--surface-subtle)}.mm-toolbar-sep{width:1px;height:20px;background:var(--border);flex-shrink:0}.mm-tool{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:30px;padding:0 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink-soft);font-size:14px;font-weight:700;cursor:pointer;transition:background 0.15s,border-color 0.15s}.mm-tool:hover{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--surface));color:var(--primary)}.mm-search{width:160px;height:30px;padding:0 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink);font-size:13px;font-weight:600;outline:none;transition:border-color 0.15s}.mm-search:focus{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 14%,transparent)}.mm-search::placeholder{color:var(--muted)}.mm-legend{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.mm-legend-item{display:inline-flex;gap:5px;align-items:center;color:var(--ink-soft);font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:0.04em}.mm-legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.mm-stats{margin-left:auto;color:var(--muted);font-size:12px;font-weight:700;white-space:nowrap}.mm-viewport{position:relative;overflow:hidden;cursor:grab;background:linear-gradient(90deg,color-mix(in srgb,var(--primary) 4%,transparent) 1px,transparent 1px),linear-gradient(180deg,color-mix(in srgb,var(--primary) 4%,transparent) 1px,transparent 1px),radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--primary-soft) 40%,transparent),transparent 45%),linear-gradient(145deg,color-mix(in srgb,var(--surface) 97%,var(--primary-soft)),var(--surface));background-size:36px 36px,36px 36px,auto,auto}.mm-viewport:active{cursor:grabbing}.mm-svg{position:absolute;inset:0;width:1200px;height:1000px;transform-origin:0 0;pointer-events:none;overflow:visible}.mm-nodes{position:absolute;inset:0;width:1200px;height:1000px;transform-origin:0 0;overflow:visible}.mm-link{fill:none;stroke:color-mix(in srgb,var(--primary) 22%,var(--border));stroke-width:1.5;transition:stroke 0.2s,stroke-width 0.2s,opacity 0.25s}.mm-link.is-highlighted{stroke-width:2.5}.mm-link.is-dimmed{opacity:0.15}.mm-arrow{fill:color-mix(in srgb,var(--primary) 28%,var(--border));transition:fill 0.2s,opacity 0.25s}.mm-arrow.is-highlighted{fill:var(--primary)}.mm-arrow.is-dimmed{opacity:0.15}.mm-link-label{fill:var(--muted);font-size:10px;font-weight:700;pointer-events:none;transition:fill 0.2s,opacity 0.25s}.mm-link-label.is-highlighted{fill:var(--ink);font-weight:800}.mm-link-label.is-dimmed{opacity:0.15}.mm-node{position:absolute;display:grid;gap:3px;width:200px;padding:12px 14px;border:2px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:0 2px 8px rgba(0,0,0,0.05);transform:translate(-50%,-50%);cursor:pointer;user-select:none;transition:box-shadow 0.2s,opacity 0.25s}.mm-node:hover{box-shadow:0 4px 18px rgba(0,0,0,0.1);z-index:3}.mm-node.is-large{width:230px;padding:14px 16px}.mm-node.is-main{width:260px;padding:18px 20px;box-shadow:0 6px 24px rgba(0,0,0,0.12);z-index:4}.mm-node.is-selected{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 25%,transparent),0 4px 18px rgba(0,0,0,0.1);z-index:5}.mm-node.is-connected{z-index:3}.mm-node.is-dimmed{opacity:0.2}.mm-node.is-search-match{opacity:1;box-shadow:0 0 0 3px color-mix(in srgb,#f59e0b 30%,transparent),0 4px 18px rgba(0,0,0,0.1);z-index:5}.mm-node small{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:0.08em}.mm-node strong{color:var(--ink);font-size:14px;font-weight:750;line-height:1.2;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.mm-detail-header strong,.mm-detail-title{white-space:normal!important;overflow-wrap:anywhere;word-break:break-word}.mm-node.is-large strong{font-size:15px}.mm-node.is-main strong{font-size:18px;font-weight:850}.mm-node-badge{position:absolute;top:-6px;right:-6px;display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;color:#fff;font-size:10px;font-weight:900;box-shadow:0 1px 4px rgba(0,0,0,0.15)}.mm-detail-panel{display:grid;gap:12px;align-content:start;padding:20px 18px;border-left:1px solid var(--border);background:var(--surface-subtle);overflow-y:auto}.mm-detail-panel .eyebrow{margin:0;color:var(--primary);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:0.08em}.mm-detail-type{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:0.1em}.mm-detail-content h4{margin:0 0 8px;color:var(--ink);font-size:22px;font-weight:850;line-height:1.15}.mm-detail-content p{margin:0 0 10px;color:var(--ink-soft);font-size:14px;font-weight:600;line-height:1.5}.mm-detail-hint{color:var(--muted);font-size:13px;font-weight:700;font-style:italic}.mm-detail-conn-count{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:0.04em}.mm-detail-links{display:grid;gap:8px;margin:0;padding:0;list-style:none}.mm-detail-links li{display:grid;gap:3px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);font-size:14px;font-weight:700;color:var(--ink);overflow-wrap:anywhere;word-break:break-word;min-width:0}.mm-detail-links li strong{font-weight:850;overflow-wrap:anywhere;word-break:break-word}.mm-detail-relation{color:var(--muted);font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:0.06em}.mm-rich .mm-svg{width:1600px;height:1200px;overflow:visible}.mm-rich .mm-nodes{width:1600px;height:1200px;overflow:visible}.mm-node.is-small{width:130px;padding:8px 10px;border-width:1.5px}.mm-node.is-small strong{font-size:12px}.mm-node.is-small small{font-size:8px}.mm-node.is-collapsed{box-shadow:3px 3px 0 0 rgba(0,0,0,0.08),6px 6px 0 0 rgba(0,0,0,0.04)}.mm-expand-toggle{position:absolute;bottom:-8px;right:-8px;display:flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 5px;border:2px solid var(--border);border-radius:10px;background:var(--surface);color:var(--ink-soft);font-size:10px;font-weight:900;cursor:pointer;z-index:5;transition:background 0.15s,border-color 0.15s}.mm-expand-toggle:hover{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary)}.mm-cluster-bg{fill-opacity:0.06;stroke-opacity:0.15;stroke-width:2;stroke-dasharray:8 4}.mm-cluster-label{font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:0.08em;fill-opacity:0.7}.mm-link.is-cross{stroke-dasharray:6 3}.mm-paywall-overlay{position:absolute;inset:0;z-index:10;display:grid;place-items:center;background:color-mix(in srgb,var(--surface) 70%,transparent);border-radius:20px}.mm-paywall-card{display:grid;gap:12px;place-items:center;max-width:380px;padding:36px 32px;border:1px solid var(--border);border-radius:20px;background:var(--surface);box-shadow:var(--shadow-lg, 0 8px 32px rgba(0, 0, 0, 0.12));text-align:center}.mm-paywall-card .icon{width:40px;height:40px;color:var(--primary)}.mm-paywall-card h3{margin:0;color:var(--ink);font-size:22px;font-weight:850}.mm-paywall-card p{margin:0;color:var(--ink-soft);font-size:14px;font-weight:600;line-height:1.5}.mm-paywall-note{color:var(--muted);font-size:12px;font-weight:700;font-style:italic}.mm-paywall-upgrade{margin-top:4px}.mm-generate-bar{display:flex;gap:10px;align-items:center;margin-left:auto}.mm-generate-note{color:var(--muted);font-size:12px;font-weight:700}.mm-generate-working{color:var(--primary);font-size:13px;font-weight:750}.mm-generate-error{color:var(--danger, #ef4444);font-size:13px;font-weight:700}.mm-detail-section-label{display:block;margin:8px 0 4px;color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:0.06em}.mm-detail-children{display:grid;gap:6px}.mm-detail-child-item{display:grid;gap:2px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);cursor:pointer;transition:border-color 0.15s}.mm-detail-child-item:hover{border-color:var(--primary)}.mm-detail-child-item strong{font-size:13px;font-weight:800;color:var(--ink)}.mm-detail-child-item span{font-size:12px;color:var(--muted);line-height:1.4}.mm-detail-parent{padding:6px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);font-size:12px;color:var(--muted);cursor:pointer;transition:border-color 0.15s}.mm-detail-parent:hover{border-color:var(--primary)}.mm-detail-parent strong{color:var(--ink);font-weight:800}.mm-detail-link-item{cursor:pointer;transition:border-color 0.15s}.mm-detail-link-item:hover{border-color:var(--primary)}.mind-map-empty{display:grid;place-items:center;gap:12px;min-height:420px;padding:34px;border:1px dashed color-mix(in srgb,var(--primary) 36%,var(--border));border-radius:20px;background:color-mix(in srgb,var(--surface) 88%,var(--primary-soft));text-align:center}.mind-map-empty .icon{width:42px;height:42px;color:var(--primary)}.mind-map-empty strong{color:var(--ink);font-size:30px}.mind-map-empty p{max-width:54ch;margin:0;color:var(--ink-soft);font-weight:800;line-height:1.45}.study-voice-panel{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-subtle)}.study-voice-panel.is-on{border-color:rgba(15,107,215,0.5);background:rgba(15,107,215,0.1)}body.theme-dark .study-voice-panel.is-on{border-color:color-mix(in srgb,var(--primary) 50%,transparent);background:color-mix(in srgb,var(--primary) 14%,transparent)}.quiz-stuck-ladder{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.misconception-library{grid-column:1 / -1}.misconception-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.misconception-card{display:grid;gap:8px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-subtle)}.misconception-card small{color:var(--primary);font-weight:850;text-transform:uppercase;letter-spacing:0.08em}.misconception-card p,.misconception-card span{margin:0;color:var(--muted)}@media (max-width: 720px){.home-contract-card{min-height:0;padding:22px}.home-contract-card .home-card-head{flex-direction:column}.home-contract-card .home-card-head h2{font-size:28px;max-width:none}.home-contract-card .home-streak-pill{justify-self:start}.study-contract-form{grid-template-columns:1fr}.catchup-plan-head,.catchup-task{grid-template-columns:1fr}.catchup-plan-head{display:grid}.catchup-progress{width:100%}.catchup-priorities{grid-template-columns:1fr}.mm-interactive{grid-template-columns:1fr;min-height:520px}.mm-detail-panel{border-left:none;border-top:1px solid var(--border);max-height:260px}.mm-search{width:120px}.mm-legend{display:none}.mm-node{width:130px;padding:9px 11px}.mm-node.is-large{width:150px}.mm-node.is-main{width:170px}.home-catchup-card h2{font-size:34px}.home-catchup-card .btn-secondary{width:100%}}.toast-container{position:fixed;bottom:calc(20px + env(safe-area-inset-bottom,0px));right:20px;z-index:9000;display:flex;flex-direction:column-reverse;gap:8px;pointer-events:none;max-width:min(380px,calc(100vw - 40px))}.toast{pointer-events:auto;display:flex;align-items:flex-start;gap:12px;padding:13px 16px;border-radius:14px;background:rgba(255,253,247,0.92);color:#1f2a25;font-size:13px;font-weight:500;line-height:1.45;letter-spacing:-0.005em;border:1px solid rgba(45,26,12,0.08);box-shadow:0 1px 0 rgba(255,255,255,0.6) inset,0 1px 2px rgba(45,26,12,0.04),0 8px 24px -8px rgba(45,26,12,0.22),0 16px 40px -12px rgba(45,26,12,0.12);animation:toast-in 320ms cubic-bezier(0.32,0.72,0,1);will-change:transform,opacity}.toast.is-leaving{animation:toast-out 240ms cubic-bezier(0.4,0,1,1) forwards}.toast-action{background:rgba(45,26,12,0.08);border:none;padding:5px 12px;border-radius:8px;font-size:13px;font-weight:600;color:inherit;cursor:pointer;white-space:nowrap;font-family:inherit;transition:background 140ms cubic-bezier(0.32,0.72,0,1)}.toast-action:hover{background:rgba(45,26,12,0.16)}.toast-action:active{background:rgba(45,26,12,0.22)}.toast-dismiss{background:none;border:none;padding:2px;color:rgba(45,26,12,0.45);cursor:pointer;font-size:16px;line-height:1;transition:color 140ms}.toast-dismiss:hover{color:rgba(45,26,12,0.85)}.toast.toast-success{border-left:3px solid #3d6b56}.toast.toast-success .toast-icon{color:#3d6b56}.toast.toast-error{border-left:3px solid #c97a4a}.toast.toast-error .toast-icon{color:#c97a4a}.toast.toast-warning{border-left:3px solid #c89858}.toast.toast-warning .toast-icon{color:#c89858}.toast.toast-info{border-left:3px solid #6d8db0}.toast.toast-info .toast-icon{color:#6d8db0}body.theme-dark .toast{background:rgba(22,22,22,0.92);color:#f0eadb;border-color:rgba(255,255,255,0.08);box-shadow:0 1px 0 rgba(255,255,255,0.06) inset,0 1px 2px rgba(0,0,0,0.4),0 8px 24px -8px rgba(0,0,0,0.6),0 16px 40px -12px rgba(0,0,0,0.5)}body.theme-dark .toast-action{background:rgba(255,255,255,0.08)}body.theme-dark .toast-action:hover{background:rgba(255,255,255,0.16)}body.theme-dark .toast-dismiss{color:rgba(240,234,219,0.5)}body.theme-dark .toast-dismiss:hover{color:rgba(240,234,219,0.95)}.toast-icon{flex-shrink:0;width:20px;height:20px}.toast-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}@keyframes toast-in{0%{opacity:0;transform:translateY(24px) scale(0.96)}60%{opacity:1;transform:translateY(-2px) scale(1.01)}100%{opacity:1;transform:translateY(0) scale(1)}}@keyframes toast-out{from{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(8px) scale(0.98)}}@media (max-width: 768px){.toast-container{bottom:calc(80px + env(safe-area-inset-bottom,0px));right:50%;transform:translateX(50%);max-width:calc(100vw - 32px)}}.save-indicator{position:fixed;bottom:16px;left:16px;z-index:25;display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:999px;background:color-mix(in srgb,var(--ink) 90%,transparent);color:#fff;font-size:12px;font-weight:700;opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity 250ms ease,transform 250ms ease}.save-indicator.is-visible{opacity:1;transform:translateY(0)}.save-indicator svg{width:14px;height:14px;color:#4ade80}@media (max-width: 768px){.save-indicator{bottom:72px;left:50%;transform:translateX(-50%) translateY(8px)}.save-indicator.is-visible{transform:translateX(-50%) translateY(0)}}.offline-banner{position:fixed;top:0;left:0;right:0;z-index:8500;padding:10px 20px;text-align:center;font-size:13px;font-weight:600;background:var(--warning, #f59e0b);color:#1a1a1a;transform:translateY(-100%);transition:transform 250ms ease}.offline-banner.is-visible{transform:translateY(0)}.skeleton{background:linear-gradient(90deg,var(--surface-muted) 25%,var(--surface-subtle) 50%,var(--surface-muted) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.6s ease infinite;border-radius:var(--radius)}.skeleton-text{height:14px;margin-bottom:10px;border-radius:6px}.skeleton-text.short{width:60%}.skeleton-text.medium{width:80%}.skeleton-card{height:72px;margin-bottom:10px}@keyframes skeleton-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}.skeleton-lesson-card{display:grid;grid-template-columns:48px 1fr 80px;gap:14px;align-items:center;padding:16px;height:auto;margin-bottom:10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.skeleton-lesson-card .skeleton-avatar{width:48px;height:48px;border-radius:12px;background:linear-gradient(90deg,var(--surface-muted) 25%,var(--surface-subtle) 50%,var(--surface-muted) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.6s ease infinite}.skeleton-lesson-card .skeleton-lines{display:flex;flex-direction:column;gap:8px}.skeleton-lesson-card .skeleton-line{height:12px;border-radius:6px;background:linear-gradient(90deg,var(--surface-muted) 25%,var(--surface-subtle) 50%,var(--surface-muted) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.6s ease infinite}.skeleton-lesson-card .skeleton-line:first-child{width:65%}.skeleton-lesson-card .skeleton-line:last-child{width:40%}.skeleton-lesson-card .skeleton-badge{width:60px;height:28px;border-radius:999px;background:linear-gradient(90deg,var(--surface-muted) 25%,var(--surface-subtle) 50%,var(--surface-muted) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.6s ease infinite;justify-self:end}.skeleton-quiz-card{padding:20px;margin-bottom:16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.skeleton-quiz-card .skeleton-line{height:14px;border-radius:6px;margin-bottom:12px;background:linear-gradient(90deg,var(--surface-muted) 25%,var(--surface-subtle) 50%,var(--surface-muted) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.6s ease infinite}.skeleton-quiz-card .skeleton-line:nth-child(1){width:80%}.skeleton-quiz-card .skeleton-line:nth-child(2){width:55%;margin-left:24px}.skeleton-quiz-card .skeleton-line:nth-child(3){width:60%;margin-left:24px}.skeleton-quiz-card .skeleton-line:nth-child(4){width:50%;margin-left:24px}.skeleton-flashcard{width:100%;height:220px;border-radius:16px;background:linear-gradient(90deg,var(--surface-muted) 25%,var(--surface-subtle) 50%,var(--surface-muted) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.6s ease infinite;border:1px solid var(--border)}.skeleton-pulse{animation:skeleton-pulse 1.5s ease-in-out infinite}@keyframes skeleton-pulse{0%,100%{opacity:1}50%{opacity:0.5}}.quiz-progress-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0 14px;font-size:13px;font-weight:500;color:var(--text-muted)}.quiz-session-timer{font-variant-numeric:tabular-nums;font-size:12px;font-weight:600;color:var(--text-muted);opacity:0.7;min-width:110px;text-align:right;display:inline-flex;align-items:baseline;gap:6px;justify-content:flex-end}.quiz-timer-label{font-size:9px;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;color:var(--muted)}.quiz-timer-value{font-size:13px;font-weight:700;color:var(--ink-soft)}.quiz-session-timer.is-pending{opacity:0.45}.quiz-session-timer.is-pending .quiz-timer-value{color:var(--muted);font-weight:600;letter-spacing:0.05em}.quiz-progress-track{flex:1;height:6px;border-radius:3px;background:var(--surface-muted);overflow:hidden}.quiz-progress-fill{height:100%;border-radius:3px;background:var(--primary);transition:width 300ms ease}.quiz-extra-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.quiz-extra-actions .btn-secondary{font-size:13px;min-height:34px;padding:6px 14px}.share-score-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:var(--radius);border:1px solid var(--border);background:linear-gradient(135deg,var(--primary),#8b5cf6);color:#fff;font-size:13px;font-weight:700;cursor:pointer;transition:transform 150ms,box-shadow 150ms}.share-score-btn:hover{transform:translateY(-1px);box-shadow:0 4px 16px color-mix(in srgb,var(--primary) 40%,transparent)}.share-score-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.share-modal-overlay{position:fixed;inset:0;z-index:8500;background:rgba(0,0,0,0.5);display:flex;align-items:center;justify-content:center;animation:fade-in 180ms ease}.share-modal{background:var(--surface);border-radius:20px;padding:28px;max-width:440px;width:90%;box-shadow:0 24px 60px rgba(0,0,0,0.25);animation:slide-up 220ms ease}.share-modal h3{font-size:18px;font-weight:800;margin:0 0 16px;color:var(--ink)}.share-preview-card{background:linear-gradient(135deg,var(--primary),#8b5cf6);color:#fff;border-radius:16px;padding:24px;text-align:center;margin-bottom:20px}.share-preview-card .share-score-big{font-size:48px;font-weight:900;line-height:1;margin-bottom:4px}.share-preview-card .share-score-label{font-size:14px;font-weight:600;opacity:0.85;margin-bottom:12px}.share-preview-card .share-lesson-name{font-size:13px;font-weight:500;opacity:0.7}.share-preview-card .share-app-name{font-size:11px;font-weight:700;opacity:0.5;margin-top:12px;text-transform:uppercase;letter-spacing:0.08em}.share-modal-actions{display:flex;gap:10px}.share-modal-actions button{flex:1;padding:12px;border-radius:var(--radius);font-size:14px;font-weight:700;cursor:pointer;border:1px solid var(--border);transition:background 150ms}.share-modal-actions .share-copy-btn{background:var(--surface);color:var(--ink)}.share-modal-actions .share-copy-btn:hover{background:var(--surface-subtle)}.share-modal-actions .share-native-btn{background:var(--primary);color:#fff;border-color:var(--primary)}.share-modal-actions .share-native-btn:hover{opacity:0.9}@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes slide-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.home-invite-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;background:linear-gradient(135deg,rgba(99,102,241,.08) 0%,rgba(139,92,246,.06) 100%);border:1px dashed rgba(99,102,241,.25);border-radius:14px}.invite-card-body{display:flex;align-items:center;gap:14px}.invite-card-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:var(--primary);color:#fff;flex-shrink:0}.invite-card-icon svg{width:20px;height:20px}.invite-card-body strong{display:block;font-size:14px;font-weight:600;color:var(--text)}.invite-card-body span{display:block;font-size:13px;color:var(--muted);line-height:1.4}.invite-card-btn{flex-shrink:0;white-space:nowrap}@media (max-width: 600px){.home-invite-card{flex-direction:column;align-items:stretch;text-align:center}.invite-card-body{flex-direction:column}.invite-card-btn{align-self:center}}.invite-modal .invite-modal-sub{font-size:14px;color:var(--muted);margin:-4px 0 12px}.invite-preview{white-space:pre-wrap;font-size:13px;line-height:1.5;padding:12px 14px;border-radius:10px;background:var(--bg-card);border:1px solid var(--border);color:var(--text);margin-bottom:16px}.invite-modal .invite-modal-sub strong{color:var(--text)}.invite-link-box{display:flex;gap:8px;align-items:stretch;margin-bottom:12px}.invite-link-input{flex:1;min-width:0;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--bg-card);color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.share-copy-link-btn{flex-shrink:0;padding:0 14px;border-radius:10px;border:1px solid var(--primary);background:var(--primary);color:#fff;font-size:13px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.share-copy-link-btn:hover{filter:brightness(1.05)}.invite-stats{display:flex;flex-wrap:wrap;gap:8px 14px;margin-bottom:14px;font-size:13px;color:var(--muted)}.invite-stats:empty{display:none}.invite-stat strong{color:var(--text);font-weight:600}.invite-stats-loading{font-style:italic}.invite-stats-empty{color:var(--muted)}.invite-stats-pending{color:var(--muted)}.invite-stats-credits{color:var(--primary);font-weight:600}@media (max-width: 480px){.invite-link-box{flex-direction:column}}.quiz-invite-nudge{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:12px;padding:10px 16px;border-radius:10px;background:rgba(99,102,241,.06);border:1px solid rgba(99,102,241,.12);font-size:13px;color:var(--muted)}.quiz-invite-btn{flex-shrink:0;font-size:13px}@media (max-width: 480px){.quiz-invite-nudge{flex-direction:column;text-align:center}}.home-tip-card{padding:14px 18px;border-left:3px solid var(--primary)}.home-tip-text{font-size:14px;line-height:1.55;color:var(--text);margin:0}.lesson-tag-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.lesson-tag-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:500;background:var(--primary-soft);color:var(--primary);border:none;cursor:pointer;transition:background 150ms}.lesson-tag-chip:hover{background:color-mix(in srgb,var(--primary) 20%,transparent)}.lesson-tag-chip.is-active{background:var(--primary);color:#fff}.lesson-tag-input{display:inline-flex;align-items:center;gap:6px;opacity:0;pointer-events:none;transition:opacity 0.15s}.dash-lesson-card:hover .lesson-tag-input,.dash-lesson-card:focus-within .lesson-tag-input,.dash-lesson-card .lesson-tag-input:focus-within{opacity:1;pointer-events:auto}.lesson-tag-input input{width:120px;padding:3px 8px;border:1px dashed var(--border);border-radius:999px;font-size:11px;background:transparent;color:var(--ink-soft)}.lesson-tag-input input::placeholder{color:var(--muted)}.lesson-tag-input input:focus{border-style:solid;border-color:var(--primary);background:var(--surface);outline:none}.library-filter-tags{display:flex;gap:6px;flex-wrap:wrap;padding:6px 0 2px}.quiz-review-panel{margin:18px 0 8px;border:1px solid var(--border);border-radius:20px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 7%,transparent),transparent 42%),var(--surface);box-shadow:var(--shadow-soft);overflow:hidden;outline:none}.quiz-review-panel:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 24%,transparent),var(--shadow-md)}.qrp-header,.qrp-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px}.qrp-title{display:grid;gap:3px}.qrp-title strong{color:var(--text);font-size:22px;line-height:1}.qrp-close{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text-muted);cursor:pointer}.qrp-close:hover{border-color:var(--danger, #dc2626);color:var(--danger, #dc2626)}.qrp-progress-bar{height:7px;background:var(--surface-muted);overflow:hidden}.qrp-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--primary),var(--accent, #38bdf8));transition:width 220ms ease}.qrp-body{display:grid;gap:16px;padding:20px 18px 8px}.qrp-actions{display:flex;justify-content:flex-end;margin-top:4px}.qrp-actions .qrp-ask-teach{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:10px;font-size:13px;font-weight:700}.qrp-actions .qrp-ask-teach svg{width:16px;height:16px}.qrp-question-label{color:var(--primary);font-size:12px;font-weight:800;letter-spacing:0.08em;text-transform:uppercase}.qrp-question{margin:0;color:var(--text);font-size:clamp(18px,2vw,24px);font-weight:750;line-height:1.25}.qrp-answers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.qrp-answer,.qrp-feedback{border:1px solid var(--border);border-radius:14px;padding:14px;background:var(--surface)}.qrp-answer.is-wrong{border-color:color-mix(in srgb,var(--danger, #dc2626) 32%,var(--border));background:color-mix(in srgb,var(--danger, #dc2626) 8%,var(--surface))}.qrp-answer.is-correct{border-color:color-mix(in srgb,var(--success, #16a34a) 34%,var(--border));background:color-mix(in srgb,var(--success, #16a34a) 8%,var(--surface))}.qrp-answer-label{display:inline-flex;align-items:center;gap:7px;margin-bottom:8px;color:var(--text-muted);font-size:12px;font-weight:800;letter-spacing:0.05em;text-transform:uppercase}.qrp-answer p,.qrp-feedback p{margin:0;color:var(--text);font-weight:650;line-height:1.45}.qrp-feedback{background:color-mix(in srgb,var(--primary) 5%,var(--surface))}.qrp-feedback strong{display:block;margin-bottom:6px;color:var(--text)}.qrp-dots{display:flex;align-items:center;justify-content:center;gap:6px;min-width:72px}.qrp-dot{width:7px;height:7px;border-radius:50%;background:var(--surface-muted)}.qrp-dot.is-active{width:22px;border-radius:999px;background:var(--primary)}.qrp-footer .btn-primary,.qrp-footer .btn-secondary{min-height:42px}.progress-charts-panel{display:grid;gap:18px;margin-bottom:18px}.progress-stats-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.pstat{border:1px solid var(--border);border-radius:14px;padding:13px 14px;background:var(--surface)}.pstat small{display:block;color:var(--text-muted);font-size:11px;font-weight:800;letter-spacing:0.06em;text-transform:uppercase}.pstat strong{display:block;margin-top:5px;color:var(--text);font-size:26px;line-height:1}.pstat.is-up strong{color:var(--success, #16a34a)}.pstat.is-down strong{color:var(--danger, #dc2626)}.chart-wrap{border:1px solid var(--border);border-radius:16px;padding:16px;background:var(--surface)}.chart-title{margin-bottom:12px;color:var(--text);font-size:14px;font-weight:800}.chart-svg{display:block;width:100%;min-height:220px}.cgrid{stroke:var(--border);stroke-width:1}.cline{stroke:var(--primary);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.cdot{stroke:var(--surface);stroke-width:2}.cdot-perfect,.cdot-good{fill:var(--success, #16a34a)}.cdot-low{fill:var(--danger, #dc2626)}.cl{fill:var(--text-muted);font-size:10px;font-weight:700}.lsbar-list{display:grid;gap:12px}.lsbar{display:grid;gap:7px}.lsbar-label{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--text-muted);font-size:13px;font-weight:700}.lsbar-label span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lsbar-label strong{color:var(--text)}.lsbar-track{height:10px;border-radius:999px;background:var(--surface-muted);overflow:hidden}.lsbar-fill{height:100%;border-radius:inherit;background:var(--danger, #dc2626)}.lsbar-fill.is-ok{background:var(--warning, #f59e0b)}.lsbar-fill.is-great{background:var(--success, #16a34a)}.progress-empty-state{display:grid;justify-items:center;gap:12px;padding:48px 32px;border:1px dashed var(--border);border-radius:16px;color:var(--text-muted);text-align:center}.progress-empty-state svg{width:42px;height:42px;color:var(--primary)}.progress-empty-state strong{color:var(--text);font-size:18px}.progress-empty-state p{max-width:420px;margin:0}@media (max-width: 760px){.qrp-answers{grid-template-columns:1fr}.qrp-footer{flex-wrap:wrap}.qrp-dots{order:-1;width:100%}.progress-stats-row{grid-template-columns:repeat(2,minmax(0,1fr))}}.flashcards-panel,.lesson-overview-panel{overflow:visible;padding:calc(22px * var(--space-scale))}.flashcards-output,.lesson-overview-output{min-height:320px}.flashcards-panel .panel-header,.lesson-overview-panel .panel-header{margin-inline:0}.flashcards-empty,.lesson-overview-empty,.flashcard-start-state{min-height:280px;display:grid;justify-items:center;align-content:center;gap:12px;border:1px dashed var(--border);border-radius:20px;background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 5%,var(--surface)),var(--surface));color:var(--ink-soft);padding:28px;text-align:center}.flashcards-empty .icon,.lesson-overview-empty .icon,.flashcard-start-state .icon{width:42px;height:42px;color:var(--primary)}.flashcards-empty strong,.lesson-overview-empty strong,.flashcard-start-state strong{color:var(--ink);font-size:22px}.flashcards-empty p,.lesson-overview-empty p,.flashcard-start-state p{max-width:540px;margin:0}.flashcards-app{display:grid;grid-template-columns:minmax(280px,350px) minmax(0,1fr);gap:20px;align-items:stretch}.flashcards-command-panel{display:grid;gap:16px;align-content:start;border:1px solid var(--border);border-radius:20px;background:radial-gradient(circle at 92% 8%,color-mix(in srgb,var(--primary) 12%,transparent),transparent 34%),var(--surface);padding:18px}.flashcards-command-panel h3{margin:0;color:var(--ink);font-size:24px}.flashcards-command-panel p{margin:6px 0 0;color:var(--ink-soft);line-height:1.5}.flashcard-stat-grid,.flashcard-end-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.flashcard-stat-grid div,.flashcard-end-stats div{border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle);padding:13px}.flashcard-stat-grid strong,.flashcard-end-stats strong{display:block;color:var(--ink);font-size:26px;line-height:1}.flashcard-stat-grid span,.flashcard-end-stats span{display:block;margin-top:5px;color:var(--muted);font-size:11px;font-weight:850;letter-spacing:0.07em;text-transform:uppercase}.flashcard-actions,.lesson-overview-actions{display:flex;flex-wrap:wrap;gap:10px}.flashcard-actions button,.lesson-overview-actions button{min-height:42px}.flashcard-study-stage{min-height:clamp(380px,45vh,520px);display:grid;align-content:center}.flashcard-card-shell{display:grid;gap:14px}.fc3d-stage{perspective:1200px;-webkit-perspective:1200px;min-height:clamp(260px,34vh,380px);width:100%;cursor:pointer;outline:none}.fc3d-inner{position:relative;width:100%;height:100%;min-height:inherit;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;transition:transform 500ms cubic-bezier(0.4,0,0.2,1);-webkit-transition:-webkit-transform 500ms cubic-bezier(0.4,0,0.2,1),transform 500ms cubic-bezier(0.4,0,0.2,1);will-change:transform}.fc3d-inner.is-flipped{transform:rotateY(180deg);-webkit-transform:rotateY(180deg)}.fc3d-face{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:32px 28px;border-radius:24px;backface-visibility:hidden;-webkit-backface-visibility:hidden;text-align:center;box-shadow:var(--shadow-md);transform:translateZ(0);-webkit-transform:translateZ(0)}.fc3d-front{border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 8%,var(--surface)),var(--surface)),var(--surface);color:var(--ink)}.fc3d-front:hover{border-color:var(--primary);box-shadow:var(--shadow-lg, 0 8px 32px rgba(0,0,0,.12))}.fc3d-back{transform:rotateY(180deg) translateZ(0);-webkit-transform:rotateY(180deg) translateZ(0);border:1px solid color-mix(in srgb,var(--success) 34%,var(--border));background:linear-gradient(145deg,color-mix(in srgb,var(--success) 6%,var(--surface)),var(--surface)),var(--surface);color:var(--ink)}.fc3d-face strong{max-width:760px;font-size:clamp(22px,3.8vw,40px);line-height:1.12}.fc3d-back p{margin:0;max-width:760px;font-size:clamp(17px,3vw,24px);font-weight:600;line-height:1.45;color:var(--ink)}.flashcard-chip{display:inline-flex;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:11px;font-weight:900;letter-spacing:0.1em;padding:7px 11px;text-transform:uppercase}.fc3d-chip-answer{background:color-mix(in srgb,var(--success) 12%,var(--surface));color:var(--success)}.flashcard-flip-copy{color:var(--muted);font-size:13px;font-weight:750}@media (prefers-reduced-motion: reduce){.fc3d-inner{transition-duration:0.01ms}}.flashcard-response-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.flashcard-answer-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 18px;border-radius:14px;border:2px solid;background:var(--surface);font-size:15px;font-weight:800;cursor:pointer;transition:transform 0.15s,box-shadow 0.15s,background 0.15s}.flashcard-answer-btn .icon{width:18px;height:18px}.flashcard-answer-btn.is-learning{border-color:color-mix(in srgb,#f59e0b 60%,var(--border));color:#b45309;background:color-mix(in srgb,#f59e0b 8%,var(--surface))}.flashcard-answer-btn.is-learning:hover{background:color-mix(in srgb,#f59e0b 18%,var(--surface));transform:translateY(-1px);box-shadow:0 6px 14px color-mix(in srgb,#f59e0b 26%,transparent)}.flashcard-answer-btn.is-known{border-color:color-mix(in srgb,#16a34a 60%,var(--border));color:#15803d;background:color-mix(in srgb,#16a34a 8%,var(--surface))}.flashcard-answer-btn.is-known:hover{background:color-mix(in srgb,#16a34a 18%,var(--surface));transform:translateY(-1px);box-shadow:0 6px 14px color-mix(in srgb,#16a34a 26%,transparent)}.flashcard-response-actions[hidden],.flashcard-answer[hidden]{display:none}.flashcard-progress-row{grid-column:1 / -1;display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;margin-top:4px;padding:0 2px 2px;color:var(--muted);font-size:13px;font-weight:850}.flashcard-progress-track{height:9px;border-radius:999px;background:var(--surface-muted);overflow:hidden}.flashcard-progress-track i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),color-mix(in srgb,var(--success) 70%,var(--primary)));transition:width 240ms ease}.flashcard-session-end{display:grid;gap:16px;margin-top:18px;border:1px solid var(--border);border-radius:20px;background:var(--surface);padding:18px}.flashcard-session-end h3{margin:0;color:var(--ink);font-size:26px}.lesson-overview-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}.lesson-overview-hero-card,.lesson-overview-card,.lesson-overview-actions{border:1px solid var(--border);border-radius:20px;background:var(--surface);padding:18px}.lesson-overview-hero-card{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;background:radial-gradient(circle at 92% 12%,color-mix(in srgb,var(--primary) 16%,transparent),transparent 35%),linear-gradient(145deg,var(--surface),var(--surface-subtle))}.lesson-overview-hero-card h3{margin:0;color:var(--ink);font-size:clamp(28px,4vw,48px);line-height:1.05}.lesson-overview-hero-card p{margin:10px 0 0;color:var(--ink-soft);font-weight:750}.lesson-overview-ring{width:126px;height:126px;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--primary) var(--progress),var(--surface-muted) 0);position:relative}.lesson-overview-ring::before{position:absolute;inset:12px;border-radius:inherit;background:var(--surface);content:""}.lesson-overview-ring strong,.lesson-overview-ring span{position:relative;z-index:1}.lesson-overview-ring strong{align-self:end;color:var(--ink);font-size:30px}.lesson-overview-ring span{align-self:start;color:var(--muted);font-size:11px;font-weight:900;letter-spacing:0.09em;text-transform:uppercase}.lesson-overview-card{grid-column:span 4;display:grid;gap:10px;align-content:start;min-height:220px}.lesson-overview-card h3{margin:0;color:var(--ink);font-size:22px}.lesson-overview-card p,.lesson-overview-card li{color:var(--ink-soft);font-weight:700;line-height:1.45}.lesson-overview-card ul{margin:0;padding-left:18px}.lesson-overview-hint{margin:0;font-size:13px;font-weight:600;color:var(--muted);line-height:1.45}.lesson-overview-card .eyebrow .icon{width:13px;height:13px;vertical-align:-1px;margin-right:2px}.lesson-overview-link{justify-self:start;border:0;background:transparent;color:var(--primary);cursor:pointer;font-weight:900;padding:0}.lesson-overview-spark{height:92px;display:flex;align-items:end;gap:8px;border-bottom:1px solid var(--border);padding-top:12px}.lesson-overview-spark i{flex:1;min-width:12px;border-radius:8px 8px 0 0;background:linear-gradient(180deg,var(--primary),color-mix(in srgb,var(--primary) 55%,var(--success)))}.lesson-overview-spark.is-empty{align-items:center;justify-content:center;border:1px dashed var(--border);border-radius:14px;color:var(--muted)}.lesson-overview-meter{height:11px;border-radius:999px;background:var(--surface-muted);overflow:hidden}.lesson-overview-meter i{display:block;height:100%;border-radius:inherit;background:var(--success)}.lesson-overview-map-preview{min-height:126px;position:relative;border:1px dashed var(--border);border-radius:16px;background:var(--surface-subtle)}.map-preview-node{position:absolute;max-width:42%;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--ink);font-size:12px;font-weight:850;overflow:hidden;padding:7px 10px;text-overflow:ellipsis;white-space:nowrap}.map-node-0{left:36%;top:42%;border-color:var(--primary);color:var(--primary)}.map-node-1{left:7%;top:12%}.map-node-2{right:8%;top:14%}.map-node-3{left:9%;bottom:14%}.map-node-4{right:6%;bottom:12%}.lesson-overview-actions{grid-column:1 / -1}#ai-teach-panel .panel-header{grid-template-columns:1fr;gap:14px}.teach-toolbar{display:grid;grid-template-columns:minmax(220px,0.34fr) minmax(0,1fr);gap:12px;min-width:0;align-items:stretch}.teach-tool-group{min-width:0;display:grid;align-content:start;gap:12px;padding:14px;border-radius:16px;background:color-mix(in srgb,var(--surface) 78%,var(--surface-subtle));border:1px solid color-mix(in srgb,var(--border) 86%,transparent);transition:background 160ms ease,border-color 160ms ease,box-shadow 160ms ease}.teach-tool-group:hover{background:color-mix(in srgb,var(--primary) 4%,var(--surface-subtle));border-color:color-mix(in srgb,var(--primary) 18%,var(--border))}.teach-tool-primary{background:linear-gradient(135deg,color-mix(in srgb,var(--primary-soft) 90%,var(--surface)),var(--surface));border-color:color-mix(in srgb,var(--primary) 22%,var(--border))}.teach-tool-label{display:block;color:var(--muted);font-size:11px;font-weight:900;letter-spacing:0.08em;text-transform:uppercase}.teach-tool-group strong{display:block;margin-top:3px;color:var(--ink);font-size:14px;font-weight:850;line-height:1.2}.teach-tool-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;min-width:0}.teach-toolbar .teach-tool-row button,.teach-toolbar .teach-tool-primary button{width:auto;min-height:38px;padding:8px 13px;white-space:nowrap;line-height:1.2;flex:0 0 auto}.teach-primary-prompts button{flex:1 1 136px}.teach-tool-primary button{width:100%;font-weight:800}.teach-utility-row{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start}.teach-compact-tools,.teach-advanced-tools{min-width:0;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--surface) 84%,transparent);box-shadow:0 1px 0 rgba(255,255,255,0.42) inset}.teach-compact-tools{flex:1 1 180px}.teach-advanced-tools{grid-column:1 / -1}.teach-compact-tools summary,.teach-advanced-tools summary{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 13px;color:var(--ink);cursor:pointer;font-size:13px;font-weight:900;list-style:none}.teach-compact-tools summary::-webkit-details-marker,.teach-advanced-tools summary::-webkit-details-marker{display:none}.teach-compact-tools summary::after,.teach-advanced-tools summary::after{content:"+";display:inline-grid;place-items:center;width:22px;height:22px;border-radius:8px;color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,transparent);font-size:16px;line-height:1}.teach-compact-tools[open] summary::after,.teach-advanced-tools[open] summary::after{content:"-"}.teach-compact-tools .teach-tool-row{padding:0 13px 13px}.teach-compact-tools[open],.teach-advanced-tools[open]{border-color:color-mix(in srgb,var(--primary) 22%,var(--border));background:var(--surface)}.teach-advanced-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;padding:0 13px 13px}.teach-toolbar .voice-disclosure{padding-inline:4px}@media (max-width: 980px){.teach-toolbar{grid-template-columns:1fr}}@media (max-width: 720px){.teach-tool-group{padding:12px}.teach-primary-prompts button,.teach-compact-tools,.teach-toolbar .teach-tool-row button{flex:1 1 100%;width:100%}}.menu-guide-btn{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:10px;row-gap:3px;min-height:58px;padding:11px 12px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--ink-soft);box-shadow:none;text-align:left;cursor:pointer;transition:border-color 160ms ease,background 160ms ease,color 160ms ease}.menu-guide-btn:hover,.menu-guide-btn:focus-visible{border-color:var(--border);background:var(--surface-subtle);color:var(--ink)}.menu-guide-btn .icon{grid-row:1 / span 2;align-self:center;color:var(--primary)}.menu-guide-btn>div{display:contents}.menu-guide-btn strong{grid-column:2;display:block;color:inherit;font-size:14px;line-height:1.15}.menu-guide-btn span{grid-column:2;display:block;color:var(--muted);font-size:12px;font-weight:650}.starter-tutorial-backdrop{position:fixed;inset:0;z-index:260;display:grid;place-items:end center;padding:24px;background:radial-gradient(circle at 50% 100%,color-mix(in srgb,var(--primary) 16%,transparent),transparent 42%),rgba(0,0,0,0.34)}.starter-tutorial-backdrop[hidden]{display:none!important}.starter-tutorial-card{width:min(760px,100%);border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));border-radius:24px;background:radial-gradient(circle at 96% 8%,color-mix(in srgb,var(--primary) 12%,transparent),transparent 30%),var(--surface);box-shadow:0 24px 70px rgba(16,24,40,0.22);padding:22px}.starter-tutorial-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.starter-tutorial-top h2{margin:0;color:var(--ink);font-size:clamp(26px,4vw,38px);line-height:1.04;text-wrap:balance}.starter-tutorial-close{border:1px solid var(--border);border-radius:999px;background:var(--surface-subtle);color:var(--ink);cursor:pointer;font-weight:850;min-height:38px;padding:0 14px}.starter-tutorial-progress{height:9px;margin:18px 0;border-radius:999px;background:var(--surface-muted);overflow:hidden}.starter-tutorial-progress span{display:block;width:20%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),color-mix(in srgb,var(--success) 65%,var(--primary)));transition:width 180ms ease}#starter-tutorial-copy{max-width:62ch;margin:0;color:var(--ink-soft);font-size:17px;font-weight:700;line-height:1.55;text-wrap:pretty}.starter-tutorial-checklist{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:18px 0 0;padding:0;list-style:none}.starter-tutorial-checklist li{min-width:0;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle);color:var(--ink-soft);padding:10px}.starter-tutorial-checklist li.active{border-color:var(--primary);background:var(--primary-soft);color:var(--ink)}.starter-tutorial-checklist li.done{border-color:color-mix(in srgb,var(--success) 35%,var(--border));background:color-mix(in srgb,var(--success-soft) 45%,var(--surface))}.starter-tutorial-checklist span{display:grid;place-items:center;width:24px;height:24px;margin-bottom:8px;border-radius:50%;background:var(--surface);color:var(--primary);font-size:12px;font-weight:950}.starter-tutorial-checklist strong{display:block;color:inherit;font-size:12px;line-height:1.25}.starter-tutorial-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:20px}.starter-tutorial-actions button{min-height:42px}.starter-tutorial-highlight{position:relative;z-index:5;outline:3px solid color-mix(in srgb,var(--primary) 70%,white);outline-offset:6px;box-shadow:0 0 0 10px color-mix(in srgb,var(--primary) 12%,transparent),var(--shadow-md)}body.starter-tutorial-open .side-menu:not([hidden]){z-index:240}@media (max-width: 1080px){.flashcards-app,.teach-toolbar{grid-template-columns:1fr}.lesson-overview-card{grid-column:span 6}.teach-advanced-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 720px){.starter-tutorial-backdrop{place-items:end center;padding:14px}.starter-tutorial-card{padding:18px}.starter-tutorial-checklist{grid-template-columns:1fr}.starter-tutorial-actions{display:grid;grid-template-columns:1fr}.flashcard-response-actions,.flashcard-stat-grid,.flashcard-end-stats{grid-template-columns:1fr}.lesson-overview-hero-card{grid-template-columns:1fr}.lesson-overview-card{grid-column:1 / -1}.teach-advanced-grid{grid-template-columns:1fr}.study-summary-empty,.study-summary-dashboard{grid-template-columns:1fr}.study-summary-priority-grid{grid-template-columns:1fr}.study-summary-priority-grid .study-summary-section:first-child{grid-row:auto}}.progress-charts-panel{margin-bottom:20px}.progress-empty-state{display:flex;flex-direction:column;align-items:center;gap:12px;padding:56px 32px;color:var(--muted, #64748b);text-align:center}.progress-empty-state svg{width:48px;height:48px;opacity:0.4}.progress-empty-state strong{font-size:18px;color:var(--text, #0f172a)}.progress-empty-state p{font-size:15px;max-width:380px;line-height:1.5}.progress-stats-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.pstat{flex:1;min-width:90px;background:var(--surface, #fff);border:1px solid var(--border, #e2e8f0);border-radius:14px;padding:14px 16px;display:flex;flex-direction:column;gap:4px}.pstat small{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.06em;color:var(--muted, #64748b)}.pstat strong{font-size:22px;font-weight:700;color:var(--text, #0f172a);line-height:1.1}.pstat.is-up strong{color:#16a34a}.pstat.is-down strong{color:#dc2626}.chart-wrap{margin-bottom:24px}.chart-title{font-size:13px;font-weight:600;color:var(--muted, #64748b);margin-bottom:10px;text-transform:uppercase;letter-spacing:0.05em}.chart-svg{width:100%;height:auto;display:block;overflow:visible}.cg{stroke:var(--border, #e2e8f0);stroke-width:1}.cl{font-size:10px;fill:var(--muted, #94a3b8);font-family:inherit}.clx{font-size:9px}.cline{stroke:var(--primary, #2563eb);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.cdot{fill:var(--primary, #2563eb);stroke:var(--surface, #fff);stroke-width:2;cursor:default}.cdot-perfect{fill:#16a34a}.cdot-good{fill:#2563eb}.cdot-low{fill:#dc2626}.lsbar-list{display:flex;flex-direction:column;gap:10px}.lsbar-label{display:flex;justify-content:space-between;font-size:13px;margin-bottom:5px}.lsbar-label span{color:var(--text, #0f172a);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:80%}.lsbar-label strong{font-weight:700;color:var(--text, #0f172a);flex-shrink:0}.lsbar-track{height:8px;background:var(--border, #e2e8f0);border-radius:99px;overflow:hidden}.lsbar-fill{height:100%;border-radius:99px;transition:width 600ms ease;background:var(--primary, #2563eb)}.lsbar-fill.is-great{background:#16a34a}.lsbar-fill.is-ok{background:#2563eb}.lsbar-fill.is-low{background:#f59e0b}.quiz-review-panel{outline:none;margin-top:16px;border-radius:20px;background:var(--surface, #fff);border:1.5px solid var(--border, #e2e8f0);box-shadow:0 8px 32px rgba(0,0,0,0.10);overflow:hidden}.qrp-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 14px;border-bottom:1px solid var(--border, #e2e8f0)}.qrp-title{display:flex;flex-direction:column;gap:2px}.qrp-title .eyebrow{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.07em;color:var(--muted, #64748b)}.qrp-title strong{font-size:15px;font-weight:700;color:var(--text, #0f172a)}.qrp-close{width:32px;height:32px;border-radius:50%;border:1px solid var(--border, #e2e8f0);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--muted, #64748b);transition:background 150ms,color 150ms;flex-shrink:0}.qrp-close:hover{background:#fee2e2;color:#dc2626;border-color:#fecaca}.qrp-close svg{pointer-events:none}.qrp-progress-bar{height:4px;background:var(--border, #e2e8f0)}.qrp-progress-fill{height:100%;background:linear-gradient(90deg,var(--primary, #2563eb),#38bdf8);transition:width 300ms ease}.qrp-body{padding:24px 24px 20px}.qrp-question-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.07em;color:var(--primary, #2563eb);margin-bottom:10px}.qrp-question{font-size:17px;font-weight:600;line-height:1.45;color:var(--text, #0f172a);margin:0 0 20px}.qrp-answers{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}@media (max-width: 540px){.qrp-answers{grid-template-columns:1fr}}.qrp-answer{border-radius:14px;padding:14px 16px;border:1.5px solid transparent}.qrp-answer.is-wrong{background:#fff1f2;border-color:#fecdd3}.qrp-answer.is-correct{background:var(--success-soft, #f0fdf4);border-color:#bbf7d0}.qrp-answer-label{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.07em;margin-bottom:8px}.qrp-answer.is-wrong .qrp-answer-label{color:#dc2626}.qrp-answer.is-correct .qrp-answer-label{color:#16a34a}.qrp-answer.is-wrong .qrp-answer-label svg{stroke:#dc2626}.qrp-answer.is-correct .qrp-answer-label svg{stroke:#16a34a}.qrp-answer p{margin:0;font-size:14px;line-height:1.5;font-weight:500}.qrp-answer.is-wrong p{color:#9f1239}.qrp-answer.is-correct p{color:#166534}.qrp-feedback{background:var(--primary-soft, #eff6ff);border-radius:12px;padding:12px 16px;border-left:3px solid var(--primary, #2563eb)}.qrp-feedback strong{display:block;font-size:11px;text-transform:uppercase;letter-spacing:0.07em;color:var(--primary, #2563eb);margin-bottom:6px}.qrp-feedback p{margin:0;font-size:13px;line-height:1.55;color:var(--text, #0f172a)}.qrp-footer{display:flex;align-items:center;justify-content:space-between;padding:14px 20px 18px;border-top:1px solid var(--border, #e2e8f0);gap:10px}.qrp-dots{display:flex;gap:6px;align-items:center}.qrp-dot{width:7px;height:7px;border-radius:50%;background:var(--border, #e2e8f0);transition:background 200ms,transform 200ms}.qrp-dot.is-active{background:var(--primary, #2563eb);transform:scale(1.3)}.qrp-prev,.qrp-done{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:background 150ms,opacity 150ms}.qrp-prev svg,.qrp-done svg{flex-shrink:0}.qrp-next{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer}.quiz-next-step.is-highlight{border-color:var(--primary, #2563eb);background:var(--primary-soft, #eff6ff)}.quiz-next-step.is-highlight strong{color:var(--primary, #2563eb)}.lesson-picker-grid{display:flex;flex-wrap:wrap;gap:8px;padding:4px 0}.lesson-pick-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:10px;border:1px solid var(--border, #e2e8f0);background:var(--surface, #fff);font-size:13px;font-weight:500;color:var(--text, #0f172a);cursor:pointer;transition:background 150ms,border-color 150ms,color 150ms;user-select:none}.lesson-pick-chip:hover{border-color:var(--primary, #2563eb);background:var(--primary-soft, #eff6ff)}.lesson-pick-chip input[type=checkbox]{width:15px;height:15px;accent-color:var(--primary, #2563eb);cursor:pointer;flex-shrink:0}.lesson-pick-chip:has(input:checked){border-color:var(--primary, #2563eb);background:var(--primary-soft, #eff6ff);color:var(--primary, #2563eb);font-weight:600}.teach-followups{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border, #e2e8f0)}.teach-followup-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1px solid color-mix(in srgb,var(--primary, #2563eb) 24%,var(--border, #e2e8f0));background:var(--surface, #fff);color:var(--primary, #2563eb);font-size:13px;font-weight:600;cursor:pointer;transition:background 150ms,border-color 150ms,transform 150ms;text-align:left;line-height:1.35}.teach-followup-chip:hover{background:var(--primary-soft, #eff6ff);border-color:var(--primary, #2563eb);transform:translateY(-1px)}.teach-followup-chip:active{transform:scale(0.97)}@media (max-width: 760px){.progress-stats-row{grid-template-columns:repeat(2,minmax(0,1fr))}.pstat strong{font-size:20px}.qrp-body{padding:18px 16px 14px}.qrp-question{font-size:15px}.qrp-answers{grid-template-columns:1fr}.qrp-footer{flex-wrap:wrap;justify-content:center;gap:8px;padding:12px 14px 14px}.qrp-dots{order:-1;width:100%;justify-content:center}.fc3d-face{padding:22px 16px}.fc3d-face strong{font-size:clamp(18px,5vw,28px)}.fc3d-back p{font-size:clamp(15px,4vw,20px)}.flashcard-response-actions{flex-direction:column;gap:8px}.flashcard-response-actions button{width:100%}.lesson-picker-grid{gap:6px}.lesson-pick-chip{font-size:12px;padding:6px 10px}.teach-followups{gap:6px}.teach-followup-chip{font-size:12px;padding:7px 12px}.mm-generate-bar{flex-direction:column;align-items:stretch;gap:8px}.mm-generate-bar .btn-secondary{width:100%}.mm-interactive{overflow-x:auto;-webkit-overflow-scrolling:touch}.chart-wrap{padding:12px}.chart-title{font-size:12px}}@media (max-width: 480px){.progress-stats-row{grid-template-columns:1fr;gap:6px}.pstat{padding:10px 12px;min-width:0;flex-direction:row;align-items:center;justify-content:space-between}.pstat small{font-size:10px}.pstat strong{font-size:18px;margin-top:0}.qrp-header{padding:12px 14px 10px}.qrp-body{padding:14px 12px 10px}.qrp-question{font-size:14px;margin-bottom:14px}.qrp-answer{padding:10px 12px}.qrp-feedback{padding:10px 12px}.fc3d-stage{min-height:clamp(200px,30vh,280px)}.fc3d-face{padding:18px 14px;border-radius:20px}.flashcard-card-shell{margin:0 -4px}.teach-followup-chip{font-size:11px;padding:6px 10px;line-height:1.3}.lsbar-label{font-size:12px}.lsbar-label span{max-width:65%}}@media (max-width: 1080px){.mm-interactive{grid-template-columns:1fr;min-height:500px}.mm-detail-panel{border-left:none;border-top:1px solid var(--border);max-height:260px;overflow-y:auto}}@media (max-width: 760px){.mm-interactive{min-height:400px;border-radius:14px}.mm-toolbar{padding:8px 10px;gap:6px}.mm-tool{min-width:30px;height:28px;padding:0 8px;font-size:13px}.mm-search{width:100px;height:28px;font-size:12px}.mm-legend{display:none}.mm-stats{display:none}.mm-detail-panel{padding:14px 12px;max-height:220px;gap:8px}.mm-detail-content h4{font-size:18px}.mm-detail-content p{font-size:13px}.mm-detail-links li{padding:8px 10px;font-size:13px}.mm-node{width:120px;padding:8px 10px;border-radius:10px}.mm-node strong{font-size:12px}.mm-node small{font-size:8px}.mm-node.is-large{width:140px;padding:10px 12px}.mm-node.is-main{width:160px;padding:12px 14px}.mm-node.is-main strong{font-size:14px}.mm-node.is-large strong{font-size:13px}.mm-node.is-small{width:100px;padding:6px 8px}.mm-node.is-small strong{font-size:10px}.mm-paywall-card{max-width:300px;padding:24px 18px}.mm-paywall-card h3{font-size:18px}.mm-generate-bar{flex-direction:column;align-items:stretch;margin-left:0;gap:6px}.mm-generate-note{font-size:11px;text-align:center}.mind-map-empty{min-height:260px;padding:22px 16px}.mind-map-empty strong{font-size:22px}.mind-map-empty .button-row{flex-direction:column;width:100%}.mind-map-empty .button-row button{width:100%}}@media (max-width: 480px){.mm-interactive{min-height:320px;border-radius:12px}.mm-toolbar{padding:6px 8px;gap:4px}.mm-toolbar-sep{display:none}.mm-search{width:80px;font-size:11px}.mm-detail-panel{max-height:180px;padding:10px}.mm-detail-content h4{font-size:16px}.sc-session-header{padding:16px}.sc-session-hero h2{font-size:22px}.sc-topbar{flex-direction:column;align-items:flex-start;gap:10px}.sc-progress-ring{width:64px;height:64px}.sc-question{font-size:16px}.sc-complete{flex-direction:column;text-align:center;padding:20px 16px}.sc-complete-stats{justify-content:center}.sc-actions-row{flex-direction:column}.sc-actions-row button{width:100%}.sc-sidebar{position:static}.sc-concept-card{padding:10px 12px}.sc-meta-pill strong{font-size:16px}.sc-strictness-bar{flex-wrap:wrap;gap:6px}.sc-strictness-bar>span{width:100%;font-size:12px}.sc-strictness-opt{font-size:12px;padding:5px 10px;flex:1;text-align:center}.sc-notes-fab{bottom:16px;right:16px;width:48px;height:48px}.sc-notes-panel{width:calc(100vw - 32px);right:16px;bottom:72px;max-height:50vh}.sc-notes-textarea{min-height:120px}.sc-past-card{padding:12px}.sc-past-header{flex-direction:column;gap:8px}.sc-past-score{align-self:flex-start}.sc-past-stats{gap:6px}.sc-past-actions{flex-wrap:wrap}.sc-past-action{font-size:11px;padding:5px 8px;flex:1;min-width:0;justify-content:center}.sc-past-action svg{display:none}.sc-topic-chip{font-size:11px;padding:2px 6px}}.welcome-intro.lp{display:block;width:100%;max-width:100%;padding:0;border:none;border-radius:0;background:transparent;box-shadow:none;overflow-x:clip}.welcome-gate:has(.lp):not([hidden]){padding:0;display:block;background:var(--bg)}.welcome-gate:has(.lp):not([hidden]) .welcome-stage{width:100%;max-width:100%;min-height:0;display:block}.welcome-gate.is-signup:has(.lp):not([hidden]){display:grid;place-items:center;padding:28px;background:linear-gradient(180deg,color-mix(in srgb,var(--primary-soft) 54%,var(--bg)),var(--bg))}.welcome-gate.is-signup:has(.lp):not([hidden]) .welcome-stage{width:min(1180px,100%);min-height:600px;display:grid;place-items:center}.welcome-gate.is-signup .lp{display:none}.lp{position:relative;color:var(--ink);font-family:"Inter",system-ui,-apple-system,sans-serif}.lp-bg{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}.lp-mesh{position:absolute;border-radius:50%;filter:blur(80px);opacity:0.5;animation:lp-mesh-drift 20s ease-in-out infinite}.lp-mesh-1{width:600px;height:600px;background:radial-gradient(circle,var(--primary),transparent 70%);top:-200px;left:-100px}.lp-mesh-2{width:500px;height:500px;background:radial-gradient(circle,var(--accent),transparent 70%);top:30%;right:-150px;animation-delay:-7s;animation-duration:25s}.lp-mesh-3{width:700px;height:700px;background:radial-gradient(circle,#e9c590,transparent 70%);bottom:-300px;left:30%;animation-delay:-14s;animation-duration:30s}@keyframes lp-mesh-drift{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(80px,-60px) scale(1.1)}66%{transform:translate(-40px,80px) scale(0.95)}}@media (prefers-reduced-motion: reduce){.lp-mesh{animation:none}}@media (max-width: 768px){.lp-mesh{animation:none;filter:blur(48px);opacity:0.4}}.lp-grid{position:absolute;inset:0;background-image:linear-gradient(to right,color-mix(in srgb,var(--ink) 6%,transparent) 1px,transparent 1px),linear-gradient(to bottom,color-mix(in srgb,var(--ink) 6%,transparent) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(circle at center top,black 30%,transparent 80%);-webkit-mask-image:radial-gradient(circle at center top,black 30%,transparent 80%)}.lp-nav{position:sticky;top:0;z-index:50;padding:14px 0;background:color-mix(in srgb,var(--surface) 78%,transparent);border-bottom:1px solid color-mix(in srgb,var(--border) 50%,transparent)}.lp-nav-inner{max-width:1200px;margin:0 auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between;gap:32px}.lp-brand{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:800;letter-spacing:-0.01em}.lp-brand .brand-mark{width:32px;height:32px;border-radius:8px}.lp-nav-links{display:flex;gap:28px}.lp-nav-link{color:var(--ink-soft);font-size:14px;font-weight:600;transition:color 0.15s}.lp-nav-link:hover{color:var(--primary)}.lp-nav-cta{display:flex;gap:10px;align-items:center}.lp-link-btn{background:transparent;border:none;color:var(--ink-soft);font-size:14px;font-weight:700;padding:8px 14px;cursor:pointer;transition:color 0.15s;min-height:0}.lp-link-btn:hover{color:var(--primary);background:transparent;box-shadow:none;transform:none}.lp-cta-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:999px;background:var(--primary);color:#fff;font-size:14px;font-weight:700;border:none;cursor:pointer;box-shadow:0 6px 24px color-mix(in srgb,var(--primary) 30%,transparent),inset 0 1px 0 rgba(255,255,255,0.2);transition:transform 0.18s,box-shadow 0.18s;min-height:0}.lp-cta-btn:hover{transform:translateY(-2px);box-shadow:0 12px 36px color-mix(in srgb,var(--primary) 45%,transparent),inset 0 1px 0 rgba(255,255,255,0.25);background:var(--primary-hover)}.lp-cta-btn svg{width:16px;height:16px;transition:transform 0.18s}.lp-cta-btn:hover svg{transform:translateX(3px)}.lp-cta-secondary{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:999px;background:color-mix(in srgb,var(--surface) 90%,transparent);border:1px solid var(--border);color:var(--ink);font-size:14px;font-weight:700;cursor:pointer;transition:transform 0.18s,border-color 0.18s,background 0.18s;min-height:0;box-shadow:0 1px 2px rgba(0,0,0,0.04)}.lp-cta-secondary:hover{border-color:var(--primary);background:var(--surface);transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,0.08)}.lp-cta-secondary svg{width:18px;height:18px;color:var(--primary)}.lp-cta-large{padding:16px 28px;font-size:16px;border-radius:999px}.lp-cta-large svg{width:18px;height:18px}.lp-hero{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:80px 32px 100px;display:grid;grid-template-columns:1.05fr 1fr;gap:60px;align-items:center}.lp-hero-inner{position:relative;z-index:2}.lp-hero-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;background:color-mix(in srgb,var(--primary) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 25%,var(--border));color:var(--primary);font-size:13px;font-weight:700;margin-bottom:24px;animation:lp-fade-up 0.6s ease both}.lp-pulse-dot{width:8px;height:8px;border-radius:50%;background:var(--primary);position:relative}.lp-pulse-dot::before{content:"";position:absolute;inset:-2px;border-radius:50%;background:var(--primary);opacity:0.4;animation:lp-pulse 1.5s ease infinite}@keyframes lp-pulse{0%,100%{transform:scale(1);opacity:0.4}50%{transform:scale(1.8);opacity:0}}.lp-hero-title{font-size:clamp(40px,6vw,68px);line-height:1.05;letter-spacing:-0.02em;font-weight:850;margin:0 0 24px;color:var(--ink);animation:lp-fade-up 0.7s ease 0.1s both}.lp-gradient-text{background:linear-gradient(135deg,var(--primary),var(--accent, #c97a4a),#e8916b);-webkit-background-clip:text;background-clip:text;color:transparent;background-size:200% 200%;animation:lp-gradient-shift 6s ease infinite}@keyframes lp-gradient-shift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.lp-typewriter{font-size:0.55em;font-weight:700;color:var(--ink-soft);display:inline-block;min-height:1.4em;position:relative;letter-spacing:-0.01em}.lp-typewriter::after{content:"|";color:var(--primary);animation:lp-blink 1s steps(1) infinite;margin-left:2px}@keyframes lp-blink{50%{opacity:0}}.lp-hero-sub{font-size:18px;line-height:1.6;color:var(--ink-soft);margin:0 0 36px;max-width:540px;font-weight:500;animation:lp-fade-up 0.7s ease 0.2s both}.lp-hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:36px;animation:lp-fade-up 0.7s ease 0.3s both}.lp-hero-trust{display:flex;align-items:center;gap:14px;animation:lp-fade-up 0.7s ease 0.4s both}.lp-avatar-stack{display:flex}.lp-avatar-stack span{width:36px;height:36px;border-radius:50%;border:2px solid var(--surface);display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:11px;font-weight:800;margin-left:-8px}.lp-avatar-stack span:first-child{margin-left:0}.lp-stars{color:#fbbf24;font-size:13px;letter-spacing:1px}.lp-hero-trust span{font-size:13px;color:var(--ink-soft);font-weight:500}.lp-hero-trust strong{color:var(--ink);font-weight:800}@keyframes lp-fade-up{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.lp-showcase{position:relative;height:580px;perspective:1500px}.lp-card{position:absolute;background:var(--surface);border:1px solid var(--border);border-radius:20px;box-shadow:0 24px 60px rgba(16,24,40,0.12),0 4px 12px rgba(16,24,40,0.04);padding:18px}@keyframes lp-float{0%,100%{transform:translateY(0) rotate(var(--lp-rot, 0deg))}50%{transform:translateY(-12px) rotate(var(--lp-rot, 0deg))}}.lp-float-1{--lp-rot: -2deg;animation:lp-float 6s ease-in-out infinite}.lp-float-2{--lp-rot: 3deg;animation:lp-float 7s ease-in-out -2s infinite}.lp-float-3{--lp-rot: -3deg;animation:lp-float 8s ease-in-out -4s infinite}.lp-float-4{--lp-rot: 2deg;animation:lp-float 7.5s ease-in-out -1s infinite}.lp-float-5{--lp-rot: -1.5deg;animation:lp-float 6.5s ease-in-out -3s infinite}.lp-card-main{width:340px;top:40px;left:30px;z-index:3}.lp-card-head{display:flex;justify-content:space-between;margin-bottom:14px}.lp-card-eyebrow{font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:0.06em}.lp-card-pill{font-size:11px;font-weight:800;padding:3px 9px;border-radius:999px;background:var(--surface-subtle);color:var(--ink-soft)}.lp-card-pill.is-blue{background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary)}.lp-card-q{font-size:15px;font-weight:750;line-height:1.4;margin-bottom:14px;color:var(--ink)}.lp-card-options{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.lp-opt{padding:9px 12px;border-radius:10px;background:var(--surface-subtle);border:1px solid var(--border);font-size:13px;color:var(--ink-soft);font-weight:500;display:flex;align-items:center;gap:8px}.lp-opt.is-correct{background:color-mix(in srgb,#16a34a 8%,var(--surface));border-color:color-mix(in srgb,#16a34a 35%,var(--border));color:#166534;font-weight:700}.lp-opt-marker{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#16a34a;color:#fff;font-size:11px;font-weight:900}.lp-card-foot{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid var(--border)}.lp-card-streak{font-size:12px;font-weight:700;color:var(--ink-soft)}.lp-card-btn{padding:6px 14px;background:var(--primary);color:#fff;border:none;border-radius:999px;font-size:12px;font-weight:700;cursor:pointer;min-height:0}.lp-card-chat{width:290px;top:0;right:0;z-index:4}.lp-chat-head{display:flex;align-items:center;gap:10px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--border)}.lp-chat-avatar{width:32px;height:32px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center}.lp-chat-avatar svg{width:18px;height:18px}.lp-chat-head strong{display:block;font-size:13px;font-weight:800;color:var(--ink)}.lp-chat-head span{font-size:11px;color:#16a34a;font-weight:600}.lp-chat-msg{padding:10px 13px;border-radius:14px;font-size:13px;line-height:1.45;margin-bottom:8px;font-weight:500}.lp-chat-user{background:var(--primary);color:#fff;margin-left:30px;border-bottom-right-radius:4px}.lp-chat-ai{background:var(--surface-subtle);color:var(--ink);border-bottom-left-radius:4px}.lp-chat-typing{display:flex;gap:4px;padding:10px 0}.lp-chat-typing span{width:7px;height:7px;border-radius:50%;background:var(--muted);animation:lp-typing 1.4s ease infinite}.lp-chat-typing span:nth-child(2){animation-delay:0.2s}.lp-chat-typing span:nth-child(3){animation-delay:0.4s}@keyframes lp-typing{0%,60%,100%{opacity:0.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.lp-card-progress{width:230px;bottom:80px;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;gap:14px}.lp-ring-wrap{position:relative;width:130px;height:130px}.lp-ring{width:100%;height:100%;transform:rotate(-90deg)}.lp-ring-bg{stroke:var(--border)}.lp-ring-fill{stroke:url(#lp-ring-grad);stroke:var(--primary);stroke-linecap:round;transition:stroke-dashoffset 1s ease;animation:lp-ring-draw 2s ease both}@keyframes lp-ring-draw{from{stroke-dashoffset:264}}.lp-ring-text{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.lp-ring-text strong{font-size:26px;font-weight:850;color:var(--ink)}.lp-ring-text span{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:0.06em}.lp-ring-stats{display:flex;gap:18px;width:100%;justify-content:center}.lp-ring-stats div{text-align:center}.lp-ring-stats b{display:block;font-size:18px;font-weight:800;color:var(--ink)}.lp-ring-stats span{font-size:10px;color:var(--muted);font-weight:700;text-transform:uppercase}.lp-card-checklist{width:240px;bottom:0;right:50px;z-index:3}.lp-card-checklist>strong{display:block;font-size:13px;font-weight:800;color:var(--ink);margin-bottom:12px}.lp-check{display:flex;align-items:center;gap:9px;padding:7px 0;font-size:13px;color:var(--ink);font-weight:600}.lp-check s{color:var(--muted);text-decoration-thickness:1.5px}.lp-check-mark{width:16px;height:16px;border-radius:50%;border:2px solid var(--border);display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:900;flex-shrink:0}.lp-check-mark.is-done{background:#16a34a;border-color:#16a34a;color:#fff}.lp-card-battle{width:240px;top:260px;right:0;z-index:5}.lp-card-pill.is-warm{background:var(--accent-soft, color-mix(in srgb, var(--accent, #c97a4a) 18%, var(--surface)));color:var(--accent, #c97a4a)}.lp-battle-q{font-size:13px;font-weight:600;line-height:1.35;color:var(--ink);margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--border)}.lp-battle-players{display:flex;flex-direction:column;gap:6px}.lp-battle-row{display:flex;align-items:center;gap:9px;padding:6px 8px;border-radius:10px;font-size:13px;color:var(--ink-soft);font-weight:600}.lp-battle-row.is-you{background:color-mix(in srgb,var(--primary) 8%,var(--surface));color:var(--ink)}.lp-battle-avatar{width:22px;height:22px;border-radius:50%;color:#fff;font-size:11px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.lp-battle-name{flex:1}.lp-battle-score{font-weight:800;color:var(--primary);font-variant-numeric:tabular-nums}.lp-battle-row.is-you .lp-battle-score{color:var(--accent, #c97a4a)}.lp-trust-bar{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:40px 32px;text-align:center;border-top:1px solid color-mix(in srgb,var(--border) 50%,transparent);border-bottom:1px solid color-mix(in srgb,var(--border) 50%,transparent)}.lp-social-proof{margin-bottom:24px;display:flex;flex-direction:column;align-items:center;gap:12px}.lp-stats-row{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.lp-stat-chip{font-size:13px;color:var(--muted);background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);padding:6px 14px;border-radius:100px}.lp-stat-chip strong{color:var(--accent);font-weight:700}.lp-proof-badge{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:700;color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent);border:1px solid color-mix(in srgb,var(--accent) 20%,transparent);padding:8px 20px;border-radius:100px;letter-spacing:0.01em}.lp-trust-bar p{font-size:13px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:0.1em;margin:0 0 20px}.lp-trust-logos{display:flex;flex-wrap:wrap;justify-content:center;gap:28px 48px}.lp-trust-logos span{font-size:17px;font-weight:800;color:color-mix(in srgb,var(--ink) 50%,transparent);letter-spacing:0.02em;transition:color 0.2s}.lp-trust-logos span:hover{color:var(--ink)}.lp-stats{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:80px 32px;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.lp-stat{text-align:center}.lp-counter{display:block;font-size:clamp(36px,4.5vw,56px);font-weight:850;color:var(--ink);line-height:1;letter-spacing:-0.02em;background:linear-gradient(135deg,var(--primary),#8b5cf6);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:10px}.lp-stat span{font-size:14px;color:var(--ink-soft);font-weight:600}.lp-section{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:100px 32px}.lp-section-head{text-align:center;max-width:720px;margin:0 auto 64px}.lp-eyebrow{display:inline-block;padding:5px 12px;border-radius:999px;background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:0.08em;margin-bottom:16px}.lp-section-head h2{font-size:clamp(32px,4vw,48px);font-weight:850;line-height:1.1;letter-spacing:-0.02em;margin:0 0 16px;color:var(--ink)}.lp-section-head h2 em{font-style:italic;background:linear-gradient(135deg,var(--primary),#8b5cf6);-webkit-background-clip:text;background-clip:text;color:transparent}.lp-section-head p{font-size:17px;color:var(--ink-soft);line-height:1.55;font-weight:500;margin:0}.lp-bento{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.lp-bento-tile{position:relative;padding:28px;border:1px solid var(--border);border-radius:20px;background:var(--surface);transition:transform 0.3s ease,border-color 0.3s ease,box-shadow 0.3s ease;overflow:hidden}.lp-bento-tile:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--primary) 40%,var(--border));box-shadow:0 20px 50px rgba(16,24,40,0.1)}.lp-bento-tile::before{content:"";position:absolute;inset:0;background:radial-gradient(600px circle at var(--mx, 50%) var(--my, 50%),color-mix(in srgb,var(--primary) 8%,transparent),transparent 40%);opacity:0;transition:opacity 0.3s;pointer-events:none}.lp-bento-tile:hover::before{opacity:1}.lp-bento-1{grid-column:span 2;grid-row:span 2}.lp-bento-2{grid-column:span 1;grid-row:span 1}.lp-bento-3{grid-column:span 1;grid-row:span 1}.lp-bento-4{grid-column:span 2;grid-row:span 1}.lp-bento-5{grid-column:span 1;grid-row:span 1}.lp-bento-6{grid-column:span 2;grid-row:span 1}.lp-bento-7{grid-column:span 1;grid-row:span 1}.lp-bento-8{grid-column:span 2;grid-row:span 1}.lp-bento-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:18px;box-shadow:0 8px 20px rgba(99,102,241,0.25)}.lp-bento-icon svg{width:24px;height:24px}.lp-bento-tile h3{font-size:19px;font-weight:800;color:var(--ink);margin:0 0 10px;letter-spacing:-0.01em;line-height:1.25}.lp-bento-tile p{font-size:14px;color:var(--ink-soft);margin:0;line-height:1.55;font-weight:500}.lp-bento-1 h3{font-size:24px}.lp-bento-1 p{font-size:15px}.lp-bento-preview{margin-top:20px}.lp-mini-chat{background:var(--surface-subtle);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:8px}.lp-mini-q{background:var(--primary);color:#fff;padding:8px 12px;border-radius:12px;border-bottom-right-radius:4px;align-self:flex-end;font-size:13px;font-weight:600;max-width:70%}.lp-mini-a{background:var(--surface);color:var(--ink);padding:8px 12px;border-radius:12px;border-bottom-left-radius:4px;font-size:13px;border:1px solid var(--border);max-width:90%}.lp-mini-chip{display:inline-block;margin-right:6px;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,#5b8bd5 16%,var(--surface));color:color-mix(in srgb,#5b8bd5 85%,var(--ink));border:1px solid color-mix(in srgb,#5b8bd5 30%,transparent);font-size:10px;font-weight:800;letter-spacing:0.06em;text-transform:uppercase}.lp-scan-preview{display:grid;gap:6px}.lp-scan-chip{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:10px;background:var(--surface);border:1px solid var(--border);font-size:12px;font-weight:600;color:var(--ink)}.lp-scan-chip-progress{background:color-mix(in srgb,var(--primary) 8%,var(--surface));border-color:color-mix(in srgb,var(--primary) 40%,var(--border));color:color-mix(in srgb,var(--primary) 70%,var(--ink))}.lp-games-preview,.lp-a11y-preview{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.lp-game-chip,.lp-a11y-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;background:var(--surface);border:1px solid var(--border);font-size:12px;font-weight:700;color:var(--ink-soft)}.lp-a11y-chip{background:color-mix(in srgb,var(--info, #06b6d4) 8%,var(--surface));border-color:color-mix(in srgb,var(--info, #06b6d4) 25%,var(--border));color:color-mix(in srgb,var(--info, #06b6d4) 70%,var(--ink))}.lp-everything-else{margin-top:56px;padding-top:36px;border-top:1px dashed color-mix(in srgb,var(--ink) 12%,var(--border))}.lp-everything-head{text-align:center;margin-bottom:22px}.lp-everything-head h3{margin:6px 0 0;font-size:22px;font-weight:800;letter-spacing:-0.01em;color:var(--ink)}.lp-everything-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}@media (max-width: 980px){.lp-everything-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 540px){.lp-everything-grid{grid-template-columns:1fr}}.lp-everything-card{display:grid;gap:4px;padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--primary) 2%,var(--surface));transition:border-color 160ms ease,transform 160ms ease,box-shadow 160ms ease}.lp-everything-card:hover{border-color:color-mix(in srgb,var(--primary) 40%,var(--border));transform:translateY(-1px);box-shadow:0 6px 18px color-mix(in srgb,var(--primary) 10%,transparent)}.lp-everything-card strong{font-size:14px;font-weight:800;color:var(--ink);letter-spacing:-0.005em}.lp-everything-card span{font-size:12.5px;color:var(--ink-soft);line-height:1.45}.lp-mini-pills{display:flex;gap:6px;margin-top:14px}.lp-mini-pills span{padding:6px 12px;border-radius:999px;background:var(--surface-subtle);border:1px solid var(--border);font-size:12px;font-weight:700;color:var(--muted)}.lp-mini-pills span.is-active{background:var(--primary);color:#fff;border-color:var(--primary)}.lp-progress-demo{display:flex;flex-direction:column;gap:10px;margin-top:18px}.lp-progress-bar{position:relative;height:28px;background:var(--surface-subtle);border-radius:8px;overflow:hidden;font-size:12px;font-weight:700}.lp-progress-bar>div{position:absolute;top:0;left:0;bottom:0;background:linear-gradient(90deg,var(--primary),#8b5cf6);border-radius:8px;animation:lp-bar-fill 1.5s ease both}.lp-progress-bar>span{position:absolute;inset:0;display:flex;align-items:center;padding:0 12px;color:var(--ink);z-index:1}@keyframes lp-bar-fill{from{width:0!important}}.lp-steps{display:flex;align-items:stretch;gap:24px;justify-content:space-between}.lp-step{flex:1;padding:32px 28px;background:var(--surface);border:1px solid var(--border);border-radius:20px;position:relative;transition:transform 0.3s,border-color 0.3s}.lp-step:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--primary) 35%,var(--border))}.lp-step-num{font-size:13px;font-weight:900;color:var(--primary);letter-spacing:0.06em;margin-bottom:16px}.lp-step-icon{width:56px;height:56px;border-radius:16px;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;margin-bottom:20px;box-shadow:0 12px 30px color-mix(in srgb,var(--primary) 30%,transparent)}.lp-step-icon svg{width:26px;height:26px}.lp-step h3{font-size:22px;font-weight:800;color:var(--ink);margin:0 0 12px;letter-spacing:-0.01em}.lp-step p{font-size:14px;color:var(--ink-soft);line-height:1.55;margin:0;font-weight:500}.lp-step-arrow{display:flex;align-items:center;color:color-mix(in srgb,var(--primary) 40%,var(--muted))}.lp-step-arrow svg{width:28px;height:28px}.lp-testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1000px;margin:0 auto}.lp-testimonial{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:28px 24px 24px;display:flex;flex-direction:column;gap:14px}.lp-testimonial-stars{color:#f59e0b;font-size:18px;letter-spacing:2px}.lp-testimonial blockquote{margin:0;font-size:14px;line-height:1.65;color:var(--text);font-style:italic;flex:1}.lp-testimonial footer{display:flex;flex-direction:column;gap:2px;padding-top:8px;border-top:1px solid var(--border)}.lp-testimonial footer strong{font-size:14px;font-weight:600;color:var(--text)}.lp-testimonial footer span{font-size:12px;color:var(--muted)}@media (max-width: 768px){.lp-testimonials{grid-template-columns:1fr;gap:16px}}.lp-compare-section{background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--primary) 4%,transparent));border-radius:32px}.lp-compare{display:grid;grid-template-columns:1fr 1fr;gap:24px}.lp-compare-col{padding:32px;border-radius:20px;position:relative}.lp-compare-them{background:var(--surface-subtle);border:1px solid var(--border)}.lp-compare-us{background:linear-gradient(135deg,var(--primary),#8b5cf6);color:#fff;border:none;box-shadow:0 24px 60px color-mix(in srgb,var(--primary) 30%,transparent)}.lp-compare-badge{position:absolute;top:-12px;right:24px;padding:5px 14px;background:#fff;color:var(--primary);border-radius:999px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:0.06em;box-shadow:0 4px 12px rgba(0,0,0,0.1)}.lp-compare-col h4{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:0.08em;margin:0 0 20px;opacity:0.7}.lp-compare-us h4{opacity:1;font-size:22px;text-transform:none;letter-spacing:-0.01em;margin-bottom:18px}.lp-compare-them h4{font-size:22px;text-transform:none;letter-spacing:-0.01em;color:var(--ink);margin-bottom:18px}.lp-compare ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.lp-compare li{display:flex;align-items:flex-start;gap:12px;font-size:15px;font-weight:500;line-height:1.45}.lp-compare-them li{color:var(--ink-soft)}.lp-compare-us li{color:#fff}.lp-compare li>span{flex-shrink:0;width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:900}.lp-compare-them li>span{background:color-mix(in srgb,var(--danger) 15%,var(--surface));color:var(--danger)}.lp-compare-us li>span{background:rgba(255,255,255,0.25);color:#fff}.lp-compare-us li b{font-weight:800}.lp-testimonials{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.lp-testimonial{padding:28px;background:var(--surface);border:1px solid var(--border);border-radius:20px;transition:transform 0.3s,border-color 0.3s}.lp-testimonial:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--primary) 30%,var(--border))}.lp-testimonial .lp-stars{margin-bottom:14px;font-size:14px}.lp-testimonial blockquote{font-size:16px;line-height:1.6;color:var(--ink);margin:0 0 20px;font-weight:500;font-style:italic}.lp-testimonial footer{display:flex;align-items:center;gap:12px}.lp-tm-avatar{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;font-weight:800}.lp-testimonial footer strong{display:block;font-size:14px;color:var(--ink);font-weight:800}.lp-testimonial footer span{font-size:12px;color:var(--muted);font-weight:500}.lp-pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}.lp-price-card{position:relative;padding:32px 28px;background:var(--surface);border:1px solid var(--border);border-radius:22px;display:flex;flex-direction:column;gap:24px;transition:transform 0.3s,border-color 0.3s,box-shadow 0.3s}.lp-price-card:hover{transform:translateY(-4px)}.lp-price-featured{background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--primary) 4%,var(--surface)));border:2px solid var(--primary);box-shadow:0 24px 60px color-mix(in srgb,var(--primary) 25%,transparent);transform:scale(1.04)}.lp-price-featured:hover{transform:scale(1.04) translateY(-4px)}.lp-price-tag{position:absolute;top:-14px;left:50%;transform:translateX(-50%);padding:6px 16px;background:linear-gradient(135deg,var(--primary),#8b5cf6);color:#fff;border-radius:999px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:0.06em;box-shadow:0 8px 20px color-mix(in srgb,var(--primary) 35%,transparent)}.lp-price-name{font-size:14px;font-weight:800;color:var(--primary);text-transform:uppercase;letter-spacing:0.08em}.lp-price-amount{display:flex;align-items:baseline;gap:6px;margin:8px 0}.lp-price-amount strong{font-size:48px;font-weight:850;color:var(--ink);letter-spacing:-0.02em;line-height:1}.lp-price-amount span{font-size:15px;color:var(--muted);font-weight:600}.price-local-hint{font-size:13px;font-weight:500;color:var(--muted);opacity:0.8;display:inline}.lp-price-card header>p{font-size:14px;color:var(--ink-soft);margin:0;font-weight:500}.lp-price-card ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;flex:1}.lp-price-card li{display:flex;align-items:flex-start;gap:10px;font-size:14px;font-weight:500;color:var(--ink);position:relative;padding-left:24px}.lp-price-card li::before{content:"";position:absolute;left:0;top:4px;width:16px;height:16px;border-radius:50%;background:color-mix(in srgb,#16a34a 15%,transparent);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2316a34a' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");background-size:12px;background-position:center;background-repeat:no-repeat}.lp-price-btn{width:100%;justify-content:center}.lp-faq{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:12px}.lp-faq-item{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:0;overflow:hidden;transition:border-color 0.2s}.lp-faq-item[open]{border-color:color-mix(in srgb,var(--primary) 35%,var(--border))}.lp-faq-item summary{padding:20px 24px;font-size:16px;font-weight:700;color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:space-between;list-style:none;user-select:none}.lp-faq-item summary::-webkit-details-marker{display:none}.lp-faq-icon{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;background:var(--surface-subtle);border-radius:50%;color:var(--primary);font-size:18px;font-weight:700;transition:transform 0.25s,background 0.2s;flex-shrink:0;margin-left:16px}.lp-faq-item[open] .lp-faq-icon{transform:rotate(45deg);background:var(--primary);color:#fff}.lp-faq-item p{padding:0 24px 22px;margin:0;font-size:15px;line-height:1.65;color:var(--ink-soft);font-weight:500}.lp-final-cta{position:relative;z-index:1;max-width:1200px;margin:0 auto 40px;padding:0 32px}.lp-final-cta-inner{position:relative;padding:80px 60px;background:linear-gradient(135deg,var(--primary),#8b5cf6,#ec4899);background-size:200% 200%;animation:lp-gradient-shift 10s ease infinite;border-radius:32px;text-align:center;color:#fff;overflow:hidden;box-shadow:0 40px 100px color-mix(in srgb,var(--primary) 30%,transparent)}.lp-final-cta-inner::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 20% 50%,rgba(255,255,255,0.15),transparent 40%),radial-gradient(circle at 80% 50%,rgba(255,255,255,0.1),transparent 40%);pointer-events:none}.lp-final-cta-inner>*{position:relative;z-index:1}.lp-final-cta-inner .lp-eyebrow{background:rgba(255,255,255,0.2);color:#fff;margin-bottom:20px}.lp-final-cta-inner h2{font-size:clamp(32px,4.5vw,52px);font-weight:850;line-height:1.1;letter-spacing:-0.02em;margin:0 0 20px;color:#fff}.lp-final-cta-inner>p{font-size:18px;color:rgba(255,255,255,0.9);font-weight:500;margin:0 0 36px;max-width:600px;margin-left:auto;margin-right:auto}.lp-final-cta-inner .lp-cta-btn{background:#fff;color:var(--primary);font-weight:800;box-shadow:0 12px 30px rgba(0,0,0,0.2)}.lp-final-cta-inner .lp-cta-btn:hover{background:#fff;color:var(--primary);transform:translateY(-2px);box-shadow:0 20px 40px rgba(0,0,0,0.3)}.lp-fine{font-size:13px!important;color:rgba(255,255,255,0.75)!important;margin-top:18px!important;margin-bottom:0!important}.lp-footer{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:60px 32px 40px;border-top:1px solid var(--border)}.lp-footer-inner{display:grid;grid-template-columns:1.2fr 2fr;gap:60px;margin-bottom:40px}.lp-footer-brand{display:flex;flex-direction:column;gap:12px}.lp-footer-brand .brand-mark{width:36px;height:36px}.lp-footer-brand>span{font-size:17px;font-weight:800;color:var(--ink)}.lp-footer-brand p{font-size:14px;color:var(--ink-soft);font-weight:500;line-height:1.55;max-width:320px;margin:0}.lp-footer-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.lp-footer-cols>div{display:flex;flex-direction:column;gap:10px}.lp-footer-cols strong{font-size:13px;font-weight:800;color:var(--ink);text-transform:uppercase;letter-spacing:0.06em;margin-bottom:4px}.lp-footer-cols a{color:var(--ink-soft);font-size:14px;font-weight:500;transition:color 0.15s}.lp-footer-cols a:hover{color:var(--primary)}.lp-footer-cols .lp-footer-soon{color:var(--muted);font-size:14px;font-weight:500;cursor:not-allowed;display:inline-flex;align-items:baseline;gap:5px}.lp-footer-cols .lp-footer-soon small{color:color-mix(in srgb,var(--muted) 70%,transparent);font-size:11px;font-weight:700;letter-spacing:0.04em;text-transform:uppercase}.lp-footer-bottom{padding-top:30px;border-top:1px solid var(--border);font-size:13px;color:var(--muted);font-weight:500;text-align:center}@media (max-width: 1024px){.lp-hero{grid-template-columns:1fr;padding:60px 24px 80px;gap:40px}.lp-showcase{height:500px;transform:scale(0.85);transform-origin:center}.lp-stats{grid-template-columns:repeat(2,1fr);gap:32px;padding:60px 24px}.lp-bento{grid-template-columns:repeat(2,1fr)}.lp-bento-1,.lp-bento-4,.lp-bento-6,.lp-bento-8{grid-column:span 2}.lp-bento-1{grid-row:span 1}.lp-bento-2,.lp-bento-3,.lp-bento-5,.lp-bento-7{grid-column:span 1}.lp-steps{flex-direction:column}.lp-step-arrow{justify-content:center;transform:rotate(90deg)}.lp-compare{grid-template-columns:1fr}.lp-pricing{grid-template-columns:1fr}.lp-price-featured{transform:scale(1)}.lp-price-featured:hover{transform:translateY(-4px)}.lp-testimonials{grid-template-columns:1fr}.lp-footer-inner{grid-template-columns:1fr;gap:40px}}.lp-nav-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;padding:8px;background:none;border:none;cursor:pointer;border-radius:8px;transition:background 0.15s}.lp-nav-burger:hover{background:var(--surface-muted)}.lp-nav-burger span{display:block;width:100%;height:2px;background:var(--ink);border-radius:2px;transition:transform 0.25s,opacity 0.25s}.lp-nav-burger.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.lp-nav-burger.is-open span:nth-child(2){opacity:0}.lp-nav-burger.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.lp-mobile-menu{position:fixed;top:0;left:0;right:0;bottom:0;z-index:49;background:color-mix(in srgb,var(--surface) 96%,transparent);padding-top:80px;overflow-y:auto;animation:lp-menu-fade-in 0.2s ease}.lp-mobile-menu[hidden]{display:none}@keyframes lp-menu-fade-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.lp-mobile-menu-inner{max-width:400px;margin:0 auto;padding:24px;display:flex;flex-direction:column;gap:4px}.lp-mobile-link{display:block;padding:14px 16px;font-size:17px;font-weight:600;color:var(--ink);border-radius:12px;transition:background 0.15s;text-align:left;background:none;border:none;cursor:pointer;width:100%}.lp-mobile-link:hover{background:var(--surface-muted)}.lp-mobile-divider{border:none;border-top:1px solid var(--border);margin:8px 0}.lp-mobile-cta{margin-top:8px;width:100%;text-align:center;justify-content:center}@media (max-width: 768px){.lp-nav-links{display:none}.lp-nav-cta{display:none}.lp-nav-burger{display:flex}.lp-nav-inner{padding:0 20px;gap:12px}.lp-section{padding:60px 20px}.lp-section-head{margin-bottom:40px}.lp-bento{grid-template-columns:1fr}.lp-bento-1,.lp-bento-2,.lp-bento-3,.lp-bento-4,.lp-bento-5,.lp-bento-6,.lp-bento-7,.lp-bento-8{grid-column:span 1;grid-row:span 1}.lp-final-cta-inner{padding:50px 28px}.lp-footer-cols{grid-template-columns:repeat(2,1fr)}.lp-showcase{height:420px;transform:scale(0.7)}.lp-card-main{width:280px;left:10px}.lp-card-chat{width:250px;right:10px}.lp-card-battle{width:210px;right:10px;top:220px}.lp-hero-actions{flex-direction:column;align-items:stretch}.lp-hero-actions button{justify-content:center}.lp-stats{grid-template-columns:1fr 1fr}}@media (prefers-reduced-motion: reduce){.lp-mesh,.lp-float-1,.lp-float-2,.lp-float-3,.lp-float-4,.lp-float-5,.lp-pulse-dot::before,.lp-gradient-text,.lp-final-cta-inner,.lp-progress-bar>div{animation:none!important}}.lp-trust-checks{display:flex;flex-wrap:wrap;gap:18px}.lp-trust-checks span{display:inline-flex;align-items:center;gap:7px;font-size:14px;color:var(--ink-soft);font-weight:600}.lp-trust-checks svg{width:16px;height:16px;color:#16a34a;flex-shrink:0}.lp-value-strip{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:70px 32px;display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.lp-value{display:flex;flex-direction:column;gap:10px}.lp-value-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:4px;box-shadow:0 8px 20px rgba(99,102,241,0.2)}.lp-value-icon svg{width:22px;height:22px}.lp-value strong{font-size:16px;font-weight:800;color:var(--ink);letter-spacing:-0.005em}.lp-value span{font-size:14px;color:var(--ink-soft);font-weight:500;line-height:1.55}.lp-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.lp-pillar{padding:32px 28px;background:var(--surface);border:1px solid var(--border);border-radius:20px;position:relative;transition:transform 0.3s,border-color 0.3s,box-shadow 0.3s}.lp-pillar:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--primary) 35%,var(--border));box-shadow:0 20px 50px rgba(16,24,40,0.08)}.lp-pillar-num{font-size:13px;font-weight:900;background:linear-gradient(135deg,var(--primary),#8b5cf6);-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:0.06em;margin-bottom:14px}.lp-pillar h3{font-size:20px;font-weight:800;color:var(--ink);margin:0 0 12px;letter-spacing:-0.01em;line-height:1.25}.lp-pillar p{font-size:15px;color:var(--ink-soft);line-height:1.6;margin:0;font-weight:500}@media (max-width: 1024px){.lp-value-strip{grid-template-columns:repeat(2,1fr);gap:32px}.lp-pillars{grid-template-columns:1fr}}@media (max-width: 768px){.lp-value-strip{grid-template-columns:1fr;padding:50px 20px}.lp-trust-checks{flex-direction:column;gap:8px}}.lp-pricing-note{text-align:center;margin:32px 0 0;font-size:13px;color:var(--muted);font-weight:500;font-style:italic}.lp-access-section{background:linear-gradient(135deg,color-mix(in srgb,#ec4899 4%,transparent),color-mix(in srgb,var(--primary) 4%,transparent),color-mix(in srgb,#06b6d4 4%,transparent));border-radius:32px;padding:80px 60px}.lp-access-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:60px;align-items:center}.lp-access-copy h2{font-size:clamp(28px,3.5vw,42px);font-weight:850;line-height:1.15;letter-spacing:-0.02em;color:var(--ink);margin:12px 0 16px}.lp-access-copy>p{font-size:16px;color:var(--ink-soft);line-height:1.6;font-weight:500;margin:0 0 28px}.lp-access-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.lp-access-list li{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:14px;row-gap:4px;padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:14px;transition:border-color 0.2s,transform 0.2s}.lp-access-list li:hover{border-color:color-mix(in srgb,var(--primary) 40%,var(--border));transform:translateX(4px)}.lp-access-tag{grid-row:span 2;display:inline-flex;align-items:center;padding:4px 10px;background:linear-gradient(135deg,var(--primary),#8b5cf6);color:#fff;border-radius:999px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0.05em;align-self:center;white-space:nowrap}.lp-access-list strong{font-size:15px;font-weight:800;color:var(--ink);letter-spacing:-0.005em}.lp-access-list li>span:not(.lp-access-tag){font-size:13px;color:var(--ink-soft);font-weight:500;line-height:1.45}.lp-access-demo{display:flex;flex-direction:column;gap:16px}.lp-access-toggles{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:22px 22px 18px;box-shadow:0 24px 60px rgba(16,24,40,0.08)}.lp-access-toggles strong{display:block;font-size:13px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:0.06em;margin-bottom:14px}.lp-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:9px 0;font-size:14px;font-weight:600;color:var(--ink);border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent)}.lp-toggle-row:last-child{border-bottom:none}.lp-toggle{position:relative;width:36px;height:20px;background:var(--surface-muted);border-radius:999px;transition:background 0.2s;flex-shrink:0}.lp-toggle i{position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,0.15);transition:transform 0.2s}.lp-toggle.is-on{background:var(--primary)}.lp-toggle.is-on i{transform:translateX(16px)}.lp-access-preview{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:18px}.lp-access-preview small{display:block;font-size:10px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:0.1em;margin-bottom:10px}.lp-access-preview p{margin:0;font-size:14px;color:var(--ink);font-weight:500}.lp-sticky-cta{position:fixed;bottom:16px;left:16px;right:16px;z-index:60;display:none;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px 12px 20px;background:color-mix(in srgb,var(--surface) 96%,transparent);border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:16px;box-shadow:0 12px 36px rgba(16,24,40,0.15);transform:translateY(120%);transition:transform 0.35s cubic-bezier(0.16,1,0.3,1)}.lp-sticky-cta.is-visible{transform:translateY(0)}.lp-sticky-info{display:flex;flex-direction:column;line-height:1.2}.lp-sticky-info strong{font-size:14px;color:var(--ink);font-weight:800}.lp-sticky-info span{font-size:11px;color:var(--muted);font-weight:600}@media (max-width: 768px){.lp-sticky-cta{display:flex}.lp-access-section{padding:50px 28px}}@media (max-width: 1024px){.lp-access-grid{grid-template-columns:1fr;gap:40px}}.lp-nav-link.is-active{color:var(--primary)}.lp-nav-link{position:relative;padding:6px 2px}.lp-nav-link::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--primary);border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform 0.25s ease}.lp-nav-link.is-active::after,.lp-nav-link:hover::after{transform:scaleX(1)}.lp-section+.lp-section{padding-top:60px}.lp-hero-title,.lp-section-head h2,.lp-final-cta-inner h2{text-wrap:balance}.lp-hero-sub,.lp-section-head p,.lp-final-cta-inner>p{text-wrap:pretty}.lp-card{position:absolute;background:color-mix(in srgb,var(--surface) 96%,transparent);border:1px solid color-mix(in srgb,var(--border) 80%,transparent)}.lp-card::before{content:"";position:absolute;inset:-1px;border-radius:inherit;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 30%,transparent),color-mix(in srgb,#8b5cf6 30%,transparent),transparent 50%);z-index:-1;opacity:0.5;pointer-events:none}.welcome-gate:has(.lp):not([hidden]){scroll-behavior:smooth}.lp-bento-icon,.lp-step-icon,.lp-value-icon{position:relative}.lp-bento-icon::after,.lp-step-icon::after,.lp-value-icon::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 1px 0 rgba(255,255,255,0.25);pointer-events:none}.lp-faq-item summary:hover{color:var(--primary)}.lp-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:80px;background:linear-gradient(to top,var(--bg),transparent);pointer-events:none}.welcome-gate.is-signup:has(.lp):not([hidden]){background:var(--bg);position:fixed;overflow-y:auto}.welcome-gate.is-signup:has(.lp):not([hidden])::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(600px circle at 15% 20%,color-mix(in srgb,var(--primary) 22%,transparent),transparent 60%),radial-gradient(600px circle at 85% 75%,color-mix(in srgb,#8b5cf6 18%,transparent),transparent 60%),radial-gradient(700px circle at 45% 100%,color-mix(in srgb,#06b6d4 14%,transparent),transparent 60%);filter:blur(40px)}.welcome-gate.is-signup:has(.lp):not([hidden])::after{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(to right,color-mix(in srgb,var(--ink) 5%,transparent) 1px,transparent 1px),linear-gradient(to bottom,color-mix(in srgb,var(--ink) 5%,transparent) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(circle at center,black 30%,transparent 80%);-webkit-mask-image:radial-gradient(circle at center,black 30%,transparent 80%)}.welcome-gate.is-signup:has(.lp):not([hidden]) .welcome-stage{position:relative;z-index:1}.welcome-signup{position:absolute;display:grid!important;grid-template-columns:minmax(280px,0.9fr) minmax(380px,1.1fr)!important;gap:0;width:min(1080px,100%)!important;padding:0!important;border-radius:28px!important;border:1px solid color-mix(in srgb,var(--border) 60%,transparent)!important;background:color-mix(in srgb,var(--surface) 92%,transparent)!important;box-shadow:0 40px 100px color-mix(in srgb,var(--primary) 18%,transparent),0 8px 24px rgba(16,24,40,0.08),inset 0 1px 0 rgba(255,255,255,0.6)!important;overflow:hidden}.welcome-signup::before{content:none!important}.welcome-signup.is-login{width:min(960px,100%)!important;grid-template-columns:minmax(280px,0.92fr) minmax(360px,1fr)!important}.welcome-auth-side{position:relative;overflow:hidden;padding:36px!important;min-height:640px!important;background:linear-gradient(160deg,color-mix(in srgb,var(--primary) 92%,#000) 0%,color-mix(in srgb,#6366f1 80%,#000) 35%,color-mix(in srgb,#8b5cf6 72%,#000) 70%,color-mix(in srgb,#ec4899 65%,#000) 100%)!important;background-size:200% 200%!important;animation:auth-gradient-shift 14s ease infinite;color:#fff;display:flex!important;flex-direction:column;justify-content:space-between}@keyframes auth-gradient-shift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.welcome-auth-side::before{content:"";position:absolute;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,0.18),transparent 70%);filter:blur(40px);top:-80px;right:-80px;animation:auth-orb-1 12s ease-in-out infinite;background-size:auto!important;mask-image:none!important;-webkit-mask-image:none!important}.welcome-auth-side::after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;border:none!important;background:radial-gradient(circle,rgba(255,200,100,0.22),transparent 70%)!important;filter:blur(40px);bottom:-60px!important;right:50%;left:-80px!important;animation:auth-orb-2 14s ease-in-out infinite}@keyframes auth-orb-1{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-40px,50px) scale(1.15)}}@keyframes auth-orb-2{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(60px,-40px) scale(1.1)}}.welcome-auth-side>.welcome-auth-mark{position:relative;z-index:2;width:auto!important;max-width:70px!important;height:auto;padding:10px!important;border:1px solid rgba(255,255,255,0.25)!important;border-radius:14px!important;background:rgba(255,255,255,0.95)!important;box-shadow:0 12px 30px rgba(0,0,0,0.25)!important;align-self:flex-start}.welcome-auth-side .eyebrow{margin-top:0!important;color:rgba(255,255,255,0.85)!important;font-size:12px!important;font-weight:800;text-transform:uppercase;letter-spacing:0.1em;position:relative;z-index:2}.welcome-auth-side h2{position:relative;z-index:2;max-width:100%!important;margin:8px 0 24px!important;color:#fff!important;font-size:clamp(28px,3vw,38px)!important;font-weight:850!important;line-height:1.1!important;letter-spacing:-0.02em!important}.welcome-auth-preview{position:relative;z-index:2;display:grid!important;gap:6px!important;padding:20px 22px!important;border:1px solid rgba(255,255,255,0.22)!important;border-radius:20px!important;background:rgba(255,255,255,0.12)!important;box-shadow:0 12px 36px rgba(0,0,0,0.2),inset 0 1px 0 rgba(255,255,255,0.25)!important;transition:transform 0.3s ease}.welcome-auth-preview:hover{transform:translateY(-3px)}.welcome-auth-preview span{color:rgba(255,255,255,0.75)!important;font-size:11px!important;font-weight:800!important;letter-spacing:0.12em!important}.welcome-auth-preview strong{color:#fff!important;font-size:18px!important;font-weight:800!important;line-height:1.2!important}.welcome-auth-preview small{color:rgba(255,255,255,0.78)!important;font-size:13px!important;font-weight:500!important;line-height:1.5!important}.welcome-auth-pills{position:relative;z-index:2;display:flex!important;flex-wrap:wrap;gap:8px!important;margin-top:18px!important}.welcome-auth-pills span{display:inline-flex;align-items:center;gap:5px;padding:7px 12px!important;border:1px solid rgba(255,255,255,0.25)!important;border-radius:999px!important;background:rgba(255,255,255,0.12)!important;color:#fff!important;font-size:12px!important;font-weight:700!important}.welcome-auth-pills span::before{content:"✓";color:#4ade80;font-weight:900}.welcome-auth-main{padding:40px 36px!important;display:flex;flex-direction:column;justify-content:center;min-height:640px}.welcome-auth-main .eyebrow{display:inline-block;padding:5px 12px!important;border-radius:999px;background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary)!important;font-size:11px!important;font-weight:800!important;letter-spacing:0.08em!important;width:fit-content}.welcome-auth-main>h2{margin:12px 0 6px!important;color:var(--ink)!important;font-size:clamp(28px,3.4vw,38px)!important;font-weight:850!important;line-height:1.1!important;letter-spacing:-0.02em!important}.welcome-selling-points{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;margin:22px 0 22px!important}.welcome-selling-points div{position:relative;display:flex!important;flex-direction:row!important;align-items:flex-start;gap:12px!important;min-height:0!important;padding:12px 14px!important;border:1px solid color-mix(in srgb,var(--border) 70%,transparent)!important;border-radius:12px!important;background:color-mix(in srgb,var(--surface) 70%,transparent)!important;box-shadow:none!important;transition:border-color 0.2s,transform 0.2s}.welcome-selling-points div:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--border))!important;transform:translateX(2px)}.welcome-selling-points div::before{content:"✓"!important;display:inline-flex;align-items:center;justify-content:center;width:22px!important;height:22px!important;border-radius:50%!important;background:linear-gradient(135deg,var(--primary),#8b5cf6)!important;color:#fff!important;font-size:12px!important;font-weight:900!important;flex-shrink:0;margin-top:2px}.welcome-selling-points div>*{display:block}.welcome-selling-points strong{font-size:14px!important;font-weight:800!important;color:var(--ink)!important;line-height:1.25!important}.welcome-selling-points span{font-size:13px!important;color:var(--ink-soft)!important;font-weight:500!important;line-height:1.45!important;margin-top:2px}.welcome-mode-switch{position:relative;display:grid!important;grid-template-columns:1fr 1fr!important;gap:0!important;margin-top:16px!important;padding:4px!important;border:1px solid color-mix(in srgb,var(--border) 80%,transparent)!important;border-radius:999px!important;background:color-mix(in srgb,var(--surface-subtle) 80%,transparent)!important;box-shadow:inset 0 1px 2px rgba(16,24,40,0.04)}.welcome-mode-switch button{position:relative;z-index:1;min-height:38px!important;padding:0!important;border:none!important;border-radius:999px!important;background:transparent!important;color:var(--ink-soft)!important;font-size:13px!important;font-weight:700!important;box-shadow:none!important;transition:color 0.2s!important}.welcome-mode-switch button:hover{color:var(--ink)!important;transform:none!important}.welcome-mode-switch button.active{background:var(--surface)!important;color:var(--primary)!important;box-shadow:0 1px 3px rgba(16,24,40,0.08),inset 0 1px 0 rgba(255,255,255,0.8)!important}.welcome-form{display:grid;gap:12px!important;margin-top:20px!important}.welcome-signup .field{gap:6px!important}.welcome-signup .field span{color:var(--ink-soft)!important;font-size:13px!important;font-weight:700!important;letter-spacing:0.01em}.welcome-signup input{min-height:46px!important;padding:0 14px!important;border:1px solid color-mix(in srgb,var(--border) 80%,transparent)!important;border-radius:12px!important;background:color-mix(in srgb,var(--surface) 70%,transparent)!important;box-shadow:inset 0 1px 2px rgba(16,24,40,0.03)!important;font-size:15px!important;font-weight:500!important;transition:border-color 0.18s,box-shadow 0.18s,background 0.18s!important}.welcome-signup input:hover{border-color:color-mix(in srgb,var(--primary) 25%,var(--border))!important}.welcome-signup input:focus{outline:none!important;border-color:var(--primary)!important;background:var(--surface)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 18%,transparent),inset 0 1px 2px rgba(16,24,40,0.03)!important}.welcome-signup .btn-primary{width:100%!important;min-height:50px!important;padding:0 22px!important;border-radius:999px!important;border:none!important;background:var(--primary)!important;color:#fff!important;font-size:15px!important;font-weight:800!important;letter-spacing:0.005em;box-shadow:0 8px 24px color-mix(in srgb,var(--primary) 35%,transparent),inset 0 1px 0 rgba(255,255,255,0.2)!important;transition:transform 0.18s,box-shadow 0.18s!important;margin-top:4px}.welcome-signup .btn-primary:hover{transform:translateY(-2px)!important;background:var(--primary-hover)!important;box-shadow:0 14px 36px color-mix(in srgb,var(--primary) 45%,transparent),inset 0 1px 0 rgba(255,255,255,0.25)!important}.welcome-signup .btn-secondary{width:100%!important;min-height:46px!important;border-radius:12px!important;font-weight:700!important;border:1px solid var(--border)!important;background:var(--surface)!important;color:var(--ink)!important}.welcome-signup .btn-secondary:hover{border-color:var(--primary)!important;background:color-mix(in srgb,var(--primary) 4%,var(--surface))!important}.welcome-plan-select{display:grid;gap:12px!important;margin-top:4px;padding:16px!important;border:1px solid color-mix(in srgb,var(--border) 80%,transparent)!important;border-radius:16px!important;background:color-mix(in srgb,var(--surface) 60%,transparent)!important}.welcome-plan-head .eyebrow{background:none!important;padding:0!important;margin-bottom:2px}.welcome-plan-head strong{font-size:15px!important;font-weight:800;color:var(--ink)}#welcome-status,#welcome-status.status{margin-top:4px!important;border-radius:12px!important}.welcome-recovery-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:6px;justify-content:center}.welcome-link-btn{background:none!important;border:none!important;padding:4px 0!important;color:var(--primary)!important;font-size:13px!important;font-weight:700!important;cursor:pointer;text-decoration:none;transition:color 0.15s;min-height:0!important;box-shadow:none!important;border-radius:0!important}.welcome-link-btn:hover{color:var(--primary-hover)!important;text-decoration:underline;background:none!important;transform:none!important}.welcome-link-btn-passwordless{flex-basis:100%;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px!important;border:1px dashed color-mix(in srgb,var(--primary) 30%,var(--border))!important;border-radius:999px!important;background:color-mix(in srgb,var(--primary) 5%,transparent)!important}.welcome-link-btn-passwordless::before{content:"✉";font-size:14px}.welcome-link-btn-passwordless:hover{background:color-mix(in srgb,var(--primary) 10%,transparent)!important;text-decoration:none!important}.welcome-checkbox-field{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-soft, var(--muted));cursor:pointer;user-select:none}.welcome-checkbox-field input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:var(--primary);cursor:pointer}.welcome-verify-panel{display:grid;gap:14px;margin-top:18px;padding:20px;border:1px solid color-mix(in srgb,var(--primary) 20%,var(--border));border-radius:16px;background:color-mix(in srgb,var(--primary-soft) 30%,var(--surface))}.welcome-verify-panel strong{font-size:17px;font-weight:800;color:var(--ink)}.welcome-verify-panel p{margin:0;font-size:14px;color:var(--ink-soft);font-weight:500;line-height:1.5}@media (max-width: 880px){.welcome-signup{grid-template-columns:1fr!important;width:min(540px,100%)!important}.welcome-signup.is-login{grid-template-columns:1fr!important}.welcome-auth-side{min-height:0!important;padding:28px!important}.welcome-auth-side>.welcome-auth-mark{max-width:56px!important}.welcome-auth-side h2{font-size:24px!important;margin-bottom:16px!important}.welcome-auth-main{padding:28px!important;min-height:0!important}}.welcome-auth-side-content{position:relative;z-index:2;display:flex;flex-direction:column;gap:0;margin-top:auto}.welcome-auth-side .welcome-auth-mark{margin-bottom:auto}.welcome-auth-tagline{margin:6px 0 0!important;color:var(--ink-soft);font-size:14px;font-weight:500;line-height:1.5}.welcome-signup.is-login .welcome-auth-tagline{display:none}.welcome-signup.is-login .welcome-auth-main>h2{margin-bottom:4px!important}.welcome-auth-features{position:relative;z-index:2;display:flex;flex-direction:column;gap:0}.welcome-auth-feature{display:flex;align-items:center;gap:10px;padding:9px 0}.welcome-auth-feature-tick{flex-shrink:0;width:18px;height:18px;border-radius:50%;background:rgba(74,222,128,0.15);border:1px solid rgba(74,222,128,0.3);color:#4ade80;font-size:10px;font-weight:900;display:inline-flex;align-items:center;justify-content:center}.welcome-auth-feature>span{color:rgba(255,255,255,0.7)!important;font-size:13px!important;font-weight:550!important;line-height:1.4!important;letter-spacing:0!important}.welcome-referral-collapse{display:grid;gap:8px}.welcome-referral-collapse[hidden]{display:none}.welcome-referral-toggle-btn{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:none;color:var(--primary);font-size:13px;font-weight:700;cursor:pointer;opacity:0.85;transition:opacity 0.15s}.welcome-referral-toggle-btn:hover{opacity:1}.welcome-referral-inner[hidden]{display:none}@media (max-width: 880px){.welcome-auth-feature{padding:7px 0}.welcome-auth-feature>span{font-size:12px!important}}.home-compact-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 4px;margin-bottom:4px;flex-wrap:wrap}.home-greeting .eyebrow{margin-bottom:4px}.home-greeting h1{margin:0;font-size:clamp(22px,2.6vw,30px);font-weight:800;letter-spacing:-0.02em;line-height:1.1;color:var(--ink)}.home-compact-stats{display:flex;gap:10px;flex-wrap:wrap}.home-stat-pill{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--border);border-radius:999px;background:var(--surface);font-size:13px;font-weight:600;color:var(--ink-soft);box-shadow:0 1px 2px rgba(16,24,40,0.04);cursor:pointer;transition:border-color 0.15s,color 0.15s,background 0.15s,transform 0.15s,box-shadow 0.15s}button.home-stat-pill{font-family:inherit}.home-stat-pill:hover{border-color:color-mix(in srgb,var(--primary) 50%,var(--border));color:var(--ink);background:color-mix(in srgb,var(--primary) 5%,var(--surface));transform:translateY(-1px);box-shadow:0 4px 12px color-mix(in srgb,var(--primary) 12%,transparent)}.home-stat-pill:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.home-stat-pill strong{font-size:15px;font-weight:800;color:var(--ink)}.home-next-action{position:relative;display:grid;grid-template-columns:60px minmax(0,1fr);gap:18px;align-items:start;padding:22px 26px 22px;margin-bottom:18px;border-radius:22px;border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));background:radial-gradient(140% 160% at 0% 0%,color-mix(in srgb,var(--primary) 14%,transparent),transparent 60%),radial-gradient(120% 140% at 100% 100%,color-mix(in srgb,var(--accent, #d76148) 6%,transparent),transparent 70%),color-mix(in srgb,var(--primary) 4%,var(--surface));box-shadow:0 1px 0 rgba(255,255,255,0.55) inset,0 18px 40px -22px color-mix(in srgb,var(--primary) 30%,transparent),0 4px 14px -8px rgba(31,42,37,0.10)}.home-next-action-icon{width:60px;height:60px;border-radius:16px;display:grid;place-items:center;flex-shrink:0;color:#fff;background:linear-gradient(135deg,var(--accent, #d76148),color-mix(in srgb,var(--accent, #d76148) 75%,#8a3520));box-shadow:0 8px 18px -8px color-mix(in srgb,var(--accent, #d76148) 60%,transparent),0 1px 0 rgba(255,255,255,0.18) inset;margin-top:2px}.home-next-action-icon svg{width:28px;height:28px;stroke-width:2.2}.home-next-action-body{min-width:0;display:grid;gap:6px}.home-next-action-eyebrow{margin:0;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0.2em;color:var(--primary)}.home-next-action h2{margin:0;font-size:21px;line-height:1.2;color:var(--ink);font-weight:800;letter-spacing:-0.01em}.home-next-action-sub{margin:0;color:var(--ink-muted, #6b5b42);line-height:1.5;font-size:14px;max-width:60ch}.home-next-action-meta{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 2px}.home-next-action-meta-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;background:color-mix(in srgb,var(--primary) 10%,transparent);border:1px solid color-mix(in srgb,var(--primary) 20%,transparent);color:color-mix(in srgb,var(--primary) 70%,var(--ink));font-size:11px;font-weight:700;letter-spacing:0.01em}.home-next-action-meta-chip svg{width:12px;height:12px;stroke-width:2}.home-next-action-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;grid-column:1 / -1;margin-top:10px}.home-next-action-cta{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;font-weight:700;font-size:13px;cursor:pointer;background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 96%,#fff),var(--primary));color:#fff;border:1px solid color-mix(in srgb,var(--primary) 80%,#1a3a2c);border-radius:999px;box-shadow:0 1px 0 rgba(255,255,255,0.28) inset,0 6px 16px -6px color-mix(in srgb,var(--primary) 60%,transparent);transition:transform 160ms cubic-bezier(0.2,0.9,0.3,1),box-shadow 160ms ease}.home-next-action-cta:hover{transform:translateY(-1px);box-shadow:0 1px 0 rgba(255,255,255,0.32) inset,0 10px 22px -8px color-mix(in srgb,var(--primary) 70%,transparent)}.home-next-action-cta:active{transform:translateY(0)}.home-next-action-cta svg{width:16px;height:16px}.home-next-action-dismiss{background:transparent;border:0;color:var(--ink-muted, #6b5b42);font-size:13px;padding:6px 10px;cursor:pointer;font-weight:500}.home-next-action-dismiss:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}@media (max-width: 900px){.home-next-action{grid-template-columns:48px minmax(0,1fr);gap:14px;padding:18px 20px}.home-next-action-icon{width:48px;height:48px;border-radius:14px}.home-next-action-icon svg{width:24px;height:24px}.home-next-action h2{font-size:19px}}@media (max-width: 560px){.home-next-action{grid-template-columns:1fr;gap:10px;padding:16px}.home-next-action-icon{width:44px;height:44px;border-radius:12px}.home-next-action h2{font-size:17px}.home-next-action-sub{font-size:13px}}@media (prefers-reduced-motion: reduce){.home-next-action-cta{transition:none}.home-next-action-cta:hover{transform:none}}.home-mission-card{position:relative;padding:0!important;border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border))!important;border-radius:22px!important;background:radial-gradient(800px circle at 0% 0%,color-mix(in srgb,var(--primary) 8%,transparent),transparent 50%),var(--surface)!important;overflow:hidden;box-shadow:0 24px 60px color-mix(in srgb,var(--primary) 8%,transparent),0 4px 14px rgba(16,24,40,0.04)!important}.mission-head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 24px;border-bottom:1px solid color-mix(in srgb,var(--border) 50%,transparent);flex-wrap:wrap}.mission-eyebrow{display:inline-flex;gap:8px;align-items:center;flex-wrap:wrap}.mission-tag{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;background:var(--primary);color:#fff;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:0.02em;box-shadow:0 4px 10px color-mix(in srgb,var(--primary) 30%,transparent)}.mission-tag svg{width:14px;height:14px}.mission-due-pill,.mission-streak-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 11px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:0.01em}.mission-due-pill{background:color-mix(in srgb,#f97316 14%,var(--surface));color:#c2410c;border:1px solid color-mix(in srgb,#f97316 30%,var(--border));cursor:pointer;transition:background 120ms ease}.mission-due-pill:hover{background:color-mix(in srgb,#f97316 24%,var(--surface))}.mission-streak-pill{background:color-mix(in srgb,#f59e0b 12%,var(--surface));color:#b45309;border:1px solid color-mix(in srgb,#f59e0b 30%,var(--border))}.mission-time-picker{display:inline-flex;align-items:center;gap:12px}.mission-time-picker>span{font-size:13px;color:var(--muted);font-weight:700}.mission-time-buttons{display:inline-flex;padding:3px;border:1px solid var(--border);border-radius:999px;background:var(--surface-subtle);gap:0}.mission-time-buttons button{min-height:28px!important;padding:4px 12px!important;border:none!important;border-radius:999px!important;background:transparent!important;color:var(--ink-soft)!important;font-size:12px!important;font-weight:700!important;box-shadow:none!important;transition:background 0.15s,color 0.15s!important}.mission-time-buttons button:hover{background:color-mix(in srgb,var(--primary) 6%,transparent)!important;color:var(--primary)!important;transform:none!important}.mission-time-buttons button.is-active{background:var(--primary)!important;color:#fff!important;box-shadow:0 2px 6px color-mix(in srgb,var(--primary) 30%,transparent)!important}.mission-body{display:grid;grid-template-columns:140px minmax(0,1fr);gap:24px;padding:22px 26px 24px;align-items:center}.mission-progress{position:relative;width:140px;height:140px;flex-shrink:0}.mission-ring{width:100%;height:100%;transform:rotate(-90deg)}.mission-ring-bg{stroke:color-mix(in srgb,var(--border) 70%,transparent)}.mission-ring-fill{stroke:url(#mission-grad);stroke:var(--primary);stroke-linecap:round;transition:stroke-dashoffset 1.2s cubic-bezier(0.16,1,0.3,1);filter:drop-shadow(0 4px 12px color-mix(in srgb,var(--primary) 40%,transparent))}.mission-ring-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.mission-ring-label strong{font-size:32px;font-weight:850;color:var(--ink);letter-spacing:-0.02em;line-height:1;background:linear-gradient(135deg,var(--primary),#8b5cf6);-webkit-background-clip:text;background-clip:text;color:transparent}.mission-ring-label span{margin-top:4px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0.1em;color:var(--muted)}.mission-content{min-width:0}.mission-lesson-eyebrow{margin:0 0 4px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0.1em;color:var(--muted)}.mission-lesson-title{margin:0 0 14px;font-size:clamp(18px,2.2vw,24px);font-weight:800;letter-spacing:-0.01em;line-height:1.2;color:var(--ink)}.mission-time-picker-inline{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px;padding:10px 12px 10px 14px;border:1px dashed color-mix(in srgb,var(--border) 80%,var(--primary));border-radius:12px;background:color-mix(in srgb,var(--primary) 4%,transparent);flex-wrap:wrap}.mission-time-picker-inline>span{font-size:13px;color:var(--ink-soft, var(--muted));font-weight:700}.mission-actions{display:flex;flex-direction:column;gap:10px}.mission-action{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:14px;padding:14px 18px;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow ;min-height:0!important}.mission-action:hover{transform:translateX(2px) translateY(-1px)!important;border-color:color-mix(in srgb,var(--primary) 50%,var(--border))!important;box-shadow:0 12px 28px color-mix(in srgb,var(--primary) 12%,transparent)!important;background:var(--surface)!important}.mission-action-primary{background:var(--primary)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 12px 30px color-mix(in srgb,var(--primary) 35%,transparent),inset 0 1px 0 rgba(255,255,255,0.2)!important;padding:16px 22px!important}.mission-action-primary:hover{background:var(--primary-hover)!important;box-shadow:0 18px 40px color-mix(in srgb,var(--primary) 45%,transparent),inset 0 1px 0 rgba(255,255,255,0.25)!important;border-color:transparent!important}.mission-action-icon{width:40px;height:40px;border-radius:12px;background:rgba(255,255,255,0.2);display:grid;place-items:center;flex-shrink:0;line-height:0}.mission-action-icon svg,.mission-action-icon .icon{width:20px;height:20px;stroke:#fff;display:block;margin:0}.mission-action-icon-sm{width:32px;height:32px;border-radius:10px;background:color-mix(in srgb,var(--primary) 8%,var(--surface-subtle));display:grid;place-items:center;flex-shrink:0;line-height:0}.mission-action-icon-sm svg,.mission-action-icon-sm .icon{width:16px;height:16px;stroke:var(--primary);display:block;margin:0}.mission-action-text{display:flex;flex-direction:column;gap:2px;min-width:0}.mission-action-text strong{font-size:15px;font-weight:800;letter-spacing:-0.005em;line-height:1.25}.mission-action-text span{font-size:13px;font-weight:500;opacity:0.85;line-height:1.4}.mission-action-primary .mission-action-text strong{color:#fff}.mission-action-primary .mission-action-text span{color:rgba(255,255,255,0.85)}.mission-action-time,.mission-action-time-sm{flex-shrink:0;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:0.01em}.mission-action-time{background:rgba(255,255,255,0.18);color:#fff}.mission-action-time-sm{background:var(--surface-subtle);color:var(--ink-soft);font-size:11px;padding:3px 8px}.mission-action-arrow{width:18px;height:18px;flex-shrink:0;transition:transform 0.18s}.mission-action-primary:hover .mission-action-arrow{transform:translateX(3px)}.mission-secondary-actions{display:flex;flex-direction:column;gap:8px}.mission-action-secondary{grid-template-columns:auto 1fr auto;padding:10px 14px}.mission-empty{text-align:center;padding:24px;color:var(--muted);font-weight:600;margin:0}.mission-checklist-strip{display:flex;align-items:center;gap:14px;padding:12px 24px;background:color-mix(in srgb,var(--primary) 5%,var(--surface-subtle));border-top:1px solid color-mix(in srgb,var(--border) 60%,transparent);font-size:13px;font-weight:700;color:var(--ink-soft)}.mission-cl-bar{flex:1;height:8px;background:color-mix(in srgb,var(--border) 80%,transparent);border-radius:999px;overflow:hidden;max-width:240px}.mission-cl-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--primary),#8b5cf6);transition:width 0.8s cubic-bezier(0.16,1,0.3,1)}@media (max-width: 768px){.home-compact-hero{flex-direction:column;align-items:flex-start;gap:12px}.home-compact-stats{width:100%}.mission-head{flex-direction:column;align-items:flex-start;gap:12px;padding:16px 18px}.mission-time-picker{width:100%;justify-content:space-between}.mission-body{grid-template-columns:1fr;gap:20px;padding:20px 18px;text-align:center}.mission-progress{justify-self:center;width:130px;height:130px}.mission-ring-label strong{font-size:28px}.mission-action{grid-template-columns:auto 1fr auto;text-align:left}.mission-action-arrow{display:none}.mission-checklist-strip{padding:12px 18px;flex-wrap:wrap}}.sc-complete-v2{display:flex;flex-direction:column;gap:24px;padding:28px 30px;border:1px solid var(--border);border-radius:22px;background:radial-gradient(800px circle at 0% 0%,color-mix(in srgb,var(--primary) 6%,transparent),transparent 50%),var(--surface);box-shadow:0 24px 60px rgba(16,24,40,0.06)}.sc-complete-hero{display:flex;align-items:center;gap:28px}.sc-complete-hero-text{flex:1;min-width:0}.sc-complete-hero-text .eyebrow{margin-bottom:4px}.sc-complete-hero-text h3{margin:0 0 10px;font-size:clamp(24px,3vw,32px);font-weight:850;letter-spacing:-0.02em;line-height:1.1;color:var(--ink)}.sc-complete-summary{margin:0 0 14px;color:var(--ink-soft);font-size:15px;font-weight:500;line-height:1.5}.sc-complete-summary strong{color:var(--ink);font-weight:800}.sc-complete-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.sc-complete-section{padding:18px 20px;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle)}.sc-complete-section h4{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:0.05em}.sc-complete-mastered{background:color-mix(in srgb,#16a34a 6%,var(--surface-subtle));border-color:color-mix(in srgb,#16a34a 22%,var(--border))}.sc-complete-mastered h4{color:#166534}.sc-complete-mastered svg{color:#16a34a}.sc-complete-weak{background:color-mix(in srgb,#f97316 6%,var(--surface-subtle));border-color:color-mix(in srgb,#f97316 22%,var(--border))}.sc-complete-weak h4{color:#c2410c}.sc-complete-weak svg{color:#ea580c}.sc-complete-section ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.sc-complete-section li{font-size:13px;font-weight:600;color:var(--ink);line-height:1.45;padding-left:16px;position:relative}.sc-complete-section li::before{content:"";position:absolute;left:0;top:9px;width:5px;height:5px;border-radius:50%;background:currentColor;opacity:0.5}.sc-complete-mastered li{color:#166534;text-decoration:line-through;text-decoration-color:color-mix(in srgb,#16a34a 50%,transparent)}.sc-complete-weak li{color:#9a3412}.sc-tomorrow-card{position:relative;display:flex;flex-direction:column;gap:6px;padding:20px 22px;border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 10%,var(--surface)),color-mix(in srgb,#8b5cf6 10%,var(--surface)));border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border))}.sc-tomorrow-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0.08em;color:var(--primary);margin-bottom:4px}.sc-tomorrow-eyebrow svg{width:14px;height:14px}.sc-tomorrow-card>strong{font-size:17px;font-weight:800;color:var(--ink);letter-spacing:-0.005em}.sc-tomorrow-card>p{margin:0;font-size:14px;color:var(--ink-soft);line-height:1.5;font-weight:500}.sc-complete-actions{display:flex;gap:10px;flex-wrap:wrap}.sc-complete-actions button{flex:1;min-width:200px;justify-content:center}@media (max-width: 768px){.sc-complete-v2{padding:20px}.sc-complete-hero{flex-direction:column;text-align:center}.sc-complete-grid{grid-template-columns:1fr}.sc-complete-actions button{flex:1 1 100%}}.side-menu-section-label{margin:16px 6px 6px;padding:0 6px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0.1em;color:var(--muted);line-height:1}.side-menu-section-label:first-child{margin-top:4px}.side-menu-more{margin:4px 0 0}.side-menu-more>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;margin:2px 6px 4px;border-radius:var(--r-sm);font-size:12px;font-weight:700;color:var(--muted);letter-spacing:0.04em;user-select:none}.side-menu-more>summary::-webkit-details-marker{display:none}.side-menu-more>summary:hover{background:color-mix(in srgb,var(--primary) 6%,var(--surface-subtle));color:var(--primary)}.side-menu-more-chev{width:14px;height:14px;transition:transform 200ms ease}.side-menu-more[open]>summary .side-menu-more-chev{transform:rotate(180deg)}.side-menu-more-body{display:contents}.side-menu-footer{margin-top:18px;padding-top:14px;border-top:1px dashed color-mix(in srgb,var(--border) 70%,transparent)}.side-menu-section-label-muted{color:color-mix(in srgb,var(--muted) 70%,transparent);font-size:11px;letter-spacing:0.14em}.tab.tab-footer,.menu-guide-btn.tab-footer{opacity:0.82}.tab.tab-footer strong{font-size:13px;font-weight:700}.tab.tab-footer span{font-size:11px}.tab.tab-footer:hover,.menu-guide-btn.tab-footer:hover{opacity:1}.starter-tutorial-backdrop:not([hidden]){display:grid;place-items:center;padding:24px;background:rgba(8,12,20,0.55);animation:starter-fade-in 0.3s ease both}@keyframes starter-fade-in{from{opacity:0}to{opacity:1}}.starter-tutorial-card{position:relative;width:min(640px,100%)!important;max-height:90vh;overflow-y:auto;padding:36px 36px 28px!important;border:1px solid color-mix(in srgb,var(--border) 60%,transparent)!important;border-radius:28px!important;background:color-mix(in srgb,var(--surface) 96%,transparent)!important;box-shadow:0 40px 100px rgba(8,12,20,0.28),0 8px 24px rgba(0,0,0,0.08),inset 0 1px 0 rgba(255,255,255,0.6)!important;animation:starter-slide-up 0.4s cubic-bezier(0.16,1,0.3,1) both}@keyframes starter-slide-up{from{opacity:0;transform:translateY(24px) scale(0.97)}to{opacity:1;transform:translateY(0) scale(1)}}.starter-tutorial-bg{position:absolute;inset:0;overflow:hidden;border-radius:28px;pointer-events:none;z-index:0}.starter-tutorial-orb{position:absolute;width:280px;height:280px;border-radius:50%;filter:blur(60px);opacity:0.35;animation:starter-orb-drift 14s ease-in-out infinite}.starter-tutorial-orb-1{background:radial-gradient(circle,var(--primary),transparent 70%);top:-100px;left:-80px}.starter-tutorial-orb-2{background:radial-gradient(circle,#8b5cf6,transparent 70%);top:20%;right:-120px;animation-delay:-6s}.starter-tutorial-orb-3{background:radial-gradient(circle,#ec4899,transparent 70%);bottom:-80px;left:30%;animation-delay:-10s}@keyframes starter-orb-drift{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(40px,-30px) scale(1.1)}}.starter-tutorial-card>*:not(.starter-tutorial-bg){position:relative;z-index:1}.starter-tutorial-close{position:absolute!important;top:16px!important;right:16px!important;width:36px!important;height:36px!important;padding:0!important;border:1px solid color-mix(in srgb,var(--border) 70%,transparent)!important;border-radius:50%!important;background:var(--surface)!important;color:var(--ink-soft)!important;display:inline-flex!important;align-items:center;justify-content:center;cursor:pointer;z-index:2;transition:background 0.15s,color 0.15s,border-color 0.15s,transform 0.15s!important;font-weight:normal!important;min-height:36px!important}.starter-tutorial-close svg{width:18px;height:18px}.starter-tutorial-close:hover{background:var(--surface-subtle)!important;color:var(--ink)!important;border-color:var(--border-strong)!important;transform:rotate(90deg)}.starter-tutorial-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;background:color-mix(in srgb,var(--primary) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 28%,var(--border));color:var(--primary);font-size:12px;font-weight:800;letter-spacing:0.04em;text-transform:uppercase;margin-bottom:16px}.starter-tutorial-chip-dot{width:6px;height:6px;border-radius:50%;background:var(--primary);position:relative}.starter-tutorial-chip-dot::before{content:"";position:absolute;inset:-2px;border-radius:50%;background:var(--primary);opacity:0.4;animation:starter-pulse 1.5s ease infinite}@keyframes starter-pulse{0%,100%{transform:scale(1);opacity:0.4}50%{transform:scale(2);opacity:0}}.starter-tutorial-card h2{margin:0 0 12px!important;font-size:clamp(26px,3.4vw,36px)!important;font-weight:850!important;letter-spacing:-0.02em!important;line-height:1.1!important;color:var(--ink)!important;text-wrap:balance}#starter-tutorial-copy{max-width:100%!important;margin:0 0 22px!important;font-size:16px!important;font-weight:500!important;line-height:1.6!important;color:var(--ink-soft)!important}.starter-tutorial-progress{height:6px!important;margin:0 0 24px!important;border-radius:999px!important;background:color-mix(in srgb,var(--border) 60%,transparent)!important;overflow:hidden}.starter-tutorial-progress span{display:block;width:20%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),#8b5cf6,#ec4899)!important;background-size:200% 100%;transition:width 0.4s cubic-bezier(0.16,1,0.3,1)!important;animation:starter-grad-shift 4s ease infinite}@keyframes starter-grad-shift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.starter-tutorial-checklist{display:flex!important;flex-direction:column;grid-template-columns:none!important;gap:8px!important;margin:0 0 24px!important;padding:0;list-style:none}.starter-tutorial-checklist li{display:flex!important;align-items:center;gap:12px;padding:12px 14px!important;border:1px solid color-mix(in srgb,var(--border) 70%,transparent)!important;border-radius:12px!important;background:color-mix(in srgb,var(--surface) 70%,transparent)!important;color:var(--ink-soft)!important;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow }.starter-tutorial-checklist li.active{border-color:var(--primary)!important;background:color-mix(in srgb,var(--primary) 6%,var(--surface))!important;color:var(--ink)!important;transform:translateX(2px);box-shadow:0 4px 16px color-mix(in srgb,var(--primary) 18%,transparent)}.starter-tutorial-checklist li.done{border-color:color-mix(in srgb,#16a34a 30%,var(--border))!important;background:color-mix(in srgb,#16a34a 5%,var(--surface))!important;color:var(--ink-soft)!important}.starter-tutorial-checklist span{display:inline-flex!important;align-items:center;justify-content:center;width:26px!important;height:26px!important;margin:0!important;border-radius:50%!important;background:color-mix(in srgb,var(--surface-muted) 80%,transparent)!important;color:var(--muted)!important;font-size:12px!important;font-weight:800!important;flex-shrink:0;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow }.starter-tutorial-checklist li.active span{background:linear-gradient(135deg,var(--primary),#8b5cf6)!important;color:#fff!important;box-shadow:0 4px 10px color-mix(in srgb,var(--primary) 35%,transparent)}.starter-tutorial-checklist li.done span{background:#16a34a!important;color:#fff!important}.starter-tutorial-checklist li.done span::before{content:"✓"}.starter-tutorial-checklist li.done span>*{display:none}.starter-tutorial-checklist strong{font-size:14px!important;font-weight:700!important;line-height:1.3!important;letter-spacing:-0.005em;color:inherit!important}.starter-tutorial-actions{display:flex!important;align-items:center;justify-content:space-between!important;gap:12px;margin:0!important;padding-top:4px}.starter-tutorial-actions-right{display:flex;gap:10px}.starter-tutorial-skip-btn{background:transparent!important;border:none!important;padding:8px 4px!important;color:var(--muted)!important;font-size:13px!important;font-weight:700!important;cursor:pointer;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:4px;transition:color 0.15s,text-decoration-color 0.15s!important;min-height:36px!important;box-shadow:none!important}.starter-tutorial-skip-btn:hover{color:var(--ink-soft)!important;text-decoration-color:currentColor;background:transparent!important;transform:none!important}.starter-tutorial-back-btn{display:inline-flex!important;align-items:center;gap:6px;padding:10px 18px!important;border:1px solid var(--border)!important;border-radius:999px!important;background:var(--surface)!important;color:var(--ink-soft)!important;font-size:14px!important;font-weight:700!important;cursor:pointer;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow ;min-height:38px!important;box-shadow:0 1px 2px rgba(0,0,0,0.04)!important}.starter-tutorial-back-btn:hover:not(:disabled){border-color:var(--border-strong)!important;background:var(--surface-subtle)!important;transform:translateX(-2px)!important}.starter-tutorial-back-btn:disabled{opacity:0.4;cursor:not-allowed;pointer-events:none}.starter-tutorial-back-btn svg{width:14px;height:14px}.starter-tutorial-next-btn{display:inline-flex!important;align-items:center;gap:8px;padding:10px 22px!important;border:none!important;border-radius:999px!important;background:var(--primary)!important;color:#fff!important;font-size:14px!important;font-weight:800!important;cursor:pointer;box-shadow:0 8px 22px color-mix(in srgb,var(--primary) 35%,transparent),inset 0 1px 0 rgba(255,255,255,0.2)!important;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow ;min-height:38px!important}.starter-tutorial-next-btn:hover{transform:translateY(-1px)!important;background:var(--primary-hover)!important;box-shadow:0 14px 32px color-mix(in srgb,var(--primary) 45%,transparent),inset 0 1px 0 rgba(255,255,255,0.25)!important}.starter-tutorial-next-btn svg{width:14px;height:14px;transition:transform 0.15s}.starter-tutorial-next-btn:hover svg{transform:translateX(3px)}@media (max-width: 600px){.starter-tutorial-card{padding:28px 22px 22px!important;border-radius:22px!important}.starter-tutorial-card h2{font-size:22px!important}.starter-tutorial-actions{flex-direction:column-reverse;align-items:stretch;gap:14px}.starter-tutorial-actions-right{width:100%;justify-content:space-between}.starter-tutorial-back-btn,.starter-tutorial-next-btn{flex:1;justify-content:center}.starter-tutorial-skip-btn{text-align:center;width:100%}}.practice-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}.practice-mode-tab{display:flex!important;align-items:center;gap:14px;padding:16px 20px!important;border:1.5px solid var(--border)!important;border-radius:16px!important;background:var(--surface)!important;color:var(--ink-soft)!important;text-align:left!important;cursor:pointer;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow ;min-height:0!important;font:inherit!important;font-weight:700!important;box-shadow:0 1px 2px rgba(0,0,0,0.03)!important;justify-content:flex-start!important}.practice-mode-tab:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--border))!important;background:var(--surface)!important;transform:translateY(-1px)!important;box-shadow:0 6px 16px rgba(16,24,40,0.06)!important;color:var(--ink)!important}.practice-mode-tab.is-active{border-color:var(--primary)!important;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 8%,var(--surface)),color-mix(in srgb,#8b5cf6 6%,var(--surface)))!important;color:var(--ink)!important;box-shadow:0 12px 32px color-mix(in srgb,var(--primary) 18%,transparent),inset 0 1px 0 rgba(255,255,255,0.4)!important}.practice-mode-tab svg{flex-shrink:0;width:28px;height:28px;padding:6px;border-radius:10px;background:color-mix(in srgb,var(--primary) 10%,var(--surface-subtle));color:var(--primary);box-sizing:content-box;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow }.practice-mode-tab.is-active svg{background:linear-gradient(135deg,var(--primary),#8b5cf6)!important;color:#fff;box-shadow:0 6px 14px color-mix(in srgb,var(--primary) 30%,transparent)}.practice-mode-tab>div{display:flex;flex-direction:column;gap:2px;min-width:0}.practice-mode-tab strong{font-size:15px;font-weight:800;color:var(--ink);letter-spacing:-0.005em}.practice-mode-tab span{font-size:13px;font-weight:500;color:var(--ink-soft);line-height:1.4}.practice-pane[hidden]{display:none}.practice-pane-tagline{margin:8px 0 18px;font-size:14px;color:var(--ink-soft);font-weight:500;line-height:1.55}.practice-generate-grid{display:grid;grid-template-columns:160px 1fr;gap:12px;margin-bottom:4px}.practice-generate-note{display:flex;align-items:flex-start;gap:8px;margin:12px 0 0;padding:12px 14px;border-radius:10px;background:color-mix(in srgb,var(--primary) 5%,var(--surface-subtle));border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border));font-size:13px;color:var(--ink-soft);font-weight:500;line-height:1.5}.practice-generate-note svg{width:16px;height:16px;color:var(--primary);flex-shrink:0;margin-top:1px}.practice-context-tagline{margin:0 0 14px;font-size:13px;color:var(--muted);font-weight:600;font-style:italic}@media (max-width: 768px){.practice-mode-tabs{grid-template-columns:1fr}.practice-generate-grid{grid-template-columns:1fr}}.games-lesson-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 24px!important;flex-wrap:wrap}.games-lesson-info .eyebrow{margin-bottom:4px}.games-lesson-info strong{font-size:18px;font-weight:800;color:var(--ink);letter-spacing:-0.005em}.games-lesson-select{min-width:280px;max-width:100%}.games-hub{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.game-card{position:relative;display:flex;flex-direction:column;gap:12px;padding:24px;border:1px solid var(--border);border-radius:20px;background:var(--surface);transition:transform 0.25s,border-color 0.25s,box-shadow 0.25s;overflow:hidden;cursor:pointer}.game-card::before{content:"";position:absolute;inset:0;background:color-mix(in srgb,var(--primary) 4%,transparent);opacity:0;transition:opacity 0.3s;pointer-events:none}.game-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--primary) 35%,var(--border));box-shadow:0 16px 40px rgba(16,24,40,0.08)}.game-card:hover::before{opacity:1}.game-card-icon{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 12px 28px rgba(99,102,241,0.22);font-size:26px}.game-card-icon svg{width:26px;height:26px}.game-card h3{margin:0;font-size:19px;font-weight:800;color:var(--ink);letter-spacing:-0.01em;display:inline-flex;align-items:center;gap:8px}.game-title-icon{width:18px;height:18px;flex-shrink:0;color:var(--ink-soft, #6b5b42);opacity:0.7;transition:transform 200ms cubic-bezier(0.2,0.9,0.3,1),opacity 200ms ease}.game-card:hover .game-title-icon{opacity:1;transform:rotate(-4deg) scale(1.08)}.game-card p{margin:0;font-size:13px;color:var(--ink-soft);line-height:1.5;font-weight:500;flex:1}.game-card-foot{display:flex;align-items:center;justify-content:space-between;margin-top:4px}.game-best{font-size:12px;font-weight:700;color:var(--muted)}.game-play-btn{padding:8px 18px!important;border-radius:999px!important;background:var(--primary)!important;color:#fff!important;border:none!important;font-size:13px!important;font-weight:800!important;min-height:32px!important;box-shadow:0 6px 16px color-mix(in srgb,var(--primary) 30%,transparent)!important}.game-play-btn:hover{background:var(--primary-hover)!important;transform:translateY(-1px)!important;box-shadow:0 10px 22px color-mix(in srgb,var(--primary) 40%,transparent)!important}.games-stage{border:1px solid var(--border);border-radius:22px;background:var(--surface);padding:0;overflow:hidden;min-height:600px}.games-stage[hidden]{display:none}.game-header{display:flex;align-items:center;gap:16px;padding:16px 20px;border-bottom:1px solid var(--border);background:var(--surface-subtle)}.game-exit-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px!important;border:1px solid var(--border)!important;border-radius:999px!important;background:var(--surface)!important;color:var(--ink-soft)!important;font-size:13px!important;font-weight:700!important;min-height:0!important;cursor:pointer;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow ;box-shadow:0 1px 2px rgba(0,0,0,0.04)!important}.game-exit-btn:hover{border-color:var(--primary)!important;color:var(--primary)!important;transform:translateX(-2px)!important}.game-exit-btn svg{width:14px;height:14px}.game-header-title{display:flex;flex-direction:column;gap:2px}.game-header-title strong{font-size:16px;font-weight:800;color:var(--ink)}.game-header-title span{font-size:12px;color:var(--ink-soft);font-weight:500}.game-arena{position:relative;padding:32px;min-height:540px;display:flex;flex-direction:column;gap:24px}.game-pre{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;flex:1;text-align:center;padding:40px 20px}.game-pre-icon{width:80px;height:80px;border-radius:20px;display:flex;align-items:center;justify-content:center;font-size:40px;color:#fff;box-shadow:0 16px 40px rgba(99,102,241,0.3)}.game-pre h3{margin:0;font-size:28px;font-weight:850;letter-spacing:-0.02em;color:var(--ink)}.game-pre p{margin:0;max-width:480px;color:var(--ink-soft);font-size:15px;font-weight:500;line-height:1.55}.game-start-btn{margin-top:12px;padding:14px 36px!important;font-size:16px!important;border-radius:999px!important}.game-empty{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;padding:40px;color:var(--ink-soft);font-size:15px;font-weight:500}.game-loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;color:var(--ink-soft);font-weight:600}.game-spinner{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin 0.8s linear infinite}.game-hud{display:flex;gap:12px;flex-wrap:wrap;align-items:stretch}.game-regen-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 16px;min-height:38px;border-radius:999px;border:1.5px solid color-mix(in srgb,var(--primary) 50%,var(--border));background:color-mix(in srgb,var(--primary) 8%,var(--surface));color:var(--primary);font-weight:800;font-size:13px;cursor:pointer;transition:transform 0.15s,background 0.15s,box-shadow 0.15s;font-family:inherit}.game-regen-btn:hover{background:color-mix(in srgb,var(--primary) 14%,var(--surface));transform:translateY(-1px);box-shadow:0 4px 10px color-mix(in srgb,var(--primary) 22%,transparent)}.game-regen-btn:active{transform:translateY(0)}.game-regen-btn-hud{align-self:stretch;min-height:auto;padding:6px 12px;font-size:11px;letter-spacing:0.02em;flex:0 0 auto}.charades-hint{margin:0 0 10px;padding:8px 12px;background:color-mix(in srgb,var(--primary) 6%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border));border-radius:10px;font-size:13px;color:var(--ink-soft)}.charades-hint summary{cursor:pointer;font-weight:800;color:var(--primary);font-size:12px;user-select:none}.charades-hint p{margin:6px 0 0;font-weight:600;line-height:1.45}.game-hud-stat{flex:1;min-width:100px;display:flex;flex-direction:column;gap:2px;padding:10px 16px;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle)}.game-hud-stat span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0.08em;color:var(--muted)}.game-hud-stat strong{font-size:22px;font-weight:850;color:var(--ink);letter-spacing:-0.01em}.game-hud-stat.is-low strong{color:var(--danger)}.game-hud-stat.is-fire strong{color:#f59e0b;animation:pulse-fire 0.8s ease infinite}.game-hud-stat.is-score strong{color:var(--primary)}@keyframes pulse-fire{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}.game-q{flex:1;display:flex;flex-direction:column;gap:18px;padding:24px 4px;position:relative}.game-q-num{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:0.1em;color:var(--primary)}.game-q h3{margin:0;font-size:clamp(20px,2.6vw,26px);font-weight:800;letter-spacing:-0.01em;line-height:1.3;color:var(--ink);text-wrap:balance}.game-mcq{display:flex;flex-direction:column;gap:8px}.game-mcq-btn{padding:14px 18px!important;border:1.5px solid var(--border)!important;border-radius:12px!important;background:var(--surface)!important;color:var(--ink)!important;font-size:15px!important;font-weight:600!important;text-align:left!important;justify-content:flex-start!important;cursor:pointer;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow ;min-height:0!important;box-shadow:0 1px 2px rgba(0,0,0,0.03)!important}.game-mcq-btn:hover{border-color:var(--primary)!important;background:color-mix(in srgb,var(--primary) 5%,var(--surface))!important;transform:translateX(2px)!important}.game-text-form{display:flex;gap:8px}.game-text-form input{flex:1;font-size:16px}.game-skip-btn{align-self:flex-end;padding:6px 12px!important;background:transparent!important;border:none!important;color:var(--muted)!important;font-size:13px!important;font-weight:700!important;cursor:pointer;min-height:0!important;box-shadow:none!important}.game-skip-btn:hover{color:var(--ink)!important;background:transparent!important;transform:none!important}.game-flash{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:18px 36px;border-radius:999px;font-size:22px;font-weight:850;letter-spacing:-0.01em;z-index:10;pointer-events:none;animation:flash-pop 0.5s cubic-bezier(0.16,1,0.3,1) both}.game-flash.is-correct{background:#16a34a;color:#fff;box-shadow:0 16px 36px color-mix(in srgb,#16a34a 35%,transparent)}.game-flash.is-wrong{background:#dc2626;color:#fff;box-shadow:0 16px 36px color-mix(in srgb,#dc2626 35%,transparent);font-size:16px;max-width:80%;text-align:center}@keyframes flash-pop{from{opacity:0;transform:translate(-50%,-50%) scale(0.7)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.game-end{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;flex:1;text-align:center;padding:40px 20px}.game-end-icon{width:80px;height:80px;border-radius:20px;display:flex;align-items:center;justify-content:center;font-size:40px;color:#fff;box-shadow:0 16px 40px rgba(99,102,241,0.3)}.game-end h3{margin:0;font-size:30px;font-weight:850;letter-spacing:-0.02em;color:var(--ink)}.game-end-stats{display:flex;gap:24px;flex-wrap:wrap;justify-content:center}.game-end-stats>div{display:flex;flex-direction:column;gap:2px;text-align:center}.game-end-stats strong{font-size:32px;font-weight:850;letter-spacing:-0.02em;color:var(--primary)}.game-end-stats span{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--muted)}.game-end-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.cm-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;flex:1}.cm-card{aspect-ratio:3/4;perspective:1000px;background:transparent!important;border:none!important;padding:0!important;cursor:pointer;min-height:0!important}.cm-card{perspective:1000px;-webkit-perspective:1000px}.cm-card-inner{position:relative;width:100%;height:100%;transition:transform 0.5s cubic-bezier(0.16,1,0.3,1);-webkit-transition:-webkit-transform 0.5s cubic-bezier(0.16,1,0.3,1),transform 0.5s cubic-bezier(0.16,1,0.3,1);transform-style:preserve-3d;-webkit-transform-style:preserve-3d;will-change:transform}.cm-card.is-flipped .cm-card-inner,.cm-card.is-matched .cm-card-inner{transform:rotateY(180deg);-webkit-transform:rotateY(180deg)}.cm-card-front,.cm-card-back{position:absolute;inset:0;border-radius:12px;display:flex;align-items:center;justify-content:center;text-align:center;padding:12px;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0);-webkit-transform:translateZ(0);font-weight:700}.cm-card-front{background:var(--primary);color:#fff;font-size:28px;font-weight:900;box-shadow:0 6px 16px rgba(99,102,241,0.3)}.cm-card-back{background:var(--surface);border:2px solid var(--border);transform:rotateY(180deg) translateZ(0);-webkit-transform:rotateY(180deg) translateZ(0);font-size:13px;line-height:1.35;color:var(--ink);overflow:hidden}.cm-card-back.is-term{background:color-mix(in srgb,var(--primary) 12%,var(--surface));border-color:var(--primary);font-size:14px;font-weight:800}.cm-card.is-matched .cm-card-back{background:color-mix(in srgb,#16a34a 14%,var(--surface));border-color:#16a34a;opacity:0.8}@media (max-width: 768px){.cm-grid{grid-template-columns:repeat(3,1fr)}}.connections-title{margin:0 0 4px;font-size:13px;font-weight:700;color:var(--muted);text-align:center}.connections-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.connections-tile{padding:16px 10px!important;border:1.5px solid var(--border)!important;border-radius:10px!important;background:var(--surface)!important;color:var(--ink)!important;font-size:13px!important;font-weight:800!important;text-transform:uppercase;letter-spacing:0.02em;cursor:pointer;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow ;min-height:60px!important;text-align:center}.connections-tile:hover{border-color:color-mix(in srgb,var(--primary) 40%,var(--border))!important;background:color-mix(in srgb,var(--primary) 4%,var(--surface))!important;transform:translateY(-1px)!important}.connections-tile.is-selected{background:var(--ink)!important;color:#fff!important;border-color:var(--ink)!important}.connections-solved{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.connections-solved-row{padding:14px 18px;border-radius:10px;text-align:center;font-weight:700}.connections-solved-row strong{display:block;font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:0.06em;margin-bottom:4px}.connections-solved-row span{font-size:14px;font-weight:700;letter-spacing:0.02em}.connections-diff-easy{background:#fde68a;color:#78350f}.connections-diff-medium{background:#bbf7d0;color:#14532d}.connections-diff-hard{background:#bfdbfe;color:#1e3a8a}.connections-diff-tricky{background:#ddd6fe;color:#4c1d95}.connections-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:16px;border-top:1px solid var(--border)}.connections-mistakes{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--ink-soft)}.connections-dots{display:flex;gap:4px}.connections-dots span{width:12px;height:12px;border-radius:50%;background:var(--ink)}.connections-dots span.is-used{background:transparent;border:2px solid var(--ink)}.connections-actions{display:flex;gap:8px}.connections-actions button{border-radius:999px!important;padding:8px 16px!important;min-height:0!important;font-size:13px!important}@media (max-width: 768px){.connections-grid{grid-template-columns:repeat(2,1fr)}.connections-tile{font-size:12px!important;padding:12px 8px!important}.connections-controls{flex-direction:column;gap:12px;align-items:stretch}}.cloze-passage{display:flex;flex-direction:column;gap:18px;padding:24px;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle)}.cloze-topic{margin:0;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0.1em;color:var(--primary)}.cloze-text{font-size:18px;line-height:1.8;color:var(--ink);font-weight:500}.cloze-blank{display:inline-block;width:140px;padding:4px 10px!important;margin:0 4px;border:1.5px solid var(--primary)!important;border-radius:8px!important;background:var(--surface)!important;font-size:16px!important;font-weight:700!important;text-align:center;vertical-align:middle;min-height:32px!important}.cloze-blank.is-correct{background:color-mix(in srgb,#16a34a 14%,var(--surface))!important;border-color:#16a34a!important;color:#166534!important}.cloze-blank.is-wrong{background:color-mix(in srgb,#dc2626 12%,var(--surface))!important;border-color:#dc2626!important;color:#991b1b!important;width:auto;min-width:200px;font-size:13px!important}#cloze-check.is-next{background:#16a34a!important;border-color:transparent!important}.charades-target{text-align:center;padding:32px 24px;border-radius:20px;background:color-mix(in srgb,#f97316 7%,var(--surface));border:1px solid color-mix(in srgb,#f97316 20%,var(--border))}.charades-target-eyebrow{margin:0 0 8px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:0.08em;color:#c2410c}.charades-target h2{margin:0;font-size:clamp(28px,4.5vw,44px);font-weight:900;letter-spacing:-0.02em;color:var(--ink)}.charades-form{display:flex;flex-direction:column;gap:12px}.charades-form textarea{width:100%;font-size:15px;line-height:1.5;resize:vertical}.charades-actions{display:flex;gap:10px;justify-content:flex-end}.charades-result{margin-top:18px;padding:20px 22px;border-radius:14px;border:1px solid var(--border);background:var(--surface)}.charades-result.is-good{background:color-mix(in srgb,#16a34a 6%,var(--surface));border-color:color-mix(in srgb,#16a34a 28%,var(--border))}.charades-result.is-bad{background:color-mix(in srgb,#dc2626 5%,var(--surface));border-color:color-mix(in srgb,#dc2626 25%,var(--border))}.charades-result strong{display:block;font-size:18px;font-weight:850;margin-bottom:8px;color:var(--ink)}.charades-result.is-good strong{color:#166534}.charades-result.is-bad strong{color:#991b1b}.charades-result p{margin:0 0 8px;font-size:14px;color:var(--ink-soft);line-height:1.5;font-weight:500}.charades-correct-term{margin-top:12px!important;padding-top:12px;border-top:1px solid var(--border);font-size:13px!important}.charades-correct-term b{font-weight:800;color:var(--ink)}#charades-next{margin-top:12px}@media (max-width: 768px){.game-arena{padding:18px}.games-lesson-bar{flex-direction:column;align-items:stretch}}.dash-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 4px 6px;flex-wrap:wrap}.dash-hero .eyebrow{margin-bottom:2px}.dash-hero h1{margin:0;font-size:clamp(20px,2.4vw,26px);font-weight:850;letter-spacing:-0.02em;line-height:1.1;color:var(--ink)}.dash-hero-stats{display:flex;gap:8px;flex-wrap:wrap}.dash-stat{display:inline-flex;align-items:baseline;gap:6px;padding:6px 12px;border:1px solid var(--border);border-radius:999px;background:var(--surface);min-width:0;box-shadow:0 1px 2px rgba(0,0,0,0.03)}.dash-stat strong{font-size:15px;font-weight:850;letter-spacing:-0.01em;color:var(--primary);line-height:1}.dash-stat span{font-size:11px;font-weight:700;letter-spacing:0.02em;color:var(--muted)}.dash-quick-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.dash-quick-btn{display:flex!important;align-items:center;gap:14px;padding:14px 18px!important;border:1px solid var(--border)!important;border-radius:16px!important;background:var(--surface)!important;color:var(--ink)!important;text-align:left!important;justify-content:flex-start!important;cursor:pointer;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow ;min-height:0!important;font:inherit!important;box-shadow:0 1px 2px rgba(0,0,0,0.03)!important}.dash-quick-btn:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--border))!important;transform:translateY(-2px)!important;box-shadow:0 12px 28px rgba(16,24,40,0.08)!important;background:var(--surface)!important}.dash-quick-icon{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 6px 14px rgba(99,102,241,0.18)}.dash-quick-icon svg{width:20px;height:20px}.dash-quick-text{display:flex;flex-direction:column;gap:2px;min-width:0}.dash-quick-text strong{font-size:15px;font-weight:800;color:var(--ink)}.dash-quick-text span{font-size:12px;color:var(--ink-soft);font-weight:500}.dash-library{padding:20px 22px!important}.dash-library-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap}.dash-library-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.dash-create-cta{display:inline-flex;align-items:center;gap:6px;padding:8px 14px!important;min-height:38px;font-size:13px!important;border-radius:999px!important;font-weight:600;white-space:nowrap;cursor:pointer}.dash-create-cta svg{width:16px;height:16px;flex-shrink:0}.dash-empty-hero{text-align:center;padding:48px 24px!important;border-radius:20px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 6%,var(--surface)),var(--surface));border:1px dashed color-mix(in srgb,var(--primary) 30%,transparent)}.dash-empty-hero h3{font-size:22px;margin-bottom:8px}.dash-empty-hero p{max-width:520px;margin:0 auto 20px;color:var(--muted);line-height:1.5}.dash-empty-hero .empty-action-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.dash-search-wrap{position:relative}.dash-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--muted);pointer-events:none}#lesson-library-search{padding-left:38px!important;width:240px;min-height:38px!important;border-radius:999px!important;font-size:13px!important}#lesson-library-sort{min-height:38px!important;border-radius:999px!important;padding:0 36px 0 14px!important;font-size:13px!important;font-weight:700!important;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231f2937' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:14px;cursor:pointer}#lesson-library-sort:hover{border-color:var(--primary)!important}.dash-view-toggle{display:inline-flex;border:1px solid var(--border);border-radius:999px;padding:3px;background:var(--surface-subtle)}.dash-view-toggle button{width:32px!important;height:32px!important;padding:0!important;border:none!important;border-radius:999px!important;background:transparent!important;color:var(--muted)!important;display:inline-flex!important;align-items:center;justify-content:center;cursor:pointer;min-height:0!important;box-shadow:none!important;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow }.dash-view-toggle button.is-active{background:var(--surface)!important;color:var(--primary)!important;box-shadow:0 1px 3px rgba(0,0,0,0.08)!important}.dash-view-toggle button svg{width:16px;height:16px}.dash-lessons-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}.dash-lessons-list{display:flex;flex-direction:column;gap:10px}.dash-lessons-list .dash-lesson-card{display:grid;grid-template-columns:1fr auto;align-items:center}.dash-lesson-card{display:flex;flex-direction:column;gap:10px;padding:18px 20px;border:1px solid var(--border);border-radius:16px;background:var(--surface);cursor:pointer;transition:border-color 0.2s,transform 0.2s,box-shadow 0.2s}.dash-lesson-card:hover{border-color:color-mix(in srgb,var(--primary) 30%,var(--border));transform:translateY(-2px);box-shadow:0 10px 24px rgba(16,24,40,0.06)}.dash-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.dash-card-meta{display:flex;flex-direction:column;gap:2px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em}.dash-card-kind{display:inline-flex;align-items:center;gap:4px;color:var(--primary)}.dash-card-kind .icon{width:12px;height:12px;margin:0}.dash-card-subject{color:var(--muted)}.dash-card-dupe-pill{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--warning) 18%,var(--surface));color:color-mix(in srgb,var(--warning) 80%,var(--ink));border:1px solid color-mix(in srgb,var(--warning) 30%,transparent);font-size:10px;font-weight:800;letter-spacing:0.02em;white-space:nowrap}.dash-lesson-card.has-duplicate{border-color:color-mix(in srgb,var(--warning) 30%,var(--border))!important}.dash-card-score{flex-shrink:0;padding:5px 10px;border-radius:999px;font-size:13px;font-weight:800}.dash-card-score.is-great{background:var(--success-soft, #f0fdf4);color:#166534;border:1px solid #bbf7d0}.dash-card-score.is-ok{background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe}.dash-card-score.is-low{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.dash-card-title{margin:0;font-size:16px;font-weight:800;color:var(--ink);letter-spacing:-0.005em;line-height:1.3;text-wrap:balance}.dash-card-progress{display:flex;align-items:center;gap:10px}.dash-card-progress-bar{flex:1;height:6px;border-radius:999px;background:var(--surface-muted);overflow:hidden}.dash-card-progress-bar>div{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--primary),#8b5cf6);transition:width 0.6s cubic-bezier(0.16,1,0.3,1)}.dash-card-progress>span{font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:0.04em;white-space:nowrap}.dash-card-stats{display:flex;gap:8px;flex-wrap:wrap}.dash-card-stats span{padding:3px 9px;border-radius:999px;background:var(--surface-subtle);border:1px solid var(--border);font-size:11px;font-weight:700;color:var(--ink-soft)}.dash-card-stats span.is-warn{background:color-mix(in srgb,#f97316 12%,var(--surface));color:#9a3412;border-color:color-mix(in srgb,#f97316 28%,var(--border))}.dash-card-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center;padding-top:4px}.dash-card-primary{display:inline-flex!important;align-items:center;gap:6px;padding:7px 14px!important;border-radius:999px!important;background:var(--primary)!important;color:#fff!important;border:none!important;font-size:13px!important;font-weight:800!important;cursor:pointer;min-height:0!important;box-shadow:0 4px 12px color-mix(in srgb,var(--primary) 25%,transparent),inset 0 1px 0 rgba(255,255,255,0.2)!important;margin-right:auto}.dash-card-primary:hover{transform:translateY(-1px)!important;box-shadow:0 8px 18px color-mix(in srgb,var(--primary) 38%,transparent),inset 0 1px 0 rgba(255,255,255,0.25)!important}.dash-card-primary .icon{width:14px;height:14px;margin:0}.dash-card-icon-btn{width:30px!important;height:30px!important;padding:0!important;border:1px solid var(--border)!important;border-radius:50%!important;background:var(--surface)!important;color:var(--ink-soft)!important;display:inline-flex!important;align-items:center;justify-content:center;cursor:pointer;min-height:0!important;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow ;box-shadow:0 1px 2px rgba(0,0,0,0.04)!important}.dash-card-icon-btn:hover{border-color:var(--primary)!important;color:var(--primary)!important;background:color-mix(in srgb,var(--primary) 6%,var(--surface))!important;transform:translateY(-1px)!important}.dash-card-icon-btn .icon{width:14px;height:14px;margin:0}.dash-card-icon-btn.is-danger:hover{border-color:var(--danger)!important;color:var(--danger)!important;background:color-mix(in srgb,var(--danger) 6%,var(--surface))!important}.dash-card-more{position:relative}.dash-card-more-btn{font-size:18px;font-weight:700;line-height:1;padding:0 4px}.dash-card-more-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:30;min-width:200px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:0 12px 32px rgba(31,42,37,0.16);padding:6px;display:grid;gap:2px}.dash-card-more-menu[hidden]{display:none}.dash-card-more-item{display:grid;grid-template-columns:18px 1fr;gap:10px;align-items:center;padding:8px 10px;background:transparent;border:0;border-radius:var(--r-sm);color:var(--ink);font-size:13px;font-weight:600;text-align:left;cursor:pointer;width:100%;min-height:0}.dash-card-more-item:hover{background:color-mix(in srgb,var(--primary) 8%,var(--surface-subtle));color:var(--primary)}.dash-card-more-item .icon{width:16px;height:16px;color:currentColor}.dash-card-more-item.is-danger{color:var(--danger)}.dash-card-more-item.is-danger:hover{background:color-mix(in srgb,var(--danger) 8%,var(--surface));color:var(--danger)}.dash-card-icon-btn[data-tip]{position:relative}.dash-card-icon-btn[data-tip]::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%) translateY(4px);padding:5px 9px;background:rgba(15,23,36,0.94);color:#fff;font-size:11px;font-weight:700;letter-spacing:0.01em;border-radius:6px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity 0.15s,transform 0.15s;z-index:50;box-shadow:0 4px 12px rgba(0,0,0,0.18)}.dash-card-icon-btn[data-tip]:hover::after,.dash-card-icon-btn[data-tip]:focus-visible::after{opacity:1;transform:translateX(-50%) translateY(0)}.dash-card-tags{display:flex;flex-wrap:wrap;gap:4px;padding-top:4px;border-top:1px solid color-mix(in srgb,var(--border) 60%,transparent)}.dash-lessons-list .dash-lesson-card{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:14px 18px}.dash-lessons-list .dash-card-top{grid-column:1}.dash-lessons-list .dash-card-title{grid-column:1}.dash-lessons-list .dash-card-progress{grid-column:1}.dash-lessons-list .dash-card-stats{grid-column:1}.dash-lessons-list .dash-card-actions{grid-column:2;grid-row:1 / span 4;flex-direction:column;align-items:stretch;border:none;padding:0}.dash-lessons-list .dash-card-tags{grid-column:1 / -1}.dash-leaderboard{padding:18px 20px!important}@media (max-width: 768px){.dash-library-controls{width:100%}#lesson-library-search{width:100%}.dash-card-actions{flex-wrap:wrap}.dash-card-primary{width:100%;justify-content:center;margin-right:0}}.practice-paper-card-v2{padding:22px 26px;border:1px solid var(--border);border-radius:20px;background:var(--surface);margin-bottom:14px;transition:border-color 0.2s}.practice-paper-card-v2:hover{border-color:color-mix(in srgb,var(--primary) 30%,var(--border))}.practice-paper-head-v2{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.practice-paper-info{flex:1;min-width:0}.practice-paper-info .eyebrow{margin-bottom:4px;text-transform:uppercase}.practice-paper-info h3{margin:0 0 4px;font-size:19px;font-weight:850;letter-spacing:-0.01em;color:var(--ink)}.practice-paper-info small{font-size:12px;color:var(--muted);font-weight:600}.practice-take-btn{display:inline-flex!important;align-items:center;gap:8px;padding:11px 22px!important;border-radius:999px!important;background:var(--primary)!important;color:#fff!important;border:none!important;font-size:14px!important;font-weight:800!important;cursor:pointer;min-height:0!important;box-shadow:0 8px 20px color-mix(in srgb,var(--primary) 30%,transparent),inset 0 1px 0 rgba(255,255,255,0.2)!important;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow }.practice-take-btn:hover{transform:translateY(-2px)!important;box-shadow:0 12px 28px color-mix(in srgb,var(--primary) 42%,transparent),inset 0 1px 0 rgba(255,255,255,0.25)!important}.practice-take-btn .icon{width:16px;height:16px;margin:0}.practice-paper-preview>summary{cursor:pointer;margin-top:14px;padding:8px 12px;border-radius:8px;font-size:13px;font-weight:700;color:var(--muted);list-style:none;user-select:none}.practice-paper-preview>summary::-webkit-details-marker{display:none}.practice-paper-preview>summary:hover{background:var(--surface-subtle);color:var(--ink-soft)}.practice-test-overlay{position:fixed;inset:0;z-index:200;background:var(--bg);overflow-y:auto;animation:pt-fade-in 0.25s ease both}.practice-test-overlay.is-leaving{animation:pt-fade-out 0.2s ease both}@keyframes pt-fade-in{from{opacity:0}to{opacity:1}}@keyframes pt-fade-out{from{opacity:1}to{opacity:0}}body.practice-test-active{overflow:hidden}.practice-test-shell{display:flex;flex-direction:column;min-height:100vh}.practice-test-intro,.practice-test-summary{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 32px;text-align:center;max-width:720px;margin:0 auto}.practice-test-exit{position:absolute;top:20px;right:20px;display:inline-flex;align-items:center;gap:6px;padding:8px 16px!important;border:1px solid var(--border)!important;border-radius:999px!important;background:var(--surface)!important;color:var(--ink-soft)!important;font-size:13px!important;font-weight:700!important;cursor:pointer;min-height:0!important;box-shadow:0 1px 2px rgba(0,0,0,0.04)!important}.practice-test-exit:hover{border-color:var(--danger)!important;color:var(--danger)!important}.practice-test-exit .icon{width:14px;height:14px;margin:0}.practice-test-intro-icon,.practice-test-summary-icon{width:72px;height:72px;border-radius:20px;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;margin-bottom:18px;box-shadow:0 16px 40px color-mix(in srgb,var(--primary) 28%,transparent)}.practice-test-summary-icon{background:#16a34a;box-shadow:0 16px 40px color-mix(in srgb,#16a34a 30%,transparent)}.practice-test-intro-icon .icon,.practice-test-summary-icon .icon{width:32px;height:32px;margin:0}.practice-test-eyebrow{margin:0 0 8px!important;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0.1em;color:var(--primary)}.practice-test-intro h1,.practice-test-summary h1{margin:0 0 24px;font-size:clamp(28px,4vw,40px);font-weight:850;letter-spacing:-0.02em;line-height:1.1;color:var(--ink);text-wrap:balance}.practice-test-meta{display:flex;gap:36px;margin-bottom:28px;flex-wrap:wrap;justify-content:center}.practice-test-meta>div{display:flex;flex-direction:column;gap:2px;text-align:center}.practice-test-meta strong{font-size:28px;font-weight:850;letter-spacing:-0.01em;color:var(--ink);background:linear-gradient(135deg,var(--primary),#8b5cf6);-webkit-background-clip:text;background-clip:text;color:transparent}.practice-test-meta span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0.08em;color:var(--muted)}.practice-test-rules{max-width:540px;margin:0 0 28px;font-size:15px;color:var(--ink-soft);font-weight:500;line-height:1.6}.practice-test-intro-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.practice-test-intro-actions button{padding:14px 32px!important;border-radius:999px!important;font-size:15px!important}.practice-test-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;background:color-mix(in srgb,var(--surface) 92%,transparent);border-bottom:1px solid var(--border)}.practice-test-header-info{display:flex;flex-direction:column;gap:2px;min-width:0}.practice-test-header-info strong{font-size:14px;font-weight:800;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.practice-test-header-info span{font-size:12px;color:var(--muted);font-weight:600}.practice-test-header-stats{display:flex;align-items:center;gap:10px}.practice-test-timer{display:inline-flex;align-items:center;padding:6px 14px;border-radius:999px;background:color-mix(in srgb,var(--primary) 8%,var(--surface-subtle));border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border));font-family:ui-monospace,"SF Mono",monospace;font-size:14px;font-weight:800;color:var(--primary)}.practice-test-progress-stat{font-size:12px;font-weight:700;color:var(--muted);padding:6px 12px;border-radius:999px;background:var(--surface-subtle)}.practice-test-exit-sm{width:32px!important;height:32px!important;padding:0!important;border:1px solid var(--border)!important;border-radius:50%!important;background:var(--surface)!important;color:var(--ink-soft)!important;display:inline-flex!important;align-items:center;justify-content:center;cursor:pointer;min-height:0!important;box-shadow:none!important}.practice-test-exit-sm:hover{border-color:var(--danger)!important;color:var(--danger)!important}.practice-test-exit-sm .icon{width:14px;height:14px;margin:0}.practice-test-progress-bar{height:3px;background:var(--surface-muted);overflow:hidden}.practice-test-progress-bar>div{height:100%;background:linear-gradient(90deg,var(--primary),#8b5cf6);transition:width 0.4s ease}.practice-test-main{flex:1;display:grid;grid-template-columns:200px 1fr;gap:32px;max-width:1100px;margin:0 auto;padding:32px 20px 80px;width:100%}.practice-test-side{position:sticky;top:90px;height:fit-content}.practice-test-jumper{display:grid;grid-template-columns:repeat(auto-fill,minmax(36px,1fr));gap:6px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface);max-width:200px}.practice-test-jump{width:100%!important;aspect-ratio:1;padding:0!important;border:1.5px solid var(--border)!important;border-radius:8px!important;background:var(--surface)!important;color:var(--ink-soft)!important;font-size:12px!important;font-weight:800!important;cursor:pointer;min-height:0!important;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow ;box-shadow:none!important}.practice-test-jump:hover{border-color:color-mix(in srgb,var(--primary) 40%,var(--border))!important}.practice-test-jump.is-current{background:var(--primary)!important;border-color:var(--primary)!important;color:#fff!important;box-shadow:0 4px 10px color-mix(in srgb,var(--primary) 35%,transparent)!important}.practice-test-jump.is-answered{background:color-mix(in srgb,#16a34a 15%,var(--surface))!important;border-color:color-mix(in srgb,#16a34a 35%,var(--border))!important;color:#166534!important}.practice-test-question-wrap{min-width:0}.practice-test-q-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.practice-test-q-num{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:0.08em;color:var(--primary)}.practice-test-q-marks{padding:4px 12px;border-radius:999px;background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary);font-size:12px;font-weight:800}.practice-test-q-topic{margin:0 0 12px;font-size:12px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:0.06em}.practice-test-q-prompt{margin:0 0 24px;font-size:clamp(20px,2.6vw,26px);font-weight:800;letter-spacing:-0.01em;line-height:1.35;color:var(--ink);text-wrap:balance}.practice-test-answer{width:100%;min-height:200px!important;padding:16px 18px!important;font-size:15px!important;line-height:1.6!important;border-radius:14px!important;resize:vertical}.practice-test-answer:focus{border-color:var(--primary)!important}.practice-test-answer[readonly]{background:var(--surface-subtle)!important;cursor:default}.practice-test-footer{position:sticky;bottom:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px;background:color-mix(in srgb,var(--surface) 94%,transparent);border-top:1px solid var(--border)}.practice-test-nav-btn{display:inline-flex!important;align-items:center;gap:6px;padding:10px 20px!important;border:1px solid var(--border)!important;border-radius:999px!important;background:var(--surface)!important;color:var(--ink-soft)!important;font-size:14px!important;font-weight:700!important;cursor:pointer;min-height:0!important;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow ;box-shadow:0 1px 2px rgba(0,0,0,0.04)!important}.practice-test-nav-btn:hover:not(:disabled){border-color:var(--primary)!important;color:var(--primary)!important}.practice-test-nav-btn:disabled{opacity:0.4;cursor:not-allowed}.practice-test-nav-btn.is-primary{background:var(--primary)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 6px 14px color-mix(in srgb,var(--primary) 30%,transparent),inset 0 1px 0 rgba(255,255,255,0.2)!important}.practice-test-nav-btn.is-primary:hover{transform:translateY(-1px)!important}.practice-test-nav-btn .icon{width:14px;height:14px;margin:0}.practice-test-submit-btn{display:inline-flex!important;align-items:center;gap:6px;padding:10px 28px!important;border-radius:999px!important;background:#16a34a!important;color:#fff!important;border:none!important;font-size:14px!important;font-weight:800!important;min-height:0!important;box-shadow:0 6px 16px color-mix(in srgb,#16a34a 35%,transparent),inset 0 1px 0 rgba(255,255,255,0.2)!important}.practice-test-submit-btn:hover{transform:translateY(-1px)!important;box-shadow:0 10px 22px color-mix(in srgb,#16a34a 45%,transparent),inset 0 1px 0 rgba(255,255,255,0.25)!important}.practice-test-footer-status{font-size:12px;color:var(--muted);font-weight:600}.practice-test-feedback{margin-top:24px;display:flex;flex-direction:column;gap:14px}.pt-fb-user{padding:16px 18px;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle)}.pt-fb-user.pt-fb-empty{font-size:13px;font-weight:700;color:var(--muted);font-style:italic}.pt-fb-user strong{display:block;margin-bottom:6px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:0.06em;color:var(--ink-soft)}.pt-fb-user p{margin:0;font-size:15px;color:var(--ink);line-height:1.55;font-weight:500;white-space:pre-wrap}.pt-fb-model{padding:16px 18px;border:1px solid color-mix(in srgb,#16a34a 22%,var(--border));border-radius:14px;background:color-mix(in srgb,#16a34a 5%,var(--surface))}.pt-fb-model strong{display:flex;align-items:center;gap:6px;margin-bottom:8px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:0.06em;color:#166534}.pt-fb-model .icon{width:14px;height:14px;margin:0;color:#16a34a}.pt-fb-model p{margin:0;font-size:15px;color:var(--ink);line-height:1.55;font-weight:500}.pt-fb-marking,.pt-fb-mistakes,.pt-fb-matters{padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.pt-fb-marking strong,.pt-fb-mistakes strong,.pt-fb-matters strong{display:block;margin-bottom:8px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:0.06em;color:var(--ink-soft)}.pt-fb-marking ul,.pt-fb-mistakes ul{margin:0;padding-left:20px;font-size:13px;color:var(--ink);font-weight:500;line-height:1.55}.pt-fb-marking li,.pt-fb-mistakes li{margin-bottom:4px}.pt-fb-mistakes{border-color:color-mix(in srgb,#f97316 25%,var(--border));background:color-mix(in srgb,#f97316 4%,var(--surface))}.pt-fb-mistakes strong{color:#c2410c}.pt-fb-matters p{margin:0;font-size:13px;color:var(--ink-soft);line-height:1.55;font-weight:500}@media (max-width: 768px){.practice-test-main{grid-template-columns:1fr;padding:20px 16px 100px}.practice-test-side{position:relative;top:0}.practice-test-jumper{max-width:100%}.practice-test-meta{gap:18px}}.url-import-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}.url-import-row .field{margin:0}#lesson-import-url{white-space:nowrap;height:44px;border-radius:999px}@media (max-width: 768px){.url-import-row{grid-template-columns:1fr}#lesson-import-url{width:100%}}.essay-marker-tagline{margin:0 0 18px;font-size:14px;font-weight:500;color:var(--ink-soft);line-height:1.55}.essay-marker-form{display:flex;flex-direction:column;gap:14px}.essay-form-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:12px}#essay-marker-text{font-family:ui-monospace,"SF Mono",Menlo,monospace;font-size:14px;line-height:1.55;min-height:280px!important}#essay-marker-char-count{font-weight:800;color:var(--primary)}.essay-marker-form button[type=submit]{align-self:flex-start;padding:12px 24px!important;border-radius:999px!important}.essay-marker-counter{display:inline-block;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:0.02em;background:var(--surface-subtle);color:var(--muted);border:1px solid var(--border);margin-top:4px;transition:color 0.18s,background 0.18s,border-color 0.18s}.essay-marker-counter.is-low{background:color-mix(in srgb,var(--danger) 10%,var(--surface));color:var(--danger);border-color:color-mix(in srgb,var(--danger) 30%,transparent)}.essay-marker-counter.is-met{background:color-mix(in srgb,#16a34a 12%,var(--surface));color:#15803d;border-color:color-mix(in srgb,#16a34a 32%,transparent)}.essay-marker-counter.is-near-max{background:color-mix(in srgb,var(--warning) 14%,var(--surface));color:var(--warning);border-color:color-mix(in srgb,var(--warning) 34%,transparent)}.essay-marker-counter.is-over-max{background:color-mix(in srgb,var(--danger) 18%,var(--surface));color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,transparent)}.essay-marker-mode{border:1px solid var(--border);border-radius:14px;padding:14px 16px;margin:4px 0 12px;background:var(--surface-subtle)}.essay-marker-mode legend{padding:0 8px;font-size:11px;font-weight:900;letter-spacing:0.08em;text-transform:uppercase;color:var(--muted)}.essay-mode-chips{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-top:8px}.essay-mode-chip{position:relative;display:block;padding:12px 14px;border-radius:12px;border:1.5px solid var(--border);background:var(--surface);cursor:pointer;transition:border-color 160ms ease,background 160ms ease,transform 160ms ease}.essay-mode-chip:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 38%,var(--border))}.essay-mode-chip input[type=radio]{position:absolute;opacity:0;pointer-events:none}.essay-mode-chip:has(input:checked){border-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--surface));box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 16%,transparent)}.essay-mode-chip span{display:block;font-weight:800;color:var(--ink);font-size:13px}.essay-mode-chip em{display:block;font-style:normal;font-size:11px;color:var(--muted);margin-top:2px}.essay-cost-flag{font-style:normal;color:var(--warning);font-weight:700}.essay-history-panel .panel-header{align-items:center}.essay-history-list{display:grid;gap:8px;max-height:480px;overflow-y:auto;padding-right:4px}.essay-history-empty{padding:14px;font-size:13px;color:var(--muted);line-height:1.45;text-align:center;background:var(--surface-subtle);border-radius:10px}.essay-history-row{display:grid;grid-template-columns:56px 1fr auto;gap:12px;align-items:center;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:12px;transition:border-color 0.15s ease,transform 0.15s ease}.essay-history-row:hover{border-color:color-mix(in srgb,var(--primary) 36%,var(--border));transform:translateY(-1px)}.essay-history-score{display:flex;flex-direction:column;align-items:center;justify-content:center;width:56px;height:56px;border-radius:12px;background:var(--surface-subtle);font-weight:800}.essay-history-score strong{font-size:18px;color:var(--ink)}.essay-history-score span{font-size:10px;color:var(--muted);letter-spacing:0.06em}.essay-history-score.is-great{background:color-mix(in srgb,#16a34a 14%,var(--surface))}.essay-history-score.is-great strong{color:#15803d}.essay-history-score.is-ok{background:color-mix(in srgb,var(--warning) 14%,var(--surface))}.essay-history-score.is-ok strong{color:var(--warning)}.essay-history-score.is-low{background:color-mix(in srgb,var(--danger) 14%,var(--surface))}.essay-history-score.is-low strong{color:var(--danger)}.essay-history-body{min-width:0}.essay-history-prompt{margin:0 0 3px;font-size:13px;font-weight:700;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.essay-history-meta{margin:0;font-size:11px;color:var(--muted);display:flex;gap:6px;align-items:center;flex-wrap:wrap}.essay-history-mode{display:inline-block;padding:2px 7px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:0.04em;text-transform:uppercase;background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary)}.essay-history-actions{display:flex;gap:4px}.essay-history-archive{margin-top:16px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-subtle)}.essay-history-archive summary{cursor:pointer;font-weight:700;font-size:13px;color:var(--ink-soft)}.essay-history-archive pre{margin-top:10px;padding:12px;font-family:inherit;font-size:13px;white-space:pre-wrap;background:var(--surface);border-radius:8px;border:1px solid var(--border);max-height:360px;overflow-y:auto}.essay-compare-card .essay-compare-delta{display:inline-block;margin-left:10px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:0.02em;vertical-align:middle}.essay-compare-delta.is-up{background:color-mix(in srgb,#16a34a 18%,var(--surface));color:#15803d}.essay-compare-delta.is-down{background:color-mix(in srgb,var(--danger) 18%,var(--surface));color:var(--danger)}.essay-compare-delta.is-flat{background:var(--surface-subtle);color:var(--muted)}.essay-compare-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:8px}.essay-compare-col{padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface)}.essay-compare-col h4{margin:0 0 8px;font-size:11px;letter-spacing:0.08em;text-transform:uppercase;color:var(--muted)}.essay-compare-col.is-good{border-left:3px solid #16a34a}.essay-compare-col.is-bad{border-left:3px solid var(--danger)}.essay-compare-col.is-warn{border-left:3px solid var(--warning)}.essay-compare-col ul{margin:0;padding-left:18px}.essay-compare-col li{font-size:13px;font-weight:600;color:var(--ink-soft);line-height:1.45;margin-bottom:4px}.essay-style-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.essay-style-item{padding:10px 12px;background:var(--surface-subtle);border-radius:10px;border:1px solid var(--border)}.essay-style-item small{display:block;font-size:11px;letter-spacing:0.08em;text-transform:uppercase;color:var(--muted);font-weight:800;margin-bottom:2px}.essay-style-item strong{font-size:14px;color:var(--ink);text-transform:capitalize}.essay-style-notes{margin:10px 0 0;font-size:13px;color:var(--ink-soft);line-height:1.5;font-style:italic}.essay-plan-fidelity{margin:0;font-size:14px;line-height:1.5;color:var(--ink-soft)}.essay-result{margin-top:18px;padding:0;display:flex;flex-direction:column;gap:16px}.essay-result-head{display:flex;align-items:center;gap:24px;padding:22px 24px;border:1px solid var(--border);border-radius:20px;background:var(--surface);flex-wrap:wrap}.essay-result-score{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:110px;padding:14px 18px;border-radius:14px;border:2px solid var(--border);background:var(--surface-subtle);flex-shrink:0}.essay-result-score strong{font-size:40px;font-weight:850;letter-spacing:-0.02em;line-height:1}.essay-result-score span{font-size:12px;color:var(--muted);font-weight:700}.essay-result-score em{margin-top:6px;font-style:normal;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:0.06em;padding:3px 10px;border-radius:999px;background:var(--surface)}.essay-result-score.is-great{border-color:#16a34a}.essay-result-score.is-great strong{color:#166534}.essay-result-score.is-great em{background:var(--success-soft, #f0fdf4);color:#166534}.essay-result-score.is-ok{border-color:#0ea5e9}.essay-result-score.is-ok strong{color:#1e40af}.essay-result-score.is-ok em{background:#eff6ff;color:#1e40af}.essay-result-score.is-low{border-color:#dc2626}.essay-result-score.is-low strong{color:#991b1b}.essay-result-score.is-low em{background:#fef2f2;color:#991b1b}.essay-result-summary{flex:1;min-width:0}.essay-result-summary .eyebrow{margin-bottom:6px}.essay-result-summary p{margin:0;font-size:16px;font-weight:600;color:var(--ink);line-height:1.55}.essay-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.essay-result-card{padding:18px 20px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.essay-result-card h3{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:0.05em;color:var(--ink-soft)}.essay-result-card h3 svg.icon{width:16px;height:16px;margin:0}.essay-result-card.is-good{background:color-mix(in srgb,#16a34a 4%,var(--surface));border-color:color-mix(in srgb,#16a34a 22%,var(--border))}.essay-result-card.is-good h3{color:#166534}.essay-result-card.is-good svg{color:#16a34a}.essay-result-card.is-warn{background:color-mix(in srgb,#f97316 4%,var(--surface));border-color:color-mix(in srgb,#f97316 22%,var(--border))}.essay-result-card.is-warn h3{color:#c2410c}.essay-result-card.is-warn svg{color:#ea580c}.essay-result-card ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}.essay-result-card li{font-size:14px;line-height:1.5;color:var(--ink)}.essay-result-card li strong{display:block;font-weight:700;margin-bottom:4px}.essay-result-card blockquote{margin:6px 0 0;padding:6px 10px;border-left:2px solid color-mix(in srgb,var(--primary) 30%,var(--border));background:var(--surface-subtle);font-size:13px;font-style:italic;color:var(--ink-soft);border-radius:0 6px 6px 0}.essay-fix{margin:6px 0 0;font-size:13px;font-weight:600;color:var(--ink-soft);font-style:italic}.essay-missed-list li{padding-left:14px;position:relative}.essay-missed-list li::before{content:"–";position:absolute;left:0;color:#ea580c;font-weight:800}.essay-result-card.is-model{background:color-mix(in srgb,var(--primary) 4%,var(--surface));border-color:color-mix(in srgb,var(--primary) 22%,var(--border))}.essay-result-card.is-model h3{color:var(--primary)}.essay-model-text{margin:0;font-size:15px;line-height:1.7;color:var(--ink);white-space:pre-wrap;font-weight:500}.essay-revise-chips{display:flex;flex-wrap:wrap;gap:6px}.essay-revise-chips span{padding:5px 11px;border-radius:999px;background:var(--surface-subtle);border:1px solid var(--border);font-size:13px;font-weight:700;color:var(--ink)}.essay-result-actions{display:flex;gap:10px;flex-wrap:wrap}@media (max-width: 768px){.essay-form-grid{grid-template-columns:1fr}.essay-result-head{flex-direction:column;align-items:stretch}.essay-result-score{align-self:flex-start}}.home-quests-card{padding:18px 22px!important}.quests-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px;flex-wrap:wrap}.quests-head h2{margin:0;font-size:18px;font-weight:800;letter-spacing:-0.005em;color:var(--ink)}.quests-bar{flex:1;min-width:140px;max-width:260px;height:10px;background:color-mix(in srgb,var(--primary) 8%,var(--surface-muted));border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border));border-radius:999px;overflow:hidden;position:relative}.quests-bar>div{height:100%;background:linear-gradient(90deg,var(--primary),color-mix(in srgb,var(--primary) 70%,#8b5cf6));border-radius:999px;transition:width 0.6s cubic-bezier(0.16,1,0.3,1);box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 24%,transparent) inset}.home-quests-card .quests-bar:has(>div[style*="width:100%"]),.home-quests-card .quests-bar:has(>div[style*="width: 100%"]){background:color-mix(in srgb,var(--primary) 14%,var(--surface-muted));box-shadow:0 0 12px -2px color-mix(in srgb,var(--primary) 40%,transparent)}.quests-list{display:flex;flex-direction:column;gap:8px}.quest-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:10px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-subtle);transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow }.quest-row.is-done{background:color-mix(in srgb,#16a34a 10%,var(--surface));border-color:color-mix(in srgb,#16a34a 40%,var(--border))}.quest-row.is-done .quest-info strong::before{content:"✓ ";color:#16a34a;font-weight:900;margin-right:2px}.quest-row.is-done .quest-info strong{color:color-mix(in srgb,var(--ink) 70%,var(--muted))}.quest-row.is-done .quest-info span{color:color-mix(in srgb,#16a34a 80%,var(--muted));font-weight:800}.quest-row.is-binary .quest-bar{display:none}.quest-row.is-ready{border-color:color-mix(in srgb,var(--primary) 35%,var(--border));background:color-mix(in srgb,var(--primary) 5%,var(--surface));animation:quest-pulse 1.4s ease infinite}@keyframes quest-pulse{0%,100%{box-shadow:0 0 0 0 color-mix(in srgb,var(--primary) 25%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--primary) 0%,transparent)}}.quest-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:var(--surface);border:1px solid var(--border);color:var(--primary)}.quest-icon .icon{width:16px;height:16px;margin:0}.quest-row.is-done .quest-icon{background:#16a34a;border-color:#16a34a;color:#fff}.quest-info{display:flex;flex-direction:column;gap:2px;min-width:0}.quest-info strong{font-size:14px;font-weight:800;color:var(--ink);line-height:1.25}.quest-info span{font-size:12px;font-weight:700;color:var(--muted)}.quest-bar{width:80px;height:6px;background:var(--surface-muted);border-radius:999px;overflow:hidden;flex-shrink:0}.quest-bar>div{height:100%;background:var(--primary);transition:width 0.4s ease}.quest-row.is-done .quest-bar>div{background:#16a34a}@media (max-width: 600px){.quest-row{grid-template-columns:auto 1fr}.quest-bar{display:none}}.header-xp-display{display:inline-flex;align-items:center}.hxp-pill{display:inline-flex!important;align-items:center;gap:8px;padding:6px 12px!important;border:1px solid var(--border)!important;border-radius:999px!important;background:var(--surface)!important;color:var(--ink)!important;font-size:12px!important;font-weight:700!important;cursor:pointer;min-height:36px!important;box-shadow:0 1px 2px rgba(0,0,0,0.04)!important;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow }.hxp-pill:hover{border-color:color-mix(in srgb,var(--primary) 40%,var(--border))!important;transform:translateY(-1px)!important}.hxp-level{display:inline-flex;align-items:center;justify-content:center;min-width:28px;padding:2px 8px;background:var(--primary);color:#fff;border-radius:999px;font-size:11px;font-weight:900;letter-spacing:0.02em}.hxp-bar{width:96px;height:8px;background:var(--surface-muted);border-radius:999px;overflow:hidden;flex-shrink:0;border:1px solid color-mix(in srgb,var(--border) 60%,transparent)}.hxp-bar-fill{display:block;height:100%;min-width:8px;background:var(--primary);border-radius:999px;transition:width 0.4s ease;box-shadow:0 0 4px color-mix(in srgb,var(--primary) 40%,transparent)}.hxp-bar-fill[style*="width:0%"],.hxp-bar-fill[style*="width: 0%"]{min-width:0}.hxp-xp{font-size:11px;font-weight:800;color:var(--ink-soft);white-space:nowrap}@media (max-width: 768px){.hxp-bar,.hxp-xp{display:none}.hxp-pill{padding:6px 8px!important}}.mnemonics-overlay{position:fixed;inset:0;z-index:220;background:rgba(8,12,20,0.55);display:grid;place-items:center;padding:24px;animation:pt-fade-in 0.25s ease both}.mnemonics-card{width:min(720px,100%);max-height:88vh;overflow:hidden;display:flex;flex-direction:column;border-radius:24px;background:var(--surface);border:1px solid var(--border);box-shadow:0 40px 100px rgba(8,12,20,0.28);animation:starter-slide-up 0.35s cubic-bezier(0.16,1,0.3,1) both}.mnemonics-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 26px 16px;border-bottom:1px solid var(--border)}.mnemonics-head h2{margin:4px 0 0;font-size:22px;font-weight:850;color:var(--ink);letter-spacing:-0.01em}.mnemonics-close{width:36px!important;height:36px!important;padding:0!important;border:1px solid var(--border)!important;border-radius:50%!important;background:var(--surface)!important;color:var(--ink-soft)!important;display:inline-flex!important;align-items:center;justify-content:center;min-height:36px!important;cursor:pointer}.mnemonics-close:hover{border-color:var(--danger)!important;color:var(--danger)!important}.mnemonics-close .icon{width:16px;height:16px;margin:0}.mnemonics-list{flex:1;overflow-y:auto;padding:16px 26px 24px;display:flex;flex-direction:column;gap:12px}.mnemonic-item{padding:16px 18px;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle)}.mnemonic-type{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0.06em;color:var(--primary);margin-bottom:6px}.mnemonic-type span{color:var(--primary)}.mnemonic-item h3{margin:0 0 8px;font-size:16px;font-weight:800;color:var(--ink);letter-spacing:-0.005em}.mnemonic-aid{margin:0 0 8px;font-size:15px;font-weight:600;color:var(--ink);line-height:1.5;font-style:italic;padding:10px 14px;border-left:3px solid var(--primary);background:var(--surface);border-radius:0 8px 8px 0}.mnemonic-explanation{margin:0;font-size:13px;color:var(--ink-soft);font-weight:500;line-height:1.5}.teach-custom-personality{display:flex;flex-direction:column;gap:6px;margin-top:14px;font-size:13px;font-weight:800;color:var(--ink-soft)}.teach-custom-personality>span{color:var(--ink)}.teach-custom-personality>span small{font-weight:600;color:var(--muted)}.teach-custom-personality textarea{font-family:inherit;font-size:16px;line-height:1.5}.teach-custom-personality>small{font-weight:500;color:var(--muted);font-style:italic}.katex{font-size:1em}.katex-display{margin:1em 0}.lesson-ready-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin:18px 0;padding:18px 22px;border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 10%,var(--surface)) 0%,color-mix(in srgb,var(--accent, #d76148) 10%,var(--surface)) 100%);border:1px solid color-mix(in srgb,var(--primary) 35%,var(--border));box-shadow:0 8px 24px color-mix(in srgb,var(--primary) 14%,transparent);position:relative}.lesson-ready-card[hidden]{display:none}.lesson-ready-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--primary);color:#fff;flex:0 0 auto}.lesson-ready-icon svg{width:22px;height:22px}.lesson-ready-body{display:grid;gap:2px;min-width:0}.lesson-ready-body strong{font-size:16px;font-weight:800;color:var(--ink);letter-spacing:-0.005em}.lesson-ready-body span{font-size:13px;color:var(--ink-soft);line-height:1.4}.lesson-ready-cta{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;font-size:15px;font-weight:800;border-radius:14px;flex:0 0 auto}.lesson-ready-cta svg{width:18px;height:18px}@keyframes lesson-ready-pulse{0%{box-shadow:0 8px 24px color-mix(in srgb,var(--primary) 14%,transparent),0 0 0 0 color-mix(in srgb,var(--primary) 35%,transparent)}60%{box-shadow:0 8px 24px color-mix(in srgb,var(--primary) 14%,transparent),0 0 0 14px color-mix(in srgb,var(--primary) 0%,transparent)}100%{box-shadow:0 8px 24px color-mix(in srgb,var(--primary) 14%,transparent),0 0 0 0 color-mix(in srgb,var(--primary) 0%,transparent)}}.lesson-ready-card.is-pulse{animation:lesson-ready-pulse 1.2s ease-out 0s 3}@media (prefers-reduced-motion: reduce){.lesson-ready-card.is-pulse{animation:none}}@media (max-width: 640px){.lesson-ready-card{grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:12px;padding:16px}.lesson-ready-cta{grid-column:1 / -1;justify-content:center;width:100%}}.image-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:28px 24px;border:2px dashed color-mix(in srgb,var(--primary) 35%,var(--border));border-radius:16px;background:color-mix(in srgb,var(--primary) 3%,var(--surface));cursor:pointer;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow ;text-align:center;outline:none}.image-dropzone:hover,.image-dropzone:focus-visible{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 6%,var(--surface));box-shadow:0 4px 16px color-mix(in srgb,var(--primary) 12%,transparent)}.image-dropzone.is-dragging{border-color:var(--primary);border-style:solid;background:color-mix(in srgb,var(--primary) 10%,var(--surface));transform:scale(1.005)}.image-dropzone.is-loading{opacity:0.7;pointer-events:none}.image-dropzone-icon{width:56px;height:56px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary);margin-bottom:4px}.image-dropzone.is-dragging .image-dropzone-icon{background:var(--primary);color:#fff;transform:scale(1.1);transition:transform 0.2s,background 0.2s,color 0.2s}.image-dropzone-title{font-size:15px;font-weight:800;color:var(--ink);letter-spacing:-0.005em}.image-dropzone-sub{font-size:13px;font-weight:500;color:var(--ink-soft);line-height:1.4;max-width:480px}.image-dropzone-formats{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:0.06em;margin-top:2px}@media (prefers-reduced-motion: reduce){.image-dropzone,.image-dropzone-icon{transition:none!important}}.home-coach-report{padding:22px 24px!important;display:flex;flex-direction:column;gap:16px}.coach-report-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.coach-report-head h2{display:flex;align-items:center;gap:10px;margin:4px 0 0;font-size:18px;font-weight:850;letter-spacing:-0.01em;color:var(--ink);line-height:1.25}.coach-trend{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-size:16px;font-weight:900;flex-shrink:0}.coach-trend.is-up{background:color-mix(in srgb,#16a34a 15%,var(--surface));color:#166534}.coach-trend.is-down{background:color-mix(in srgb,#dc2626 15%,var(--surface));color:#991b1b}.coach-trend.is-flat{background:var(--surface-subtle);color:var(--muted)}.coach-refresh-btn{width:32px!important;height:32px!important;padding:0!important;border:1px solid var(--border)!important;border-radius:50%!important;background:var(--surface)!important;color:var(--ink-soft)!important;display:inline-flex!important;align-items:center;justify-content:center;min-height:32px!important;cursor:pointer;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow ;box-shadow:none!important}.coach-refresh-btn:hover{border-color:var(--primary)!important;color:var(--primary)!important;transform:rotate(120deg)}.coach-refresh-btn .icon{width:14px;height:14px;margin:0}.coach-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.coach-metric{padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-subtle);display:flex;flex-direction:column;gap:2px}.coach-metric.is-good{border-color:color-mix(in srgb,#16a34a 28%,var(--border));background:color-mix(in srgb,#16a34a 4%,var(--surface))}.coach-metric.is-bad{border-color:color-mix(in srgb,#f97316 28%,var(--border));background:color-mix(in srgb,#f97316 4%,var(--surface))}.coach-metric-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0.05em;color:var(--muted)}.coach-metric-value{font-size:22px;font-weight:850;letter-spacing:-0.01em;color:var(--ink)}.coach-metric.is-good .coach-metric-value{color:#166534}.coach-metric.is-bad .coach-metric-value{color:#c2410c}.coach-metric-delta{font-size:11px;font-weight:700;color:var(--ink-soft)}.coach-report-body{display:flex;flex-direction:column;gap:14px}.coach-topics{display:grid;grid-template-columns:1fr 1fr;gap:10px}.coach-topic{padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-subtle);display:flex;flex-direction:column;gap:2px}.coach-topic.is-strong{background:color-mix(in srgb,#16a34a 4%,var(--surface));border-color:color-mix(in srgb,#16a34a 22%,var(--border))}.coach-topic.is-weak{background:color-mix(in srgb,#f97316 4%,var(--surface));border-color:color-mix(in srgb,#f97316 22%,var(--border))}.coach-topic span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0.05em;color:var(--muted)}.coach-topic strong{font-size:14px;font-weight:800;color:var(--ink);letter-spacing:-0.005em}.coach-block h3{display:flex;align-items:center;gap:8px;margin:0 0 8px;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:0.06em;color:var(--ink-soft)}.coach-block h3 svg.icon{width:14px;height:14px;margin:0}.coach-block-wins h3 svg{color:#16a34a}.coach-block-concerns h3 svg{color:#ea580c}.coach-block-recs h3 svg{color:var(--primary)}.coach-block ul,.coach-block ol{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:4px;font-size:13px;line-height:1.5;color:var(--ink);font-weight:500}.coach-rec{list-style:none;position:relative;padding-left:28px;padding-top:4px;padding-bottom:4px}.coach-rec::before{content:"";position:absolute;left:0;top:9px;width:14px;height:14px;border-radius:4px;background:var(--primary)}.coach-rec.coach-rec-high::before{background:#dc2626}.coach-rec.coach-rec-medium::before{background:var(--primary)}.coach-rec.coach-rec-low::before{background:var(--muted)}.coach-rec strong{display:block;font-weight:800;color:var(--ink);margin-bottom:2px}.coach-rec span{font-size:13px;font-weight:500;color:var(--ink-soft)}.coach-encouragement{display:flex;align-items:flex-start;gap:8px;padding:12px 14px;border-radius:12px;background:color-mix(in srgb,var(--primary) 5%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border));font-size:13px;font-weight:600;color:var(--ink);font-style:italic;line-height:1.5}.coach-encouragement .icon{width:14px;height:14px;color:var(--primary);flex-shrink:0;margin-top:2px}.coach-report-error{margin:0;font-size:13px;color:var(--danger)}@media (max-width: 600px){.coach-topics{grid-template-columns:1fr}}.podcast-overlay{position:fixed;inset:0;z-index:220;background:rgba(8,12,20,0.6);display:grid;place-items:center;padding:24px;animation:pt-fade-in 0.25s ease both}.podcast-card{width:min(720px,100%);max-height:90vh;display:flex;flex-direction:column;border-radius:24px;background:var(--surface);border:1px solid var(--border);box-shadow:0 40px 100px rgba(8,12,20,0.28);overflow:hidden;animation:starter-slide-up 0.35s cubic-bezier(0.16,1,0.3,1) both}.podcast-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:22px 26px 18px;border-bottom:1px solid var(--border)}.podcast-head h2{margin:4px 0 4px;font-size:22px;font-weight:850;letter-spacing:-0.01em;color:var(--ink)}.podcast-sub{font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:0.06em}.podcast-close{width:36px!important;height:36px!important;padding:0!important;border:1px solid var(--border)!important;border-radius:50%!important;background:var(--surface)!important;color:var(--ink-soft)!important;display:inline-flex!important;align-items:center;justify-content:center;min-height:36px!important}.podcast-close:hover{border-color:var(--danger)!important;color:var(--danger)!important}.podcast-close .icon{width:16px;height:16px;margin:0}.podcast-player-wrap{padding:20px 26px;border-bottom:1px solid var(--border);background:var(--surface-subtle)}.podcast-player-loading{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:600;color:var(--ink-soft)}#podcast-audio{border-radius:999px}.podcast-script{flex:1;overflow-y:auto;padding:18px 26px 24px;display:flex;flex-direction:column;gap:12px}.podcast-script h3{margin:0 0 6px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:0.08em;color:var(--muted)}.podcast-turn{display:grid;grid-template-columns:60px 1fr;gap:12px;padding:12px 14px;border-radius:12px;background:var(--surface-subtle);border:1px solid var(--border)}.podcast-turn.turn-a{background:color-mix(in srgb,var(--primary) 4%,var(--surface));border-color:color-mix(in srgb,var(--primary) 22%,var(--border))}.podcast-turn.turn-b{background:color-mix(in srgb,#16a34a 4%,var(--surface));border-color:color-mix(in srgb,#16a34a 22%,var(--border))}.podcast-turn strong{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:0.06em;color:var(--primary);align-self:start;padding-top:2px}.podcast-turn.turn-b strong{color:#166534}.podcast-turn p{margin:0;font-size:14px;line-height:1.55;color:var(--ink);font-weight:500}.podcast-tab-panel{width:100%}.visually-hidden,select.visually-hidden,.podcast-lesson-select.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;opacity:0!important;pointer-events:none!important;flex:0 0 auto!important;min-width:0!important}.podcast-empty-state{text-align:center;padding:64px 32px;border:1px dashed var(--border, #d9e1ec);border-radius:16px;background:var(--surface, #ffffff)}.podcast-empty-icon{width:64px;height:64px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(11,107,203,0.08);color:#0b6bcb;margin-bottom:16px}.podcast-empty-icon .icon{width:30px;height:30px}.podcast-empty-state h3{margin:0 0 8px;font-size:20px}.podcast-empty-state p{margin:0 auto;max-width:420px;color:var(--ink-soft, #475569);font-size:15px;line-height:1.55}.podcast-cta-card{display:flex;align-items:center;gap:20px;padding:28px 32px;background:linear-gradient(135deg,rgba(11,107,203,0.06),rgba(99,102,241,0.06));border:1px solid rgba(11,107,203,0.18);border-radius:16px;margin-top:16px}.podcast-cta-card[hidden]{display:none}.defs-setup{display:flex;flex-direction:column;gap:16px}.defs-setup[hidden]{display:none}.defs-config{display:flex;flex-direction:column;gap:16px}.defs-config[hidden]{display:none}.defs-play-panel[hidden],.defs-summary-panel[hidden]{display:none}.defs-config-row{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-end}.defs-field{display:flex;flex-direction:column;gap:6px;flex:1;min-width:200px}.defs-field span{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted, #667085)}.defs-field select{padding:12px 14px;border-radius:10px;border:1px solid var(--border, #d9e1ec);background:var(--surface, #ffffff);font-size:15px;font-weight:600}.defs-cost-pill{display:inline-block;margin-left:8px;padding:2px 8px;font-size:11px;font-weight:700;border-radius:999px;background:rgba(245,158,11,0.15);color:#b45309}.defs-hint{font-size:13px;color:var(--muted, #667085);margin:0}.defs-best{text-align:right;display:flex;flex-direction:column;align-items:flex-end}.defs-best strong{font-size:22px;font-variant-numeric:tabular-nums;color:var(--ink, #0f172a)}.defs-best[hidden]{display:none}.defs-play-panel{display:flex;flex-direction:column;gap:20px}.defs-play-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.defs-progress{flex:1;min-width:200px}.defs-progress-bar{height:6px;border-radius:999px;background:rgba(11,107,203,0.08);overflow:hidden;margin-top:6px}.defs-progress-fill{height:100%;background:linear-gradient(135deg,#0b6bcb,#6366f1);transition:width 200ms ease}.defs-timer{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:rgba(11,107,203,0.06);border:1px solid rgba(11,107,203,0.18);font-variant-numeric:tabular-nums;font-weight:700;color:#0b6bcb}.defs-timer .icon{width:18px;height:18px}.defs-term-card{text-align:center;padding:36px 24px;border-radius:16px;background:linear-gradient(135deg,rgba(11,107,203,0.06),rgba(99,102,241,0.06));border:1px solid rgba(11,107,203,0.18);position:relative}.defs-term-card h2{margin:8px 0 12px;font-size:36px;font-weight:800;line-height:1.15}.defs-difficulty-pill{display:inline-block;padding:4px 10px;border-radius:999px;background:rgba(99,102,241,0.15);color:#4338ca;font-size:12px;font-weight:700;letter-spacing:.03em}.defs-answer-wrap{display:flex;flex-direction:column;gap:12px}.defs-answer-wrap textarea{width:100%;padding:14px;border-radius:12px;border:1px solid var(--border, #d9e1ec);font-size:15px;line-height:1.55;font-family:inherit;resize:vertical;min-height:110px}.defs-answer-wrap textarea:focus{outline:2px solid rgba(11,107,203,0.4);border-color:#0b6bcb}.defs-answer-actions{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.defs-result{border-radius:14px;padding:20px;background:var(--surface, #ffffff);border:1px solid var(--border, #d9e1ec);display:flex;flex-direction:column;gap:14px}.defs-result[hidden]{display:none}.defs-verdict{display:inline-block;padding:6px 14px;border-radius:999px;font-size:13px;font-weight:800;letter-spacing:.03em;align-self:flex-start}.defs-verdict[data-verdict=know]{background:rgba(16,185,129,0.15);color:#047857}.defs-verdict[data-verdict=kind_of]{background:rgba(245,158,11,0.15);color:#b45309}.defs-verdict[data-verdict=dont]{background:rgba(239,68,68,0.15);color:#b91c1c}.defs-feedback{margin:0;color:var(--ink-soft, #475569);font-size:14px}.defs-canonical{padding:14px 16px;border-radius:10px;background:rgba(11,107,203,0.04);border-left:3px solid #0b6bcb}.defs-canonical p{margin:4px 0 0;line-height:1.55}.defs-source{margin-top:10px}.defs-source summary{font-size:13px;color:var(--muted, #667085);cursor:pointer;font-weight:600}.defs-source p{font-size:13px;color:var(--ink-soft, #475569);margin-top:6px;font-style:italic}.defs-summary-panel{display:flex;flex-direction:column;gap:18px}.defs-summary-stats{display:flex;gap:18px}.defs-summary-stats>div{display:flex;flex-direction:column;align-items:flex-end}.defs-summary-stats strong{font-size:22px;font-variant-numeric:tabular-nums}.defs-buckets{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}@media (max-width: 760px){.defs-buckets{grid-template-columns:1fr}}.defs-bucket{padding:16px;border-radius:14px;border:1px solid var(--border, #d9e1ec);background:var(--surface, #ffffff)}.defs-bucket header{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:10px}.defs-bucket header strong{font-size:24px;font-weight:800}.defs-bucket ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.defs-bucket li{font-size:14px;padding:6px 10px;border-radius:8px;background:rgba(15,23,42,0.04)}.defs-bucket .defs-empty-li{background:transparent;color:var(--muted, #667085);font-style:italic}.defs-bucket-know{border-top:3px solid #10b981}.defs-bucket-kindof{border-top:3px solid #f59e0b}.defs-bucket-dont{border-top:3px solid #ef4444}.defs-summary-actions{display:flex;gap:12px;flex-wrap:wrap}.podcast-cta-icon{flex:0 0 56px;width:56px;height:56px;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;background:linear-gradient(135deg,#0b6bcb,#6366f1);color:#fff}.podcast-cta-icon .icon{width:26px;height:26px}.podcast-cta-text{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.podcast-cta-text strong{font-size:18px;color:var(--ink, #0f172a);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.podcast-cta-text span{font-size:14px;color:var(--ink-soft, #475569)}.podcast-cta-btn{flex:0 0 auto;padding:13px 24px;font-size:15px;font-weight:700}@media (max-width: 600px){.podcast-cta-card{flex-direction:column;align-items:stretch;text-align:center}.podcast-cta-icon{margin:0 auto}.podcast-cta-btn{width:100%}}.podcast-gate-wrap{position:relative;border-radius:16px;overflow:hidden;min-height:420px;display:flex;align-items:stretch}.podcast-gate-wrap[hidden]{display:none}.podcast-gate-blur{flex:1;padding:32px 24px;filter:blur(8px);opacity:.55;pointer-events:none;user-select:none;display:flex;flex-direction:column;justify-content:center}.podcast-gate-blur .podcast-tab-desc{margin:0 0 18px}.podcast-gate-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 32px;background:rgba(255,255,255,0.82);border-radius:16px}.podcast-gate-overlay h3{margin:0 0 10px;font-size:22px;font-weight:700;color:var(--ink)}.podcast-gate-overlay>p{color:var(--ink-soft);font-size:15px;line-height:1.6;margin:0 0 22px;max-width:380px}.podcast-gate-overlay .btn-primary{margin-bottom:20px;padding:12px 24px;font-size:15px}.podcast-gate-note{font-size:13px;color:var(--muted);font-style:italic;margin:0;max-width:360px}body.theme-dark .podcast-gate-overlay{background:rgba(8,8,8,0.72)}body.theme-dark .podcast-gate-overlay h3{color:var(--ink, #e5e7eb)}body.theme-dark .podcast-gate-overlay>p{color:rgba(229,231,235,0.85)}body.theme-dark .podcast-gate-note{color:rgba(229,231,235,0.65)}.podcast-tab-desc{color:var(--ink-soft);font-size:15px;line-height:1.6;margin:0 0 20px}.podcast-tab-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.podcast-lesson-select{flex:1;min-width:200px}.podcast-tab-player{margin-top:24px}.podcast-inline-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px}.podcast-inline-head h3{margin:0 0 4px}.podcast-inline-meta{font-size:13px;color:var(--muted);font-weight:500}.podcast-inline-audio{margin:16px 0}.podcast-inline-loading{display:flex;align-items:center;gap:10px;padding:16px 0;color:var(--muted);font-size:14px}.podcast-inline-transcript{margin-top:12px}.podcast-inline-transcript summary{cursor:pointer;font-weight:600;font-size:14px;color:var(--accent);padding:8px 0}.checklist-tab-panel{width:100%}.checklist-tab-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.checklist-lesson-select{flex:1;min-width:200px}.checklist-tab-output{margin-top:8px}.cl-tab-progress{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:20px;padding:12px 16px;background:var(--surface);border:1px solid var(--border);border-radius:12px}.cl-tab-progress-bar{flex:1;min-width:120px;height:8px;background:var(--border);border-radius:8px;overflow:hidden}.cl-tab-progress-fill{height:100%;background:var(--accent);border-radius:8px;transition:width 0.3s ease}.cl-tab-progress-text{font-size:13px;font-weight:600;color:var(--ink-soft);white-space:nowrap}.cl-tab-edit-badge{font-size:12px;font-weight:600;color:#b45309;background:#fef3c7;padding:2px 8px;border-radius:6px}.cl-tab-topic{margin-bottom:20px}.cl-tab-topic-title{font-size:15px;font-weight:700;color:var(--ink);margin:0 0 8px;padding-bottom:6px;border-bottom:1px solid var(--border)}.cl-tab-concepts{display:flex;flex-direction:column;gap:4px}.cl-tab-concept{display:flex;align-items:flex-start;gap:10px;padding:8px 12px;border-radius:10px;transition:background 0.15s;cursor:default}.cl-tab-concept:hover{background:var(--surface-alt, var(--surface))}.cl-tab-concept.is-done{opacity:0.65}.cl-tab-concept.is-done .cl-tab-concept-label{text-decoration:line-through}.cl-tab-concept input[type=checkbox]{margin-top:3px;accent-color:var(--accent)}.cl-tab-concept-info{flex:1;min-width:0}.cl-tab-concept-label{display:block;font-size:14px;font-weight:600;color:var(--ink)}.cl-tab-concept-desc{display:block;font-size:13px;color:var(--muted);margin-top:2px}.cl-tab-teach-btn{flex-shrink:0;background:none;border:1px solid var(--border);border-radius:8px;padding:4px 8px;cursor:pointer;color:var(--accent);transition:background 0.15s}.cl-tab-teach-btn:hover{background:var(--surface)}.checklist-edit-warning{display:flex;gap:12px;align-items:flex-start;padding:16px;background:#fef3c7;border:1px solid #f59e0b;border-radius:12px;margin-top:16px}.checklist-edit-warning .icon{width:20px;height:20px;flex-shrink:0;color:#b45309;margin-top:2px}.checklist-edit-warning strong{display:block;font-size:14px;color:#92400e;margin-bottom:4px}.checklist-edit-warning p{font-size:13px;color:#78350f;margin:0 0 8px;line-height:1.5}.checklist-edit-warning .btn-sm{font-size:13px;padding:4px 12px}body.theme-dark .checklist-edit-warning{background:#451a03;border-color:#92400e}body.theme-dark .checklist-edit-warning strong{color:#fbbf24}body.theme-dark .checklist-edit-warning p{color:#fcd34d}.share-overlay{position:fixed;inset:0;z-index:220;background:rgba(8,12,20,0.55);display:grid;place-items:center;padding:24px;animation:pt-fade-in 0.25s ease both}.share-card{width:min(560px,100%);border-radius:22px;background:var(--surface);border:1px solid var(--border);box-shadow:0 40px 100px rgba(8,12,20,0.25);animation:starter-slide-up 0.3s cubic-bezier(0.16,1,0.3,1) both;overflow:hidden}.share-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:20px 22px 16px;border-bottom:1px solid var(--border)}.share-head h2{margin:4px 0 0;font-size:18px;font-weight:800;color:var(--ink);letter-spacing:-0.005em}.share-close{width:32px!important;height:32px!important;padding:0!important;border:1px solid var(--border)!important;border-radius:50%!important;background:var(--surface)!important;color:var(--ink-soft)!important;min-height:32px!important;display:inline-flex!important;align-items:center;justify-content:center}.share-close:hover{border-color:var(--danger)!important;color:var(--danger)!important}.share-close .icon{width:14px;height:14px;margin:0}.share-body{padding:18px 22px 22px;display:flex;flex-direction:column;gap:14px}.share-tagline{margin:0;font-size:13px;color:var(--ink-soft);font-weight:500;line-height:1.5}.share-confirm{display:grid;gap:14px}.share-confirm-warning{display:flex;align-items:flex-start;gap:10px;margin:0;padding:12px 14px;background:color-mix(in srgb,var(--warning) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--warning) 30%,var(--border));border-radius:12px;color:var(--ink-soft);font-size:13px;line-height:1.5}.share-confirm-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--warning);color:#fff;font-size:13px;font-weight:900;flex-shrink:0;margin-top:1px}.share-confirm-warning strong{color:var(--ink)}.share-confirm-list{margin:0;padding-left:22px;display:grid;gap:4px;color:var(--ink-soft);font-size:13px;line-height:1.5}.share-confirm-list li{list-style:disc}.share-confirm-actions{display:flex;gap:10px;justify-content:flex-end}.share-confirm-actions .btn-primary,.share-confirm-actions .btn-secondary{min-height:40px;padding:0 18px}.delete-account-overlay{position:fixed;inset:0;z-index:9100;background:rgba(8,13,22,0.65);display:flex;align-items:center;justify-content:center;padding:16px}.delete-account-card{width:100%;max-width:480px;background:var(--surface);border:1px solid color-mix(in srgb,var(--danger) 38%,var(--border));border-radius:20px;padding:26px;box-shadow:0 30px 60px rgba(0,0,0,0.32)}.delete-account-title{margin:0 0 10px;color:var(--danger);font-size:18px;font-weight:800}.delete-account-warning{color:var(--ink-soft);font-weight:600;font-size:13px;line-height:1.55;margin:0 0 14px}.delete-account-warning strong{color:var(--ink);font-weight:800}.delete-account-list{margin:0 0 16px;padding-left:20px;display:grid;gap:4px;font-size:13px;color:var(--ink-soft)}.delete-account-list li{list-style:disc}.delete-account-input{display:grid;gap:6px;margin-bottom:16px}.delete-account-input span{font-size:13px;color:var(--ink-soft);font-weight:700}.delete-account-input code{background:var(--surface-subtle);border:1px solid var(--border);padding:1px 6px;border-radius:5px;font-family:Consolas,"SF Mono",Monaco,monospace;font-size:13px;color:var(--ink)}.delete-account-input input{font-family:inherit;width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:10px;font-size:14px;background:var(--surface);color:var(--ink)}.delete-account-input input:focus{outline:2px solid var(--danger);outline-offset:1px;border-color:var(--danger)}.delete-account-actions{display:flex;gap:10px;justify-content:flex-end}.delete-account-actions .btn-secondary,.delete-account-actions .btn-danger{min-height:40px;padding:0 18px}.delete-account-actions .btn-danger:disabled{opacity:0.4;cursor:not-allowed}.share-card button:focus-visible,.share-card input:focus-visible,.delete-account-card button:focus-visible,.delete-account-card input:focus-visible,.duplicate-lesson-modal button:focus-visible,#lesson-library-sort:focus-visible,.dash-view-toggle button:focus-visible,.lesson-context-select:focus-visible,.games-lesson-select:focus-visible,.essay-marker-form select:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:8px}.delete-account-card .btn-danger:focus-visible{outline-color:var(--danger)}.share-url-row{display:flex;gap:8px}.share-url-row input{flex:1;font-family:ui-monospace,"SF Mono",monospace;font-size:13px!important;background:var(--surface-subtle)!important}.share-url-row button{padding:0 18px!important;border-radius:12px!important;white-space:nowrap;flex-shrink:0}.share-meta{display:flex;gap:6px;font-size:12px;color:var(--muted);font-weight:600}.share-meta strong{color:var(--ink);font-weight:800}.share-actions{display:flex;gap:8px;padding-top:12px;border-top:1px solid var(--border)}.share-revoke{color:var(--danger)!important;border-color:color-mix(in srgb,var(--danger) 30%,var(--border))!important}.share-revoke:hover{background:color-mix(in srgb,var(--danger) 6%,var(--surface))!important}.share-error{margin:0;font-size:13px;color:var(--danger)}body.is-public-view{background:var(--bg)}.public-lesson-root{min-height:100vh;display:flex;flex-direction:column}.public-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 32px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface) 92%,transparent);position:sticky;top:0;z-index:10}.public-brand{display:inline-flex;align-items:center;gap:10px;font-size:16px;font-weight:800;color:var(--ink);letter-spacing:-0.005em}.public-brand img{width:28px;height:28px;border-radius:6px}.public-cta{padding:8px 18px;border-radius:999px;background:var(--primary);color:#fff;font-size:13px;font-weight:800;text-decoration:none;box-shadow:0 4px 12px color-mix(in srgb,var(--primary) 25%,transparent);transition:transform 0.15s,box-shadow 0.15s}.public-cta:hover{transform:translateY(-1px);box-shadow:0 8px 20px color-mix(in srgb,var(--primary) 35%,transparent)}.public-main{flex:1;width:min(820px,100%);margin:0 auto;padding:40px 24px 60px}.public-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:50vh;color:var(--ink-soft);font-weight:600}.public-error{text-align:center;padding:60px 24px}.public-error h1{margin:0 0 12px;font-size:28px;font-weight:850;color:var(--ink)}.public-error p{margin:0 0 24px;color:var(--ink-soft);font-weight:500}.public-lesson-meta{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:12px;font-size:13px;font-weight:700;color:var(--muted)}.public-lesson h1{margin:0 0 24px;font-size:clamp(28px,4vw,40px);font-weight:850;letter-spacing:-0.02em;line-height:1.15;color:var(--ink);text-wrap:balance}.public-section{padding:22px 24px;margin-bottom:14px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.public-section h2{margin:0 0 14px;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:0.05em;color:var(--primary)}.public-section ul{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:8px;font-size:15px;line-height:1.6;color:var(--ink);font-weight:500}.public-terms{display:grid;gap:12px;margin:0;padding:0}.public-terms dt{font-size:15px;font-weight:800;color:var(--ink);letter-spacing:-0.005em}.public-terms dd{margin:4px 0 0 0;font-size:15px;color:var(--ink-soft);font-weight:500;line-height:1.55}.public-cta-bar{margin-top:32px;padding:28px;border-radius:20px;background:color-mix(in srgb,var(--primary) 6%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 25%,var(--border));text-align:center}.public-cta-bar p{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--ink)}.public-cta-bar .btn-primary{display:inline-flex;padding:12px 24px!important;border-radius:999px!important}.public-footer{border-top:1px solid var(--border);padding:18px 32px;text-align:center;font-size:13px;color:var(--muted);font-weight:500}.public-footer a{color:var(--primary);font-weight:700;text-decoration:none}.public-footer a:hover{text-decoration:underline}@media (max-width: 600px){.public-header{padding:12px 16px}.public-main{padding:24px 16px 40px}.public-section{padding:18px 16px}.podcast-turn{grid-template-columns:50px 1fr}}.battle-lobby-pre{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;flex:1;text-align:center;padding:32px 20px}.battle-pre-actions{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:360px}#battle-create-btn{width:100%;padding:14px 24px!important;font-size:16px!important;border-radius:999px!important}.battle-or{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0.1em;color:var(--muted)}.battle-join-form{display:flex;gap:8px;width:100%}#battle-code-input{flex:1;text-transform:uppercase;letter-spacing:0.15em;font-weight:800;font-size:16px!important;text-align:center;font-family:ui-monospace,"SF Mono",monospace}.battle-join-form button{border-radius:12px!important;padding:0 18px!important}.battle-pre-note{font-size:12px;color:var(--muted);font-weight:600;margin-top:8px}.battle-lobby{display:flex;flex-direction:column;gap:18px}.battle-lobby-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px;border:1px solid var(--border);border-radius:20px;background:linear-gradient(135deg,color-mix(in srgb,#8b5cf6 8%,var(--surface)),var(--surface));flex-wrap:wrap}.battle-code{margin:4px 0;font-size:clamp(36px,5vw,52px);font-weight:900;letter-spacing:0.15em;color:#8b5cf6;font-family:ui-monospace,"SF Mono",monospace;text-shadow:0 2px 8px color-mix(in srgb,#8b5cf6 20%,transparent)}.battle-lobby-head small{display:block;font-size:13px;color:var(--ink-soft);font-weight:600;margin-top:4px}.battle-players h3{margin:0 0 12px;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:0.06em;color:var(--ink-soft)}.battle-player-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.battle-player{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);font-size:14px;font-weight:700}.battle-player.is-disconnected{opacity:0.5}.battle-player-avatar{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#8b5cf6;color:#fff;font-weight:900}.battle-player-name{flex:1;min-width:0;color:var(--ink)}.battle-player-name em{font-style:normal;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary);margin-left:6px;text-transform:uppercase;letter-spacing:0.05em}.battle-player-status{font-size:16px;color:#16a34a}.battle-player-status.is-off{color:var(--muted)}.battle-start-btn{padding:14px 24px!important;font-size:16px!important;border-radius:999px!important;align-self:stretch}.battle-waiting{text-align:center;margin:0;padding:14px;font-size:14px;color:var(--ink-soft);font-weight:600;font-style:italic}.battle-chat{display:flex;flex-direction:column;gap:4px;max-height:120px;overflow-y:auto;padding:8px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-subtle);font-size:13px;display:none}.battle-chat:not(:empty){display:flex}.battle-chat-row strong{color:var(--primary);margin-right:6px}.battle-game{display:flex;flex-direction:column;gap:18px}.battle-game-hud{display:flex;gap:12px}.battle-question h3{margin:0 0 18px;font-size:clamp(20px,2.5vw,26px);font-weight:800;letter-spacing:-0.01em;line-height:1.3;color:var(--ink);text-wrap:balance}.battle-choices{display:flex;flex-direction:column;gap:10px}.battle-choice{padding:16px 20px!important;border:1.5px solid var(--border)!important;border-radius:14px!important;background:var(--surface)!important;color:var(--ink)!important;font-size:15px!important;font-weight:600!important;text-align:left!important;justify-content:flex-start!important;cursor:pointer;transition:transform ,opacity ,background-color ,color ,border-color ,box-shadow ;min-height:0!important;box-shadow:0 1px 2px rgba(0,0,0,0.03)!important}.battle-choice:hover:not(:disabled){border-color:#8b5cf6!important;background:color-mix(in srgb,#8b5cf6 5%,var(--surface))!important;transform:translateX(2px)!important}.battle-choice.is-selected{border-color:#8b5cf6!important;background:color-mix(in srgb,#8b5cf6 12%,var(--surface))!important}.battle-choice.is-correct{border-color:#16a34a!important;background:color-mix(in srgb,#16a34a 14%,var(--surface))!important;color:#166534!important}.battle-choice.is-wrong{border-color:#dc2626!important;background:color-mix(in srgb,#dc2626 10%,var(--surface))!important;color:#991b1b!important}.battle-answered-status{font-size:13px;font-weight:700;color:var(--ink-soft);text-align:center;padding:8px}.battle-force-reveal{align-self:center;border-radius:999px!important}.battle-reveal-panel{margin-top:18px;padding:18px 22px;border:1px solid var(--border);border-radius:16px;background:var(--surface-subtle)}.battle-reveal-panel h4{margin:0 0 12px;font-size:16px;font-weight:800;color:var(--ink)}.battle-reveal-panel h4 strong{color:#16a34a}.battle-reveal-results{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column;gap:6px}.battle-reveal-results li{display:grid;grid-template-columns:1fr auto auto auto;gap:12px;align-items:center;padding:8px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface);font-size:13px;font-weight:700}.battle-reveal-results li.is-good{background:color-mix(in srgb,#16a34a 6%,var(--surface));border-color:color-mix(in srgb,#16a34a 22%,var(--border))}.battle-reveal-results li.is-bad{background:color-mix(in srgb,#dc2626 4%,var(--surface));border-color:color-mix(in srgb,#dc2626 18%,var(--border));opacity:0.7}.battle-result-name{color:var(--ink)}.battle-result-points{color:#166534;font-weight:800}.battle-reveal-results li.is-bad .battle-result-points{color:var(--muted)}.battle-result-time{color:var(--muted);font-size:12px}.battle-result-total{color:var(--primary);font-weight:800;min-width:60px;text-align:right}.battle-next-btn{width:100%;border-radius:999px!important}.battle-final-leaderboard{list-style:none;margin:16px 0;padding:0;display:flex;flex-direction:column;gap:8px;width:100%;max-width:400px}.battle-final-row{display:grid;grid-template-columns:36px 1fr auto;gap:12px;align-items:center;padding:12px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface);font-size:15px;font-weight:700}.battle-final-row.is-winner{background:linear-gradient(135deg,color-mix(in srgb,#f59e0b 14%,var(--surface)),var(--surface));border-color:#f59e0b}.battle-final-rank{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--surface-muted);color:var(--ink-soft);font-weight:900;font-size:13px}.battle-final-row.is-winner .battle-final-rank{background:#f59e0b;color:#fff}.battle-final-name{color:var(--ink)}.battle-final-name em{font-style:normal;font-size:11px;color:var(--muted)}.battle-final-score{color:#8b5cf6;font-weight:900}.teach-voice-call.is-active{background:linear-gradient(135deg,#dc2626,#b91c1c)!important;color:#fff!important;border-color:#b91c1c!important}.voice-indicator{display:flex;align-items:center;gap:12px;padding:14px 18px;margin-bottom:12px;border:1px solid color-mix(in srgb,var(--primary) 30%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--primary) 6%,var(--surface));font-size:13px;font-weight:600;color:var(--ink)}.voice-pulse{width:12px;height:12px;border-radius:50%;background:var(--primary);position:relative;flex-shrink:0}.voice-pulse::before,.voice-pulse::after{content:"";position:absolute;inset:0;border-radius:50%;background:var(--primary);animation:voice-ripple 1.6s ease-out infinite}.voice-pulse::after{animation-delay:0.8s}@keyframes voice-ripple{from{transform:scale(1);opacity:0.7}to{transform:scale(2.6);opacity:0}}@media (max-width: 600px){.battle-reveal-results li{grid-template-columns:1fr auto}.battle-result-time,.battle-result-total{display:none}}.duplicate-lesson-overlay{position:fixed;inset:0;background:rgba(8,13,22,0.55);display:flex;align-items:center;justify-content:center;z-index:9000;padding:16px;animation:dup-fade-in 0.18s ease-out}@keyframes dup-fade-in{from{opacity:0}to{opacity:1}}.duplicate-lesson-modal{width:100%;max-width:520px;background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:26px 26px 22px;box-shadow:0 30px 60px rgba(0,0,0,0.25);animation:dup-modal-in 0.24s cubic-bezier(0.34,1.45,0.64,1)}@keyframes dup-modal-in{from{opacity:0;transform:translateY(12px) scale(0.96)}to{opacity:1;transform:translateY(0) scale(1)}}.duplicate-lesson-modal h3{margin:0 0 8px;font-size:19px;font-weight:800;color:var(--ink);display:flex;align-items:center;gap:8px}.duplicate-lesson-modal h3::before{content:"⚠";color:var(--warning)}.duplicate-lesson-modal>p{margin:0 0 16px;color:var(--ink-soft);font-weight:600;line-height:1.5;font-size:13px}.duplicate-lesson-list{display:flex;flex-direction:column;gap:8px;margin-bottom:18px;max-height:320px;overflow-y:auto}.duplicate-lesson-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-subtle);text-align:left;cursor:pointer;transition:border-color 0.15s,background 0.15s,transform 0.15s;font-family:inherit}.duplicate-lesson-row:hover{border-color:color-mix(in srgb,var(--primary) 50%,var(--border));background:color-mix(in srgb,var(--primary) 4%,var(--surface));transform:translateY(-1px)}.duplicate-lesson-row-main{display:flex;flex-direction:column;gap:3px;min-width:0}.duplicate-lesson-row-main strong{color:var(--ink);font-size:14px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.duplicate-lesson-row-main span{font-size:12px;color:var(--muted);font-weight:600}.duplicate-lesson-reason{font-size:11px;font-weight:800;padding:4px 9px;border-radius:999px;background:color-mix(in srgb,var(--warning) 18%,var(--surface));color:color-mix(in srgb,var(--warning) 80%,var(--ink));border:1px solid color-mix(in srgb,var(--warning) 30%,transparent);letter-spacing:0.01em;white-space:nowrap}.duplicate-lesson-reason.is-strong{background:color-mix(in srgb,var(--danger) 14%,var(--surface));color:var(--danger);border-color:color-mix(in srgb,var(--danger) 30%,transparent)}.duplicate-lesson-actions{display:flex;gap:10px;justify-content:flex-end}.duplicate-lesson-actions .btn-primary,.duplicate-lesson-actions .btn-secondary{min-height:40px;padding:0 18px}.a3-explainer{color:var(--ink-soft);font-size:13px;line-height:1.5;margin:0 0 16px;font-weight:600}.a3-notes-preview{border:1px dashed var(--border);border-radius:14px;padding:18px;background:color-mix(in srgb,var(--surface-subtle) 50%,var(--surface));margin-top:14px}.a3-preview-empty{color:var(--muted);font-size:13px;text-align:center;padding:16px}.a3-preview-empty p{margin:0}.a3-preview-title{margin:0 0 8px;color:var(--ink);font-size:17px;font-weight:800}.a3-preview-overview{margin:0 0 14px;color:var(--ink-soft);font-size:13px;line-height:1.55}.a3-preview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-bottom:12px}.a3-preview-block{padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.a3-preview-block strong{display:block;margin-bottom:6px;color:var(--ink);font-size:12px;font-weight:800;letter-spacing:0.02em;text-transform:uppercase}.a3-preview-block ul{list-style:none;margin:0 0 6px;padding:0;display:grid;gap:4px}.a3-preview-block li{font-size:13px;color:var(--ink-soft);line-height:1.45;padding-left:14px;position:relative}.a3-preview-block li::before{content:"•";position:absolute;left:4px;color:var(--primary);font-weight:800}.a3-preview-block small{display:block;margin-top:2px;color:var(--muted);font-size:11px;font-weight:700}.a3-preview-footer{display:block;color:var(--muted);font-size:11px;font-weight:700;margin-top:4px}.flashcard-sync-notice{display:flex;align-items:flex-start;gap:10px;margin:10px 0 0;padding:10px 14px;border-radius:10px;background:color-mix(in srgb,var(--warning) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--warning) 28%,var(--border));color:var(--ink-soft);font-size:13px;line-height:1.45;font-weight:600}.flashcard-sync-notice.is-strong{background:color-mix(in srgb,var(--danger) 8%,var(--surface));border-color:color-mix(in srgb,var(--danger) 30%,var(--border))}.flashcard-sync-notice strong{color:var(--ink);font-weight:800}.flashcard-sync-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--warning);color:#fff;font-size:13px;font-weight:900;flex-shrink:0;margin-top:1px}.flashcard-sync-notice.is-strong .flashcard-sync-icon{background:var(--danger)}.flashcard-signin-link{display:inline;background:none;border:none;padding:0;margin-left:4px;color:var(--primary);text-decoration:underline;font-weight:800;cursor:pointer;font-size:13px;font-family:inherit}.flashcard-signin-link:hover{color:var(--primary-hover)}.ai-chat-panel{display:grid;gap:16px;padding:22px}.ai-chat-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:flex-start}.ai-chat-head h2{margin:0 0 4px;color:var(--ink);font-size:22px;font-weight:800}.ai-chat-tagline{margin:6px 0 0;color:var(--ink-soft);font-size:13px;line-height:1.5;font-weight:600;max-width:720px}.ai-chat-tagline b{color:var(--primary);font-weight:800}.ai-chat-head-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}.ai-chat-build-btn{display:inline-flex;align-items:center;gap:6px}.ai-chat-build-btn .icon{width:16px;height:16px}.ai-chat-messages{display:flex;flex-direction:column;gap:12px;min-height:320px;max-height:60vh;overflow-y:auto;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle)}.ai-chat-empty{text-align:center;padding:28px 12px;color:var(--ink-soft)}.ai-chat-empty-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;margin-bottom:12px;border-radius:20px;background:color-mix(in srgb,var(--primary) 14%,var(--surface));color:var(--primary)}.ai-chat-empty-icon .icon{width:28px;height:28px}.ai-chat-empty strong{display:block;font-size:18px;font-weight:800;color:var(--ink);margin-bottom:6px}.ai-chat-empty p{margin:0 0 16px;font-size:13px}.ai-chat-suggestions{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;max-width:720px;margin:0 auto}.ai-chat-suggestion{padding:10px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--ink-soft);font-size:13px;font-weight:700;cursor:pointer;text-align:left;font-family:inherit;transition:border-color 0.15s,background 0.15s,transform 0.15s}.ai-chat-suggestion:hover{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 6%,var(--surface));transform:translateY(-1px)}.ai-chat-msg{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;max-width:92%}.ai-chat-msg-user{margin-left:auto;grid-template-columns:minmax(0,1fr) auto;text-align:right}.ai-chat-msg-user .ai-chat-msg-avatar{order:2}.ai-chat-msg-avatar{width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--surface);border:1px solid var(--border);font-size:16px;flex-shrink:0}.ai-chat-msg-user .ai-chat-msg-avatar{background:var(--primary);border-color:var(--primary)}.ai-chat-msg-body{padding:10px 14px;border-radius:14px;font-size:13px;line-height:1.55;color:var(--ink);background:var(--surface);border:1px solid var(--border);text-align:left}.ai-chat-msg-user .ai-chat-msg-body{background:color-mix(in srgb,var(--primary) 10%,var(--surface));border-color:color-mix(in srgb,var(--primary) 32%,var(--border))}.ai-chat-msg-pending .ai-chat-msg-body{background:var(--surface-subtle)}.ai-chat-typing{display:inline-flex;gap:4px}.ai-chat-typing span{width:7px;height:7px;border-radius:50%;background:var(--muted);animation:ai-chat-typing-bounce 1.2s infinite}.ai-chat-typing span:nth-child(2){animation-delay:0.15s}.ai-chat-typing span:nth-child(3){animation-delay:0.3s}@keyframes ai-chat-typing-bounce{0%,70%,100%{opacity:0.3;transform:translateY(0)}35%{opacity:1;transform:translateY(-3px)}}.ai-chat-form{display:grid;gap:8px}.ai-chat-form textarea{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--ink);font-family:inherit;font-size:14px;resize:vertical;min-height:64px}.ai-chat-form textarea:focus{outline:2px solid var(--primary);outline-offset:1px;border-color:var(--primary)}.ai-chat-form-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.ai-chat-meta{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:0.01em}@media (max-width: 768px){.ai-chat-head{grid-template-columns:1fr}.ai-chat-head-actions{width:100%;justify-content:flex-end}.ai-chat-msg{max-width:100%}.ai-chat-messages{max-height:50vh}}.study-modal-overlay{position:fixed;inset:0;z-index:9000;background:rgba(8,13,22,0.55);display:flex;align-items:center;justify-content:center;animation:dup-fade-in 0.18s ease-out}.study-modal-card{width:100%;max-width:880px;max-height:calc(100vh - 48px);background:var(--surface);border:1px solid var(--border);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 30px 60px rgba(0,0,0,0.25)}.study-modal-head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--border);flex-shrink:0}.study-modal-head h2{margin:0;font-size:17px;font-weight:800;color:var(--ink)}.study-modal-close{width:32px;height:32px;border-radius:50%;border:1px solid var(--border);background:var(--surface);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.study-modal-body{padding:18px 22px 22px;overflow-y:auto}.quotebank-controls{display:flex;gap:8px;margin-bottom:12px}.quotebank-controls input{flex:1;padding:9px 12px;border:1px solid var(--border);border-radius:10px;font-size:13px;font-family:inherit}.quotebank-filters{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.qb-filter{padding:4px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface-subtle);color:var(--ink-soft);font-size:11px;font-weight:700;cursor:pointer;font-family:inherit}.qb-filter.is-active{background:var(--primary);color:#fff;border-color:var(--primary)}.quotebank-list{display:grid;gap:12px}.quotebank-card{padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.quotebank-card blockquote{margin:0 0 8px;font-size:15px;line-height:1.5;color:var(--ink);font-style:italic;border-left:3px solid var(--primary);padding-left:12px}.quotebank-loc{color:var(--muted);font-size:11px;font-weight:700}.quotebank-tags{display:flex;flex-wrap:wrap;gap:4px;margin:8px 0}.qb-chip{padding:2px 8px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:0.02em}.qb-theme{background:color-mix(in srgb,var(--primary) 14%,var(--surface));color:var(--primary)}.qb-char{background:color-mix(in srgb,#8b5cf6 14%,var(--surface));color:#8b5cf6}.qb-tech{background:color-mix(in srgb,#f59e0b 14%,var(--surface));color:#b45309}.quotebank-effect{margin:6px 0 0;font-size:13px;color:var(--ink-soft);line-height:1.5}.quotebank-loading{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px 0;color:var(--muted)}.vocab-tagline{margin:0 0 14px;color:var(--ink-soft);font-size:13px;line-height:1.5}.vocab-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.vocab-card{padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.vocab-card header{display:flex;align-items:baseline;gap:8px;margin-bottom:6px}.vocab-card header strong{font-size:16px;color:var(--ink);font-weight:850}.vocab-card header em{font-size:11px;color:var(--muted);font-style:italic}.vocab-def{margin:0 0 6px;font-size:13px;color:var(--ink-soft);line-height:1.45}.vocab-example{margin:0;font-size:13px;color:var(--ink);line-height:1.45;font-style:italic}.vocab-everyday{display:block;margin-top:6px;color:var(--muted);font-size:11px;font-weight:700}.essay-toggle-row{display:grid;gap:8px;margin-bottom:4px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.essay-toggle{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;cursor:pointer;background:var(--surface-subtle)}.essay-toggle input{margin-top:3px;accent-color:var(--primary)}.essay-toggle strong{display:block;font-weight:800;font-size:13px;color:var(--ink)}.essay-toggle small{display:block;color:var(--muted);font-size:11px;font-weight:600;margin-top:1px;line-height:1.4}.essay-prompt-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:6px}.essay-plan-btn{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 14px}.essay-plan-btn .icon{width:14px;height:14px}.essay-plan-hint{color:var(--muted);font-size:11px;font-weight:600}.essay-ao-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.essay-ao-card{padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.essay-ao-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:4px}.essay-ao-head strong{color:var(--primary);font-weight:800}.essay-ao-head span{font-size:12px;font-weight:800;color:var(--ink)}.essay-ao-bar{height:6px;background:var(--surface-muted);border-radius:999px;overflow:hidden;margin-bottom:6px}.essay-ao-bar>div{height:100%;background:var(--primary)}.essay-ao-card small{color:var(--muted);font-size:11px}.essay-peel-list{display:grid;gap:10px}.essay-peel-row{padding:12px;border-left:3px solid var(--border);background:var(--surface-subtle);border-radius:0 10px 10px 0}.essay-peel-row.is-strong{border-left-color:#16a34a}.essay-peel-row.is-ok{border-left-color:var(--primary)}.essay-peel-row.is-weak,.essay-peel-row.is-missing{border-left-color:var(--warning)}.essay-peel-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.essay-peel-head strong{font-weight:800;color:var(--ink)}.essay-peel-verdict{font-size:11px;font-weight:800;padding:2px 8px;border-radius:999px;background:var(--surface);border:1px solid var(--border);color:var(--ink-soft)}.essay-peel-bullets{margin:0;padding-left:18px;display:grid;gap:3px}.essay-peel-bullets li{font-size:13px;line-height:1.45;color:var(--ink-soft)}.essay-peel-bullets li.is-miss{color:var(--warning)}.essay-techniques-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.essay-tech-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.essay-tech-chips span{padding:4px 10px;border-radius:999px;font-size:11px;font-weight:800}.essay-tech-chips.is-good span{background:color-mix(in srgb,#16a34a 14%,var(--surface));color:#15803d}.essay-tech-chips.is-warn span{background:color-mix(in srgb,var(--warning) 14%,var(--surface));color:#b45309}.essay-plan{display:grid;gap:14px;padding:18px;border:1px solid color-mix(in srgb,var(--primary) 28%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--primary) 4%,var(--surface))}.essay-plan-head h3{margin:4px 0 0;font-size:16px;color:var(--ink)}.essay-plan-thesis{margin-top:10px;padding:10px 12px;background:var(--surface);border-left:3px solid var(--primary);border-radius:0 8px 8px 0;font-size:13px;color:var(--ink)}.essay-plan-paragraphs{display:grid;gap:10px}.essay-plan-para{padding:12px 14px;background:var(--surface);border:1px solid var(--border);border-radius:10px}.essay-plan-para header{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:0.04em;margin-bottom:6px}.essay-plan-topic,.essay-plan-explain,.essay-plan-link{margin:6px 0;font-size:13px;color:var(--ink-soft);line-height:1.5}.essay-plan-quotes{display:grid;gap:8px;margin:8px 0}.essay-plan-quote{margin:0;padding:8px 12px;background:var(--surface-subtle);border-left:3px solid var(--primary);border-radius:0 8px 8px 0;font-size:13px;color:var(--ink);font-style:italic}.essay-plan-techs{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.essay-plan-techs span{font-size:11px;font-weight:800;padding:1px 8px;border-radius:999px;background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary);font-style:normal}.essay-plan-quote small{display:block;margin-top:6px;color:var(--muted);font-size:11px;font-style:normal}.essay-plan-counter,.essay-plan-conclusion,.essay-plan-tips{padding:12px 14px;background:var(--surface);border:1px solid var(--border);border-radius:10px}.essay-plan-tips ul{margin:6px 0 0;padding-left:20px}.essay-plan-tips li{font-size:13px;color:var(--ink-soft);line-height:1.5}.teach-persona-presets{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;align-items:center}.teach-persona-presets small{display:block;width:100%;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:0.04em;font-weight:800;margin-bottom:2px}.teach-persona-preset{padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--ink-soft);font-size:11px;font-weight:800;cursor:pointer;font-family:inherit}.teach-persona-preset:hover{border-color:var(--primary);color:var(--primary);background:color-mix(in srgb,var(--primary) 6%,var(--surface))}.teach-persona-preset.is-active{background:var(--primary);color:#fff;border-color:var(--primary)}.home-focus-only-card{grid-column:1 / -1;display:grid;gap:22px;padding:40px clamp(24px,5vw,56px);border-radius:22px;background:radial-gradient(1200px circle at 0% 0%,color-mix(in srgb,var(--primary) 10%,transparent),transparent 50%),var(--surface);border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border));box-shadow:0 24px 60px color-mix(in srgb,var(--primary) 8%,transparent),0 4px 14px rgba(16,24,40,0.04);max-width:920px;margin:0 auto}.focus-only-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.focus-only-head .eyebrow{margin:0;font-size:12px;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;color:var(--muted)}.focus-only-lesson{margin:0;font-size:clamp(22px,3vw,30px);line-height:1.15;font-weight:850;color:var(--ink);letter-spacing:-0.01em}.focus-only-action{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;width:100%;padding:22px 26px!important;border-radius:20px!important;font-size:18px!important;min-height:88px;text-align:left;cursor:pointer}.focus-only-action .mission-action-icon{width:48px!important;height:48px!important}.focus-only-action .mission-action-icon svg{width:22px;height:22px}.focus-only-action strong{font-size:19px!important;letter-spacing:-0.005em;display:block;margin-bottom:4px}.focus-only-action span{font-size:13px!important;font-weight:700;opacity:0.92}.focus-only-action .mission-action-time{font-size:14px!important;font-weight:800;padding:6px 14px;border-radius:999px;background:rgba(255,255,255,0.18);flex-shrink:0}.focus-only-empty{margin:0;font-size:16px;color:var(--ink-soft);font-weight:700;text-align:center;padding:28px 0}.focus-only-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding-top:6px;border-top:1px dashed color-mix(in srgb,var(--border) 60%,transparent)}.focus-only-reveal{background:transparent;border:1px solid var(--border);color:var(--ink-soft);padding:8px 14px;border-radius:999px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;transition:border-color 0.15s,color 0.15s}.focus-only-reveal:hover{border-color:var(--ink-soft);color:var(--ink)}.focus-only-settings{color:var(--muted);font-size:12px;font-weight:600;text-decoration:none}.focus-only-settings:hover{color:var(--primary)}.focus-only-tagline{margin:0;color:var(--muted);font-size:13px;font-weight:600;text-align:center;font-style:italic}body[data-single-task=on] .home-compact-stats{display:none}body[data-single-task=on] .home-greeting h1{font-size:clamp(22px,3vw,28px)}.setting-tag{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary);font-size:10px;font-weight:800;letter-spacing:0.04em;text-transform:uppercase;font-style:normal;vertical-align:middle}@media (max-width: 600px){.home-focus-only-card{padding:28px 22px;gap:18px}.focus-only-action{grid-template-columns:auto minmax(0,1fr);gap:12px;padding:18px 20px!important}.focus-only-action .mission-action-time{grid-column:1 / -1;justify-self:start}}@media (max-width: 600px){.folder-filter-bar{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:10px 0 14px}.folder-filter-bar::-webkit-scrollbar{display:none}}html{scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}.panel:hover,.card-one:hover,.card-two:hover,.card-three:hover,.lesson-card:hover,.btn-primary:hover,.btn-secondary:hover,.tab:hover,.quiz-question:hover,.flashcard-stack:hover,.iq-choice:hover,.admin-dispute-card:hover{will-change:transform}.panel{transition:transform 220ms cubic-bezier(0.32,0.72,0,1),box-shadow 220ms cubic-bezier(0.32,0.72,0,1),border-color 220ms cubic-bezier(0.32,0.72,0,1)}.panel:hover:not(.panel-main):not(.panel-static):not(:has(input:focus-within)):not(:has(textarea:focus-within)){transform:translateY(-2px);box-shadow:0 1px 0 rgba(255,255,255,0.4) inset,0 4px 12px rgba(45,26,12,0.06),0 12px 28px -8px rgba(45,26,12,0.10)}.tab-panel.active{animation:panel-in-spring 180ms ease-out both}@keyframes panel-in-spring{0%{opacity:0;transform:translateY(6px)}100%{opacity:1;transform:translateY(0)}}.tab{transition:background 200ms cubic-bezier(0.32,0.72,0,1),color 200ms cubic-bezier(0.32,0.72,0,1),border-color 200ms cubic-bezier(0.32,0.72,0,1),transform 140ms cubic-bezier(0.32,0.72,0,1)}.tab:hover:not(.active){transform:translateX(2px)}.lesson-card,.card-one,.card-two,.card-three{transition:transform 240ms cubic-bezier(0.32,0.72,0,1),box-shadow 240ms cubic-bezier(0.32,0.72,0,1)}.lesson-card:hover,.card-one:hover,.card-two:hover,.card-three:hover{transform:translateY(-3px);box-shadow:0 1px 0 rgba(255,255,255,0.5) inset,0 6px 16px rgba(45,26,12,0.08),0 20px 40px -12px rgba(45,26,12,0.14)}.quiz-question{transition:transform 240ms cubic-bezier(0.32,0.72,0,1),background 240ms}.quiz-question:not(.is-correct):not(.is-incorrect):hover{transform:translateX(2px)}input:focus-visible,textarea:focus-visible,select:focus-visible{transition:border-color 200ms cubic-bezier(0.32,0.72,0,1),box-shadow 200ms cubic-bezier(0.32,0.72,0,1)}.tab-panel.active>.panel,.tab-panel.active>.section,.tab-panel.active>.workspace-layout>.panel{animation:panel-fade-rise 380ms cubic-bezier(0.32,0.72,0,1) both}.tab-panel.active>.panel:nth-child(1),.tab-panel.active>.section:nth-child(1){animation-delay:30ms}.tab-panel.active>.panel:nth-child(2),.tab-panel.active>.section:nth-child(2){animation-delay:70ms}.tab-panel.active>.panel:nth-child(3),.tab-panel.active>.section:nth-child(3){animation-delay:110ms}.tab-panel.active>.panel:nth-child(4),.tab-panel.active>.section:nth-child(4){animation-delay:150ms}.tab-panel.active>.panel:nth-child(n+5),.tab-panel.active>.section:nth-child(n+5){animation-delay:190ms}@keyframes panel-fade-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes ambient-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.015)}}.coin-display,.streak-pill,.btn-primary.is-pulse{animation:ambient-breathe 3.6s cubic-bezier(0.4,0,0.6,1) infinite}.hero-strip::before{background-size:200% 200%;animation:hero-shimmer 18s ease-in-out infinite}@keyframes hero-shimmer{0%,100%{background-position:0% 0%}50%{background-position:100% 100%}}@keyframes status-dot-pulse{0%,100%{opacity:0.55;transform:scale(1)}50%{opacity:1;transform:scale(1.18)}}.status .status-dot,.status.status-loading::before{animation:status-dot-pulse 1.4s cubic-bezier(0.4,0,0.6,1) infinite}.skeleton{background:linear-gradient(90deg,color-mix(in srgb,var(--border) 40%,transparent) 0%,color-mix(in srgb,var(--border) 70%,transparent) 50%,color-mix(in srgb,var(--border) 40%,transparent) 100%);background-size:200% 100%;animation:skeleton-shine 1.4s linear infinite;border-radius:6px}@keyframes skeleton-shine{from{background-position:200% 0}to{background-position:-200% 0}}.upload-progress-fill,.hunger-fill,.iq-bar-fill,.lsbar-fill{transition:width 480ms cubic-bezier(0.32,0.72,0,1);background-size:200% 100%}.upload-progress-fill,.iq-bar-fill{animation:progress-flow 2.4s linear infinite}@keyframes progress-flow{from{background-position:0% 0%}to{background-position:200% 0%}}.quiz-result-detail{animation:result-reveal 360ms cubic-bezier(0.32,0.72,0,1) both}@keyframes result-reveal{0%{opacity:0;transform:translateY(-6px) scale(0.98)}60%{opacity:1;transform:translateY(1px) scale(1.005)}100%{opacity:1;transform:translateY(0) scale(1)}}.count-flip{display:inline-block;animation:count-flip 360ms cubic-bezier(0.32,0.72,0,1)}@keyframes count-flip{0%{transform:translateY(-6px) scale(0.92);opacity:0}60%{transform:translateY(1px) scale(1.06);opacity:1}100%{transform:translateY(0) scale(1);opacity:1}}.btn-primary:active,.btn-secondary:active,button:active{transition-duration:70ms}.mobile-bottom-nav .bnav-item{transition:transform 180ms cubic-bezier(0.32,0.72,0,1),color 180ms}.mobile-bottom-nav .bnav-item.is-active{transform:translateY(-3px)}.lesson-card img,.lesson-thumb{transition:transform 220ms cubic-bezier(0.32,0.72,0,1)}.lesson-card:hover img,.lesson-thumb:hover{transform:scale(1.04)}.home-stat-pill{animation:home-pill-float 5.4s cubic-bezier(0.4,0,0.6,1) infinite;transition:transform 220ms cubic-bezier(0.32,0.72,0,1),box-shadow 220ms cubic-bezier(0.32,0.72,0,1),background 220ms cubic-bezier(0.32,0.72,0,1)}.home-stat-pill:nth-child(1){animation-delay:0s}.home-stat-pill:nth-child(2){animation-delay:0.6s}.home-stat-pill:nth-child(3){animation-delay:1.2s}.home-stat-pill:hover{transform:translateY(-3px) scale(1.04);box-shadow:0 8px 20px -6px rgba(45,26,12,0.18)}@keyframes home-pill-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}.home-mission-pill,.home-spaced-card.is-due,.streak-pill,[class*=-streak]{position:relative}.home-mission-pill::after,.home-spaced-card.is-due::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:0 0 0 0 currentColor;opacity:0;animation:mission-pulse 2.8s cubic-bezier(0.32,0.72,0,1) infinite}@keyframes mission-pulse{0%{box-shadow:0 0 0 0 rgba(99,102,241,0.35);opacity:0.7}70%{box-shadow:0 0 0 12px rgba(99,102,241,0);opacity:0}100%{box-shadow:0 0 0 0 rgba(99,102,241,0);opacity:0}}.panel.home-mission-card,.panel.home-quests-card,.panel.home-spaced-card,.panel.home-analytics-card,.panel.home-goals-card,.panel.home-catchup-card,.panel.home-focus-card{transition:transform 280ms cubic-bezier(0.32,0.72,0,1),box-shadow 280ms cubic-bezier(0.32,0.72,0,1),border-color 280ms cubic-bezier(0.32,0.72,0,1);will-change:transform}.panel.home-mission-card:hover,.panel.home-quests-card:hover,.panel.home-spaced-card:hover,.panel.home-analytics-card:hover,.panel.home-goals-card:hover,.panel.home-catchup-card:hover,.panel.home-focus-card:hover{transform:translateY(-3px);box-shadow:0 1px 0 rgba(255,255,255,0.4) inset,0 4px 12px rgba(45,26,12,0.06),0 16px 32px -12px rgba(45,26,12,0.14)}.home-focus-card .focus-action.is-primary,.home-focus-card .action-row.is-primary,[class*=focus-action][class*=is-primary],.home-quest-row.is-primary,.home-quest-row[class*=primary]{position:relative;overflow:hidden}.home-focus-card .focus-action.is-primary::before,.home-focus-card .action-row.is-primary::before,[class*=focus-action][class*=is-primary]::before{content:"";position:absolute;top:0;left:-40%;width:40%;height:100%;background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,0.16) 50%,transparent 100%);animation:cta-shimmer 5.6s ease-in-out infinite;pointer-events:none}@keyframes cta-shimmer{0%{left:-40%}60%{left:100%}100%{left:100%}}.home-focus-card a,.home-focus-card button,.action-row,.focus-action,.home-quest-row{transition:transform 200ms cubic-bezier(0.32,0.72,0,1),background 200ms cubic-bezier(0.32,0.72,0,1),border-color 200ms cubic-bezier(0.32,0.72,0,1)}.home-focus-card a:hover,.home-focus-card button:hover,.action-row:hover,.focus-action:hover,.home-quest-row:hover{transform:translateX(3px)}[class*=xp-bar] [class*=-fill],[class*=level-bar] [class*=-fill],.progress-fill,.lsbar-fill{background-size:200% 100%;animation:progress-flow 3s linear infinite}.eyebrow{position:relative}.eyebrow::before{content:"";position:absolute;left:0;bottom:-3px;height:1.5px;background:currentColor;opacity:0.6;width:18px;animation:eyebrow-pulse 3.2s cubic-bezier(0.4,0,0.6,1) infinite}@keyframes eyebrow-pulse{0%,100%{width:18px;opacity:0.5}50%{width:28px;opacity:0.85}}.settings-saved-toast{animation:saved-toast-in 380ms cubic-bezier(0.32,0.72,0,1)}@keyframes saved-toast-in{0%{opacity:0;transform:translateY(12px) scale(0.92)}60%{opacity:1;transform:translateY(-2px) scale(1.02)}100%{opacity:1;transform:translateY(0) scale(1)}}.hero-strip{position:relative;overflow:hidden}.hero-strip>*{position:relative;z-index:2}.hero-strip::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 30% 50% at 0% 50%,rgba(255,255,255,0.10) 0%,transparent 60%),radial-gradient(ellipse 30% 50% at 100% 50%,rgba(255,255,255,0.10) 0%,transparent 60%);animation:hero-aurora 12s ease-in-out infinite;pointer-events:none;z-index:1}@keyframes hero-aurora{0%,100%{transform:translateX(0);opacity:0.7}50%{transform:translateX(8%);opacity:1}}[class*=new-badge],.focus-new-circle,.focus-state-circle{animation:badge-orbit 8s linear infinite}@keyframes badge-orbit{0%{box-shadow:0 0 0 0 rgba(99,102,241,0.15)}50%{box-shadow:0 0 0 6px rgba(99,102,241,0.0)}100%{box-shadow:0 0 0 0 rgba(99,102,241,0.0)}}@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:0.001ms!important;animation-iteration-count:1!important;transition-duration:0.001ms!important;scroll-behavior:auto!important}}@media (update: slow),(pointer: coarse){.home-stat-pill,.home-mission-pill::after,.home-spaced-card.is-due::after,.home-focus-card .focus-action.is-primary::before,.home-focus-card .action-row.is-primary::before,[class*=focus-action][class*=is-primary]::before,.eyebrow::before,.hero-strip::after,[class*=new-badge],.focus-new-circle,.focus-state-circle,.coin-display,.streak-pill,.btn-primary.is-pulse,.hero-strip::before,[class*=xp-bar] [class*=-fill],[class*=level-bar] [class*=-fill],.progress-fill,.upload-progress-fill,.iq-bar-fill,.lsbar-fill{animation:none!important}.toast,.iq,.audio-toggle,.menu-backdrop,.modal-backdrop,.app-header,.toast-container,[class*=backdrop]{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.tab-panel.active>.panel,.tab-panel.active>.section,.tab-panel.active>.workspace-layout>.panel{animation:none!important}}html.cosy-low-fx .home-stat-pill,html.cosy-low-fx .eyebrow::before,html.cosy-low-fx .hero-strip::after,html.cosy-low-fx .home-mission-pill::after,html.cosy-low-fx .home-spaced-card.is-due::after,html.cosy-low-fx [class*=focus-action][class*=is-primary]::before,html.cosy-low-fx [class*=new-badge],html.cosy-low-fx .coin-display,html.cosy-low-fx .streak-pill,html.cosy-low-fx .upload-progress-fill,html.cosy-low-fx .iq-bar-fill,html.cosy-low-fx .lsbar-fill{animation:none!important}html.cosy-low-fx .toast,html.cosy-low-fx .audio-toggle,html.cosy-low-fx [class*=backdrop]{}.fx-reveal{opacity:0;transform:translateY(16px);transition:opacity 520ms cubic-bezier(0.32,0.72,0,1),transform 520ms cubic-bezier(0.32,0.72,0,1);will-change:opacity,transform}.fx-reveal.fx-revealed{opacity:1;transform:translateY(0)}.fx-reveal-group.fx-revealed>.fx-reveal:nth-child(1){transition-delay:0ms}.fx-reveal-group.fx-revealed>.fx-reveal:nth-child(2){transition-delay:60ms}.fx-reveal-group.fx-revealed>.fx-reveal:nth-child(3){transition-delay:120ms}.fx-reveal-group.fx-revealed>.fx-reveal:nth-child(4){transition-delay:180ms}.fx-reveal-group.fx-revealed>.fx-reveal:nth-child(n+5){transition-delay:240ms}html.cosy-low-fx .fx-reveal,html.cosy-low-fx .fx-reveal.fx-revealed{opacity:1;transform:none;transition:none}@keyframes page-load-in{from{opacity:0}to{opacity:1}}body{animation:page-load-in 360ms cubic-bezier(0.32,0.72,0,1) both}html.cosy-low-fx body{animation:none}.lesson-card{animation:list-row-in 460ms cubic-bezier(0.32,0.72,0,1) both}.lesson-list .lesson-card:nth-child(1){animation-delay:30ms}.lesson-list .lesson-card:nth-child(2){animation-delay:70ms}.lesson-list .lesson-card:nth-child(3){animation-delay:110ms}.lesson-list .lesson-card:nth-child(4){animation-delay:150ms}.lesson-list .lesson-card:nth-child(5){animation-delay:190ms}.lesson-list .lesson-card:nth-child(n+6){animation-delay:230ms}@keyframes list-row-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}html.cosy-low-fx .lesson-card{animation:none}.reference-materials-section{border-top:1px solid var(--border);padding-top:18px;margin-top:18px}.reference-materials-sub{margin:6px 0 0;font-size:13px;color:var(--ink-soft);line-height:1.5;max-width:640px}.reference-materials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:14px 0 12px}.reference-dropzone{display:grid;place-items:center;text-align:center;gap:4px;padding:16px 14px;border:2px dashed var(--border);border-radius:14px;background:var(--surface-subtle);cursor:pointer;transition:border-color 160ms ease,background 160ms ease,transform 140ms ease}.reference-dropzone:hover{border-color:color-mix(in srgb,var(--primary) 38%,var(--border));background:color-mix(in srgb,var(--primary) 4%,var(--surface));transform:translateY(-1px)}.reference-dropzone-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary);margin-bottom:4px}.reference-dropzone strong{font-size:14px;color:var(--ink)}.reference-dropzone span{font-size:12px;color:var(--muted)}.reference-materials-list{display:grid;gap:12px;margin-top:10px}.reference-materials-empty{padding:12px 14px;font-size:13px;color:var(--muted);background:var(--surface-subtle);border-radius:10px;line-height:1.5}.reference-materials-group h4{margin:0 0 6px;font-size:11px;letter-spacing:0.08em;text-transform:uppercase;color:var(--muted);font-weight:800}.reference-materials-group ul{list-style:none;padding:0;margin:0;display:grid;gap:4px}.reference-materials-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;background:var(--surface);border:1px solid var(--border);border-radius:10px;font-size:13px}.reference-materials-name{color:var(--ink);font-weight:600;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.is-progress-map .hero-strip,body.is-progress-map #tab-progress-map .hero-strip,body.is-progress-map .lesson-context-bar,body.is-progress-map .lesson-context-card{display:none}body.is-progress-map #tab-progress-map{padding:0;margin:0;height:calc(100vh - var(--header-h, 64px));max-width:none;width:100%;position:relative;overflow:hidden;animation:none!important;opacity:1!important;transform:none!important}body.is-progress-map main,body.is-progress-map .app-main,body.is-progress-map .page-shell,body.is-progress-map .app-shell{max-width:none!important;width:100%!important;margin:0!important;padding:0!important}body.is-progress-map #tab-progress-map.tab-panel{padding:0!important}body.is-progress-map .progress-map-shell{display:block;height:100%;gap:0}body.is-progress-map .app-header{background:linear-gradient(180deg,#1a1108 0%,#221608 100%)!important;border-bottom:1px solid rgba(239,230,207,0.10)!important;box-shadow:0 1px 0 rgba(0,0,0,0.4),0 8px 24px -16px rgba(0,0,0,0.5)!important}body.is-progress-map .brand-title,body.is-progress-map .brand-copy strong{color:#fef4d3}body.is-progress-map .brand-subtitle,body.is-progress-map .brand-copy span:not(.brand-title){color:#cdbe98}body.is-progress-map .menu-toggle{background:rgba(239,230,207,0.06)!important;border:1px solid rgba(239,230,207,0.18)!important;color:#fef4d3!important}body.is-progress-map .menu-toggle:hover{background:rgba(239,230,207,0.12)!important}body.is-progress-map .menu-toggle-label{color:#cdbe98!important}body.is-progress-map .menu-toggle strong,body.is-progress-map #current-section-label{color:#fef4d3!important}body.is-progress-map .menu-toggle-icon span{background:#fef4d3!important}body.is-progress-map .header-xp-display,body.is-progress-map .header-xp-display>*{background:rgba(239,230,207,0.06)!important;border-color:rgba(239,230,207,0.16)!important;color:#fef4d3!important}body.is-progress-map .header-xp-display strong,body.is-progress-map .header-xp-display .xp-level,body.is-progress-map .header-xp-display .xp-count{color:#fef4d3!important}body.is-progress-map .account-menu-btn{background:rgba(239,230,207,0.06)!important;border:1px solid rgba(239,230,207,0.18)!important;color:#fef4d3!important}body.is-progress-map .account-menu-btn:hover{background:rgba(239,230,207,0.12)!important}body.is-progress-map #account-menu-name{color:#fef4d3!important}body.is-progress-map .progress-map-surface{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;aspect-ratio:auto!important;min-height:0!important;border-radius:0!important;border:0!important;box-shadow:none!important}body.is-progress-map .progress-map-controls{position:absolute;top:16px;left:16px;z-index:4;background:rgba(20,14,9,0.78);border:1px solid rgba(239,230,207,0.18);border-radius:14px;padding:10px 14px;gap:12px;box-shadow:0 12px 32px -12px rgba(0,0,0,0.5);max-width:calc(100% - 32px)}body.is-progress-map .progress-map-scope{color:#cdbe98}body.is-progress-map .progress-map-scope select{background:rgba(239,230,207,0.06);border-color:rgba(239,230,207,0.2);color:#fef4d3;min-width:200px}body.is-progress-map .progress-map-scope select option{color:#1f2a25;background:#fff}body.is-progress-map .progress-map-meta{color:#cdbe98}body.is-progress-map .progress-map-controls .progress-map-meta{position:absolute;top:100%;left:0;margin-top:8px;padding:6px 12px;background:rgba(20,14,9,0.68);border-radius:999px;border:1px solid rgba(239,230,207,0.14);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}body.is-progress-map .progress-map-drawer{top:16px;right:16px;bottom:16px;max-height:none;height:auto}.progress-map-shell{position:relative;display:grid;gap:16px}.progress-map-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.progress-map-scope{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:800;letter-spacing:0.04em;text-transform:uppercase;color:var(--muted)}.progress-map-scope select{min-width:240px;padding:8px 14px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--ink);font-size:13px;font-weight:700;text-transform:none;letter-spacing:0}.progress-map-meta{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:0.02em}.progress-map-generate-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:12px;border:0;font-weight:800;font-size:13px;letter-spacing:0.01em;background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 75%,var(--accent)));color:#fffdf7;cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,0.28),0 8px 22px -10px color-mix(in srgb,var(--primary) 55%,transparent);transition:transform 160ms ease,filter 180ms ease,box-shadow 200ms ease}.progress-map-generate-btn:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.06);box-shadow:inset 0 1px 0 rgba(255,255,255,0.36),0 12px 28px -10px color-mix(in srgb,var(--primary) 60%,transparent)}.progress-map-generate-btn:disabled{opacity:0.5;cursor:not-allowed}.progress-map-generate-btn .icon{width:16px;height:16px;flex-shrink:0}.progress-map-audio-toggle{position:absolute;bottom:20px;right:20px;z-index:5;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(239,230,207,0.18);background:rgba(20,14,9,0.7);color:#efe6cf;cursor:pointer;transition:background 200ms ease,transform 160ms ease,color 180ms ease}.progress-map-audio-toggle:hover{background:rgba(20,14,9,0.9);transform:translateY(-1px);color:#fef4d3}.progress-map-audio-toggle svg{width:18px;height:18px;display:block;margin:0}.progress-map-audio-toggle .pm-audio-off{display:none}body.pm-audio-muted .progress-map-audio-toggle .pm-audio-on{display:none}body.pm-audio-muted .progress-map-audio-toggle .pm-audio-off{display:block}.progress-map-surface{cursor:grab;user-select:none;-webkit-user-select:none}.progress-map-surface.is-panning{cursor:grabbing}.progress-map-surface.is-panning *{cursor:grabbing}.progress-map-surface text,.progress-map-star-label,.progress-map-star-stats,.progress-map-lesson-label{user-select:none;-webkit-user-select:none}body.is-progress-map .progress-map-controls,body.is-progress-map .progress-map-controls *{user-select:none;-webkit-user-select:none}.pm-star-drift{will-change:transform}.pm-dust{opacity:var(--pm-dust-op, 0.4);animation-name:pm-dust-twinkle;animation-duration:var(--pm-dust-dur, 5s);animation-delay:var(--pm-dust-delay, 0s);animation-timing-function:ease-in-out;animation-iteration-count:infinite;will-change:opacity}@keyframes pm-dust-twinkle{0%,100%{opacity:var(--pm-dust-op, 0.4)}50%{opacity:calc(var(--pm-dust-op, 0.4) * 0.45)}}body:not(.is-progress-map) .pm-dust{animation-play-state:paused}@media (prefers-reduced-motion: reduce){.pm-dust{animation:none}}.progress-map-surface{position:relative;width:100%;aspect-ratio:1440 / 760;min-height:480px;border-radius:22px;overflow:hidden;background:radial-gradient(ellipse at 50% 30%,#2b1e12 0%,#1a1108 55%,#0d0805 100%);border:1px solid color-mix(in srgb,#2b1e12 80%,var(--border));box-shadow:0 18px 60px -22px rgba(0,0,0,0.45)}.progress-map-svg{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:1}.progress-map-star{cursor:pointer;transition:transform 220ms ease;transform-box:fill-box;transform-origin:center}.progress-map-star:hover{transform:scale(1.04)}.progress-map-star,.progress-map-star:focus,.progress-map-star:focus-visible,.progress-map-star:focus-within{outline:none!important;outline-color:transparent!important;outline-width:0!important;-webkit-tap-highlight-color:transparent}.progress-map-star:focus-visible circle:first-of-type{filter:drop-shadow(0 0 8px rgba(244,236,224,0.75))}.progress-map-surface *:focus,.progress-map-surface *:focus-visible,.progress-map-surface *:focus-within{outline:none!important;outline-color:transparent!important}.progress-map-surface{-webkit-tap-highlight-color:transparent}.progress-map-star-label{font-family:"Fraunces","Iowan Old Style",Georgia,serif;font-style:italic;font-size:14px;letter-spacing:-0.005em;pointer-events:none}.progress-map-star.is-selected .progress-map-star-label{font-size:16px}.progress-map-star-stats{font-family:"DM Mono",ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;letter-spacing:0.14em;text-transform:uppercase;pointer-events:none}.progress-map-lesson-label{font-family:"DM Mono",ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9.5px;letter-spacing:0.18em;text-transform:uppercase}@keyframes pulse-weak{0%,100%{opacity:0.55}50%{opacity:1}}.pulse-weak{animation:pulse-weak 2.2s ease-in-out infinite}html.cosy-low-fx .pulse-weak,@media (prefers-reduced-motion: reduce){.pulse-weak{animation:none}}.progress-map-empty{display:none}.progress-map-empty:not([hidden]){position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:32px;color:#efe6cf;border-radius:22px;pointer-events:none;z-index:2}.progress-map-empty h3{margin:0 0 8px;font-size:20px;font-family:"Fraunces",Georgia,serif;font-style:italic}.progress-map-empty p{margin:0;max-width:480px;font-size:14px;font-weight:600;color:#cdbe98;line-height:1.5}.progress-map-empty strong{color:#fef4d3;font-weight:800}.progress-map-empty .pm-empty-cta{pointer-events:auto;margin-top:18px;padding:12px 22px;border-radius:12px;border:0;background:linear-gradient(135deg,#d6a25c,#c97a4a);color:#1f1108;font-weight:800;letter-spacing:0.02em;cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,0.3),0 10px 26px -10px rgba(214,162,92,0.55);transition:transform 160ms ease,filter 180ms ease}.progress-map-empty .pm-empty-cta:hover{transform:translateY(-1px);filter:brightness(1.06)}.progress-map-empty:has(.pm-empty-cta),.progress-map-empty:has(.pm-loading){pointer-events:auto}.pm-loading{display:grid;place-items:center;gap:14px;text-align:center;padding:16px}.pm-loading-spinner{width:44px;height:44px;border-radius:50%;border:3px solid rgba(239,230,207,0.18);border-top-color:#d6a25c;animation:pm-spin 1s linear infinite}@keyframes pm-spin{to{transform:rotate(360deg)}}html.cosy-low-fx .pm-loading-spinner,@media (prefers-reduced-motion: reduce){.pm-loading-spinner{animation:none}}.pm-loading h3{margin:0;font-family:"Fraunces",Georgia,serif;font-style:italic;font-size:20px;color:#fef4d3}.pm-loading p{margin:0;max-width:480px;font-size:14px;font-weight:600;color:#cdbe98;line-height:1.5}.progress-map-drawer{position:absolute;top:16px;right:16px;width:min(360px,calc(100% - 32px));max-height:calc(100% - 32px);overflow-y:auto;background:rgba(20,14,9,0.92);color:#efe6cf;border:1px solid rgba(239,230,207,0.18);border-radius:20px;padding:22px 22px 18px;box-shadow:0 24px 60px -20px rgba(0,0,0,0.55);z-index:5;animation:pm-drawer-in 200ms ease both}@keyframes pm-drawer-in{from{opacity:0;transform:translateX(20px) scale(0.97)}to{opacity:1;transform:translateX(0) scale(1)}}@keyframes pm-drawer-out{from{opacity:1;transform:translateX(0) scale(1)}to{opacity:0;transform:translateX(30px) scale(0.96)}}.progress-map-drawer.is-closing{animation:pm-drawer-out 280ms cubic-bezier(0.32,0.72,0,1) both!important;pointer-events:none}.progress-map-drawer-close{position:absolute;top:12px;right:12px;width:28px;height:28px;border-radius:50%;border:1px solid rgba(239,230,207,0.2);background:rgba(239,230,207,0.06);color:#efe6cf;cursor:pointer;font-size:16px;line-height:1}.progress-map-drawer-close:hover{background:rgba(239,230,207,0.14)}.pm-drawer-head h3{margin:12px 0 6px;font-family:"Fraunces",Georgia,serif;font-style:italic;font-size:22px;color:#fef4d3;line-height:1.15}.pm-drawer-band{display:inline-block;padding:4px 10px;border-radius:999px;font-family:"DM Mono",ui-monospace,monospace;font-size:10px;letter-spacing:0.18em;text-transform:uppercase;font-weight:800}.pm-drawer-lesson{margin:0;font-size:11px;letter-spacing:0.06em;text-transform:uppercase;color:#cdbe98;font-weight:800}.pm-drawer-desc{margin:10px 0 0;font-size:13px;color:#d8c9a3;line-height:1.45}.pm-drawer-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0;padding:12px;background:rgba(239,230,207,0.04);border-radius:12px;border:1px solid rgba(239,230,207,0.08)}.pm-drawer-stats>div{display:grid;text-align:center;gap:2px}.pm-drawer-stats strong{font-size:22px;color:#fef4d3;font-weight:800}.pm-drawer-stats span{font-size:10px;color:#cdbe98;letter-spacing:0.1em;text-transform:uppercase;font-weight:700}.pm-drawer-section h4{margin:0 0 10px;font-size:10px;letter-spacing:0.2em;text-transform:uppercase;color:#cdbe98;font-weight:800;display:flex;align-items:center;gap:8px}.progress-map-drawer .pm-drawer-section.pm-drawer-section-wrongs h4,.pm-drawer-section-wrongs h4{color:#f3a392!important}.pm-drawer-wrong-count{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:color-mix(in srgb,#d76148 22%,transparent);border:1px solid color-mix(in srgb,#d76148 45%,transparent);color:#fef4d3;font-size:11px;font-weight:800;letter-spacing:0}.pm-drawer-accuracy{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:12px;row-gap:6px;padding:12px 14px;margin:0 0 4px;background:rgba(239,230,207,0.04);border-radius:12px;border:1px solid rgba(239,230,207,0.08)}.pm-drawer-accuracy strong{grid-column:1;font-size:24px;color:#fef4d3;font-weight:800;line-height:1}.pm-drawer-accuracy span{grid-column:2;align-self:end;font-size:10px;letter-spacing:0.12em;text-transform:uppercase;color:#cdbe98;font-weight:800}.pm-drawer-accuracy-bar{grid-column:1 / -1;height:6px;background:rgba(239,230,207,0.10);border-radius:999px;overflow:hidden}.pm-drawer-accuracy-bar>div{height:100%;border-radius:inherit;transition:width 480ms cubic-bezier(0.32,0.72,0,1)}.pm-drawer-accuracy.is-good .pm-drawer-accuracy-bar>div{background:linear-gradient(90deg,#5a9269,#a3c19c)}.pm-drawer-accuracy.is-good strong{color:#a3c19c}.pm-drawer-accuracy.is-mid .pm-drawer-accuracy-bar>div{background:linear-gradient(90deg,#c89858,#e9c682)}.pm-drawer-accuracy.is-mid strong{color:#e9c682}.pm-drawer-accuracy.is-bad .pm-drawer-accuracy-bar>div{background:linear-gradient(90deg,#a82218,#d76148)}.pm-drawer-accuracy.is-bad strong{color:#f3a392}.pm-drawer-wrongs{display:grid;gap:12px;list-style:none;padding:0;margin:0}.pm-drawer-wrongs li{padding:12px;border-radius:10px;background:rgba(239,230,207,0.04);border-left:3px solid #d76148}.pm-drawer-wrong-report{margin-top:8px;padding:4px 8px;font-size:11px;border-radius:6px;background:transparent;color:#d8c9a3;border:1px solid rgba(216,201,163,0.25);cursor:pointer;letter-spacing:0.04em;transition:background 120ms ease,border-color 120ms ease,color 120ms ease}.pm-drawer-wrong-report:hover{background:rgba(216,201,163,0.08);border-color:rgba(216,201,163,0.45);color:#fef4d3}.pm-drawer-wrong-report:disabled{cursor:default;opacity:0.7}.pm-q{margin:0 0 8px;font-size:13px;color:#fef4d3;font-weight:700;line-height:1.4}.pm-a{margin:4px 0 0;font-size:12px;color:#d8c9a3;line-height:1.4}.pm-a span{display:inline-block;width:80px;font-size:9.5px;letter-spacing:0.12em;text-transform:uppercase;color:#a89876;font-weight:800}.pm-a-right{color:#a3c19c}.pm-a-right span{color:#7e9e75}.pm-drawer-empty{margin:0;font-size:13px;color:#cdbe98;font-style:italic}.pm-drawer-actions{display:flex;gap:8px;margin-top:16px;flex-wrap:wrap}.pm-drawer-actions button{flex:1;min-width:120px}@media (max-width: 720px){.progress-map-surface{aspect-ratio:1 / 1;min-height:540px}.progress-map-drawer{top:auto;bottom:16px;left:16px;right:16px;width:auto;max-height:70%}}.quiz-question{animation:list-row-in 380ms cubic-bezier(0.32,0.72,0,1) both}form .quiz-question:nth-child(1){animation-delay:20ms}form .quiz-question:nth-child(2){animation-delay:60ms}form .quiz-question:nth-child(3){animation-delay:100ms}form .quiz-question:nth-child(4){animation-delay:140ms}form .quiz-question:nth-child(5){animation-delay:180ms}form .quiz-question:nth-child(n+6){animation-delay:220ms}html.cosy-low-fx .quiz-question{animation:none}button svg,a svg,.action-row svg,.focus-action svg,.home-quest-row svg,.lesson-card svg,.tab svg{transition:transform 220ms cubic-bezier(0.32,0.72,0,1)}button:hover>svg:not([class*=logo]):not([class*=brand]),a:hover>svg:not([class*=logo]):not([class*=brand]),.action-row:hover svg:not([class*=logo]):not([class*=brand]){transform:scale(1.12)}button:hover svg[class*=refresh],button:hover svg[class*=sync],button:hover svg[class*=reload],[data-icon=refresh]:hover svg{transform:rotate(180deg);transition-duration:360ms}button:hover svg[class*=arrow],a:hover svg[class*=arrow],.action-row:hover svg[class*=arrow]{transform:translateX(3px)}html.cosy-low-fx button svg,html.cosy-low-fx a svg,html.cosy-low-fx .action-row svg,html.cosy-low-fx .focus-action svg,html.cosy-low-fx .home-quest-row svg,html.cosy-low-fx .lesson-card svg,html.cosy-low-fx .tab svg{transition:none}.btn-primary:not(:disabled):hover,.cta:not(:disabled):hover{animation:cta-bob 0.6s cubic-bezier(0.32,0.72,0,1)}@keyframes cta-bob{0%{transform:translateY(0)}40%{transform:translateY(-2px)}100%{transform:translateY(-1px)}}html.cosy-low-fx .btn-primary:hover,html.cosy-low-fx .cta:hover{animation:none}.fx-flip{display:inline-block;animation:fx-flip 520ms cubic-bezier(0.32,0.72,0,1)}@keyframes fx-flip{0%{transform:translateY(0) scale(1);opacity:1}40%{transform:translateY(-8px) scale(1.18);opacity:0}41%{transform:translateY(10px) scale(0.88);opacity:0}100%{transform:translateY(0) scale(1);opacity:1}}.empty-state svg,.empty-state img,.quiz-empty-state svg{animation:empty-float 4.8s cubic-bezier(0.4,0,0.6,1) infinite}@keyframes empty-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}html.cosy-low-fx .empty-state svg,html.cosy-low-fx .empty-state img,html.cosy-low-fx .quiz-empty-state svg{animation:none}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ink, #2d1a0c) 18%,transparent);border-radius:999px;border:2px solid transparent;background-clip:padding-box;transition:background 220ms cubic-bezier(0.32,0.72,0,1)}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--ink, #2d1a0c) 38%,transparent);background-clip:padding-box}.lesson-card{perspective:600px}.lesson-card:hover{transform:translateY(-3px) rotateX(2deg)}input:focus-visible,textarea:focus-visible,select:focus-visible{animation:input-focus-pulse 1.2s cubic-bezier(0.4,0,0.6,1)}@keyframes input-focus-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--primary, #3d6b56) 30%,transparent)}60%{box-shadow:0 0 0 6px color-mix(in srgb,var(--primary, #3d6b56) 12%,transparent)}100%{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary, #3d6b56) 18%,transparent)}}html.cosy-low-fx input:focus-visible,html.cosy-low-fx textarea:focus-visible,html.cosy-low-fx select:focus-visible{animation:none}.tab.active{animation:tab-just-activated 380ms cubic-bezier(0.32,0.72,0,1)}.side-menu .tab.active{animation:menu-item-rise 360ms cubic-bezier(0.34,1.4,0.45,1) both;opacity:1}@keyframes tab-just-activated{0%{transform:scale(1)}40%{transform:scale(1.04)}100%{transform:scale(1)}}html.cosy-low-fx .tab.active{animation:none}html.cosy-low-fx .side-menu .tab.active{animation:none;opacity:1}body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse 80% 50% at 20% 0%,color-mix(in srgb,var(--primary, #3d6b56) 6%,transparent) 0%,transparent 60%),radial-gradient(ellipse 70% 60% at 80% 100%,color-mix(in srgb,var(--warning, #c89858) 5%,transparent) 0%,transparent 60%);animation:bg-drift 24s ease-in-out infinite}@keyframes bg-drift{0%,100%{transform:translate(0,0)}50%{transform:translate(2%,-1%)}}html.cosy-low-fx body::after{animation:none}.learn-tab{padding-bottom:60px}.learn-hero h1{font-family:"Instrument Serif",Georgia,serif;font-weight:400;font-style:italic}.learn-hero-sub{font-size:0.92rem;color:var(--muted);max-width:580px;line-height:1.45;margin-top:6px}.learn-library-view{display:grid;grid-template-columns:1.4fr 1fr;gap:20px;margin-top:18px}@media (max-width: 980px){.learn-library-view{grid-template-columns:1fr}}.learn-create-card{padding:22px 24px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.learn-create-header h2{font-family:"Instrument Serif",Georgia,serif;font-weight:400;font-style:italic;font-size:1.4rem;margin:0 0 4px 0}.learn-create-header p{color:var(--muted);font-size:0.88rem;margin:0 0 16px 0}.learn-create-form{display:flex;flex-direction:column;gap:14px}.learn-field{display:flex;flex-direction:column;gap:6px}.learn-field-label{font-size:0.78rem;font-weight:600;color:var(--ink);text-transform:uppercase;letter-spacing:0.05em}.learn-field-label em{font-style:italic;font-weight:400;color:var(--muted);text-transform:none;letter-spacing:0}.learn-field input,.learn-field textarea{border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;font-family:inherit;font-size:0.92rem;background:var(--surface);color:var(--ink);resize:vertical;transition:border-color 200ms cubic-bezier(0.32,0.72,0,1)}.learn-field input:focus,.learn-field textarea:focus{outline:none;border-color:var(--primary)}.learn-input-row{display:grid;grid-template-columns:1.4fr 1fr;gap:14px}@media (max-width: 720px){.learn-input-row{grid-template-columns:1fr}}.learn-drop{position:relative;border:2px dashed var(--border-strong);border-radius:var(--radius-lg);padding:16px;background:var(--surface-subtle);text-align:center;cursor:pointer;transition:background 200ms cubic-bezier(0.32,0.72,0,1),border-color 200ms cubic-bezier(0.32,0.72,0,1);display:flex;flex-direction:column;gap:10px}.learn-drop:hover,.learn-drop.is-dragover{background:var(--primary-soft);border-color:var(--primary)}.learn-drop input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.learn-drop-inner{display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--ink)}.learn-drop-inner svg{width:28px;height:28px;color:var(--primary)}.learn-drop-inner strong{font-size:0.95rem}.learn-drop-inner span{font-size:0.74rem;color:var(--muted)}.learn-drop-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px;text-align:left}.learn-drop-list li{display:flex;align-items:center;gap:6px;font-size:0.78rem;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:4px 8px}.learn-drop-list li svg{width:14px;height:14px;color:var(--muted);flex-shrink:0}.learn-drop-list li em{font-style:normal;color:var(--muted);margin-left:auto;font-size:0.7rem}.learn-create-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:6px;flex-wrap:wrap}.learn-mode-prepick{display:flex;align-items:center;gap:4px;padding:4px;background:var(--surface-muted);border:1px solid var(--border);border-radius:999px}.learn-mode-prepick-label{font-size:0.74rem;color:var(--muted);font-weight:600;padding:0 8px;text-transform:uppercase;letter-spacing:0.05em}.learn-mode-radio{cursor:pointer;display:inline-flex}.learn-mode-radio input{display:none}.learn-mode-radio span{padding:4px 12px;border-radius:999px;font-size:0.84rem;font-weight:500;color:var(--ink-soft);transition:background 200ms cubic-bezier(0.32,0.72,0,1),color 200ms}.learn-mode-radio input:checked+span{background:var(--ink);color:var(--surface)}#learn-create-submit{display:inline-flex;align-items:center;gap:6px}#learn-create-submit.is-busy{opacity:0.7;cursor:progress}#learn-create-submit svg{width:16px;height:16px}.learn-create-progress{margin-top:10px}.learn-progress-bar{height:6px;background:var(--surface-muted);border-radius:999px;overflow:hidden;border:1px solid var(--border)}.learn-progress-bar>span{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:999px;width:0%;transition:width 220ms cubic-bezier(0.32,0.72,0,1)}.learn-progress-step{margin:6px 0 0;font-size:0.82rem;color:var(--muted)}.learn-library-section{padding:18px 20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.learn-library-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.learn-library-header h2{font-family:"Instrument Serif",Georgia,serif;font-weight:400;font-style:italic;font-size:1.3rem;margin:0}.btn-tiny{font-size:0.78rem;padding:4px 10px!important}.btn-tiny svg{width:13px;height:13px}.learn-library-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.learn-library-card{display:flex;align-items:stretch;gap:6px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:border-color 200ms cubic-bezier(0.32,0.72,0,1),transform 200ms}.learn-library-card:hover{border-color:var(--primary);transform:translateY(-1px)}.learn-library-card-open{flex:1;background:transparent;border:0;cursor:pointer;padding:12px 14px;text-align:left;display:flex;flex-direction:column;gap:6px;color:var(--ink)}.learn-library-card-head{display:flex;align-items:center;gap:8px}.learn-library-card-head h3{font-family:"Instrument Serif",Georgia,serif;font-weight:400;font-style:italic;margin:0;font-size:1.05rem;flex:1}.learn-card-status{font-size:0.66rem;padding:2px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:0.08em;font-weight:600}.learn-card-status.creating{background:#fef3c7;color:#92400e}.learn-card-status.failed{background:#fee2e2;color:#b4233a}.learn-card-status.done{background:#dde7d8;color:#2f5443}.learn-library-card-sub{font-size:0.82rem;color:var(--muted);margin:0}.learn-library-card-meta{font-size:0.74rem;color:var(--muted);display:flex;align-items:center;justify-content:space-between;gap:8px}.learn-pill{padding:1px 8px;border-radius:999px;font-size:0.66rem;text-transform:uppercase;letter-spacing:0.06em;font-weight:600}.learn-pill-chat{background:#e0e7ec;color:#2d5360}.learn-pill-whiteboard{background:#f3e9ce;color:#5b3517}.learn-pill-room{background:var(--primary-soft);color:var(--primary)}.learn-library-card-bar{height:4px;background:var(--surface-muted);border-radius:999px;overflow:hidden}.learn-library-card-bar>span{display:block;height:100%;background:var(--primary);border-radius:999px}.learn-library-card-delete{background:transparent;border:0;cursor:pointer;padding:0 10px;color:var(--muted);border-left:1px solid var(--border);transition:color 200ms cubic-bezier(0.32,0.72,0,1)}.learn-library-card-delete:hover{color:var(--danger)}.learn-library-card-delete svg{width:16px;height:16px}.learn-library-empty{margin:8px 0 0;color:var(--muted);font-style:italic;font-family:"Instrument Serif",Georgia,serif;font-size:0.95rem}.learn-course-view{display:flex;flex-direction:column;gap:12px;margin-top:14px;min-height:70vh}.learn-course-header{display:flex;align-items:center;gap:16px;padding:12px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.learn-course-title{flex:1}.learn-course-title h2{margin:0;font-family:"Instrument Serif",Georgia,serif;font-weight:400;font-style:italic;font-size:1.25rem}.learn-course-subline{margin:2px 0 0;font-size:0.78rem;color:var(--muted)}.learn-mode-toggle{display:flex;gap:4px;padding:4px;background:var(--surface-muted);border:1px solid var(--border);border-radius:999px}.learn-mode-btn{background:transparent;border:0;cursor:pointer;padding:6px 12px;border-radius:999px;font-family:inherit;font-size:0.84rem;font-weight:500;color:var(--ink-soft);display:inline-flex;align-items:center;gap:6px;transition:background 200ms cubic-bezier(0.32,0.72,0,1),color 200ms}.learn-mode-btn svg{width:14px;height:14px}.learn-mode-btn:hover{background:var(--surface)}.learn-mode-btn.active{background:var(--ink);color:var(--surface)}.learn-course-body{display:grid;grid-template-columns:240px 1fr;gap:12px;min-height:0;flex:1}@media (max-width: 880px){.learn-course-body{grid-template-columns:1fr}}.learn-concept-rail{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px 14px;display:flex;flex-direction:column;gap:10px;max-height:70vh;overflow:auto}.learn-concept-rail-header{display:flex;align-items:center;justify-content:space-between;font-size:0.7rem;text-transform:uppercase;letter-spacing:0.1em;color:var(--muted);font-weight:600}.learn-concept-list{list-style:none;counter-reset:c;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.learn-concept-item{counter-increment:c;display:flex;align-items:flex-start;gap:8px;padding:6px 8px;border-radius:10px;cursor:default;position:relative}.learn-concept-dot{width:8px;height:8px;border-radius:50%;background:var(--border-strong);margin-top:6px;flex-shrink:0}.learn-concept-item.is-done .learn-concept-dot{background:var(--success)}.learn-concept-item.is-current .learn-concept-dot{background:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 20%,transparent)}.learn-concept-item.is-current{background:var(--primary-soft)}.learn-concept-text{display:flex;flex-direction:column;min-width:0}.learn-concept-text strong{font-size:0.86rem;line-height:1.25}.learn-concept-objective{font-size:0.72rem;color:var(--muted);margin-top:2px}.learn-concept-item.is-done strong{color:var(--muted);text-decoration:line-through}.learn-advance-btn{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;gap:6px}.learn-advance-btn svg{width:14px;height:14px}.learn-mode-pane{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);display:flex;flex-direction:column;min-height:60vh;overflow:hidden}.learn-mode-pane.is-thinking::after{content:"Sage is thinking…";position:absolute;bottom:14px;left:50%;transform:translateX(-50%);background:var(--ink);color:var(--cream, var(--surface));padding:4px 14px;border-radius:999px;font-size:0.74rem;letter-spacing:0.06em;pointer-events:none;opacity:0.92;animation:learn-think-pulse 1.4s ease-in-out infinite}@keyframes learn-think-pulse{0%,100%{opacity:0.92}50%{opacity:0.6}}.learn-start-cta{margin:auto;padding:28px 32px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px;max-width:420px}.learn-start-cta p{margin:0;color:var(--ink);line-height:1.5}.learn-start-cta-btn{padding:10px 22px;font-weight:600;cursor:pointer}.learn-start-cta-fineprint{color:var(--ink-muted, #7a6a52);font-size:0.85rem}#learn-mode-chat{display:flex;flex-direction:column;position:relative}.learn-chat-header{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--surface-subtle)}.learn-sage-avatar{width:32px;height:32px;flex-shrink:0}.learn-sage-avatar svg{width:100%;height:100%;display:block}.learn-chat-header strong{font-family:"Instrument Serif",Georgia,serif;font-weight:400;font-style:italic;font-size:1rem}.learn-chat-header span{font-size:0.78rem;color:var(--muted);margin-left:4px}.learn-chat-feed{flex:1;min-height:320px;padding:18px;display:flex;flex-direction:column;gap:10px;overflow:auto}.learn-bubble{display:flex;align-items:flex-start;gap:10px;max-width:86%;animation:learn-bubble-in 320ms cubic-bezier(0.32,0.72,0,1) both}@keyframes learn-bubble-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.learn-bubble.sage .learn-bubble-avatar{width:30px;height:30px;flex-shrink:0}.learn-bubble.sage .learn-bubble-avatar svg{width:100%;height:100%;display:block}.learn-bubble.student{align-self:flex-end;flex-direction:row-reverse}.learn-bubble-body{background:var(--surface-subtle);border:1px solid var(--border);border-radius:16px 16px 16px 4px;padding:10px 14px;min-width:0}.learn-bubble.student .learn-bubble-body{background:var(--ink);color:var(--surface);border:0;border-radius:16px 16px 4px 16px}.learn-bubble.answer-pill{background:var(--primary-soft);border:1px solid var(--border);border-radius:999px;padding:4px 12px;font-size:0.82rem;color:var(--primary);max-width:max-content;align-self:flex-end}.learn-bubble-text{font-size:0.92rem;line-height:1.5}.learn-bubble-text em{font-family:"Instrument Serif",Georgia,serif;font-style:italic;color:var(--accent)}.learn-chat-composer{display:flex;align-items:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--border);background:var(--surface-subtle)}.learn-chat-composer textarea,.learn-wb-composer textarea,.learn-room-composer textarea{flex:1;resize:none;border:1px solid var(--border);border-radius:12px;padding:10px 12px;font-family:inherit;font-size:0.92rem;background:var(--surface);color:var(--ink);transition:border-color 200ms cubic-bezier(0.32,0.72,0,1)}.learn-chat-composer textarea:focus,.learn-wb-composer textarea:focus,.learn-room-composer textarea:focus{outline:none;border-color:var(--primary)}.learn-icon-btn{background:transparent;border:1px solid var(--border);border-radius:999px;width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--ink-soft);transition:background 200ms cubic-bezier(0.32,0.72,0,1),color 200ms}.learn-icon-btn svg{width:16px;height:16px}.learn-icon-btn:hover{background:var(--accent-soft);color:var(--accent)}.learn-mcq{margin-top:8px;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:12px}.learn-mcq-question{font-family:"Instrument Serif",Georgia,serif;font-size:0.95rem;line-height:1.35;margin-bottom:8px;color:var(--ink)}.learn-mcq-choices{display:flex;flex-direction:column;gap:4px}.learn-mcq-choice{text-align:left;display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:8px 12px;font-family:inherit;font-size:0.86rem;color:var(--ink);cursor:pointer;transition:border-color 200ms cubic-bezier(0.32,0.72,0,1),background 200ms}.learn-mcq-choice:hover{border-color:var(--primary);background:var(--primary-soft)}.learn-mcq-choice:disabled{cursor:default;opacity:0.86}.learn-mcq-choice.is-correct{background:#dde7d8;border-color:var(--success);color:#2f5443}.learn-mcq-choice.is-correct-hint{border-color:var(--success);border-style:dashed}.learn-mcq-choice.is-wrong{background:#fde2e0;border-color:var(--danger);color:var(--danger)}.learn-mcq-key{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--ink);color:var(--surface);font-size:0.7rem;font-weight:700;flex-shrink:0}.learn-mcq-hint{font-size:0.76rem;color:var(--muted);margin-top:6px;font-style:italic;font-family:"Instrument Serif",Georgia,serif}.learn-diagram{margin-top:8px;padding:10px 12px;background:var(--surface-subtle);border:1px dashed var(--border-strong);border-radius:10px;font-size:0.84rem;line-height:1.45}.learn-diagram figcaption{margin-top:6px;font-size:0.72rem;color:var(--muted);font-style:italic}.learn-diagram-svg{padding:4px}.learn-diagram-svg svg{max-width:100%;height:auto;display:block}#learn-mode-whiteboard{display:grid;grid-template-columns:1fr 280px;gap:0;min-height:70vh}@media (max-width: 780px){#learn-mode-whiteboard{grid-template-columns:1fr}}.learn-wb-canvas{position:relative;background:radial-gradient(circle at 20% 30%,rgba(255,255,255,0.6) 0,transparent 40%),radial-gradient(circle at 80% 70%,rgba(45,26,12,0.04) 0,transparent 50%),repeating-linear-gradient(0deg,transparent 0 39px,rgba(45,26,12,0.06) 39px 40px),repeating-linear-gradient(90deg,transparent 0 39px,rgba(45,26,12,0.06) 39px 40px),#f7efd9;padding:18px 22px;overflow:auto}.learn-wb-title-strip{display:flex;align-items:center;gap:14px;padding:10px 14px;background:rgba(251,246,231,0.85);border:1px solid var(--border);border-radius:12px;margin-bottom:14px}.learn-wb-eyebrow{font-size:0.7rem;font-family:"Geist Mono",ui-monospace,monospace;letter-spacing:0.14em;color:var(--muted);text-transform:uppercase}.learn-wb-title-strip h2{font-family:"Instrument Serif",Georgia,serif;font-weight:400;margin:0;font-size:1.2rem;flex:1}.learn-wb-autosave{font-size:0.7rem;color:var(--muted);letter-spacing:0.1em;text-transform:uppercase}.learn-wb-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;align-items:start}.learn-wb-card{position:relative;background:#fbf6e7;border:1px solid var(--border);border-radius:6px;padding:16px;box-shadow:0 6px 16px -8px rgba(45,26,12,0.2),0 1px 0 rgba(45,26,12,0.06)}.learn-wb-card-label{position:absolute;top:-10px;left:12px;font-family:"Geist Mono",ui-monospace,monospace;font-size:0.6rem;letter-spacing:0.14em;color:var(--muted);text-transform:uppercase;background:#f7efd9;padding:0 6px}.learn-wb-term h3{font-family:"Instrument Serif",Georgia,serif;font-weight:400;font-style:italic;margin:0 0 6px 0;font-size:1.2rem;color:var(--ink)}.learn-wb-term p{margin:0;font-size:0.84rem;line-height:1.45;color:var(--ink-soft)}.learn-wb-terms{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.learn-wb-terms span{font-size:0.7rem;padding:2px 8px;background:var(--accent-soft);color:#5b3517;border-radius:999px}.learn-wb-sticky{padding:12px 14px 24px 14px;border-radius:2px;box-shadow:0 10px 22px -10px rgba(45,26,12,0.35),0 1px 0 rgba(0,0,0,0.05);font-family:"Caveat","Instrument Serif",Georgia,serif;font-size:1.05rem;line-height:1.25;color:var(--ink)}.learn-wb-sticky.sticky-yellow{background:#f5e198}.learn-wb-sticky.sticky-mint{background:#cfe1c6}.learn-wb-sticky.sticky-pink{background:#f6c4b3}.learn-wb-sticky-author{display:block;margin-top:6px;font-family:"Geist Mono",ui-monospace,monospace;font-size:0.62rem;font-style:normal;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted)}.learn-wb-chat{display:flex;flex-direction:column;border-left:1px solid var(--border);background:var(--surface)}.learn-wb-chat-header{padding:12px 14px;border-bottom:1px solid var(--border);background:var(--surface-subtle)}.learn-wb-chat-header strong{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-weight:400;font-size:1rem}.learn-wb-chat-header span{display:block;font-size:0.7rem;color:var(--muted);letter-spacing:0.1em;text-transform:uppercase;margin-top:2px}.learn-wb-chat-feed{flex:1;min-height:200px;padding:12px;overflow:auto;display:flex;flex-direction:column;gap:8px}.learn-wb-msg{padding:8px 12px;border-radius:14px;font-size:0.82rem;line-height:1.4;max-width:96%}.learn-wb-msg.sage{background:var(--surface-subtle);border:1px solid var(--border);border-radius:4px 14px 14px 14px;align-self:flex-start}.learn-wb-msg.student{background:var(--ink);color:var(--surface);border-radius:14px 4px 14px 14px;align-self:flex-end}.learn-wb-msg.student.correct{background:var(--success)}.learn-wb-msg.student.wrong{background:var(--danger)}.learn-wb-composer{padding:10px 12px;border-top:1px solid var(--border);display:flex;gap:6px;align-items:flex-end}#learn-mode-room{position:relative;background:#3a2c50;min-height:70vh;display:block}.learn-room-scene{position:absolute;inset:0;z-index:1}.learn-room-scene svg{width:100%;height:100%;display:block}.learn-room-notebook{position:absolute;left:50%;bottom:100px;transform:translateX(-50%) perspective(2000px) rotateX(8deg);transform-origin:center bottom;width:78%;max-width:720px;aspect-ratio:1.7 / 1;background:#fbf6e7;border-radius:6px;box-shadow:0 30px 60px -20px rgba(45,26,12,0.55),0 6px 14px -6px rgba(45,26,12,0.25);display:flex;z-index:5;border:1px solid rgba(45,26,12,0.2)}.learn-room-notebook::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 25px,rgba(45,26,12,0.08) 25px 25.5px);opacity:0.5;pointer-events:none;border-radius:6px}.learn-room-notebook::after{content:"";position:absolute;top:0;bottom:0;left:50%;width:22px;transform:translateX(-50%);background:linear-gradient(90deg,rgba(45,26,12,0) 0,rgba(45,26,12,0.12) 50%,rgba(45,26,12,0) 100%);pointer-events:none}.learn-notebook-leaf{flex:1;padding:20px 26px;position:relative;z-index:1;overflow:auto}.learn-notebook-eyebrow{font-family:"Geist Mono",ui-monospace,monospace;font-size:0.62rem;letter-spacing:0.16em;color:var(--muted);text-transform:uppercase;margin:0 0 4px 0}.learn-notebook-leaf h3{font-family:"Instrument Serif",Georgia,serif;font-weight:400;font-style:italic;margin:0 0 8px 0;font-size:1.3rem;line-height:1.15;color:var(--ink)}.learn-notebook-body{font-family:"Caveat","Instrument Serif",Georgia,serif;font-size:1.1rem;line-height:1.4;color:var(--ink)}.learn-notebook-body p{margin:0 0 6px 0}.learn-notebook-intro{font-family:"Instrument Serif",Georgia,serif!important;font-size:0.92rem!important;color:var(--ink-soft);margin-bottom:8px!important}.learn-notebook-attempt{border-left:2px solid var(--accent);padding-left:8px;margin-top:6px;font-family:"Caveat","Instrument Serif",Georgia,serif;font-size:1.05rem}.learn-room-mcq{margin-top:10px}.learn-room-speech-host{position:absolute;top:0;right:16px;bottom:0;pointer-events:none;width:280px;z-index:8}.learn-room-speech{position:absolute;right:0;left:0;background:#fbf6e7;padding:12px 14px;border-radius:6px;box-shadow:0 16px 30px -12px rgba(45,26,12,0.45),0 2px 0 rgba(45,26,12,0.06);border:1px solid rgba(45,26,12,0.18);pointer-events:auto;animation:learn-paper-in 460ms cubic-bezier(0.32,0.72,0,1) both}.learn-room-speech::before{content:"";position:absolute;top:-8px;left:18px;width:40px;height:14px;background:rgba(199,152,88,0.5);border:1px solid rgba(45,26,12,0.1);transform:rotate(-4deg)}.learn-room-speech-label{display:block;font-family:"Geist Mono",ui-monospace,monospace;font-size:0.58rem;letter-spacing:0.14em;color:var(--muted);text-transform:uppercase;margin-bottom:4px}.learn-room-speech p{margin:0;font-family:"Caveat","Instrument Serif",Georgia,serif;font-size:1.05rem;line-height:1.25;color:var(--ink)}@keyframes learn-paper-in{from{opacity:0;transform:rotate(-6deg) translateY(-10px)}to{opacity:1}}.learn-room-composer{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);width:78%;max-width:720px;display:flex;align-items:center;gap:8px;padding:8px 10px 8px 16px;background:rgba(251,246,231,0.92);border:1px solid rgba(45,26,12,0.18);border-radius:999px;box-shadow:0 20px 40px -16px rgba(0,0,0,0.4);z-index:10}.learn-room-composer textarea{border:0;background:transparent;padding:6px 0;flex:1;min-height:22px;resize:none;font-family:"Instrument Serif",Georgia,serif;font-size:1rem}.learn-room-composer textarea:focus{outline:none}.learn-room-composer .learn-icon-btn{background:var(--surface)}html.cosy-low-fx .learn-bubble,html.cosy-low-fx .learn-room-speech{animation:none}html.cosy-low-fx .learn-mode-pane.is-thinking::after{animation:none}html.cosy-low-fx .learn-room-notebook{transform:translateX(-50%)}.learn-early-pill{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:2px 9px 2px 7px;border-radius:999px;background:#fef3c7;color:#92400e;font-size:0.66rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;border:1px solid #f5d28b;vertical-align:middle;white-space:nowrap}.learn-early-pill svg{width:11px;height:11px;flex-shrink:0}.learn-modal{position:fixed;inset:0;z-index:200;animation:learn-modal-fade-in 320ms cubic-bezier(0.32,0.72,0,1) both}.learn-modal[hidden]{display:none}.learn-modal-backdrop{position:absolute;inset:0;background:radial-gradient(ellipse 80% 50% at 20% 0%,color-mix(in srgb,var(--accent, #c97a4a) 16%,transparent) 0%,transparent 60%),radial-gradient(ellipse 70% 60% at 80% 100%,color-mix(in srgb,var(--primary, #3d6b56) 10%,transparent) 0%,transparent 60%),var(--bg, #faf7f2)}.learn-modal-card{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:56px 36px;gap:24px;overflow:auto;animation:learn-modal-pop-in 560ms cubic-bezier(0.32,0.72,0,1) both}.learn-modal-icon{width:132px;height:132px;display:grid;place-items:center;border-radius:50%;background:#fef3c7;color:#92400e;border:3px solid #f5d28b;box-shadow:0 30px 60px -20px rgba(146,64,14,0.3);margin-bottom:4px;animation:learn-modal-icon-pulse 2.6s ease-in-out infinite}.learn-modal-icon svg{width:68px;height:68px;stroke-width:2.2}.learn-modal-card h2{font-family:"Instrument Serif",Georgia,serif;font-weight:400;font-style:italic;font-size:clamp(2.6rem,7vw,5.2rem);line-height:1.02;margin:0;color:var(--ink);letter-spacing:-0.01em;max-width:14ch}.learn-modal-card p{margin:0;font-size:clamp(1.1rem,1.7vw,1.5rem);line-height:1.55;color:var(--ink-soft);max-width:760px}.learn-modal-soft{font-style:italic!important;font-family:"Instrument Serif",Georgia,serif!important;color:var(--muted)!important;font-size:clamp(1.05rem,1.55vw,1.3rem)!important}.learn-modal-actions{display:flex;gap:14px;justify-content:center;margin-top:12px;flex-wrap:wrap}.learn-modal-actions .btn-primary,.learn-modal-actions .btn-secondary{font-size:1.05rem;padding:14px 28px;min-width:220px;white-space:nowrap;border-radius:999px}.learn-modal-dontshow{display:inline-flex;align-items:center;gap:8px;font-size:0.95rem;color:var(--muted);cursor:pointer;user-select:none;margin-top:4px}.learn-modal-dontshow input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary);cursor:pointer}@keyframes learn-modal-fade-in{from{opacity:0}to{opacity:1}}@keyframes learn-modal-pop-in{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes learn-modal-icon-pulse{0%,100%{transform:scale(1);box-shadow:0 30px 60px -20px rgba(146,64,14,0.3)}50%{transform:scale(1.05);box-shadow:0 32px 60px -16px rgba(146,64,14,0.45)}}html.cosy-low-fx .learn-modal,html.cosy-low-fx .learn-modal-card,html.cosy-low-fx .learn-modal-icon{animation:none}@media (max-width: 600px){.learn-modal-card{padding:36px 22px;gap:18px}.learn-modal-icon{width:96px;height:96px}.learn-modal-icon svg{width:48px;height:48px}.learn-modal-actions{width:100%}.learn-modal-actions .btn-primary,.learn-modal-actions .btn-secondary{flex:1 1 100%;min-width:0}}button:not(:disabled):not(.tab):not(.no-press-fx){transition:transform 100ms ease-out,filter 180ms ease,box-shadow 200ms ease,background 200ms ease,border-color 180ms ease,color 180ms ease}button:not(:disabled):not(.tab):not(.no-press-fx):active{transform:scale(0.97);transition-duration:60ms}html.cosy-low-fx button:active{transform:none}@media (prefers-reduced-motion: reduce){button:active{transform:none}}.lesson-card,.dashboard-card,.spaced-review-card,.learn-library-card,.welcome-feature,.essay-history-row,.tc-concept,.cl-tab-concept{transition:transform 220ms cubic-bezier(0.32,0.72,0,1),box-shadow 220ms ease,border-color 200ms ease,background 220ms ease}.tc-progress-fill,.mission-cl-fill,.learn-library-card-bar span,progress,.essay-ao-bar>div{transition:width 480ms cubic-bezier(0.32,0.72,0,1)}html.cosy-low-fx .tc-progress-fill,html.cosy-low-fx .mission-cl-fill,html.cosy-low-fx .learn-library-card-bar span,html.cosy-low-fx progress,html.cosy-low-fx .essay-ao-bar>div{transition:none}input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],input[type=url],textarea,select{transition:border-color 200ms ease,box-shadow 240ms cubic-bezier(0.32,0.72,0,1),background 200ms ease}.mission-action-primary{position:relative;overflow:hidden;isolation:isolate}.mission-action-primary::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 50%,rgba(255,255,255,0.18),transparent 60%);opacity:0;pointer-events:none;transition:opacity 280ms ease;z-index:0}.mission-action-primary:hover::after{opacity:1}.mission-action-primary>*{position:relative;z-index:1}@keyframes pm-number-tick{0%{transform:translateY(0)}35%{transform:translateY(-6px);color:var(--primary)}100%{transform:translateY(0)}}.pm-number-tick,.is-ticking{display:inline-block;animation:pm-number-tick 600ms cubic-bezier(0.32,0.72,0,1)}html.cosy-low-fx .is-ticking{animation:none}.status:not(:empty),.status.is-success,.status.is-error,.status.is-working{animation:pm-status-in 260ms cubic-bezier(0.32,0.72,0,1)}@keyframes pm-status-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}html.cosy-low-fx .status{animation:none}.tc-concept[data-state=green],.tc-concept[data-state=yellow],.tc-concept[data-state=red]{animation:pm-state-bump 380ms cubic-bezier(0.32,0.72,0,1)}@keyframes pm-state-bump{0%{transform:scale(1)}35%{transform:scale(1.018)}100%{transform:scale(1)}}html.cosy-low-fx .tc-concept{animation:none}.menu-toggle-icon span{transition:transform 220ms cubic-bezier(0.32,0.72,0,1)}.menu-toggle:hover .menu-toggle-icon span:nth-child(1){transform:translateX(2px)}.menu-toggle:hover .menu-toggle-icon span:nth-child(2){transform:translateX(-2px)}.menu-toggle:hover .menu-toggle-icon span:nth-child(3){transform:translateX(2px)}html.cosy-low-fx .menu-toggle-icon span{transition:none}@keyframes pm-avatar-pulse{0%,100%{box-shadow:0 0 0 0 rgba(61,107,86,0.5)}50%{box-shadow:0 0 0 6px rgba(61,107,86,0)}}body.is-authenticated:not(.has-interacted) .account-avatar{animation:pm-avatar-pulse 1800ms ease-in-out 2}.side-menu .tabs button.tab{transition:background 200ms ease,color 200ms ease,transform 180ms cubic-bezier(0.32,0.72,0,1),border-color 200ms ease}@keyframes pm-star-select{0%{transform:scale(1);opacity:0.8}100%{transform:scale(1.5);opacity:0}}.progress-map-star.is-selected::before{content:"";position:absolute;inset:-8px;border-radius:50%;border:2px solid rgba(244,236,224,0.6);animation:pm-star-select 600ms ease-out;pointer-events:none}@keyframes pm-drawer-in{from{opacity:0;transform:translateX(20px) scale(0.98)}to{opacity:1;transform:translateX(0) scale(1)}}@keyframes pm-cta-attract{0%,100%{box-shadow:inset 0 1px 0 rgba(255,255,255,0.28),0 8px 22px -10px color-mix(in srgb,var(--primary) 55%,transparent)}50%{box-shadow:inset 0 1px 0 rgba(255,255,255,0.36),0 12px 32px -8px color-mix(in srgb,var(--primary) 75%,transparent)}}.progress-map-generate-btn:not(:hover):not(:disabled){animation:pm-cta-attract 2400ms ease-in-out infinite}html.cosy-low-fx .progress-map-generate-btn{animation:none}@media (prefers-reduced-motion: reduce){.pm-number-tick,.is-ticking,.status,.tc-concept,.menu-toggle-icon span,.progress-map-star.is-selected::before,.progress-map-generate-btn{animation:none!important;transition:none!important}}.welcome-back-link{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;padding:6px 12px 6px 8px;margin-bottom:14px;background:transparent;border:1px solid var(--border);border-radius:999px;color:var(--ink-soft, var(--muted));font-size:13px;font-weight:700;cursor:pointer;transition:background 160ms ease,border-color 160ms ease,color 160ms ease}.welcome-back-link:hover{background:color-mix(in srgb,var(--primary) 8%,var(--surface));border-color:color-mix(in srgb,var(--primary) 30%,var(--border));color:var(--primary)}.welcome-back-link[hidden]{display:none}.welcome-back-link svg{width:14px;height:14px}.app-main:has(#tab-lesson.upload-workspace.active){max-width:1336px;padding:24px 28px 48px}#tab-lesson.upload-workspace{max-width:1280px;width:100%;margin-inline:auto;gap:24px}#tab-lesson.upload-workspace>.rz-pagehead{padding:24px 0 0;margin:0;background:none;border:0;box-shadow:none}#tab-lesson.upload-workspace .rz-eyebrow{display:none}#tab-lesson.upload-workspace .rz-title{font-family:inherit;font-size:calc(clamp(26px,2.6vw,32px) * var(--font-scale, 1));font-weight:700;line-height:1.2;letter-spacing:-.025em}#tab-lesson.upload-workspace .remaster-page-description{max-width:65ch;font-size:calc(16px * var(--font-scale, 1));margin:12px 0 0}#tab-lesson.upload-workspace .lesson-workspace{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);align-items:start;gap:48px}#tab-lesson.upload-workspace .lesson-source-panel{padding:0;background:none;border:0;box-shadow:none;min-width:0}#tab-lesson.upload-workspace #lesson-form{display:grid;gap:16px}#tab-lesson.upload-workspace #smart-drop{padding:0;margin:0;background:none;border:0;box-shadow:none;gap:12px}#tab-lesson.upload-workspace .smart-drop-zone{display:flex;min-height:200px;padding:20px;border:1px dashed var(--border-strong);border-radius:16px;background:var(--surface);flex-direction:column;justify-content:center;text-align:center;gap:8px}#tab-lesson.upload-workspace .smart-drop-zone:hover,#tab-lesson.upload-workspace .smart-drop-zone.is-dragging{border-color:var(--primary);background:var(--primary-soft);transform:none}#tab-lesson.upload-workspace .smart-drop-zone:focus-visible{outline:var(--focus-outline, 3px) solid var(--primary);outline-offset:4px}#tab-lesson.upload-workspace .smart-drop-icon{width:32px;height:32px;padding:0;border:0;background:none;color:var(--primary)}#tab-lesson.upload-workspace .smart-drop-zone-text{display:block}#tab-lesson.upload-workspace .smart-drop-zone-text strong{font-size:calc(20px * var(--font-scale, 1));font-weight:700;line-height:1.4}#tab-lesson.upload-workspace .smart-drop-zone-text small{display:block;font-size:calc(13px * var(--font-scale, 1));line-height:1.5;margin:4px 0 12px}#tab-lesson.upload-workspace #smart-drop-limit-copy{margin:8px 0 0}.upload-choose-label{display:inline-block;padding:8px 20px;border:1px solid var(--primary);border-radius:10px;font-size:calc(15px * var(--font-scale, 1));color:var(--ink)}#tab-lesson.upload-workspace .smart-drop-sample-hint{margin:0;font-size:calc(14px * var(--font-scale, 1))}#tab-lesson.upload-workspace .field{font-size:calc(16px * var(--font-scale, 1))}#tab-lesson.upload-workspace .upload-notes-field{margin:0}#tab-lesson.upload-workspace .upload-notes-field textarea{min-height:112px;resize:vertical;padding:14px;font:inherit;line-height:1.5;border-radius:10px}#tab-lesson.upload-workspace .upload-advanced{margin:0;border-radius:10px;background:var(--surface)}#tab-lesson.upload-workspace .upload-advanced-summary{padding:16px;flex-wrap:wrap}#tab-lesson.upload-workspace .upload-advanced-label{font-size:calc(15px * var(--font-scale, 1));font-weight:600}#tab-lesson.upload-workspace .upload-advanced-hint{font-size:calc(13px * var(--font-scale, 1))}#tab-lesson.upload-workspace #lesson-input-hint{margin:0;font-size:calc(14px * var(--font-scale, 1));line-height:1.5}#tab-lesson.upload-workspace .lesson-ready-card{margin:0;padding:14px;border-radius:10px;box-shadow:none;animation:none}#tab-lesson.upload-workspace .action-bar{margin:0;padding:0;display:flex;flex-wrap:wrap;gap:12px;border:0}#tab-lesson.upload-workspace .action-bar>.btn-primary{width:100%;min-height:48px;scroll-margin-bottom:100px;border-radius:10px;font-size:calc(16px * var(--font-scale, 1));font-weight:600}#tab-lesson.upload-workspace .upload-progress:not(.progress-working):not(.progress-error):not(.progress-done){display:none}.upload-guide{padding-top:16px;color:var(--ink)}.upload-guide h2{margin:0 0 28px;font-size:calc(20px * var(--font-scale, 1));font-weight:700;line-height:1.4}.upload-guide ol{list-style:none;counter-reset:upload-step;padding:0;margin:0}.upload-guide li{position:relative;padding:0 0 28px 48px;counter-increment:upload-step}.upload-guide li::before{content:counter(upload-step);position:absolute;top:0;left:0;display:grid;place-items:center;width:32px;height:32px;background:var(--primary-soft);border-radius:50%;font-size:15px;font-weight:600;color:var(--ink)}.upload-guide strong{font-size:calc(16px * var(--font-scale, 1));font-weight:600}.upload-guide p{font-size:calc(15px * var(--font-scale, 1));line-height:1.6;color:var(--muted);margin:8px 0 0}.upload-guide .upload-guide-note{border-top:1px solid var(--border);padding-top:20px;margin:0}#tab-lesson.upload-workspace .upload-existing{border-top:1px solid var(--border);padding-top:16px}.upload-existing>summary{cursor:pointer;padding:12px 0;font-size:calc(16px * var(--font-scale, 1));font-weight:600}#tab-lesson.upload-workspace .upload-existing .lesson-context-bar{margin:0;padding:12px 0}#tab-lesson.upload-workspace>.results-panel{margin:0}#tab-lesson.upload-workspace>.results-panel:has(.empty-state){border:0;background:none;box-shadow:none}@media (max-width: 900px){#tab-lesson.upload-workspace .lesson-workspace{grid-template-columns:minmax(0,1fr);gap:24px}.upload-guide{display:none}}@media (max-width: 600px){.app-main:has(#tab-lesson.upload-workspace.active){padding:16px 20px 36px}#tab-lesson.upload-workspace>.rz-pagehead{padding-top:12px}#tab-lesson.upload-workspace .smart-drop-zone{min-height:200px;padding:20px 16px}}.smart-drop{display:grid;gap:12px;margin:4px 0 24px;padding:18px 18px 16px;border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border));border-radius:20px;background:radial-gradient(120% 140% at 0% 0%,color-mix(in srgb,var(--primary) 8%,transparent),transparent 60%),color-mix(in srgb,var(--primary) 3%,var(--surface));box-shadow:0 1px 0 rgba(255,255,255,0.55) inset}.smart-drop-head{display:grid;gap:4px}.smart-drop-eyebrow{font-size:11px;font-weight:800;letter-spacing:0.2em;text-transform:uppercase;color:var(--primary)}.smart-drop-head strong{font-size:16px;font-weight:800;color:var(--ink);letter-spacing:-0.005em}.smart-drop-head small{font-size:13px;line-height:1.4;color:var(--ink-soft, var(--muted))}.smart-drop-zone{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:14px;padding:16px 18px;border:2px dashed color-mix(in srgb,var(--primary) 30%,var(--border));border-radius:14px;background:var(--surface);cursor:pointer;transition:border-color 160ms ease,background 160ms ease,transform 160ms ease}.smart-drop-zone:hover,.smart-drop-zone:focus-within{border-color:color-mix(in srgb,var(--primary) 50%,var(--border));background:color-mix(in srgb,var(--primary) 5%,var(--surface))}.smart-drop-zone.is-dragging{border-style:solid;border-color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,var(--surface));transform:scale(1.005)}.smart-drop-icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 14%,var(--surface));color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border))}.smart-drop-icon svg{width:22px;height:22px}.smart-drop-zone-text{display:grid;gap:2px;min-width:0}.smart-drop-zone-text strong{font-size:15px;font-weight:800;color:var(--ink)}.smart-drop-zone-text small{font-size:11px;color:var(--muted);letter-spacing:0.01em}.smart-drop-sample-hint{margin:10px 0 0;text-align:center;font-size:13px;color:var(--muted)}.smart-drop-sample-link{appearance:none;background:none;border:0;padding:0;font:inherit;font-weight:700;color:var(--primary);cursor:pointer;text-decoration:underline;text-underline-offset:2px;transition:color 200ms ease}.smart-drop-sample-link:hover{color:color-mix(in srgb,var(--primary) 78%,var(--ink))}.smart-drop-sample-link:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}.smart-drop-sample-link[data-loading="1"]{opacity:0.7;cursor:default}.smart-drop-banner{padding:8px 12px;border-radius:10px;background:color-mix(in srgb,#f59e0b 14%,var(--surface));border:1px solid color-mix(in srgb,#f59e0b 28%,var(--border));color:var(--ink);font-size:13px;font-weight:700}.smart-drop-list{display:grid;gap:8px}.smart-drop-item{display:grid;grid-template-columns:32px minmax(0,1.2fr) minmax(0,1fr) 28px;gap:10px;align-items:center;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:12px;transition:border-color 160ms ease,background 160ms ease}.smart-drop-item.is-failed{background:color-mix(in srgb,#dc2626 6%,var(--surface));border-color:color-mix(in srgb,#dc2626 24%,var(--border))}.smart-drop-item-icon{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border))}.smart-drop-item-icon svg{width:18px;height:18px}.smart-drop-item-meta{display:grid;gap:2px;min-width:0}.smart-drop-item-meta strong{font-size:13px;font-weight:700;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.smart-drop-item-meta small{font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.smart-drop-item-status-row{display:flex;gap:6px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.smart-drop-item-status{font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;background:var(--surface-subtle);color:var(--ink-soft, var(--muted))}.smart-drop-item-status.is-loading{background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary);animation:smart-drop-pulse 1.4s ease-in-out infinite}.smart-drop-item-status.is-error{background:color-mix(in srgb,#dc2626 14%,var(--surface));color:var(--ink);font-size:13px;line-height:1.5;border-radius:6px;width:100%}@keyframes smart-drop-pulse{0%,100%{opacity:0.75}50%{opacity:1}}.smart-drop-item.is-added{background:color-mix(in srgb,var(--primary) 7%,var(--surface));border-color:color-mix(in srgb,var(--primary) 34%,var(--border))}.smart-drop-item-status.is-added{display:inline-flex;align-items:center;gap:4px;background:color-mix(in srgb,var(--primary) 16%,var(--surface));color:var(--primary)}.smart-drop-item-status.is-added svg{width:12px;height:12px}.smart-drop-chip-type{font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;background:var(--surface-subtle);color:var(--muted)}.smart-drop-chip-type,.smart-drop-chip-subject,.smart-drop-item-status{cursor:default;user-select:none}.smart-drop-actions-hint{font-size:12px;color:var(--muted);margin-right:auto;align-self:center}.smart-drop-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,12px);display:inline-flex;align-items:center;gap:7px;padding:9px 16px;border-radius:999px;background:var(--primary);color:#fff;font-size:13px;font-weight:700;box-shadow:0 10px 28px -10px color-mix(in srgb,var(--primary) 65%,transparent);opacity:0;pointer-events:none;z-index:1000;transition:opacity 200ms cubic-bezier(0.23,1,0.32,1),transform 200ms cubic-bezier(0.23,1,0.32,1)}.smart-drop-toast.show{opacity:1;transform:translate(-50%,0)}.smart-drop-toast svg{width:15px;height:15px}@media (prefers-reduced-motion: reduce){.smart-drop-toast{transition:opacity 200ms ease;transform:translate(-50%,0)}}.smart-drop-type-select{font-size:11px!important;font-weight:700!important;padding:4px 22px 4px 10px!important;border-radius:999px!important;border:1px solid var(--border)!important;background:var(--surface)!important;color:var(--ink)!important;cursor:pointer!important;min-height:0!important}.smart-drop-chip-subject{font-size:11px;font-weight:700;padding:3px 8px;border-radius:999px;background:color-mix(in srgb,var(--accent, #d76148) 12%,var(--surface));color:var(--accent, #d76148);border:1px solid color-mix(in srgb,var(--accent, #d76148) 22%,var(--border))}.smart-drop-confidence{font-size:11px;font-weight:800;padding:3px 8px;border-radius:999px;letter-spacing:0.02em}.smart-drop-confidence.is-high{background:color-mix(in srgb,var(--success, #16a34a) 14%,var(--surface));color:var(--success, #16a34a)}.smart-drop-confidence.is-mid{background:color-mix(in srgb,#f59e0b 14%,var(--surface));color:#b45309}.smart-drop-confidence.is-low{background:color-mix(in srgb,#dc2626 12%,var(--surface));color:#b91c1c}.smart-drop-item-remove{width:28px;height:28px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--muted);font-size:18px;line-height:1;cursor:pointer;padding:0}.smart-drop-item-remove:hover{background:color-mix(in srgb,#dc2626 8%,var(--surface));border-color:color-mix(in srgb,#dc2626 18%,var(--border));color:#b91c1c}.smart-drop-actions{display:flex;gap:8px;justify-content:flex-end}.smart-drop-actions .btn-primary,.smart-drop-actions .btn-secondary{min-height:0;padding:8px 14px;font-size:13px}@media (max-width: 640px){.smart-drop-item{grid-template-columns:32px minmax(0,1fr) 28px;grid-template-areas:"icon meta remove" "status status status";gap:8px}.smart-drop-item-icon{grid-area:icon}.smart-drop-item-meta{grid-area:meta}.smart-drop-item-remove{grid-area:remove}.smart-drop-item-status-row{grid-area:status;justify-content:flex-start}}.hibp-indicator{display:grid;gap:8px;padding:10px 14px;margin:-4px 0 6px;border:1px solid var(--border);border-left:4px solid var(--border);border-radius:10px;background:var(--surface-subtle);font-size:13px;line-height:1.4;transition:background 160ms ease,border-color 160ms ease}.hibp-indicator[hidden]{display:none}.hibp-message{display:flex;align-items:flex-start;gap:8px}.hibp-icon{display:inline-grid;place-items:center;width:18px;height:18px;flex-shrink:0;margin-top:1px;font-size:14px;line-height:1}.hibp-text{color:var(--ink);font-weight:600}.hibp-text strong{font-weight:800}.hibp-ack{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink);cursor:pointer;user-select:none}.hibp-ack[hidden]{display:none}.hibp-ack input[type=checkbox]{width:14px;height:14px;margin:0;accent-color:var(--accent, #d76148);cursor:pointer}.hibp-suggest-btn{align-self:flex-start;padding:6px 12px!important;font-size:12px!important;font-weight:700;min-height:0!important}.hibp-suggest-btn[hidden]{display:none}.hibp-indicator[data-tier=safe]{background:color-mix(in srgb,var(--success, #16a34a) 6%,var(--surface-subtle));border-color:color-mix(in srgb,var(--success, #16a34a) 28%,var(--border));border-left-color:var(--success, #16a34a)}.hibp-indicator[data-tier=safe] .hibp-icon{color:var(--success, #16a34a)}.hibp-indicator[data-tier=safe] .hibp-icon::before{content:"✓";font-weight:800}.hibp-indicator[data-tier=checking]{background:var(--surface-subtle);border-color:var(--border);border-left-color:var(--ink-soft, #6b5b42);opacity:0.85}.hibp-indicator[data-tier=checking] .hibp-icon::before{content:"…";font-weight:800}.hibp-indicator[data-tier=light_warn]{background:color-mix(in srgb,#f59e0b 10%,var(--surface-subtle));border-color:color-mix(in srgb,#f59e0b 32%,var(--border));border-left-color:#b45309}.hibp-indicator[data-tier=light_warn] .hibp-icon{color:#b45309}.hibp-indicator[data-tier=light_warn] .hibp-icon::before{content:"⚠";font-weight:800}.hibp-indicator[data-tier=strong_warn]{background:color-mix(in srgb,#f97316 12%,var(--surface-subtle));border-color:color-mix(in srgb,#f97316 38%,var(--border));border-left-color:#c2410c}.hibp-indicator[data-tier=strong_warn] .hibp-icon{color:#c2410c}.hibp-indicator[data-tier=strong_warn] .hibp-icon::before{content:"⚠";font-weight:800}.hibp-indicator[data-tier=block]{background:color-mix(in srgb,#dc2626 12%,var(--surface-subtle));border-color:color-mix(in srgb,#dc2626 40%,var(--border));border-left-color:#b91c1c}.hibp-indicator[data-tier=block] .hibp-icon{color:#b91c1c}.hibp-indicator[data-tier=block] .hibp-icon::before{content:"✕";font-weight:800}.hibp-indicator[data-tier=block]~button[type=submit],.hibp-indicator[data-tier=block]~section~button[type=submit]{opacity:0.55;cursor:not-allowed}.hibp-modal{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:16px}.hibp-modal[hidden]{display:none}.hibp-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,0.5);backdrop-filter:blur(2px);cursor:pointer}.hibp-modal-card{position:relative;width:min(440px,calc(100vw - 32px));background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px;box-shadow:0 24px 60px rgba(15,23,42,0.25),0 4px 14px rgba(15,23,42,0.10);display:grid;gap:14px}.hibp-modal-card h3{margin:0;font-size:18px;font-weight:800;color:var(--ink);letter-spacing:-0.005em}.hibp-modal-card p{margin:0;font-size:13px;color:var(--ink-soft, var(--muted));line-height:1.5}.hibp-modal-preview{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 14px;background:var(--surface-subtle);border:1px dashed var(--border);border-radius:10px}.hibp-modal-preview-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:0.12em;color:var(--muted)}.hibp-modal-preview code{font-family:ui-monospace,SFMono-Regular,"SF Mono",Menlo,monospace;font-size:14px;font-weight:700;color:var(--ink);word-break:break-all;white-space:normal}.hibp-modal-copy{background:transparent;border:1px solid var(--border);border-radius:8px;padding:4px 10px;font-size:11px;font-weight:700;color:var(--ink-soft, var(--muted));cursor:pointer}.hibp-modal-copy:hover{background:var(--primary-soft);color:var(--primary);border-color:color-mix(in srgb,var(--primary) 40%,var(--border))}.hibp-modal-copy.is-copied{background:color-mix(in srgb,var(--success, #16a34a) 16%,var(--surface));color:var(--success, #16a34a);border-color:color-mix(in srgb,var(--success, #16a34a) 30%,var(--border))}.hibp-modal-actions{display:flex;gap:10px;justify-content:flex-end}@media (max-width: 480px){.hibp-modal-actions{flex-direction:column-reverse}.hibp-modal-actions .btn-primary,.hibp-modal-actions .btn-secondary{width:100%}}.home-pwned-banner{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 16px;margin-bottom:14px;border-radius:14px;border:1px solid color-mix(in srgb,#f97316 32%,var(--border));background:color-mix(in srgb,#f97316 8%,var(--surface));color:var(--ink);font-size:13px;line-height:1.4}.home-pwned-banner-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:color-mix(in srgb,#f97316 22%,var(--surface));color:#b45309;font-weight:800}.home-pwned-banner strong{font-weight:800}.home-pwned-banner-actions{display:flex;gap:8px}.home-pwned-banner-actions button{background:transparent;border:1px solid color-mix(in srgb,#f97316 32%,var(--border));border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;color:var(--ink);cursor:pointer}.home-pwned-banner-actions .home-pwned-banner-rotate{background:#c2410c;color:#fff;border-color:#c2410c}.account-message-overlay{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:20px;background:color-mix(in srgb,var(--ink) 44%,transparent);opacity:0;transition:opacity 220ms ease}.account-message-overlay.is-open{opacity:1}.account-message-card{position:relative;width:min(440px,94vw);background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:22px;padding:30px 28px 22px;box-shadow:var(--shadow-lg, 0 24px 60px rgba(15, 23, 20, 0.28));transform:translateY(12px) scale(0.97);opacity:0;transition:transform 260ms cubic-bezier(0.2,0.8,0.2,1),opacity 260ms ease;overflow:hidden}.account-message-overlay.is-open .account-message-card{transform:none;opacity:1}.account-message-glow{position:absolute;top:-70px;right:-50px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 38%,transparent),transparent 70%);pointer-events:none}.account-message-close{position:absolute;top:14px;right:14px;width:34px;height:34px;display:grid;place-items:center;border:none;border-radius:50%;background:var(--surface-subtle);color:var(--muted);cursor:pointer;transition:background-color 160ms ease,color 160ms ease}.account-message-close:hover{background:var(--surface-muted);color:var(--ink)}.account-message-close svg{width:18px;height:18px}.account-message-badge{display:inline-block;font-size:0.7rem;font-weight:800;letter-spacing:0.08em;text-transform:uppercase;color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent);padding:5px 12px;border-radius:999px;margin-bottom:14px}.account-message-body{position:relative;font-size:1.04rem;line-height:1.6;color:var(--ink);margin:0 0 20px}.account-message-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--border);padding-top:15px}.account-message-sign{font-size:0.85rem;color:var(--muted);font-style:italic}.gen-theater{margin:16px 0 4px;padding:20px 20px 18px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(160deg,color-mix(in srgb,var(--primary) 7%,var(--surface)),var(--surface));box-shadow:var(--shadow-sm, 0 2px 10px rgba(15, 23, 20, 0.06));opacity:0;transform:translateY(8px);transition:opacity 260ms ease,transform 260ms ease}.gen-theater.is-open{opacity:1;transform:none}.gen-theater.is-done{border-color:color-mix(in srgb,var(--success) 50%,var(--border))}.gen-theater-emblem{position:relative;width:40px;height:40px;margin-bottom:12px}.gen-theater-emblem span{position:absolute;inset:0;margin:auto;border-radius:50%;border:2px solid color-mix(in srgb,var(--primary) 55%,transparent)}.gen-theater-emblem span:nth-child(1){width:12px;height:12px;background:var(--primary);border:none;animation:genPulse 1.6s ease-in-out infinite}.gen-theater-emblem span:nth-child(2){width:26px;height:26px;animation:genRing 1.8s ease-out infinite}.gen-theater-emblem span:nth-child(3){width:40px;height:40px;animation:genRing 1.8s ease-out 0.45s infinite}@keyframes genPulse{0%,100%{transform:scale(0.85);opacity:0.85}50%{transform:scale(1.12);opacity:1}}@keyframes genRing{0%{transform:scale(0.5);opacity:0.7}100%{transform:scale(1.12);opacity:0}}.gen-theater-head{display:grid;gap:2px;margin-bottom:14px}.gen-theater-head strong{font-size:1.05rem;color:var(--ink)}.gen-theater-head small{color:var(--muted);font-size:0.82rem}.gen-theater-stages{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:9px}.gen-theater-stages li{display:flex;align-items:center;gap:10px;font-size:0.9rem;color:var(--muted);transition:color 200ms ease}.gen-stage-dot{flex:none;width:16px;height:16px;border-radius:50%;border:2px solid var(--border-strong, var(--border));background:var(--surface);position:relative;transition:border-color 200ms ease,background-color 200ms ease}.gen-theater-stages li.is-active{color:var(--ink);font-weight:600}.gen-theater-stages li.is-active .gen-stage-dot{border-color:var(--primary);animation:genDot 1.4s ease-in-out infinite}@keyframes genDot{0%,100%{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 16%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--primary) 8%,transparent)}}.gen-theater-stages li.is-done{color:var(--ink)}.gen-theater-stages li.is-done .gen-stage-dot{border-color:var(--success);background:var(--success)}.gen-theater-stages li.is-done .gen-stage-dot::after{content:"";position:absolute;left:4px;top:1px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.gen-theater-tip{border-top:1px dashed var(--border);padding-top:12px;display:grid;gap:4px}.gen-tip-label{font-size:0.66rem;font-weight:800;letter-spacing:0.08em;text-transform:uppercase;color:var(--accent)}.gen-tip-text{margin:0;font-size:0.88rem;line-height:1.5;color:var(--ink-soft, var(--ink));transition:opacity 260ms ease}.gen-tip-text.is-fading{opacity:0}@media (prefers-reduced-motion: reduce){.gen-theater,.gen-theater.is-open,.account-message-card,.account-message-overlay{transition:none;transform:none}.gen-theater-emblem span,.gen-theater-stages li.is-active .gen-stage-dot{animation:none!important}.gen-tip-text{transition:none}}#starter-tutorial-kicker{display:inline-block;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;font-size:0.7rem;color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,transparent);padding:5px 12px;border-radius:999px}.starter-tutorial-highlight{animation:tourPulse 1.9s ease-in-out infinite}@keyframes tourPulse{0%,100%{box-shadow:0 0 0 8px color-mix(in srgb,var(--primary) 14%,transparent),var(--shadow-md)}50%{box-shadow:0 0 0 13px color-mix(in srgb,var(--primary) 7%,transparent),var(--shadow-md)}}@media (prefers-reduced-motion: reduce){.starter-tutorial-highlight{animation:none}}body.theme-dark .sc-past-score.is-ok,body.theme-dark .dash-card-score.is-ok,body.theme-dark .essay-result-score.is-ok em{background:color-mix(in srgb,var(--primary) 22%,transparent);color:var(--primary);border-color:color-mix(in srgb,var(--primary) 42%,transparent)}body.theme-dark .sc-past-score.is-low,body.theme-dark .dash-card-score.is-low,body.theme-dark .essay-result-score.is-low em,body.theme-dark .sc-stat.is-red,body.theme-dark .sc-topic-chip.is-weak,body.theme-dark .qrp-answer.is-wrong{background:var(--danger-soft);color:var(--danger);border-color:color-mix(in srgb,var(--danger) 42%,transparent)}body.theme-dark .learn-card-status.creating,body.theme-dark .learn-early-pill,body.theme-dark .learn-modal-icon,body.theme-dark .cl-tab-edit-badge,body.theme-dark .checklist-edit-warning,body.theme-dark .admin-plan-pro,body.theme-dark .admin-plan-vip,body.theme-dark .admin-at-risk-badge{background:var(--warning-soft);color:var(--warning)}body.theme-dark .progress-map-scope select option{background:var(--surface);color:var(--ink)}.panel-header-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.study-tools-trigger{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.study-tools-trigger .icon{width:16px;height:16px}.study-tools-overlay{position:fixed;inset:0;z-index:1150;display:grid;place-items:center;padding:20px;background:color-mix(in srgb,var(--ink) 46%,transparent);opacity:0;transition:opacity 220ms ease;overflow-y:auto}.study-tools-overlay.is-open{opacity:1}.study-tools-card{width:min(720px,96vw);max-height:92vh;overflow-y:auto;background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:22px;padding:24px 24px 26px;box-shadow:var(--shadow-lg, 0 24px 60px rgba(15, 23, 20, 0.28));transform:translateY(12px) scale(0.985);opacity:0;transition:transform 240ms cubic-bezier(0.2,0.8,0.2,1),opacity 240ms ease}.study-tools-overlay.is-open .study-tools-card{transform:none;opacity:1}.study-tools-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.study-tools-head h2{margin:2px 0 0;font-size:1.35rem}.study-tools-close{flex:none;width:36px;height:36px;display:grid;place-items:center;border:none;border-radius:50%;background:var(--surface-subtle);color:var(--muted);cursor:pointer;transition:background-color 160ms ease,color 160ms ease}.study-tools-close:hover{background:var(--surface-muted);color:var(--ink)}.study-tools-close svg{width:18px;height:18px}.study-tools-suggested-label,.study-tools-grid-label{display:block;font-size:0.68rem;font-weight:800;letter-spacing:0.07em;text-transform:uppercase;color:var(--accent);margin:0 0 8px}.study-tools-grid-label{color:var(--muted);margin-top:20px}.study-tool-card{display:flex;align-items:center;gap:14px;width:100%;text-align:left;padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:var(--surface-subtle);color:var(--ink);cursor:pointer;transition:border-color 160ms ease,background-color 160ms ease,transform 120ms ease}.study-tool-card:hover{border-color:var(--primary);background:var(--surface);transform:translateY(-1px)}.study-tool-card.is-suggested{background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 14%,var(--surface)),var(--surface));border-color:color-mix(in srgb,var(--primary) 45%,var(--border));padding:18px 18px}.study-tool-icon{flex:none;width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:color-mix(in srgb,var(--primary) 14%,transparent);color:var(--primary)}.study-tool-card.is-suggested .study-tool-icon{background:var(--primary);color:#fff}.study-tool-icon .icon{width:22px;height:22px}.study-tool-text{display:grid;gap:2px;min-width:0}.study-tool-text strong{font-size:0.98rem}.study-tool-text small{color:var(--muted);font-size:0.82rem;line-height:1.4}.study-tool-go{margin-left:auto;flex:none;font-weight:700;font-size:0.9rem;color:var(--primary)}.study-tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}@media (max-width: 560px){.study-tools-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){.study-tools-overlay,.study-tools-card,.study-tool-card{transition:none;transform:none}}.tool-bridge{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0 0 18px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--r-md);background:color-mix(in srgb,var(--primary-soft) 40%,var(--surface))}.tool-bridge-label{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--ink-soft)}.tool-bridge-count{font-weight:600;font-size:12px;color:var(--muted);padding:2px 8px;border-radius:var(--r-pill);background:color-mix(in srgb,var(--ink) 8%,transparent)}.tool-bridge-chips{display:flex;flex-wrap:wrap;gap:8px}.tool-bridge-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);color:var(--ink);font-size:13px;font-weight:600;cursor:pointer;transition:border-color 0.15s ease,background 0.15s ease,color 0.15s ease}.tool-bridge-chip:hover{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary-hover)}.tool-bridge-chip .icon{width:15px;height:15px}.tool-bridge-chip.is-explored{color:var(--muted)}.effects-settings{margin:24px 0;padding:20px;border:1px solid var(--border);border-radius:12px;min-width:0}.effects-settings legend{padding:0 6px;font-weight:650}.effects-settings>p{margin:0 0 12px;color:var(--muted);font-size:14px}.effects-settings-controls{display:flex;flex-wrap:wrap;gap:16px;align-items:end;margin-top:16px}.effects-settings-controls .field{flex:1 1 200px;min-width:0;margin:0}.effects-settings-controls input[type=range]{width:100%;min-height:44px;accent-color:var(--primary);cursor:pointer}.effects-settings-controls output{font-variant-numeric:tabular-nums;margin-left:8px;color:var(--muted)}.effects-settings-controls button{min-height:44px}.effects-settings-controls :disabled{cursor:default;opacity:0.55}.effects-settings #setting-effects-status:not(:empty){margin:12px 0 0}.tool-bridge-chip.is-explored::after{content:"✓";font-size:11px;color:var(--success);margin-left:1px}@media (max-width: 640px){.tool-bridge-chips{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px}.tool-bridge-chip{flex:0 0 auto}}@media (prefers-reduced-motion: reduce){.tool-bridge-chip{transition:none}}
