:root{--font-heading:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-body:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--bg-main:#f8f9fa;--bg-card:#fff;--bg-card-hover:#f1f5f9;--border-color:#e2e8f0;--text-primary:#2d3436;--text-secondary:#64748b;--text-muted:#94a3b8;--accent-primary:#4bcdf0;--accent-glow:#4bcdf01f;--accent-success:#10b981;--accent-info:#ff6b81;--accent-warning:#f59e0b;--accent-error:#ef4444;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000000d, 0 2px 4px -2px #0000000d;--shadow-lg:0 10px 15px -3px #00000014, 0 4px 6px -4px #00000014;--shadow-xl:0 15px 25px -5px #00000014, 0 8px 10px -6px #00000014;--transition-fast:.15s ease;--transition-normal:.25s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--bg-main);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(at 0 0,#4bcdf026 0,#0000 50%),radial-gradient(at 100% 100%,#ff6b811a 0,#0000 50%);background-attachment:fixed;min-height:100vh;overflow-x:hidden}#root{flex-direction:column;min-height:100vh;display:flex}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-main)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 15px #4bcdf01a}50%{box-shadow:0 0 25px #4bcdf04d}}@keyframes voicePulse{0%{opacity:.5;transform:scale(.95)}50%{opacity:.8;transform:scale(1.1)}to{opacity:.5;transform:scale(.95)}}@keyframes slideDown{0%{opacity:0;height:0}to{height:var(--radix-accordion-content-height);opacity:1}}.glass-card{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-md);transition:transform var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal);border-radius:16px}.glass-card:hover{box-shadow:var(--shadow-lg), 0 0 20px #4bcdf01a;border-color:#4bcdf066}.neutral-pill-container{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:9999px;gap:2px;padding:4px;display:inline-flex}.neutral-pill-item{font-family:var(--font-body);color:#64748b;cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;border-radius:9999px;padding:6px 14px;font-size:13px;font-weight:600}.neutral-pill-item.active{color:#2d3436;background:#fff;box-shadow:0 2px 4px #00000014}.neutral-pill-item:hover:not(.active){color:#2d3436}.btn-primary{background:linear-gradient(135deg, var(--accent-primary) 0%, #28a0c5 100%);color:#fff;font-family:var(--font-heading);cursor:pointer;transition:transform var(--transition-fast), box-shadow var(--transition-fast), filter var(--transition-fast);border:none;border-radius:12px;align-items:center;gap:8px;padding:12px 24px;font-size:15px;font-weight:600;display:inline-flex;box-shadow:0 4px 12px #4bcdf033}.btn-primary:hover{filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 6px 16px #4bcdf059}.btn-primary:active{transform:translateY(1px)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.btn-secondary{color:var(--text-primary);border:1px solid var(--border-color);font-family:var(--font-heading);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast);background:#fff;border-radius:12px;align-items:center;gap:8px;padding:12px 24px;font-size:15px;font-weight:600;display:inline-flex}.btn-secondary:hover{border-color:var(--text-secondary);background:#f8f9fa}math-field::part(virtual-keyboard-toggle),math-field::part(menu-toggle){display:none!important}mjx-container[display=true],.katex-display{margin:1em 0!important;font-size:1.25em!important}mjx-container:not([display=true]),.katex{margin:0 .1em!important;font-size:1.15em!important}mjx-mtext{margin-right:.18em!important}mjx-mtext+mjx-mo,mjx-mtext+mjx-mi,mjx-mtext+mjx-mn,mjx-mtext+mjx-msub,mjx-mtext+mjx-msup,mjx-mtext+mjx-mfrac{margin-left:.38em!important}.mjx-explorer-help,.MathJax_MenuButton,[data-focusable=true]:after{display:none!important}@keyframes ctaPulse{0%{transform:scale(1);box-shadow:0 0 #4bcdf0b3}70%{transform:scale(1.03);box-shadow:0 0 0 10px #4bcdf000}to{transform:scale(1);box-shadow:0 0 #4bcdf000}}.cta-highlight{animation:1.8s ease-in-out infinite ctaPulse;background:var(--accent-primary)!important;border-color:var(--accent-primary)!important;color:#fff!important;font-weight:700!important}.app-container{flex-direction:column;height:100vh;display:flex;overflow:hidden}.app-header{z-index:100;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border-color);background:#ffffffd9;padding:0 24px;position:sticky;top:0}.header-content{justify-content:space-between;align-items:center;width:100%;max-width:1280px;height:72px;margin:0 auto;display:flex}.user-profile-header,.logo-section{align-items:center;gap:12px;display:flex}.logo-text{font-family:var(--font-heading);letter-spacing:-.5px;background:linear-gradient(135deg, var(--accent-primary) 0%, var(--accent-info) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:22px;font-weight:700;line-height:1.1}.logo-subtext{font-family:var(--font-body);color:var(--text-secondary);margin-top:-2px;font-size:11px;font-weight:500}.app-nav{gap:8px;display:flex}.nav-tab-btn{color:var(--text-secondary);font-family:var(--font-body);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:600;display:flex}.nav-tab-btn:hover{color:var(--text-primary);background:#0000000a}.nav-tab-btn.active{color:var(--text-primary);border:1px solid var(--border-color);background:#fff;box-shadow:0 2px 6px #0000000f}.main-content{animation:fadeIn var(--transition-normal) forwards;box-sizing:border-box;overflow-anchor:none;flex:1;height:100%;padding:32px 24px;overflow-y:auto}.dashboard-grid{grid-template-columns:1.5fr 1fr;gap:24px;display:grid}@media (width<=900px){.dashboard-grid{grid-template-columns:1fr}}.welcome-card{background:linear-gradient(135deg, var(--accent-primary) 0%, var(--accent-info) 100%);color:#fff;flex-direction:column;justify-content:center;padding:40px;display:flex;border:none!important}.welcome-card h2{font-family:var(--font-heading);margin-bottom:12px;font-size:32px;font-weight:700;line-height:1.2;color:#fff!important}.welcome-card p{margin-bottom:24px;font-size:15px;line-height:1.6;color:#ffffffe6!important}.welcome-card svg{color:#fff!important}.stats-card{background:var(--bg-card);flex-direction:column;gap:24px;padding:32px;display:flex}.stats-card h3{font-family:var(--font-heading);color:var(--text-primary);font-size:20px;font-weight:600}.stats-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.stat-item{border:1px solid var(--border-color);background:#f8fafc;border-radius:12px;flex-direction:column;gap:6px;padding:16px;display:flex}.stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:12px}.stat-value{font-family:var(--font-heading);color:var(--text-primary);font-size:24px;font-weight:700}.xp-progress-container{flex-direction:column;gap:8px;margin-top:8px;display:flex}.xp-label-row{color:var(--text-secondary);justify-content:space-between;font-size:13px;display:flex}.progress-bar-bg{background:#e2e8f0;border-radius:9999px;width:100%;height:8px;overflow:hidden}.progress-bar-fill{background:linear-gradient(90deg, var(--accent-primary) 0%, var(--accent-info) 100%);border-radius:9999px;height:100%;transition:width .6s cubic-bezier(.4,0,.2,1)}.action-cards{grid-column:1/-1;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:8px;display:grid}@media (width<=900px){.action-cards{grid-template-columns:1fr}}.action-card{cursor:pointer;flex-direction:column;gap:16px;padding:24px;display:flex}.action-icon{border:1px solid var(--border-color);width:48px;height:48px;color:var(--accent-info);transition:all var(--transition-fast);background:#f8fafc;border-radius:12px;justify-content:center;align-items:center;display:flex}.action-card:hover .action-icon{background:var(--accent-primary);color:#fff;transform:scale(1.05)}.action-card h4{font-family:var(--font-heading);color:var(--text-primary);font-size:18px}.action-card p{color:var(--text-secondary);font-size:14px;line-height:1.5}.solve-workspace{flex-direction:column;gap:24px;display:flex}.input-card{flex-direction:column;gap:16px;padding:24px;display:flex}.input-header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.input-header-title{font-family:var(--font-heading);color:var(--text-primary);font-size:20px;font-weight:600}.text-area-wrapper{width:100%;position:relative}.math-textarea{resize:vertical;width:100%;min-height:80px;color:var(--text-primary);font-family:var(--font-body);background:0 0;border:none;outline:none;margin:0;padding:0;font-size:16px}.textarea-wrapper{border:1px solid var(--border-color);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);background:#fff;border-radius:12px;flex-direction:column;gap:8px;padding:12px 16px 8px;display:flex}.textarea-wrapper.focused{border-color:var(--accent-primary);box-shadow:0 0 0 3px #4361ee1a}.textarea-footer{border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-top:4px;padding-top:8px;display:flex}.input-actions-left{gap:8px;display:flex}.input-actions-right-embedded{align-items:center;gap:8px;display:flex}.btn-small{height:32px!important;box-shadow:none!important;border-radius:8px!important;gap:6px!important;padding:6px 12px!important;font-size:13px!important}.btn-small:hover{box-shadow:none!important}.control-btn{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;width:34px;height:34px;transition:all var(--transition-fast);background:#f1f5f9;border-radius:8px;justify-content:center;align-items:center;display:flex}.control-btn:hover{color:var(--text-primary);background:#e2e8f0}.control-btn.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.example-pills{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.example-pills-label{color:var(--text-secondary);font-size:12px;font-weight:600}.example-pill{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);background:#f1f5f9;border-radius:9999px;padding:5px 12px;font-size:12px;font-weight:500}.example-pill:hover:not(:disabled){background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.example-pill:disabled{opacity:.5;cursor:not-allowed}.expand-collapse-toggle{border:1px solid var(--border-color);background:#f1f5f9;border-radius:8px;gap:2px;padding:2px;display:inline-flex}.ec-toggle-segment{color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:6px;padding:5px 12px;font-size:12px;font-weight:600}.ec-toggle-segment.active{background:var(--accent-primary);color:#fff}.textarea-actions{gap:8px;display:flex;position:absolute;bottom:12px;right:12px}.textarea-icon-btn{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;width:36px;height:36px;transition:all var(--transition-fast);background:#f1f5f9;border-radius:8px;justify-content:center;align-items:center;display:flex}.textarea-icon-btn:hover{color:var(--text-primary);background:#e2e8f0}.textarea-icon-btn.recording{background:var(--accent-error);color:#fff;animation:1.2s infinite voicePulse}.image-upload-zone{border:2px dashed var(--border-color);text-align:center;cursor:pointer;transition:all var(--transition-fast);background:#ffffff03;border-radius:12px;flex-direction:column;align-items:center;gap:8px;padding:24px;display:flex}.image-upload-zone:hover{border-color:var(--accent-primary);background:#6366f105}.image-upload-zone.dragging{border-color:var(--accent-primary);background:#6366f10d;transform:scale(1.01)}.mobile-upload-container{border:2px dashed var(--border-color);background:#ffffff03;border-radius:12px;flex-direction:column;align-items:center;gap:12px;width:100%;padding:20px 16px;display:flex}.mobile-upload-title{color:var(--text-secondary);font-size:14px;font-weight:500}.mobile-upload-buttons{gap:12px;width:100%;display:flex}.btn-mobile-upload{min-width:0;font-family:var(--font-heading);cursor:pointer;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast), box-shadow var(--transition-fast), filter var(--transition-fast);border-radius:12px;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px 16px;font-size:14px;font-weight:600;display:inline-flex}.btn-mobile-camera{background:linear-gradient(135deg, var(--accent-primary) 0%, #28a0c5 100%);color:#fff;border:none;box-shadow:0 4px 12px #4bcdf033}.btn-mobile-camera:hover{filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 6px 16px #4bcdf059}.btn-mobile-camera:active{transform:translateY(1px)}.btn-mobile-gallery{color:var(--text-primary);border:1px solid var(--border-color);background:#fff}.btn-mobile-gallery:hover{background:var(--bg-main);transform:translateY(-1px)}.btn-mobile-gallery:active{transform:translateY(1px)}.image-preview-container{border:1px solid var(--border-color);border-radius:8px;max-width:260px;margin-top:8px;position:relative;overflow:hidden}.image-preview{width:100%;height:auto;display:block}.remove-image-btn{color:#fff;cursor:pointer;background:#ef4444e6;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-weight:700;display:flex;position:absolute;top:8px;right:8px}.math-keyboard-container{border:1px solid var(--border-color);background:#f8fafc;border-radius:12px;flex-direction:column;gap:10px;padding:12px;display:flex}.math-keyboard-tabs{border-bottom:1px solid var(--border-color);gap:6px;padding-bottom:8px;display:flex}.math-keyboard-tab-btn{color:var(--text-secondary);font-family:var(--font-body);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:600}.math-keyboard-tab-btn.active{color:var(--text-primary);background:#e2e8f0}.math-keyboard-grid{grid-template-columns:repeat(auto-fill,minmax(50px,1fr));gap:6px;display:grid}.math-keyboard-key{border:1px solid var(--border-color);color:var(--text-primary);font-family:var(--mono);cursor:pointer;transition:background var(--transition-fast);background:#fff;border-radius:6px;padding:8px 4px;font-size:13px}.math-keyboard-key:hover{background:#f1f5f9}.action-submit-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.ocr-badge{color:var(--accent-info);background:#06b6d41a;border:1px solid #06b6d433;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:inline-flex}.solution-grid{flex-direction:column;align-items:stretch;gap:32px;display:flex}.solution-vertical-layout{flex-direction:column;gap:32px;max-width:100%;display:flex}.main-layout-wrapper{flex:1;width:100%;display:flex;position:relative;overflow:hidden}.app-sidebar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-right:1px solid var(--border-color);z-index:90;box-sizing:border-box;background:#ffffffd9;flex-direction:column;gap:12px;width:260px;height:100%;padding:24px 16px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;overflow-y:auto}.app-sidebar.collapsed{align-items:center;width:80px;padding:24px 12px}.app-sidebar .nav-tab-btn{justify-content:flex-start;width:100%;padding:12px 16px}.app-sidebar.collapsed .nav-tab-btn span{opacity:0;width:0;display:none}.app-sidebar.collapsed .nav-tab-btn{border-radius:12px;justify-content:center;width:48px;height:48px;padding:0}.sidebar-toggle-btn{border:1px solid var(--border-color);cursor:pointer;width:38px;height:38px;color:var(--text-primary);transition:all var(--transition-fast);background:0 0;border-radius:8px;justify-content:center;align-items:center;display:flex}.sidebar-toggle-btn:hover{border-color:var(--text-secondary);background:#0000000a}.canvas-bottom-wrapper{background:var(--bg-card);border:1px solid var(--border-color);box-sizing:border-box;border-radius:16px;flex-direction:column;gap:16px;width:100%;padding:24px;display:flex;box-shadow:0 4px 20px #00000008}.canvas-header-bar{border-bottom:1px solid var(--border-color);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding-bottom:16px;display:flex}.canvas-header-bar h3{font-family:var(--font-heading);color:var(--text-primary);margin:0;font-size:18px;font-weight:700}.katex-display{max-width:100%;overflow:auto hidden}@media (width<=950px),(height<=500px){.app-sidebar{z-index:150;width:260px;height:100%;position:absolute;top:0;left:-260px;box-shadow:4px 0 24px #00000026}.app-sidebar.open{left:0}.app-sidebar.collapsed{left:-260px}.app-sidebar.mobile-open{left:0!important}.mobile-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:140;background:#0006;animation:.2s ease-out fadeIn;position:absolute;inset:0}}.solution-steps-panel{flex-direction:column;gap:16px;min-width:0;display:flex}.problem-header-card{border-left:4px solid var(--accent-primary);padding:20px}.problem-header-card h3{text-transform:uppercase;color:var(--text-secondary);letter-spacing:.5px;margin-bottom:8px;font-size:14px}.problem-text-latex{color:var(--text-primary);width:100%;min-width:0;font-size:16px;line-height:1.5;overflow-x:auto}.step-card{background:var(--bg-card);border:1px solid var(--border-color);transition:all var(--transition-fast);border-radius:12px;min-width:0;overflow:hidden}.step-card.active{border-color:var(--accent-info);box-shadow:0 4px 15px #06b6d41a}.step-card-header{cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffff03;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.step-card-header:hover{background:#ffffff08}.step-header-left{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.step-index-badge{width:24px;height:24px;color:var(--text-secondary);font-family:var(--font-heading);background:#e2e8f0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.step-card.active .step-index-badge{background:var(--accent-info);color:#fff}.step-title{font-family:var(--font-heading);color:var(--text-primary);font-size:16px;font-weight:600}.step-toggle-icon{color:var(--text-secondary);transition:transform var(--transition-fast);flex-shrink:0}.step-card.open .step-toggle-icon{transform:rotate(180deg)}.step-card-body{border-top:1px solid var(--border-color);background:#f8fafc;flex-direction:column;gap:20px;min-width:0;padding:24px;display:flex}.step-latex-box{white-space:pre-wrap;background:#0f172ae6;border:1px solid #ffffff08;border-radius:12px;width:100%;min-width:0;padding:24px;font-size:16px;line-height:2;overflow-x:auto;box-shadow:inset 0 2px 4px #0003;color:#f8fafc!important}.step-latex-box *{color:#f8fafc!important}.step-explanation-text{color:var(--text-primary);font-size:15px;line-height:1.7}.final-answer-card{border:1px solid #0ab98133;border-left:4px solid var(--accent-success);background:linear-gradient(135deg,#10b9810d 0%,#06b6d40d 100%);padding:24px}.final-answer-title{font-family:var(--font-heading);color:var(--accent-success);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:14px}.final-answer-text{font-family:var(--font-heading);color:var(--text-primary);font-size:20px;font-weight:700}.key-points-section{flex-direction:column;gap:10px;margin-top:8px;display:flex}.key-point-chip{border:1px solid var(--border-color);color:var(--text-secondary);background:#f8fafc;border-radius:8px;align-items:center;gap:10px;padding:10px 16px;font-size:13px;display:flex}.canvas-sticky-wrapper{flex-direction:column;gap:16px;display:flex;position:relative;top:0}.canvas-caption{color:var(--text-muted);text-align:center;font-size:13px}.derivation-board-wrapper{flex-direction:column;gap:10px;display:flex}.derivation-board-header{font-family:var(--font-heading);justify-content:space-between;align-items:center;display:flex}.derivation-board-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;font-size:13px;font-weight:600}.derivation-board-progress{color:var(--text-muted);font-family:monospace;font-size:12px}.derivation-board{background:#0f172ae6;border:1px solid #ffffff0f;border-radius:12px;flex-direction:column;gap:12px;max-height:70vh;padding:16px;display:flex;position:relative;overflow-y:auto}.derivation-board-empty{color:#94a3b8;text-align:center;padding:32px 16px;font-size:14px}.derivation-line{cursor:pointer;transition:opacity var(--transition-normal), transform var(--transition-normal), border-color var(--transition-normal), background var(--transition-normal);border:1px solid #0000;border-radius:8px;padding:12px 14px}.derivation-line.past{opacity:.5;transform:scale(.97)}.derivation-line.active{opacity:1;border-color:var(--accent-info);background:#ffffff0a;box-shadow:0 4px 16px #ff6b812e}.derivation-line.future{opacity:.18}.derivation-line:hover{opacity:.85}.derivation-line.active:hover{opacity:1}.derivation-line-label{font-family:var(--font-heading);color:#cbd5e1;align-items:center;gap:8px;margin-bottom:8px;font-size:12px;display:flex}.derivation-line-num{color:#e2e8f0;background:#ffffff14;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;font-weight:700;display:inline-flex}.derivation-line.active .derivation-line-num{background:var(--accent-info);color:#fff}.derivation-line-title{line-height:1.3}.derivation-line-math{color:#f8fafc;text-align:center;min-width:0;font-size:19px;overflow:auto hidden}.derivation-line-math::-webkit-scrollbar{height:4px}.derivation-line-math::-webkit-scrollbar-track{background:0 0}.derivation-line-math::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:2px}.derivation-line-math-inner{display:inline-block}.derivation-line-math *{color:#f8fafc!important}.derivation-line.past .derivation-line-math{font-size:16px}@media (prefers-reduced-motion:reduce){.derivation-line{transition:none}}@media (width<=1000px){.derivation-board{max-height:60vh}.derivation-line-math{font-size:17px}.derivation-line.past .derivation-line-math{font-size:14px}}.citations-card{margin-top:8px;padding:20px}.citations-card h4{font-family:var(--font-heading);color:var(--text-primary);align-items:center;gap:8px;margin-bottom:12px;font-size:16px;display:flex}.citations-list{flex-direction:column;gap:12px;display:flex}.citation-item{border:1px solid var(--border-color);background:#f8fafc;border-radius:8px;padding:12px}.citation-header{color:var(--accent-info);margin-bottom:4px;font-size:12px;font-weight:700}.citation-content{color:var(--text-secondary);white-space:pre-line;font-size:13px;line-height:1.5}.loading-container{flex-direction:column;justify-content:center;align-items:center;gap:20px;padding:60px 20px;display:flex}.loading-spinner-glow{border:4px solid var(--border-color);border-top-color:var(--accent-primary);border-radius:50%;width:64px;height:64px;animation:1s linear infinite spin;position:relative;box-shadow:0 0 15px #6366f133}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{font-family:var(--font-heading);color:var(--text-primary);text-align:center;font-size:18px}.loading-subtext{color:var(--text-secondary);text-align:center;font-size:14px}.rag-loading-pill{color:var(--accent-success);background:#10b98114;border:1px solid #10b98133;border-radius:20px;align-self:center;align-items:center;gap:8px;margin-bottom:16px;padding:8px 16px;font-size:13px;animation:2s infinite pulse-glow;display:flex}.quiz-container{flex-direction:column;gap:24px;max-width:720px;margin:0 auto;display:flex}.quiz-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.quiz-question-card{padding:32px}.quiz-question-title{text-transform:uppercase;color:var(--accent-info);letter-spacing:.5px;margin-bottom:12px;font-size:13px}.quiz-question-latex{color:var(--text-primary);margin-bottom:8px;font-size:20px;line-height:1.5;overflow-x:auto}.quiz-options-list{flex-direction:column;gap:12px;margin-top:16px;display:flex}.quiz-option-btn{border:1px solid var(--border-color);color:var(--text-primary);text-align:left;font-family:var(--font-body);cursor:pointer;transition:all var(--transition-fast);background:#fff;border-radius:12px;justify-content:flex-start;align-items:center;gap:14px;padding:16px 20px;font-size:15px;display:flex}.quiz-option-btn *{pointer-events:none}.quiz-option-btn .option-text{text-align:left;flex:1}.quiz-option-btn:hover:not(:disabled){border-color:var(--text-muted);background:#f8fafc}.quiz-option-btn.correct{border-color:var(--accent-success);color:var(--text-primary);background:#10b9811f}.quiz-option-btn.incorrect{border-color:var(--accent-error);color:var(--text-primary);background:#ef44441f}.quiz-option-btn:disabled{cursor:not-allowed;opacity:.8}.quiz-feedback-card{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:24px;display:flex}.quiz-feedback-title{font-family:var(--font-heading);font-size:20px;font-weight:700}.quiz-feedback-title.correct{color:var(--accent-success)}.quiz-feedback-title.incorrect{color:var(--accent-error)}.quiz-feedback-text{color:var(--text-secondary);text-align:left;width:100%;font-size:14.5px;line-height:1.6}.leaderboard-container{flex-direction:column;gap:24px;max-width:640px;margin:0 auto;display:flex}.leaderboard-list{flex-direction:column;gap:8px;display:flex}.leaderboard-item{background:var(--bg-card);border:1px solid var(--border-color);transition:transform var(--transition-fast);border-radius:12px;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.leaderboard-item:hover{transform:translateY(-1px)}.leaderboard-item.current-user{border-color:var(--accent-primary);background:#6366f10d}.leaderboard-rank-col{align-items:center;gap:16px;display:flex}.leaderboard-rank-badge{width:28px;height:28px;font-family:var(--font-heading);color:var(--text-secondary);background:#f1f5f9;border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.leaderboard-item:first-child .leaderboard-rank-badge{color:#0f172a;background:#f59e0b}.leaderboard-item:nth-child(2) .leaderboard-rank-badge{color:#0f172a;background:#94a3b8}.leaderboard-item:nth-child(3) .leaderboard-rank-badge{color:#fff;background:#b45309}.leaderboard-avatar{color:#fff;background:#334155;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:14px;font-weight:700;display:flex}.leaderboard-name{color:var(--text-primary);font-weight:600}.leaderboard-xp{font-family:var(--font-heading);color:var(--accent-info);font-weight:700}.history-container{flex-direction:column;gap:16px;max-width:800px;margin:0 auto;display:flex}.history-card{cursor:pointer;padding:20px}.history-card-header{color:var(--text-secondary);justify-content:space-between;margin-bottom:8px;font-size:12px;display:flex}.history-card-query{font-family:var(--font-heading);color:var(--text-primary);margin-bottom:12px;font-size:16px;font-weight:600;line-height:1.4}.history-card-footer{justify-content:space-between;align-items:center;display:flex}.history-card-badges{gap:6px;display:flex}.history-card-badge{color:var(--text-secondary);background:#ffffff0d;border-radius:4px;padding:2px 8px;font-size:11px}.history-empty-state{text-align:center;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:60px 20px;display:flex}.login-overlay{z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a66;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.login-card{text-align:center;border:1px solid var(--border-color);width:100%;max-width:420px;box-shadow:var(--shadow-xl);background:#fff;border-radius:24px;flex-direction:column;gap:24px;padding:40px 32px;display:flex}.login-logo{font-family:var(--font-heading);background:linear-gradient(135deg,#4bcdf0 0%,#ff6b81 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:36px;font-weight:700}.login-form{text-align:left;flex-direction:column;gap:16px;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-group-row{gap:16px;width:100%;display:flex}@media (width<=950px),(height<=500px){.form-group-row{flex-direction:column;gap:16px}}.form-group label{color:var(--text-secondary);font-size:13px;font-weight:600}.form-input{border:1px solid var(--border-color);color:var(--text-primary);font-family:var(--font-body);transition:border-color var(--transition-fast);box-sizing:border-box;background:#fff;border-radius:8px;outline:none;width:100%;max-width:100%;padding:10px 14px;font-size:14px}.form-input:focus{border-color:var(--accent-primary)}.login-divider{color:var(--text-muted);align-items:center;gap:12px;font-size:12px;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--border-color);flex:1;height:1px}.math-verifier-container{align-items:center;display:inline-flex}.btn-verify{color:#1a7f9d;cursor:pointer;transition:all var(--transition-fast) ease;background:#4bcdf01a;border:1px solid #4bcdf040;border-radius:20px;align-items:center;gap:6px;padding:5px 12px;font-size:11px;font-weight:700;display:inline-flex}.btn-verify:hover{border-color:var(--accent-primary);color:#0e5d74;background:#4bcdf033;transform:translateY(-1px)}.verifier-status-text{color:var(--text-secondary);align-items:center;gap:6px;font-size:11px;font-weight:500;display:inline-flex}.verifier-result-badge{border-radius:20px;align-items:center;gap:5px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.verifier-result-badge.valid{color:#047857;background:#10b9811a;border:1px solid #10b98133}.verifier-result-badge.invalid{color:#b91c1c;background:#ef44441a;border:1px solid #ef444433}.verifier-reason-box{animation:fadeIn var(--transition-fast) forwards;border-radius:8px;margin-top:14px;padding:12px 16px;font-size:13px;line-height:1.5}.verifier-reason-box.valid{color:#065f46;background:#10b9810d;border:1px solid #10b98133}.verifier-reason-box.invalid{color:#991b1b;background:#ef44440d;border:1px solid #ef444433}.verifier-header{text-transform:uppercase;letter-spacing:.5px;opacity:.8;margin-bottom:4px;font-size:10px;font-weight:700}.verifier-reason{font-weight:400}@media (width<=1000px){.solution-grid{flex-direction:column;grid-template-columns:1fr;width:100%;min-width:0;max-width:100%;display:flex}.canvas-sticky-wrapper{box-sizing:border-box;order:-1;width:100%;min-width:0;max-width:100%;margin-bottom:20px;position:relative;top:0}.solution-steps-panel{box-sizing:border-box;order:1;width:100%;min-width:0;max-width:100%}.step-card,.step-card-body,.problem-header-card,.final-answer-card,.quiz-question-card,.glass-card{box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:100%!important}.step-latex-box,.final-answer-text{box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:100%!important;overflow-x:auto!important}mjx-container,.katex-display{font-size:92%!important}.final-answer-text mjx-container,.final-answer-text .katex-display{font-size:85%!important}.main-content{min-width:0!important;max-width:100%!important}}@media (width<=950px),(height<=500px){.header-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;height:auto;padding:10px 16px;display:flex}.logo-text{font-size:18px}.user-profile-header{display:none!important}.app-header{padding:0}.app-nav{scrollbar-width:thin;scrollbar-color:var(--accent-primary) #0000000d}.app-nav::-webkit-scrollbar{height:4px!important;display:block!important}.app-nav::-webkit-scrollbar-track{background:#0000000d!important;border-radius:2px!important}.app-nav::-webkit-scrollbar-thumb{background:var(--accent-primary)!important;border-radius:2px!important}.nav-tab-btn{flex-shrink:0;padding:8px 12px;font-size:13px}.main-content{padding:16px 12px}.input-card{padding:16px!important}.input-header-row{flex-direction:column!important;align-items:stretch!important;gap:8px!important;width:100%!important}.neutral-pill-container{scrollbar-width:thin;scrollbar-color:var(--accent-primary) #0000000d;-webkit-overflow-scrolling:touch;white-space:nowrap;border-radius:9999px;max-width:100%;display:flex;overflow-x:auto;justify-content:flex-start!important;width:100%!important}.toggle-pill-selector{scrollbar-width:none;-ms-overflow-style:none;flex-wrap:nowrap!important;justify-content:flex-start!important;width:100%!important;max-width:100%!important;display:flex!important;overflow-x:auto!important}.toggle-pill-selector::-webkit-scrollbar{display:none!important}.toggle-pill-selector .pill-btn{flex-shrink:0!important}.neutral-pill-container::-webkit-scrollbar{height:4px!important;display:block!important}.neutral-pill-container::-webkit-scrollbar-track{background:#0000000d!important;border-radius:2px!important}.neutral-pill-container::-webkit-scrollbar-thumb{background:var(--accent-primary)!important;border-radius:2px!important}.neutral-pill-item{flex-shrink:0}.katex-display,mjx-container[display=true],.final-answer-text{scrollbar-width:thin;scrollbar-color:var(--accent-primary) #0000000d;max-width:100%!important;padding-bottom:6px!important;overflow:auto hidden!important}.step-latex-box{scrollbar-width:thin;scrollbar-color:var(--accent-primary) #0000000d;max-width:100%!important;padding:16px 16px 10px!important;font-size:14.5px!important;overflow:auto hidden!important}.katex-display::-webkit-scrollbar{height:4px!important;display:block!important}.step-latex-box::-webkit-scrollbar{height:4px!important;display:block!important}mjx-container[display=true]::-webkit-scrollbar{height:4px!important;display:block!important}.final-answer-text::-webkit-scrollbar{height:4px!important;display:block!important}.katex-display::-webkit-scrollbar-track{background:#0000000d!important;border-radius:2px!important}.step-latex-box::-webkit-scrollbar-track{background:#0000000d!important;border-radius:2px!important}mjx-container[display=true]::-webkit-scrollbar-track{background:#0000000d!important;border-radius:2px!important}.final-answer-text::-webkit-scrollbar-track{background:#0000000d!important;border-radius:2px!important}.katex-display::-webkit-scrollbar-thumb{background:var(--accent-primary)!important;border-radius:2px!important}.step-latex-box::-webkit-scrollbar-thumb{background:var(--accent-primary)!important;border-radius:2px!important}mjx-container[display=true]::-webkit-scrollbar-thumb{background:var(--accent-primary)!important;border-radius:2px!important}.final-answer-text::-webkit-scrollbar-thumb{background:var(--accent-primary)!important;border-radius:2px!important}}math-field::part(menu-toggle){display:none!important}@media (width<=480px){.stats-grid{grid-template-columns:1fr;gap:12px}.welcome-card{text-align:center;align-items:center;padding:24px 16px}.welcome-card div{flex-direction:column;gap:8px;width:100%}.welcome-card div button{justify-content:center;width:100%}.stats-card{padding:24px 16px}.mobile-upload-buttons{gap:8px!important}.btn-mobile-upload{padding:10px 8px!important;font-size:13px!important}.action-submit-row{flex-direction:column;align-items:stretch}.action-submit-row button{justify-content:center;width:100%}}.mobile-menu-toggle,.collapsible-menu-bar{display:none}@media (width<=950px),(height<=500px){.sidebar-toggle-btn,.app-sidebar{display:none!important}.collapsible-menu-bar{opacity:0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:0px solid var(--border-color);box-sizing:border-box;z-index:95;background:#fffffff2;width:100%;max-height:0;transition:all .3s cubic-bezier(.4,0,.2,1);display:block;position:relative;overflow:hidden}.collapsible-menu-bar.open{opacity:1;border-bottom:1px solid var(--border-color);max-height:500px;padding:12px 16px}.menu-bar-links{flex-direction:column;gap:8px;width:100%;display:flex}.menu-bar-btn{width:100%;color:var(--text-secondary);font-family:var(--font-body);cursor:pointer;transition:all var(--transition-fast);box-sizing:border-box;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:10px 14px;font-size:14px;font-weight:600;display:flex}.menu-bar-btn:hover{color:var(--text-primary);background:#0000000a}.menu-bar-btn.active{color:var(--text-primary);border:1px solid var(--border-color);background:#fff;box-shadow:0 2px 6px #0000000f}.mobile-menu-toggle{border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;width:38px;height:38px;transition:all var(--transition-fast);background:0 0;border-radius:8px;justify-content:center;align-items:center;display:flex}.mobile-menu-toggle:hover{border-color:var(--text-secondary);background:#0000000a}.header-content{flex-wrap:nowrap!important;justify-content:space-between!important;align-items:center!important;gap:12px!important;height:72px!important;display:flex!important}.app-container,.main-layout-wrapper{height:auto!important;overflow:visible!important}.main-content{height:auto!important;padding:16px 12px!important;overflow-y:visible!important}}.featured-lessons-section{flex-direction:column;grid-column:1/-1;gap:16px;margin-top:24px;display:flex}.featured-lessons-title{font-family:var(--font-heading);color:var(--text-primary);align-items:center;gap:8px;font-size:20px;font-weight:700;display:flex}.featured-lessons-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}@media (width<=900px){.featured-lessons-grid{grid-template-columns:1fr;gap:16px}}.featured-lesson-card{cursor:pointer;transition:all var(--transition-normal);background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;flex-direction:column;gap:12px;padding:24px;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 12px #00000005}.featured-lesson-card:hover{border-color:var(--accent-primary);transform:translateY(-4px);box-shadow:0 12px 24px #6366f114}.featured-lesson-category{text-transform:uppercase;letter-spacing:.5px;color:var(--accent-primary);background:#6366f114;border-radius:6px;align-self:flex-start;padding:4px 8px;font-size:11px;font-weight:700}.featured-lesson-card h4{font-family:var(--font-heading);color:var(--text-primary);margin:0;font-size:16px;font-weight:600}.featured-lesson-card p{color:var(--text-secondary);flex-grow:1;margin:0;font-size:13px;line-height:1.5}.featured-lesson-action{color:var(--accent-primary);align-items:center;gap:6px;margin-top:8px;font-size:13px;font-weight:600;display:flex}.featured-lesson-card:hover .featured-lesson-action{color:var(--accent-info)}.solution-layout{flex-direction:column;gap:20px;width:100%;display:flex}.toggle-pill-selector{background:var(--bg-card);border:1px solid var(--border-color);border-radius:30px;width:100%;max-width:360px;margin:0 auto;padding:4px;display:flex;box-shadow:0 4px 10px #00000008}.pill-btn{color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:25px;outline:none;flex:1;padding:10px 16px;font-size:14px;font-weight:600}.pill-btn:hover{color:var(--text-primary)}.pill-btn.active{background:var(--accent-primary);color:#fff;box-shadow:0 2px 8px #6366f140}.step-card-v2{background:var(--bg-card);border:1px solid var(--border-color);transition:all var(--transition-medium);border-radius:16px;flex-direction:column;min-width:0;display:flex;overflow:hidden;box-shadow:0 4px 20px #00000005}.step-card-header-v2{border-bottom:1px solid var(--border-color);align-items:center;gap:16px;padding:20px 24px;display:flex}.step-card-body-v2{background:#f8fafc;flex-direction:column;gap:20px;padding:24px;display:flex}.step-navigation-bar{border-top:1px solid var(--border-color);background:var(--bg-card);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.final-answer-container-v2{flex-direction:column;gap:16px;margin-top:8px;display:flex}.animate-fade-in{animation:fadeIn var(--transition-medium) ease-in-out}@media (height<=500px){.login-overlay{align-items:flex-start!important;padding:12px!important;overflow-y:auto!important}.login-card{border-radius:16px!important;gap:12px!important;margin-top:8px!important;margin-bottom:8px!important;padding:20px 16px!important}.login-logo{font-size:24px!important}.form-group{margin-bottom:10px!important}.app-header,.header-content{height:56px!important}.welcome-card{padding:20px!important}.welcome-card h2{font-size:20px!important}.welcome-card p{margin-bottom:12px!important}}
