@import "https://fonts.googleapis.com/css2?family=Bitter:ital,wght@0,400;0,600;0,700;1,400&family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";:root{--bg-primary:#fff;--bg-secondary:#f8fafc;--bg-tertiary:#f1f5f9;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--accent:#2563eb;--accent-hover:#1d4ed8;--accent-light:#eff6ff;--accent-border:#bfdbfe;--success:#10b981;--success-light:#ecfdf5;--success-border:#a7f3d0;--error:#ef4444;--error-light:#fef2f2;--error-border:#fca5a5;--warning:#f59e0b;--warning-light:#fffbeb;--warning-border:#fde68a;--border:#e2e8f0;--border-hover:#cbd5e1;--sidebar-width:320px;--header-height:70px;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-serif:"Bitter", Georgia, serif;--font-mono:"JetBrains Mono", monospace;--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 #0000000d, 0 4px 6px -4px #0000000d;--shadow-xl:0 20px 25px -5px #0000000d, 0 8px 10px -6px #0000000d;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.25s cubic-bezier(.4, 0, .2, 1)}[data-theme=dark]{--bg-primary:#0b0f19;--bg-secondary:#111827;--bg-tertiary:#1f2937;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--accent:#3b82f6;--accent-hover:#60a5fa;--accent-light:#1e3a8a;--accent-border:#1e40af;--success:#34d399;--success-light:#064e3b;--success-border:#065f46;--error:#f87171;--error-light:#7f1d1d;--error-border:#991b1b;--warning:#fbbf24;--warning-light:#78350f;--warning-border:#92400e;--border:#1f2937;--border-hover:#374151;--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 4px 6px -1px #0000004d, 0 2px 4px -2px #0000004d;--shadow-lg:0 10px 15px -3px #0000004d, 0 4px 6px -4px #0000004d;--shadow-xl:0 20px 25px -5px #0000004d, 0 8px 10px -6px #0000004d}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--transition-normal), color var(--transition-normal);line-height:1.5;overflow-x:hidden}h1,h2,h3,h4,h5,h6{letter-spacing:-.025em;font-weight:700;line-height:1.25}p{color:var(--text-secondary)}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}a{color:var(--accent);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--accent-hover)}.scrollbar-hidden::-webkit-scrollbar{display:none}.scrollbar-hidden{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-custom::-webkit-scrollbar{width:6px;height:6px}.scrollbar-custom::-webkit-scrollbar-track{background:0 0}.scrollbar-custom::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.scrollbar-custom::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.shimmer{background:linear-gradient(90deg, var(--bg-tertiary) 25%, var(--border) 50%, var(--bg-tertiary) 75%);background-size:200% 100%;animation:1.5s linear infinite shimmer}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}input,textarea,select,button{touch-action:manipulation}.page-center{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100vh;padding:40px;display:flex}.spin{animation:1s linear infinite spinAnim}@keyframes spinAnim{to{transform:rotate(360deg)}}.muted-icon{color:var(--text-muted)}.btn-primary{background:var(--accent);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast), transform var(--transition-fast);border:none;align-items:center;gap:6px;padding:10px 22px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary:hover{background:var(--accent-hover);color:#fff;transform:translateY(-1px)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:6px;padding:10px 22px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.btn-secondary:hover{border-color:var(--accent);color:var(--accent)}.btn-secondary:disabled{opacity:.4;cursor:not-allowed}.section-heading{align-items:center;gap:8px;margin-bottom:20px;font-size:20px;font-weight:700;display:flex}.course-nav-bar{border-bottom:1px solid var(--border);background:var(--bg-primary);z-index:100;align-items:center;gap:12px;padding:12px 24px;display:flex;position:sticky;top:0}.nav-back-btn{color:var(--text-secondary);border-radius:var(--radius-sm);transition:all var(--transition-fast);align-items:center;gap:6px;padding:6px 10px;font-size:14px;font-weight:500;display:flex}.nav-back-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.course-code-badge{letter-spacing:1px;color:var(--accent);background:var(--accent-light);border-radius:20px;padding:3px 10px;font-size:12px;font-weight:700}.page-title-inline{text-align:center;flex:1;font-size:16px;font-weight:700}.modal-overlay{z-index:999;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:480px;overflow:hidden}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-header h3{align-items:center;gap:8px;font-size:16px;display:flex}.modal-body{flex-direction:column;gap:16px;padding:24px;display:flex}.modal-hint{color:var(--text-secondary);font-size:14px;line-height:1.6}.modal-actions{justify-content:flex-end;gap:12px;display:flex}.course-overview-page{background:var(--bg-primary);min-height:100vh;position:relative}.course-hero{color:#fff;background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%);padding:60px 40px 48px;position:relative;overflow:hidden}[data-theme=light] .course-hero{background:linear-gradient(135deg,#1e3a8a 0%,#3b82f6 100%)}.course-hero:before{content:"";background:radial-gradient(circle at 70%,#6366f140 0%,#0000 60%);position:absolute;inset:0}.course-hero-content{z-index:1;max-width:800px;margin:0 auto;position:relative}.course-level-badge{letter-spacing:1.5px;text-transform:uppercase;color:#ffffffe6;background:#ffffff26;border:1px solid #ffffff40;border-radius:20px;margin-bottom:16px;padding:4px 12px;font-size:11px;font-weight:700;display:inline-block}.course-hero-title{color:#fff;letter-spacing:-.03em;margin-bottom:14px;font-size:clamp(24px,4vw,40px);font-weight:800;line-height:1.15}.course-hero-desc{color:#fffc;max-width:600px;margin-bottom:24px;font-size:16px;line-height:1.65}.course-hero-meta{flex-wrap:wrap;gap:20px;display:flex}.course-meta-item{color:#ffffffbf;align-items:center;gap:6px;font-size:13px;display:flex}.course-section-cards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;max-width:1100px;margin:0 auto;padding:32px 40px;display:grid}.cta-section-card{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-primary);box-shadow:var(--shadow-md);transition:all var(--transition-normal);color:var(--text-primary);align-items:center;gap:18px;padding:24px 20px;text-decoration:none;display:flex;position:relative;overflow:hidden}.cta-section-card:before{content:"";opacity:0;transition:opacity var(--transition-normal);position:absolute;inset:0}.cta-section-card:hover{box-shadow:var(--shadow-xl);color:var(--text-primary);transform:translateY(-4px)}.cta-section-card:hover:before{opacity:1}.cta-learn:before{background:linear-gradient(135deg,#6366f10f,#0000)}.cta-materials:before{background:linear-gradient(135deg,#10b9810f,#0000)}.cta-practice:before{background:linear-gradient(135deg,#f59e0b0f,#0000)}.cta-icon-wrap{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.cta-learn .cta-icon-wrap{color:#6d28d9;background:#ede9fe}.cta-materials .cta-icon-wrap{color:#059669;background:#ecfdf5}.cta-practice .cta-icon-wrap{color:#d97706;background:#fffbeb}[data-theme=dark] .cta-learn .cta-icon-wrap{color:#a78bfa;background:#1e1b4b}[data-theme=dark] .cta-materials .cta-icon-wrap{color:#34d399;background:#064e3b}[data-theme=dark] .cta-practice .cta-icon-wrap{color:#fbbf24;background:#451a03}.cta-section-card h3{margin-bottom:4px;font-size:16px;font-weight:700}.cta-section-card p{color:var(--text-muted);font-size:13px;line-height:1.4}.cta-arrow{color:var(--text-muted);transition:transform var(--transition-fast);margin-left:auto}.cta-section-card:hover .cta-arrow{transform:translate(4px)}.course-modules-overview{max-width:1100px;margin:0 auto;padding:0 40px 40px}.modules-list{flex-direction:column;gap:12px;display:flex}.module-overview-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);padding:20px}.module-header{align-items:center;gap:12px;margin-bottom:12px;display:flex}.module-num{letter-spacing:1px;text-transform:uppercase;color:var(--accent);white-space:nowrap;font-size:11px;font-weight:700}.module-header h3{flex:1;font-size:15px;font-weight:600}.module-lesson-count{color:var(--text-muted);white-space:nowrap;font-size:12px}.module-lesson-preview{color:var(--text-secondary);align-items:center;gap:8px;padding:4px 0;font-size:13px;display:flex}.module-more-lessons{color:var(--text-muted);margin-top:6px;font-size:12px}.course-outcomes-section,.course-prereqs-section{max-width:1100px;margin:0 auto;padding:0 40px 40px}.outcomes-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;display:grid}.outcome-item{align-items:flex-start;gap:10px;font-size:14px;line-height:1.5;display:flex}.outcome-check{color:var(--success);margin-top:2px;font-size:14px;font-weight:700}.prereqs-list{flex-direction:column;gap:8px;padding-left:20px;display:flex}.prereqs-list li{color:var(--text-secondary);font-size:14px}.course-content-page{background:var(--bg-primary);flex-direction:column;height:100vh;display:flex;overflow:hidden}.course-content-topbar{border-bottom:1px solid var(--border);background:var(--bg-primary);z-index:100;flex-shrink:0;align-items:center;gap:12px;min-height:56px;padding:10px 20px;display:flex}.lesson-title-topbar{white-space:nowrap;text-overflow:ellipsis;text-align:center;flex:1;font-size:14px;font-weight:600;overflow:hidden}.nyansapo-topbar-btn{border-radius:var(--radius-md);border:1px solid color-mix(in srgb, var(--accent) 28%, var(--border));background:linear-gradient(135deg, var(--accent-light), var(--bg-secondary));color:var(--accent);cursor:pointer;transition:transform var(--transition-fast), border-color var(--transition-fast);align-items:center;gap:7px;padding:8px 12px;font-size:13px;font-weight:800;display:inline-flex}.nyansapo-topbar-btn:hover{border-color:var(--accent);transform:translateY(-1px)}.nyansapo-topbar-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.study-timer-chip,.course-completion-chip{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:7px 10px;font-size:12px;font-weight:800;display:inline-flex}.study-timer-chip.paused{color:var(--warning);background:color-mix(in srgb, var(--warning) 12%, var(--bg-secondary))}.course-completion-chip{color:var(--success);background:color-mix(in srgb, var(--success) 12%, var(--bg-secondary))}.sidebar-toggle-btn{border-radius:var(--radius-sm);color:var(--text-secondary);transition:all var(--transition-fast);padding:6px}.sidebar-toggle-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.course-content-layout{flex:1;display:flex;overflow:hidden}.course-sidebar{border-right:1px solid var(--border);background:var(--bg-secondary);width:300px;transition:width var(--transition-normal), opacity var(--transition-fast);flex-shrink:0;overflow-y:auto}.course-sidebar.closed{opacity:0;width:0;overflow:hidden}.course-sidebar.open{opacity:1}.sidebar-inner{padding:16px 0}.sidebar-title{letter-spacing:1px;text-transform:uppercase;color:var(--text-muted);padding:0 16px 12px;font-size:11px;font-weight:700}.sidebar-module{border-bottom:1px solid var(--border)}.sidebar-module-header{cursor:pointer;width:100%;color:var(--text-primary);text-align:left;transition:background var(--transition-fast);background:0 0;border:none;align-items:center;gap:10px;padding:12px 16px;font-size:13px;font-weight:600;display:flex}.sidebar-module-header:hover{background:var(--bg-tertiary)}.sidebar-module-num{background:var(--accent-light);width:22px;height:22px;color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.sidebar-module-title{flex:1}.sidebar-chevron{transition:transform var(--transition-fast);color:var(--text-muted)}.sidebar-chevron.rotated{transform:rotate(180deg)}.sidebar-lessons{padding:4px 0 8px}.sidebar-lesson{width:100%;color:var(--text-secondary);cursor:pointer;text-align:left;transition:all var(--transition-fast);background:0 0;border:none;border-left:3px solid #0000;align-items:center;gap:8px;padding:9px 16px 9px 42px;font-size:13px;display:flex}.sidebar-lesson:hover{background:var(--bg-tertiary);color:var(--text-primary)}.sidebar-lesson.active{color:var(--accent);background:var(--accent-light);border-left-color:var(--accent);font-weight:600}.course-lesson-main{background:radial-gradient(circle at 12% 0%, #f59e0b14, transparent 280px), linear-gradient(180deg, var(--bg-primary), color-mix(in srgb, var(--bg-primary) 88%, var(--bg-secondary)));flex:1;padding:40px;overflow-y:auto}.course-lesson-main>*{max-width:940px;margin-left:auto;margin-right:auto}.lesson-heading{letter-spacing:-.03em;color:var(--text-primary);margin-bottom:16px;font-size:28px;font-weight:800}.lesson-status-row{color:var(--text-muted);align-items:center;gap:10px;margin-bottom:18px;font-size:13px;font-weight:700;display:flex}.lesson-status-pill{border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-secondary);border-radius:999px;padding:5px 10px}.lesson-status-pill.in_progress{color:var(--accent);background:var(--accent-light);border-color:color-mix(in srgb, var(--accent) 32%, var(--border))}.lesson-status-pill.completed{color:var(--success);background:var(--success-light);border-color:color-mix(in srgb, var(--success) 32%, var(--border))}.lesson-ai-callout{border-radius:var(--radius-lg);border:1px solid color-mix(in srgb, var(--accent) 24%, var(--border));background:radial-gradient(circle at 8% 20%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 30%), linear-gradient(135deg, var(--bg-secondary), var(--bg-primary));width:100%;color:var(--text-primary);text-align:left;cursor:pointer;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);align-items:center;gap:14px;margin-bottom:30px;padding:16px 18px;display:flex}.lesson-ai-callout:hover{border-color:var(--accent);box-shadow:var(--shadow-md);transform:translateY(-1px)}.lesson-ai-callout-icon{width:42px;height:42px;color:var(--accent);background:var(--accent-light);border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.lesson-ai-callout strong{margin-bottom:3px;font-size:15px;display:block}.lesson-ai-callout small{color:var(--text-secondary);font-size:13px;line-height:1.45;display:block}.lesson-blocks{flex-direction:column;gap:28px;display:flex}.lesson-empty{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:80px 20px;display:flex}.lesson-nav-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin-top:48px;padding:40px 0 20px;display:flex}.lesson-progress-label{color:var(--text-muted);font-size:13px}.nyansapo-modal-backdrop{z-index:1800;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#00000085;position:fixed;inset:0}.nyansapo-modal{z-index:1810;border:1px solid var(--border);background:var(--bg-secondary);width:min(760px,100vw - 28px);height:min(760px,100dvh - 28px);color:var(--text-primary);box-shadow:var(--shadow-xl);border-radius:28px;flex-direction:column;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.nyansapo-modal-header{border-bottom:1px solid var(--border);background:linear-gradient(135deg, var(--bg-tertiary), var(--bg-secondary));justify-content:space-between;align-items:flex-start;gap:16px;padding:22px 24px;display:flex;position:relative;overflow:hidden}.nyansapo-modal-title-row{z-index:1;align-items:center;gap:13px;min-width:0;display:flex;position:relative}.nyansapo-modal-icon,.nyansapo-empty-icon{background:var(--accent-light);width:44px;height:44px;color:var(--accent);border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.nyansapo-eyebrow{letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:900}.nyansapo-modal h2{letter-spacing:-.02em;font-size:20px;font-weight:900}.nyansapo-lesson-name{max-width:560px;color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:13px;overflow:hidden}.nyansapo-close-btn{z-index:1;background:var(--bg-primary);width:34px;height:34px;color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:relative}.nyansapo-modal-body{flex:1;padding:22px;overflow-y:auto}.nyansapo-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:100%;padding:24px 0;display:flex}.nyansapo-empty-state h3{letter-spacing:-.03em;font-size:22px;font-weight:900}.nyansapo-empty-state p{max-width:520px;color:var(--text-secondary);line-height:1.65}.nyansapo-prompt-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:100%;margin-top:8px;display:grid}.nyansapo-prompt-grid button{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-primary);color:var(--text-primary);cursor:pointer;transition:border-color var(--transition-fast), transform var(--transition-fast);padding:13px;font-size:13px;font-weight:700;line-height:1.35}.nyansapo-prompt-grid button:hover{border-color:var(--accent);transform:translateY(-1px)}.nyansapo-message-row{margin-bottom:12px;display:flex}.nyansapo-message-row.user{justify-content:flex-end}.nyansapo-message-row.ai{justify-content:flex-start}.nyansapo-message{border-radius:18px;align-items:flex-start;gap:8px;max-width:82%;padding:12px 15px;font-size:14px;line-height:1.65;display:inline-flex}.nyansapo-message-row.user .nyansapo-message{background:var(--accent);color:#fff;border-bottom-right-radius:5px}.nyansapo-message-row.ai .nyansapo-message{background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border);border-bottom-left-radius:5px}.nyansapo-thinking{color:var(--text-secondary);font-style:italic}.nyansapo-error{border-radius:var(--radius-md);background:var(--error-light);color:var(--error);padding:10px 12px;font-size:13px}.nyansapo-modal-footer{border-top:1px solid var(--border);background:var(--bg-secondary);gap:10px;padding:16px;display:flex}.nyansapo-modal-footer input{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-primary);min-width:0;color:var(--text-primary);outline:none;flex:1;padding:13px 15px;font-size:16px}.nyansapo-modal-footer input:focus{border-color:var(--accent)}.nyansapo-modal-footer button{border-radius:var(--radius-md);background:var(--accent);color:#fff;cursor:pointer;justify-content:center;align-items:center;width:46px;display:inline-flex}.nyansapo-modal-footer button:disabled{opacity:.5;cursor:not-allowed}.still-there-overlay{z-index:2200;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0000007a;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.still-there-card{border:1px solid var(--border);background:linear-gradient(145deg, var(--bg-secondary), var(--bg-primary));width:min(420px,100%);box-shadow:var(--shadow-xl);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:12px;padding:28px;display:flex}.still-there-card h2{letter-spacing:-.03em;font-size:24px;font-weight:900}.still-there-card p{color:var(--text-secondary);line-height:1.55}.still-there-card span{color:var(--text-muted);font-size:12px;font-weight:800}.study-paused-banner{z-index:1700;border:1px solid color-mix(in srgb, var(--warning) 34%, var(--border));background:color-mix(in srgb, var(--warning) 12%, var(--bg-secondary));color:var(--text-primary);box-shadow:var(--shadow-md);cursor:pointer;border-radius:999px;padding:11px 16px;font-size:13px;font-weight:800;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.motivation-avatar{filter:drop-shadow(0 10px 22px #0000001f);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.motivation-avatar-symbol{background:var(--bg-primary);border:1px solid var(--border);border-radius:50%;justify-content:center;align-items:center;width:34%;height:34%;display:inline-flex;position:absolute;bottom:-4px;right:-4px}.motivation-banner{border-radius:var(--radius-lg);border:1px solid color-mix(in srgb, var(--accent) 24%, var(--border));background:radial-gradient(circle at 5% 20%, color-mix(in srgb, var(--accent) 15%, transparent), transparent 28%), linear-gradient(135deg, var(--bg-secondary), var(--bg-primary));box-shadow:var(--shadow-sm);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:20px;display:grid;position:relative;overflow:hidden}.motivation-banner--celebrate{border-color:color-mix(in srgb, var(--success) 32%, var(--border));background:radial-gradient(circle at 8% 20%, color-mix(in srgb, var(--success) 18%, transparent), transparent 30%), linear-gradient(135deg, var(--success-light), var(--bg-secondary))}.motivation-banner--urgent{border-color:color-mix(in srgb, var(--warning) 38%, var(--border));background:radial-gradient(circle at 8% 20%, color-mix(in srgb, var(--warning) 18%, transparent), transparent 30%), linear-gradient(135deg, var(--warning-light), var(--bg-secondary))}.motivation-banner--compact{gap:14px;padding:14px 16px}.motivation-banner__avatar,.motivation-banner__body,.motivation-banner__action{z-index:1;position:relative}.motivation-banner__avatar{place-items:center;display:grid}.motivation-lottie{pointer-events:none;filter:drop-shadow(0 10px 18px #0f172a1a)}.motivation-banner__lottie{opacity:.82;z-index:0;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.motivation-banner__avatar .motivation-avatar{z-index:1;position:relative}.motivation-banner__eyebrow{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:6px;margin-bottom:4px;font-size:11px;font-weight:900;display:inline-flex}.motivation-banner h3{letter-spacing:-.03em;margin-bottom:4px;font-size:18px;font-weight:900}.motivation-banner p{color:var(--text-secondary);font-size:14px;line-height:1.55}.motivation-banner__meter{background:var(--border);border-radius:999px;max-width:360px;height:6px;margin-top:10px;overflow:hidden}.motivation-banner__meter span{border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--success));height:100%;display:block}.motivation-banner__action{border-radius:var(--radius-md);background:var(--accent);color:#fff;white-space:nowrap;align-items:center;gap:5px;padding:10px 13px;font-size:13px;font-weight:800;display:inline-flex}.motivation-banner__action:hover{color:#fff;transform:translateY(-1px)}.motivation-banner__action--static{background:var(--bg-tertiary);color:var(--text-secondary)}.streak-progress-card{border:1px solid color-mix(in srgb, var(--accent) 24%, var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:radial-gradient(circle at 3% 10%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 28%), linear-gradient(135deg, var(--accent-light), var(--bg-secondary));padding:22px}.streak-progress-card--celebrate{border-color:color-mix(in srgb, var(--success) 30%, var(--border));background:radial-gradient(circle at 3% 10%, color-mix(in srgb, var(--success) 17%, transparent), transparent 28%), linear-gradient(135deg, var(--success-light), var(--bg-secondary))}.streak-progress-card__header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.streak-progress-card__title{align-items:flex-start;gap:13px;display:flex}.streak-progress-card__title p{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:6px;margin-bottom:5px;font-size:11px;font-weight:900;display:inline-flex}.streak-progress-card__title h3{letter-spacing:-.03em;margin-bottom:4px;font-size:18px;font-weight:900}.streak-progress-card__title span,.streak-progress-card__note{color:var(--text-secondary);font-size:13px;line-height:1.55}.streak-progress-card__count{text-align:right;flex-shrink:0;min-width:76px;position:relative}.streak-progress-card__lottie{opacity:.78;position:absolute;top:-18px;right:-16px}.streak-progress-card__count strong{letter-spacing:-.04em;font-size:30px;font-weight:950;display:block}.streak-progress-card__count span{color:var(--text-muted);text-transform:uppercase;font-size:11px;font-weight:900}.streak-progress-card__grid{gap:14px;display:grid}.streak-progress-card__item div:first-child{justify-content:space-between;gap:12px;margin-bottom:6px;font-size:13px;display:flex}.streak-progress-card__item span{font-weight:800}.streak-progress-card__item strong{color:var(--text-secondary);font-size:12px}.streak-progress-card__bar{background:var(--border);border-radius:999px;height:7px;overflow:hidden}.streak-progress-card__bar span{border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--warning));height:100%;display:block}.streak-mini-chip{background:var(--accent-light);border:1px solid color-mix(in srgb, var(--accent) 24%, var(--border));color:var(--accent);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:12px;font-weight:900;display:inline-flex}.streak-mini-chip.qualified{color:var(--success);background:var(--success-light);border-color:color-mix(in srgb, var(--success) 30%, var(--border))}.dashboard-section-hero{border-radius:var(--radius-lg);border:1px solid var(--border);background:radial-gradient(circle at 7% 18%, color-mix(in srgb, var(--accent) 15%, transparent), transparent 30%), linear-gradient(135deg, var(--bg-secondary), var(--bg-primary));box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;gap:22px;margin-bottom:24px;padding:26px 30px;display:flex;position:relative;overflow:hidden}.dashboard-section-hero>*{z-index:1;position:relative}.dashboard-section-hero h2{letter-spacing:-.04em;margin-bottom:7px;font-size:clamp(1.35rem,2.5vw,2rem);font-weight:950}.dashboard-section-hero p{color:var(--text-secondary);max-width:680px;font-size:.92rem;line-height:1.65}.dashboard-section-eyebrow{color:var(--accent);letter-spacing:.09em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:6px;font-weight:950;display:inline-flex;margin-bottom:8px!important;font-size:.72rem!important}.dashboard-greeting-source{background:var(--accent-light);color:var(--accent);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;padding:3px 8px;font-size:.66rem;font-weight:950;display:inline-flex}.dashboard-section-hero-pills{flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:260px;display:flex}.dashboard-section-hero-pills span{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);border-radius:999px;align-items:center;gap:6px;padding:8px 10px;font-size:.78rem;font-weight:800;display:inline-flex}.dashboard-section-primary{border-radius:var(--radius-md);background:var(--accent);color:#fff;white-space:nowrap;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;gap:8px;padding:11px 16px;font-weight:850;display:inline-flex}.dashboard-placeholder-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;display:grid}.dashboard-placeholder-card{border-radius:var(--radius-lg);background:var(--bg-secondary);border:1px solid var(--border);min-height:170px;box-shadow:var(--shadow-sm);padding:22px}.dashboard-placeholder-card svg{color:var(--accent);margin-bottom:14px}.dashboard-placeholder-card h3{margin-bottom:8px;font-size:1rem;font-weight:850}.dashboard-placeholder-card p{color:var(--text-secondary);font-size:.88rem;line-height:1.6}.dashboard-command-center{border:1px solid color-mix(in srgb, var(--accent) 22%, var(--border));background:radial-gradient(circle at 8% 12%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 28%), radial-gradient(circle at 94% 18%, color-mix(in srgb, var(--warning) 14%, transparent), transparent 26%), linear-gradient(135deg, var(--bg-secondary), var(--bg-primary));box-shadow:var(--shadow-md);border-radius:24px;flex-direction:column;align-items:stretch;gap:18px;margin-bottom:24px;padding:clamp(20px,3vw,28px);display:flex;position:relative;overflow:hidden}.dashboard-command-center>*{z-index:1;position:relative}.dashboard-command-center__main h1{letter-spacing:-.05em;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;font-size:clamp(1.35rem,2.6vw,2rem);font-weight:950;display:flex}.dashboard-command-center__main h1 svg{color:var(--accent)}.dashboard-command-center__body{color:var(--text-secondary);max-width:680px;margin-bottom:6px;font-size:.94rem;line-height:1.7}.dashboard-command-center__context{color:var(--text-muted);margin-bottom:14px;font-size:.82rem;font-weight:750}.dashboard-command-center__actions{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.dashboard-command-center__primary{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--accent), var(--accent-hover));color:#fff;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;gap:8px;padding:11px 16px;font-weight:900;display:inline-flex}.dashboard-command-center__primary:hover{color:#fff;transform:translateY(-1px)}.dashboard-command-center__nudge{border:1px solid color-mix(in srgb, var(--accent) 20%, var(--border));background:var(--bg-secondary);max-width:440px;color:var(--text-secondary);transition:transform var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);border-radius:999px;align-items:center;gap:7px;padding:9px 12px;font-size:.8rem;font-weight:850;display:inline-flex}.dashboard-command-center__nudge:hover,.dashboard-command-center__nudge:focus-visible{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 42%, var(--border));transform:translateY(-1px)}.dashboard-command-center__nudge--celebrate{color:var(--success);background:var(--success-light);border-color:var(--success-border)}.dashboard-command-center__nudge--urgent{color:var(--warning);background:var(--warning-light);border-color:var(--warning-border)}.dashboard-command-center__badges{flex-wrap:wrap;gap:10px;margin-top:2px;display:flex}.dashboard-command-center__badges>span{color:var(--text-muted);font-size:.82rem;font-style:italic}.dashboard-command-center__side{grid-template-columns:minmax(170px,.75fr) minmax(0,1.6fr);align-items:stretch;gap:12px;display:grid}.dashboard-command-center__animation{border:1px solid color-mix(in srgb, var(--accent) 20%, var(--border));background:radial-gradient(circle at 22% 18%, color-mix(in srgb, var(--accent) 18%, transparent), transparent 34%), linear-gradient(135deg, color-mix(in srgb, var(--bg-primary) 86%, var(--accent-light)), var(--bg-secondary));border-radius:18px;justify-content:center;align-items:center;gap:10px;min-height:116px;padding:14px;display:flex;position:relative;overflow:hidden}.dashboard-command-center__animation--celebrate{border-color:var(--success-border);background:radial-gradient(circle at 20% 16%, color-mix(in srgb, var(--success) 20%, transparent), transparent 36%), linear-gradient(135deg, var(--success-light), var(--bg-secondary))}.dashboard-command-center__animation--urgent{border-color:var(--warning-border);background:radial-gradient(circle at 20% 16%, color-mix(in srgb, var(--warning) 20%, transparent), transparent 36%), linear-gradient(135deg, var(--warning-light), var(--bg-secondary))}.dashboard-command-center__animation div:not(.motivation-lottie){flex-direction:column;gap:3px;min-width:0;display:flex}.dashboard-command-center__animation span{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:950}.dashboard-command-center__animation strong{color:var(--text-primary);font-size:.9rem;font-weight:950;line-height:1.15}.dashboard-command-center__lottie{flex:none}.dashboard-status-rail{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.dashboard-status-rail__item{border:1px solid color-mix(in srgb, var(--accent) 16%, var(--border));background:color-mix(in srgb, var(--bg-primary) 88%, var(--accent-light));border-radius:14px;grid-template-columns:auto 1fr;grid-template-areas:"label label""value meta""bar bar";align-items:end;column-gap:10px;padding:11px 13px;display:grid}.dashboard-status-rail__item span{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;grid-area:label;margin-bottom:3px;font-size:.7rem;font-weight:950;display:block}.dashboard-status-rail__item strong{color:var(--text-primary);letter-spacing:-.04em;grid-area:value;font-size:1.12rem;font-weight:950;display:block}.dashboard-status-rail__item small{color:var(--text-secondary);text-align:right;grid-area:meta;padding-bottom:1px;font-size:.72rem;font-weight:750}.dashboard-status-rail__item div{background:var(--border);border-radius:999px;grid-area:bar;height:6px;margin-top:8px;overflow:hidden}.dashboard-status-rail__item i{border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--success));height:100%;display:block}.profile-shell{flex:1;grid-template-columns:238px minmax(0,1fr);align-items:start;gap:28px;width:100%;max-width:1220px;margin:0 auto;padding:clamp(20px,4vw,42px) 24px;display:grid}.profile-side-nav{z-index:5;position:sticky;top:86px}.profile-side-nav__card{border:1px solid color-mix(in srgb, var(--accent) 18%, var(--border));background:radial-gradient(circle at 16% 10%, color-mix(in srgb, var(--accent) 18%, transparent), transparent 34%), linear-gradient(145deg, var(--bg-secondary), var(--bg-primary));box-shadow:var(--shadow-sm);border-radius:24px;padding:16px;position:relative;overflow:hidden}.profile-side-nav__card--verified{border-color:var(--success-border)}.profile-side-nav__card--pending{border-color:var(--warning-border)}.profile-side-nav__card--rejected{border-color:var(--error-border)}.profile-side-nav__identity{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding-bottom:14px;display:flex}.profile-side-nav__avatar{color:#fff;background:linear-gradient(135deg, var(--accent), var(--accent-hover));width:44px;height:44px;box-shadow:0 12px 28px color-mix(in srgb, var(--accent) 22%, transparent);border-radius:16px;place-items:center;font-size:1.1rem;font-weight:950;display:grid}.profile-side-nav__identity strong{color:var(--text-primary);font-size:.95rem;font-weight:950;line-height:1.15;display:block}.profile-side-nav__identity span,.profile-side-nav__status span{color:var(--text-secondary);text-transform:capitalize;font-size:.75rem;font-weight:750}.profile-side-nav__status{background:var(--bg-tertiary);color:var(--accent);border-radius:999px;align-items:center;gap:7px;margin:14px 0;padding:8px 10px;display:inline-flex}.profile-side-nav__card--verified .profile-side-nav__status{color:var(--success);background:var(--success-light)}.profile-side-nav__card--pending .profile-side-nav__status{color:var(--warning);background:var(--warning-light)}.profile-side-nav__card--rejected .profile-side-nav__status{color:var(--error);background:var(--error-light)}.profile-side-nav nav{flex-direction:column;gap:6px;display:flex}.profile-side-nav__item{width:100%;color:var(--text-secondary);text-align:left;cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);background:0 0;border:1px solid #0000;border-radius:16px;align-items:center;gap:10px;padding:11px 10px;display:flex}.profile-side-nav__item:hover,.profile-side-nav__item.is-active{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 28%, var(--border));background:color-mix(in srgb, var(--accent-light) 70%, var(--bg-secondary));transform:translate(2px)}.profile-side-nav__item span{flex-direction:column;gap:2px;display:flex}.profile-side-nav__item strong{color:inherit;font-size:.83rem;font-weight:900}.profile-side-nav__item small{color:var(--text-muted);text-transform:capitalize;font-size:.7rem;font-weight:700}.profile-main-stack{flex-direction:column;gap:24px;min-width:0;display:flex}.profile-hero-card{border:1px solid color-mix(in srgb, var(--accent) 22%, var(--border));background:radial-gradient(circle at 10% 20%, color-mix(in srgb, var(--accent) 18%, transparent), transparent 30%), radial-gradient(circle at 92% 0%, color-mix(in srgb, var(--warning) 16%, transparent), transparent 34%), linear-gradient(135deg, var(--bg-secondary), var(--bg-primary));box-shadow:var(--shadow-md);border-radius:28px;grid-template-columns:minmax(0,1fr) minmax(220px,.35fr);align-items:end;gap:18px;padding:clamp(22px,4vw,34px);display:grid;position:relative;overflow:hidden}.profile-hero-card:after{content:"";background:color-mix(in srgb, var(--accent) 8%, transparent);border-radius:44px;width:180px;height:180px;position:absolute;bottom:-72px;right:-54px;transform:rotate(16deg)}.profile-hero-card>*{z-index:1;position:relative}.profile-hero-card__eyebrow{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px;font-size:.72rem;font-weight:950;display:inline-flex}.profile-hero-card h1{letter-spacing:-.06em;max-width:700px;margin:0 0 8px;font-size:clamp(1.65rem,4vw,2.5rem);font-weight:950;line-height:.98}.profile-hero-card p{max-width:680px;color:var(--text-secondary);font-size:.96rem;line-height:1.65}.profile-hero-card__status{border:1px solid color-mix(in srgb, var(--accent) 20%, var(--border));background:color-mix(in srgb, var(--bg-primary) 84%, var(--accent-light));border-radius:20px;padding:16px}.profile-hero-card__status span{color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;margin-bottom:5px;font-size:.7rem;font-weight:950;display:block}.profile-hero-card__status strong{color:var(--text-primary);text-transform:capitalize;font-size:1.15rem;font-weight:950;display:block}.profile-hero-card__status small{color:var(--text-secondary);margin-top:5px;font-size:.78rem;line-height:1.35;display:block}.profile-hero-card--verified .profile-hero-card__status{border-color:var(--success-border);background:var(--success-light)}.profile-hero-card--pending .profile-hero-card__status{border-color:var(--warning-border);background:var(--warning-light)}.profile-hero-card--rejected .profile-hero-card__status{border-color:var(--error-border);background:var(--error-light)}.profile-content-grid{grid-template-columns:minmax(0,.95fr) minmax(340px,1.05fr);align-items:start;gap:24px;display:grid}.profile-section-anchor{scroll-margin-top:104px}.learning-section-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.learning-section-heading h3{color:var(--text-primary);align-items:center;gap:8px;font-size:1.1rem;font-weight:900;display:flex}.learning-section-heading h3 svg{color:var(--accent)}.learning-section-heading p{color:var(--text-secondary);margin-top:3px;font-size:.84rem;line-height:1.5}.learning-context-toggle{border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-secondary);border-radius:999px;flex-shrink:0;align-items:center;gap:7px;padding:9px 12px;font-size:.8rem;font-weight:850;display:inline-flex}.learning-context-toggle svg{transition:transform var(--transition-fast)}[data-theme=dark] .dashboard-command-center{background:radial-gradient(circle at 8% 12%,#3b82f633,#0000 28%),radial-gradient(circle at 94% 18%,#f59e0b29,#0000 26%),linear-gradient(135deg,#111827,#0b0f19);border-color:#3b82f642}[data-theme=dark] .dashboard-status-rail__item,[data-theme=dark] .dashboard-command-center__nudge{background:#0f172ac7;border-color:#94a3b82e}.curriculum-rhythm-card{border:1px solid color-mix(in srgb, var(--success) 26%, var(--border));background:radial-gradient(circle at 96% 7%, color-mix(in srgb, var(--warning) 18%, transparent), transparent 24%), linear-gradient(135deg, color-mix(in srgb, var(--success-light) 52%, var(--bg-secondary)), color-mix(in srgb, var(--warning-light) 36%, var(--bg-secondary)) 48%, var(--bg-secondary) 100%);box-shadow:var(--shadow-md);border-radius:22px;margin-bottom:24px;position:relative;overflow:hidden}.curriculum-rhythm-card--semester{border-color:color-mix(in srgb, var(--accent) 28%, var(--border));background:radial-gradient(circle at 96% 7%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 24%), linear-gradient(135deg, color-mix(in srgb, var(--accent-light) 48%, var(--bg-secondary)), color-mix(in srgb, var(--success-light) 28%, var(--bg-secondary)) 54%, var(--bg-secondary) 100%)}.curriculum-rhythm-card__orb{background:color-mix(in srgb, var(--warning) 16%, transparent);border-radius:999px;width:150px;height:150px;position:absolute;top:-46px;right:-34px}.curriculum-rhythm-card--semester .curriculum-rhythm-card__orb{background:color-mix(in srgb, var(--accent) 14%, transparent)}.curriculum-rhythm-card__label,.curriculum-rhythm-card__pill{border:1px solid color-mix(in srgb, var(--accent) 22%, var(--border));background:color-mix(in srgb, var(--bg-primary) 86%, var(--accent-light));color:var(--text-primary);border-radius:999px;align-items:center;display:inline-flex;box-shadow:inset 0 1px #ffffff2e}.curriculum-rhythm-card__label{color:color-mix(in srgb, var(--success) 72%, var(--text-primary));letter-spacing:.04em;text-transform:uppercase;gap:8px;margin-bottom:12px;padding:6px 11px;font-size:.74rem;font-weight:900}.curriculum-rhythm-card--semester .curriculum-rhythm-card__label{color:var(--accent)}.curriculum-rhythm-card__pill{gap:7px;padding:8px 11px;font-size:.79rem;font-weight:800}.curriculum-rhythm-card__pill svg{color:var(--accent)}.curriculum-rhythm-card__title{color:var(--text-primary);margin-bottom:7px;font-size:clamp(1.18rem,2vw,1.5rem);font-weight:950;line-height:1.15}.curriculum-rhythm-card__summary{color:var(--text-secondary);max-width:680px;margin-bottom:16px;font-size:.92rem;line-height:1.6}.curriculum-rhythm-card__pace{background:color-mix(in srgb, var(--bg-primary) 90%, var(--accent-light));border:1px solid color-mix(in srgb, var(--accent) 20%, var(--border));box-shadow:var(--shadow-sm);border-radius:18px;padding:16px}.academic-timeline-bar{max-width:720px;margin-bottom:14px}.academic-timeline-bar>div:first-child{color:var(--text-muted);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:8px;font-size:.76rem;font-weight:850;display:grid}.academic-timeline-bar strong{color:var(--text-primary);text-align:center;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.academic-timeline-bar__track{background:color-mix(in srgb, var(--border) 72%, var(--bg-primary));border-radius:999px;height:9px;overflow:hidden}.academic-timeline-bar__track i{border-radius:inherit;background:linear-gradient(90deg, #14b8a6, var(--warning));height:100%;display:block}.academic-next-date-card{flex-direction:column;gap:7px;display:flex}.academic-next-date-card>p{color:var(--accent);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:6px;font-size:.72rem;font-weight:950;display:inline-flex}.academic-next-date-card>strong{color:var(--text-primary);font-size:1.05rem;font-weight:950;line-height:1.2}.academic-next-date-card>span{color:var(--text-primary);letter-spacing:-.04em;font-size:1.3rem;font-weight:950}.academic-next-date-card>small{color:var(--text-secondary);font-size:.8rem;font-weight:800}.academic-next-date-card__pace{border-top:1px solid var(--border);margin-top:6px;padding-top:11px}.academic-next-date-card__pace>div:first-child{color:var(--text-muted);justify-content:space-between;gap:10px;margin-bottom:7px;font-size:.72rem;font-weight:900;display:flex}.academic-next-date-card__pace strong{color:var(--text-secondary)}.academic-next-date-card__pace>div:last-child{background:var(--border);border-radius:999px;height:7px;overflow:hidden}.academic-next-date-card__pace i{border-radius:inherit;background:linear-gradient(90deg, var(--accent), #14b8a6);height:100%;display:block}.academic-date-list{z-index:1;flex-wrap:wrap;gap:8px;margin-top:18px;display:flex;position:relative}.academic-date-chip{border:1px solid color-mix(in srgb, var(--accent) 20%, var(--border));background:color-mix(in srgb, var(--bg-primary) 88%, var(--accent-light));color:var(--text-secondary);border-radius:999px;align-items:center;gap:8px;padding:8px 10px;font-size:.76rem;font-weight:850;display:inline-flex}.academic-date-chip strong{color:var(--text-primary)}.academic-date-chip em{color:var(--text-muted);font-style:normal}.academic-date-chip--critical{border-color:color-mix(in srgb, var(--error) 30%, var(--border))}.academic-date-chip--critical strong{color:var(--error)}.academic-date-chip--high{border-color:color-mix(in srgb, var(--warning) 36%, var(--border))}.academic-date-chip--pending{color:var(--text-muted)}[data-theme=dark] .curriculum-rhythm-card{background:radial-gradient(circle at 96% 7%,#f59e0b33,#0000 24%),linear-gradient(135deg,#0d948838,#78350f38 48%,#111827 100%);border-color:#14b8a657}[data-theme=dark] .curriculum-rhythm-card--semester{background:radial-gradient(circle at 96% 7%,#3b82f62e,#0000 24%),linear-gradient(135deg,#1d4ed840,#0d94882b 54%,#111827 100%);border-color:#3b82f657}[data-theme=dark] .curriculum-rhythm-card__label,[data-theme=dark] .curriculum-rhythm-card__pill,[data-theme=dark] .curriculum-rhythm-card__pace,[data-theme=dark] .academic-date-chip{color:#f8fafc;background:#0f172ad1;border-color:#94a3b83d;box-shadow:inset 0 1px #ffffff0f}[data-theme=dark] .curriculum-rhythm-card__label{color:#5eead4}[data-theme=dark] .curriculum-rhythm-card--semester .curriculum-rhythm-card__label{color:#93c5fd}.study-space-layout,.library-shell{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:18px;display:grid}.study-space-side-panel,.library-sidebar{flex-direction:column;gap:14px;display:flex;position:sticky;top:92px}.study-space-side-card{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-secondary);box-shadow:var(--shadow-sm);padding:18px}.study-space-side-card svg{color:var(--accent);margin-bottom:12px}.study-space-side-card h3{margin-bottom:6px;font-size:.98rem;font-weight:850}.study-space-side-card p{color:var(--text-secondary);font-size:.84rem;line-height:1.55}.study-space-main-panel,.library-main{min-width:0}.study-space-status-row{flex-wrap:wrap;gap:8px;margin:-8px 0 18px;display:flex}.study-space-status-row span{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:.76rem;font-weight:800;display:inline-flex}.study-space-coming-note{border-radius:var(--radius-md);background:var(--accent-light);color:var(--accent);padding:12px 14px;font-size:.82rem;font-weight:700;line-height:1.5}.library-sidebar{border-radius:var(--radius-lg);background:var(--bg-secondary);border:1px solid var(--border);box-shadow:var(--shadow-sm);padding:12px}.library-filter-btn{border-radius:var(--radius-md);width:100%;color:var(--text-secondary);text-align:left;transition:background var(--transition-fast), color var(--transition-fast);align-items:center;gap:9px;padding:11px 12px;font-size:.86rem;font-weight:800;display:flex}.library-filter-btn:hover,.library-filter-btn.active{background:var(--accent-light);color:var(--accent)}.library-feature-card{border-radius:var(--radius-lg);background:radial-gradient(circle at 5% 20%, color-mix(in srgb, var(--accent) 12%, transparent), transparent 30%), var(--bg-secondary);border:1px solid var(--border);box-shadow:var(--shadow-sm);gap:14px;margin-bottom:18px;padding:18px;display:flex}.library-feature-card>svg{color:var(--accent);flex-shrink:0}.library-feature-card h3{margin-bottom:5px;font-size:1rem;font-weight:900}.library-feature-card p{color:var(--text-secondary);font-size:.86rem;line-height:1.6}.library-results-grid{gap:14px;display:grid}.library-item-card{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-secondary);box-shadow:var(--shadow-sm);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px;display:grid}.library-item-icon{width:46px;height:46px;color:var(--accent);background:var(--accent-light);border-radius:16px;justify-content:center;align-items:center;display:inline-flex}.library-item-meta{color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;font-size:.7rem;font-weight:900;display:inline-block}.library-item-content h3{margin-bottom:5px;font-size:1rem;font-weight:900}.library-item-content p{color:var(--text-secondary);margin-bottom:10px;font-size:.86rem;line-height:1.55}.library-open-btn{border-radius:var(--radius-md);color:var(--text-muted);background:var(--bg-tertiary);align-items:center;gap:6px;padding:8px 10px;font-size:.78rem;font-weight:850;display:inline-flex}.library-open-btn:disabled,.material-open-btn:disabled{opacity:.65;cursor:not-allowed}@media (width<=720px){.motivation-banner{grid-template-columns:auto minmax(0,1fr)}.motivation-banner__action{grid-column:1/-1;justify-content:center}.motivation-banner h3{font-size:16px}.streak-progress-card__header{flex-direction:column}.streak-progress-card__count{text-align:left}.dashboard-section-hero{flex-direction:column;align-items:flex-start;padding:22px}.dashboard-section-hero-pills{justify-content:flex-start;max-width:100%}.dashboard-section-primary{width:100%}.dashboard-command-center{padding:22px}.dashboard-status-rail,.dashboard-command-center__side{grid-template-columns:1fr}.dashboard-command-center__animation{justify-content:flex-start}.learning-section-heading{flex-direction:column}.learning-context-toggle,.dashboard-command-center__primary{width:100%}.dashboard-command-center__nudge{border-radius:var(--radius-md);width:100%}.profile-shell{grid-template-columns:1fr;gap:16px;padding:18px 14px 32px}.profile-side-nav{padding-bottom:2px;position:sticky;top:61px;overflow-x:auto}.profile-side-nav__card{border-radius:20px;min-width:max-content;padding:10px}.profile-side-nav__identity,.profile-side-nav__status{display:none}.profile-side-nav nav{flex-direction:row;gap:8px}.profile-side-nav__item{min-width:138px;padding:10px;transform:none}.profile-side-nav__item:hover,.profile-side-nav__item.is-active{transform:none}.profile-main-stack{gap:16px}.profile-hero-card{border-radius:24px;grid-template-columns:1fr}.profile-content-grid{grid-template-columns:1fr;gap:18px}.study-space-layout,.library-shell{grid-template-columns:1fr}.study-space-side-panel,.library-sidebar{position:static}.library-item-card{grid-template-columns:1fr}.library-open-btn{justify-content:center}}.audio-reader-bar{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);align-items:flex-start;gap:12px;margin-bottom:16px;padding:10px 14px;display:flex;position:relative}.audio-play-btn{background:var(--accent);color:#fff;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:none;border-radius:20px;flex-shrink:0;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:600;display:flex}.audio-play-btn:hover{background:var(--accent-hover)}.audio-play-btn.playing{background:#ef4444}.audio-word-track{color:var(--text-secondary);flex:1;max-height:60px;font-size:13px;line-height:1.6;overflow:hidden}.audio-word{transition:background var(--transition-fast), color var(--transition-fast);border-radius:2px}.audio-word--active{color:#1a1a2e;background:#fef08a;padding:0 2px}[data-theme=dark] .audio-word--active{color:#fef9c3;background:#713f12}.audio-mute-btn{border-radius:var(--radius-sm);color:var(--text-muted);transition:color var(--transition-fast);padding:6px}.audio-mute-btn:hover{color:var(--text-primary)}.content-block{border-radius:var(--radius-lg);overflow:visible}.content-block--text{border:1px solid var(--border);background:linear-gradient(90deg, #f59e0b0f, transparent 30%), var(--bg-secondary);box-shadow:var(--shadow-sm);padding:clamp(22px,4vw,34px)}.content-text{color:var(--text-secondary);font-size:16px;line-height:1.8}.content-text h1,.content-text h2,.content-text h3{color:var(--text-primary);letter-spacing:-.025em;margin:24px 0 12px;line-height:1.2}.content-text h1:first-child,.content-text h2:first-child,.content-text h3:first-child{margin-top:0}.content-text strong{color:var(--text-primary)}.content-text code{background:var(--bg-tertiary);border:1px solid var(--border);font-family:var(--font-mono);border-radius:4px;padding:1px 5px;font-size:14px}.term-popover-wrap{display:inline;position:relative}.term-highlight{color:var(--text-primary);font:inherit;cursor:help;background:linear-gradient(#0000 52%,#f59e0b3d 52%),#f59e0b0f;border-bottom:1px solid #f59e0b8c;border-radius:5px;padding:0 2px;font-weight:700;display:inline}.term-highlight:hover,.term-highlight:focus-visible{color:var(--accent);background:linear-gradient(#0000 48%,#f59e0b61 48%),#f59e0b1f;outline:none}.term-popover{z-index:40;border:1px solid var(--accent-border);background:radial-gradient(circle at 12% 0%, #f59e0b29, transparent 32%), var(--bg-secondary);width:min(320px,100vw - 40px);color:var(--text-primary);border-radius:18px;flex-direction:column;gap:10px;padding:14px;line-height:1.45;display:flex;position:absolute;bottom:calc(100% + 10px);left:0;box-shadow:0 18px 48px #0f172a2e}.term-popover:after{content:"";background:var(--bg-secondary);border-right:1px solid var(--accent-border);border-bottom:1px solid var(--accent-border);width:12px;height:12px;position:absolute;bottom:-7px;left:18px;transform:rotate(45deg)}.term-popover__header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.term-popover__header strong{color:var(--text-primary);font-size:15px;display:block}.term-popover__header small,.term-popover__source{color:var(--text-muted);font-size:12px;display:block}.term-popover__body,.term-popover__loading{color:var(--text-secondary);font-size:13px}.term-popover__loading{align-items:center;gap:8px;display:flex}.term-popover__link{width:fit-content;color:var(--accent);align-items:center;gap:6px;font-size:13px;font-weight:800;text-decoration:none;display:inline-flex}.term-popover__link:hover{text-decoration:underline}.content-block--callout{background:radial-gradient(circle at 0% 0%, #f59e0b2e, transparent 34%), var(--accent-light);border:1px solid var(--accent-border);border-left:5px solid var(--accent);box-shadow:var(--shadow-sm);gap:14px;padding:20px 22px;display:flex}.callout-icon{color:var(--accent);flex-shrink:0;padding-top:2px}.content-block--callout p{color:var(--text-primary);font-size:14px;line-height:1.65}.content-block--diagram{text-align:center}.diagram-img{border-radius:var(--radius-md);border:1px solid var(--border);max-width:100%}.diagram-caption{color:var(--text-muted);margin-top:8px;font-size:13px;font-style:italic}.video-wrapper{border-radius:var(--radius-md);background:#000;height:0;padding-bottom:56.25%;position:relative;overflow:hidden}.video-wrapper iframe,.video-wrapper video{width:100%;height:100%;position:absolute;top:0;left:0}.video-caption{color:var(--text-muted);text-align:center;margin-top:8px;font-size:13px}.inline-question-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-secondary);transition:border-color var(--transition-fast);padding:24px}.inline-question-card.iq-correct{border-color:var(--success);background:var(--success-light)}.inline-question-card.iq-wrong{border-color:var(--error);background:var(--error-light)}.iq-label{letter-spacing:1px;text-transform:uppercase;color:var(--accent);align-items:center;gap:6px;margin-bottom:12px;font-size:11px;font-weight:700;display:flex}.iq-question{color:var(--text-primary);margin-bottom:20px;font-size:16px;font-weight:600;line-height:1.5}.iq-options{flex-direction:column;gap:10px;display:flex}.iq-option{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-primary);cursor:pointer;text-align:left;transition:all var(--transition-fast);align-items:center;gap:12px;padding:12px 16px;font-size:14px;display:flex}.iq-option:hover:not(:disabled){border-color:var(--accent);background:var(--accent-light)}.iq-option:disabled{cursor:default}.iq-option--correct{color:var(--text-primary);border-color:var(--success)!important;background:var(--success-light)!important}.iq-option--wrong{border-color:var(--error)!important;background:var(--error-light)!important}.iq-option-letter{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:12px;font-weight:700;display:flex}.iq-result{color:var(--text-primary);align-items:center;gap:8px;padding:12px 0 0;font-size:14px;font-weight:600;display:flex}.study-materials-page{background:var(--bg-primary);min-height:100vh}.study-materials-container{max-width:1100px;margin:0 auto;padding:32px 40px}.materials-toolbar{align-items:stretch;gap:12px;margin-bottom:28px;display:flex}.materials-search-bar{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-muted);flex:1;align-items:center;gap:10px;padding:10px 16px;display:flex}.materials-search-bar input{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-size:15px}.materials-upload-btn{border-radius:var(--radius-md);background:var(--accent);color:#fff;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast), background var(--transition-fast);align-items:center;gap:8px;padding:0 18px;font-size:14px;font-weight:700;display:flex}.materials-upload-btn:hover{background:var(--accent-hover);transform:translateY(-1px)}.materials-empty{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:80px 20px;display:flex}.materials-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.material-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);transition:all var(--transition-normal);box-shadow:var(--shadow-sm);flex-direction:column;gap:10px;padding:24px;display:flex}.material-card:hover{box-shadow:var(--shadow-lg);border-color:var(--border-hover);transform:translateY(-3px)}.material-card-header{justify-content:space-between;align-items:center;display:flex}.material-file-icon-wrap{border-radius:var(--radius-md);background:var(--bg-tertiary);justify-content:center;align-items:center;width:44px;height:44px;display:flex}.material-card-meta{flex-wrap:wrap;gap:6px;display:flex}.file-icon--pdf{color:#ef4444}.file-icon--pptx{color:#f97316}.file-icon--docx{color:#3b82f6}.file-icon--image{color:#10b981}.file-type-badge{letter-spacing:.5px;text-transform:uppercase;border-radius:20px;padding:3px 8px;font-size:10px;font-weight:700}.badge--pdf{color:#dc2626;background:#fef2f2}.badge--pptx{color:#ea580c;background:#fff7ed}.badge--docx{color:#2563eb;background:#eff6ff}.badge--image{color:#16a34a;background:#f0fdf4}[data-theme=dark] .badge--pdf{color:#fca5a5;background:#450a0a}[data-theme=dark] .badge--pptx{color:#fdba74;background:#431407}[data-theme=dark] .badge--docx{color:#93c5fd;background:#1e3a8a}[data-theme=dark] .badge--image{color:#86efac;background:#052e16}.version-badge{background:var(--bg-tertiary);color:var(--text-muted);border-radius:20px;padding:3px 8px;font-size:10px;font-weight:700}.processing-badge{letter-spacing:.4px;text-transform:uppercase;background:var(--bg-tertiary);color:var(--text-muted);border-radius:20px;padding:3px 8px;font-size:10px;font-weight:800}.processing--processing,.processing--uploaded,.processing--pending_upload{color:#b45309;background:#fffbeb}.processing--needs_review{color:#2563eb;background:#eff6ff}.processing--failed{color:#dc2626;background:#fef2f2}.material-title{color:var(--text-primary);font-size:15px;font-weight:700;line-height:1.3}.material-desc{color:var(--text-muted);font-size:13px;line-height:1.5}.material-trust-note{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-muted);padding:9px 10px;font-size:12px;line-height:1.4}.material-info-row{flex-direction:column;gap:4px;display:flex}.material-info-item{color:var(--text-muted);align-items:center;gap:6px;font-size:12px;display:flex}.material-tags{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.material-tag{background:var(--bg-tertiary);color:var(--text-muted);border-radius:20px;padding:2px 8px;font-size:11px}.material-card-actions{margin-top:auto}.material-open-btn{color:var(--accent);transition:gap var(--transition-fast);align-items:center;gap:4px;font-size:14px;font-weight:600;display:flex}.material-open-btn:hover{gap:8px}.document-viewer-page{background:var(--bg-primary);flex-direction:column;height:100vh;display:flex;position:relative;overflow:hidden}.doc-viewer-nav{border-bottom:1px solid var(--border);background:var(--bg-primary);z-index:200;flex-shrink:0;align-items:center;gap:12px;min-height:56px;padding:10px 20px;display:flex}.doc-title-bar{white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:14px;font-weight:600;overflow:hidden}.doc-nav-actions{align-items:center;gap:10px;display:flex}.notes-panel-toggle{border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--text-secondary);transition:all var(--transition-fast);align-items:center;gap:6px;padding:7px 12px;font-size:13px;font-weight:500;display:flex;position:relative}.notes-panel-toggle:hover,.notes-panel-toggle.active{background:var(--accent-light);color:var(--accent);border-color:var(--accent-border)}.notes-count{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:17px;height:17px;font-size:10px;font-weight:700;display:flex}.submit-update-btn{border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--text-secondary);transition:all var(--transition-fast);align-items:center;gap:6px;padding:7px 14px;font-size:13px;font-weight:500;display:flex}.submit-update-btn:hover{background:var(--success-light);color:var(--success);border-color:var(--success-border)}.doc-viewer-layout{flex:1;display:flex;overflow:hidden}.doc-viewer-main{flex-direction:column;flex:1;display:flex;overflow:hidden}.material-info-banner{border-bottom:1px solid var(--border);background:var(--bg-secondary);flex-shrink:0;padding:10px 20px}.material-version-tag{color:var(--accent);font-size:12px;font-weight:600}.material-prof-tag{color:var(--text-muted);font-size:12px}.material-desc-banner{color:var(--text-muted);margin-top:4px;font-size:12px}.material-viewer-trust-row{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.material-viewer-trust-row span{color:var(--text-muted);background:var(--bg-tertiary);border:1px solid var(--border);border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700}.doc-viewer-frame-wrap{flex:1;position:relative;overflow:hidden}.doc-iframe{border:none;width:100%;height:100%}.doc-image{object-fit:contain;max-width:100%;max-height:100%;margin:auto;display:block}.image-viewer{background:#111;justify-content:center;align-items:center;padding:20px;display:flex}.selection-overlay-hint{color:#ffffffd9;pointer-events:none;white-space:nowrap;background:#000000a6;border-radius:20px;padding:4px 14px;font-size:12px;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.doc-viewer-unsupported{height:100%;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.learntall-reader{background:radial-gradient(circle at top left, var(--accent-light), transparent 320px), var(--bg-primary);flex:1;padding:18px;overflow-y:auto}.learntall-reader-notice{border:1px solid var(--accent-border);border-radius:var(--radius-lg);background:var(--accent-light);max-width:840px;color:var(--text-secondary);align-items:flex-start;gap:12px;margin:0 auto 16px;padding:14px 16px;font-size:13px;line-height:1.5;display:flex}.learntall-reader-notice strong,.learntall-reader-notice span{display:block}.learntall-reader-notice strong{color:var(--text-primary)}.learntall-reader-meta{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.learntall-reader-meta span{border:1px solid var(--accent-border);color:var(--text-secondary);background:#ffffff80;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800}.learntall-pages{flex-direction:column;gap:18px;max-width:840px;margin:0 auto 40px;display:flex}.learntall-page-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:22px}.learntall-page-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;justify-content:space-between;gap:16px;margin-bottom:14px;font-size:12px;display:flex}.learntall-page-header strong{color:var(--text-primary);text-transform:none;letter-spacing:0;font-size:14px}.learntall-page-notes-chip{background:var(--accent-light);border:1px solid var(--accent-border);width:fit-content;color:var(--accent);border-radius:999px;align-items:center;gap:6px;margin:-4px 0 14px;padding:5px 9px;font-size:12px;font-weight:800;display:inline-flex}.learntall-page-preview{object-fit:contain;border-radius:var(--radius-md);border:1px solid var(--border);background:#111;width:100%;max-height:520px;margin-bottom:16px}.learntall-slide-preview-shell{border-radius:calc(var(--radius-md) + 8px);border:1px solid color-mix(in srgb, var(--accent) 22%, var(--border));background:radial-gradient(circle at 20% 0,#ffffff24,#0000 32%),linear-gradient(135deg,#111827,#020617);margin-bottom:16px;padding:12px;box-shadow:0 18px 50px #0f172a2e}.learntall-slide-preview-shell .learntall-page-preview{background:#fff;border-color:#ffffff1f;margin-bottom:0}.learntall-study-layer{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-primary);overflow:hidden}.learntall-study-layer summary{cursor:pointer;color:var(--text-primary);justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;font-size:13px;font-weight:800;list-style:none;display:flex}.learntall-study-layer summary::-webkit-details-marker{display:none}.learntall-study-layer summary small{color:var(--text-muted);text-align:right;font-size:11px;font-weight:700}.learntall-page-text{white-space:pre-wrap;color:var(--text-primary);border-top:1px solid var(--border);background:linear-gradient(90deg, #f59e0b14, transparent 28%), var(--bg-primary);border-radius:0;padding:18px;font-size:15px;line-height:1.75}.learntall-page-text .content-text{font-size:inherit;line-height:inherit}.learntall-media-list{flex-direction:column;gap:10px;margin-top:18px;display:flex}.learntall-media-item{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-secondary);flex-direction:column;gap:8px;padding:12px;font-size:13px;display:flex}.learntall-media-item>span{align-items:center;gap:8px;font-weight:700;display:flex}.learntall-video{border-radius:var(--radius-sm);background:#000;width:100%;max-height:360px}.notes-sidebar{border-left:1px solid var(--border);background:var(--bg-secondary);flex-direction:column;flex-shrink:0;width:300px;display:flex;overflow:hidden}.notes-sidebar-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.notes-sidebar-header h3{align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex}.notes-sidebar-body{flex-direction:column;flex:1;gap:10px;padding:12px;display:flex;overflow-y:auto}.notes-empty{color:var(--text-muted);text-align:center;padding:20px 0;font-size:13px;line-height:1.6}.note-item{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-md);border-left-width:4px;flex-direction:column;gap:6px;padding:12px 14px;display:flex}.note-item-header{justify-content:space-between;align-items:center;display:flex}.note-type-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);align-items:center;gap:4px;font-size:11px;font-weight:700;display:flex}.note-delete-btn{color:var(--text-muted);transition:color var(--transition-fast);padding:2px}.note-delete-btn:hover{color:var(--error)}.note-quote{color:var(--text-secondary);-webkit-line-clamp:3;border-left:none;-webkit-box-orient:vertical;font-size:13px;font-style:italic;line-height:1.4;display:-webkit-box;overflow:hidden}.note-body{color:var(--text-primary);font-size:13px;line-height:1.5}.note-anchor{color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;font-size:11px;font-weight:700}.highlight-panel{z-index:500;animation:.2s slideUp;position:fixed;bottom:80px;left:50%;transform:translate(-50%)}.highlight-panel-inner{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);flex-direction:column;gap:14px;width:340px;padding:20px;display:flex;position:relative}.highlight-panel-close{color:var(--text-muted);border-radius:var(--radius-sm);transition:all var(--transition-fast);padding:4px;position:absolute;top:10px;right:10px}.highlight-panel-close:hover{color:var(--text-primary);background:var(--bg-tertiary)}.highlight-selected-text{color:var(--text-secondary);max-height:60px;font-size:13px;font-style:italic;line-height:1.5;overflow:hidden}.highlight-colors{gap:8px;display:flex}.highlight-color-swatch{cursor:pointer;width:26px;height:26px;transition:transform var(--transition-fast), border-color var(--transition-fast);border:2px solid #0000;border-radius:50%}.highlight-color-swatch:hover{transform:scale(1.15)}.highlight-color-swatch.selected{border-color:var(--text-primary);transform:scale(1.1)}.highlight-note-input{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);resize:none;transition:border-color var(--transition-fast);outline:none;padding:10px 12px;font-size:13px}.highlight-note-input:focus{border-color:var(--accent)}.highlight-save-btn{background:var(--accent);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast);border:none;justify-content:center;align-items:center;gap:6px;padding:10px;font-size:14px;font-weight:600;display:flex}.highlight-save-btn:hover{background:var(--accent-hover)}.highlight-save-btn:disabled{opacity:.6;cursor:not-allowed}.file-upload-label{cursor:pointer}.file-upload-box{border:2px dashed var(--border);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-muted);transition:all var(--transition-fast);justify-content:center;align-items:center;gap:10px;padding:32px;font-size:14px;display:flex}.file-upload-box:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-light)}.file-upload-label input[type=file]{display:none}.submission-message-input{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;color:var(--text-primary);resize:vertical;transition:border-color var(--transition-fast);outline:none;padding:10px 14px;font-size:14px}.submission-message-input:focus{border-color:var(--accent)}.field-label{color:var(--text-secondary);flex-direction:column;gap:6px;font-size:13px;font-weight:700;display:flex}.modal-text-input{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;color:var(--text-primary);transition:border-color var(--transition-fast);outline:none;padding:10px 14px;font-size:14px}.modal-text-input:focus{border-color:var(--accent)}.modal-error{border:1px solid var(--error-border);border-radius:var(--radius-sm);background:var(--error-light);color:var(--error);padding:10px 12px;font-size:13px}.submission-success{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:40px 24px;display:flex}.success-icon{color:var(--success)}@media (width<=768px){.course-hero{padding:40px 20px 32px}.course-section-cards{grid-template-columns:1fr;padding:20px}.course-modules-overview,.course-outcomes-section,.course-prereqs-section{padding:0 20px 28px}.study-materials-container{padding:20px}.materials-toolbar{flex-direction:column}.materials-upload-btn{justify-content:center;min-height:44px}.materials-grid{grid-template-columns:1fr}.course-lesson-main{padding:20px}.course-sidebar{z-index:300;box-shadow:var(--shadow-xl);position:fixed;top:56px;bottom:0;left:0;width:280px!important}.course-sidebar.closed{transform:translate(-100%)}.notes-sidebar{z-index:300;box-shadow:var(--shadow-xl);position:fixed;top:56px;bottom:0;right:0}.lesson-heading{font-size:22px}.highlight-panel-inner{width:calc(100vw - 32px)}}
