.edunova-catalog{--navy:#0d1117;--navy-mid:#1a1a2e;--navy-card:#1e2235;--navy-card2:#242840;--navy-line:#2a2d45;--blue:#2e75b6;--blue-lt:#4a9fd4;--blue-glow:#2e75b647;--accent:#5b8fff;--green:#22c55e;--amber:#f59e0b;--red:#ef4444;--purple:#a78bfa;--teal:#2dd4bf;--text:#f1f5f9;--text-muted:#94a3b8;--text-dim:#64748b;--radius:14px;--radius-sm:8px;--shadow:0 4px 20px #0006;--sidebar-w:256px;background:var(--navy);color:var(--text);scroll-behavior:smooth;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,sans-serif;line-height:1.6;overflow-x:hidden}@scope(.edunova-catalog){*,:before,:after{box-sizing:border-box;margin:0;padding:0}nav{z-index:200;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0d1117eb;border-bottom:1px solid #ffffff12;justify-content:space-between;align-items:center;height:64px;padding:0 5vw;display:flex;position:fixed;top:0;left:0;right:0}.nav-logo{color:#fff;flex-shrink:0;align-items:center;gap:10px;font-size:19px;font-weight:800;text-decoration:none;display:flex}.nav-logo-icon{background:linear-gradient(135deg, var(--blue), var(--accent));border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:16px;display:flex}.nav-links{align-items:center;gap:28px;display:flex}.nav-links a{color:var(--text-muted);font-size:14px;text-decoration:none;transition:color .15s}.nav-links a:hover,.nav-links a.active{color:#fff}.nav-links a.active{color:var(--blue-lt)}.nav-actions{align-items:center;gap:10px;display:flex}.nav-btn{border-radius:var(--radius-sm);cursor:pointer;border:none;padding:8px 18px;font-family:inherit;font-size:13px;font-weight:600}.nav-btn-ghost{color:var(--text-muted);border:1px solid var(--navy-line);background:0 0}.nav-btn-ghost:hover{color:var(--text);border-color:var(--accent)}.nav-btn-primary{background:var(--blue);color:#fff}.nav-btn-primary:hover{background:var(--blue-lt)}.search-hero{background:linear-gradient(180deg, var(--navy-mid) 0%, var(--navy) 100%);border-bottom:1px solid var(--navy-line);padding:88px 5vw 0;position:relative;overflow:hidden}.search-hero-grid{background-image:linear-gradient(#2e75b60f 1px,#0000 1px),linear-gradient(90deg,#2e75b60f 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(100% 100% at 50% 0,#000 40%,#0000 100%);mask-image:radial-gradient(100% 100% at 50% 0,#000 40%,#0000 100%)}.search-hero-inner{z-index:1;max-width:1200px;margin:0 auto;padding:36px 0 40px;position:relative}.search-hero-inner .eyebrow{text-transform:uppercase;letter-spacing:.1em;color:var(--blue-lt);margin-bottom:10px;font-size:12px;font-weight:700}.search-hero-inner h1{letter-spacing:-.02em;margin-bottom:6px;font-size:clamp(24px,3.5vw,36px);font-weight:800}.search-hero-inner .sub{color:var(--text-muted);margin-bottom:28px;font-size:15px}.search-bar-wrap{background:var(--navy-card);border:1px solid var(--navy-line);border-radius:12px;align-items:center;gap:10px;max-width:680px;padding:6px 6px 6px 18px;transition:border-color .2s;display:flex;box-shadow:0 4px 24px #0000004d}.search-bar-wrap:focus-within{border-color:var(--blue)}.search-bar-icon{color:var(--text-dim);flex-shrink:0;font-size:17px}.search-bar-wrap input{color:var(--text);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:15px}.search-bar-wrap input::placeholder{color:var(--text-dim)}.search-bar-divider{background:var(--navy-line);flex-shrink:0;width:1px;height:22px}.search-bar-select{color:var(--text-muted);cursor:pointer;background:0 0;border:none;outline:none;padding:0 4px;font-family:inherit;font-size:13px}.search-bar-select option{background:var(--navy-card)}.search-btn{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:9px;flex-shrink:0;padding:10px 22px;font-family:inherit;font-size:14px;font-weight:600;transition:background .15s}.search-btn:hover{background:var(--blue-lt)}.category-chips{flex-wrap:wrap;gap:8px;margin-top:20px;padding-bottom:0;display:flex}.chip{cursor:pointer;border:1px solid var(--navy-line);color:var(--text-muted);-webkit-user-select:none;user-select:none;background:#ffffff08;border-radius:24px;align-items:center;gap:6px;padding:7px 16px;font-size:13px;font-weight:500;transition:all .18s;display:inline-flex}.chip:hover{border-color:var(--blue);color:var(--text)}.chip.active{background:var(--blue);color:#fff;border-color:var(--blue)}.chip .chip-count{opacity:.7;background:#ffffff26;border-radius:8px;padding:1px 6px;font-size:11px}.page-inner{grid-template-columns:var(--sidebar-w) 1fr;align-items:start;gap:32px;max-width:1200px;margin:0 auto;padding:32px 5vw 80px;display:grid}.sidebar{position:sticky;top:80px}.filter-panel{background:var(--navy-card);border:1px solid var(--navy-line);border-radius:var(--radius);margin-bottom:16px;overflow:hidden}.filter-panel-header{border-bottom:1px solid var(--navy-line);color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:14px 18px;font-size:13px;font-weight:700;display:flex}.filter-panel-header .toggle{color:var(--text-dim);font-size:11px;transition:transform .2s}.filter-panel.collapsed .filter-panel-header .toggle{transform:rotate(-90deg)}.filter-panel-body{flex-direction:column;gap:6px;padding:14px 18px;display:flex}.filter-panel.collapsed .filter-panel-body{display:none}.filter-option{color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:4px;align-items:center;gap:10px;padding:7px 0;font-size:13px;transition:color .15s;display:flex}.filter-option:hover{color:var(--text)}.filter-option input[type=checkbox]{display:none}.custom-check{border:1.5px solid var(--navy-line);color:#fff;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;font-size:9px;transition:all .15s;display:flex}.filter-option input:checked+.custom-check{background:var(--blue);border-color:var(--blue)}.filter-option input:checked+.custom-check:after{content:"✓"}.filter-option input:checked~.opt-label{color:var(--text)}.opt-label{flex:1}.opt-count{color:var(--text-dim);font-size:11px}.filter-search{background:var(--navy-mid);border:1px solid var(--navy-line);border-radius:var(--radius-sm);align-items:center;gap:8px;margin-bottom:8px;padding:7px 12px;display:flex}.filter-search input{color:var(--text);background:0 0;border:none;outline:none;width:100%;font-family:inherit;font-size:12px}.filter-search input::placeholder{color:var(--text-dim)}.show-more-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;margin-top:2px;padding:2px 0;font-family:inherit;font-size:12px;font-weight:600}.show-more-btn:hover{text-decoration:underline}.filter-range{flex-direction:column;gap:8px;display:flex}.range-labels{color:var(--text-dim);justify-content:space-between;font-size:11px;display:flex}input[type=range]{width:100%;accent-color:var(--blue);cursor:pointer}.clear-filters-btn{border-radius:var(--radius-sm);color:#f87171;cursor:pointer;background:0 0;border:1px solid #ef44444d;width:100%;padding:10px;font-family:inherit;font-size:13px;font-weight:600;transition:all .15s}.clear-filters-btn:hover{background:#ef444414;border-color:#ef444480}.results-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.results-count{color:var(--text-muted);font-size:14px}.results-count strong{color:var(--text)}.results-bar-right{align-items:center;gap:12px;display:flex}.sort-select{background:var(--navy-card);border:1px solid var(--navy-line);color:var(--text);border-radius:var(--radius-sm);cursor:pointer;outline:none;padding:8px 12px;font-family:inherit;font-size:13px}.sort-select:focus{border-color:var(--blue)}.view-toggle{background:var(--navy-card);border:1px solid var(--navy-line);border-radius:var(--radius-sm);display:flex;overflow:hidden}.view-btn{cursor:pointer;color:var(--text-dim);background:0 0;border:none;padding:8px 12px;font-size:15px;transition:all .15s}.view-btn.active{color:var(--blue-lt);background:#2e75b633}.active-filters{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:20px;display:flex}.active-filters .af-label{color:var(--text-dim);font-size:12px}.af-pill{color:var(--blue-lt);background:#2e75b626;border:1px solid #2e75b64d;border-radius:20px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-flex}.af-pill .af-remove{cursor:pointer;opacity:.7;font-size:12px}.af-pill .af-remove:hover{opacity:1}.featured-banner{border-radius:var(--radius);background:linear-gradient(135deg,#2e75b62e,#5b8fff1a);border:1px solid #2e75b659;align-items:center;gap:20px;margin-bottom:28px;padding:20px 24px;display:flex}.featured-banner .fb-icon{flex-shrink:0;font-size:32px}.featured-banner .fb-text .title{margin-bottom:4px;font-size:15px;font-weight:700}.featured-banner .fb-text .sub{color:var(--text-muted);font-size:13px}.featured-banner .fb-tag{background:var(--blue);color:#fff;white-space:nowrap;border-radius:20px;flex-shrink:0;margin-left:auto;padding:5px 14px;font-size:11px;font-weight:700}.section-heading{border-bottom:1px solid var(--navy-line);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.section-heading h2{font-size:16px;font-weight:700}.section-heading a{color:var(--accent);font-size:13px}.section-heading a:hover{text-decoration:underline}.courses-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:36px;display:grid}.courses-grid.list-view{grid-template-columns:1fr}.course-card{background:var(--navy-card);border:1px solid var(--navy-line);border-radius:var(--radius);color:inherit;flex-direction:column;text-decoration:none;transition:all .22s;display:flex;position:relative;overflow:hidden}.course-card:hover{box-shadow:var(--shadow);border-color:#2e75b680;transform:translateY(-3px)}.course-card:hover .card-thumb-overlay{opacity:1}.card-thumb{flex-shrink:0;height:128px;position:relative;overflow:hidden}.card-thumb-bg{justify-content:center;align-items:center;font-size:36px;display:flex;position:absolute;inset:0}.card-thumb-overlay{opacity:0;background:#0000004d;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;inset:0}.card-thumb-overlay span{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;background:#ffffff26;border:1px solid #fff3;border-radius:20px;padding:7px 18px;font-size:13px;font-weight:600}.card-thumb-badges{flex-wrap:wrap;gap:6px;display:flex;position:absolute;top:10px;left:10px}.card-thumb-tr{position:absolute;top:10px;right:10px}.thumb-badge{letter-spacing:.04em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:5px;padding:3px 9px;font-size:10px;font-weight:700}.tb-faculty{color:#ffffffe6;background:#0000008c;border:1px solid #ffffff26}.tb-live{background:var(--green);color:#fff;animation:1.8s infinite pulse-scale}.tb-new{background:var(--amber);color:#000}.tb-open{color:#4ade80;background:#22c55e33;border:1px solid #22c55e40}.card-body{flex-direction:column;flex:1;gap:10px;padding:18px;display:flex}.card-year-row{align-items:center;gap:8px;display:flex}.year-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:700}.card-title{color:var(--text);font-size:15px;font-weight:700;line-height:1.3}.card-subtitle{color:var(--text-dim);font-size:12px}.card-rating{align-items:center;gap:6px;font-size:12px;display:flex}.card-stars{color:var(--amber);letter-spacing:1px;font-size:12px}.card-rating-num{color:var(--text);font-weight:700}.card-rating-count{color:var(--text-dim)}.card-stats{flex-wrap:wrap;gap:14px;display:flex}.card-stat{color:var(--text-dim);align-items:center;gap:5px;font-size:11px;display:flex}.card-stat .si{font-size:12px}.card-footer{border-top:1px solid var(--navy-line);justify-content:space-between;align-items:center;margin-top:auto;padding:12px 18px;display:flex}.card-instructor{align-items:center;gap:8px;min-width:0;display:flex}.card-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:10px;font-weight:700;display:flex}.card-instructor-name{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.view-btn-card{border-radius:var(--radius-sm);color:var(--blue-lt);cursor:pointer;background:#2e75b626;border:1px solid #2e75b64d;flex-shrink:0;padding:7px 16px;font-size:12px;font-weight:600;transition:all .15s}.view-btn-card:hover{background:var(--blue);color:#fff;border-color:var(--blue)}.list-view .course-card{flex-direction:row}.list-view .card-thumb{flex-shrink:0;width:180px;height:auto;min-height:120px}.list-view .card-body{padding:16px}.list-view .card-footer{border-top:none;border-left:1px solid var(--navy-line);flex-direction:column;align-items:flex-start;gap:10px;min-width:140px;padding:12px 16px}.list-view .view-btn-card{text-align:center;width:100%}.skeleton{background:linear-gradient(90deg, var(--navy-card) 25%, var(--navy-card2) 50%, var(--navy-card) 75%);background-size:200% 100%;border-radius:4px;animation:1.5s infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.pagination{justify-content:center;align-items:center;gap:6px;margin-top:8px;display:flex}.page-btn{border-radius:var(--radius-sm);background:var(--navy-card);border:1px solid var(--navy-line);width:36px;height:36px;color:var(--text-muted);cursor:pointer;justify-content:center;align-items:center;font-size:13px;font-weight:600;transition:all .15s;display:flex}.page-btn:hover{border-color:var(--blue);color:var(--text)}.page-btn.active{background:var(--blue);border-color:var(--blue);color:#fff}.page-btn.arrow{font-size:16px}.page-ellipsis{color:var(--text-dim);padding:0 4px}.empty-state{text-align:center;background:var(--navy-card);border:1px solid var(--navy-line);border-radius:var(--radius);padding:64px 24px}.empty-icon{margin-bottom:16px;font-size:48px}.empty-title{margin-bottom:8px;font-size:18px;font-weight:700}.empty-sub{color:var(--text-muted);font-size:14px}@keyframes pulse-scale{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.04)}}@keyframes fade-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:.4s both fade-up}@media (max-width:1024px){.courses-grid{grid-template-columns:1fr 1fr}}@media (max-width:860px){.page-inner{grid-template-columns:1fr}.sidebar{position:static}.filter-panel{margin-bottom:8px}.filters-row{flex-wrap:wrap;gap:8px;display:flex}nav .nav-links{display:none}.list-view .course-card{flex-direction:column}.list-view .card-thumb{width:100%;height:120px}.list-view .card-footer{border-left:none;border-top:1px solid var(--navy-line);flex-direction:row}}@media (max-width:540px){.courses-grid{grid-template-columns:1fr}.featured-banner{flex-direction:column;align-items:flex-start}.featured-banner .fb-tag{margin-left:0}}.breadcrumb{color:var(--text-dim);align-items:center;gap:8px;font-size:13px;display:flex}.breadcrumb a{color:var(--text-muted);transition:color .15s}.breadcrumb a:hover{color:var(--blue-lt)}.breadcrumb span{color:var(--text-dim)}.course-hero{background:linear-gradient(180deg, var(--navy-mid) 0%, var(--navy) 100%);border-bottom:1px solid var(--navy-line);padding:88px 5vw 0}.course-hero-inner{grid-template-columns:1fr 360px;align-items:start;gap:48px;max-width:1200px;margin:0 auto;padding:40px 0 48px;display:grid}.course-meta-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px;display:flex}.course-hero-left h1{letter-spacing:-.02em;margin-bottom:16px;font-size:clamp(26px,3.5vw,38px);font-weight:800;line-height:1.15}.course-tagline{color:var(--text-muted);max-width:620px;margin-bottom:24px;font-size:16px;line-height:1.75}.course-rating-row{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:24px;display:flex}.stars-display{align-items:center;gap:4px;display:flex}.star{color:var(--amber);font-size:15px}.star.half{opacity:.5}.rating-num{font-size:15px;font-weight:700}.rating-count{color:var(--text-dim);font-size:13px}.rating-divider{background:var(--navy-line);width:1px;height:14px}.enroll-count{color:var(--text-muted);font-size:13px}.course-instructor-preview{align-items:center;gap:10px;margin-bottom:20px;display:flex}.instructor-avatar{background:linear-gradient(135deg, var(--blue), var(--accent));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:15px;font-weight:700;display:flex}.instructor-info .name{color:var(--text);font-size:14px;font-weight:600}.instructor-info .title{color:var(--text-dim);font-size:12px}.course-quick-stats{border-top:1px solid var(--navy-line);flex-wrap:wrap;gap:24px;padding:16px 0;display:flex}.quick-stat{color:var(--text-muted);align-items:center;gap:8px;font-size:13px;display:flex}.quick-stat .icon{font-size:16px}.quick-stat strong{color:var(--text)}.enroll-card-wrap{position:sticky;top:80px}.enroll-card{background:var(--navy-card);border:1px solid var(--navy-line);border-radius:var(--radius);box-shadow:var(--shadow-lg);overflow:hidden}.enroll-card-preview{aspect-ratio:16/9;background:linear-gradient(135deg,#0a0e1a 0%,#111827 100%);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.preview-pattern{background-image:linear-gradient(#2e75b61a 1px,#0000 1px),linear-gradient(90deg,#2e75b61a 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:0}.preview-icon{z-index:1;background:linear-gradient(135deg, var(--blue), var(--accent));width:64px;height:64px;box-shadow:0 8px 32px var(--blue-glow);border-radius:50%;justify-content:center;align-items:center;font-size:28px;display:flex;position:relative}.preview-badge{z-index:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--radius-sm);background:#000000bf;border:1px solid #ffffff1a;align-items:center;gap:10px;padding:10px 14px;display:flex;position:absolute;bottom:12px;left:12px;right:12px}.preview-badge .live-indicator{background:var(--green);border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:1.5s infinite pulse}.preview-badge-text .top{color:#fff;font-size:12px;font-weight:600}.preview-badge-text .sub{color:var(--text-dim);font-size:10px}.enroll-card-body{padding:24px}.enroll-price-row{align-items:center;gap:12px;margin-bottom:20px;display:flex}.price-free{color:var(--green);font-size:26px;font-weight:800}.price-note{color:var(--text-dim);font-size:12px;line-height:1.4}.section-selector{margin-bottom:20px}.section-selector label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:12px;font-weight:600;display:block}.section-selector select{border-radius:var(--radius-sm);background:var(--navy-mid);border:1px solid var(--navy-line);width:100%;color:var(--text);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2364748b' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding:10px 36px 10px 14px;font-family:inherit;font-size:14px}.section-selector select:focus{border-color:var(--blue);outline:none}.enroll-cta-stack{flex-direction:column;gap:10px;margin-bottom:20px;display:flex}.enroll-login-note{text-align:center;color:var(--text-dim);margin-bottom:20px;font-size:12px}.enroll-login-note a{color:var(--accent)}.enroll-includes{border-top:1px solid var(--navy-line);flex-direction:column;gap:10px;padding-top:20px;display:flex}.include-item{color:var(--text-muted);align-items:center;gap:10px;font-size:13px;display:flex}.include-item .inc-icon{flex-shrink:0;width:20px;font-size:15px}.sticky-enroll-bar{z-index:150;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--navy-line);background:#1a1a2ef7;justify-content:space-between;align-items:center;gap:16px;padding:14px 5vw;display:none;position:fixed;bottom:0;left:0;right:0}.sticky-enroll-bar .course-name{white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:14px;font-weight:600;overflow:hidden}.sticky-enroll-bar .enroll-btn-bar{background:var(--blue);color:#fff;border-radius:var(--radius-sm);white-space:nowrap;cursor:pointer;border:none;padding:10px 24px;font-family:inherit;font-size:14px;font-weight:600}.course-body{grid-template-columns:1fr 360px;gap:48px;max-width:1200px;margin:0 auto;padding:48px 5vw 80px;display:grid}.content-tabs{border-bottom:1px solid var(--navy-line);z-index:50;background:var(--navy);gap:0;margin-bottom:40px;padding-top:4px;display:flex;position:sticky;top:64px}.content-tab{cursor:pointer;color:var(--text-dim);white-space:nowrap;border-bottom:2px solid #0000;padding:12px 20px;font-size:14px;font-weight:600;transition:all .18s}.content-tab:hover{color:var(--text)}.content-tab.active{color:var(--blue-lt);border-bottom-color:var(--blue)}.content-section{display:none}.content-section.active{display:block}.section-title{letter-spacing:-.01em;margin-bottom:20px;font-size:20px;font-weight:700}.learn-grid{background:var(--navy-card);border:1px solid var(--navy-line);border-radius:var(--radius);grid-template-columns:1fr 1fr;gap:10px;padding:24px;display:grid}.learn-item{color:var(--text-muted);align-items:flex-start;gap:10px;font-size:14px;display:flex}.learn-item:before{content:"✓";width:20px;height:20px;color:var(--green);background:#22c55e1f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;font-size:11px;font-weight:700;display:flex}.req-list{flex-direction:column;gap:10px;list-style:none;display:flex}.req-list li{color:var(--text-muted);align-items:flex-start;gap:10px;font-size:14px;display:flex}.req-list li:before{content:"→";color:var(--blue-lt);flex-shrink:0;margin-top:1px;font-weight:700}.audience-list{flex-direction:column;gap:10px;list-style:none;display:flex}.audience-list li{color:var(--text-muted);align-items:flex-start;gap:10px;font-size:14px;display:flex}.audience-list li:before{content:"👤";flex-shrink:0}.content-block{border-bottom:1px solid var(--navy-line);margin-bottom:40px;padding-bottom:40px}.content-block:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.syllabus-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:16px;display:flex}.syllabus-summary{color:var(--text-dim);font-size:13px}.expand-all-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;font-family:inherit;font-size:13px;font-weight:600}.expand-all-btn:hover{text-decoration:underline}.module{background:var(--navy-card);border:1px solid var(--navy-line);border-radius:var(--radius-sm);margin-bottom:8px;overflow:hidden}.module-header{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:12px;padding:16px 20px;transition:background .15s;display:flex}.module-header:hover{background:#ffffff08}.module-toggle{color:var(--text-dim);text-align:center;flex-shrink:0;width:18px;font-size:12px}.module-num{width:28px;height:28px;color:var(--blue-lt);background:#2e75b626;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.module-info{flex:1}.module-title{color:var(--text);font-size:14px;font-weight:600}.module-meta{color:var(--text-dim);margin-top:2px;font-size:12px}.module-status{flex-shrink:0}.module-body{border-top:1px solid var(--navy-line);display:none}.module.open .module-body{display:block}.module.open .module-toggle{transform:rotate(90deg)}.module-toggle{transition:transform .2s;display:inline-block}.lesson-list{padding:8px 0}.lesson-item{color:var(--text-muted);border-bottom:1px solid #ffffff0a;align-items:center;gap:12px;padding:10px 20px 10px 56px;font-size:13px;transition:background .12s;display:flex}.lesson-item:last-child{border-bottom:none}.lesson-item:hover{background:#ffffff05}.lesson-icon{text-align:center;flex-shrink:0;width:20px;font-size:14px}.lesson-name{flex:1}.lesson-duration{color:var(--text-dim);white-space:nowrap;font-size:12px}.lesson-lock{color:var(--text-dim);background:#ffffff0d;border-radius:4px;padding:2px 8px;font-size:11px}.instructor-card{background:var(--navy-card);border:1px solid var(--navy-line);border-radius:var(--radius);padding:28px}.instructor-top{align-items:flex-start;gap:20px;margin-bottom:20px;display:flex}.instructor-avatar-lg{background:linear-gradient(135deg, var(--blue), var(--accent));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:72px;height:72px;font-size:26px;font-weight:700;display:flex}.instructor-details h3{margin-bottom:4px;font-size:20px;font-weight:700}.instructor-details .post{color:var(--blue-lt);margin-bottom:8px;font-size:14px}.instructor-stats-row{flex-wrap:wrap;gap:20px;display:flex}.inst-stat{color:var(--text-dim);align-items:center;gap:6px;font-size:13px;display:flex}.inst-stat .val{color:var(--text);font-weight:600}.instructor-bio{color:var(--text-muted);margin-bottom:16px;font-size:14px;line-height:1.8}.instructor-bio-block{margin-top:16px}.instructor-bio-block:first-of-type{margin-top:0}.instructor-bio-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);margin-bottom:6px;font-size:11px;font-weight:700}.instructor-bio-text{color:var(--text-muted);white-space:pre-wrap;font-size:14px;line-height:1.75}.instructor-contact{color:var(--text-dim);margin-top:4px;font-size:13px}.instructor-contact a{color:var(--blue-lt);text-decoration:none}.instructor-contact a:hover{text-decoration:underline}.instructor-team{flex-direction:column;gap:24px;display:flex}.instructor-tags{flex-wrap:wrap;gap:8px;display:flex}.tag{border:1px solid var(--navy-line);color:var(--text-dim);background:#ffffff0d;border-radius:20px;padding:4px 12px;font-size:12px}.reviews-summary{background:var(--navy-card);border:1px solid var(--navy-line);border-radius:var(--radius);grid-template-columns:160px 1fr;align-items:center;gap:32px;margin-bottom:28px;padding:28px;display:grid}.rating-big{text-align:center}.rating-big .number{color:#fff;font-size:56px;font-weight:800;line-height:1}.rating-big .stars-row{color:var(--amber);letter-spacing:2px;margin:8px 0 4px;font-size:18px}.rating-big .total{color:var(--text-dim);font-size:13px}.rating-bars{flex-direction:column;gap:8px;display:flex}.rating-bar-row{align-items:center;gap:10px;font-size:13px;display:flex}.rating-bar-label{color:var(--text-muted);text-align:right;flex-shrink:0;width:16px}.rating-bar-track{background:var(--navy-line);border-radius:3px;flex:1;height:6px;overflow:hidden}.rating-bar-fill{background:var(--amber);border-radius:3px;height:100%;transition:width .4s}.rating-bar-pct{color:var(--text-dim);text-align:right;flex-shrink:0;width:36px;font-size:12px}.review-card{background:var(--navy-card);border:1px solid var(--navy-line);border-radius:var(--radius-sm);margin-bottom:12px;padding:20px}.review-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.reviewer{align-items:center;gap:10px;display:flex}.reviewer-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:13px;font-weight:700;display:flex}.reviewer-name{font-size:14px;font-weight:600}.reviewer-date{color:var(--text-dim);font-size:12px}.review-stars{color:var(--amber);letter-spacing:1px;font-size:13px}.review-body{color:var(--text-muted);font-size:14px;line-height:1.75}.review-role-badge{color:var(--blue-lt);background:#2e75b626;border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:10px;font-weight:600}.sidebar-sticky{flex-direction:column;gap:20px;display:flex;position:sticky;top:80px}.detail-card{background:var(--navy-card);border:1px solid var(--navy-line);border-radius:var(--radius);padding:24px}.detail-card-title{color:var(--text);margin-bottom:16px;font-size:14px;font-weight:700}.detail-row{border-bottom:1px solid #ffffff0d;align-items:flex-start;gap:12px;padding:10px 0;font-size:13px;display:flex}.detail-row:last-child{border-bottom:none;padding-bottom:0}.detail-icon{text-align:center;width:22px;color:var(--text-dim);flex-shrink:0;margin-top:1px;font-size:16px}.detail-label{color:var(--text-dim);flex-shrink:0;min-width:90px}.detail-value{color:var(--text);font-weight:500}.related-card{background:var(--navy-card);border:1px solid var(--navy-line);border-radius:var(--radius-sm);align-items:flex-start;gap:14px;margin-bottom:10px;padding:14px;transition:border-color .15s,transform .15s;display:flex}.related-card:hover{border-color:#2e75b666;transform:translate(2px)}.related-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;display:flex}.related-title{color:var(--text);margin-bottom:3px;font-size:13px;font-weight:600;line-height:1.3}.related-meta{color:var(--text-dim);font-size:11px}.related-enroll{color:var(--green);font-size:11px;font-weight:600}.not-enrolled-banner{border-radius:var(--radius);background:linear-gradient(135deg,#2e75b61f,#5b8fff12);border:1px solid #2e75b64d;align-items:center;gap:16px;margin-bottom:32px;padding:20px 24px;display:flex}.not-enrolled-banner .neb-icon{flex-shrink:0;font-size:24px}.not-enrolled-banner .neb-text .top{margin-bottom:4px;font-size:15px;font-weight:700}.not-enrolled-banner .neb-text .sub{color:var(--text-muted);font-size:13px}.not-enrolled-banner .neb-action{flex-shrink:0;margin-left:auto}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.4s both fade-in}@media (max-width:960px){.course-hero-inner{grid-template-columns:1fr}.enroll-card-wrap{position:static}.course-body{grid-template-columns:1fr}.sidebar-sticky{position:static}.sticky-enroll-bar{display:flex}.learn-grid,.reviews-summary{grid-template-columns:1fr}.rating-big{justify-content:center;align-items:center;gap:16px;display:flex}nav .nav-links{display:none}}@media (max-width:600px){.course-quick-stats{gap:12px}.instructor-top{flex-direction:column}.reviews-summary{gap:20px}}}
