:root{--ink:#eef5f1;--muted:#91a39b;--line:#293a34;--paper:#0d1513;--card:#14211d;--green:#7bd0ad;--green-dark:#183e35;--mint:#204b3d;--lime:#c8ed67;--yellow:#f2d98b;--shadow:0 18px 42px #00000035}
body{background:radial-gradient(circle at 80% 0%,#19382f 0,#0d1513 35%),var(--paper)}
.topbar{background:#0d1513d9;border-color:var(--line)}.brand-mark{background:var(--lime);color:#10211b}.pulse{background:var(--lime);box-shadow:0 0 0 4px #c8ed6720}.hero-note{border-color:#718d82}
.stat-card,.course-card,.search-box,.field-label select,.sort-label select{background:#14211d;border-color:var(--line);box-shadow:var(--shadow)}.stat-card.accent{background:linear-gradient(135deg,#1b4b3e,#15372f);border-color:#2b6655}
.stat-label,.stat-caption,.org,.card-bottom,.hero-lead,.results-toolbar,.field-label,.check-row{color:var(--muted)}.accent .stat-label,.accent .stat-caption{color:#b9ded0}.search-box input{color:var(--ink)}.search-box input::placeholder{color:#71847b}
.field-label select,.sort-label select{color:var(--ink)}.field-label select option,.sort-label select option{background:#14211d;color:var(--ink)}.tag{background:#20332d;color:#a9c1b7}.score{background:#245444;color:#c9f2df}.score.high{background:var(--lime);color:#17251d}
.course-card:hover{border-color:#4c9278;box-shadow:0 18px 42px #00000055}.active-chip{background:#173c31;border-color:#36735d;color:#aee4cd}.toggle{background:#40534b}.toggle-row input:checked+.toggle{background:var(--green)}
.button{background:var(--green-dark);color:#dff6eb;border:1px solid #4a977a}.course-dialog{background:#14211d;color:var(--ink)}.course-dialog::backdrop{background:#000000b3}.detail{border-color:var(--line)}.detail:nth-child(even){border-color:var(--line)}.dialog-description{color:#b2c3bc}.evidence-link{color:var(--green)}.footer{border-color:var(--line);color:var(--muted)}

/* UX refresh: progressive disclosure, featured content and quiet wordmark */
.brand-mark{width:21px;height:21px;border-radius:0;background:transparent;color:var(--lime);display:grid;place-items:center;font-size:15px;line-height:1}
.brand{font-size:15px;letter-spacing:-.02em}
.featured-card{margin:0 0 44px;padding:25px 28px;border:1px solid #315e4d;border-radius:18px;background:linear-gradient(120deg,#183d32 0%,#12251f 72%);box-shadow:var(--shadow)}
.featured-kicker{display:flex;align-items:center;gap:12px;color:var(--lime);font:500 10px 'DM Mono';letter-spacing:.12em}
.featured-line{height:1px;flex:1;background:#477361}
.featured-content{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-top:25px}
.featured-card .eyebrow{margin:0 0 10px;color:#8fceb4}
.featured-card h2{font:600 clamp(26px,4vw,42px)/1.05 'Space Grotesk';letter-spacing:-.05em;margin:0}
.featured-card p:not(.eyebrow){max-width:620px;margin:12px 0 0;color:#b9d4c8;line-height:1.55;font-size:14px}
.featured-status{display:inline-flex;align-items:center;border:1px solid #5a876f;color:#c8ed67;border-radius:99px;padding:9px 12px;font:500 10px 'DM Mono';white-space:nowrap}
.catalog-layout{display:block}
.explore-bar{margin-bottom:22px;padding:18px;border:1px solid var(--line);border-radius:15px;background:#101b18;box-shadow:var(--shadow)}
.explore-bar .search-box{margin:0;background:#14211d;border-color:#385148;height:48px}
.quick-filters{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:14px}
.quick-chip,.filter-button{border:1px solid #385148;border-radius:99px;background:#172822;color:#aec6ba;padding:8px 12px;font-size:11px;cursor:pointer;transition:.2s}
.quick-chip:hover,.quick-chip:focus-visible,.filter-button:hover,.filter-button:focus-visible{border-color:var(--green);color:var(--ink);outline:none}
.quick-chip.is-active{background:var(--lime);border-color:var(--lime);color:#16251f}
.filter-button{margin-left:auto;background:var(--green-dark);border-color:#4d9279;color:#d7f1e5}
.filters-dialog{width:min(700px,calc(100% - 30px));max-height:min(780px,calc(100vh - 36px));padding:0;border:1px solid var(--line);border-radius:18px;background:#14211d;color:var(--ink);box-shadow:0 25px 80px #00000080}
.filters-dialog::backdrop{background:#000000b3;backdrop-filter:blur(4px)}
.filters-dialog-header,.filters-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 26px;border-bottom:1px solid var(--line)}
.filters-dialog-header .eyebrow{margin:0 0 5px}.filters-dialog-header h2{font:600 27px 'Space Grotesk';letter-spacing:-.04em;margin:0}
.filters-dialog-body{padding:0 26px;overflow:auto;max-height:calc(100vh - 230px)}
.filters-dialog-body .filter-group{padding:21px 0}.filters-dialog-body .check-grid{grid-template-columns:repeat(3,1fr)}
.filters-dialog-footer{border-top:1px solid var(--line);border-bottom:0}.filters-dialog-footer .text-button{padding:10px 0}
.filters-dialog .dialog-close{position:static;font-size:25px;padding:0}
.active-filters{margin-top:12px}
@media(max-width:650px){.featured-content{display:block}.featured-status{margin-top:20px}.filter-button{margin-left:0}.filters-dialog-body .check-grid{grid-template-columns:repeat(2,1fr)}.filters-dialog-header,.filters-dialog-footer{padding-left:20px;padding-right:20px}.filters-dialog-body{padding:0 20px}}

/* Minimal catalog layout */
.hero{padding:54px 0 30px;display:block}
.hero-copy{max-width:760px}
.hero h1{max-width:760px}
.hero-lead{max-width:610px;margin-top:16px;font-size:15px}
.catalog-layout{margin-top:0}
.explore-bar{margin:0 0 18px;padding:0;border:0;background:transparent;box-shadow:none}
.explore-bar .search-box{height:46px;max-width:560px;border-radius:9px}
.catalog-meta{margin:0 0 12px;color:var(--muted);font:11px 'DM Mono';text-transform:uppercase;letter-spacing:.04em}
.catalog-meta strong{color:var(--ink);font-weight:500}
.cards{gap:12px}
.featured-course-card{border-color:#5d8e42;background:linear-gradient(135deg,#1a3528,#14211d)}
.featured-course-card .course-type{color:var(--lime)}
.featured-course-card .featured-status{color:var(--lime);border:1px solid #5d8e42;border-radius:99px;padding:5px 8px;font:500 10px 'DM Mono';white-space:nowrap}
.featured-description{color:#b9d4c8;line-height:1.5;font-size:13px;margin:0}
.empty-state{padding:60px 20px}
@media(max-width:560px){.hero{padding:38px 0 25px}.hero h1{font-size:39px}.hero-lead{font-size:14px}.explore-bar .search-box{max-width:none}.catalog-meta{margin-bottom:10px}}
