.courses-page{--course-bg:#f3f5f2;--course-surface:#ffffff;--course-surface-muted:#f7f8f6;--course-text:#1e2522;--course-muted:#5f6d67;--course-border:#dfe5e0;--course-accent:#4f6c60;--course-accent-strong:#4f6c60;--course-accent-soft:#e8efea;--course-shadow:0 14px 36px rgba(16,24,40,0.06);min-height:100vh;padding:34px 0 72px;background:var(--course-bg);color:var(--course-text)}html.dark-mode .courses-page,body.dark-mode .courses-page{--course-bg:#141513;--course-surface:#1d1f1c;--course-surface-muted:#181a17;--course-text:#f3f1eb;--course-muted:#b9b6ad;--course-border:#33352f;--course-accent:#8fb7a7;--course-accent-strong:#b8d2c6;--course-accent-soft:#2a2d28;--course-shadow:0 18px 42px rgba(0,0,0,0.32)}.courses-shell{width:min(100% - 48px,1760px);margin:0 auto}.courses-breadcrumb{margin-bottom:24px}.courses-breadcrumb .breadcrumb{margin:0;padding:0;background:transparent;font-size:0.9rem}.courses-breadcrumb a{color:var(--course-accent);text-decoration:none}.courses-breadcrumb a:hover{text-decoration:underline}.courses-breadcrumb .active{color:var(--course-muted)}.courses-breadcrumb .breadcrumb-item + .breadcrumb-item::before{content:"›";color:var(--course-muted)}.courses-hero{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:22px;align-items:stretch;margin-bottom:22px}.courses-hero>div,.courses-hero-panel,.course-card,.courses-toolbar,.courses-empty{border:1px solid var(--course-border);border-radius:10px;background:var(--course-surface);box-shadow:var(--course-shadow)}.courses-hero>div:first-child{padding:34px}.courses-kicker{display:inline-flex;align-items:center;gap:8px;margin:0 0 12px;color:var(--course-accent);font-size:0.82rem;font-weight:850;letter-spacing:0.04em;text-transform:uppercase}.courses-hero h1{max-width:980px;margin:0;color:var(--course-text);font-size:clamp(2rem,4vw,3.8rem);line-height:1.08;font-weight:850;letter-spacing:0}.courses-hero p{max-width:820px;margin:18px 0 0;color:var(--course-muted);font-size:1.02rem;line-height:1.8}.courses-hero-panel{padding:24px;display:flex;flex-direction:column;justify-content:center;gap:8px}.hero-panel-label{color:var(--course-muted);font-size:0.78rem;font-weight:800;text-transform:uppercase}.courses-hero-panel strong{color:var(--course-text);font-size:2.2rem;line-height:1}.courses-hero-panel span:last-child{color:var(--course-muted);line-height:1.6}.courses-toolbar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px;padding:14px}.course-filter{min-height:42px;padding:0 16px;border:1px solid var(--course-border);border-radius:999px;background:var(--course-surface-muted);color:var(--course-muted);font-weight:800;cursor:pointer;transition:background 0.2s ease,border-color 0.2s ease,color 0.2s ease}.course-filter:hover,.course-filter.active{border-color:var(--course-accent);background:var(--course-accent-soft);color:var(--course-accent-strong)}.course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:22px}.course-card{overflow:hidden;display:flex;flex-direction:column;transition:border-color 0.2s ease,transform 0.2s ease}.course-card:hover{border-color:var(--course-accent);transform:translateY(-3px)}.course-media{position:relative;display:block;aspect-ratio:16 / 9;overflow:hidden;background:var(--course-surface-muted);color:var(--course-accent)}.course-media img{width:100%;height:100%;object-fit:cover;transition:transform 0.35s ease}.course-card:hover .course-media img{transform:scale(1.03)}.course-media-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(79,108,96,0.14),rgba(79,108,96,0.03)),var(--course-surface-muted);font-size:3rem}.course-category{position:absolute;left:14px;top:14px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,0.88);color:#31473d;font-size:0.78rem;font-weight:850;backdrop-filter:blur(8px)}html.dark-mode .course-category,body.dark-mode .course-category{background:rgba(29,31,28,0.86);color:var(--course-accent-strong)}.course-card-body{flex:1;display:flex;flex-direction:column;padding:22px}.course-card-meta{display:flex;flex-wrap:wrap;gap:10px;color:var(--course-muted);font-size:0.86rem;font-weight:750}.course-card-meta span{display:inline-flex;align-items:center;gap:6px}.course-card-meta i{color:var(--course-accent)}.course-card-title{margin:14px 0 0;color:var(--course-text);font-size:1.35rem;line-height:1.35;font-weight:850}.course-card-title a,.course-link,.course-instructor a{color:inherit;text-decoration:none}.course-card-title a:hover,.course-link:hover{color:var(--course-accent-strong);text-decoration:underline}.course-card-description{flex:1;margin:12px 0 0;color:var(--course-muted);line-height:1.7}.course-instructor{display:flex;align-items:center;gap:12px;margin-top:18px;padding-top:18px;border-top:1px solid var(--course-border)}.course-avatar{width:42px;height:42px;flex:0 0 42px;overflow:hidden;border-radius:50%;background:var(--course-accent-soft);color:var(--course-accent-strong)}.course-avatar img{width:100%;height:100%;object-fit:cover}.course-avatar span{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-weight:850}.instructor-label{display:block;color:var(--course-muted);font-size:0.76rem;font-weight:800;text-transform:uppercase}.course-instructor strong{display:block;color:var(--course-text);font-size:0.95rem}.course-card-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px}.course-price{display:flex;flex-direction:column;gap:2px}.course-price span{color:var(--course-text);font-size:1.12rem;font-weight:850}.course-price del{color:var(--course-muted);font-size:0.88rem}.course-link{color:var(--course-accent-strong);font-weight:850;text-underline-offset:4px}.courses-empty{grid-column:1 / -1;padding:56px 24px;text-align:center}.courses-empty i{color:var(--course-accent);font-size:2.4rem}.courses-empty h2{margin:16px 0 8px;color:var(--course-text);font-size:1.4rem;font-weight:850}.courses-empty p{margin:0;color:var(--course-muted)}.course-pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:28px;color:var(--course-muted)}.course-pagination a{color:var(--course-accent-strong);font-weight:800;text-decoration:none}.course-pagination a:hover{text-decoration:underline}@media (max-width:991px){.courses-hero{grid-template-columns:1fr}}@media (max-width:640px){.courses-page{padding-top:22px}.courses-shell{width:min(100% - 28px,1760px)}.courses-hero>div:first-child,.courses-hero-panel,.course-card-body{padding:20px}.course-grid{grid-template-columns:1fr}.course-card-footer{align-items:flex-start;flex-direction:column}}.course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:22px}.course-card{display:flex;min-width:0;min-height:100%;overflow:hidden;flex-direction:column;border:1px solid var(--course-border);border-radius:10px;background:var(--course-surface);box-shadow:var(--course-shadow);color:var(--course-text);transition:border-color 0.2s ease,transform 0.2s ease}.course-card:hover{border-color:var(--course-accent);transform:translateY(-3px)}.course-card:focus-within{border-color:var(--course-accent)}.course-card a:focus-visible{outline:3px solid var(--course-accent);outline-offset:3px}.course-media{position:relative;display:block;aspect-ratio:16 / 9;overflow:hidden;background:var(--course-surface-muted);color:var(--course-accent)}.course-media img{width:100%;height:100%;object-fit:cover;transition:transform 0.35s ease}.course-card:hover .course-media img{transform:scale(1.03)}.course-media-fallback{display:flex;width:100%;height:100%;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(79,108,96,0.14),rgba(79,108,96,0.03)),var(--course-surface-muted);font-size:3rem}.course-category{position:absolute;top:14px;left:14px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,0.88);color:#31473d;font-size:0.78rem;font-weight:850;backdrop-filter:blur(8px)}html.dark-mode .course-category,body.dark-mode .course-category{background:rgba(29,31,28,0.86);color:var(--course-accent-strong)}.course-card-body{display:flex;flex:1;flex-direction:column;padding:22px}.course-card-meta{display:flex;flex-wrap:wrap;gap:10px;color:var(--course-muted);font-size:0.86rem;font-weight:750}.course-card-meta span{display:inline-flex;align-items:center;gap:6px}.course-card-meta i{color:var(--course-accent)}.course-card-title{margin:14px 0 0;color:var(--course-text);font-size:1.35rem;font-weight:850;line-height:1.35}.course-card-title a,.course-link,.course-instructor a{color:inherit;text-decoration:none}.course-card-title a:hover,.course-link:hover{color:var(--course-accent-strong);text-decoration:underline}.course-card-description{flex:1;margin:12px 0 0;color:var(--course-muted);line-height:1.7}.course-instructor{display:flex;align-items:center;gap:12px;margin-top:18px;padding-top:18px;border-top:1px solid var(--course-border)}.course-avatar{display:inline-flex;width:42px;height:42px;overflow:hidden;flex:0 0 42px;align-items:center;justify-content:center;border-radius:50%;background:var(--course-accent-soft);color:var(--course-accent-strong)}.course-avatar img{width:100%;height:100%;object-fit:cover}.course-avatar span{display:flex;width:100%;height:100%;align-items:center;justify-content:center;font-weight:850}.instructor-label{display:block;color:var(--course-muted);font-size:0.76rem;font-weight:800;text-transform:uppercase}.course-instructor strong{display:block;color:var(--course-text);font-size:0.95rem}.course-card-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px}.course-price{display:flex;flex-direction:column;gap:2px}.course-price span{color:var(--course-text);font-size:1.12rem;font-weight:850}.course-price del{color:var(--course-muted);font-size:0.88rem}.course-link{color:var(--course-accent-strong);font-weight:850;text-underline-offset:4px}@media (max-width:640px){.course-grid{grid-template-columns:1fr}.course-card-body{padding:20px}.course-card-footer{align-items:flex-start;flex-direction:column}}@media (prefers-reduced-motion:reduce){.course-card,.course-media img{transition:none}.course-card:hover{transform:none}.course-card:hover .course-media img{transform:none}}