:root{--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:"Fira Code", "SF Mono", Monaco, "Cascadia Code", Consolas, monospace;--bg-app:#0d1117;--bg-sidebar:#161b22;--bg-sidebar-hover:#1f242c;--bg-topbar:#161b22d9;--bg-card:#161b22;--bg-card-hover:#1c2128;--bg-callout:#131d2e;--bg-code:#0b0e14;--bg-code-header:#13171f;--border-subtle:#21262d;--border-muted:#30363d;--border-strong:#388bfd;--border-callout:#1f6feb;--text-primary:#f0f6fc;--text-secondary:#c9d1d9;--text-muted:#8b949e;--text-link:#58a6ff;--text-link-hover:#79c0ff;--primary:#3b82f6;--primary-hover:#2563eb;--primary-glow:#3b82f640;--diff-easy:#238636;--diff-easy-bg:#23863626;--diff-med:#d29922;--diff-med-bg:#d2992226;--diff-hard:#f85149;--diff-hard-bg:#f8514926;--sidebar-width:340px;--topbar-height:64px;--transition-fast:.15s ease;--transition-norm:.25s ease;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 14px #0006;--shadow-lg:0 10px 30px #00000080}[data-theme=light]{--bg-app:#f8fafc;--bg-sidebar:#fff;--bg-sidebar-hover:#f1f5f9;--bg-topbar:#ffffffe0;--bg-card:#fff;--bg-card-hover:#f8fafc;--bg-callout:#eff6ff;--bg-code:#0f172a;--bg-code-header:#1e293b;--border-subtle:#e2e8f0;--border-muted:#cbd5e1;--border-strong:#3b82f6;--border-callout:#3b82f6;--text-primary:#0f172a;--text-secondary:#334155;--text-muted:#64748b;--text-link:#2563eb;--text-link-hover:#1d4ed8;--primary:#2563eb;--primary-hover:#1d4ed8;--primary-glow:#2563eb33;--shadow-sm:0 1px 3px #00000014;--shadow-md:0 4px 14px #00000014;--shadow-lg:0 10px 30px #0000001a}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:var(--font-sans);background-color:var(--bg-app);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.65}.reading-progress-bar{z-index:9999;background:linear-gradient(90deg,#3b82f6,#8b5cf6,#ec4899);width:0%;height:3px;transition:width .1s;position:fixed;top:0;left:0}.app-shell{background-color:var(--bg-app);flex-direction:column;width:100vw;height:100vh;display:flex;position:relative;overflow:hidden}.app-body{height:calc(100vh - var(--topbar-height));flex-direction:row;flex:1;width:100vw;min-width:0;display:flex;position:relative;overflow:hidden}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-muted);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.sidebar-container{background-color:var(--bg-sidebar);border-right:1px solid var(--border-subtle);will-change:width;flex-shrink:0;height:100%;transition:width .28s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.sidebar-container.expanded{width:var(--sidebar-width)}.sidebar-container.collapsed{width:54px}.sidebar-rail{background-color:var(--bg-sidebar);z-index:10;flex-direction:column;justify-content:space-between;align-items:center;width:54px;height:100%;padding:12px 0 16px;transition:opacity .2s cubic-bezier(.16,1,.3,1),transform .26s cubic-bezier(.16,1,.3,1),visibility .26s;display:flex;position:absolute;top:0;bottom:0;left:0}.sidebar-container.collapsed .sidebar-rail{opacity:1;visibility:visible;pointer-events:auto;transform:translate(0)}.sidebar-container.expanded .sidebar-rail{opacity:0;visibility:hidden;pointer-events:none;transform:translate(-16px)}.rail-top{flex-direction:column;align-items:center;gap:12px;width:100%;display:flex}.rail-icon-btn{width:38px;height:38px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;display:flex;position:relative}.rail-icon-btn:hover{background-color:var(--bg-card-hover);color:var(--text-primary)}.rail-icon-btn.active{color:var(--primary);background-color:#3b82f61a}.rail-logo-wrap{border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;display:flex;overflow:hidden}.rail-logo-icon{width:100%;height:100%}.rail-bottom{flex-direction:column;align-items:center;width:100%;display:flex}.rail-progress-badge{background-color:var(--bg-app);border:1px solid var(--border-subtle);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;width:36px;height:24px;display:flex;position:relative}.rail-progress-text{color:var(--primary);font-size:.65rem;font-weight:700;font-family:var(--font-mono)}.chatgpt-tooltip{color:#fff;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;z-index:1000;background-color:#212121;border:1px solid #333;border-radius:8px;padding:5px 10px;font-size:.78rem;font-weight:500;transition:opacity .15s,transform .15s,visibility .15s;position:absolute;top:50%;left:calc(100% + 10px);transform:translateY(-50%)scale(.95);box-shadow:0 4px 14px #0006}[data-theme=light] .chatgpt-tooltip{color:#f9fafb;background-color:#1f2937;border-color:#374151}.rail-icon-btn:hover .chatgpt-tooltip,.rail-progress-badge:hover .chatgpt-tooltip{opacity:1;visibility:visible;transform:translateY(-50%)scale(1)}.sidebar{width:var(--sidebar-width);background-color:var(--bg-sidebar);z-index:20;flex-direction:column;height:100%;transition:opacity .22s cubic-bezier(.16,1,.3,1),transform .28s cubic-bezier(.16,1,.3,1),visibility .28s;display:flex;position:absolute;top:0;bottom:0;left:0}.sidebar-container.expanded .sidebar{opacity:1;visibility:visible;pointer-events:auto;transform:translate(0)}.sidebar-container.collapsed .sidebar{opacity:0;visibility:hidden;pointer-events:none;transform:translate(-24px)}.chatgpt-sidebar-header{border-bottom:1px solid var(--border-subtle);background-color:var(--bg-sidebar);flex-shrink:0;justify-content:space-between;align-items:center;height:56px;padding:0 16px;display:flex}.chatgpt-header-title-wrap{color:var(--text-secondary);align-items:center;gap:8px;display:flex}.drawer-header-icon{color:var(--primary);flex-shrink:0}.chatgpt-drawer-title{letter-spacing:-.01em;color:var(--text-primary);font-size:.95rem;font-weight:700;font-family:var(--font-sans)}.chatgpt-header-actions{align-items:center;gap:6px;display:flex}.chatgpt-action-btn{width:32px;height:32px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;display:flex;position:relative}.chatgpt-action-btn:hover{background-color:var(--bg-card-hover);color:var(--text-primary)}.chatgpt-action-btn .chatgpt-tooltip{border-radius:20px;padding:6px 14px;font-size:.8rem;font-weight:500;top:calc(100% + 8px);left:50%;right:auto;transform:translate(-50%)translateY(-4px)scale(.96)}.chatgpt-action-btn:hover .chatgpt-tooltip{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)scale(1)}.chatgpt-quick-actions{padding:12px 14px 6px}.chatgpt-quick-btn{background-color:var(--bg-card);border:1px solid var(--border-subtle);width:100%;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);border-radius:8px;align-items:center;gap:10px;padding:9px 12px;font-size:.84rem;font-weight:600;display:flex}.chatgpt-quick-btn:hover{background-color:var(--bg-card-hover);color:var(--text-primary);border-color:var(--border-muted)}.sidebar-progress-section{flex-direction:column;gap:12px;padding:8px 14px 12px;display:flex}.brand-row{align-items:center;gap:12px;display:flex}.brand-logo-wrap{flex-shrink:0;width:36px;height:36px}.brand-logo-icon{width:100%;height:100%;box-shadow:0 2px 8px var(--primary-glow);border-radius:8px}.brand-info{flex-direction:column;display:flex}.brand-title{letter-spacing:-.02em;color:var(--text-primary);font-size:1.05rem;font-weight:700;line-height:1.2}.brand-subtitle{color:var(--text-muted);font-size:.75rem;font-weight:500}.progress-card{background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:8px;padding:10px 12px}.progress-header{justify-content:space-between;align-items:center;margin-bottom:6px;font-size:.78rem;display:flex}.progress-label{color:var(--text-muted);font-weight:500}.progress-stat{color:var(--primary);font-weight:700;font-family:var(--font-mono)}.progress-track{background-color:var(--border-muted);border-radius:999px;width:100%;height:6px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#3b82f6,#10b981);border-radius:999px;height:100%;transition:width .4s cubic-bezier(.4,0,.2,1)}.search-box{align-items:center;display:flex;position:relative}.search-icon{width:16px;height:16px;color:var(--text-muted);pointer-events:none;position:absolute;left:12px}.search-box input{width:100%;font-size:.85rem;font-family:var(--font-sans);background-color:var(--bg-app);color:var(--text-primary);border:1px solid var(--border-subtle);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);border-radius:8px;outline:none;padding:9px 34px}.search-box input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.clear-search-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:1.1rem;line-height:1;display:none;position:absolute;right:10px}.clear-search-btn:hover{color:var(--text-primary)}.sidebar-nav{flex:1;padding:14px 12px;overflow-y:auto}.nav-loading{color:var(--text-muted);flex-direction:column;align-items:center;gap:12px;padding:40px 20px;font-size:.85rem;display:flex}.nav-section{margin-bottom:8px}.section-header{cursor:pointer;width:100%;color:var(--text-secondary);font-family:var(--font-sans);text-align:left;transition:background-color var(--transition-fast), color var(--transition-fast);background:0 0;border:none;border-radius:6px;justify-content:space-between;align-items:center;padding:8px 10px;font-size:.82rem;font-weight:600;display:flex}.section-header:hover{background-color:var(--bg-sidebar-hover);color:var(--text-primary)}.section-title-wrap{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:8px;display:flex;overflow:hidden}.section-chevron{width:14px;height:14px;color:var(--text-muted);transition:transform var(--transition-norm);flex-shrink:0}.nav-section.expanded .section-chevron{transform:rotate(90deg)}.section-count-badge{background-color:var(--border-subtle);color:var(--text-muted);font-size:.7rem;font-family:var(--font-mono);border-radius:12px;flex-shrink:0;padding:2px 6px;font-weight:500}.section-lessons{border-left:1px solid var(--border-subtle);margin-top:2px;margin-left:16px;padding-left:12px;list-style:none;display:none}.nav-section.expanded .section-lessons{display:block}.lesson-nav-item{margin-bottom:2px}.lesson-nav-link{color:var(--text-secondary);transition:all var(--transition-fast);border-radius:6px;justify-content:space-between;align-items:center;padding:6px 10px;font-size:.82rem;text-decoration:none;display:flex;position:relative}.lesson-nav-link:hover{background-color:var(--bg-sidebar-hover);color:var(--text-primary)}.lesson-nav-link.active{background-color:var(--primary-glow);color:var(--primary);font-weight:600}.lesson-nav-link.active:before{content:"";background-color:var(--primary);border-radius:2px;width:3px;height:16px;position:absolute;top:50%;left:-13px;transform:translateY(-50%)}.lesson-link-left{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:8px;display:flex;overflow:hidden}.lesson-status-icon{width:14px;height:14px;color:var(--border-muted);transition:color var(--transition-fast);flex-shrink:0}.lesson-nav-item.completed .lesson-status-icon{color:#10b981}.lesson-link-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.diff-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.diff-dot.easy{background-color:var(--diff-easy)}.diff-dot.medium{background-color:var(--diff-med)}.diff-dot.hard{background-color:var(--diff-hard)}.main-content{background-color:var(--bg-app);flex-direction:column;flex:1;height:100%;display:flex;position:relative;overflow-y:auto}.topbar{height:var(--topbar-height);background-color:var(--bg-topbar);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-subtle);z-index:50;flex-shrink:0;justify-content:space-between;align-items:center;width:100%;padding:0 24px;display:flex;position:relative;overflow:hidden}.topbar-left{align-items:center;gap:14px;min-width:0;display:flex}.topbar-sidebar-toggle-btn{background-color:var(--bg-card);border:1px solid var(--border-subtle);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:none}.topbar-sidebar-toggle-btn:hover{background-color:var(--bg-card-hover);border-color:var(--border-muted);color:var(--text-primary)}.topbar-brand{cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity var(--transition-fast);flex-shrink:0;align-items:center;gap:10px;text-decoration:none;display:flex}.topbar-brand:hover{opacity:.92}.topbar-brand .brand-logo-wrap{flex-shrink:0;width:34px;height:34px}.topbar-brand .brand-logo-icon{width:100%;height:100%;box-shadow:0 2px 8px var(--primary-glow);border-radius:8px}.topbar-brand .brand-info{flex-direction:column;display:flex}.topbar-brand .brand-title{letter-spacing:-.02em;color:var(--text-primary);white-space:nowrap;font-size:1rem;font-weight:700;line-height:1.2}.topbar-brand .brand-subtitle{color:var(--text-muted);white-space:nowrap;font-size:.72rem;font-weight:500;line-height:1.1}.breadcrumb-divider{margin:0 2px}.breadcrumbs{color:var(--text-muted);align-items:center;gap:8px;min-width:0;font-size:.84rem;display:flex}.breadcrumb-section{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:180px;font-weight:500;overflow:hidden}.breadcrumb-item.active{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:260px;font-weight:600;overflow:hidden}.breadcrumb-sep{color:var(--border-muted)}.topbar-right{align-items:center;gap:12px;display:flex}.topbar-divider{background-color:var(--border-subtle);flex-shrink:0;width:1px;height:20px}.topbar-action-group{align-items:center;display:flex}.complete-btn{background-color:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);border-radius:8px;align-items:center;gap:7px;padding:6px 14px;font-size:.82rem;font-weight:600;display:inline-flex}.complete-btn:hover:not(:disabled){background-color:var(--bg-card-hover);border-color:var(--border-muted);color:var(--text-primary)}.complete-btn .check-icon{width:16px;height:16px;transition:transform var(--transition-fast)}.complete-btn.completed{color:#10b981;background-color:#10b9811f;border-color:#10b98159;box-shadow:0 0 12px #10b9811f}.complete-btn.completed .check-icon{transform:scale(1.1)}.complete-btn:disabled{opacity:.5;cursor:not-allowed}.topbar-utility-group{align-items:center;gap:8px;display:flex}.sync-indicator{color:var(--text-muted);background-color:var(--bg-card);border:1px solid var(--border-subtle);-webkit-user-select:none;user-select:none;cursor:default;transition:all var(--transition-fast);border-radius:20px;align-items:center;gap:7px;padding:5px 11px;font-size:.78rem;font-weight:500;display:inline-flex}.sync-indicator .cloud-icon{width:15px;height:15px;color:var(--text-muted)}.sync-status-dot{width:6px;height:6px;transition:all var(--transition-fast);background-color:#f59e0b;border-radius:50%;flex-shrink:0}.sync-indicator.synced{color:var(--text-secondary);background-color:#10b9810a;border-color:#10b98140}.sync-indicator.synced .cloud-icon{color:#10b981}.sync-indicator.synced .sync-status-dot{background-color:#10b981;box-shadow:0 0 6px #10b98199}.sync-indicator.syncing{color:var(--primary);background-color:#3b82f60d;border-color:#3b82f64d}.sync-indicator.syncing .cloud-icon{color:var(--primary)}.sync-indicator.syncing .sync-status-dot{background-color:var(--primary);box-shadow:0 0 6px var(--primary);animation:1s infinite alternate syncPulse}.sync-indicator.local{color:var(--text-muted)}.sync-indicator.local .sync-status-dot{background-color:#f59e0b}@keyframes syncPulse{0%{opacity:.4;transform:scale(.9)}to{opacity:1;transform:scale(1.2)}}.topbar-auth-group,.guest-auth-row{align-items:center;gap:8px;display:flex}.google-signin-btn{background-color:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-subtle);cursor:pointer;transition:all var(--transition-fast);border-radius:8px;align-items:center;gap:7px;padding:6px 12px;font-size:.82rem;font-weight:600;display:inline-flex}.google-signin-btn:hover{background-color:var(--bg-card-hover);border-color:var(--border-muted)}.google-icon{flex-shrink:0;width:15px;height:15px}.user-profile-menu{background-color:var(--bg-card);border:1px solid var(--border-subtle);transition:all var(--transition-fast);border-radius:20px;align-items:center;gap:8px;padding:3px 10px 3px 4px;display:inline-flex}.user-profile-menu:hover{border-color:var(--border-muted)}.user-avatar{object-fit:cover;border-radius:50%;width:24px;height:24px}.user-avatar-placeholder{color:#fff;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:.72rem;font-weight:700;display:flex}.user-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:90px;font-size:.8rem;font-weight:600;overflow:hidden}.signout-btn{color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;border-radius:4px;padding:2px 4px;font-size:.75rem;font-weight:500}.signout-btn:hover{color:var(--diff-hard)}.icon-btn{border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;width:36px;height:36px;transition:all var(--transition-fast);background:0 0;border-radius:8px;justify-content:center;align-items:center;display:flex}.icon-btn svg{width:18px;height:18px}.icon-btn:hover{background-color:var(--bg-card-hover);color:var(--text-primary);border-color:var(--border-muted)}[data-theme=dark] .sun-icon{display:block}[data-theme=dark] .moon-icon,[data-theme=light] .sun-icon{display:none}[data-theme=light] .moon-icon{display:block}.complete-btn{font-size:.82rem;font-weight:600;font-family:var(--font-sans);background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border-subtle);cursor:pointer;transition:all var(--transition-fast);border-radius:8px;align-items:center;gap:6px;padding:7px 14px;display:flex}.complete-btn .check-icon{width:15px;height:15px;color:var(--text-muted)}.complete-btn:hover{border-color:var(--border-muted);color:var(--text-primary)}.complete-btn.completed{color:#10b981;background-color:#10b9811f;border-color:#10b9814d}.complete-btn.completed .check-icon{color:#10b981}.content-container{flex:1;width:100%;max-width:900px;margin:0 auto;padding:36px 32px 80px}.lesson-meta-bar{flex-wrap:wrap;gap:8px;margin-bottom:24px;display:flex}.meta-badge{border:1px solid var(--border-subtle);background-color:var(--bg-card);border-radius:6px;padding:3px 10px;font-size:.75rem;font-weight:600}.chapter-badge{color:var(--primary);border-color:var(--primary-glow);background-color:var(--primary-glow);font-family:var(--font-mono)}.section-badge{color:var(--text-secondary)}.difficulty-badge.easy{color:#22c55e;background-color:var(--diff-easy-bg);border-color:#22c55e4d}.difficulty-badge.medium{color:#eab308;background-color:var(--diff-med-bg);border-color:#eab3084d}.difficulty-badge.hard{color:#ef4444;background-color:var(--diff-hard-bg);border-color:#ef44444d}.index-badge{color:var(--text-muted);font-family:var(--font-mono)}.article-body{color:var(--text-secondary);font-size:1.02rem;line-height:1.8}.article-body h1{color:var(--text-primary);letter-spacing:-.03em;margin-bottom:24px;font-size:2.2rem;font-weight:800;line-height:1.25}.article-body h2{color:var(--text-primary);letter-spacing:-.02em;border-bottom:1px solid var(--border-subtle);margin-top:36px;margin-bottom:16px;padding-bottom:8px;font-size:1.45rem;font-weight:700}.article-body h3{color:var(--text-primary);margin-top:28px;margin-bottom:12px;font-size:1.2rem;font-weight:600}.article-body h4{color:var(--text-primary);margin-top:20px;margin-bottom:8px;font-size:1.05rem;font-weight:600}.article-body p{margin-bottom:18px}.article-body strong{color:var(--text-primary);font-weight:600}.article-body em{color:var(--text-primary)}.article-body ul,.article-body ol{margin-bottom:20px;padding-left:28px}.article-body li{margin-bottom:8px}.article-body blockquote{border-left:4px solid var(--primary);background:var(--bg-card);color:var(--text-secondary);border-radius:0 8px 8px 0;margin:20px 0;padding:14px 20px;font-style:normal}.article-body blockquote p:last-child{margin-bottom:0}.style-module-scss-module__ubvNPq__problemDescription{background:var(--bg-callout);border:1px solid var(--border-callout);box-shadow:var(--shadow-sm);border-radius:10px;margin:24px 0 32px;padding:20px 24px}.style-module-scss-module__ubvNPq__problemDescription p{margin-bottom:12px}.style-module-scss-module__ubvNPq__problemDescription p:last-child{margin-bottom:0}.article-body figure{text-align:center;background:var(--bg-card);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;margin:28px 0;padding:24px;display:flex}.article-body figure img{border-radius:6px;max-width:100%;height:auto;display:block}.article-body figcaption{color:var(--text-muted);margin-top:12px;font-size:.85rem}.article-body :not(pre)>code{font-family:var(--font-mono);background-color:var(--bg-card);border:1px solid var(--border-subtle);color:#38bdf8;border-radius:4px;padding:2px 6px;font-size:.88em}[data-theme=light] .article-body :not(pre)>code{color:#0369a1;background-color:#f1f5f9}.code-block-wrapper{border:1px solid var(--border-subtle);background-color:var(--bg-code);box-shadow:var(--shadow-md);border-radius:10px;margin:24px 0;position:relative;overflow:hidden}.code-block-header{background-color:var(--bg-code-header);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:8px 16px;display:flex}.code-lang-tag{font-family:var(--font-mono);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600}.copy-btn{border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border-radius:5px;align-items:center;gap:6px;padding:4px 10px;font-size:.75rem;display:flex}.copy-btn:hover{background-color:var(--border-subtle);color:var(--text-primary)}.article-body pre{font-family:var(--font-mono);margin:0;padding:18px 20px;font-size:.9rem;line-height:1.6;overflow-x:auto}.article-body pre code{font-family:var(--font-mono);color:#e6edf3;background:0 0;border:none;padding:0}.hljs-keyword{color:#ff7b72;font-weight:600}.hljs-built_in{color:#79c0ff}.hljs-type{color:#79c0ff;font-weight:600}.hljs-literal{color:#ff7b72}.hljs-number{color:#a5d6ff}.hljs-operator{color:#79c0ff}.hljs-punctuation{color:#c9d1d9}.hljs-property{color:#79c0ff}.hljs-regexp{color:#7ee787}.hljs-string{color:#a5d6ff}.hljs-char\.escape_{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-symbol{color:#79c0ff}.hljs-variable{color:#ffa657}.hljs-variable\.language_,.hljs-variable\.constant_{color:#79c0ff}.hljs-title{color:#d2a8ff;font-weight:600}.hljs-title\.class_{color:#ffa657}.hljs-title\.function_{color:#d2a8ff}.hljs-params{color:#c9d1d9}.hljs-comment{color:#8b949e;font-style:italic}.style-module-scss-module__nbagBW__markCompleteWrap,.style-module-scss-module__nbagBW__markCompleteLoading,.style-module-scss-module__ubvNPq__tryBanner,.ant-tabs-nav-operations{display:none!important}.interactive-code-tabs{border:1px solid var(--border-subtle);background-color:var(--bg-code);box-shadow:var(--shadow-md);border-radius:12px;margin:28px 0;overflow:hidden}.code-tabs-header{background-color:var(--bg-code-header);border-bottom:1px solid var(--border-subtle);align-items:center;gap:6px;padding:8px 14px;display:flex;overflow-x:auto}.code-tab-btn{color:var(--text-muted);font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:6px;padding:6px 14px;font-size:.84rem;font-weight:600;display:flex}.code-tab-btn:hover{color:var(--text-primary);background-color:#ffffff0d}.code-tab-btn.active{background-color:var(--primary-glow);color:var(--primary);border-color:#3b82f666}[data-theme=light] .code-tab-btn.active{color:#2563eb;background-color:#2563eb1f;border-color:#2563eb4d}.code-tabs-body{position:relative}.code-tab-pane{display:none}.code-tab-pane.active{display:block}.code-tab-pane pre{font-family:var(--font-mono);margin:0;padding:20px;font-size:.9rem;line-height:1.65;overflow-x:auto}.ant-tabs{border:1px solid var(--border-subtle);background-color:var(--bg-code);border-radius:10px;margin:20px 0;overflow:hidden}.ant-tabs-nav{background-color:var(--bg-code-header);border-bottom:1px solid var(--border-subtle);padding:4px 12px 0}.ant-tabs-nav-list{gap:4px;display:flex}.ant-tabs-tab{cursor:pointer;color:var(--text-muted);transition:all var(--transition-fast);border-bottom:2px solid #0000;border-radius:6px 6px 0 0;padding:8px 16px;font-size:.85rem;font-weight:500}.ant-tabs-tab:hover{color:var(--text-primary)}.ant-tabs-tab-active{color:var(--primary);border-bottom-color:var(--primary);background-color:var(--bg-code);font-weight:600}.ant-tabs-content-holder{padding:0}.lesson-pagination{border-top:1px solid var(--border-subtle);grid-template-columns:1fr 1fr;gap:18px;margin-top:54px;padding-top:28px;display:grid}.pagination-card{background-color:var(--bg-card);border:1px solid var(--border-subtle);transition:all var(--transition-fast);border-radius:10px;flex-direction:column;padding:18px 20px;text-decoration:none;display:flex}.pagination-card:hover{background-color:var(--bg-card-hover);border-color:var(--primary);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.next-card{text-align:right;align-items:flex-end}.pagination-sub{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;font-size:.78rem;font-weight:500}.pagination-title{color:var(--text-primary);font-size:.95rem;font-weight:600}.spinner{border:2px solid var(--border-muted);border-top-color:var(--primary);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}.spinner.large{border-width:3px;width:36px;height:36px}@keyframes spin{to{transform:rotate(360deg)}}.content-loading{min-height:300px;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.toast{color:#f8fafc;box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;z-index:10000;background-color:#1e293b;border:1px solid #334155;border-radius:8px;padding:10px 18px;font-size:.85rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);position:fixed;bottom:24px;right:24px;transform:translateY(10px)}.toast.show{opacity:1;pointer-events:auto;transform:translateY(0)}@media (width<=960px){.sidebar-container{top:var(--topbar-height);height:calc(100vh - var(--topbar-height));z-index:100;box-shadow:var(--shadow-lg);border-right:1px solid var(--border-subtle);will-change:transform;position:fixed;bottom:0;left:0;width:290px!important;transition:transform .32s cubic-bezier(.16,1,.3,1)!important}.sidebar-container.collapsed{pointer-events:none;transform:translate(-100%)}.sidebar-container.expanded{pointer-events:auto;transform:translate(0)}.sidebar-container .sidebar-rail{display:none!important}.sidebar-container .sidebar{opacity:1!important;visibility:visible!important;width:100%!important;position:relative!important;transform:none!important}.sidebar-backdrop{top:var(--topbar-height);inset-inline:0;z-index:90;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;pointer-events:none;background-color:#000000a6;transition:opacity .3s;display:block;position:fixed;bottom:0}.sidebar-backdrop.open{opacity:1;pointer-events:auto}.topbar-sidebar-toggle-btn{display:flex}.topbar-brand .brand-subtitle,.breadcrumbs,.breadcrumb-divider{display:none}.topbar{padding:0 12px}.topbar-left{gap:10px;min-width:0;overflow:hidden}.topbar-right{flex-shrink:0;gap:8px}.content-container{padding:24px 20px 60px}.lesson-pagination{grid-template-columns:1fr}.article-body h1{font-size:1.8rem}.article-body h2{font-size:1.25rem}.code-block-wrapper,.interactive-code-tabs{border-radius:8px}}@media (width<=640px){.topbar{height:56px;padding:0 10px}:root{--topbar-height:56px}.topbar-left{gap:8px}.topbar-right{gap:6px}.topbar-divider,.sync-label{display:none}.sync-indicator{gap:4px;padding:5px 7px}.complete-btn span{display:none}.complete-btn{gap:0;padding:7px 10px}.user-name{display:none}.signout-btn{font-size:.7rem}.google-signin-btn span{display:none}.google-signin-btn{padding:6px 8px}.topbar-brand .brand-title{font-size:.9rem}.topbar-brand .brand-logo-wrap{width:28px;height:28px}.topbar-brand{gap:8px}.sidebar-container{width:260px!important}.content-container{padding:20px 16px 60px}.article-body{font-size:.95rem}.article-body h1{margin-bottom:16px;font-size:1.5rem}.article-body h2{margin-top:28px;font-size:1.15rem}.article-body h3{font-size:1.05rem}.article-body figure{margin:20px 0;padding:16px}.article-body pre{padding:14px 12px;font-size:.82rem}.article-body ul,.article-body ol{padding-left:20px}.code-tabs-header{gap:4px;padding:6px 10px}.code-tab-btn{padding:5px 10px;font-size:.78rem}.code-block-header{padding:6px 12px}.pagination-card{padding:14px 16px}.pagination-title{font-size:.88rem}.toast{text-align:center;bottom:16px;left:12px;right:12px}.landing-header{padding:16px 16px 0}.landing-content{padding:32px 16px 60px}.landing-grid{gap:28px}.auth-card{border-radius:16px;padding:24px 20px}.hero-heading{font-size:1.8rem}.hero-description{font-size:.95rem}.highlight-item{padding:12px 14px}}@media (width<=380px){.topbar-brand .brand-info{display:none}.topbar-sidebar-toggle-btn{width:32px;height:32px}.sidebar-container{width:100vw!important}}.landing-page{background-color:var(--bg-app);min-height:100vh;color:var(--text-primary);flex-direction:column;display:flex;position:relative;overflow-x:hidden}.ambient-glow{filter:blur(120px);pointer-events:none;opacity:.15;z-index:0;border-radius:50%;width:600px;height:600px;position:absolute}.glow-top{background:radial-gradient(circle,#3b82f6,#8b5cf6);top:-150px;right:-100px}.glow-bottom{background:radial-gradient(circle,#8b5cf6,#3b82f6);bottom:-150px;left:-100px}.landing-header{z-index:10;justify-content:space-between;align-items:center;width:100%;max-width:1240px;margin:0 auto;padding:24px 24px 0;display:flex;position:relative}.landing-brand{align-items:center;gap:12px;display:flex}.landing-brand .brand-title{color:var(--text-primary);font-size:1.15rem;font-weight:700;line-height:1.2}.landing-brand .brand-subtitle{color:var(--text-muted);font-size:.78rem;display:block}.landing-content{z-index:10;width:100%;max-width:1240px;margin:auto;padding:48px 24px 80px;position:relative}.landing-grid{grid-template-columns:1.15fr .85fr;align-items:center;gap:60px;display:grid}.hero-text-col{flex-direction:column;gap:20px;display:flex}.hero-badge{background-color:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-secondary);width:fit-content;box-shadow:var(--shadow-sm);border-radius:30px;align-items:center;gap:8px;padding:6px 14px;font-size:.85rem;font-weight:500;display:inline-flex}.hero-heading{letter-spacing:-.02em;color:var(--text-primary);font-size:clamp(2.2rem,4vw,3.2rem);font-weight:800;line-height:1.15}.gradient-text{background:linear-gradient(135deg,#3b82f6,#a855f7);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.hero-description{color:var(--text-secondary);font-size:1.1rem;line-height:1.6}.hero-highlights{flex-direction:column;gap:16px;margin-top:12px;display:flex}.highlight-item{background-color:var(--bg-card);border:1px solid var(--border-subtle);transition:all var(--transition-fast);border-radius:12px;align-items:flex-start;gap:14px;padding:14px 18px;display:flex}.highlight-item:hover{border-color:var(--border-muted);transform:translate(4px)}.highlight-icon{background-color:var(--bg-app);border-radius:8px;padding:6px;font-size:1.3rem;line-height:1}.highlight-item h4{color:var(--text-primary);margin-bottom:2px;font-size:.95rem;font-weight:600}.highlight-item p{color:var(--text-muted);font-size:.85rem;line-height:1.4}.auth-card-wrap{justify-content:center;display:flex}.auth-card{background-color:var(--bg-card);border:1px solid var(--border-subtle);width:100%;max-width:440px;box-shadow:var(--shadow-lg);border-radius:20px;flex-direction:column;gap:20px;padding:36px 32px;display:flex}.auth-header h2{color:var(--text-primary);margin-bottom:6px;font-size:1.5rem;font-weight:700}.auth-header p{color:var(--text-muted);font-size:.88rem;line-height:1.45}.auth-tabs{background-color:var(--bg-app);border:1px solid var(--border-subtle);border-radius:10px;grid-template-columns:1fr 1fr;padding:4px;display:grid}.auth-tab-btn{color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:8px;padding:8px 16px;font-size:.88rem;font-weight:600}.auth-tab-btn.active{background-color:var(--bg-card);color:var(--text-primary);box-shadow:var(--shadow-sm)}.btn-google-large{background-color:var(--bg-app);width:100%;color:var(--text-primary);border:1px solid var(--border-subtle);cursor:pointer;transition:all var(--transition-fast);border-radius:10px;justify-content:center;align-items:center;gap:12px;padding:12px 18px;font-size:.95rem;font-weight:600;display:flex}.btn-google-large:hover{background-color:var(--bg-card-hover);border-color:var(--border-muted);transform:translateY(-1px)}.google-icon-large{flex-shrink:0;width:20px;height:20px}.auth-divider{text-align:center;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;align-items:center;font-size:.78rem;display:flex}.auth-divider:before,.auth-divider:after{content:"";border-bottom:1px solid var(--border-subtle);flex:1}.auth-divider span{padding:0 12px}.auth-error-banner{background-color:var(--diff-hard-bg);color:var(--diff-hard);border-radius:8px;align-items:center;gap:8px;padding:10px 14px;font-size:.85rem;font-weight:500;display:flex}.auth-form{flex-direction:column;gap:16px;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--text-secondary);font-size:.82rem;font-weight:600}.form-group input{border:1px solid var(--border-subtle);background-color:var(--bg-app);color:var(--text-primary);transition:all var(--transition-fast);border-radius:8px;padding:11px 14px;font-size:.95rem}.form-group input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow);outline:none}.auth-submit-btn{color:#fff;cursor:pointer;transition:all var(--transition-fast);background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:10px;justify-content:center;align-items:center;margin-top:4px;padding:12px;font-size:.95rem;font-weight:600;display:flex}.auth-submit-btn:hover:not(:disabled){opacity:.92;transform:translateY(-1px)}.auth-submit-btn:disabled{opacity:.6;cursor:not-allowed}.btn-spinner{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}.auth-footer-actions{text-align:center;padding-top:6px}.btn-guest-explore{color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;font-size:.85rem;font-weight:500}.btn-guest-explore:hover{color:var(--primary);text-decoration:underline}@media (width<=900px){.landing-grid{grid-template-columns:1fr;gap:40px}.auth-card-wrap{order:-1}}.curriculum-page{background-color:var(--bg-app);min-height:100vh;color:var(--text-primary);flex-direction:column;display:flex;position:relative;overflow-x:hidden}.curriculum-navbar{z-index:100;background-color:var(--bg-topbar);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border-subtle);height:var(--topbar-height);align-items:center;display:flex;position:sticky;top:0}.curriculum-nav-container{justify-content:space-between;align-items:center;width:100%;max-width:1040px;margin:0 auto;padding:0 24px;display:flex}.curriculum-nav-brand{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:12px;display:flex}.brand-sub-badge{text-transform:uppercase;letter-spacing:.05em;background:var(--primary-glow);color:var(--primary);border:1px solid #3b82f64d;border-radius:9999px;padding:2px 8px;font-size:.72rem;font-weight:600}.curriculum-nav-actions{align-items:center;gap:12px;display:flex}.curriculum-theme-btn{background:var(--bg-card);border:1px solid var(--border-subtle);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);border-radius:8px;justify-content:center;align-items:center;display:flex}.curriculum-theme-btn:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--border-muted)}.curriculum-signin-btn{background:var(--primary);color:#fff;cursor:pointer;transition:all var(--transition-fast);box-shadow:0 2px 8px var(--primary-glow);border:none;border-radius:8px;padding:8px 18px;font-size:.88rem;font-weight:600}.curriculum-signin-btn:hover{background:var(--primary-hover);transform:translateY(-1px)}.curriculum-user-pill{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:20px;align-items:center;gap:10px;padding:4px 10px 4px 14px;display:flex}.curriculum-user-name{color:var(--text-secondary);font-size:.85rem;font-weight:600}.curriculum-signout-btn{color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:.78rem}.curriculum-signout-btn:hover{color:var(--diff-hard);background:var(--diff-hard-bg)}.curriculum-main{z-index:1;flex:1;padding:48px 20px 80px;position:relative}.curriculum-centered-wrapper{flex-direction:column;align-items:center;max-width:820px;margin:0 auto;display:flex}.curriculum-hero{text-align:center;width:100%;margin-bottom:40px}.curriculum-hero-badge{background:var(--primary-glow);color:var(--primary);text-transform:uppercase;letter-spacing:.06em;border:1px solid #3b82f640;border-radius:9999px;align-items:center;gap:6px;margin-bottom:16px;padding:4px 12px;font-size:.78rem;font-weight:600;display:inline-flex}.curriculum-hero-title{letter-spacing:-.025em;color:var(--text-primary);margin-bottom:14px;font-size:2.4rem;font-weight:800;line-height:1.2}.curriculum-hero-desc{color:var(--text-secondary);max-width:680px;margin:0 auto 24px;font-size:1.05rem;line-height:1.6}.curriculum-stats-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;margin-bottom:24px;display:flex}.curriculum-stat-badge{background:var(--bg-card);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);border-radius:12px;align-items:baseline;gap:8px;padding:10px 18px;display:flex}.curriculum-stat-badge .stat-num{color:var(--primary);font-size:1.25rem;font-weight:800}.curriculum-stat-badge .stat-lbl{color:var(--text-muted);font-size:.82rem;font-weight:500}.curriculum-cta-row{margin-top:8px}.curriculum-primary-cta{background:var(--primary);color:#fff;cursor:pointer;transition:all var(--transition-fast);box-shadow:0 4px 14px var(--primary-glow);border:none;border-radius:10px;align-items:center;gap:10px;padding:12px 26px;font-size:.98rem;font-weight:600;display:inline-flex}.curriculum-primary-cta:hover{background:var(--primary-hover);box-shadow:0 6px 20px var(--primary-glow);transform:translateY(-2px)}.curriculum-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;width:100%;margin-bottom:24px;display:flex}.curriculum-search-box{flex:1;align-items:center;min-width:260px;display:flex;position:relative}.curriculum-search-box .search-icon{color:var(--text-muted);pointer-events:none;position:absolute;left:14px}.curriculum-search-input{background:var(--bg-card);border:1px solid var(--border-subtle);width:100%;color:var(--text-primary);transition:all var(--transition-fast);border-radius:10px;padding:10px 38px 10px 40px;font-family:inherit;font-size:.92rem}.curriculum-search-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow);outline:none}.curriculum-search-box .search-clear-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:4px;font-size:.9rem;position:absolute;right:12px}.curriculum-toggle-buttons{align-items:center;gap:8px;display:flex}.curriculum-action-btn{background:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);border-radius:8px;padding:8px 14px;font-size:.82rem;font-weight:500}.curriculum-action-btn:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--border-muted)}.curriculum-sections-list{flex-direction:column;gap:16px;width:100%;display:flex}.curriculum-empty-state{text-align:center;background:var(--bg-card);border:1px dashed var(--border-muted);color:var(--text-muted);border-radius:12px;flex-direction:column;align-items:center;gap:16px;padding:48px 24px;display:flex}.curriculum-section-card{background:var(--bg-card);border:1px solid var(--border-subtle);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);border-radius:12px;overflow:hidden}.curriculum-section-card:hover{border-color:var(--border-muted);box-shadow:var(--shadow-sm)}.curriculum-section-header{cursor:pointer;text-align:left;width:100%;transition:background-color var(--transition-fast);background:0 0;border:none;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.curriculum-section-header:hover{background-color:var(--bg-card-hover)}.curriculum-section-header.is-expanded{border-bottom:1px solid var(--border-subtle)}.section-title-wrap{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.section-index-badge{font-family:var(--font-mono);color:var(--primary);background:var(--primary-glow);border:1px solid #3b82f633;border-radius:6px;flex-shrink:0;padding:3px 8px;font-size:.82rem;font-weight:700}.section-heading-text{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:1.05rem;font-weight:700;overflow:hidden}.section-meta-wrap{flex-shrink:0;align-items:center;gap:12px;display:flex}.section-count-badge{color:var(--text-muted);background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:9999px;padding:3px 9px;font-size:.78rem;font-weight:500}.chevron-icon{color:var(--text-muted);transition:transform var(--transition-norm)}.chevron-icon.open{transform:rotate(180deg)}.curriculum-lessons-list{flex-direction:column;display:flex}.curriculum-lesson-item{border-bottom:1px solid var(--border-subtle);cursor:pointer;transition:background-color var(--transition-fast), padding-left var(--transition-fast);justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.curriculum-lesson-item:last-child{border-bottom:none}.curriculum-lesson-item:hover{background-color:var(--bg-card-hover);padding-left:24px}.lesson-left{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.lesson-num{font-family:var(--font-mono);color:var(--text-muted);flex-shrink:0;width:38px;font-size:.78rem}.lesson-title-text{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;transition:color var(--transition-fast);margin:0;font-size:.92rem;font-weight:500;overflow:hidden}.curriculum-lesson-item:hover .lesson-title-text{color:var(--text-primary)}.lesson-right{flex-shrink:0;align-items:center;gap:10px;margin-left:12px;display:flex}.lesson-access-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:6px;align-items:center;gap:4px;padding:2px 8px;font-size:.75rem;font-weight:600;display:inline-flex}.lesson-access-badge.locked{color:var(--text-muted);background:#8b949e1f;border:1px solid #8b949e33}.curriculum-lesson-item:hover .lesson-access-badge.locked{color:var(--primary);background:var(--primary-glow);border-color:#3b82f64d}.lesson-access-badge.accessible{color:var(--diff-easy);background:var(--diff-easy-bg)}.curriculum-bottom-banner{background:linear-gradient(135deg, var(--bg-card) 0%, var(--bg-callout) 100%);border:1px solid var(--border-callout);width:100%;box-shadow:var(--shadow-md);border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-top:48px;padding:28px 32px;display:flex}.banner-content{flex:1;align-items:center;gap:16px;min-width:280px;display:flex}.banner-icon-wrap{background:var(--primary-glow);width:48px;height:48px;color:var(--primary);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.banner-text h3{color:var(--text-primary);margin:0 0 4px;font-size:1.15rem;font-weight:700}.banner-text p{color:var(--text-secondary);margin:0;font-size:.88rem;line-height:1.5}.banner-action-btn{background:var(--primary);color:#fff;cursor:pointer;transition:all var(--transition-fast);box-shadow:0 4px 12px var(--primary-glow);white-space:nowrap;border:none;border-radius:10px;padding:12px 24px;font-size:.95rem;font-weight:600}.banner-action-btn:hover{background:var(--primary-hover);transform:translateY(-2px)}@media (width<=640px){.curriculum-hero-title{font-size:1.85rem}.curriculum-hero-desc{font-size:.95rem}.curriculum-stats-row{gap:8px}.curriculum-stat-badge{padding:8px 12px}.curriculum-stat-badge .stat-num{font-size:1.1rem}.curriculum-controls{flex-direction:column;align-items:stretch}.curriculum-toggle-buttons{justify-content:flex-end}.curriculum-section-header{padding:14px 16px}.section-heading-text{font-size:.95rem}.curriculum-lesson-item{padding:10px 14px}.lesson-num{width:32px;font-size:.72rem}.lesson-title-text{font-size:.85rem}.curriculum-bottom-banner{text-align:center;flex-direction:column;align-items:stretch;padding:20px}.banner-content{text-align:center;flex-direction:column}.banner-action-btn{width:100%}.brand-sub-badge{display:none}}
