/* /Components/UsStatesMap.razor.rz.scp.css */
/* UsStatesMap.razor.css — Interactive US Map styles (D3.js + TopoJSON) */

.us-map-container[b-kxnnh1299x] {
    position: relative;
    width: 100%;
    max-width: 960px;
    margin: 0 auto;
}

/* D3 creates SVG paths via JS — they don't get Blazor's scope attribute,
   so we use ::deep to style them from this scoped CSS file. */
[b-kxnnh1299x] .us-map-svg {
    width: 100%;
    height: auto;
    display: block;
}

[b-kxnnh1299x] .state-path {
    stroke: #fff;
    stroke-width: 0.75;
    cursor: pointer;
    transition: fill 0.2s ease, stroke-width 0.2s ease, filter 0.2s ease;
}

[b-kxnnh1299x] .state-covered {
    fill: var(--omnitech-helix-blue, #2F89A3);
}

[b-kxnnh1299x] .state-expansion {
    fill: var(--omnitech-genome-gray, #C6CACC);
}

[b-kxnnh1299x] .state-selected {
    stroke: #1a2d3b;
    stroke-width: 2;
    filter: brightness(1.2);
}

[b-kxnnh1299x] .state-path:hover {
    stroke-width: 1.5;
    filter: brightness(1.15);
}
/* /Pages/AdminPayorCoverage.razor.rz.scp.css */
/* AdminPayorCoverage.razor.css — Admin page styles */

.cursor-pointer[b-0qnizju1kr] {
    cursor: pointer;
}
/* /Pages/Clinical.razor.rz.scp.css */
/* Clinical.razor.css — Clinical audience page styles */

.hero-text[b-8rotqlg4af] {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}
/* /Pages/Courts.razor.rz.scp.css */
/* Courts.razor.css — Courts audience page styles */

.hero-text[b-773x6zc39g] {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}
/* /Pages/Employers.razor.rz.scp.css */
/* Employers.razor.css — Employers audience page styles */

.hero-text[b-9okqygcg6d] {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}
/* /Pages/Index.razor.rz.scp.css */
/* Index.razor.css — Overview page styles */

.hero-section[b-sd1dwfsum9] {
    background: linear-gradient(180deg, #1A2D3B 0%, #3C6E91 100%);
}

.min-vh-75[b-sd1dwfsum9] {
    min-height: 75vh;
}
/* /Pages/Labs.razor.rz.scp.css */
/* Labs.razor.css — Laboratories audience page styles */

.hero-text[b-2g5ygae78w] {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}
/* /Pages/PayorCoverage.razor.rz.scp.css */
/* PayorCoverage.razor.css — Payor Coverage page styles */

.payor-hero-text[b-c02hqex9e9] {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}
/* /Shared/MainLayout.razor.rz.scp.css */
/* MainLayout.razor.css — Shared layout styles */

/* Ensure the navbar uses the brand navy color */
[b-2asy89xbso] .omnitech-navbar {
    background-color: var(--omnitech-genetic-navy) !important;
}

/* Desktop: horizontal nav, toggler hidden */
@media (min-width: 992px) {
    [b-2asy89xbso] .omnitech-navbar .navbar-toggler {
        display: none;
    }
    [b-2asy89xbso] .omnitech-navbar .navbar-nav {
        flex-direction: row;
    }
    [b-2asy89xbso] .omnitech-navbar .navbar-collapse {
        display: flex !important;
    }
}

/* Mobile: vertical nav, toggler visible — JS toggles .show class */
@media (max-width: 991.98px) {
    [b-2asy89xbso] .omnitech-navbar .navbar-nav {
        flex-direction: column;
    }
    [b-2asy89xbso] .omnitech-navbar .navbar-collapse:not(.show) {
        display: none;
    }
    [b-2asy89xbso] .omnitech-navbar .navbar-collapse.show {
        display: block;
    }
}

/* Ensure main content area fills viewport height so footer stays at bottom */
.main-content[b-2asy89xbso] {
    min-height: calc(100vh - 56px - 56px); /* viewport - navbar - footer */
}

/* Navbar brand link styling */
[b-2asy89xbso] .bar-brand a {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    text-decoration: none;
    color: #fff;
}

/* Ensure footer stays at bottom */
footer[b-2asy89xbso] {
    margin-top: auto;
}
