/* Lot 7E — robustness, accessibility and final exploration polish. */

:where(a, button, input, select, textarea, [tabindex]):focus-visible {
    outline: 3px solid var(--sc-blue);
    outline-offset: 3px;
}

.sc-directory__view-switch button:focus-visible,
.sc-directory__filter-form button:focus-visible,
.sc-directory__filter-form select:focus-visible,
.sc-search-page__form input:focus-visible,
.sc-search-page__form button:focus-visible {
    outline-color: var(--sc-black);
}

[data-sc-company-map="7d"][data-sc-map-state="loading"] [data-sc-company-map-status]::before {
    content: "… ";
    font-weight: 950;
}

[data-sc-company-map="7d"][data-sc-map-state="empty"] [data-sc-company-map-status],
[data-sc-company-map="7d"][data-sc-map-state="error"] [data-sc-company-map-status] {
    max-width: 520px;
    padding: 8px 10px;
    border: 2px solid var(--sc-black);
    background: var(--sc-white);
    color: var(--sc-black);
    font-weight: 900;
}

[data-sc-company-map="7d"][data-sc-map-state="error"] .sc-directory__map {
    opacity: .55;
}

.sc-directory__map:focus-visible {
    outline: 4px solid var(--sc-blue);
    outline-offset: 4px;
}

.sc-directory__empty,
.sc-search-page__empty {
    scroll-margin-top: 24px;
}

@media (prefers-reduced-motion: reduce) {
    .sc-directory *,
    .sc-search-page * {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}
