@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap";:root{--bg:#fff;--surface:#fff;--surface2:#f9fafb;--surface3:#f3f4f6;--border:#e5e7eb;--violet:#2563eb;--violet-dim:#1d4ed8;--teal:#0d9488;--teal-dim:#0f766e;--coral:#dc2626;--coral-dim:#b91c1c;--amber:#d97706;--amber-dim:#b45309;--text:#111827;--text-main:var(--text);--muted:#4b5563;--muted2:#9ca3af;--radius:8px;--radius-sm:6px;--radius-pill:999px;--shadow:0 4px 6px -1px #0000000d, 0 2px 4px -1px #00000008;--shadow-sm:0 1px 3px 0 #0000000d, 0 1px 2px 0 #00000008;--transition:.4s cubic-bezier(.4, 0, .2, 1)}[data-theme=dark]{--bg:#0f1115;--surface:#16181d;--surface2:#1e2028;--surface3:#272a34;--border:#2d313d;--violet:#3b82f6;--violet-dim:#2563eb;--teal:#14b8a6;--teal-dim:#0d9488;--coral:#ef4444;--coral-dim:#dc2626;--amber:#f59e0b;--amber-dim:#d97706;--text:#f3f4f6;--text-main:var(--text);--muted:#9ca3af;--muted2:#6b7280;--shadow:0 4px 6px -1px #0003, 0 2px 4px -1px #0000001a;--shadow-sm:0 1px 3px 0 #0003, 0 1px 2px 0 #0000001a}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;overflow-x:hidden}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh;transition:background-color var(--transition), color var(--transition);-webkit-overflow-scrolling:touch;font-family:Inter,system-ui,sans-serif;line-height:1.6;overflow-x:hidden}button{cursor:pointer;border:none;outline:none;font-family:inherit}.option-btn{cursor:pointer;text-align:left;width:100%;box-shadow:none;border-radius:12px;align-items:center;gap:14px;padding:14px 20px;font-family:inherit;font-size:1rem;transition:all .15s;display:flex;border:2px solid var(--border)!important;background:var(--bg)!important;color:var(--text-h)!important}.option-btn:hover{background:#3b82f60d!important;border-color:#3b82f680!important}.option-btn.selected{transform:translate(4px);color:#fff!important;background:#3b82f6!important;border:2px solid #3b82f6!important;box-shadow:0 4px 16px #3b82f659!important}.option-btn.selected .option-label{color:#3b82f6!important;background:#fff!important;border-color:#fff!important}.option-btn.selected .option-text{font-weight:600;color:#fff!important}.option-label{border:2px solid var(--border);width:34px;height:34px;color:var(--text-h);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:800;transition:all .15s;display:flex}.option-text{color:var(--text-h);font-size:.95rem;line-height:1.5}input,textarea,select{box-sizing:border-box;outline:none;width:100%;font-family:inherit}a{color:inherit;text-decoration:none}ul,ol{list-style:none}img,svg{display:block}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.app-shell{flex-direction:column;min-height:100vh;display:flex;overflow-x:hidden}.page{box-sizing:border-box;flex:1;width:100%;max-width:1100px;margin:0 auto;padding:0 20px 60px}.page-wide{box-sizing:border-box;flex:1;width:100%;max-width:1300px;margin:0 auto;padding:0 20px 60px}.navbar{width:100%;max-width:1100px;margin:0 auto;padding:24px 24px 16px}.navbar-inner{justify-content:space-between;align-items:center;height:60px;display:flex}.nav-brand{color:var(--text);cursor:pointer;align-items:center;gap:12px;font-size:1.25rem;font-weight:800;display:flex}.nav-logo{object-fit:contain;border-radius:6px;width:auto;height:48px}.nav-links{align-items:center;gap:8px;display:flex}.nav-link{border-radius:var(--radius-pill);color:var(--muted);transition:all var(--transition);background:0 0;padding:6px 14px;font-size:.875rem;font-weight:500}.nav-link:hover{color:var(--text);background:var(--surface2)}.nav-link.active{color:var(--violet);background:var(--surface3);font-weight:600}.nav-profile-link{cursor:pointer;color:inherit;-webkit-user-select:none;user-select:none;background:0 0;border:none;border-radius:999px;align-items:center;gap:8px;padding:4px 10px;text-decoration:none;transition:background .2s;display:inline-flex}.nav-profile-link:hover{background:var(--surface2)}.nav-profile-link img{pointer-events:none;display:inline-block}.hero{text-align:center;padding:60px 0 40px}.hero-badge{border-radius:var(--radius-pill);background:var(--surface2);border:1px solid var(--border);color:var(--violet);align-items:center;gap:6px;margin-bottom:20px;padding:4px 14px;font-size:.8rem;font-weight:600;display:inline-flex}.hero h1{color:var(--text);transition:color var(--transition);margin-bottom:16px;font-size:clamp(2rem,5vw,3.2rem);font-weight:900;line-height:1.15}.hero p{color:var(--muted);max-width:520px;margin:0 auto 32px;font-size:1.1rem}.goal-selector{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:48px;display:flex}.goal-btn{border-radius:var(--radius-pill);border:1.5px solid var(--border);background:var(--surface);color:var(--muted);cursor:pointer;padding:10px 22px;font-size:.9rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1)}.goal-btn:hover{border-color:var(--violet);color:var(--text);background:var(--surface)}.goal-btn.selected{background:var(--surface);border-color:var(--violet);color:var(--text);font-weight:700}.section-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.section-title{color:var(--text);font-size:1.1rem;font-weight:700}.section-tag{color:var(--muted);border-radius:var(--radius-pill);background:var(--surface2);padding:3px 10px;font-size:.75rem;font-weight:600}.category-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:14px;margin-bottom:40px;display:grid}.category-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all var(--transition);box-shadow:var(--shadow-sm);border-left:3px solid #0000;padding:20px 18px;position:relative;overflow:hidden}.category-card:hover{border-color:var(--accent-color,var(--violet));box-shadow:var(--shadow);background:var(--surface2);transform:translateY(-2px)}.category-card.active{border-left-color:var(--accent-color,var(--violet));background:var(--surface2)}.cat-icon{margin-bottom:10px;font-size:1.6rem}.cat-name{color:var(--text);margin-bottom:4px;font-size:.95rem;font-weight:700}.cat-meta{color:var(--muted);font-size:.75rem}.cat-count{border-radius:var(--radius-pill);background:var(--surface2);color:var(--muted);border:1px solid var(--border);padding:2px 8px;font-size:.7rem;font-weight:700;position:absolute;top:12px;right:12px}.badge{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);align-items:center;padding:2px 9px;font-size:.7rem;font-weight:700;display:inline-flex}.badge-easy{color:var(--teal);border-color:var(--teal)}.badge-medium{color:var(--amber);border-color:var(--amber)}.badge-hard{color:var(--coral);border-color:var(--coral)}.pillar-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-items:center;gap:8px;margin:28px 0 12px;font-size:.7rem;font-weight:700;display:flex}.pillar-label:after{content:"";background:var(--border);flex:1;height:1px}[data-theme=dark] .pillar-label:after{display:none}.question-list{flex-direction:column;gap:10px;display:flex}.question-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all var(--transition);box-shadow:var(--shadow-sm);align-items:flex-start;gap:14px;padding:16px 18px;display:flex}.question-item:hover{border-color:var(--violet);background:var(--surface2);transform:translate(3px)}.q-num{background:var(--surface2);width:32px;height:32px;color:var(--muted);border:1px solid var(--border);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex}.q-body{flex:1}.q-text{color:var(--text);margin-bottom:6px;font-size:.9rem;font-weight:500;line-height:1.4}.q-tags{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.q-cat{color:var(--muted);font-size:.7rem}.q-status{flex-shrink:0;margin-left:auto}.q-status-dot{background:var(--border);border-radius:50%;width:8px;height:8px}.q-status-dot.correct{background:var(--teal)}.q-status-dot.wrong{background:var(--coral)}.practice-layout{grid-template-columns:1fr 1fr;gap:24px;padding-top:24px;display:grid}@media (width<=800px){.practice-layout{grid-template-columns:1fr}}.question-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:20px;padding:28px;display:flex}.qc-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.qc-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;display:flex}.qc-concept{color:var(--violet);text-transform:uppercase;letter-spacing:.06em;font-size:.7rem;font-weight:600}.qc-question{color:var(--text);font-size:1.05rem;font-weight:600;line-height:1.5}.options-grid{flex-direction:column;gap:8px;display:flex}.option-btn{border-radius:var(--radius-sm);background:var(--surface2);border:1.5px solid var(--border);width:100%;color:var(--text);text-align:left;cursor:pointer;align-items:center;gap:12px;padding:13px 16px;font-size:.9rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.option-btn:hover:not(:disabled){border-color:var(--violet);background:color-mix(in srgb, var(--violet) 6%, var(--surface2));transform:translate(2px)}.option-btn.selected{border-color:var(--violet);background:var(--surface);color:var(--text);font-weight:600}.option-btn.correct{border-color:var(--teal);background:var(--surface);color:var(--text);font-weight:600}.option-btn.wrong{border-color:var(--coral);background:var(--surface);color:var(--text);font-weight:600}.option-btn:disabled{cursor:default;opacity:.8}.opt-letter{background:var(--surface3);width:28px;height:28px;color:var(--muted);border:1px solid var(--border);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.option-btn.selected .opt-letter{background:var(--violet);color:#fff;border-color:#0000}.option-btn.correct .opt-letter{background:var(--teal);color:#fff;border-color:#0000}.option-btn.wrong .opt-letter{background:var(--coral);color:#fff;border-color:#0000}.qc-actions{flex-wrap:wrap;gap:10px;display:flex}.btn{border-radius:var(--radius-sm);transition:all var(--transition);align-items:center;gap:7px;padding:10px 22px;font-size:.875rem;font-weight:600;display:inline-flex}.btn-primary{background:var(--violet);color:#fff;border:1px solid var(--violet-dim)}.btn-primary:hover{background:var(--violet-dim);transform:translateY(-1px)}.btn-primary:disabled{opacity:.45;cursor:default;transform:none}.btn-ghost{color:var(--muted);border:1px solid var(--border);background:0 0}.btn-ghost:hover{border-color:var(--muted2);color:var(--text);background:var(--surface2)}.btn-outline{color:var(--text);border:1.5px solid var(--border);background:0 0}.btn-outline:hover{border-color:var(--violet);color:var(--violet);background:color-mix(in srgb, var(--violet) 6%, transparent)}.btn-teal{background:var(--teal);color:#fff;border:1px solid var(--teal-dim)}.btn-teal:hover{background:var(--teal-dim);transform:translateY(-1px)}.btn-coral{background:var(--coral);color:#fff;border:1px solid var(--coral-dim)}.btn-coral:hover{background:var(--coral-dim);transform:translateY(-1px)}.btn-sm{padding:6px 14px;font-size:.8rem}.btn-icon{border-radius:var(--radius-sm);justify-content:center;width:36px;height:36px;padding:0}.hint-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:12px;padding:20px;display:flex}.hint-header{justify-content:space-between;align-items:center;display:flex}.hint-title{color:var(--amber);font-size:.85rem;font-weight:700}.hint-dots{gap:6px;display:flex}.hint-dot{background:var(--border);width:8px;height:8px;transition:background var(--transition);border-radius:50%}.hint-dot.used{background:var(--amber)}.hint-card{background:var(--surface2);border:1px solid var(--border);border-left:3px solid var(--amber);border-radius:var(--radius-sm);padding:14px 16px;font-size:.875rem;line-height:1.55;animation:.25s slideDown}.hint-card .label{color:var(--amber);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px;font-size:.7rem;font-weight:700}.hint-actions{flex-wrap:wrap;gap:8px;display:flex}.animation-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;display:flex;overflow:hidden}.anim-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:16px 20px;display:flex}.anim-title{font-size:.95rem;font-weight:700}.step-badge{border-radius:var(--radius-pill);background:var(--surface2);color:var(--violet);border:1px solid var(--border);padding:3px 10px;font-size:.75rem;font-weight:700}.anim-progress-bar{background:var(--surface3);height:4px;position:relative}.anim-progress-fill{background:var(--violet);height:100%;transition:width .4s}.anim-stage{background:var(--surface);flex:1;justify-content:center;align-items:center;min-height:300px;padding:24px 20px;display:flex;position:relative;overflow:visible}.anim-controls{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:12px;padding:14px 20px;display:flex}.anim-ctrl-center{flex:1;justify-content:center;align-items:center;gap:8px;display:flex}.anim-ctrl-right{align-items:center;gap:8px;margin-left:auto;display:flex}.speed-select{background:var(--surface2);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:6px;padding:4px 8px;font-size:.78rem;font-weight:600}.step-info{border-top:1px solid var(--border);background:var(--surface2);padding:16px 20px}.step-info-title{color:var(--violet);margin-bottom:4px;font-size:.8rem;font-weight:700}.step-info-text{color:var(--text);font-size:.875rem;line-height:1.6}.step-formula{border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);font-family:var(--mono);color:var(--violet);margin-top:8px;padding:10px 14px;font-size:.85rem}.sr-formula{text-align:center;width:100%}.sr-formula .formula-big{letter-spacing:.04em;margin-bottom:20px;font-family:monospace;font-size:clamp(1.2rem,3vw,2rem);font-weight:800;line-height:1.4}.fv{border-radius:6px;margin:0 2px;padding:2px 8px;display:inline-block}.fv-a{color:var(--violet);background:#7f77dd33}.fv-b{color:var(--teal);background:#1d9e7533}.fv-c{color:var(--amber);background:#ef9f2733}.fv-d{color:var(--coral);background:#d85a3033}.formula-subs{flex-wrap:wrap;justify-content:center;gap:16px;font-size:.9rem;display:flex}.formula-sub-item{border-radius:var(--radius-sm);background:var(--surface2);flex-direction:column;align-items:center;gap:4px;padding:10px 16px;display:flex}.formula-sub-item .key{color:var(--muted);font-size:.75rem}.formula-sub-item .val{font-size:1rem;font-weight:700}.sr-morph{flex-direction:column;align-items:center;gap:20px;width:100%;display:flex}.morph-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.morph-box{background:var(--surface2);border:2px solid var(--border);min-width:56px;height:56px;color:var(--text);border-radius:10px;justify-content:center;align-items:center;font-size:1.2rem;font-weight:800;transition:all .5s cubic-bezier(.34,1.56,.64,1);display:flex}.morph-box.highlight{border-color:var(--violet);color:var(--violet);background:#7f77dd26;transform:scale(1.12)}.morph-box.result{border-color:var(--teal);color:var(--teal);background:#1d9e7526;transform:scale(1.08)}.morph-op{color:var(--muted);text-align:center;min-width:24px;font-size:1.4rem;font-weight:700}.sr-story{flex-direction:column;align-items:center;gap:16px;width:100%;display:flex}.story-scene-box{background:var(--surface2);border-radius:var(--radius);border:1px solid var(--border);justify-content:center;align-items:center;width:100%;max-width:420px;height:200px;display:flex;position:relative;overflow:hidden}.story-caption{color:var(--muted);text-align:center;max-width:360px;font-size:.85rem}.sr-motion{justify-content:center;align-items:center;width:100%;display:flex}.motion-svg-wrap{width:100%;max-width:380px}.sr-word{text-align:center;width:100%}.word-main{color:var(--violet);letter-spacing:.02em;margin-bottom:16px;font-size:2.5rem;font-weight:900;animation:.5s cubic-bezier(.34,1.56,.64,1) wordPop}.word-definition{color:var(--text);max-width:380px;margin:0 auto 12px;font-size:1rem;line-height:1.5}.word-synonyms{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.word-syn{border-radius:var(--radius-pill);background:var(--surface2);border:1px solid var(--border);color:var(--teal);padding:4px 12px;font-size:.8rem;font-weight:600}.sr-pattern{flex-direction:column;align-items:center;gap:16px;width:100%;display:flex}.pattern-grid{gap:8px;display:grid}.pattern-cell{border-radius:var(--radius-sm);background:var(--surface2);border:2px solid var(--border);width:60px;height:60px;color:var(--text);justify-content:center;align-items:center;font-size:1.1rem;font-weight:800;transition:all .4s;display:flex}.pattern-cell.revealed{border-color:var(--violet);background:#7f77dd1f}.pattern-cell.answer-cell{border-color:var(--teal);color:var(--teal);background:#1d9e7526;animation:.5s cubic-bezier(.34,1.56,.64,1) popIn}.sr-bar{width:100%}.bar-chart-wrap{max-height:220px}.sr-pie{flex-wrap:wrap;justify-content:center;align-items:center;gap:24px;display:flex}.pie-legend{flex-direction:column;gap:8px;display:flex}.pie-legend-item{align-items:center;gap:8px;font-size:.8rem;font-weight:600;display:flex}.pie-legend-dot{border-radius:50%;width:10px;height:10px}.concept-summary{border-radius:var(--radius);background:linear-gradient(135deg,#7f77dd1a,#1d9e7514);border:1px solid #7f77dd40;margin-top:16px;padding:20px 22px}.concept-summary-label{text-transform:uppercase;letter-spacing:.06em;color:var(--violet);margin-bottom:6px;font-size:.7rem;font-weight:700}.concept-summary-text{font-size:.9rem;line-height:1.65}.quiz-check{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:14px;padding:20px;display:flex}.quiz-header{color:var(--amber);align-items:center;gap:6px;font-size:.85rem;font-weight:700;display:flex}.quiz-question{font-size:.9rem;font-weight:600;line-height:1.45}.quiz-options{flex-direction:column;gap:6px;display:flex}.quiz-opt{border-radius:var(--radius-sm);background:var(--surface2);border:1.5px solid var(--border);width:100%;color:var(--text);text-align:left;transition:all var(--transition);align-items:center;gap:10px;padding:10px 14px;font-size:.85rem;font-weight:500;display:flex}.quiz-opt:hover:not(:disabled){border-color:var(--violet)}.quiz-opt.correct{border-color:var(--teal);background:var(--surface);color:var(--text);font-weight:600}.quiz-opt.wrong{border-color:var(--coral);background:var(--surface);color:var(--text);font-weight:600}.quiz-feedback{border-radius:var(--radius-sm);text-align:center;padding:10px 14px;font-size:.85rem;font-weight:600;animation:.25s slideDown}.quiz-feedback.correct{color:var(--teal);background:#1d9e751f;border:1px solid #1d9e7540}.quiz-feedback.wrong{color:var(--coral);background:#d85a301a;border:1px solid #d85a3040}.bookmark-btn{cursor:pointer;color:var(--muted);transition:all var(--transition);border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.25rem;line-height:1;display:flex}.bookmark-btn:hover{color:var(--coral);background:#d85a3014}.bookmark-btn.bookmarked{color:var(--coral)}.stats-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin-bottom:24px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px 16px}.stat-val{margin-bottom:2px;font-size:2rem;font-weight:900}.stat-label{color:var(--muted);font-size:.8rem;font-weight:500}.cat-bars{flex-direction:column;gap:10px;display:flex}.cat-bar-header{justify-content:space-between;margin-bottom:4px;font-size:.8rem;display:flex}.cat-bar-track{background:var(--surface2);border-radius:3px;height:6px;overflow:hidden}.cat-bar-fill{background:linear-gradient(90deg, var(--violet), var(--teal));border-radius:3px;height:100%;transition:width .8s}.saved-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:14px;display:grid}.saved-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:all var(--transition);flex-direction:column;gap:10px;padding:18px;display:flex}.saved-card:hover{border-color:var(--violet);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.saved-card-concept{color:var(--violet);text-transform:uppercase;letter-spacing:.06em;font-size:.7rem;font-weight:700}.saved-card-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.875rem;font-weight:600;line-height:1.45;display:-webkit-box;overflow:hidden}.saved-card-actions{gap:8px;margin-top:auto;display:flex}.user-input-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-top:24px;padding:22px}.uq-title{margin-bottom:4px;font-size:.95rem;font-weight:700}.uq-sub{color:var(--muted);margin-bottom:14px;font-size:.8rem}.uq-textarea{background:var(--surface2);border:1.5px solid var(--border);border-radius:var(--radius-sm);width:100%;min-height:100px;color:var(--text);resize:vertical;transition:border-color var(--transition);padding:12px 16px;font-size:.9rem}.uq-textarea:focus{border-color:var(--violet)}.uq-actions{gap:10px;margin-top:12px;display:flex}.skeleton{background:linear-gradient(90deg, var(--surface2) 25%, var(--surface3) 50%, var(--surface2) 75%);background-size:200% 100%;border-radius:8px;animation:1.4s infinite shimmer}.skeleton-text{height:14px;margin-bottom:8px}.skeleton-text:last-child{width:65%}.skeleton-box{height:200px}.mascot-wrap{z-index:50;cursor:pointer;-webkit-user-select:none;user-select:none;width:60px;height:60px;position:fixed;bottom:24px;right:24px}.mascot-bubble{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);white-space:nowrap;box-shadow:var(--shadow);white-space:normal;max-width:180px;padding:10px 14px;font-size:.78rem;font-weight:600;line-height:1.4;animation:.2s fadeIn;position:absolute;bottom:70px;right:0}.confetti-container{pointer-events:none;z-index:200;position:fixed;inset:0;overflow:hidden}.confetti-piece{border-radius:2px;width:10px;height:10px;animation:linear forwards confettiFall;position:absolute}.result-flash{z-index:150;border-radius:var(--radius-pill);box-shadow:var(--shadow);padding:14px 28px;font-size:1rem;font-weight:700;animation:.3s toastPop;position:fixed;top:80px;left:50%;transform:translate(-50%)}.result-flash.correct{background:var(--teal);color:#fff}.result-flash.wrong{background:var(--coral);color:#fff}.empty-state{text-align:center;padding:60px 20px}.empty-state .icon{margin-bottom:12px;font-size:3rem}.empty-state .title{margin-bottom:6px;font-size:1.1rem;font-weight:700}.empty-state .sub{color:var(--muted);font-size:.875rem}.last-session-card{border-radius:var(--radius);cursor:pointer;transition:all var(--transition);background:linear-gradient(135deg,#7f77dd1f,#1d9e7514);border:1px solid #7f77dd40;align-items:center;gap:16px;margin-bottom:32px;padding:18px 20px;display:flex}.last-session-card:hover{border-color:var(--violet);transform:translateY(-1px)}.ls-icon{flex-shrink:0;font-size:1.8rem}.ls-body{flex:1}.ls-label{color:var(--violet);text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px;font-size:.7rem;font-weight:700}.ls-title{font-size:.95rem;font-weight:700}.ls-sub{color:var(--muted);margin-top:2px;font-size:.8rem}.ls-arrow{color:var(--muted);font-size:1.2rem}@keyframes shimmer{to{background-position:-200% 0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes wordPop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes toastPop{0%{opacity:0;transform:translate(-50%)scale(.85)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes confettiFall{0%{opacity:1;transform:translateY(-10px)rotate(0)}to{opacity:0;transform:translateY(100vh)rotate(720deg)}}@keyframes varFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes morphSlide{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes storySlideIn{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes svgDraw{0%{stroke-dashoffset:1000px}to{stroke-dashoffset:0}}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes mascotBounce{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes barGrow{0%{height:0}to{height:var(--bar-h)}}@keyframes pieExpand{0%{stroke-dasharray:0 314}to{stroke-dasharray:var(--arc) 314}}@keyframes trainMove{0%{transform:translate(-60px)}to{transform:translate(60px)}}@keyframes shopScale{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.spinner{border:3px solid var(--border);border-top-color:var(--violet);border-radius:50%;width:24px;height:24px;animation:.75s linear infinite spin}@media (width<=640px){.navbar-inner{padding:0 4px}.nav-links .nav-link{display:none}.category-grid,.stats-grid{grid-template-columns:1fr}.anim-controls{gap:6px}.anim-ctrl-right{justify-content:flex-end;width:100%}.practice-layout{grid-template-columns:1fr}.mascot-wrap{width:48px;height:48px;bottom:12px;right:12px}}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-8{gap:8px}.gap-12{gap:12px}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mb-8{margin-bottom:8px}.mb-16{margin-bottom:16px}.text-muted{color:var(--muted)}.text-violet{color:var(--violet)}.text-teal{color:var(--teal)}.text-coral{color:var(--coral)}.text-amber{color:var(--amber)}.font-bold{font-weight:700}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.w-full{width:100%}@media (width<=768px){.page,.page-wide{padding:0 16px 60px!important}.navbar{padding:16px 16px 12px!important}.hero h1{font-size:2.2rem!important}.goal-selector{-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:8px;overflow-x:auto;flex-wrap:nowrap!important;justify-content:flex-start!important}.goal-selector::-webkit-scrollbar{display:none}.goal-btn{white-space:nowrap;flex-shrink:0}.topics-chip-row{-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:8px;overflow-x:auto;flex-wrap:nowrap!important}.topics-chip-row::-webkit-scrollbar{display:none}.topic-chip-btn{white-space:nowrap;flex-shrink:0}}@media (width<=480px){.page,.page-wide{padding:0 12px 60px!important}.navbar{padding:12px 12px 10px!important}.category-grid,.saved-grid,.stats-grid{grid-template-columns:1fr!important}.btn{justify-content:center;width:100%;min-height:44px}}.cat-hero{background:var(--surface2);border:1px solid var(--border);border-radius:16px;align-items:center;gap:18px;margin-bottom:28px;padding:24px 28px;display:flex}.cat-hero-icon{font-size:3rem;line-height:1}.cat-hero-title{color:var(--text);letter-spacing:-.02em;margin-bottom:4px;font-size:1.75rem;font-weight:800}.cat-hero-desc{color:var(--muted);font-size:.9rem;font-weight:500}.cat-hero-cta{flex-shrink:0;margin-left:auto}.topics-section{flex-direction:column;gap:16px;margin-bottom:28px;display:flex}.topics-section-header{margin-bottom:4px}.topics-section-title{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);align-items:center;gap:6px;margin-bottom:4px;font-size:.75rem;font-weight:800;display:flex}.topics-section-sub{color:var(--muted2);font-size:.82rem;font-weight:500}.topics-chip-row{flex-wrap:wrap;gap:8px;display:flex}.topic-chip-btn{background:color-mix(in srgb, var(--chip-accent) 8%, var(--surface));border:1.5px solid color-mix(in srgb, var(--chip-accent) 20%, transparent);color:var(--text);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:7px 14px 7px 6px;font-family:inherit;font-size:.82rem;font-weight:600;transition:all .2s;display:flex}.topic-chip-btn:hover{border-color:var(--chip-accent);background:color-mix(in srgb, var(--chip-accent) 12%, var(--surface));transform:translateY(-1px);box-shadow:0 4px 12px #00000014}.topic-chip-btn.active{background:var(--chip-accent);border-color:var(--chip-accent);color:#fff;box-shadow:0 4px 16px color-mix(in srgb, var(--chip-accent) 40%, transparent)}.topic-chip-num{width:22px;height:22px;color:inherit;background:#0000001f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.65rem;font-weight:800;display:inline-flex}.topic-chip-btn.active .topic-chip-num{background:#ffffff40}.topic-chip-arrow{opacity:.7;margin-left:4px;font-size:.6rem}.topic-detail-panel{background:var(--surface);border:1.5px solid color-mix(in srgb, var(--accent) 35%, var(--border));border-radius:16px;animation:.3s cubic-bezier(.25,.46,.45,.94) slideDown;overflow:hidden}.tdp-header{background:color-mix(in srgb, var(--accent) 6%, var(--surface2));border-bottom:1px solid var(--border);align-items:flex-start;gap:14px;padding:20px 22px 16px;display:flex}.tdp-num{color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.9rem;font-weight:800;display:flex}.tdp-title{color:var(--text);margin-bottom:5px;font-size:1.05rem;font-weight:800}.tdp-desc{color:var(--muted);font-size:.85rem;font-weight:500;line-height:1.55}.tdp-section{border-bottom:1px solid var(--border);padding:20px 22px}.tdp-section-label{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);align-items:center;gap:6px;margin-bottom:16px;font-size:.68rem;font-weight:900;display:inline-flex}.tdp-formulas{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.tdp-formula-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden;box-shadow:0 2px 12px #00000014,0 1px 3px #0000000d}.tdp-formula-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #0000001f,0 2px 6px #0000000f}.tdp-formula-card:before{content:"";background:var(--accent,#7f77dd);width:4px;height:100%;position:absolute;top:0;left:0}.tdp-formula-title{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);border-bottom:1px solid var(--border);background:var(--surface2);padding:9px 14px 6px 18px;font-size:.65rem;font-weight:900}.tdp-formula-body{padding:12px 14px 14px 18px}.beautiful-formula{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.formula-lhs{color:var(--accent,#7f77dd);letter-spacing:-.01em;font-family:Inter,system-ui,sans-serif;font-size:.95rem;font-weight:800;display:inline-block}.formula-equals{color:var(--muted2);padding:0 2px;font-size:1rem;font-weight:700}.formula-rhs{color:var(--text);background:color-mix(in srgb, var(--accent,#7f77dd) 8%, var(--surface2));border:1px solid color-mix(in srgb, var(--accent,#7f77dd) 18%, var(--border));border-radius:6px;padding:4px 10px;font-family:Courier New,Courier,monospace;font-size:.88rem;font-weight:600;display:inline-block}.formula-single{color:var(--text);background:color-mix(in srgb, var(--accent,#7f77dd) 7%, var(--surface2));border:1px solid color-mix(in srgb, var(--accent,#7f77dd) 15%, var(--border));word-break:break-word;border-radius:8px;padding:6px 10px;font-family:Courier New,Courier,monospace;font-size:.88rem;font-weight:700;line-height:1.5}.tdp-example{border:1.5px solid #f59e0b59;border-radius:12px;margin:0 22px 18px;overflow:hidden;box-shadow:0 2px 12px #f59e0b1a}.tdp-example-inner{background:linear-gradient(135deg,#f59e0b0f 0%,#f59e0b05 100%);align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.tdp-example-icon{flex-shrink:0;margin-top:2px;font-size:1.4rem;line-height:1}.tdp-example-content{flex:1}.tdp-example-label{color:var(--amber);text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid #f59e0b4d;width:100%;margin-bottom:5px;padding-bottom:4px;font-size:.62rem;font-weight:900;display:inline-block}.tdp-example-text{color:var(--text);word-break:break-word;font-family:Courier New,monospace;font-size:.88rem;font-weight:700;line-height:1.6}.tdp-cta-row{justify-content:flex-start;padding:14px 22px 18px;display:flex}.teaching-tip-banner{background:color-mix(in srgb, var(--accent) 8%, var(--surface));border:1.5px solid color-mix(in srgb, var(--accent) 30%, transparent);border-radius:12px;padding:16px 20px}.teaching-tip-text{color:var(--text);font-size:.88rem;font-weight:600;line-height:1.65}.uq-header{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.uq-title{color:var(--text);margin-bottom:3px;font-size:1rem;font-weight:800}.practice-bank-header{justify-content:space-between;align-items:center;margin-bottom:14px;scroll-margin-top:80px;display:flex}.practice-count{color:var(--muted);background:var(--surface2);border:1px solid var(--border);border-radius:999px;padding:3px 12px;font-size:.78rem;font-weight:700}.question-item{background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:10px;align-items:center;gap:14px;margin-bottom:8px;padding:15px 16px;transition:border-color .2s,transform .15s,box-shadow .2s;display:flex}.question-item:hover{border-color:var(--violet);transform:translate(3px);box-shadow:0 3px 12px #0000000f}.campus-syllabus-view{margin-top:32px}.syllabus-section{margin-bottom:48px}.syllabus-section-header{align-items:center;gap:12px;margin-bottom:20px;display:flex}.syllabus-section-header h2{color:var(--text);margin:0;font-size:1.5rem;font-weight:700}.syllabus-icon{font-size:1.8rem}.syllabus-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;display:grid}.syllabus-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--transition), box-shadow var(--transition);flex-direction:column;gap:16px;padding:20px;display:flex}.syllabus-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-sm)}.syllabus-card h3{color:var(--text);border-bottom:1px solid var(--border);margin:0;padding-bottom:12px;font-size:1.1rem;font-weight:600}.syllabus-topics{flex-wrap:wrap;gap:8px;display:flex}.syllabus-topic-pill{color:var(--muted);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-pill);cursor:pointer;padding:6px 12px;font-size:.85rem;font-weight:500;transition:all .2s}.syllabus-topic-pill:hover{color:var(--text);border-color:var(--violet);background:#6366f10d}.cp-view{margin-top:32px}.cp-header{margin-bottom:28px}.cp-title{color:var(--text);margin:0 0 6px;font-size:1.6rem;font-weight:700}.cp-subtitle{color:var(--muted);margin:0;font-size:.95rem}.cp-tabs{flex-wrap:wrap;gap:10px;margin-bottom:28px;display:flex}.cp-tab{border-radius:var(--radius-pill);border:2px solid var(--border);background:var(--surface);color:var(--muted);cursor:pointer;align-items:center;gap:8px;padding:10px 18px;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.cp-tab:hover{border-color:var(--tab-color,var(--violet));color:var(--text)}.cp-tab.active{border-color:var(--tab-color,var(--violet));background:var(--surface);color:var(--text);font-weight:700}.cp-tab-icon{font-size:1.1rem}.cp-tab-label{white-space:nowrap}.cp-section-banner{border-radius:var(--radius-lg);color:#fff;align-items:center;gap:16px;margin-bottom:20px;padding:20px 24px;display:flex}.cp-banner-icon{font-size:2.2rem}.cp-banner-title{font-size:1.3rem;font-weight:700}.cp-banner-count{opacity:.85;margin-top:3px;font-size:.85rem}.cp-subcats{flex-direction:column;gap:12px;display:flex}.cp-subcat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color .2s;overflow:hidden}.cp-subcat-card.open{border-color:var(--border-hover)}.cp-subcat-header{cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:16px 20px;display:flex}.cp-subcat-left{align-items:center;gap:12px;display:flex}.cp-subcat-icon{font-size:1.2rem}.cp-subcat-name{color:var(--text);font-size:1rem;font-weight:600}.cp-subcat-count{color:var(--muted);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-pill);padding:2px 10px;font-size:.78rem;font-weight:500}.cp-chevron{color:var(--muted);font-size:1.4rem;font-weight:300;line-height:1;transition:transform .25s;transform:rotate(90deg)}.cp-chevron.up{transform:rotate(-90deg)}.cp-topics-grid{border-top:1px solid var(--border);flex-wrap:wrap;gap:8px;padding:4px 20px 20px;display:flex}.cp-topic-btn{color:var(--muted);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-pill);cursor:pointer;align-items:center;gap:7px;padding:7px 14px;font-size:.85rem;font-weight:500;transition:all .2s;display:flex}.cp-topic-btn:hover{color:var(--tab-color,var(--violet));border-color:var(--tab-color,var(--violet));background:color-mix(in srgb, var(--tab-color,var(--violet)) 8%, transparent)}.cp-topic-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}@media (width<=640px){.cp-tabs{gap:8px}.cp-tab{padding:8px 14px;font-size:.83rem}.cp-section-banner{padding:16px 18px}.cp-banner-icon{font-size:1.8rem}.cp-banner-title{font-size:1.1rem}.cp-subcat-header{padding:14px 16px}.cp-topics-grid{padding:4px 16px 16px}}.topic-page{max-width:820px;margin:0 auto}.topic-back-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin-bottom:24px;padding:6px 0;font-size:.9rem;font-weight:500;transition:color .2s;display:inline-flex}.topic-back-btn:hover{color:var(--text)}.topic-hero{background:color-mix(in srgb, var(--topic-color) 10%, var(--surface));border:1px solid color-mix(in srgb, var(--topic-color) 25%, var(--border));border-radius:var(--radius-lg);align-items:center;gap:20px;margin-bottom:36px;padding:28px;display:flex}.topic-hero-icon{background:color-mix(in srgb, var(--topic-color) 18%, transparent);border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;font-size:2.8rem;display:flex}.topic-hero-title{color:var(--text);margin:0 0 6px;font-size:1.7rem;font-weight:800}.topic-hero-tagline{color:var(--muted);margin:0;font-size:1rem}.topic-section{margin-bottom:36px}.topic-section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);border-bottom:1px solid var(--border);margin-bottom:14px;padding-bottom:8px;font-size:.78rem;font-weight:700}.topic-description{color:var(--text);margin:0;font-size:1rem;line-height:1.8}.topic-facts-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;display:grid}.topic-fact-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:14px 16px}.fact-label{color:var(--muted);margin-bottom:4px;font-size:.8rem;font-weight:700}.fact-value{color:var(--text);font-size:.9rem;font-weight:500}.topic-formulas{flex-direction:column;gap:14px;display:flex}.topic-formula-card{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--topic-color);border-radius:var(--radius-md);padding:16px 18px}.formula-title{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:.8rem;font-weight:700}.formula-expr{color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:10px 14px;font-family:Courier New,monospace;font-size:1.05rem;font-weight:700}.formula-example{color:var(--muted);margin-top:10px;font-size:.88rem}.formula-example-label{color:var(--text);font-weight:700}.topic-identify-list{flex-direction:column;gap:10px;display:flex}.identify-item{color:var(--text);align-items:flex-start;gap:10px;font-size:.95rem;line-height:1.6;display:flex}.identify-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:7px}.topic-approach-steps{flex-direction:column;gap:12px;display:flex}.approach-step{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);align-items:flex-start;gap:14px;padding:14px 18px;display:flex}.approach-num{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.85rem;font-weight:800;display:flex}.approach-tip{color:var(--text);padding-top:3px;font-size:.95rem;line-height:1.6}.user-question-form{flex-direction:column;gap:12px;display:flex}.user-question-input{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-md);width:100%;color:var(--text);resize:vertical;box-sizing:border-box;padding:14px 16px;font-family:inherit;font-size:.95rem;transition:border-color .2s}.user-question-input:focus{border-color:var(--tab-color,var(--violet));outline:none}.user-question-input::placeholder{color:var(--muted)}.user-question-submit{background:var(--tab-color,var(--violet));color:#fff;border-radius:var(--radius-pill);cursor:pointer;border:none;align-self:flex-start;padding:12px 24px;font-size:.95rem;font-weight:600;transition:opacity .2s}.user-question-submit:disabled{opacity:.4;cursor:not-allowed}.user-question-submit:not(:disabled):hover{opacity:.88}.user-question-thanks{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text);align-items:flex-start;gap:14px;padding:18px;font-size:.95rem;display:flex}.user-question-thanks p{color:var(--muted);margin:4px 0 0}.coming-soon-banner{background:var(--surface);border:1.5px dashed var(--border);border-radius:var(--radius-lg);color:var(--muted);align-items:center;gap:16px;padding:24px;display:flex}.cs-icon{font-size:2rem}.coming-soon-banner strong{color:var(--text)}.coming-soon-banner p{margin:6px 0 0;font-size:.9rem}.topic-not-found{text-align:center;color:var(--muted);padding:80px 24px}.topic-not-found h2{color:var(--text);margin:16px 0 8px;font-size:1.5rem}@media (width<=640px){.topic-hero{flex-direction:column;align-items:flex-start;gap:14px;padding:20px}.topic-hero-title{font-size:1.4rem}.topic-facts-grid{grid-template-columns:1fr}}.demo-section{max-width:900px;margin:60px auto;padding:0 20px}.demo-header{text-align:center;flex-direction:column;align-items:center;margin-bottom:36px;display:flex}.demo-badge{color:var(--violet);text-transform:uppercase;letter-spacing:1px;background:#8b5cf626;border:1px solid #8b5cf64d;border-radius:20px;margin-bottom:16px;padding:6px 14px;font-size:.85rem;font-weight:700}.demo-header h2{color:var(--text);letter-spacing:-.5px;margin:0 0 12px;font-size:2.2rem;font-weight:800}.demo-header p{color:var(--muted);max-width:600px;margin:0;font-size:1.15rem;line-height:1.6}.demo-container{background:var(--surface);border:1px solid var(--border);border-radius:24px;padding:32px;position:relative;overflow:hidden;box-shadow:0 20px 40px -10px #0003,inset 0 0 0 1px #ffffff0d}.demo-question-box{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:16px;margin-bottom:32px;padding:20px 24px;font-size:1.05rem;line-height:1.6;position:relative;box-shadow:inset 0 2px 10px #0000001a}.q-label{background:var(--violet);color:#fff;text-transform:uppercase;letter-spacing:.5px;border-radius:8px;padding:4px 10px;font-size:.75rem;font-weight:700;position:absolute;top:-12px;left:20px}.demo-question-box strong{color:var(--violet);font-weight:700}.demo-arena{background:var(--bg);border:1px solid var(--border);border-radius:16px;flex-direction:column;justify-content:center;align-items:center;height:340px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 40px #0003}.demo-grid-bg{background-image:linear-gradient(to right, var(--border) 1px, transparent 1px), linear-gradient(to bottom, var(--border) 1px, transparent 1px);opacity:.3;background-size:40px 40px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000 40%,#0000 80%);mask-image:radial-gradient(circle,#000 40%,#0000 80%)}.track-line{z-index:1;background:#334155;border-radius:4px;height:8px;position:absolute;top:40%;left:5%;right:5%;transform:translateY(-50%);box-shadow:0 4px 6px #0000004d}.track-ties{opacity:.5;background-image:linear-gradient(90deg,#0000 50%,#1e293b 50%);background-size:20px 10px;position:absolute;inset:0}.train{z-index:10;flex-direction:column;align-items:center;display:flex;position:absolute;top:40%;transform:translateY(-70%)}.train-icon{background:var(--surface);border:2px solid var(--violet);color:var(--text);white-space:nowrap;border-radius:12px;align-items:center;gap:8px;padding:8px 16px;display:flex;box-shadow:0 8px 16px #0000004d}.train-emoji{font-size:1.6rem}.train-name{font-size:.95rem;font-weight:700}.train-b .train-icon{border-color:var(--coral)}.train-speed{color:var(--text);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;border:1px solid #ffffff1a;border-radius:6px;align-items:center;gap:6px;margin-top:10px;padding:4px 10px;font-size:.85rem;font-weight:700;display:flex}.train-speed span{color:var(--violet)}.train-b .train-speed span{color:var(--coral)}.distance-indicator{z-index:5;flex-direction:column;align-items:center;display:flex;position:absolute;top:15%;left:15%;right:15%}.dist-line{background:dashed 2px var(--muted);width:100%;height:2px;position:relative}.dist-line:before,.dist-line:after{content:"";background:var(--muted);width:2px;height:10px;position:absolute;top:-4px}.dist-line:before{left:0}.dist-line:after{right:0}.dist-text{background:var(--surface2);color:var(--text);border:1px solid var(--border);border-radius:12px;padding:6px 16px;font-size:.95rem;font-weight:700;transform:translateY(-50%);box-shadow:0 4px 12px #0003}.meet-point{background:var(--amber);color:#000;z-index:12;border-radius:12px;padding:8px 16px;font-size:1.2rem;font-weight:900;position:absolute;top:40%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 30px #f59e0b99}.demo-explanations{z-index:15;justify-content:center;gap:20px;display:flex;position:absolute;bottom:24px;left:24px;right:24px}.expl-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1e293bd9;border:1px solid #ffffff1a;border-radius:16px;flex:1;align-items:flex-start;gap:16px;max-width:320px;padding:16px;display:flex;box-shadow:0 10px 25px #0000004d}[data-theme=light] .expl-card{border-color:var(--border);background:#ffffffe6}.expl-icon{background:var(--surface2);border:1px solid var(--border);border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.2rem;display:flex}.expl-content{flex:1}.expl-label{text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-size:.8rem;font-weight:700}.expl-math{color:var(--text);font-size:1.1rem;font-weight:600}.expl-math strong{color:var(--teal);font-size:1.2rem}.expl-note{color:var(--muted);margin-top:6px;font-size:.8rem;line-height:1.4}.final-answer{background:linear-gradient(135deg, var(--teal), #0f766e);color:#fff;z-index:20;text-align:center;border:1px solid #fff3;border-radius:20px;padding:16px 32px;position:absolute;top:15%;left:50%;transform:translate(-50%);box-shadow:0 15px 35px #14b8a666}.answer-label{text-transform:uppercase;letter-spacing:1px;opacity:.9;margin-bottom:4px;font-size:.85rem;font-weight:700}.answer-value{font-size:2rem;font-weight:900}.demo-controls{justify-content:center;gap:16px;margin-top:32px;display:flex}.demo-ctrl-btn{background:var(--surface);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:12px;align-items:center;gap:8px;padding:12px 24px;font-size:1rem;font-weight:600;transition:all .2s;display:flex}.demo-ctrl-btn:hover:not(:disabled){background:var(--surface2);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.demo-ctrl-btn.primary{background:var(--violet);color:#fff;border-color:var(--violet)}.demo-ctrl-btn.primary:hover:not(:disabled){background:var(--violet-dim)}.demo-ctrl-btn:disabled{opacity:.5;cursor:not-allowed}.demo-cta-overlay{z-index:30;background:#0f1115b3;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}[data-theme=light] .demo-cta-overlay{background:#fffc}.demo-cta-content{background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:24px;flex-direction:column;align-items:center;width:90%;max-width:500px;padding:40px;display:flex;box-shadow:0 25px 50px -12px #00000080}.demo-cta-icon{margin-bottom:16px;font-size:3rem}.demo-cta-content h3{color:var(--text);margin:0 0 16px;font-size:1.8rem;font-weight:800}.demo-cta-content p{color:var(--muted);margin:0 0 32px;font-size:1.05rem;line-height:1.6}.demo-cta-buttons{justify-content:center;gap:16px;width:100%;margin-bottom:24px;display:flex}.demo-cta-buttons .goal-btn{flex:1;padding:14px 24px;font-size:1.05rem}.replay-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;font-size:.95rem;font-weight:600;transition:color .2s}.replay-btn:hover{color:var(--text)}@media (width<=768px){.demo-explanations{flex-direction:column;align-items:center;bottom:16px}.expl-card{width:100%;max-width:100%;padding:12px}.train-icon{padding:6px 12px}.train-emoji{font-size:1.2rem}.demo-arena{height:420px}.track-line,.train,.meet-point{top:25%}.final-answer{top:45%}}.ai-solver{flex-direction:column;gap:0;display:flex}.ai-solver-input-wrap{position:relative}.ai-solver-textarea{box-sizing:border-box;background:var(--bg);border:2px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text);resize:vertical;outline:none;padding:14px 16px;font-family:inherit;font-size:.95rem;line-height:1.6;transition:border-color .2s,box-shadow .2s}.ai-solver-textarea:focus{border-color:var(--violet);box-shadow:0 0 0 3px #3b82f61f}.ai-solver-textarea::placeholder{color:var(--muted)}.ai-solver-error{border-radius:var(--radius);color:var(--coral);background:#ef444414;border:1px solid #ef444440;align-items:flex-start;gap:8px;padding:12px 16px;font-size:.88rem;display:flex}.ai-solver-submit{background:var(--solver-color,var(--violet));color:#fff;border-radius:var(--radius-pill);cursor:pointer;box-shadow:0 4px 14px -4px color-mix(in srgb, var(--solver-color,var(--violet)) 50%, transparent);border:none;justify-content:center;align-self:flex-start;align-items:center;gap:8px;padding:12px 24px;font-size:.95rem;font-weight:700;transition:all .2s;display:flex}.ai-solver-submit:hover:not(:disabled){box-shadow:0 6px 20px -4px color-mix(in srgb, var(--solver-color,var(--violet)) 60%, transparent);transform:translateY(-1px)}.ai-solver-loading{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;flex-direction:column;align-items:center;gap:16px;padding:40px 24px;display:flex}.ai-thinking-dots{gap:8px;display:flex}.ai-thinking-dots span{background:var(--violet);border-radius:50%;width:10px;height:10px;animation:1.4s ease-in-out infinite ai-dot-bounce}.ai-thinking-dots span:nth-child(2){background:var(--teal);animation-delay:.2s}.ai-thinking-dots span:nth-child(3){background:var(--amber);animation-delay:.4s}@keyframes ai-dot-bounce{0%,80%,to{opacity:.5;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}.ai-thinking-text{color:var(--text);margin:0;font-size:1rem;font-weight:600}.ai-question-preview{color:var(--muted);max-width:400px;font-size:.82rem;font-style:italic}.ai-solver-result{flex-direction:column;gap:20px;display:flex}.ai-result-meta{flex-wrap:wrap;gap:8px;display:flex}.ai-meta-tag{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface2);color:var(--text);padding:4px 12px;font-size:.78rem;font-weight:600}.ai-diff-easy{color:var(--teal);background:#14b8a61a;border-color:#14b8a64d}.ai-diff-medium{color:var(--amber);background:#f59e0b1a;border-color:#f59e0b4d}.ai-diff-hard{color:var(--coral);background:#ef44441a;border-color:#ef44444d}.ai-result-question{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);align-items:flex-start;gap:12px;padding:16px;display:flex}.ai-result-q-label{background:var(--violet);color:#fff;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.8rem;font-weight:800;display:flex}.ai-result-question p{color:var(--text);margin:0;font-size:.95rem;line-height:1.6}.ai-result-options{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.ai-option{border:1.5px solid var(--border);border-radius:var(--radius);background:var(--surface2);color:var(--text);align-items:center;gap:10px;padding:10px 14px;font-size:.88rem;transition:all .2s;display:flex;position:relative}.ai-option-correct{border-color:var(--teal);background:#14b8a614}.ai-option-key{background:var(--surface3,var(--border));width:22px;height:22px;color:var(--muted);border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:800;display:flex}.ai-option-correct .ai-option-key{background:var(--teal);color:#fff}.ai-option-tick{color:var(--teal);margin-left:auto;font-size:1rem;font-weight:800}.ai-animation-wrap{border-radius:var(--radius-lg);border:1px solid var(--border);overflow:hidden}.ai-final-answer{background:linear-gradient(135deg, color-mix(in srgb, var(--solver-color,var(--violet)) 12%, transparent), color-mix(in srgb, var(--solver-color,var(--violet)) 4%, transparent));border:2px solid color-mix(in srgb, var(--solver-color,var(--violet)) 35%, transparent);border-radius:var(--radius-lg);align-items:center;gap:16px;padding:20px 24px;animation:.5s cubic-bezier(.34,1.56,.64,1) both popIn;display:flex}.ai-final-icon{flex-shrink:0;font-size:2rem}.ai-final-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:4px;font-size:.78rem;font-weight:700}.ai-final-value{color:var(--text);font-size:1.15rem;font-weight:800}.ai-concept-tip{border-radius:var(--radius);color:var(--text);background:#f59e0b0f;border:1px solid #f59e0b33;align-items:flex-start;gap:10px;padding:14px 16px;font-size:.88rem;line-height:1.6;display:flex}.ai-concept-tip span:first-child{flex-shrink:0;font-size:1.1rem}.ai-followup{flex-direction:column;gap:10px;display:flex}.ai-followup-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:700}.ai-followup-list{flex-direction:column;gap:8px;display:flex}.ai-followup-btn{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);text-align:left;color:var(--text);cursor:pointer;padding:12px 16px;font-size:.88rem;line-height:1.5;transition:all .2s}.ai-followup-btn:hover{border-color:var(--violet);background:var(--bg);transform:translate(4px)}.ai-solver-reset{color:var(--muted);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;align-self:flex-start;padding:8px 0;font-size:.88rem;text-decoration:underline;transition:color .2s}.ai-solver-reset:hover{color:var(--text)}@media (width<=640px){.ai-result-options{grid-template-columns:1fr}.ai-solver-submit{justify-content:center;width:100%}}.ai-option-clickable{cursor:pointer}.ai-option-clickable:hover{border-color:var(--violet);background:var(--bg);transform:translateY(-1px)}.ai-option-disabled{opacity:.6;filter:grayscale();pointer-events:none}.ai-option-wrong{border-color:var(--coral);background:#ef444414}.ai-option-wrong .ai-option-key{background:var(--coral);color:#fff}.ai-option-cross{color:var(--coral);margin-left:auto;font-size:1.1rem;font-weight:800}.ai-selection-feedback{border-radius:var(--radius);text-align:center;margin-top:8px;padding:16px}.ai-selection-feedback.correct{background:#14b8a61a;border:1px solid #14b8a64d}.ai-selection-feedback.wrong{background:#ef444414;border:1px solid #ef444440}.feedback-message{color:var(--text);margin-bottom:4px;font-size:1.1rem;font-weight:700}.ai-selection-feedback.correct .feedback-message{color:var(--teal)}.ai-selection-feedback.wrong .feedback-message{color:var(--coral)}.home-search-container{text-align:left;width:100%;max-width:600px;margin:32px auto 0;position:relative}.home-search-box{background:var(--surface2);border:2px solid var(--border);border-radius:var(--radius-pill);align-items:center;gap:12px;padding:14px 20px;transition:all .2s;display:flex}.home-search-box.focused{border-color:var(--violet);background:var(--bg);box-shadow:0 4px 20px #6366f126}.home-search-box .search-icon{color:var(--muted);font-size:1.2rem}.home-search-box input{color:var(--text);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:1rem}.home-search-box input::placeholder{color:var(--muted)}.home-search-dropdown{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-lg);z-index:100;padding:8px;animation:.2s slideDown;position:absolute;top:calc(100% + 8px);left:0;right:0;box-shadow:0 10px 40px #0003}.search-result-item{border-radius:var(--radius);cursor:pointer;align-items:center;gap:12px;padding:12px 16px;transition:all .2s;display:flex}.search-result-item:hover{background:#6366f11a}.search-result-item .sr-icon{font-size:1.4rem}.search-result-item .sr-title{color:var(--text);font-size:1rem;font-weight:600}.search-no-results{text-align:center;color:var(--muted);padding:16px;font-size:.95rem}.btn-ask-ai{color:var(--violet);cursor:pointer;background:linear-gradient(135deg,#7c3aed1f,#14b8a61f);border:1px solid #7c3aed4d;border-radius:20px;align-items:center;gap:6px;margin-left:4px;padding:6px 14px;font-size:.85rem;font-weight:700;transition:all .2s;display:inline-flex}.btn-ask-ai.active{background:linear-gradient(135deg, var(--violet), var(--teal));color:#fff;border-color:#0000;box-shadow:0 4px 14px #7c3aed59}.btn-google{background:var(--surface);color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:20px;align-items:center;gap:8px;margin-left:8px;padding:6px 14px;font-size:.85rem;font-weight:700;transition:all .2s;display:inline-flex}.btn-google:hover{background:var(--surface3)}.nav-profile-wrapper{align-items:center;gap:6px;margin-left:8px;display:inline-flex}.btn-profile{cursor:pointer;color:inherit;background:0 0;border:none;border-radius:999px;align-items:center;gap:6px;padding:4px 8px 4px 4px;text-decoration:none;transition:background .2s;display:inline-flex}.btn-profile:hover{background:var(--surface2)}.profile-username{color:var(--text);pointer-events:none;font-size:.85rem;font-weight:700}.btn-theme-toggle{color:var(--text);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;margin-left:8px;transition:background .2s;display:flex}.btn-theme-toggle:hover{background:var(--surface2)}.ai-solver-form{flex-direction:column;gap:16px;display:flex}.ai-solver-input-container{align-items:flex-start;gap:12px;display:flex}.ai-solver-input-wrap{flex-direction:column;flex:1;display:flex;position:relative}.ai-solver-textarea{background:var(--surface);border:2px solid var(--border);border-radius:var(--radius);width:100%;min-height:120px;color:var(--text);resize:vertical;transition:border-color var(--transition);padding:14px 16px 36px;font-size:1rem}.ai-solver-textarea:focus{border-color:var(--violet)}.ai-solver-hint{color:var(--muted);pointer-events:none;font-size:.75rem;position:absolute;bottom:12px;right:16px}.ai-solver-upload-wrap{flex-direction:column;gap:10px;display:flex}.ai-solver-upload-btn{background:var(--card-bg,#ffffff0d);border:1px solid var(--border);width:48px;height:48px;color:var(--text-sec);cursor:pointer;box-shadow:none;border-radius:12px;justify-content:center;align-items:center;transition:all .2s;display:flex}.ai-solver-upload-btn.has-image{background:var(--violet);color:#fff;box-shadow:0 4px 12px #7c3aed4d}.ai-solver-submit{border-radius:var(--radius);background:linear-gradient(135deg, var(--violet), var(--teal));color:#fff;cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px;font-size:1rem;font-weight:800;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 4px 12px #7c3aed4d}.ai-solver-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #7c3aed66}.ai-solver-submit:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.profile-hero-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:20px;margin-bottom:20px;overflow:hidden}.profile-hero-banner{background:linear-gradient(135deg, var(--violet), #6d28d9);height:100px}.profile-hero-content{align-items:center;gap:20px;padding:0 28px 24px;display:flex}.profile-hero-avatar-wrap{margin-top:-48px}.profile-hero-avatar-img{border:4px solid var(--surface);object-fit:cover;border-radius:50%;flex-shrink:0;width:96px;height:96px;display:block;box-shadow:0 4px 16px #00000026}.profile-hero-avatar-fallback{background:linear-gradient(135deg, var(--violet), #6d28d9);border:4px solid var(--surface);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:96px;height:96px;font-size:2.5rem;font-weight:800;display:flex;box-shadow:0 4px 16px #00000026}.profile-hero-text{padding-top:8px}.profile-hero-name{color:var(--text);margin:0 0 6px;font-size:1.6rem;font-weight:900;line-height:1.2}.profile-hero-username{color:var(--violet);margin:0;font-size:1rem;font-weight:600}.setting-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 0;display:flex}.setting-row:last-child{border-bottom:none}.setting-info{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.setting-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;display:flex}.setting-title{color:var(--text);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.88rem;font-weight:700;overflow:hidden}.setting-desc{color:var(--muted2);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.75rem;overflow:hidden}.setting-edit-group{flex:1;justify-content:flex-end;align-items:center;gap:8px;margin-left:16px;display:flex}.setting-edit-actions{align-items:center;gap:8px;display:flex}.setting-select{border:1px solid var(--border);background:var(--surface2);color:var(--text);cursor:pointer;border-radius:20px;padding:6px 12px;font-size:.78rem;font-weight:700}.profile-photo-preview{object-fit:cover;border:2px solid var(--violet);border-radius:50%;flex-shrink:0;width:36px;height:36px}@media (width<=640px){.nav-brand{gap:6px;font-size:1.1rem}.nav-logo{height:36px}.btn-ask-ai{margin-left:0;padding:6px 10px}.btn-ask-ai .btn-text{display:none}.btn-google{margin-left:4px;padding:6px 10px}.btn-google .btn-text{display:none}.btn-profile{padding:4px}.profile-username{display:none}.btn-theme-toggle{width:28px;height:28px;margin-left:4px}.ai-solver-input-container{flex-direction:column;gap:8px}.ai-solver-textarea{min-height:100px;padding-bottom:50px;font-size:.95rem}.desktop-only-hint{display:none!important}.ai-solver-submit{padding:12px;font-size:.95rem}.profile-hero-content{flex-direction:column;align-items:flex-start;gap:12px;padding:0 20px 24px}.profile-hero-avatar-wrap{margin-top:-36px}.profile-hero-avatar-img,.profile-hero-avatar-fallback{border-width:3px;width:72px;height:72px;font-size:2rem}.profile-hero-name{font-size:1.3rem}.setting-row{flex-direction:column;align-items:flex-start;gap:12px}.setting-info{width:100%}.setting-edit-group{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:12px;width:100%;margin-left:0}.setting-edit-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.setting-edit-actions>button{text-align:center;flex:1;justify-content:center}.setting-select{width:100%}.setting-row>button{text-align:center;justify-content:center;width:100%}}@media (width<=768px){.page,.page-wide{padding:0 14px 80px}.navbar{max-width:100%;padding:12px 14px 10px}.navbar-inner{gap:6px;height:52px}.nav-brand{gap:6px;font-size:1rem}.nav-logo{height:32px}.nav-links{gap:4px}.nav-links .nav-link{display:none}.btn-ask-ai{margin-left:0;padding:5px 10px;font-size:.8rem}.btn-ask-ai .btn-text{display:none}.btn-google{margin-left:4px;padding:5px 10px;font-size:.8rem}.btn-google .btn-text{display:none}.btn-profile{padding:3px}.profile-username{display:none}.btn-theme-toggle{width:28px;height:28px;margin-left:4px;font-size:.85rem}.hero{padding:32px 0 24px}.hero h1{font-size:clamp(1.6rem,7vw,2.4rem)}.hero p{padding:0 4px;font-size:.95rem}.hero-badge{font-size:.75rem}.home-search-container{margin:20px auto 0;padding:0 2px}.home-search-box{gap:8px;padding:11px 14px}.home-search-box input{font-size:.88rem}.goal-selector{gap:8px;margin-bottom:32px}.goal-btn{padding:8px 14px;font-size:.8rem}.section-header{margin-bottom:14px}.section-title{font-size:1rem}.category-grid{grid-template-columns:1fr;gap:10px;margin-bottom:28px}.category-card{padding:14px 12px}.cat-icon{margin-bottom:6px;font-size:1.3rem}.cat-name{font-size:.82rem}.cat-meta{font-size:.68rem}.profile-stats-grid{grid-template-columns:1fr!important;gap:10px!important}.profile-section-card{box-sizing:border-box!important;border-radius:14px!important;width:100%!important;padding:16px!important;overflow:hidden!important}.profile-hero-banner{height:80px}.profile-hero-content{flex-direction:column;align-items:flex-start;gap:8px;padding:0 16px 20px}.profile-hero-avatar-wrap{margin-top:-32px}.profile-hero-avatar-img,.profile-hero-avatar-fallback{border-width:3px;width:68px;height:68px;font-size:1.8rem}.profile-hero-name{margin-bottom:2px;font-size:1.2rem}.profile-hero-username{font-size:.9rem}.profile-hero-card,[style*="borderRadius: 20"]{border-radius:14px!important}.setting-row{flex-direction:column;align-items:flex-start;gap:10px;padding:12px 0}.setting-info{width:100%}.setting-edit-group{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:10px;width:100%;margin-left:0}.setting-edit-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.setting-edit-actions>button{text-align:center;flex:1;justify-content:center}.setting-select{width:100%}.setting-row>button{text-align:center;justify-content:center;width:100%}.saved-grid{grid-template-columns:1fr}.topic-hero{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:24px;padding:18px}.topic-hero-icon{border-radius:12px;width:52px;height:52px;font-size:2.2rem}.topic-hero-title{font-size:1.3rem}.topic-hero-tagline{font-size:.88rem}.topic-facts-grid{grid-template-columns:1fr;gap:8px}.topic-section{margin-bottom:24px}.cat-hero{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:20px;padding:18px}.cat-hero-icon{font-size:2.2rem}.cat-hero-title{font-size:1.4rem}.cat-hero-cta{width:100%;margin-left:0}.cat-hero-cta button,.cat-hero-cta a{width:100%}.topics-chip-row{gap:6px}.topic-chip-btn{padding:6px 10px 6px 5px;font-size:.78rem}.tdp-header{padding:16px 16px 12px}.tdp-section{padding:16px}.tdp-formulas{grid-template-columns:1fr;gap:10px}.tdp-example{margin:0 16px 14px}.tdp-cta-row{padding:12px 16px 14px}.practice-layout{grid-template-columns:1fr;gap:16px;padding-top:16px}.question-card{padding:20px 16px}.qc-question{font-size:.95rem}.option-btn{padding:11px 14px;font-size:.85rem}.ai-solver-input-container{flex-direction:column;gap:8px}.ai-solver-textarea{min-height:96px;padding-bottom:50px;font-size:.9rem}.desktop-only-hint{display:none!important}.ai-solver-submit{justify-content:center;width:100%;padding:12px;font-size:.95rem}.ai-result-options{grid-template-columns:1fr;gap:8px}.ai-final-answer{gap:12px;padding:16px}.ai-final-icon{font-size:1.5rem}.ai-final-value{font-size:1rem}.stats-grid{grid-template-columns:1fr;gap:10px;margin-bottom:16px}.stat-card{padding:14px 12px}.stat-val{font-size:1.6rem}.stat-label{font-size:.72rem}.last-session-card{gap:12px;margin-bottom:24px;padding:14px 16px}.ls-icon{font-size:1.4rem}.ls-title{font-size:.9rem}.ls-sub{font-size:.75rem}.hint-panel{padding:16px}.hint-actions{flex-direction:column;gap:6px}.hint-actions .btn{justify-content:center;width:100%}.anim-header{flex-wrap:wrap;gap:6px;padding:12px 14px}.anim-stage{min-height:220px;padding:16px 12px}.anim-controls{flex-wrap:wrap;gap:6px;padding:10px 14px}.anim-ctrl-right{justify-content:flex-end;width:100%}.step-info{padding:12px 14px}.cp-tabs{gap:6px}.cp-tab{padding:8px 12px;font-size:.8rem}.cp-tab-label{display:none}.cp-section-banner{gap:10px;padding:14px 16px}.cp-banner-icon{font-size:1.6rem}.cp-banner-title{font-size:1rem}.cp-subcat-header{padding:12px 14px}.cp-topics-grid{gap:6px;padding:4px 14px 14px}.syllabus-grid{grid-template-columns:1fr;gap:14px}.question-item{gap:10px;padding:12px 14px}.q-num{border-radius:6px;flex-shrink:0;width:28px;height:28px;font-size:.72rem}.q-text{font-size:.85rem}.mascot-wrap{width:44px;height:44px;bottom:10px;right:10px}.admin-layout-shell{flex-direction:column!important}.admin-sidebar{overflow-x:auto;border-right:none!important;border-bottom:1px solid var(--border)!important;flex-direction:row!important;width:100%!important;height:auto!important}.admin-sidebar-nav{flex-direction:row!important;gap:4px!important;padding:8px!important}.admin-sidebar-bottom{display:none!important}.admin-content-area{padding:16px!important}}@media (width<=400px){.page,.page-wide{padding:0 10px 80px}.navbar{padding:10px 10px 8px}.hero h1{font-size:1.5rem}.category-grid{grid-template-columns:1fr;gap:8px}.category-card{padding:12px 10px}.profile-stats-grid{grid-template-columns:1fr!important;gap:8px!important}.stat-val{font-size:1.4rem}.btn-ask-ai,.btn-google{padding:5px 8px}.profile-hero-avatar-img,.profile-hero-avatar-fallback{width:60px;height:60px}.profile-hero-name{font-size:1.1rem}.topic-hero-title{font-size:1.2rem}}.mobile-menu-toggle{color:var(--text-h);cursor:pointer;background:0 0;border:none;padding:4px;font-size:1.5rem;line-height:1;display:none}@media (width<=850px){.mobile-menu-toggle{justify-content:center;align-items:center;display:flex}.nav-links{background:var(--bg);border-bottom:1px solid var(--border);box-shadow:var(--shadow);z-index:1000;flex-direction:column;padding:24px;position:absolute;top:70px;left:0;right:0;display:none!important}.nav-links.open{display:flex!important}.nav-links>button,.nav-links>a,.nav-profile-wrapper{text-align:left;justify-content:flex-start;width:100%;padding:12px 16px}.nav-links.open .nav-link{display:block!important}.nav-links.open .btn-text,.nav-links.open .profile-username{display:inline-block!important}.nav-links.open .btn-ask-ai,.nav-links.open .btn-google{margin:4px 0!important;font-size:1rem!important}}
