/* Consistent category identity; geographic filtering is a separate dimension. */
.category-link:not(.category-all){border-color:color-mix(in srgb,var(--category-color) 38%,#292d30);background:color-mix(in srgb,var(--category-color) 9%,#141719)}
.category-link:not(.category-all) span{color:var(--category-color)}
#catalog-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}
#catalog-filters .filter{display:inline-flex;align-items:center;gap:8px;min-height:44px;border:1px solid color-mix(in srgb,var(--category-color,#bfc5cf) 35%,#30363b);background:color-mix(in srgb,var(--category-color,#bfc5cf) 8%,#15191d);color:var(--category-color,#d8dce3);border-radius:24px;padding:10px 16px;font-size:14px}
#catalog-filters .filter::before{content:'';width:7px;height:7px;border-radius:50%;background:currentColor;flex-shrink:0}
#catalog-filters .filter.active{background:var(--category-color,#e1e5eb);color:#13171b;border-color:var(--category-color,#e1e5eb);font-weight:700;box-shadow:0 0 0 2px #101112,0 0 0 3px var(--category-color,#e1e5eb)}
#catalog-filters .filter.active::before{content:'✓';width:auto;height:auto;background:none;border-radius:0}
.course-card{border-top:3px solid var(--category-color,#3c4248)}
.card-category{display:inline-flex;align-items:center;gap:6px;color:var(--category-color);background:color-mix(in srgb,var(--category-color) 12%,transparent);border:1px solid color-mix(in srgb,var(--category-color) 35%,transparent);border-radius:5px;padding:3px 7px;font-size:11px}
.card-category::before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor}
.card-tag{white-space:normal;line-height:1.5;min-height:25px}
.card-platform{display:block;margin-top:7px;color:#aab3bd;font-size:11px}
.card-location{display:block;color:#aab3bd;font-size:12px;margin-top:5px;line-height:1.5}
.catalog-tools{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap}
.region-field{display:flex;flex-direction:column;gap:8px;color:#c8d0d9;font-size:13px}
.region-field select{min-height:44px;padding:10px 36px 10px 13px;background:#1c2228;color:#f3f5f7;border:1px solid #505b66;border-radius:7px;font:inherit;min-width:190px;max-width:100%}
.region-field select:focus-visible,.filter:focus-visible{outline:2px solid #e1e5eb;outline-offset:4px}
.categories{flex-wrap:wrap}
.home-region{flex-basis:100%;width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px;padding:18px 20px;border:1px solid #303940;border-radius:9px;background:#171c21}
.home-region-copy strong{display:block;font-size:15px;color:#e5eaf0;font-weight:500}
.home-region-copy p{font-size:12px;color:#9ca8b3;margin-top:5px}
.catalog-result-line{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:18px 0 24px}
.catalog-result-line .catalog-result{margin:0}
#location-data-note{font-size:12px;line-height:1.7;color:#aeb7c1;max-width:580px;margin:0}
.catalog .empty{grid-column:1/-1;border:1px solid #343d46;background:#171c21;border-radius:10px;padding:44px 24px;text-align:center}
.catalog .empty p{max-width:460px;margin:12px auto 22px;line-height:1.8;color:#aeb7c1}
@media(max-width:650px){.home-region{align-items:stretch;flex-direction:column;gap:14px;padding:16px}.home-region .region-field select{width:100%}.catalog-tools{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.catalog-tools .region-field select{min-width:0;width:100%}.catalog-tools .sort-label{display:flex;flex-direction:column;align-items:stretch;gap:8px;font-size:13px}.catalog-tools .sort-label select{width:100%;min-height:44px}.catalog .section-heading{gap:22px}#catalog-filters{gap:9px;margin-bottom:20px}#catalog-filters .filter{font-size:13px;padding:10px 13px}.card-category{font-size:10px}.card-location{font-size:11px}.catalog-result-line{gap:8px}}
