/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--radius-sm:.25rem;--radius-lg:.5rem;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.start{inset-inline-start:var(--spacing)}}:root{--bg:#fff8f0;--bg-card:#fff;--bg-card-hover:#fff0e0;--text:#2d2d2d;--text-muted:#6b6b6b;--text-light:#999;--primary:#3b82f6;--primary-hover:#2563eb;--primary-light:#dbeafe;--success:#22c55e;--success-light:#dcfce7;--warning:#f59e0b;--warning-light:#fef3c7;--error:#ef4444;--error-light:#fee2e2;--purple:#8b5cf6;--pink:#ec4899;--border:#e5e5e5;--border-strong:#d4d4d4;--muted:#d4d4d4;--shadow:0 2px 8px #00000014;--shadow-lg:0 4px 16px #0000001f;--radius:12px;--radius-sm:8px;--radius-lg:16px;--diagram-stroke:#4b5563;--diagram-accent:#3b82f6;--diagram-highlight:#ec4899;--diagram-label:#2d2d2d;--font-main:Arial,"Helvetica Neue",Helvetica,sans-serif;--font-dyslexia:"OpenDyslexic","Comic Sans MS",Arial,sans-serif;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px}.high-contrast{--bg:#1a1a2e;--bg-card:#16213e;--bg-card-hover:#1f2e4d;--text:#f5f5f5;--text-muted:silver;--text-light:#a0a0a0;--primary:#60a5fa;--primary-hover:#93c5fd;--primary-light:#1e3a5f;--success:#4ade80;--success-light:#1a3d2b;--warning:#fbbf24;--warning-light:#3d3518;--error:#f87171;--error-light:#3d1a1a;--border:#374151;--border-strong:#4b5563;--muted:#4b5563;--shadow:0 2px 8px #0000004d;--shadow-lg:0 4px 16px #0006;--diagram-stroke:#d1d5db;--diagram-accent:#60a5fa;--diagram-highlight:#f472b6;--diagram-label:#f5f5f5}html[data-font-size=normal]{font-size:16px}html[data-font-size=large]{font-size:19px}html[data-font-size=xlarge]{font-size:22px}@font-face{font-family:OpenDyslexic;src:url(https://cdn.jsdelivr.net/npm/open-dyslexic@1.0.3/woff/OpenDyslexic-Regular.woff)format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:OpenDyslexic;src:url(https://cdn.jsdelivr.net/npm/open-dyslexic@1.0.3/woff/OpenDyslexic-Bold.woff)format("woff");font-weight:700;font-style:normal;font-display:swap}.dyslexia-font,.dyslexia-font *{font-family:var(--font-dyslexia)!important}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-main);background-color:var(--bg);color:var(--text);letter-spacing:.01em;-webkit-font-smoothing:antialiased;margin:0;padding:0;line-height:1.7}h1,h2,h3,h4{letter-spacing:.02em;line-height:1.3}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}ol,ul{padding-left:1.5em}li{margin-bottom:.4em}strong{font-weight:700}.app-container{max-width:800px;padding:var(--space-md) var(--space-lg);margin:0 auto;padding-top:80px}.header{z-index:100;background:var(--bg-card);border-bottom:2px solid var(--border);box-shadow:var(--shadow);position:fixed;top:0;left:0;right:0}.header-inner{max-width:800px;padding:var(--space-sm) var(--space-lg);justify-content:space-between;margin:0 auto}.header-inner,.header-logo{align-items:center;display:flex}.header-logo{gap:var(--space-sm);color:var(--text);font-size:1.2rem;font-weight:700;text-decoration:none}.header-logo:hover{color:var(--primary);text-decoration:none}.logo-circle{color:var(--primary);font-size:1.6rem}.header-nav-desktop{align-items:center;gap:var(--space-xs);display:none}.nav-link{border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:6px 12px;font-family:inherit;font-size:.85rem;font-weight:600;text-decoration:none;transition:background-color .2s,color .2s;display:flex}.nav-link:hover{background:var(--primary-light);color:var(--primary);text-decoration:none}.mobile-menu-btn{cursor:pointer;color:var(--text);padding:var(--space-sm);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.header-nav-mobile{padding:var(--space-sm) var(--space-lg) var(--space-lg);border-top:1px solid var(--border);flex-direction:column;display:flex}.nav-link-mobile{align-items:center;gap:var(--space-md);padding:var(--space-md);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;width:100%;font-family:inherit;font-size:1rem;font-weight:600;text-decoration:none;display:flex}.nav-link-mobile:hover{background:var(--primary-light);color:var(--primary);text-decoration:none}@media (min-width:768px){.header-nav-desktop{display:flex}.mobile-menu-btn{display:none}.header-nav-mobile{display:none!important}}.hero{text-align:center;padding:var(--space-2xl) 0 var(--space-xl);position:relative}.hero-circle-bg{opacity:.5;color:var(--primary);pointer-events:none;position:absolute;top:0;left:50%;transform:translate(-50%)}.hero-title{margin:0 0 var(--space-md);color:var(--text);font-size:2rem;font-weight:700;position:relative}.hero-subtitle{color:var(--text-muted);margin:0;font-size:1.1rem;position:relative}.quick-actions{gap:var(--space-md);margin-bottom:var(--space-2xl);grid-template-columns:1fr;display:grid}@media (min-width:500px){.quick-actions{grid-template-columns:repeat(3,1fr)}}.quick-action-btn{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-radius:var(--radius);text-align:center;font-size:.95rem;font-weight:700;text-decoration:none;transition:transform .15s,box-shadow .15s;display:flex}.quick-action-btn:hover{box-shadow:var(--shadow-lg);text-decoration:none;transform:translateY(-2px)}.quick-action-btn.quiz{background:var(--primary);color:#fff}.quick-action-btn.help{background:var(--purple);color:#fff}.quick-action-btn.progress{background:var(--success);color:#fff}.quick-action-btn.studyguide{background:var(--pink);color:#fff}.topics-section{margin-bottom:var(--space-2xl)}.section-title{margin:0 0 var(--space-lg);color:var(--text);font-size:1.3rem;font-weight:700}.topics-grid{gap:var(--space-md);display:grid}.topic-card{align-items:flex-start;gap:var(--space-lg);padding:var(--space-lg);background:var(--bg-card);border-radius:var(--radius-lg);border:2px solid var(--border);color:var(--text);text-decoration:none;transition:border-color .2s,transform .15s,box-shadow .15s;display:flex;position:relative}.topic-card:hover{border-color:var(--card-color);box-shadow:var(--shadow-lg);text-decoration:none;transform:translateY(-2px)}.topic-card-icon{color:var(--card-color);flex-shrink:0;margin-top:2px}.topic-card-title{margin:0 0 var(--space-xs);color:var(--text);font-size:1.15rem;font-weight:700}.topic-card-desc{color:var(--text-muted);margin:0;font-size:.9rem;line-height:1.6}.topic-card-badge{top:var(--space-md);right:var(--space-md);background:var(--success);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.85rem;font-weight:700;display:flex;position:absolute}.tip-section{margin-bottom:var(--space-2xl)}.tip-box{background:var(--primary-light);border-left:4px solid var(--primary);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-sm);font-size:.9rem;line-height:1.6}.breadcrumb{margin-bottom:var(--space-lg);justify-content:space-between}.breadcrumb,.breadcrumb-link{align-items:center;display:flex}.breadcrumb-link{gap:var(--space-sm);color:var(--text-muted);font-size:.9rem;font-weight:600;text-decoration:none}.breadcrumb-link:hover{color:var(--primary);text-decoration:none}.page-content{padding-bottom:var(--space-2xl)}.page-title{margin:0 0 var(--space-sm);font-size:1.6rem;font-weight:700}.page-subtitle{color:var(--text-muted);margin:0 0 var(--space-xl);font-size:1rem}.not-found{text-align:center;padding:var(--space-2xl)}.topic-header{background:var(--bg-card);border-radius:var(--radius-lg);padding:var(--space-xl);margin-bottom:var(--space-xl);border-left:5px solid var(--topic-color)}.topic-title{margin:0 0 var(--space-md);font-size:1.5rem;font-weight:700}.topic-key-idea{color:var(--text);margin:0;font-size:1.05rem;font-weight:600;line-height:1.6}.topic-steps{margin-bottom:var(--space-xl)}.step-card{gap:var(--space-lg);padding:var(--space-lg);background:var(--bg-card);border-radius:var(--radius);margin-bottom:var(--space-md);border:1px solid var(--border);display:flex}.step-number{background:var(--primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:36px;min-width:36px;height:36px;font-size:1rem;font-weight:700;display:flex}.step-content{flex:1}.step-title{margin:0 0 var(--space-xs);font-size:1.05rem;font-weight:700}.step-text{color:var(--text);margin:0 0 var(--space-sm);font-size:.95rem;line-height:1.7}.topic-formulas{margin-bottom:var(--space-xl)}.formulas-grid{gap:var(--space-md);display:grid}.formula-card{background:var(--bg-card);border:2px solid var(--primary-light);border-radius:var(--radius);padding:var(--space-lg)}.formula-name{color:var(--primary);margin-bottom:var(--space-xs);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:700}.formula-text{color:var(--text);margin-bottom:var(--space-sm);background:var(--primary-light);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font-size:1.15rem;font-weight:700;display:inline-block}.formula-explanation{color:var(--text-muted);font-size:.9rem;line-height:1.6}.topic-example{margin-bottom:var(--space-xl)}.example-toggle{background:var(--bg-card);border:2px solid var(--border);border-radius:var(--radius);width:100%;padding:var(--space-lg);cursor:pointer;color:var(--text);justify-content:space-between;align-items:center;font-family:inherit;display:flex}.example-toggle:hover{border-color:var(--primary)}.example-content{background:var(--bg-card);border-radius:0 0 var(--radius) var(--radius);padding:var(--space-lg);border:2px solid var(--border);border-top:none}.example-question{padding:var(--space-md);background:var(--warning-light);border-radius:var(--radius-sm);font-size:1rem;line-height:1.7}.example-question,.example-steps{margin-bottom:var(--space-lg)}.example-step{gap:var(--space-sm);padding:var(--space-sm) 0;font-size:.95rem;line-height:1.6;display:flex}.example-step-num{color:var(--primary);min-width:24px;font-weight:700}.example-answer{padding:var(--space-md);background:var(--success-light);border-radius:var(--radius-sm);font-size:1.1rem;font-weight:600}.topic-complete-section{text-align:center;margin-bottom:var(--space-xl);padding:var(--space-lg)}.completed-banner{justify-content:center;align-items:center;gap:var(--space-md);padding:var(--space-lg);background:var(--success-light);border-radius:var(--radius);color:var(--success);font-size:1.1rem;font-weight:700;display:flex}.topic-chat-section{margin-bottom:var(--space-xl)}.chat-toggle-btn{align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);background:var(--purple);color:#fff;border-radius:var(--radius);cursor:pointer;margin-bottom:var(--space-md);border:none;font-family:inherit;font-size:1rem;font-weight:700;transition:background .2s;display:flex}.chat-toggle-btn:hover{background:#7c3aed}.diagram-container{background:var(--bg-card);border:2px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-xl);text-align:center}.diagram-svg{width:100%;max-width:320px;height:auto;margin:0 auto;display:block}.diagram-caption{color:var(--text-muted);margin:var(--space-md) 0 0;font-size:.9rem;font-weight:600;line-height:1.6}.chat-interface{border:2px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);overflow:hidden}.chat-messages{max-height:400px;padding:var(--space-lg);gap:var(--space-md);flex-direction:column;display:flex;overflow-y:auto}.chat-empty{text-align:center;padding:var(--space-xl);color:var(--text-muted)}.chat-message{display:flex}.chat-message.user{justify-content:flex-end}.chat-message.assistant{justify-content:flex-start}.chat-bubble{max-width:85%;padding:var(--space-md) var(--space-lg);border-radius:var(--radius);font-size:.95rem;line-height:1.7;position:relative}.chat-message.user .chat-bubble{background:var(--primary);color:#fff;border-bottom-right-radius:4px}.chat-message.assistant .chat-bubble{background:var(--bg);color:var(--text);border:1px solid var(--border);border-bottom-left-radius:4px}.chat-text{word-wrap:break-word}.chat-thinking{color:var(--text-muted);margin-left:var(--space-sm);font-style:italic}.chat-input-form{gap:var(--space-sm);padding:var(--space-md);border-top:1px solid var(--border);background:var(--bg);display:flex}.chat-input{padding:var(--space-md);border:2px solid var(--border);border-radius:var(--radius-sm);resize:none;background:var(--bg-card);color:var(--text);flex:1;font-family:inherit;font-size:1rem;line-height:1.5}.chat-input:focus{border-color:var(--primary);outline:none}.chat-send-btn{background:var(--primary);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;transition:background .2s;display:flex}.chat-send-btn:hover:not(:disabled){background:var(--primary-hover)}.chat-send-btn:disabled{opacity:.5;cursor:not-allowed}.tts-btn{border:1px solid var(--border);background:var(--bg);width:28px;height:28px;color:var(--text-muted);cursor:pointer;margin-top:var(--space-xs);border-radius:50%;justify-content:center;align-items:center;transition:background .2s,color .2s;display:inline-flex}.tts-btn:hover{background:var(--primary-light);color:var(--primary)}.tts-btn.speaking{background:var(--primary);color:#fff;border-color:var(--primary)}.timer{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);font-size:.85rem;font-weight:600;display:flex}.timer-warning{color:var(--warning);border-color:var(--warning)}.btn{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);border-radius:var(--radius);cursor:pointer;border:none;font-family:inherit;font-size:1rem;font-weight:700;text-decoration:none;transition:background .2s,transform .15s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-success{background:var(--success);color:#fff}.btn-success:hover:not(:disabled){background:#16a34a}.btn-lg{padding:var(--space-lg) var(--space-2xl);font-size:1.1rem}.quiz-finished,.quiz-loading,.quiz-start{text-align:center;padding:var(--space-xl)}.quiz-loading .spin{margin:0 auto var(--space-md);animation:spin 1s linear infinite}.quiz-setup{background:var(--bg-card);border-radius:var(--radius-lg);padding:var(--space-xl);border:2px solid var(--border)}.quiz-setup h2{margin:0 0 var(--space-lg);text-align:center}.quiz-count-options{justify-content:center;gap:var(--space-md);margin-bottom:var(--space-xl);display:flex}.quiz-count-btn{border:3px solid var(--border);border-radius:var(--radius);background:var(--bg-card);width:64px;height:64px;color:var(--text);cursor:pointer;font-family:inherit;font-size:1.3rem;font-weight:700;transition:border-color .2s,background .2s}.quiz-count-btn.active{background:var(--primary-light);color:var(--primary)}.quiz-count-btn.active,.quiz-count-btn:hover{border-color:var(--primary)}.quiz-info{margin-bottom:var(--space-xl);text-align:left}.quiz-info p{margin:0 0 var(--space-sm);color:var(--text-muted)}.quiz-info ul{margin:0}.quiz-info li{color:var(--text);font-weight:600}.quiz-setup .btn{width:100%}.quiz-active{background:var(--bg-card);border-radius:var(--radius-lg);padding:var(--space-xl);border:2px solid var(--border)}.quiz-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.quiz-progress{color:var(--text-muted);font-size:.9rem;font-weight:700}.quiz-progress-bar{background:var(--border);height:8px;margin-bottom:var(--space-lg);border-radius:4px;overflow:hidden}.quiz-progress-fill{background:var(--primary);border-radius:4px;height:100%;transition:width .3s}.quiz-topic-tag{background:var(--primary-light);color:var(--primary);margin-bottom:var(--space-md);border-radius:20px;padding:2px 12px;font-size:.8rem;font-weight:700;display:inline-block}.quiz-question{margin-bottom:var(--space-xl)}.quiz-question p{margin:0 0 var(--space-sm);font-size:1.1rem;font-weight:600;line-height:1.7}.quiz-choices{margin-bottom:var(--space-xl);flex-direction:column}.quiz-choice,.quiz-choices{gap:var(--space-md);display:flex}.quiz-choice{align-items:center;padding:var(--space-md) var(--space-lg);border:2px solid var(--border);border-radius:var(--radius);background:var(--bg-card);cursor:pointer;color:var(--text);text-align:left;font-family:inherit;font-size:1rem;transition:border-color .2s,background .2s}.quiz-choice.selected,.quiz-choice:hover:not(:disabled){border-color:var(--primary)}.quiz-choice.selected{background:var(--primary-light)}.quiz-choice.correct{border-color:var(--success);background:var(--success-light)}.quiz-choice.incorrect{border-color:var(--error);background:var(--error-light)}.choice-letter{background:var(--border);border-radius:50%;justify-content:center;align-items:center;width:36px;min-width:36px;height:36px;font-size:.9rem;font-weight:700;display:flex}.quiz-choice.selected .choice-letter{background:var(--primary);color:#fff}.quiz-choice.correct .choice-letter{background:var(--success);color:#fff}.quiz-choice.incorrect .choice-letter{background:var(--error);color:#fff}.choice-text{flex:1}.choice-icon{flex-shrink:0}.choice-icon.correct{color:var(--success)}.choice-icon.incorrect{color:var(--error)}.quiz-feedback{text-align:left}.feedback-banner{align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-radius:var(--radius);margin-bottom:var(--space-md);font-size:1rem;font-weight:700;display:flex}.feedback-banner.correct{background:var(--success-light);color:var(--success)}.feedback-banner.incorrect{background:var(--error-light);color:var(--error)}.feedback-explanation{color:var(--text);margin-bottom:var(--space-lg);padding:var(--space-md);background:var(--bg);border-radius:var(--radius-sm);font-size:.95rem;line-height:1.7}.quiz-score-big{margin:var(--space-lg) 0 var(--space-sm);font-size:3rem;font-weight:700}.score-number{color:var(--primary)}.score-divider{margin:0 4px}.score-divider,.score-total{color:var(--text-muted)}.score-percent{color:var(--primary);margin:0 0 var(--space-sm);font-size:1.5rem;font-weight:700}.score-time{color:var(--text-muted);margin:0 0 var(--space-md)}.score-message{margin:0 0 var(--space-xl);font-size:1.1rem;font-weight:600}.quiz-review{text-align:left;margin-bottom:var(--space-xl)}.quiz-review h3{margin:0 0 var(--space-md)}.review-item{padding:var(--space-md);background:var(--bg);border-radius:var(--radius-sm);margin-bottom:var(--space-sm)}.review-q{margin:0 0 var(--space-xs);font-size:.9rem}.review-explanation{color:var(--text-muted);margin:0;font-size:.85rem}.help-tips{background:var(--bg-card);border:2px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-xl);margin-bottom:var(--space-xl)}.help-tips h2{margin:0 0 var(--space-md);font-size:1.1rem}.help-tips li{font-size:.95rem;line-height:1.7}.stats-grid{gap:var(--space-md);margin-bottom:var(--space-xl);grid-template-columns:repeat(2,1fr);display:grid}@media (min-width:500px){.stats-grid{grid-template-columns:repeat(4,1fr)}}.stat-card{background:var(--bg-card);border:2px solid var(--border);border-radius:var(--radius);padding:var(--space-lg);text-align:center}.stat-value{color:var(--primary);margin-bottom:var(--space-xs);font-size:1.8rem;font-weight:700}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem;font-weight:600}.progress-section{margin-bottom:var(--space-xl)}.topic-progress-list{gap:var(--space-sm);flex-direction:column;display:flex}.topic-progress-item{align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);text-decoration:none;transition:background .2s;display:flex}.topic-progress-item:hover{background:var(--bg-card-hover);text-decoration:none}.topic-progress-dot{border-radius:50%;flex-shrink:0;width:12px;height:12px}.topic-progress-info{flex:1}.topic-progress-name{font-size:.95rem;font-weight:700}.topic-progress-detail{color:var(--text-muted);font-size:.8rem}.topic-progress-check{color:var(--success);flex-shrink:0}.badges-grid{gap:var(--space-md);grid-template-columns:repeat(2,1fr);display:grid}@media (min-width:500px){.badges-grid{grid-template-columns:repeat(3,1fr)}}.badge-card{background:var(--bg-card);border:2px solid var(--border);border-radius:var(--radius);padding:var(--space-lg);text-align:center}.badge-card.earned{border-color:var(--warning);background:var(--warning-light)}.badge-card.locked{opacity:.5}.badge-icon{margin-bottom:var(--space-sm);color:var(--warning)}.badge-card.locked .badge-icon{color:var(--muted)}.badge-name{margin-bottom:var(--space-xs);font-size:.9rem;font-weight:700}.badge-desc{color:var(--text-muted);font-size:.8rem}.quiz-history-list{gap:var(--space-sm);flex-direction:column;display:flex}.quiz-history-item{padding:var(--space-md) var(--space-lg);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;display:flex}.quiz-history-score{font-weight:700}.quiz-history-time{color:var(--text-muted);font-size:.85rem}.quiz-history-date{color:var(--text-light);font-size:.85rem}.settings-overlay{z-index:200;background:#0006;justify-content:center;align-items:flex-start;padding-top:80px;display:flex;position:fixed;inset:0}.settings-panel{background:var(--bg-card);border-radius:var(--radius-lg);width:90%;max-width:420px;box-shadow:var(--shadow-lg);overflow:hidden}.settings-header{padding:var(--space-lg);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.settings-header h2{margin:0;font-size:1.2rem}.settings-header button{cursor:pointer;color:var(--text-muted);padding:var(--space-xs);background:0 0;border:none}.settings-body{padding:var(--space-md)}.setting-row{padding:var(--space-md);border-radius:var(--radius-sm);cursor:default;justify-content:space-between}.setting-info,.setting-row{align-items:center;display:flex}.setting-info{gap:var(--space-md);color:var(--text)}.setting-name{font-size:.95rem;font-weight:700}.setting-desc{color:var(--text-muted);font-size:.8rem}.toggle-btn{border:2px solid var(--border);background:var(--border);cursor:pointer;border-radius:14px;flex-shrink:0;width:52px;height:28px;padding:0;transition:background .2s,border-color .2s;position:relative}.toggle-btn.active{background:var(--primary);border-color:var(--primary)}.toggle-knob{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:2px;left:2px}.toggle-btn.active .toggle-knob{transform:translate(24px)}.font-size-btns{gap:var(--space-xs);display:flex}.font-size-btn{border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text);cursor:pointer;padding:4px 12px;font-family:inherit;font-size:.85rem;font-weight:700;transition:border-color .2s,background .2s}.font-size-btn.active{border-color:var(--primary);background:var(--primary-light);color:var(--primary)}.text-muted{color:var(--text-muted)}.error-text{color:var(--error);font-weight:600}.step-number-inline{color:var(--primary);font-weight:700}@keyframes spin{to{transform:rotate(1turn)}}.spin{animation:spin 1s linear infinite}:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.studyguide{max-width:850px;padding:var(--space-lg) var(--space-md);margin:0 auto}.studyguide-controls{margin-bottom:var(--space-lg);justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.studyguide-back{align-items:center;gap:var(--space-xs);color:var(--text-muted);font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.studyguide-back:hover{color:var(--primary)}.studyguide-print-btn{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);background:var(--primary);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;font-size:1rem;font-weight:700;transition:background .2s;display:inline-flex}.studyguide-print-btn:hover{background:var(--primary-hover)}.studyguide-cover{text-align:center;padding:var(--space-xl) 0 var(--space-lg);position:relative}.studyguide-cover-circle{color:var(--primary);margin-bottom:var(--space-md);opacity:.4}.studyguide-title{color:var(--text);margin:0 0 var(--space-sm);font-size:2rem;font-weight:800}.studyguide-subtitle{color:var(--text-muted);max-width:500px;margin:0 auto;font-size:1.1rem}.studyguide-quick-ref{margin-bottom:var(--space-xl)}.studyguide-section-title{color:var(--text);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:2px solid var(--border);font-size:1.3rem;font-weight:700}.studyguide-ref-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.studyguide-ref-card{background:var(--bg-card);border:2px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-md);gap:var(--space-xs);flex-direction:column;display:flex}.studyguide-ref-card strong{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.85rem}.studyguide-formula{color:var(--primary);font-size:1.1rem;font-weight:700}.studyguide-topic{margin-bottom:var(--space-xl);page-break-inside:avoid;break-inside:avoid}.studyguide-topic-header{align-items:flex-start;gap:var(--space-md);padding-left:var(--space-md);margin-bottom:var(--space-md);border-left:5px solid;display:flex}.studyguide-topic-number{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.1rem;font-weight:800;display:flex}.studyguide-topic-title{color:var(--text);margin:0;font-size:1.4rem;font-weight:700}.studyguide-topic-desc{color:var(--text-muted);margin:2px 0 0;font-size:.95rem}.studyguide-key-idea{background:var(--warning-light);border-left:4px solid var(--warning);padding:var(--space-md);border-radius:0 var(--radius-sm) var(--radius-sm) 0;margin-bottom:var(--space-md);font-size:.95rem;line-height:1.6}.studyguide-diagram{max-width:320px;margin:0 auto var(--space-md)}.studyguide-concepts h3,.studyguide-example h3,.studyguide-formulas h3{color:var(--text);margin:0 0 var(--space-sm);font-size:1.05rem;font-weight:700}.studyguide-steps{padding-left:var(--space-lg);margin:0 0 var(--space-md);font-size:.95rem;line-height:1.6}.studyguide-formula-list,.studyguide-steps{gap:var(--space-sm);flex-direction:column;display:flex}.studyguide-formula-list{margin-bottom:var(--space-md)}.studyguide-formula-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md)}.studyguide-formula-name{color:var(--text);font-size:.9rem;font-weight:700}.studyguide-formula-expr{color:var(--primary);margin:2px 0;font-size:1.05rem;font-weight:700}.studyguide-formula-expl{color:var(--text-muted);font-size:.85rem}.studyguide-example{background:var(--primary-light);border-radius:var(--radius);padding:var(--space-md)}.studyguide-example-q{margin-bottom:var(--space-sm);font-size:.95rem;line-height:1.5}.studyguide-example-steps{padding-left:var(--space-lg);margin:0 0 var(--space-sm);font-size:.95rem;line-height:1.7}.studyguide-example-a{color:var(--primary);font-size:1.05rem;font-weight:700}.studyguide-footer{text-align:center;padding:var(--space-lg) 0;color:var(--text-muted);border-top:1px solid var(--border);margin-top:var(--space-lg);font-size:.85rem}.dyslexia-font .studyguide{letter-spacing:.02em;word-spacing:.1em;line-height:1.8}.dyslexia-font .studyguide-title{font-size:1.8rem;line-height:1.4}.dyslexia-font .studyguide-subtitle{font-size:1.05rem;line-height:1.7}.dyslexia-font .studyguide-ref-grid{gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.dyslexia-font .studyguide-ref-card{padding:var(--space-md) var(--space-lg);gap:var(--space-sm)}.dyslexia-font .studyguide-ref-card strong{letter-spacing:.05em;font-size:.9rem}.dyslexia-font .studyguide-formula{font-size:1.15rem}.dyslexia-font .studyguide-topic-title{font-size:1.3rem;line-height:1.4}.dyslexia-font .studyguide-topic-desc{margin-top:var(--space-xs);font-size:1rem;line-height:1.7}.dyslexia-font .studyguide-key-idea{padding:var(--space-md) var(--space-lg);font-size:1rem;line-height:1.8}.dyslexia-font .studyguide-steps{gap:var(--space-md);font-size:1rem;line-height:1.8}.dyslexia-font .studyguide-formula-item{padding:var(--space-md)}.dyslexia-font .studyguide-formula-name{font-size:.95rem}.dyslexia-font .studyguide-formula-expr{margin:var(--space-xs) 0;font-size:1.1rem}.dyslexia-font .studyguide-formula-expl{font-size:.9rem;line-height:1.7}.dyslexia-font .studyguide-example{padding:var(--space-lg)}.dyslexia-font .studyguide-example-q{margin-bottom:var(--space-md);font-size:1rem;line-height:1.8}.dyslexia-font .studyguide-example-steps{margin-bottom:var(--space-md);font-size:1rem;line-height:1.9}.dyslexia-font .studyguide-example-a{font-size:1.1rem}.dyslexia-font .studyguide-footer{font-size:.9rem}.dyslexia-font .studyguide-back{font-size:1rem}.dyslexia-font .studyguide-print-btn{padding:var(--space-sm) var(--space-lg);font-size:1.05rem}.dyslexia-font .studyguide-concepts h3,.dyslexia-font .studyguide-example h3,.dyslexia-font .studyguide-formulas h3{margin-bottom:var(--space-md);font-size:1.1rem}@media print{.chat-interface,.chat-toggle-btn,.header,.no-print,.quick-actions,.settings-overlay,.timer,.tts-btn{display:none!important}.app-container{padding-top:0}body{color:#000;background:#fff}.studyguide{max-width:100%;padding:0}.studyguide-cover{padding-top:0}.studyguide-key-idea{background:#fef3c7!important}.studyguide-example,.studyguide-key-idea,.studyguide-topic-number{-webkit-print-color-adjust:exact;print-color-adjust:exact}.studyguide-example{background:#dbeafe!important}.studyguide-ref-card{border:1px solid #ccc}.studyguide-topic{page-break-inside:avoid;break-inside:avoid}}