:root{--bg-base:#f8fafc;--bg-surface:#fff;--bg-surface-glass:#ffffffeb;--bg-subtle:#f1f5f9;--bg-hover:#e2e8f0;--text-main:#0f172a;--text-muted:#475569;--text-light:#94a3b8;--text-inverse:#fff;--primary:#2563eb;--primary-hover:#1d4ed8;--primary-light:#eff6ff;--primary-dark:#1e40af;--accent-ink:#0f172a;--accent-ink-hover:#1e293b;--accent-gold:#d97706;--accent-gold-bg:#fef3c7;--accent-gold-border:#fde68a;--success:#10b981;--success-light:#ecfdf5;--success-dark:#059669;--danger:#ef4444;--danger-hover:#dc2626;--danger-light:#fef2f2;--danger-dark:#b91c1c;--warning:#f59e0b;--warning-light:#fffbeb;--warning-dark:#b45309;--border-color:#e2e8f0;--border-subtle:#f1f5f9;--border-focus:#2563eb;--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-full:9999px;--shadow-xs:0 1px 2px 0 #0f172a0a;--shadow-sm:0 1px 3px 0 #0f172a0f, 0 1px 2px -1px #0f172a0a;--shadow-md:0 4px 14px -2px #0f172a12, 0 2px 6px -2px #0f172a08;--shadow-lg:0 12px 28px -6px #0f172a14, 0 4px 10px -2px #0f172a08;--shadow-xl:0 20px 38px -8px #0f172a1a;--nav-scrolled-shadow:0 4px 20px #0f172a0d;--transition-fast:all .15s cubic-bezier(.16, 1, .3, 1);--transition-smooth:all .25s cubic-bezier(.16, 1, .3, 1);--font-family:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-serif:var(--font-family);--font-mono:"JetBrains Mono", monospace}[data-theme=dark]{--bg-base:#0b0f19;--bg-surface:#111827;--bg-surface-glass:#111827e0;--bg-subtle:#1e293b;--bg-hover:#334155;--text-main:#f8fafc;--text-muted:#94a3b8;--text-light:#64748b;--text-inverse:#0f172a;--primary:#38bdf8;--primary-hover:#0ea5e9;--primary-light:#38bdf824;--primary-dark:#0284c7;--accent-ink:#f8fafc;--accent-ink-hover:#e2e8f0;--border-color:#1e293b;--border-subtle:#172033;--border-focus:#38bdf8;--shadow-xs:0 1px 2px 0 #0006;--shadow-sm:0 1px 3px 0 #00000080, 0 1px 2px -1px #0000004d;--shadow-md:0 4px 14px -2px #0009, 0 2px 6px -2px #0006;--shadow-lg:0 12px 28px -6px #000000b3, 0 4px 10px -2px #0006;--shadow-xl:0 20px 38px -8px #000c;--nav-scrolled-shadow:0 4px 20px #0009}.tnum{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-family);color:var(--text-main);background-color:var(--bg-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;line-height:1.6}a{color:inherit;transition:var(--transition-fast);text-decoration:none}button,input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}.container{max-width:1240px;margin:0 auto;padding:32px 24px 80px}.nav{z-index:1000;background:var(--bg-surface-glass);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border-color);transition:box-shadow .2s,background .2s;position:sticky;top:0}.nav.scrolled{box-shadow:var(--nav-scrolled-shadow);background:var(--bg-surface-glass)}.nav-inner{justify-content:space-between;align-items:center;gap:24px;max-width:1240px;margin:0 auto;padding:14px 24px;display:flex}.logo{letter-spacing:-.6px;color:var(--text-main);align-items:center;gap:10px;font-size:20px;font-weight:800;text-decoration:none;display:flex}.logo-icon{background:var(--primary);color:#fff;border-radius:9px;justify-content:center;align-items:center;width:32px;height:32px;transition:transform .2s;display:flex}.logo:hover .logo-icon{transform:scale(1.05)}.nav-links{align-items:center;gap:18px;display:flex}.nav-links a:not(.btn){color:var(--text-muted);border-radius:var(--radius-sm);transition:var(--transition-fast);padding:7px 12px;font-size:13.5px;font-weight:600}.nav-links a:not(.btn):hover{color:var(--text-main);background:var(--bg-subtle)}.nav-links a:not(.btn).active{color:var(--text-main);background:var(--bg-subtle);font-weight:700}.cart-nav-link{align-items:center;gap:6px;display:inline-flex;position:relative}.cart-count-badge{background:var(--primary);color:#fff;border-radius:var(--radius-full);text-align:center;min-width:18px;padding:2px 7px;font-size:11px;font-weight:800;line-height:1.2;box-shadow:0 2px 6px #2563eb40}[data-theme=dark] .cart-count-badge{color:#0b0f19;background:#38bdf8;box-shadow:0 2px 8px #38bdf859}.user-nav-profile{background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-full);align-items:center;gap:8px;padding:4px 10px 4px 6px;font-size:12.5px;font-weight:600;display:inline-flex}.user-avatar-initial{background:var(--primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:11.5px;font-weight:800;display:flex}[data-theme=dark] .user-avatar-initial{color:#0b0f19;background:#38bdf8}.btn{background:var(--primary);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:13.5px;font-weight:600;text-decoration:none;transition:transform .2s cubic-bezier(.16,1,.3,1),background .2s,box-shadow .2s,border-color .2s;display:inline-flex;box-shadow:0 2px 6px #2563eb26;color:#fff!important}.btn:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 6px 18px #2563eb40}.btn:active{transform:translateY(0);box-shadow:0 2px 4px #2563eb26}.btn.secondary{background:var(--bg-surface);border:1px solid var(--border-color);box-shadow:var(--shadow-xs);color:var(--text-main)!important}.btn.secondary:hover{background:var(--bg-subtle);border-color:var(--primary);box-shadow:var(--shadow-sm);transform:translateY(-2px);color:var(--primary)!important}.btn.danger{background:var(--danger);box-shadow:0 2px 6px #e11d4833;color:#fff!important}.btn.danger:hover{background:var(--danger-hover);transform:translateY(-2px);box-shadow:0 6px 16px #e11d484d}.btn.success{background:var(--success);box-shadow:0 2px 6px #10b98133;color:#fff!important}.btn.success:hover{background:var(--success-dark);transform:translateY(-2px);box-shadow:0 6px 16px #10b9814d}.btn-glow{background:var(--primary);box-shadow:0 4px 14px #2563eb40;color:#fff!important}.btn-glow:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 8px 22px #2563eb59}.nav-btn-register{background:var(--primary)!important;color:#fff!important;border-radius:var(--radius-full)!important;padding:8px 18px!important;box-shadow:0 2px 8px #2563eb33!important}.nav-btn-register:hover{transform:translateY(-1px);background:var(--primary-hover)!important}.nav-btn-login,.nav-btn-logout{background:var(--bg-surface)!important;color:var(--text-main)!important;border:1px solid var(--border-color)!important;border-radius:var(--radius-full)!important;box-shadow:var(--shadow-xs)!important;padding:8px 16px!important}.nav-btn-login:hover,.nav-btn-logout:hover{background:var(--bg-subtle)!important;border-color:var(--primary)!important;color:var(--primary)!important}.hero-editorial{padding:56px 0 44px}.hero-editorial-split{grid-template-columns:1.12fr .88fr;align-items:center;gap:56px;display:grid}@media (width<=980px){.hero-editorial-split{grid-template-columns:1fr;gap:40px}}.hero-left-col{flex-direction:column;display:flex}.hero-pill-tag{background:var(--primary-light);color:var(--primary);border-radius:var(--radius-full);letter-spacing:.2px;border:1px solid #dbeafe;align-items:center;gap:8px;width:fit-content;margin-bottom:22px;padding:6px 14px;font-size:13px;font-weight:600;display:inline-flex}.hero-pill-star{color:var(--primary);font-size:14px}.hero-editorial-title{font-family:var(--font-family);letter-spacing:-.035em;color:var(--text-main);margin-bottom:20px;font-size:clamp(2.5rem,4.4vw,3.6rem);font-weight:800;line-height:1.15}.hero-editorial-desc{color:var(--text-muted);max-width:530px;margin-bottom:32px;font-size:16.5px;line-height:1.68}.hero-editorial-desc strong{color:var(--text-main);font-weight:700}.hero-cta-buttons{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:32px;display:flex}.hero-primary-pill{background:var(--primary)!important;color:#fff!important;border-radius:var(--radius-full)!important;border:none!important;align-items:center!important;gap:10px!important;padding:13px 26px!important;font-size:14.5px!important;font-weight:600!important;display:inline-flex!important;box-shadow:0 4px 16px #2563eb40!important}.hero-primary-pill:hover{transform:translateY(-2px);background:var(--primary-hover)!important;box-shadow:0 8px 22px #2563eb59!important}.hero-secondary-pill{background:var(--bg-surface)!important;border:1px solid var(--border-color)!important;color:var(--text-main)!important;border-radius:var(--radius-full)!important;box-shadow:var(--shadow-xs)!important;align-items:center!important;gap:8px!important;padding:13px 24px!important;font-size:14px!important;font-weight:600!important;display:inline-flex!important}.hero-secondary-pill:hover{transform:translateY(-2px);background:var(--bg-subtle)!important;border-color:var(--primary)!important;box-shadow:var(--shadow-sm)!important}.hero-trust-row{flex-wrap:wrap;align-items:center;gap:22px;display:flex}.trust-item{color:var(--text-muted);align-items:center;gap:7px;font-size:13.5px;font-weight:600;display:flex}.trust-check{color:var(--primary);flex-shrink:0}.hero-right-col{justify-content:center;align-items:center;display:flex}.hero-visual-frame{border-radius:var(--radius-xl);background:#0f172a;border:1px solid #0f172a14;width:100%;max-width:530px;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s;position:relative;overflow:hidden;box-shadow:0 20px 48px -12px #0f172a1f,0 4px 12px #0f172a0a}.hero-visual-frame:hover{transform:translateY(-4px);box-shadow:0 28px 60px -14px #0f172a29}.hero-visual-img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto;display:block}.hero-visual-badge{-webkit-backdrop-filter:blur(12px);color:#fff;border-radius:var(--radius-full);background:#0f172ad9;border:1px solid #ffffff26;align-items:center;gap:8px;padding:6px 14px;font-size:12px;font-weight:600;display:inline-flex;position:absolute;bottom:16px;left:16px;box-shadow:0 8px 20px #00000040}.hero-visual-dot{background:#10b981;border-radius:50%;width:7px;height:7px;box-shadow:0 0 8px #10b981}.editorial-stats-strip{background:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-xs);grid-template-columns:repeat(4,1fr);margin:24px 0 48px;padding:28px 0;display:grid}@media (width<=860px){.editorial-stats-strip{grid-template-columns:repeat(2,1fr);gap:24px;padding:24px}}@media (width<=480px){.editorial-stats-strip{grid-template-columns:1fr}}.stat-strip-col{border-right:1px solid var(--border-color);padding:0 24px}.stat-strip-col:last-child{border-right:none}@media (width<=860px){.stat-strip-col:nth-child(2){border-right:none}}.stat-strip-num{font-family:var(--font-family);color:var(--primary);letter-spacing:-.03em;margin-bottom:6px;font-size:2.6rem;font-weight:800;line-height:1}.stat-strip-label{color:var(--text-main);margin-bottom:4px;font-size:14px;font-weight:700}.stat-strip-sub{color:var(--text-muted);font-size:12.5px}.catalog-search-box{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);min-width:260px;height:38px;box-shadow:var(--shadow-xs);align-items:center;gap:8px;padding:0 12px;transition:border-color .2s,box-shadow .2s;display:flex}.catalog-search-box:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1f}.catalog-search-box input{color:var(--text-main);background:0 0;border:none;outline:none;width:100%;font-size:13.5px}.catalog-search-box input::placeholder{color:var(--text-light)}.catalog-search-clear{cursor:pointer;color:var(--text-light);background:0 0;border:none;align-items:center;padding:0;display:flex}.catalog-search-clear:hover{color:var(--text-main)}.catalog-search-shortcut{min-width:18px;height:18px;color:var(--text-muted);background:var(--bg-subtle);border:1px solid var(--border-color);font-size:11px;font-weight:700;font-family:var(--font-mono);pointer-events:none;border-radius:4px;justify-content:center;align-items:center;padding:0 5px;display:inline-flex;box-shadow:0 1px 2px #0000000d}.bento-showcase-grid{grid-template-columns:1.18fr .82fr;gap:24px;margin-bottom:56px;display:grid}@media (width<=920px){.bento-showcase-grid{grid-template-columns:1fr;gap:20px}}.bento-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);padding:32px;transition:transform .25s,box-shadow .25s,border-color .25s}.bento-card:hover{box-shadow:var(--shadow-md);border-color:var(--primary);transform:translateY(-2px)}.bento-hero-card{flex-direction:column;display:flex}.bento-badge{letter-spacing:.08em;text-transform:uppercase;color:var(--primary);background:var(--primary-light);border-radius:var(--radius-full);width:fit-content;margin-bottom:14px;padding:4px 10px;font-size:11px;font-weight:700}.bento-card-title{color:var(--text-main);letter-spacing:-.02em;margin-bottom:10px;font-size:1.35rem;font-weight:700;line-height:1.3}.bento-card-desc{color:var(--text-muted);margin-bottom:24px;font-size:14px;line-height:1.6}.bento-code-snippet{border-radius:var(--radius-md);font-family:var(--font-mono);background:#0f172a;border:1px solid #1e293b;margin-top:auto;padding:18px}.bento-code-header{border-bottom:1px solid #1e293b;justify-content:space-between;align-items:center;gap:6px;margin-bottom:12px;padding-bottom:12px;display:flex}.bento-code-filename{color:#94a3b8;margin-left:8px;font-size:11.5px}.bento-run-btn{color:#38bdf8;border-radius:var(--radius-full);cursor:pointer;background:#2563eb2e;border:1px solid #38bdf859;align-items:center;gap:6px;padding:4px 11px;font-size:11.5px;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.bento-run-btn:hover:not(:disabled){color:#fff;background:#2563eb59;border-color:#38bdf8;transform:translateY(-1px);box-shadow:0 2px 8px #38bdf84d}.bento-run-btn:active:not(:disabled){transform:scale(.96)}.bento-run-btn.running{opacity:.8;cursor:wait;color:#f59e0b;background:#f59e0b2e;border-color:#f59e0b}.code-executing{animation:.4s infinite alternate code-pulse}@keyframes code-pulse{0%{opacity:.75}to{opacity:1}}.pulsing-amber{animation:.6s infinite alternate dot-pulse;background:#f59e0b!important;box-shadow:0 0 8px #f59e0b!important}@keyframes dot-pulse{0%{opacity:.6;transform:scale(.85)}to{opacity:1;transform:scale(1.25)}}.bento-code-snippet pre{color:#e2e8f0;margin:0;font-size:12px;line-height:1.55;transition:opacity .2s;overflow-x:auto}.bento-code-status{color:#10b981;border-top:1px solid #1e293b;justify-content:space-between;align-items:center;gap:7px;margin-top:12px;padding-top:12px;font-size:11.5px;display:flex}.bento-stacked-col{flex-direction:column;gap:24px;display:flex}.bento-tile-card{flex-direction:column;height:100%;display:flex}.bento-icon-wrapper{background:var(--primary-light);width:42px;height:42px;color:var(--primary);border-radius:10px;justify-content:center;align-items:center;margin-bottom:16px;display:flex}.bento-tile-title{color:var(--text-main);letter-spacing:-.015em;margin-bottom:8px;font-size:1.15rem;font-weight:700;line-height:1.35}.bento-tile-desc{color:var(--text-muted);margin:0;font-size:13.5px;line-height:1.6}.sort-select-wrapper{align-items:center;gap:8px;display:flex}.sort-select{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);height:38px;color:var(--text-main);cursor:pointer;transition:var(--transition-fast);box-shadow:var(--shadow-xs);width:auto;padding:0 12px;font-size:13px;font-weight:600}.sort-select:focus{border-color:#94a3b8;outline:none}.category-chips-wrapper{align-items:center;gap:8px;margin-bottom:28px;padding-bottom:12px;display:flex;overflow-x:auto}.category-chips-wrapper::-webkit-scrollbar{height:4px}.category-chips-wrapper::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#cbd5e1}.chip-btn{border-radius:var(--radius-full);background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;transition:var(--transition-fast);white-space:nowrap;box-shadow:var(--shadow-xs);align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:600;display:inline-flex}.chip-btn:hover{background:var(--bg-subtle);color:var(--text-main);border-color:var(--primary)}.chip-btn.active{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 2px 8px #134e4a33}@keyframes shimmer{0%{background-position:-700px 0}to{background-position:700px 0}}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,#f0f4f8 25%,#e8edf3 50%,#f0f4f8 75%) 0 0/700px 100%;animation:1.6s ease-in-out infinite shimmer}.skeleton-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);overflow:hidden}.skeleton-thumb{width:100%;height:180px}.skeleton-body{gap:12px;padding:22px;display:grid}.skeleton-line{border-radius:var(--radius-xs);height:14px}.skeleton-line.short{width:40%}.skeleton-line.medium{width:70%}.skeleton-line.full{width:100%}.skeleton-line.tall{height:20px}.skeleton-circle{border-radius:50%;width:36px;height:36px}.toast{border-radius:var(--radius-md);max-width:380px;box-shadow:var(--shadow-lg);pointer-events:all;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);align-items:center;gap:12px;padding:14px 20px;font-size:14px;font-weight:600;animation:.35s cubic-bezier(.16,1,.3,1) toastSlideIn;display:flex}.toast.exiting{animation:.25s ease-in forwards toastSlideOut}@keyframes toastSlideIn{0%{opacity:0;transform:translate(40px)scale(.95)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes toastSlideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(40px)}}.grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;display:grid}.card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);transition:var(--transition-smooth);padding:24px;position:relative;overflow:hidden}.card:hover{box-shadow:var(--shadow-sm);border-color:#cbd5e1}.course-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);flex-direction:column;height:100%;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;position:relative;overflow:hidden;box-shadow:0 2px 6px #141c1a08}.course-card:hover{box-shadow:var(--shadow-lg);border-color:var(--primary);transform:translateY(-4px)}.course-thumbnail-box{background:var(--bg-subtle);width:100%;height:184px;position:relative;overflow:hidden}.course-thumbnail-box img{object-fit:cover;width:100%;height:100%;transition:transform .5s cubic-bezier(.16,1,.3,1)}.course-card:hover .course-thumbnail-box img{transform:scale(1.05)}.course-thumbnail-overlay-badge{z-index:2;position:absolute;top:12px;left:12px}.course-enrolled-badge{z-index:2;color:#fff;border-radius:var(--radius-full);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#2563ebeb;border:1px solid #ffffff40;align-items:center;gap:4px;padding:4px 10px;font-size:10.5px;font-weight:700;display:flex;position:absolute;top:12px;right:12px}.course-quick-actions{opacity:0;z-index:5;align-items:center;gap:6px;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;bottom:10px;right:10px;transform:translateY(6px)}.course-card:hover .course-quick-actions{opacity:1;transform:translateY(0)}.quick-action-pill{-webkit-backdrop-filter:blur(12px);border-radius:var(--radius-full);cursor:pointer;background:#0f172ac7;border:1px solid #fff3;align-items:center;gap:4px;padding:5px 11px;font-size:11.5px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 4px 14px #0000004d;color:#fff!important}.quick-action-pill:hover{background:var(--primary);border-color:#fff6;transform:translateY(-1px);color:#fff!important}.quick-action-pill.bookmark-btn{border-radius:50%;padding:6px}.quick-action-pill.bookmark-btn.active{background:#f59e0b;border-color:#f59e0b;color:#fff!important}.course-content-body{flex-direction:column;flex:1;padding:22px;display:flex}.course-title-link{font-family:var(--font-family);color:var(--text-main);transition:var(--transition-fast);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:8px;font-size:1.15rem;font-weight:700;line-height:1.35;display:-webkit-box;overflow:hidden}.course-title-link:hover{color:var(--primary)}.course-desc-snippet{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;flex-grow:1;margin-bottom:18px;font-size:13.5px;line-height:1.6;display:-webkit-box;overflow:hidden}.course-meta-row{border-bottom:1px solid var(--border-color);color:var(--text-muted);justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:14px;font-size:13px;display:flex}.instructor-pill{align-items:center;gap:8px;display:flex}.instructor-avatar-circle{background:var(--primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:11px;font-weight:800;display:flex}.course-footer-row{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.price-tag{color:var(--primary);letter-spacing:-.3px;font-size:17.5px;font-weight:800}.price-tag.free{color:var(--success);background:var(--success-light);border-radius:var(--radius-xs);padding:4px 10px;font-size:13.5px;font-weight:800}.badge{background:var(--primary-light);color:var(--primary);border-radius:var(--radius-full);letter-spacing:.2px;align-items:center;gap:5px;padding:4px 12px;font-size:12px;font-weight:700;display:inline-flex}.badge.admin{color:#b45309;background:#fef3c7}.badge.instructor{color:#86198f;background:#fae8ff}.badge.student{color:#0369a1;background:#e0f2fe}.badge.success{background:var(--success-light);color:var(--success-dark)}.badge.danger{background:var(--danger-light);color:var(--danger-dark)}.badge.cyan{color:#0e7490;background:#ecfeff}.tab-bar{border-radius:var(--radius-lg);background:#f1f5f9;flex-wrap:nowrap;gap:4px;margin-bottom:28px;padding:6px;display:flex;overflow-x:auto}.tab-bar::-webkit-scrollbar{display:none}.tab-btn{border-radius:var(--radius-md);cursor:pointer;color:var(--text-muted);transition:var(--transition-fast);white-space:nowrap;background:0 0;border:none;align-items:center;gap:8px;padding:10px 18px;font-size:13.5px;font-weight:600;display:inline-flex}.tab-btn:hover{color:var(--text-main);background:#ffffffb3}.tab-btn.active{color:var(--primary);box-shadow:var(--shadow-sm);background:#fff;font-weight:700}.tab-count{background:var(--primary-light);min-width:20px;height:20px;color:var(--primary);border-radius:var(--radius-full);justify-content:center;align-items:center;padding:0 6px;font-size:11px;font-weight:800;display:inline-flex}.bar-chart{align-items:flex-end;gap:12px;height:120px;padding:0 4px;display:flex}.bar-chart-col{flex-direction:column;flex:1;align-items:center;gap:6px;display:flex}.bar-chart-bar{cursor:pointer;background:linear-gradient(#6366f1 0%,#4f46e5 100%);border-radius:6px 6px 0 0;width:100%;min-height:4px;transition:height .6s cubic-bezier(.4,0,.2,1);position:relative}.bar-chart-bar:hover{background:linear-gradient(#818cf8 0%,#6366f1 100%)}.bar-chart-bar:after{content:attr(data-value);color:var(--primary);opacity:0;white-space:nowrap;font-size:11px;font-weight:700;transition:opacity .2s;position:absolute;top:-24px;left:50%;transform:translate(-50%)}.bar-chart-bar:hover:after{opacity:1}.bar-chart-label{color:var(--text-muted);text-align:center;font-size:11px;font-weight:600}.password-strength{gap:6px;margin-top:8px;display:flex}.strength-bar{border-radius:var(--radius-full);background:#e2e8f0;flex:1;height:4px;transition:background .3s}.strength-bar.weak{background:#ef4444}.strength-bar.fair{background:#f59e0b}.strength-bar.good{background:#3b82f6}.strength-bar.strong{background:#10b981}.strength-label{margin-top:4px;font-size:11.5px;font-weight:700}.strength-label.weak{color:#ef4444}.strength-label.fair{color:#f59e0b}.strength-label.good{color:#3b82f6}.strength-label.strong{color:#10b981}.detail-grid{grid-template-columns:minmax(0,1fr) 370px;align-items:start;gap:36px;width:100%;max-width:100%;display:grid}.detail-main-col,.detail-side-col{min-width:0;max-width:100%}@media (width<=1080px){.detail-grid{grid-template-columns:1fr;gap:32px}}.detail-header-card{color:#faf8f5;border-radius:var(--radius-xl);background:linear-gradient(145deg,#0f172a 0%,#1e3a8a 100%);border:1px solid #ffffff1f;margin-bottom:32px;padding:38px 40px;box-shadow:0 16px 36px -12px #0f172a40}[data-theme=dark] .detail-header-card{background:linear-gradient(145deg,#0b132b 0%,#172554 100%);border:1px solid #38bdf840;box-shadow:0 16px 40px -10px #0009}.detail-header-card h1{font-family:var(--font-family);letter-spacing:-.03em;color:#faf8f5;margin-bottom:16px;font-size:clamp(2rem,3.5vw,2.75rem);font-weight:800;line-height:1.2}.what-you-learn-box{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);min-width:0;max-width:100%;margin-bottom:32px;padding:30px}.what-you-learn-box h3{font-family:var(--font-family);letter-spacing:-.02em;color:var(--text-main);margin-bottom:4px;font-size:1.35rem;font-weight:700}.learn-checklist-grid{grid-template-columns:1fr 1fr;gap:16px;margin-top:18px;display:grid}@media (width<=640px){.learn-checklist-grid{grid-template-columns:1fr}}.learn-item{color:var(--text-main);align-items:flex-start;gap:10px;min-width:0;font-size:14px;line-height:1.55;display:flex}.lesson-list{gap:0;width:100%;min-width:0;display:grid}.lesson-item-card{background:var(--bg-surface);border:1px solid var(--border-color);box-sizing:border-box;border-bottom:none;justify-content:space-between;align-items:center;width:100%;min-width:0;padding:16px 20px;transition:transform .2s,background .2s,border-color .2s;display:flex}.lesson-item-card:first-child{border-radius:var(--radius-md) var(--radius-md) 0 0}.lesson-item-card:last-child{border-bottom:1px solid var(--border-color);border-radius:0 0 var(--radius-md) var(--radius-md)}.lesson-item-card:only-child{border-radius:var(--radius-md);border-bottom:1px solid var(--border-color)}.lesson-item-card:hover{background:var(--bg-subtle);border-color:var(--primary);transform:translate(4px)}.lesson-number-circle{background:var(--primary-light);width:32px;height:32px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.purchase-card-sticky{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);box-sizing:border-box;width:100%;max-width:100%;padding:24px;animation:.4s cubic-bezier(.16,1,.3,1) slideUpCard;position:sticky;top:96px}@keyframes slideUpCard{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.classroom-header{border-bottom:1px solid var(--border-color);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;padding:18px 0;display:flex}.progress-track{border-radius:var(--radius-full);background:#e2e8f0;width:100%;height:10px;margin-top:8px;overflow:hidden}.progress-fill{border-radius:var(--radius-full);background:linear-gradient(90deg,#4f46e5 0%,#10b981 100%);height:100%;transition:width .6s cubic-bezier(.4,0,.2,1)}.video-theatre{border-radius:var(--radius-lg);background:#090d16;width:100%;margin-bottom:24px;padding-top:56.25%;position:relative;overflow:hidden;box-shadow:0 20px 40px #00000059}.video-theatre iframe{border:0;width:100%;height:100%;position:absolute;top:0;left:0}.workspace-lesson-row{transition:var(--transition-fast)}.workspace-lesson-row:hover{border-color:var(--primary)!important;background:var(--primary-light)!important}.cart-item-removing{animation:.3s ease-out forwards fadeOutLeft}@keyframes fadeOutLeft{0%{opacity:1;max-height:200px;transform:translate(0)}to{opacity:0;max-height:0;margin:0;padding:0;overflow:hidden;transform:translate(-20px)}}.form{gap:20px;display:grid}.form-group{gap:8px;display:grid}.form-label{color:var(--text-main);font-size:13.5px;font-weight:700}.input,textarea,select{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface);width:100%;color:var(--text-main);transition:var(--transition-fast);padding:12px 16px;font-size:14px}.input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow);outline:none}textarea{resize:vertical;min-height:110px}.error{color:var(--danger-dark);background:var(--danger-light);border-radius:var(--radius-md);border:1px solid #ef444440;align-items:center;gap:8px;padding:14px 18px;font-size:14px;font-weight:600;display:flex}.success{color:var(--success-dark);background:var(--success-light);border-radius:var(--radius-md);border:1px solid #10b98140;align-items:center;gap:8px;padding:14px 18px;font-size:14px;font-weight:600;display:flex}.cart-checkout-success-banner{background:var(--success-light);color:var(--success-dark);border-radius:var(--radius-lg);border:1px solid #10b98159;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;padding:20px 24px;display:flex}[data-theme=dark] .cart-checkout-success-banner{color:#34d399;background:#10b98124;border:1px solid #10b98166}.cart-checkout-success-banner .btn-start-learning{color:#fff!important;border-radius:var(--radius-full)!important;background:#10b981!important;border:none!important;align-items:center!important;gap:8px!important;padding:10px 20px!important;font-size:13.5px!important;font-weight:700!important;text-decoration:none!important;transition:all .2s!important;display:inline-flex!important;box-shadow:0 2px 10px #10b9814d!important}.cart-checkout-success-banner .btn-start-learning:hover{background:#059669!important;transform:translateY(-1px)!important;box-shadow:0 4px 14px #10b98173!important}.btn-download-cert{color:#1e3a8a!important;border-radius:var(--radius-full)!important;cursor:pointer!important;background:#fff!important;border:none!important;align-items:center!important;gap:8px!important;padding:10px 20px!important;font-size:13.5px!important;font-weight:800!important;transition:all .2s cubic-bezier(.16,1,.3,1)!important;display:inline-flex!important;box-shadow:0 4px 14px #00000040!important}.btn-download-cert:hover{color:#2563eb!important;background:#f8fafc!important;transform:translateY(-2px)!important;box-shadow:0 6px 20px #00000059!important}.btn-download-cert svg{transition:color .2s;color:#1e3a8a!important}.btn-download-cert:hover svg{color:#2563eb!important}.divider{border:none;border-top:1px solid var(--border-color)}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2000;background:#0f172a99;justify-content:center;align-items:center;padding:24px;animation:.2s ease-out modalFadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-surface);border-radius:var(--radius-lg);width:100%;max-width:600px;max-height:90vh;box-shadow:var(--shadow-xl);padding:32px;animation:.25s cubic-bezier(.16,1,.3,1) modalScaleUp;position:relative;overflow-y:auto}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalScaleUp{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.table-wrapper{border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-surface);box-shadow:var(--shadow-xs);margin-top:20px;overflow-x:auto}.table{border-collapse:collapse;text-align:left;width:100%}.table th{background:var(--bg-subtle);color:var(--text-muted);text-transform:uppercase;letter-spacing:.6px;border-bottom:1px solid var(--border-color);-webkit-user-select:none;user-select:none;padding:16px 20px;font-size:12px;font-weight:700}.table th.sortable{cursor:pointer;transition:var(--transition-fast)}.table th.sortable:hover{background:var(--bg-hover);color:var(--primary)}.table th.sorted{color:var(--primary);background:var(--primary-light)}.table td{border-bottom:1px solid var(--border-color);color:var(--text-main);transition:var(--transition-fast);padding:16px 20px;font-size:14px}.table tr:last-child td{border-bottom:none}.table tr:hover td{background:var(--bg-hover)}.auth-wrapper{max-width:460px;margin:48px auto}.auth-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:38px 32px;position:relative}.demo-account-chip{background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-fast);color:var(--text-main);justify-content:space-between;align-items:center;margin-top:8px;padding:10px 14px;display:flex}.demo-account-chip:hover{background:var(--bg-hover);border-color:var(--primary)}.footer{background:var(--bg-surface);color:var(--text-muted);border-top:1px solid var(--border-color);margin-top:auto;padding:60px 0 30px;font-size:13.5px}.footer-inner{grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px;display:grid}.footer-brand h4{color:var(--text-main);margin-bottom:10px;font-size:18px;font-weight:800}.footer-col h5{color:var(--text-main);margin-bottom:14px;font-size:14px;font-weight:700}.footer-links{gap:10px;list-style:none;display:grid}.footer-links a{color:var(--text-muted);transition:var(--transition-fast)}.footer-links a:hover{color:var(--text-main)}.footer-social{gap:10px;margin-top:16px;display:flex}.footer-social-link{border-radius:var(--radius-sm);background:var(--bg-subtle);border:1px solid var(--border-color);width:34px;height:34px;color:var(--text-muted);transition:var(--transition-fast);justify-content:center;align-items:center;display:flex}.footer-social-link:hover{background:var(--text-main);border-color:var(--text-main);color:#fff;transform:translateY(-1px)}.footer-status-dot{background:var(--success);border-radius:50%;width:7px;height:7px;display:inline-block}.footer-bottom{border-top:1px solid var(--border-color);color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-top:24px;font-size:13px;display:flex}.mobile-menu-toggle{color:var(--text-main);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:8px;display:none}.mobile-sidebar-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:3000;background:#0f172a99;animation:.2s ease-out fadeIn;position:fixed;inset:0}.mobile-sidebar{background:var(--bg-surface);width:290px;box-shadow:var(--shadow-xl);z-index:3001;flex-direction:column;gap:20px;padding:24px;animation:.3s cubic-bezier(.16,1,.3,1) slideLeft;display:flex;position:fixed;top:0;bottom:0;right:0}.sidebar-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding-bottom:16px;display:flex}.sidebar-close{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:6px}.sidebar-links{flex-direction:column;gap:14px;width:100%;display:flex}.sidebar-links a:not(.btn){color:var(--text-muted);padding:8px 0;font-size:15px;font-weight:600}.sidebar-links a:not(.btn).active{color:var(--primary)}.sidebar-divider{border-top:1px solid var(--border-color);margin:4px 0}@keyframes slideLeft{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:10px;display:flex;position:fixed;bottom:24px;right:24px}.toast{pointer-events:auto;border-radius:var(--radius-md);align-items:center;gap:12px;max-width:380px;padding:12px 18px;font-size:13.5px;font-weight:600;transition:opacity .28s,transform .28s;animation:.28s cubic-bezier(.16,1,.3,1) toastIn;display:flex;box-shadow:0 10px 25px -5px #00000026,0 8px 10px -6px #0000001a}.toast.exiting{opacity:0;transform:translateY(12px)scale(.95)}.toast.success{color:#ecfdf5;background:#065f46;border:1px solid #059669}.toast.error{color:#fff1f2;background:#881337;border:1px solid #be123c}.toast.info{color:#e0e7ff;background:#1e1b4b;border:1px solid #4338ca}@keyframes toastIn{0%{opacity:0;transform:translateY(16px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.tab-bar{background:var(--bg-subtle);border-radius:var(--radius-lg);border:1px solid var(--border-color);gap:8px;padding:6px;display:flex;overflow-x:auto}.tab-btn{border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;transition:var(--transition-smooth);white-space:nowrap;background:0 0;border:none;align-items:center;gap:8px;padding:9px 18px;font-size:13.5px;font-weight:700;display:inline-flex}.tab-btn:hover:not(.active){background:var(--bg-hover);color:var(--text-main)}.tab-btn.active{background:var(--bg-surface);color:var(--primary);box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.tab-count{border-radius:var(--radius-full);background:var(--bg-hover);min-width:20px;height:20px;color:var(--text-muted);justify-content:center;align-items:center;padding:0 6px;font-size:11px;font-weight:800;display:inline-flex}.tab-btn.active .tab-count{background:var(--primary-light);color:var(--primary)}.modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:2000;background:#0f172aa6;justify-content:center;align-items:center;padding:20px;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-surface);border-radius:var(--radius-xl);border:1px solid var(--border-color);box-shadow:var(--shadow-xl);width:100%;max-width:540px;max-height:90vh;padding:28px;animation:.28s cubic-bezier(.16,1,.3,1) modalPop;overflow-y:auto}@keyframes modalPop{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.lesson-list{gap:10px;display:grid}.lesson-item-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:var(--transition-smooth);justify-content:space-between;align-items:center;gap:14px;padding:12px 16px;display:flex}.lesson-item-card:hover{background:var(--bg-subtle);border-color:var(--primary);box-shadow:var(--shadow-xs)}.lesson-number-circle{color:#475569;background:#e2e8f0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:800;display:flex}.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s}.sortable-th:hover{color:var(--primary)}.sortable-th-inner{align-items:center;gap:6px;display:inline-flex}.css-bar-chart{border-bottom:2px solid var(--border-color);align-items:flex-end;gap:14px;height:180px;padding-top:28px;padding-bottom:8px;display:flex}.chart-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;height:100%;display:flex;position:relative}.chart-col:hover .chart-tooltip{opacity:1;transform:translateY(-6px)}.chart-bar-fill{background:linear-gradient(180deg, var(--primary) 0%, #818cf8 100%);border-radius:6px 6px 0 0;width:100%;max-width:44px;min-height:6px;transition:height .6s cubic-bezier(.16,1,.3,1),filter .2s}.chart-col:hover .chart-bar-fill{filter:brightness(1.15)}.chart-col-label{color:var(--text-muted);text-align:center;margin-top:8px;font-size:11.5px;font-weight:600}.chart-tooltip{color:#fff;white-space:nowrap;pointer-events:none;opacity:0;z-index:10;background:#0f172a;border-radius:4px;padding:3px 8px;font-size:10.5px;font-weight:700;transition:opacity .2s,transform .2s;position:absolute;top:-26px;box-shadow:0 4px 8px #0003}.theme-toggle-btn{border-radius:var(--radius-full);background:var(--bg-surface);border:1px solid var(--border-color);width:40px;height:38px;color:var(--text-main);cursor:pointer;box-shadow:var(--shadow-xs);flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .25s cubic-bezier(.16,1,.3,1);display:inline-flex;position:relative}.theme-toggle-btn:hover{background:var(--bg-subtle);border-color:var(--primary);color:var(--primary);transform:translateY(-1px)}.theme-toggle-icon-wrap{justify-content:center;align-items:center;width:20px;height:20px;display:flex;position:relative}.theme-icon{width:18px;height:18px;transition:transform .4s cubic-bezier(.16,1,.3,1),opacity .3s;position:absolute}.sun-icon{opacity:1;transform:rotate(0)scale(1)}.moon-icon{opacity:0;transform:rotate(90deg)scale(0)}.theme-toggle-icon-wrap.is-dark .sun-icon{opacity:0;transform:rotate(-90deg)scale(0)}.theme-toggle-icon-wrap.is-dark .moon-icon{opacity:1;transform:rotate(0)scale(1)}.theme-shortcut-badge{background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-muted);pointer-events:none;border-radius:4px;padding:2px 4px;font-size:9px;font-weight:700;line-height:1;position:absolute;top:-4px;right:-4px;box-shadow:0 1px 3px #0000001a}.lang-toggle-btn{border-radius:var(--radius-full);background:var(--bg-surface);border:1px solid var(--border-color);height:38px;color:var(--text-main);cursor:pointer;box-shadow:var(--shadow-xs);-webkit-user-select:none;user-select:none;flex-shrink:0;align-items:center;gap:6px;padding:0 12px;font-size:12.5px;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.lang-toggle-btn:hover{background:var(--bg-subtle);border-color:var(--primary);color:var(--primary);transform:translateY(-1px)}.lang-toggle-btn .lang-icon{color:var(--primary);flex-shrink:0}.lang-toggle-btn .lang-code-tag{font-family:var(--font-mono);letter-spacing:.5px;background:var(--primary-light);color:var(--primary);border-radius:4px;padding:1px 5px;font-size:11px;font-weight:700}.lang-toggle-btn .lang-label-sub{color:var(--text-muted);font-size:12px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.skeleton{background:#f0f4f8;animation:none}.hero:before,.cart-count-badge,.footer-status-dot{animation:none}}.search-container{align-items:center;gap:10px;width:100%;display:flex}.search-input-wrapper{flex:1;position:relative}.search-input-wrapper input{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface);width:100%;color:var(--text-main);transition:var(--transition-fast);padding:12px 16px 12px 44px;font-size:14px}.search-input-wrapper input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #2563eb1f}.mobile-only{display:none!important}[data-theme=dark] .badge.admin{color:#fbbf24;background:#f59e0b2e;border:1px solid #f59e0b4d}[data-theme=dark] .badge.instructor{color:#c084fc;background:#a855f72e;border:1px solid #a855f74d}[data-theme=dark] .badge.student{color:#38bdf8;background:#38bdf82e;border:1px solid #38bdf84d}[data-theme=dark] .badge.cyan{color:#22d3ee;background:#06b6d42e;border:1px solid #06b6d44d}[data-theme=dark] .error{color:#f87171;background:#ef444426;border-color:#ef44444d}[data-theme=dark] .success{color:#34d399;background:#10b98126;border-color:#10b9814d}.credibility-strip{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:20px 0 40px;padding:16px 24px;display:flex;box-shadow:0 4px 16px #0000000a}.credibility-intro{align-items:center;gap:12px;display:flex}.credibility-badge{text-transform:uppercase;letter-spacing:.8px;border-radius:var(--radius-full);background:var(--primary-light);color:var(--primary);border:1px solid #2563eb33;padding:4px 10px;font-size:11px;font-weight:800}.credibility-title{color:var(--text-main);font-size:13.5px;font-weight:600}.credibility-partners{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.partner-chip{color:var(--text-muted);border-radius:var(--radius-md);background:var(--bg-subtle);border:1px solid var(--border-color);align-items:center;gap:6px;padding:5px 12px;font-size:12.5px;font-weight:600;transition:all .2s;display:inline-flex}.partner-chip:hover{color:var(--primary);border-color:var(--primary);transform:translateY(-1px)}.skill-hub-section{margin:56px 0 48px}.section-header-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px;display:flex}.section-tag-pill{border-radius:var(--radius-full);background:var(--primary-light);color:var(--primary);letter-spacing:.5px;text-transform:uppercase;align-items:center;gap:6px;margin-bottom:8px;padding:4px 12px;font-size:12px;font-weight:700;display:inline-flex}.section-heading-lg{color:var(--text-main);letter-spacing:-.5px;margin:0 0 6px;font-size:28px;font-weight:800}.section-sub-text{color:var(--text-muted);max-width:640px;margin:0;font-size:14.5px;line-height:1.5}.skill-hub-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.skill-hub-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;text-align:left;flex-direction:column;justify-content:space-between;padding:24px;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden;box-shadow:0 4px 14px #00000008}.skill-hub-card:before{content:"";background:linear-gradient(90deg, var(--primary), #38bdf8);opacity:0;height:3px;transition:opacity .25s;position:absolute;top:0;left:0;right:0}.skill-hub-card:hover{border-color:#2563eb66;transform:translateY(-4px);box-shadow:0 12px 28px #2563eb1f,0 4px 10px #0000000d}.skill-hub-card:hover:before{opacity:1}.skill-card-top{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.skill-card-icon-box{background:var(--bg-subtle);border:1px solid var(--border-color);width:44px;height:44px;color:var(--primary);border-radius:12px;justify-content:center;align-items:center;transition:all .2s;display:flex}.skill-hub-card:hover .skill-card-icon-box{background:var(--primary);color:#fff;border-color:var(--primary);transform:scale(1.05)}.skill-card-tag{border-radius:var(--radius-full);background:var(--bg-subtle);color:var(--text-muted);border:1px solid var(--border-color);text-transform:uppercase;letter-spacing:.5px;padding:3px 8px;font-size:11px;font-weight:800}.skill-card-tag.highlight{color:#10b981;background:#10b9811f;border-color:#10b9814d}.skill-card-tag.pro{color:var(--primary);background:#2563eb1f;border-color:#2563eb40}.skill-card-title{color:var(--text-main);letter-spacing:-.3px;margin:0 0 8px;font-size:18px;font-weight:800}.skill-card-desc{color:var(--text-muted);flex:1;margin:0 0 16px;font-size:13.5px;line-height:1.5}.skill-card-footer{border-top:1px solid var(--border-color);color:var(--primary);justify-content:space-between;align-items:center;padding-top:14px;font-size:12.5px;font-weight:600;display:flex}.skill-card-arrow{transition:transform .2s}.skill-hub-card:hover .skill-card-arrow{transform:translate(4px)}.pathway-section{margin:64px 0 52px}.pathway-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid;position:relative}.pathway-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);flex-direction:column;padding:24px;transition:all .25s;display:flex;position:relative}.pathway-card:hover{border-color:var(--primary);transform:translateY(-3px);box-shadow:0 10px 24px #0000000d}.pathway-step-num{color:var(--primary);letter-spacing:1px;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:800}.pathway-card-title{color:var(--text-main);margin:0 0 6px;font-size:17px;font-weight:800}.pathway-duration-badge{color:var(--text-light);align-items:center;gap:4px;margin-bottom:14px;font-size:11.5px;font-weight:600;display:inline-flex}.pathway-checklist{flex:1;margin:0 0 18px;padding:0;list-style:none}.pathway-checklist li{color:var(--text-muted);align-items:flex-start;gap:8px;margin-bottom:8px;font-size:13px;line-height:1.4;display:flex}.pathway-check-icon{color:#10b981;flex-shrink:0;margin-top:2px}.pathway-outcome-box{background:var(--bg-subtle);border:1px dashed var(--border-color);border-radius:var(--radius-md);color:var(--text-main);padding:10px 12px;font-size:12px;line-height:1.4}.pathway-outcome-box strong{color:var(--primary)}.diagnostic-section{background:linear-gradient(145deg, var(--bg-surface) 0%, var(--bg-subtle) 100%);border:1px solid var(--border-color);border-radius:var(--radius-lg);margin:64px 0;padding:36px 32px;box-shadow:0 10px 30px #0000000a}.diagnostic-grid{grid-template-columns:1.2fr 1fr;align-items:center;gap:32px;display:grid}.diagnostic-question-title{color:var(--text-main);margin:16px 0 10px;font-size:14px;font-weight:700}.diagnostic-chip-group{flex-wrap:wrap;gap:10px;display:flex}.diagnostic-chip-btn{border-radius:var(--radius-full);background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .2s;display:inline-flex}.diagnostic-chip-btn:hover{border-color:var(--primary);color:var(--primary);transform:translateY(-1px)}.diagnostic-chip-btn.active{background:var(--primary);border-color:var(--primary);box-shadow:0 4px 12px #2563eb4d;color:#fff!important}.diagnostic-card-result{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:24px;position:relative;box-shadow:0 8px 24px #0000000f}.diagnostic-result-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:12px;display:flex}.diagnostic-result-tag{text-transform:uppercase;letter-spacing:.8px;border-radius:var(--radius-full);color:#10b981;background:#10b98126;padding:3px 8px;font-size:11px;font-weight:800}.diagnostic-track-name{color:var(--text-main);margin:0 0 6px;font-size:18px;font-weight:800}.diagnostic-track-desc{color:var(--text-muted);margin-bottom:16px;font-size:13px;line-height:1.5}.diagnostic-steps-preview{flex-direction:column;gap:8px;margin-bottom:18px;display:flex}.diagnostic-step-item{color:var(--text-main);background:var(--bg-subtle);border-radius:var(--radius-md);border:1px solid var(--border-color);align-items:center;gap:10px;padding:8px 12px;font-size:12.5px;font-weight:600;display:flex}.diagnostic-cta-btn{justify-content:center;align-items:center;gap:8px;width:100%;padding:10px 18px;font-weight:700;display:flex}[data-theme=dark] .credibility-strip,[data-theme=dark] .skill-hub-card{background:#0f172aa6;border-color:#38bdf826}[data-theme=dark] .skill-hub-card:hover{background:#0f172af2;border-color:#38bdf866;box-shadow:0 14px 32px #00000080,0 0 20px #38bdf826}[data-theme=dark] .pathway-card{background:#0f172aa6;border-color:#38bdf826}[data-theme=dark] .pathway-card:hover{border-color:#38bdf866}[data-theme=dark] .diagnostic-section{background:linear-gradient(145deg,#0f172acc 0%,#0b132be6 100%);border-color:#38bdf833}[data-theme=dark] .diagnostic-card-result{background:#0f172ae6;border-color:#38bdf840;box-shadow:0 10px 30px #00000080}@media (width<=1024px){.skill-hub-grid,.pathway-grid{grid-template-columns:repeat(2,1fr)}.diagnostic-grid{grid-template-columns:1fr}}@media (width<=640px){.skill-hub-grid,.pathway-grid{grid-template-columns:1fr}.credibility-strip{flex-direction:column;align-items:flex-start}}.hero-center-wrapper{text-align:center;max-width:860px;margin:0 auto 36px;padding:40px 20px 20px}.hero-search-integrated-box{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-full);align-items:center;gap:12px;max-width:620px;margin:24px auto 16px;padding:8px 16px;transition:all .25s;display:flex;box-shadow:0 8px 24px #0000000f}.hero-search-integrated-box:focus-within{border-color:var(--primary);box-shadow:0 10px 28px #2563eb33,0 0 0 3px #2563eb1a}.hero-search-integrated-box input{color:var(--text-main);background:0 0;border:none;outline:none;flex:1;font-size:15px;font-weight:500}.learning-lab-container{grid-template-columns:1.15fr 1fr;align-items:stretch;gap:28px;margin:64px 0 48px;display:grid}.learning-lab-col{flex-direction:column;display:flex}.pathways-timeline-list{flex-direction:column;gap:14px;display:flex}.pathway-step-card-compact{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px 20px;transition:all .2s;position:relative;overflow:hidden}.pathway-step-card-compact:hover{border-color:var(--primary);transform:translate(4px);box-shadow:0 4px 14px #0000000d}.pathway-step-card-compact:before{content:"";background:var(--primary);opacity:.5;width:4px;position:absolute;top:0;bottom:0;left:0}.pathway-step-card-compact:hover:before{opacity:1}@media (width<=1024px){.learning-lab-container{grid-template-columns:1fr}}.back-to-top-btn{background:var(--bg-surface);width:48px;height:48px;color:var(--text-main);border:1px solid var(--border-color);cursor:pointer;z-index:990;opacity:0;visibility:hidden;-webkit-backdrop-filter:blur(12px);border-radius:50%;justify-content:center;align-items:center;padding:0;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;bottom:28px;right:28px;transform:translateY(16px)scale(.9);box-shadow:0 8px 24px #0000001f,0 2px 6px #00000014}.back-to-top-btn.visible{opacity:1;visibility:visible;transform:translateY(0)scale(1)}.back-to-top-btn:hover{color:var(--primary);border-color:var(--primary);transform:translateY(-4px)scale(1.06);box-shadow:0 12px 28px #2563eb40,0 4px 10px #00000026}.back-to-top-btn:active{transform:translateY(-1px)scale(.98)}.back-to-top-ring{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0;transform:rotate(-90deg)}.back-to-top-ring-bg{fill:none;stroke:var(--border-color);opacity:.5}.back-to-top-ring-progress{fill:none;stroke:var(--primary);stroke-linecap:round;transition:stroke-dashoffset .15s ease-out}.back-to-top-icon{z-index:1;transition:transform .2s cubic-bezier(.16,1,.3,1);position:relative}.back-to-top-btn:hover .back-to-top-icon{transform:translateY(-2px)}[data-theme=dark] .back-to-top-btn{background:#0f172ad9;border-color:#38bdf833;box-shadow:0 10px 30px #00000080,0 0 15px #38bdf81f}[data-theme=dark] .back-to-top-btn:hover{border-color:var(--primary);background:#172554e6;box-shadow:0 14px 34px #0009,0 0 20px #38bdf84d}.pagination-container{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:16px;padding:16px 4px 8px;display:flex}.pagination-info{color:var(--text-muted);font-size:13px}.pagination-info .font-semibold{color:var(--text-main);font-weight:600}.pagination-controls{align-items:center;gap:6px;display:inline-flex}.pagination-pages{align-items:center;gap:4px;display:inline-flex}.pagination-btn{border-radius:var(--radius-sm,8px);border:1px solid var(--border-color);background:var(--bg-card);min-width:34px;height:34px;color:var(--text-main);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:0 10px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.pagination-btn:hover:not(:disabled){border-color:var(--primary);color:var(--primary);background:var(--bg-card-hover,#2563eb0d)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-btn.nav-btn{gap:4px;padding:0 12px}.pagination-btn.page-num-btn.active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 2px 8px #2563eb4d}.pagination-ellipsis{color:var(--text-muted);-webkit-user-select:none;user-select:none;padding:0 6px;font-size:14px}@media (width<=900px){.hero h1{font-size:34px}.hero-stats{grid-template-columns:repeat(2,1fr)}.detail-grid{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr 1fr}.learn-checklist-grid{grid-template-columns:1fr}}@media (width<=768px){.desktop-only{display:none!important}.mobile-only,.mobile-menu-toggle{display:flex!important}.hero{padding:40px 24px}.search-container{flex-direction:column}.search-container .btn{width:100%}.footer-inner{grid-template-columns:1fr}.tab-bar{padding:4px}.tab-btn{padding:8px 12px;font-size:12.5px}.toast-container{bottom:16px;left:16px;right:16px}.toast{max-width:100%}.back-to-top-btn{width:42px;height:42px;bottom:20px;right:20px}.pagination-container{text-align:center;flex-direction:column;align-items:center}}
