/* /Components/Layout/MainLayout.razor.rz.scp.css */
.ke-shell[b-mu30j7vp2l] {
    --ke-blue-950: #071a42;
    --ke-blue-900: #0b2a63;
    --ke-blue-800: #123d84;
    --ke-blue-700: #1d5fb8;
    --ke-blue-600: #2563eb;
    --ke-bg: #eef5ff;
    --ke-panel: #ffffff;
    --ke-border: #d4e4f8;
    min-height: 100vh;
    overflow-x: hidden;
    overflow-y: visible;
    background: var(--ke-bg);
    color: #0b1f38;
}

.ke-shell-topnav[b-mu30j7vp2l] {
    display: flex;
    flex-direction: column;
    overflow: visible;
}

.ke-global-header[b-mu30j7vp2l] {
    position: sticky;
    top: 0;
    z-index: 4000;
    overflow: visible;
    min-height: 58px;
    border-bottom: 1px solid rgba(255, 255, 255, .18);
    background: linear-gradient(90deg, var(--ke-blue-950) 0%, var(--ke-blue-900) 50%, var(--ke-blue-800) 100%);
    box-shadow: 0 10px 22px rgba(6, 24, 63, .22);
}

.ke-header-inner[b-mu30j7vp2l] {
    min-height: 58px;
    display: grid;
    grid-template-columns: minmax(160px, 210px) minmax(0, 1fr) max-content;
    align-items: center;
    gap: .72rem;
    overflow: visible;
    padding: 0 .78rem;
}

.ke-brand-link[b-mu30j7vp2l] {
    min-width: 0;
    display: inline-flex;
    align-items: center;
    gap: .6rem;
    color: #fff;
    text-decoration: none;
    overflow: hidden;
}

.ke-brand-link:hover[b-mu30j7vp2l] { color: #fff; text-decoration: none; }

.ke-brand-mark[b-mu30j7vp2l] {
    width: 35px;
    height: 35px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    border-radius: 12px;
    background: linear-gradient(135deg, #60a5fa 0%, #22d3ee 100%);
    color: #041538;
    font-size: 1.05rem;
    font-weight: 950;
    box-shadow: 0 10px 24px rgba(56, 189, 248, .28);
}

.ke-brand-text[b-mu30j7vp2l] {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.ke-brand-text strong[b-mu30j7vp2l] {
    overflow: hidden;
    color: #fff;
    font-size: 1rem;
    line-height: 1.05;
    letter-spacing: .01em;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ke-brand-text small[b-mu30j7vp2l] {
    margin-top: .15rem;
    overflow: hidden;
    color: rgba(229, 244, 255, .78);
    font-size: .66rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ke-main[b-mu30j7vp2l] {
    min-width: 0;
    flex: 1 1 auto;
}

.ke-content[b-mu30j7vp2l] {
    width: 100%;
    min-width: 0;
    padding: .72rem .85rem 1.2rem;
}

.ke-header-actions[b-mu30j7vp2l] {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: .42rem;
    min-width: 0;
    flex: 0 0 auto;
}

.ke-quick-link[b-mu30j7vp2l] {
    min-height: 32px;
    display: inline-flex;
    align-items: center;
    padding: 0 .72rem;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 999px;
    background: rgba(255, 255, 255, .12);
    color: #fff;
    font-size: .8rem;
    font-weight: 900;
    text-decoration: none;
    white-space: nowrap;
}

.ke-quick-link:hover[b-mu30j7vp2l] {
    background: rgba(255, 255, 255, .22);
    color: #fff;
    text-decoration: none;
}

.ke-account-link[b-mu30j7vp2l] {
    padding: 0 .35rem;
    background: rgba(255, 255, 255, .10);
}

.ke-search-pill[b-mu30j7vp2l] {
    width: clamp(180px, 18vw, 300px);
    min-height: 32px;
    display: flex;
    align-items: center;
    gap: .4rem;
    padding: 0 .72rem;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 999px;
    color: rgba(235, 247, 255, .86);
    background: rgba(255, 255, 255, .09);
    font-size: .76rem;
    white-space: nowrap;
    overflow: hidden;
}

.ke-search-pill span:last-child[b-mu30j7vp2l] {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

#blazor-error-ui[b-mu30j7vp2l] {
    background: #fff7ed;
    border-top: 1px solid #fed7aa;
    bottom: 0;
    box-shadow: 0 -8px 20px rgba(15, 23, 42, .12);
    display: none;
    left: 0;
    padding: .75rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

#blazor-error-ui .dismiss[b-mu30j7vp2l] {
    cursor: pointer;
    position: absolute;
    right: .9rem;
    top: .65rem;
}

@media (max-width: 1500px) {
    .ke-header-inner[b-mu30j7vp2l] {
        grid-template-columns: minmax(142px, 180px) minmax(0, 1fr) max-content;
        gap: .48rem;
        padding: 0 .6rem;
    }

    .ke-brand-text small[b-mu30j7vp2l] { display: none; }
    .ke-brand-mark[b-mu30j7vp2l] { width: 32px; height: 32px; }
    .ke-search-pill[b-mu30j7vp2l] { width: clamp(150px, 14vw, 230px); }
    .ke-quick-link[b-mu30j7vp2l] { padding: 0 .58rem; font-size: .76rem; }
    .ke-account-link[b-mu30j7vp2l] { padding: 0 .25rem; }
}

@media (max-width: 1320px) {
    .ke-header-inner[b-mu30j7vp2l] {
        grid-template-columns: minmax(132px, 170px) minmax(0, 1fr) max-content;
    }

    .ke-search-pill[b-mu30j7vp2l] { display: none; }
}

@media (max-width: 1180px) {
    .ke-global-header[b-mu30j7vp2l] { position: sticky; }

    .ke-header-inner[b-mu30j7vp2l] {
        grid-template-columns: 1fr auto;
        grid-template-areas:
            "brand actions"
            "nav nav";
        row-gap: .45rem;
        padding: .58rem .72rem;
    }

    .ke-brand-link[b-mu30j7vp2l] { grid-area: brand; }
    .ke-top-nav[b-mu30j7vp2l] { grid-area: nav; }
    .ke-header-actions[b-mu30j7vp2l] { grid-area: actions; }
    .ke-content[b-mu30j7vp2l] { padding: .65rem; }
}

@media (max-width: 680px) {
    .ke-brand-text strong[b-mu30j7vp2l] { font-size: .92rem; }
    .ke-quick-link:not(.ke-account-link)[b-mu30j7vp2l] { display: none; }
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.ke-top-nav[b-6yq2kgmx5i] {
    min-width: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    position: relative;
    z-index: 50;
    overflow: visible;
}

.ke-nav-toggle[b-6yq2kgmx5i] { display: none; }

.ke-nav-toggle-button[b-6yq2kgmx5i] {
    display: none;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 0 .75rem;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 999px;
    color: #fff;
    background: rgba(255, 255, 255, .12);
    font-size: .8rem;
    font-weight: 900;
    cursor: pointer;
}

.ke-nav-groups[b-6yq2kgmx5i] {
    min-width: 0;
    max-width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    gap: .22rem;
    position: relative;
    z-index: 60;
    overflow: visible;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.ke-nav-groups[b-6yq2kgmx5i]::-webkit-scrollbar { display: none; }

.ke-nav-group[b-6yq2kgmx5i] {
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
    flex: 0 0 auto;
}

[b-6yq2kgmx5i] .ke-nav-direct,
.ke-nav-trigger[b-6yq2kgmx5i] {
    height: 34px;
    display: inline-flex;
    align-items: center;
    gap: .28rem;
    padding: 0 .58rem;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: rgba(238, 247, 255, .9);
    font-size: .79rem;
    font-weight: 900;
    line-height: 1;
    text-decoration: none !important;
    white-space: nowrap;
    flex: 0 0 auto;
}

.ke-nav-trigger[b-6yq2kgmx5i]::after {
    content: "▾";
    color: rgba(238, 247, 255, .66);
    font-size: .66rem;
}

[b-6yq2kgmx5i] .ke-nav-direct:hover,
[b-6yq2kgmx5i] .ke-nav-direct.active,
.ke-nav-group:hover .ke-nav-trigger[b-6yq2kgmx5i],
.ke-nav-group:focus-within .ke-nav-trigger[b-6yq2kgmx5i] {
    background: rgba(255, 255, 255, .16);
    color: #fff;
    text-decoration: none !important;
}

[b-6yq2kgmx5i] .ke-nav-direct.active {
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .18);
}

.ke-nav-popover[b-6yq2kgmx5i] {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    z-index: 5000;
    width: 230px;
    display: none;
    padding: .5rem;
    border: 1px solid #c7d8f0;
    border-radius: 16px;
    background: rgba(255, 255, 255, .99);
    box-shadow: 0 18px 40px rgba(6, 24, 63, .24);
}

.ke-nav-popover[b-6yq2kgmx5i]::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -10px;
    height: 10px;
}

.ke-nav-group:last-child .ke-nav-popover[b-6yq2kgmx5i] {
    left: auto;
    right: 0;
}

.ke-nav-group:nth-last-child(2) .ke-nav-popover[b-6yq2kgmx5i] {
    left: auto;
    right: 0;
}


.ke-nav-popover-wide[b-6yq2kgmx5i] {
    width: 430px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .25rem;
}

.ke-nav-group:hover .ke-nav-popover[b-6yq2kgmx5i],
.ke-nav-group:focus-within .ke-nav-popover[b-6yq2kgmx5i] {
    display: grid;
}

[b-6yq2kgmx5i] .ke-nav-link {
    min-height: 35px;
    display: flex;
    align-items: center;
    padding: 0 .72rem;
    border-radius: 11px;
    color: #0a2a62;
    font-size: .82rem;
    font-weight: 850;
    text-decoration: none !important;
    white-space: nowrap;
}

[b-6yq2kgmx5i] .ke-nav-link:hover,
[b-6yq2kgmx5i] .ke-nav-link.active {
    background: #edf5ff;
    color: #08215a;
    text-decoration: none !important;
}

@media (max-width: 1500px) {
    .ke-nav-groups[b-6yq2kgmx5i] { gap: .12rem; }

    [b-6yq2kgmx5i] .ke-nav-direct,
    .ke-nav-trigger[b-6yq2kgmx5i] {
        padding: 0 .46rem;
        font-size: .74rem;
    }
}

@media (max-width: 1320px) {
    [b-6yq2kgmx5i] .ke-nav-direct,
    .ke-nav-trigger[b-6yq2kgmx5i] {
        padding: 0 .42rem;
        font-size: .72rem;
    }
}

@media (max-width: 1180px) {
    .ke-top-nav[b-6yq2kgmx5i] {
        width: 100%;
        height: auto;
        align-items: stretch;
        overflow: visible;
    }

    .ke-nav-toggle-button[b-6yq2kgmx5i] { display: inline-flex; }

    .ke-nav-groups[b-6yq2kgmx5i] {
        display: none;
        width: 100%;
        height: auto;
        padding: .38rem 0 .12rem;
        overflow-x: auto;
        overflow-y: visible;
    }

    .ke-nav-toggle:checked ~ .ke-nav-groups[b-6yq2kgmx5i] { display: flex; }

    .ke-nav-group[b-6yq2kgmx5i] { height: auto; }

    .ke-nav-popover[b-6yq2kgmx5i],
    .ke-nav-popover-wide[b-6yq2kgmx5i] {
        position: fixed;
        top: 104px;
        left: .85rem;
        right: .85rem;
        width: auto;
        max-height: 66vh;
        overflow-y: auto;
        z-index: 5000;
    }
}
/* /Components/Pages/Acoustic.razor.rz.scp.css */
.acoustic-workspace[b-gc7vpe164r],
.ai-analysis-grid[b-gc7vpe164r] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .65rem;
}

.acoustic-workspace .oh-card[b-gc7vpe164r],
.ai-analysis-grid .oh-card[b-gc7vpe164r] {
    min-width: 0;
}

.spectrogram-panel[b-gc7vpe164r],
.waveform-panel[b-gc7vpe164r] {
    max-height: 260px;
    overflow: auto;
}

@media (max-width: 1100px) {
    .acoustic-workspace[b-gc7vpe164r],
    .ai-analysis-grid[b-gc7vpe164r] {
        grid-template-columns: 1fr;
    }

    .spectrogram-panel[b-gc7vpe164r],
    .waveform-panel[b-gc7vpe164r] {
        max-height: none;
    }
}
/* /Components/Pages/Admin/AgencyLinks.razor.rz.scp.css */
.oa-summary-card[b-49ei3mrojm] {
    margin-bottom: 1rem;
}

.oa-summary-grid[b-49ei3mrojm] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .75rem;
}

.oa-card-title-row[b-49ei3mrojm] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .75rem;
}

.oa-inline-filter[b-49ei3mrojm] {
    display: flex;
    align-items: center;
    gap: .5rem;
    white-space: nowrap;
}

.oa-inline-filter select[b-49ei3mrojm],
.oa-table-input[b-49ei3mrojm] {
    border: 1px solid var(--color-border);
    border-radius: .5rem;
    padding: .35rem .5rem;
    background: #fff;
}

.oa-table-input[b-49ei3mrojm] {
    width: 10rem;
}

.oa-table-input.oa-number[b-49ei3mrojm] {
    width: 6rem;
}

.oa-dataset-picker[b-49ei3mrojm] {
    max-height: 18rem;
    overflow: auto;
    border: 1px solid var(--color-border);
    border-radius: .75rem;
    padding: .5rem;
    background: #fff;
}

.oa-check-row[b-49ei3mrojm] {
    display: flex;
    align-items: flex-start;
    gap: .5rem;
    padding: .45rem .25rem;
    border-bottom: 1px solid rgba(15, 23, 42, .06);
}

.oa-check-row:last-child[b-49ei3mrojm] {
    border-bottom: 0;
}

.oa-check-row span[b-49ei3mrojm] {
    display: flex;
    flex-direction: column;
    gap: .15rem;
}

.oa-check-row small[b-49ei3mrojm] {
    color: #64748b;
}

@media (max-width: 1200px) {
    .oa-summary-grid[b-49ei3mrojm] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.oa-actions-wrap[b-49ei3mrojm] {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
}

.oa-dataset-picker.compact[b-49ei3mrojm] {
    max-height: 14rem;
}

.oa-ip-test[b-49ei3mrojm] {
    display: flex;
    gap: .5rem;
    margin-top: .55rem;
    align-items: center;
}

.oa-ip-test input[b-49ei3mrojm] {
    flex: 1 1 auto;
    min-width: 0;
}

.oa-ip-test-result[b-49ei3mrojm] {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem .5rem;
    align-items: center;
    margin-top: .5rem;
    padding: .55rem .65rem;
    border-radius: 10px;
    border: 1px solid var(--color-border);
    font-size: .85rem;
}

.oa-ip-test-result.ok[b-49ei3mrojm] {
    background: rgba(22, 163, 74, .07);
    border-color: rgba(22, 163, 74, .28);
}

.oa-ip-test-result.fail[b-49ei3mrojm] {
    background: rgba(220, 38, 38, .07);
    border-color: rgba(220, 38, 38, .28);
}

.oa-ip-test-result code[b-49ei3mrojm] {
    padding: .15rem .35rem;
    border-radius: 6px;
    background: rgba(15, 23, 42, .06);
}
/* /Components/Pages/Admin/ApiClients.razor.rz.scp.css */
.oa-summary-card[b-21d7stkwa0] {
    margin-bottom: 1rem;
}

.oa-summary-grid[b-21d7stkwa0] {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: .75rem;
}

.oa-card-title-row[b-21d7stkwa0] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .75rem;
}

.oa-actions-wrap[b-21d7stkwa0] {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
}

.oa-quota-cell[b-21d7stkwa0] {
    min-width: 9rem;
}

.oa-quota-track[b-21d7stkwa0] {
    width: 100%;
    height: .4rem;
    border-radius: 999px;
    background: var(--color-border, #e5e7eb);
    overflow: hidden;
    margin: .25rem 0;
}

.oa-quota-fill[b-21d7stkwa0] {
    height: 100%;
    border-radius: 999px;
    background: var(--color-primary, #2563eb);
}

.oa-quota-over[b-21d7stkwa0] {
    color: #dc2626;
}

.oa-selected-row[b-21d7stkwa0] {
    background: rgba(37, 99, 235, .06);
}

.oa-key-admin-grid[b-21d7stkwa0] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1rem;
    margin-bottom: 1rem;
}

.oa-key-panel[b-21d7stkwa0] {
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 1rem;
    padding: 1rem;
    background: #fff;
}

.oa-key-panel h4[b-21d7stkwa0] {
    margin: 0 0 .75rem;
}

.oa-key-panel textarea[b-21d7stkwa0] {
    min-height: 5rem;
    width: 100%;
    resize: vertical;
}

.oa-check[b-21d7stkwa0] {
    display: flex;
    align-items: center;
    gap: .5rem;
    margin: .75rem 0;
    font-size: .9rem;
}

.oa-history-title[b-21d7stkwa0] {
    margin-top: 1rem;
}

@media (max-width: 1200px) {
    .oa-summary-grid[b-21d7stkwa0] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .oa-key-admin-grid[b-21d7stkwa0] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Admin/AuditLogs.razor.rz.scp.css */
.audit-summary-grid[b-djeyui2so8] {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 0.9rem;
    margin-bottom: 1rem;
}

.audit-kpi[b-djeyui2so8] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    min-height: 7rem;
}

.audit-kpi span[b-djeyui2so8] {
    color: var(--oh-muted, #6b7280);
    font-size: 0.85rem;
}

.audit-kpi strong[b-djeyui2so8] {
    font-size: 1.7rem;
    line-height: 1.1;
}

.audit-toolbar[b-djeyui2so8] {
    margin-bottom: 1rem;
}

.audit-tabs[b-djeyui2so8] {
    display: flex;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.audit-tab[b-djeyui2so8] {
    border: 1px solid var(--oh-border, #d9e2ec);
    background: #fff;
    border-radius: 999px;
    padding: 0.45rem 1rem;
    font-weight: 700;
}

.audit-tab.active[b-djeyui2so8] {
    background: var(--oh-primary, #2563eb);
    border-color: var(--oh-primary, #2563eb);
    color: #fff;
}

.audit-filter-grid[b-djeyui2so8] {
    align-items: end;
}

.audit-filter-action[b-djeyui2so8] {
    display: flex;
    align-items: end;
}

.audit-table th[b-djeyui2so8],
.audit-table td[b-djeyui2so8] {
    vertical-align: top;
}

.audit-code[b-djeyui2so8] {
    display: inline-block;
    font-family: Consolas, Monaco, monospace;
    font-size: 0.82rem;
    background: #f3f6fa;
    border: 1px solid var(--oh-border, #d9e2ec);
    border-radius: 0.45rem;
    padding: 0.15rem 0.35rem;
    white-space: nowrap;
}

.audit-message[b-djeyui2so8] {
    max-width: 24rem;
    white-space: normal;
    word-break: break-word;
}

.audit-path[b-djeyui2so8] {
    max-width: 28rem;
    font-family: Consolas, Monaco, monospace;
    font-size: 0.8rem;
    word-break: break-all;
}

.audit-pager[b-djeyui2so8] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    margin-top: 1rem;
}

@media (max-width: 1300px) {
    .audit-summary-grid[b-djeyui2so8] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .audit-summary-grid[b-djeyui2so8] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
/* /Components/Pages/Admin/OperationalConfigCheck.razor.rz.scp.css */
.ops-config-page[b-s0tbpiuemf] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.page-heading-row[b-s0tbpiuemf] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.page-heading-row h1[b-s0tbpiuemf] {
    margin: 0;
    font-size: 1.8rem;
    font-weight: 800;
}

.eyebrow[b-s0tbpiuemf] {
    margin: 0 0 .35rem;
    color: var(--color-primary, #2563eb);
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.page-lead[b-s0tbpiuemf] {
    margin: .45rem 0 0;
    color: var(--color-muted, #64748b);
}

.page-actions[b-s0tbpiuemf] {
    display: flex;
    gap: .5rem;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.config-message[b-s0tbpiuemf] {
    border-radius: 14px;
    padding: .8rem 1rem;
    font-weight: 700;
}

.config-message-error[b-s0tbpiuemf] {
    background: #fef2f2;
    border: 1px solid #fecaca;
    color: #991b1b;
}

.loading-panel[b-s0tbpiuemf],
.empty-panel[b-s0tbpiuemf] {
    padding: 2rem;
    text-align: center;
    color: var(--color-muted, #64748b);
}

.config-summary-grid[b-s0tbpiuemf] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .85rem;
}

.config-summary-card[b-s0tbpiuemf] {
    border: 1px solid var(--color-border, #e2e8f0);
    border-radius: 18px;
    background: #fff;
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: .3rem;
    box-shadow: 0 8px 20px rgba(15, 23, 42, .04);
}

.config-summary-card span[b-s0tbpiuemf],
.config-summary-card small[b-s0tbpiuemf] {
    color: var(--color-muted, #64748b);
}

.config-summary-card strong[b-s0tbpiuemf] {
    font-size: 1.7rem;
    line-height: 1.1;
}

.config-guide-panel[b-s0tbpiuemf] {
    padding: 1rem;
}

.config-guide-list[b-s0tbpiuemf] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .65rem;
}

.config-guide-list span[b-s0tbpiuemf] {
    border: 1px solid var(--color-border, #e2e8f0);
    border-radius: 14px;
    padding: .75rem;
    color: var(--color-muted, #64748b);
    background: #f8fafc;
}

.config-section-list[b-s0tbpiuemf] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.config-section[b-s0tbpiuemf] {
    padding: 1rem;
}

.config-status-badge[b-s0tbpiuemf] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 3.5rem;
    border-radius: 999px;
    padding: .28rem .6rem;
    font-size: .78rem;
    font-weight: 800;
}

.config-status-badge.status-ok[b-s0tbpiuemf],
.status-ok .config-status-badge.status-ok[b-s0tbpiuemf] {
    background: #ecfdf5;
    color: #047857;
}

.config-status-badge.status-info[b-s0tbpiuemf],
.status-info .config-status-badge.status-info[b-s0tbpiuemf] {
    background: #eff6ff;
    color: #1d4ed8;
}

.config-status-badge.status-warning[b-s0tbpiuemf],
.status-warning .config-status-badge.status-warning[b-s0tbpiuemf] {
    background: #fffbeb;
    color: #b45309;
}

.config-status-badge.status-critical[b-s0tbpiuemf],
.status-critical .config-status-badge.status-critical[b-s0tbpiuemf] {
    background: #fef2f2;
    color: #b91c1c;
}

.config-item-list[b-s0tbpiuemf] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
}

.config-item[b-s0tbpiuemf] {
    border: 1px solid var(--color-border, #e2e8f0);
    border-radius: 16px;
    padding: .85rem;
    background: #fff;
    display: flex;
    flex-direction: column;
    gap: .45rem;
}

.config-item.status-critical[b-s0tbpiuemf] {
    border-color: #fecaca;
    background: #fff7f7;
}

.config-item.status-warning[b-s0tbpiuemf] {
    border-color: #fde68a;
    background: #fffdf3;
}

.config-item-head[b-s0tbpiuemf] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
}

.config-item p[b-s0tbpiuemf] {
    margin: 0;
    color: var(--color-text, #0f172a);
}

.config-item code[b-s0tbpiuemf] {
    display: block;
    white-space: normal;
    overflow-wrap: anywhere;
    border: 1px solid var(--color-border, #e2e8f0);
    border-radius: 10px;
    padding: .45rem .55rem;
    background: #f8fafc;
    color: #334155;
}

.config-item small[b-s0tbpiuemf] {
    color: var(--color-muted, #64748b);
    line-height: 1.45;
}

@media (max-width: 1180px) {
    .config-summary-grid[b-s0tbpiuemf],
    .config-guide-list[b-s0tbpiuemf],
    .config-item-list[b-s0tbpiuemf] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .page-heading-row[b-s0tbpiuemf] {
        flex-direction: column;
    }

    .config-summary-grid[b-s0tbpiuemf],
    .config-guide-list[b-s0tbpiuemf],
    .config-item-list[b-s0tbpiuemf] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/AlphaCorona.razor.rz.scp.css */
/* Alpha corona one-screen explorer layout aligned with Ecology page */

.alpha-workspace[b-3v20rgwoe2] {
    --alpha-primary: #0a2a62;
    --alpha-primary-dark: #06183f;
    --alpha-accent: #38bdf8;
    --alpha-soft: #edf5ff;
    --alpha-border: #cfe0f6;
    --alpha-muted: #64748b;
    --alpha-text: #0f172a;
    --alpha-card: #ffffff;
    display: flex;
    flex-direction: column;
    gap: 9px;
    min-width: 0;
    height: 100%;
    min-height: 0;
    overflow: hidden;
}

.alpha-hero[b-3v20rgwoe2] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    flex: 0 0 auto;
}

.alpha-hero h1[b-3v20rgwoe2] {
    margin: 0;
    color: var(--alpha-primary-dark);
    font-size: 22px;
    font-weight: 950;
    letter-spacing: -0.04em;
}

.alpha-hero p[b-3v20rgwoe2] {
    margin: 4px 0 0;
    color: var(--alpha-muted);
    font-size: 13px;
    font-weight: 650;
}

.alpha-search-actions[b-3v20rgwoe2],
.alpha-map-layer-tabs[b-3v20rgwoe2] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.alpha-btn[b-3v20rgwoe2],
.alpha-tab[b-3v20rgwoe2],
.alpha-pager button[b-3v20rgwoe2] {
    height: 34px;
    border: 1px solid var(--alpha-border);
    border-radius: 10px;
    background: #fff;
    color: var(--alpha-primary);
    font-size: 12px;
    font-weight: 900;
    padding: 0 12px;
    white-space: nowrap;
}

.alpha-btn-primary[b-3v20rgwoe2],
.alpha-tab.active[b-3v20rgwoe2],
.alpha-page-number.active[b-3v20rgwoe2] {
    border-color: var(--alpha-primary);
    background: var(--alpha-primary);
    color: #fff;
}

.alpha-btn-ghost:hover[b-3v20rgwoe2],
.alpha-tab:hover[b-3v20rgwoe2],
.alpha-pager button:hover:not(:disabled)[b-3v20rgwoe2] {
    border-color: rgba(11, 69, 96, 0.35);
    background: var(--alpha-soft);
}

.alpha-kpi-strip[b-3v20rgwoe2] {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
    flex: 0 0 auto;
}

.alpha-kpi-strip article[b-3v20rgwoe2] {
    min-width: 0;
    padding: 10px 14px;
    border: 1px solid var(--alpha-border);
    border-radius: 18px;
    background: linear-gradient(180deg, #fff, #f7fbfd);
    box-shadow: 0 12px 28px rgba(9, 70, 96, 0.06);
}

.alpha-kpi-strip span[b-3v20rgwoe2],
.alpha-kpi-strip small[b-3v20rgwoe2] {
    display: block;
    overflow: hidden;
    color: var(--alpha-muted);
    font-size: 11px;
    font-weight: 850;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.alpha-kpi-strip strong[b-3v20rgwoe2] {
    display: block;
    overflow: hidden;
    margin-top: 3px;
    color: var(--alpha-primary-dark);
    font-size: 20px;
    font-weight: 950;
    line-height: 1.05;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.alpha-search-panel[b-3v20rgwoe2] {
    display: grid;
    grid-template-columns: minmax(22%, 1.6fr) repeat(3, minmax(13%, 1fr)) auto;
    gap: 8px;
    align-items: end;
    flex: 0 0 auto;
    padding: 10px;
    border: 1px solid var(--alpha-border);
    border-radius: 16px;
    background: #f8fbfd;
}

.alpha-search-panel label[b-3v20rgwoe2] {
    display: grid;
    gap: 4px;
    min-width: 0;
    margin: 0;
}

.alpha-search-panel span[b-3v20rgwoe2] {
    color: var(--alpha-primary);
    font-size: 11px;
    font-weight: 900;
}

.alpha-search-panel input[b-3v20rgwoe2],
.alpha-search-panel select[b-3v20rgwoe2] {
    width: 100%;
    height: 34px;
    min-width: 0;
    border: 1px solid var(--alpha-border);
    border-radius: 10px;
    background: #fff;
    color: var(--alpha-text);
    font-size: 12px;
    font-weight: 750;
    outline: none;
    padding: 0 10px;
}

.alpha-search-panel input:focus[b-3v20rgwoe2],
.alpha-search-panel select:focus[b-3v20rgwoe2] {
    border-color: rgba(37, 99, 235, 0.65);
    box-shadow: 0 0 0 3px rgba(34, 199, 201, 0.15);
}

.alpha-one-screen[b-3v20rgwoe2] {
    display: grid;
    grid-template-columns: minmax(18%, 24%) minmax(42%, 1fr) minmax(22%, 27%);
    gap: 12px;
    align-items: stretch;
    min-height: 0;
    flex: 1 1 auto;
    overflow: hidden;
}

.alpha-panel[b-3v20rgwoe2] {
    min-width: 0;
    min-height: 0;
    border: 1px solid var(--alpha-border);
    border-radius: 20px;
    background: var(--alpha-card);
    box-shadow: 0 16px 32px rgba(9, 70, 96, 0.06);
}

.alpha-summary-panel[b-3v20rgwoe2],
.alpha-detail-panel[b-3v20rgwoe2] {
    height: 100%;
    overflow: auto;
    padding: 12px;
}

.alpha-center-panel[b-3v20rgwoe2] {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    padding: 12px;
}

.alpha-panel-head[b-3v20rgwoe2] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 12px;
}

.alpha-panel-head h2[b-3v20rgwoe2] {
    margin: 0;
    color: var(--alpha-primary-dark);
    font-size: 16px;
    font-weight: 950;
    letter-spacing: -0.02em;
}

.alpha-panel-head p[b-3v20rgwoe2] {
    margin: 3px 0 0;
    color: var(--alpha-muted);
    font-size: 12px;
    font-weight: 650;
}

.alpha-rule-box[b-3v20rgwoe2] {
    display: grid;
    gap: 7px;
    padding: 12px;
    border: 1px solid #edf4f7;
    border-radius: 16px;
    background: #f8fbfd;
}

.alpha-rule-box strong[b-3v20rgwoe2] {
    color: var(--alpha-primary-dark);
    font-size: 13px;
    font-weight: 950;
}

.alpha-rule-box div[b-3v20rgwoe2] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.alpha-rule-box b[b-3v20rgwoe2] {
    color: #334155;
    font-size: 12px;
    font-weight: 900;
}

.alpha-pill[b-3v20rgwoe2],
.alpha-result-chip[b-3v20rgwoe2] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 950;
}

.alpha-pill.good[b-3v20rgwoe2],
.alpha-result-chip.negative[b-3v20rgwoe2],
.alpha-result-banner.negative[b-3v20rgwoe2] {
    background: #dcfce7;
    color: #047857;
}

.alpha-pill.danger[b-3v20rgwoe2],
.alpha-result-chip.positive[b-3v20rgwoe2],
.alpha-result-banner.positive[b-3v20rgwoe2] {
    background: #fee2e2;
    color: #b91c1c;
}

.alpha-result-chip.invalid[b-3v20rgwoe2],
.alpha-result-chip.review[b-3v20rgwoe2],
.alpha-result-banner.invalid[b-3v20rgwoe2],
.alpha-result-banner.review[b-3v20rgwoe2] {
    background: #fffbeb;
    color: #92400e;
}

.alpha-side-section[b-3v20rgwoe2] {
    margin-top: 12px;
}

.alpha-side-section h3[b-3v20rgwoe2] {
    margin: 0 0 8px;
    color: var(--alpha-primary-dark);
    font-size: 13px;
    font-weight: 950;
}

.alpha-side-list[b-3v20rgwoe2] {
    display: grid;
    gap: 7px;
}

.alpha-side-card[b-3v20rgwoe2] {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 2px 8px;
    width: 100%;
    min-height: 42px;
    padding: 8px 12px;
    border: 1px solid #edf4f7;
    border-radius: 14px;
    background: #fff;
    text-align: left;
}

.alpha-side-card:hover[b-3v20rgwoe2] {
    border-color: rgba(37, 99, 235, 0.55);
    background: #f5fdff;
}

.alpha-side-card span[b-3v20rgwoe2],
.alpha-side-card small[b-3v20rgwoe2] {
    overflow: hidden;
    color: var(--alpha-primary-dark);
    font-size: 12px;
    font-weight: 950;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.alpha-side-card small[b-3v20rgwoe2] {
    grid-column: 1;
    color: var(--alpha-muted);
    font-size: 10px;
    font-weight: 750;
}

.alpha-side-card strong[b-3v20rgwoe2] {
    color: var(--alpha-text);
    font-size: 12px;
    font-weight: 950;
    white-space: nowrap;
}

.alpha-side-card em[b-3v20rgwoe2] {
    grid-row: 1 / 3;
    grid-column: 2;
    align-self: center;
    padding: 5px 9px;
    border-radius: 999px;
    background: #fee2e2;
    color: #b91c1c;
    font-size: 10px;
    font-style: normal;
    font-weight: 950;
}

.alpha-list-head[b-3v20rgwoe2] {
    align-items: center;
    flex: 0 0 auto;
}

.alpha-tabs[b-3v20rgwoe2] {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.alpha-tab[b-3v20rgwoe2] {
    height: 31px;
    padding: 0 10px;
}

.alpha-table-shell[b-3v20rgwoe2] {
    min-height: 0;
    flex: 1;
    overflow: auto;
    border: 1px solid var(--alpha-border);
    border-radius: 16px;
}

.alpha-table[b-3v20rgwoe2] {
    width: 100%;
    min-width: 920px;
    border-collapse: collapse;
    background: #fff;
}

.alpha-table th[b-3v20rgwoe2] {
    position: sticky;
    top: 0;
    z-index: 1;
    height: 36px;
    padding: 0 12px;
    background: #f4f9fc;
    color: var(--alpha-primary);
    font-size: 11px;
    font-weight: 950;
    text-align: left;
    white-space: nowrap;
}

.alpha-table td[b-3v20rgwoe2] {
    padding: 10px 12px;
    border-top: 1px solid #edf4f7;
    color: #334155;
    font-size: 12px;
    font-weight: 750;
    white-space: nowrap;
}

.alpha-table strong[b-3v20rgwoe2] {
    display: block;
    color: var(--alpha-primary-dark);
    font-weight: 950;
}

.alpha-table small[b-3v20rgwoe2] {
    display: block;
    margin-top: 2px;
    color: var(--alpha-muted);
    font-size: 10px;
    font-weight: 750;
}

.alpha-click-row[b-3v20rgwoe2] {
    cursor: pointer;
}

.alpha-click-row:hover[b-3v20rgwoe2],
.alpha-click-row.active[b-3v20rgwoe2] {
    background: #f5fdff;
}

.alpha-click-row.active[b-3v20rgwoe2] {
    box-shadow: inset 4px 0 0 rgba(56, 189, 248, 0.65);
}

.alpha-pager.oh-fixed-pager[b-3v20rgwoe2],
.alpha-pager[b-3v20rgwoe2] {
    display: grid;
    grid-template-columns: minmax(120px, 1fr) auto minmax(120px, 1fr);
    align-items: center;
    justify-content: stretch;
    gap: 10px;
    width: 100%;
    margin-top: 10px;
    padding: 8px 0 2px;
    color: var(--alpha-muted);
    font-size: 12px;
    font-weight: 850;
}

.alpha-pager-spacer[b-3v20rgwoe2] {
    min-width: 0;
}

.alpha-pager .alpha-pager-controls[b-3v20rgwoe2] {
    grid-column: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 6px;
}

.alpha-pager-range[b-3v20rgwoe2] {
    grid-column: 3;
    justify-self: end;
    min-width: 0;
    color: var(--alpha-muted);
    font-size: 12px;
    font-weight: 900;
    text-align: right;
    white-space: nowrap;
}

.alpha-pager button:disabled[b-3v20rgwoe2] {
    opacity: .45;
    cursor: not-allowed;
}

.alpha-pager .alpha-page-number.active[b-3v20rgwoe2],
.alpha-pager .alpha-page-number.active:disabled[b-3v20rgwoe2] {
    opacity: 1;
    cursor: default;
}

.alpha-detail-title[b-3v20rgwoe2] {
    padding: 12px;
    border-radius: 18px;
    background: linear-gradient(180deg, #f5fdff, #eef7fb);
}

.alpha-detail-title span[b-3v20rgwoe2] {
    display: inline-flex;
    padding: 3px 8px;
    border-radius: 999px;
    background: #fff;
    color: var(--alpha-primary);
    font-size: 10px;
    font-weight: 950;
}

.alpha-detail-title h2[b-3v20rgwoe2] {
    margin: 8px 0 0;
    color: var(--alpha-primary-dark);
    font-size: 21px;
    font-weight: 950;
    letter-spacing: -0.03em;
}

.alpha-detail-title p[b-3v20rgwoe2] {
    margin: 3px 0 0;
    color: var(--alpha-muted);
    font-size: 12px;
    font-weight: 700;
}

.alpha-result-banner[b-3v20rgwoe2] {
    margin: 12px 0;
    padding: 10px 12px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 950;
}

.alpha-result-banner b[b-3v20rgwoe2] {
    margin-left: 8px;
}

.alpha-detail-section[b-3v20rgwoe2] {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid #edf4f7;
}

.alpha-detail-section h3[b-3v20rgwoe2] {
    margin: 0 0 8px;
    color: var(--alpha-primary-dark);
    font-size: 14px;
    font-weight: 950;
}

.alpha-detail-list[b-3v20rgwoe2] {
    display: grid;
    gap: 6px;
    margin: 0;
}

.alpha-detail-list div[b-3v20rgwoe2] {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 8px;
    align-items: start;
    min-height: 32px;
    padding: 8px 10px;
    border-radius: 12px;
    background: #f8fbfd;
}

.alpha-detail-list dt[b-3v20rgwoe2] {
    color: var(--alpha-muted);
    font-size: 11px;
    font-weight: 950;
}

.alpha-detail-list dd[b-3v20rgwoe2] {
    margin: 0;
    color: #334155;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.45;
}

.alpha-full-btn[b-3v20rgwoe2] {
    width: 100%;
    min-height: 34px;
    margin-top: 10px;
    border: 1px solid var(--alpha-primary);
    border-radius: 10px;
    background: var(--alpha-primary);
    color: #fff;
    font-size: 12px;
    font-weight: 950;
}

.alpha-full-btn:disabled[b-3v20rgwoe2] {
    border-color: #cbd5e1;
    background: #94a3b8;
    cursor: not-allowed;
}

.alpha-positive-list[b-3v20rgwoe2] {
    display: grid;
    gap: 7px;
}

.alpha-positive-list button[b-3v20rgwoe2] {
    display: grid;
    gap: 3px;
    width: 100%;
    padding: 9px 10px;
    border: 1px solid #edf4f7;
    border-radius: 14px;
    background: #fff;
    text-align: left;
}

.alpha-positive-list button.active[b-3v20rgwoe2],
.alpha-positive-list button:hover[b-3v20rgwoe2] {
    border-color: #fca5a5;
    background: #fff1f2;
}

.alpha-positive-list strong[b-3v20rgwoe2] {
    overflow: hidden;
    color: #b91c1c;
    font-size: 12px;
    font-weight: 950;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.alpha-positive-list span[b-3v20rgwoe2] {
    overflow: hidden;
    color: var(--alpha-muted);
    font-size: 10px;
    font-weight: 750;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.alpha-empty[b-3v20rgwoe2] {
    padding: 24px;
    border: 1px dashed var(--alpha-border);
    border-radius: 16px;
    background: #f8fbfd;
    color: var(--alpha-muted);
    font-size: 13px;
    font-weight: 850;
    text-align: center;
}

.alpha-empty.compact[b-3v20rgwoe2] {
    padding: 12px;
    font-size: 12px;
}

.alpha-map-modal-backdrop[b-3v20rgwoe2] {
    position: fixed;
    inset: 0;
    z-index: 1200;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px;
    background: rgba(15, 23, 42, 0.48);
}

.alpha-map-modal[b-3v20rgwoe2] {
    display: flex;
    flex-direction: column;
    width: min(1500px, calc(100vw - 80px));
    height: min(820px, calc(100vh - 90px));
    min-height: 0;
    overflow: hidden;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 30px 80px rgba(15, 23, 42, 0.32);
}

.alpha-map-modal-head[b-3v20rgwoe2] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding: 14px 18px 10px;
    border-bottom: 1px solid #edf4f7;
}

.alpha-map-modal-head h2[b-3v20rgwoe2] {
    margin: 0;
    color: var(--alpha-primary-dark);
    font-size: 16px;
    font-weight: 950;
}

.alpha-map-modal-head p[b-3v20rgwoe2] {
    margin: 4px 0 0;
    color: var(--alpha-muted);
    font-size: 12px;
    font-weight: 650;
}

.alpha-map-modal-grid[b-3v20rgwoe2] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 14px;
    min-height: 0;
    flex: 1;
    padding: 14px;
}

.alpha-sample-map[b-3v20rgwoe2] {
    position: relative;
    min-height: 0;
    overflow: hidden;
    border: 1px solid var(--alpha-border);
    border-radius: 18px;
    background: #eef6fa;
}

.alpha-map-sample-list[b-3v20rgwoe2] {
    min-height: 0;
    overflow: auto;
    padding-right: 4px;
}

.alpha-map-sample-list h3[b-3v20rgwoe2] {
    margin: 0 0 8px;
    color: var(--alpha-primary-dark);
    font-size: 14px;
    font-weight: 950;
}

.alpha-map-sample-card[b-3v20rgwoe2] {
    display: grid;
    gap: 4px;
    width: 100%;
    min-height: 72px;
    margin-bottom: 8px;
    padding: 11px 12px;
    border: 1px solid #edf4f7;
    border-radius: 14px;
    background: #fff;
    text-align: left;
}

.alpha-map-sample-card:hover[b-3v20rgwoe2],
.alpha-map-sample-card.active[b-3v20rgwoe2] {
    border-color: rgba(56, 189, 248, .75);
    background: #edf9ff;
}

.alpha-map-sample-card strong[b-3v20rgwoe2] {
    overflow: hidden;
    color: var(--alpha-primary-dark);
    font-size: 12px;
    font-weight: 950;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.alpha-map-sample-card span[b-3v20rgwoe2],
.alpha-map-sample-card small[b-3v20rgwoe2] {
    overflow: hidden;
    color: var(--alpha-muted);
    font-size: 11px;
    font-weight: 750;
    text-overflow: ellipsis;
    white-space: nowrap;
}

:host[b-3v20rgwoe2] {
    display: block;
    height: 100%;
    min-height: 0;
    overflow: hidden;
}

@media (max-width: 1500px) {
    .alpha-one-screen[b-3v20rgwoe2] {
        grid-template-columns: 285px minmax(520px, 1fr) 330px;
    }
}

@media (max-width: 1180px) {
    .alpha-one-screen[b-3v20rgwoe2],
    .alpha-map-modal-grid[b-3v20rgwoe2] {
        grid-template-columns: 1fr;
    }

    .alpha-summary-panel[b-3v20rgwoe2],
    .alpha-center-panel[b-3v20rgwoe2],
    .alpha-detail-panel[b-3v20rgwoe2] {
        height: auto;
        max-height: none;
    }

    .alpha-search-panel[b-3v20rgwoe2] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .alpha-hero[b-3v20rgwoe2],
    .alpha-panel-head[b-3v20rgwoe2],
    .alpha-map-modal-head[b-3v20rgwoe2] {
        align-items: stretch;
        flex-direction: column;
    }

    .alpha-pager.oh-fixed-pager[b-3v20rgwoe2],
    .alpha-pager[b-3v20rgwoe2] {
        grid-template-columns: 1fr;
    }

    .alpha-pager .alpha-pager-controls[b-3v20rgwoe2],
    .alpha-pager-range[b-3v20rgwoe2] {
        grid-column: 1;
        justify-self: center;
        text-align: center;
    }

    .alpha-kpi-strip[b-3v20rgwoe2],
    .alpha-search-panel[b-3v20rgwoe2] {
        grid-template-columns: 1fr;
    }

    .alpha-tabs[b-3v20rgwoe2],
    .alpha-map-layer-tabs[b-3v20rgwoe2] {
        justify-content: flex-start;
    }

    .alpha-map-modal-backdrop[b-3v20rgwoe2] {
        padding: 12px;
    }

    .alpha-map-modal[b-3v20rgwoe2] {
        width: calc(100vw - 24px);
        height: calc(100vh - 24px);
    }
}


.alpha-left-tabs[b-3v20rgwoe2] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    margin-bottom: 12px;
    padding: 4px;
    border: 1px solid var(--alpha-border);
    border-radius: 14px;
    background: #f8fbfd;
}

.alpha-left-tab[b-3v20rgwoe2] {
    height: 31px;
    border: 1px solid transparent;
    border-radius: 10px;
    background: transparent;
    color: var(--alpha-muted);
    font-size: 11px;
    font-weight: 950;
}

.alpha-left-tab.active[b-3v20rgwoe2] {
    border-color: var(--alpha-primary);
    background: var(--alpha-primary);
    color: #fff;
}

.alpha-side-section.no-top[b-3v20rgwoe2] {
    margin-top: 0;
}

.alpha-species-status-list[b-3v20rgwoe2] {
    display: grid;
    gap: 8px;
}

.alpha-species-status-card[b-3v20rgwoe2] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 5px 10px;
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #edf4f7;
    border-radius: 14px;
    background: #fff;
    text-align: left;
}

.alpha-species-status-card:hover[b-3v20rgwoe2] {
    border-color: rgba(37, 99, 235, 0.55);
    background: #f5fdff;
}

.alpha-species-status-card span[b-3v20rgwoe2],
.alpha-species-status-card strong[b-3v20rgwoe2] {
    overflow: hidden;
    color: var(--alpha-primary-dark);
    font-size: 12px;
    font-weight: 950;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.alpha-species-status-card strong[b-3v20rgwoe2] {
    color: var(--alpha-text);
}

.alpha-species-status-card small[b-3v20rgwoe2] {
    grid-column: 1 / -1;
    overflow: hidden;
    color: var(--alpha-muted);
    font-size: 10px;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.alpha-rate-bar[b-3v20rgwoe2] {
    grid-column: 1 / -1;
    height: 6px;
    overflow: hidden;
    border-radius: 999px;
    background: #e2e8f0;
}

.alpha-rate-bar i[b-3v20rgwoe2] {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #fecaca, #ef4444);
}

.alpha-admin-actions[b-3v20rgwoe2] {
    display: flex;
    justify-content: flex-end;
    margin: -2px 0 10px;
}

.alpha-editor-modal[b-3v20rgwoe2] {
    display: flex;
    flex-direction: column;
    width: min(720px, calc(100vw - 48px));
    max-height: min(760px, calc(100vh - 64px));
    overflow: hidden;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 30px 80px rgba(15, 23, 42, 0.32);
}

.alpha-editor-modal-head[b-3v20rgwoe2] {
    padding: 16px 18px 10px;
    border-bottom: 1px solid #edf4f7;
}

.alpha-editor-modal-head h2[b-3v20rgwoe2] {
    margin: 0;
    color: var(--alpha-primary-dark);
    font-size: 17px;
    font-weight: 950;
}

.alpha-editor-modal-head p[b-3v20rgwoe2] {
    margin: 4px 0 0;
    color: var(--alpha-muted);
    font-size: 12px;
    font-weight: 700;
}

.alpha-editor-form[b-3v20rgwoe2] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    min-height: 0;
    overflow: auto;
    padding: 16px 18px;
}

.alpha-editor-form label[b-3v20rgwoe2] {
    display: grid;
    gap: 5px;
    min-width: 0;
}

.alpha-editor-form span[b-3v20rgwoe2] {
    color: var(--alpha-primary);
    font-size: 11px;
    font-weight: 950;
}

.alpha-editor-form input[b-3v20rgwoe2],
.alpha-editor-form textarea[b-3v20rgwoe2] {
    width: 100%;
    min-width: 0;
    border: 1px solid var(--alpha-border);
    border-radius: 10px;
    background: #fff;
    color: var(--alpha-text);
    font-size: 12px;
    font-weight: 750;
    outline: none;
    padding: 9px 10px;
}

.alpha-editor-form input[b-3v20rgwoe2] {
    height: 34px;
}

.alpha-editor-wide[b-3v20rgwoe2] {
    grid-column: 1 / -1;
}

.alpha-editor-actions[b-3v20rgwoe2] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 12px 18px 16px;
    border-top: 1px solid #edf4f7;
}

.alpha-modal-message[b-3v20rgwoe2] {
    margin: 12px 18px 0;
    padding: 10px 12px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 850;
}

.alpha-modal-message.success[b-3v20rgwoe2] {
    background: #dcfce7;
    color: #047857;
}

.alpha-modal-message.error[b-3v20rgwoe2] {
    background: #fee2e2;
    color: #b91c1c;
}

@media (max-width: 900px) {
    .alpha-editor-form[b-3v20rgwoe2] {
        grid-template-columns: 1fr;
    }
}

/* v4: 판정 기준은 좌측 탭 대신 중앙 진단 시료 목록 코멘트로 표시 */
.alpha-result-rule-note[b-3v20rgwoe2] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 10px;
    margin: -2px 0 8px;
    padding: 8px 10px;
    border: 1px solid #edf4f7;
    border-radius: 14px;
    background: #f8fbfd;
    color: var(--alpha-muted);
    font-size: 11px;
    font-weight: 850;
}

.alpha-result-rule-note strong[b-3v20rgwoe2] {
    color: var(--alpha-primary-dark);
    font-size: 12px;
    font-weight: 950;
}

.alpha-result-rule-note span[b-3v20rgwoe2] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.alpha-hero-actions[b-3v20rgwoe2] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex: 0 0 auto;
}

.alpha-row-map-btn[b-3v20rgwoe2] {
    height: 28px;
    min-width: 48px;
    border: 1px solid var(--alpha-primary);
    border-radius: 9px;
    background: #fff;
    color: var(--alpha-primary);
    font-size: 11px;
    font-weight: 950;
    cursor: pointer;
}

.alpha-row-map-btn:hover[b-3v20rgwoe2] {
    background: var(--alpha-soft);
}

.alpha-map-none[b-3v20rgwoe2] {
    color: #94a3b8;
    font-size: 12px;
    font-weight: 800;
}

/* v6: 관리자 수정/삭제는 우측 상세 패널이 아니라 중앙 시료 목록 행 단위로 표시 */
.alpha-row-actions[b-3v20rgwoe2] {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 6px;
    white-space: nowrap;
}

.alpha-row-action[b-3v20rgwoe2] {
    height: 28px;
    min-width: 46px;
    padding: 0 9px;
    border: 1px solid #bfdbfe;
    border-radius: 9px;
    background: #fff;
    color: var(--alpha-primary);
    font-size: 11px;
    font-weight: 950;
    cursor: pointer;
}

.alpha-row-action:hover[b-3v20rgwoe2] {
    background: var(--alpha-soft);
}

.alpha-row-action.danger[b-3v20rgwoe2] {
    border-color: #fecaca;
    color: #b91c1c;
}

.alpha-row-action.danger:hover[b-3v20rgwoe2] {
    background: #fef2f2;
}

.alpha-btn-danger[b-3v20rgwoe2] {
    border: 1px solid #ef4444;
    background: #ef4444;
    color: #fff;
}

.alpha-btn-danger:hover[b-3v20rgwoe2] {
    background: #dc2626;
}

.alpha-delete-modal[b-3v20rgwoe2] {
    display: flex;
    flex-direction: column;
    width: min(520px, calc(100vw - 48px));
    overflow: hidden;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 30px 80px rgba(15, 23, 42, 0.32);
}

.alpha-delete-body[b-3v20rgwoe2] {
    display: grid;
    gap: 7px;
    padding: 18px;
    color: var(--alpha-text);
    font-size: 13px;
    font-weight: 800;
}

.alpha-delete-body strong[b-3v20rgwoe2] {
    color: var(--alpha-primary-dark);
    font-size: 17px;
    font-weight: 950;
}

.alpha-delete-body span[b-3v20rgwoe2] {
    color: var(--alpha-muted);
    font-size: 12px;
    font-weight: 800;
}

.alpha-delete-body p[b-3v20rgwoe2] {
    margin: 6px 0 0;
    padding: 10px 12px;
    border-radius: 12px;
    background: #fff7ed;
    color: #9a3412;
    font-size: 12px;
    font-weight: 850;
}
/* /Components/Pages/DataManagement.razor.rz.scp.css */
.data-management-grid[b-30kmzbxq23] {
    display: grid;
    grid-template-columns: minmax(320px, .75fr) minmax(0, 1.25fr);
    gap: .65rem;
    align-items: start;
}

.data-management-grid .oh-card[b-30kmzbxq23] {
    min-width: 0;
}

.upload-type-list[b-30kmzbxq23],
.upload-result-panel[b-30kmzbxq23] {
    max-height: 520px;
    overflow: auto;
}

@media (max-width: 1100px) {
    .data-management-grid[b-30kmzbxq23] { grid-template-columns: 1fr; }
    .upload-type-list[b-30kmzbxq23],
    .upload-result-panel[b-30kmzbxq23] { max-height: none; }
}
/* /Components/Pages/DataQuality.razor.rz.scp.css */
.data-quality-grid[b-ihz3e5kg1s] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .65rem;
}

.data-quality-grid .oh-card[b-ihz3e5kg1s] {
    min-width: 0;
}

.data-quality-grid .oh-table-wrap[b-ihz3e5kg1s] {
    max-height: 420px;
}

@media (max-width: 1100px) {
    .data-quality-grid[b-ihz3e5kg1s] { grid-template-columns: 1fr; }
    .data-quality-grid .oh-table-wrap[b-ihz3e5kg1s] { max-height: none; }
}
/* /Components/Pages/Ecology.razor.rz.scp.css */
/* Real Bat Ecology UI - sample-code based explorer layout */

.bat-workspace[b-icwpeqh8ms] {
    --bat-primary: #0a2a62;
    --bat-primary-dark: #06183f;
    --bat-accent: #38bdf8;
    --bat-soft: #edf5ff;
    --bat-border: #cfe0f6;
    --bat-muted: #64748b;
    --bat-text: #0f172a;
    --bat-card: #ffffff;
    display: flex;
    flex-direction: column;
    gap: 9px;
    min-width: 0;
    height: 100%;
    min-height: 0;
    overflow: hidden;
}

.bat-hero[b-icwpeqh8ms] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 0;
    flex: 0 0 auto;
}

.bat-eyebrow[b-icwpeqh8ms] {
    margin: 0 0 4px;
    color: var(--bat-accent);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.bat-hero h1[b-icwpeqh8ms] {
    margin: 0;
    color: var(--bat-primary-dark);
    font-size: 22px;
    font-weight: 950;
    letter-spacing: -0.04em;
}

.bat-hero p[b-icwpeqh8ms] {
    margin: 4px 0 0;
    color: var(--bat-muted);
    font-size: 13px;
    font-weight: 650;
}

.bat-hero-actions[b-icwpeqh8ms],
.bat-detail-actions[b-icwpeqh8ms] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.bat-btn[b-icwpeqh8ms],
.bat-mini-btn[b-icwpeqh8ms],
.bat-tab[b-icwpeqh8ms],
.bat-pager button[b-icwpeqh8ms],
.bat-pager select[b-icwpeqh8ms] {
    height: 34px;
    border: 1px solid var(--bat-border);
    border-radius: 10px;
    background: #fff;
    color: var(--bat-primary);
    font-size: 12px;
    font-weight: 900;
    padding: 0 12px;
    white-space: nowrap;
}

.bat-btn-primary[b-icwpeqh8ms] {
    border-color: var(--bat-primary);
    background: var(--bat-primary);
    color: #fff;
}

.bat-btn-ghost[b-icwpeqh8ms],
.bat-btn-outline[b-icwpeqh8ms] {
    background: #fff;
}

.bat-btn-outline:hover[b-icwpeqh8ms],
.bat-btn-ghost:hover[b-icwpeqh8ms],
.bat-mini-btn:hover[b-icwpeqh8ms],
.bat-tab:hover[b-icwpeqh8ms] {
    border-color: rgba(11, 69, 96, 0.35);
    background: var(--bat-soft);
}

.bat-kpi-strip[b-icwpeqh8ms] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    flex: 0 0 auto;
}

.bat-kpi-strip article[b-icwpeqh8ms] {
    min-width: 0;
    padding: 10px 14px;
    border: 1px solid var(--bat-border);
    border-radius: 18px;
    background: linear-gradient(180deg, #fff, #f7fbfd);
    box-shadow: 0 12px 28px rgba(9, 70, 96, 0.06);
}

.bat-kpi-strip span[b-icwpeqh8ms],
.bat-kpi-strip small[b-icwpeqh8ms] {
    display: block;
    overflow: hidden;
    color: var(--bat-muted);
    font-size: 11px;
    font-weight: 850;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bat-kpi-strip strong[b-icwpeqh8ms] {
    display: block;
    margin-top: 3px;
    color: var(--bat-primary-dark);
    font-size: 20px;
    font-weight: 950;
    line-height: 1;
}

.bat-one-screen[b-icwpeqh8ms] {
    display: grid;
    grid-template-columns: minmax(18%, 24%) minmax(42%, 1fr) minmax(22%, 27%);
    gap: 12px;
    align-items: stretch;
    min-height: 0;
    flex: 1 1 auto;
    overflow: hidden;
}

.bat-panel[b-icwpeqh8ms] {
    min-width: 0;
    min-height: 0;
    border: 1px solid var(--bat-border);
    border-radius: 20px;
    background: var(--bat-card);
    box-shadow: 0 16px 32px rgba(9, 70, 96, 0.06);
}

.bat-filter-panel[b-icwpeqh8ms],
.bat-center-panel[b-icwpeqh8ms],
.bat-detail-panel[b-icwpeqh8ms] {
    height: 100%;
    overflow: hidden;
}

.bat-filter-panel[b-icwpeqh8ms],
.bat-detail-panel[b-icwpeqh8ms] {
    padding: 12px;
}

.bat-center-panel[b-icwpeqh8ms] {
    display: flex;
    flex-direction: column;
    padding: 12px;
}

.bat-panel-head[b-icwpeqh8ms] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 12px;
}

.bat-panel-head h2[b-icwpeqh8ms] {
    margin: 0;
    color: var(--bat-primary-dark);
    font-size: 16px;
    font-weight: 950;
    letter-spacing: -0.02em;
}

.bat-panel-head p[b-icwpeqh8ms] {
    margin: 3px 0 0;
    color: var(--bat-muted);
    font-size: 12px;
    font-weight: 650;
}


.bat-center-search-panel[b-icwpeqh8ms] {
    display: grid;
    grid-template-columns: minmax(22%, 1.4fr) repeat(4, minmax(12%, 1fr)) auto;
    gap: 8px;
    align-items: end;
    flex: 0 0 auto;
    margin-bottom: 10px;
    padding: 10px;
    border: 1px solid var(--bat-border);
    border-radius: 16px;
    background: #f8fbfd;
}

.bat-center-search-panel label[b-icwpeqh8ms] {
    display: grid;
    gap: 4px;
    min-width: 0;
    margin: 0;
}

.bat-center-search-panel span[b-icwpeqh8ms] {
    color: var(--bat-primary);
    font-size: 11px;
    font-weight: 900;
}

.bat-center-search-panel input[b-icwpeqh8ms],
.bat-center-search-panel select[b-icwpeqh8ms] {
    width: 100%;
    height: 34px;
    min-width: 0;
    border: 1px solid var(--bat-border);
    border-radius: 10px;
    background: #fff;
    color: var(--bat-text);
    font-size: 12px;
    font-weight: 750;
    outline: none;
    padding: 0 10px;
}

.bat-center-search-panel input:focus[b-icwpeqh8ms],
.bat-center-search-panel select:focus[b-icwpeqh8ms] {
    border-color: rgba(37, 99, 235, 0.65);
    box-shadow: 0 0 0 3px rgba(34, 199, 201, 0.15);
}

.bat-center-search-actions[b-icwpeqh8ms] {
    display: flex;
    gap: 6px;
    justify-content: flex-end;
    white-space: nowrap;
}

.bat-filter-stack[b-icwpeqh8ms] {
    display: grid;
    gap: 9px;
    margin-bottom: 12px;
}

.bat-filter-stack label[b-icwpeqh8ms] {
    display: grid;
    gap: 4px;
    margin: 0;
}

.bat-filter-stack span[b-icwpeqh8ms] {
    color: var(--bat-primary);
    font-size: 11px;
    font-weight: 900;
}

.bat-filter-stack input[b-icwpeqh8ms],
.bat-filter-stack select[b-icwpeqh8ms] {
    width: 100%;
    height: 34px;
    border: 1px solid var(--bat-border);
    border-radius: 10px;
    background: #fff;
    color: var(--bat-text);
    font-size: 12px;
    font-weight: 700;
    outline: none;
    padding: 0 10px;
}

.bat-filter-stack input:focus[b-icwpeqh8ms],
.bat-filter-stack select:focus[b-icwpeqh8ms] {
    border-color: rgba(37, 99, 235, 0.65);
    box-shadow: 0 0 0 3px rgba(34, 199, 201, 0.15);
}

.bat-search-btn[b-icwpeqh8ms] {
    width: 100%;
}

.bat-taxonomy-box[b-icwpeqh8ms] {
    display: flex;
    flex-direction: column;
    min-height: 0;
    height: 100%;
    padding-top: 0;
}


.bat-taxonomy-box.only-tree[b-icwpeqh8ms] {
    border-top: 0;
}

.bat-taxonomy-head[b-icwpeqh8ms] {
    align-items: flex-start;
    margin-bottom: 10px;
}

.bat-taxonomy-head > span[b-icwpeqh8ms] {
    color: var(--bat-muted);
    font-size: 11px;
    font-weight: 900;
    white-space: nowrap;
}

.bat-subhead[b-icwpeqh8ms] {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 8px;
}

.bat-subhead strong[b-icwpeqh8ms] {
    color: var(--bat-primary-dark);
    font-size: 13px;
    font-weight: 950;
}

.bat-subhead span[b-icwpeqh8ms] {
    color: var(--bat-muted);
    font-size: 11px;
    font-weight: 800;
}

.bat-taxonomy-tree[b-icwpeqh8ms] {
    min-height: 0;
    overflow: auto;
    padding-right: 4px;
}

.bat-taxonomy-tree ul[b-icwpeqh8ms] {
    list-style: none;
    margin: 0;
    padding-left: 12px;
}

.bat-taxonomy-tree > ul[b-icwpeqh8ms] {
    padding-left: 0;
}

.bat-taxonomy-tree li[b-icwpeqh8ms] {
    margin: 5px 0;
}

.bat-tree-node-shell[b-icwpeqh8ms] {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr);
    gap: 6px;
    align-items: stretch;
}

.bat-tree-node-shell.active .bat-tree-node[b-icwpeqh8ms] {
    border-color: rgba(37, 99, 235, 0.7);
    background: #eaf8fd;
    box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.12);
}

.bat-tree-expander[b-icwpeqh8ms] {
    width: 28px;
    min-height: 42px;
    border: 1px solid #dbeafe;
    border-radius: 12px;
    background: #eff6ff;
    color: var(--bat-primary);
    font-size: 14px;
    font-weight: 950;
    cursor: pointer;
}

.bat-tree-expander:disabled[b-icwpeqh8ms] {
    opacity: 0.35;
    cursor: default;
}

.bat-tree-node[b-icwpeqh8ms] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 2px 8px;
    width: 100%;
    min-height: 42px;
    padding: 7px 9px;
    border: 1px solid #edf4f7;
    border-radius: 13px;
    background: #f8fbfd;
    text-align: left;
}

.bat-tree-node:hover[b-icwpeqh8ms] {
    border-color: rgba(37, 99, 235, 0.55);
    background: #fff;
}

.bat-tree-node span[b-icwpeqh8ms] {
    align-self: center;
    padding: 2px 7px;
    border-radius: 999px;
    background: #dbeafe;
    color: var(--bat-primary);
    font-size: 10px;
    font-weight: 950;
}

.bat-tree-node strong[b-icwpeqh8ms] {
    overflow: hidden;
    color: var(--bat-text);
    font-size: 12px;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bat-tree-node small[b-icwpeqh8ms] {
    grid-column: 2;
    overflow: hidden;
    color: var(--bat-muted);
    font-size: 10px;
    font-weight: 750;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bat-list-head[b-icwpeqh8ms] {
    align-items: center;
    flex: 0 0 auto;
}

.bat-tabs[b-icwpeqh8ms] {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.bat-tab[b-icwpeqh8ms] {
    height: 31px;
    padding: 0 10px;
}

.bat-tab.active[b-icwpeqh8ms] {
    border-color: var(--bat-primary);
    background: var(--bat-primary);
    color: #fff;
}

.bat-center-body[b-icwpeqh8ms] {
    min-height: 0;
    flex: 1;
    overflow: auto;
    padding-right: 4px;
}

.bat-species-cards[b-icwpeqh8ms] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.bat-species-card[b-icwpeqh8ms] {
    min-width: 0;
    min-height: 126px;
    padding: 12px;
    border: 1px solid #edf4f7;
    border-radius: 18px;
    background: #fff;
    text-align: left;
    cursor: pointer;
}

.bat-species-card:hover[b-icwpeqh8ms],
.bat-species-card.active[b-icwpeqh8ms] {
    border-color: rgba(37, 99, 235, 0.65);
    background: linear-gradient(180deg, #f5fdff, #fff);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
}

.bat-card-topline[b-icwpeqh8ms] {
    display: flex;
    justify-content: space-between;
    gap: 6px;
    margin-bottom: 8px;
}

.bat-pill[b-icwpeqh8ms],
.bat-link-chip[b-icwpeqh8ms],
.bat-muted-chip[b-icwpeqh8ms] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    background: #eaf4f8;
    color: var(--bat-primary);
    font-size: 10px;
    font-weight: 950;
}

.bat-pill.good[b-icwpeqh8ms] {
    background: #dcfce7;
    color: #047857;
}

.bat-species-card strong[b-icwpeqh8ms] {
    display: block;
    overflow: hidden;
    color: var(--bat-primary-dark);
    font-size: 15px;
    font-weight: 950;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bat-species-card em[b-icwpeqh8ms] {
    display: block;
    overflow: hidden;
    margin-top: 2px;
    color: var(--bat-muted);
    font-size: 12px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bat-species-card p[b-icwpeqh8ms] {
    display: -webkit-box;
    min-height: 34px;
    margin: 8px 0 8px;
    overflow: hidden;
    color: #334155;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.45;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.bat-card-meta[b-icwpeqh8ms] {
    display: flex;
    gap: 5px;
    flex-wrap: wrap;
}

.bat-card-meta span[b-icwpeqh8ms] {
    padding: 4px 7px;
    border-radius: 9px;
    background: #f1f5f9;
    color: #475569;
    font-size: 10px;
    font-weight: 850;
}

.bat-table-shell[b-icwpeqh8ms] {
    overflow: auto;
    border: 1px solid var(--bat-border);
    border-radius: 16px;
}

.bat-table[b-icwpeqh8ms] {
    width: 100%;
    min-width: 760px;
    border-collapse: collapse;
    background: #fff;
}

.bat-table th[b-icwpeqh8ms] {
    position: sticky;
    top: 0;
    z-index: 1;
    height: 36px;
    padding: 0 12px;
    background: #f4f9fc;
    color: var(--bat-primary);
    font-size: 11px;
    font-weight: 950;
    text-align: left;
    white-space: nowrap;
}

.bat-table td[b-icwpeqh8ms] {
    padding: 10px 12px;
    border-top: 1px solid #edf4f7;
    color: #334155;
    font-size: 12px;
    font-weight: 750;
    white-space: nowrap;
}

.bat-table strong[b-icwpeqh8ms] {
    color: var(--bat-primary-dark);
    font-weight: 950;
}

.bat-click-row[b-icwpeqh8ms] {
    cursor: pointer;
}

.bat-click-row:hover[b-icwpeqh8ms] {
    background: #f5fdff;
}

.bat-link-chip[b-icwpeqh8ms] {
    background: #dbeafe;
    color: var(--bat-primary);
}

.bat-muted-chip[b-icwpeqh8ms] {
    background: #f1f5f9;
    color: var(--bat-muted);
}

.bat-summary-board[b-icwpeqh8ms] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.bat-summary-board article[b-icwpeqh8ms] {
    min-width: 0;
    padding: 12px;
    border: 1px solid #edf4f7;
    border-radius: 16px;
    background: #f8fbfd;
}

.bat-summary-board span[b-icwpeqh8ms] {
    display: block;
    color: var(--bat-muted);
    font-size: 11px;
    font-weight: 900;
}

.bat-summary-board strong[b-icwpeqh8ms] {
    display: block;
    overflow: hidden;
    margin-top: 5px;
    color: var(--bat-primary-dark);
    font-size: 14px;
    font-weight: 950;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bat-privacy-note[b-icwpeqh8ms] {
    margin: 12px 0 0;
    padding: 12px;
    border: 1px solid #fde68a;
    border-radius: 14px;
    background: #fffbeb;
    color: #92400e;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.55;
}

.bat-detail-panel[b-icwpeqh8ms] {
    overflow: auto;
}

.bat-detail-title[b-icwpeqh8ms] {
    padding: 12px;
    border-radius: 18px;
    background: linear-gradient(180deg, #f5fdff, #eef7fb);
}

.bat-detail-title span[b-icwpeqh8ms] {
    display: inline-flex;
    padding: 3px 8px;
    border-radius: 999px;
    background: #fff;
    color: var(--bat-primary);
    font-size: 10px;
    font-weight: 950;
}

.bat-detail-title h2[b-icwpeqh8ms] {
    margin: 8px 0 0;
    color: var(--bat-primary-dark);
    font-size: 21px;
    font-weight: 950;
    letter-spacing: -0.03em;
}

.bat-detail-title p[b-icwpeqh8ms] {
    margin: 3px 0 0;
    color: var(--bat-muted);
    font-size: 12px;
    font-weight: 700;
}

.bat-detail-tags[b-icwpeqh8ms] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 12px 0;
}

.bat-detail-tags span[b-icwpeqh8ms] {
    padding: 5px 8px;
    border-radius: 999px;
    background: #eef6fa;
    color: var(--bat-primary);
    font-size: 10px;
    font-weight: 900;
}

.bat-detail-section[b-icwpeqh8ms] {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid #edf4f7;
}

.bat-detail-section.highlight[b-icwpeqh8ms] {
    padding: 12px;
    border: 1px solid rgba(34, 199, 201, 0.25);
    border-radius: 16px;
    background: #f7fdff;
}

.bat-detail-section h3[b-icwpeqh8ms] {
    margin: 0 0 8px;
    color: var(--bat-primary-dark);
    font-size: 14px;
    font-weight: 950;
}

.bat-detail-section p[b-icwpeqh8ms] {
    margin: 0;
    color: #334155;
    font-size: 12px;
    font-weight: 750;
    line-height: 1.6;
}

.bat-detail-list[b-icwpeqh8ms] {
    display: grid;
    gap: 6px;
    margin: 0;
}

.bat-detail-list div[b-icwpeqh8ms] {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 8px;
    align-items: start;
    min-height: 32px;
    padding: 8px 10px;
    border-radius: 12px;
    background: #f8fbfd;
}

.bat-detail-list dt[b-icwpeqh8ms] {
    color: var(--bat-muted);
    font-size: 11px;
    font-weight: 950;
}

.bat-detail-list dd[b-icwpeqh8ms] {
    margin: 0;
    color: #334155;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.45;
}

.bat-empty[b-icwpeqh8ms] {
    padding: 24px;
    border: 1px dashed var(--bat-border);
    border-radius: 16px;
    background: #f8fbfd;
    color: var(--bat-muted);
    font-size: 13px;
    font-weight: 850;
    text-align: center;
}

.bat-empty.compact[b-icwpeqh8ms] {
    padding: 12px;
    font-size: 12px;
}

.bat-pager[b-icwpeqh8ms] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 10px;
    color: var(--bat-muted);
    font-size: 12px;
    font-weight: 850;
}

.bat-pager div[b-icwpeqh8ms] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.bat-pager button:disabled[b-icwpeqh8ms] {
    opacity: 0.45;
}

@media (max-width: 1500px) {
    .bat-one-screen[b-icwpeqh8ms] {
        grid-template-columns: 285px minmax(480px, 1fr) 320px;
    }

    .bat-species-cards[b-icwpeqh8ms] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 1180px) {
    .bat-one-screen[b-icwpeqh8ms] {
        grid-template-columns: 1fr;
    }

    .bat-filter-panel[b-icwpeqh8ms],
    .bat-center-panel[b-icwpeqh8ms],
    .bat-detail-panel[b-icwpeqh8ms] {
        height: auto;
        max-height: none;
    }

    
.bat-center-search-panel[b-icwpeqh8ms] {
    display: grid;
    grid-template-columns: minmax(22%, 1.4fr) repeat(4, minmax(12%, 1fr)) auto;
    gap: 8px;
    align-items: end;
    flex: 0 0 auto;
    margin-bottom: 10px;
    padding: 10px;
    border: 1px solid var(--bat-border);
    border-radius: 16px;
    background: #f8fbfd;
}

.bat-center-search-panel label[b-icwpeqh8ms] {
    display: grid;
    gap: 4px;
    min-width: 0;
    margin: 0;
}

.bat-center-search-panel span[b-icwpeqh8ms] {
    color: var(--bat-primary);
    font-size: 11px;
    font-weight: 900;
}

.bat-center-search-panel input[b-icwpeqh8ms],
.bat-center-search-panel select[b-icwpeqh8ms] {
    width: 100%;
    height: 34px;
    min-width: 0;
    border: 1px solid var(--bat-border);
    border-radius: 10px;
    background: #fff;
    color: var(--bat-text);
    font-size: 12px;
    font-weight: 750;
    outline: none;
    padding: 0 10px;
}

.bat-center-search-panel input:focus[b-icwpeqh8ms],
.bat-center-search-panel select:focus[b-icwpeqh8ms] {
    border-color: rgba(37, 99, 235, 0.65);
    box-shadow: 0 0 0 3px rgba(34, 199, 201, 0.15);
}

.bat-center-search-actions[b-icwpeqh8ms] {
    display: flex;
    gap: 6px;
    justify-content: flex-end;
    white-space: nowrap;
}

.bat-filter-stack[b-icwpeqh8ms] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .bat-taxonomy-box[b-icwpeqh8ms] {
        height: 240px;
    }
}

@media (max-width: 900px) {
    .bat-hero[b-icwpeqh8ms],
    .bat-panel-head[b-icwpeqh8ms],
    .bat-pager[b-icwpeqh8ms] {
        align-items: stretch;
        flex-direction: column;
    }

    .bat-kpi-strip[b-icwpeqh8ms],
    .bat-filter-stack[b-icwpeqh8ms],
    .bat-summary-board[b-icwpeqh8ms] {
        grid-template-columns: 1fr;
    }

    .bat-tabs[b-icwpeqh8ms],
    .bat-hero-actions[b-icwpeqh8ms],
    .bat-detail-actions[b-icwpeqh8ms] {
        justify-content: flex-start;
    }
}


/* 상단 메뉴형 공통 레이아웃 기준: ecology는 page scroll 없이 내부 패널만 스크롤 */
:host[b-icwpeqh8ms] { display: block; height: 100%; min-height: 0; overflow: hidden; }

@media (min-width: 1181px) {
    .bat-hero[b-icwpeqh8ms] { flex: 0 0 auto; }
    .bat-kpi-strip[b-icwpeqh8ms] { flex: 0 0 auto; }
    .bat-one-screen[b-icwpeqh8ms] { flex: 1 1 auto; min-height: 0; }
}

.bat-row-action[b-icwpeqh8ms] {
    min-height: 26px;
    padding: 0 9px;
    border: 1px solid var(--bat-border);
    border-radius: 999px;
    background: #fff;
    color: var(--bat-primary);
    font-size: 10px;
    font-weight: 950;
}

.bat-row-action:hover:not(:disabled)[b-icwpeqh8ms] {
    border-color: var(--bat-primary);
    background: var(--bat-primary);
    color: #fff;
}

.bat-row-action:disabled[b-icwpeqh8ms] {
    opacity: .45;
    cursor: not-allowed;
}

.bat-sample-table[b-icwpeqh8ms] {
    min-width: 980px;
}

.bat-matrix-note[b-icwpeqh8ms] {
    margin-bottom: 10px;
    padding: 10px 12px;
    border: 1px solid #fde68a;
    border-radius: 14px;
    background: #fffbeb;
    color: #92400e;
    font-size: 12px;
    font-weight: 850;
}

.bat-matrix-shell[b-icwpeqh8ms] {
    max-height: calc(100vh - 330px);
}

.bat-matrix-table[b-icwpeqh8ms] {
    min-width: 980px;
}

.bat-matrix-table th[b-icwpeqh8ms],
.bat-matrix-table td[b-icwpeqh8ms] {
    text-align: center;
}

.bat-matrix-table .bat-sticky-col[b-icwpeqh8ms] {
    position: sticky;
    left: 0;
    z-index: 2;
    min-width: 210px;
    text-align: left;
    background: #fff;
    box-shadow: 1px 0 0 #edf4f7;
}

.bat-matrix-table thead .bat-sticky-col[b-icwpeqh8ms] {
    z-index: 3;
    background: #f4f9fc;
}

.bat-matrix-species[b-icwpeqh8ms] {
    display: grid;
    gap: 2px;
    width: 100%;
    border: 0;
    background: transparent;
    text-align: left;
}

.bat-matrix-species strong[b-icwpeqh8ms] {
    color: var(--bat-primary-dark);
    font-size: 12px;
    font-weight: 950;
}

.bat-matrix-species em[b-icwpeqh8ms] {
    color: var(--bat-muted);
    font-size: 10px;
    font-weight: 750;
}

.bat-matrix-cell[b-icwpeqh8ms] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    min-height: 24px;
    padding: 0 7px;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 950;
}

.bat-matrix-cell.detected[b-icwpeqh8ms] {
    background: #dcfce7;
    color: #047857;
}

.bat-admin-section[b-icwpeqh8ms] {
    border-top-color: #dbeafe;
}

.bat-matrix-cell.positive[b-icwpeqh8ms] {
    background: #dcfce7;
    color: #047857;
}

.bat-matrix-cell.negative[b-icwpeqh8ms] {
    background: #fee2e2;
    color: #b91c1c;
}

.bat-matrix-cell.mixed[b-icwpeqh8ms] {
    background: #fef3c7;
    color: #92400e;
}

.bat-matrix-cell.reported[b-icwpeqh8ms] {
    background: #fef3c7;
    color: #b45309;
}

.bat-matrix-cell.analysis[b-icwpeqh8ms] {
    background: #dbeafe;
    color: #1d4ed8;
}

.bat-matrix-cell.none[b-icwpeqh8ms] {
    background: #f1f5f9;
    color: #94a3b8;
}

.bat-selected-row td[b-icwpeqh8ms] {
    background: #f5fdff;
}

.bat-admin-note[b-icwpeqh8ms] {
    margin: 8px 0 0;
    color: var(--bat-muted);
    font-size: 11px;
    font-weight: 750;
    line-height: 1.5;
}

.bat-map-modal-backdrop[b-icwpeqh8ms] {
    position: fixed;
    inset: 0;
    z-index: 2000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px;
    background: rgba(15, 23, 42, .45);
}

.bat-map-modal[b-icwpeqh8ms] {
    display: flex;
    flex-direction: column;
    width: min(96vw, 1600px);
    height: min(92vh, 920px);
    min-height: 0;
    padding: 16px;
    border: 1px solid var(--bat-border);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 30px 70px rgba(15, 23, 42, .25);
}

.bat-map-modal-head[b-icwpeqh8ms] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
}

.bat-map-modal-head h2[b-icwpeqh8ms] {
    margin: 0;
    color: var(--bat-primary-dark);
    font-size: 18px;
    font-weight: 950;
}

.bat-map-modal-head p[b-icwpeqh8ms] {
    margin: 4px 0 0;
    color: var(--bat-muted);
    font-size: 12px;
    font-weight: 700;
}

.bat-map-layer-tabs[b-icwpeqh8ms] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 6px;
}

.bat-map-modal-grid[b-icwpeqh8ms] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 14px;
    min-height: 0;
    flex: 1;
}

.bat-sample-map[b-icwpeqh8ms] {
    min-height: 0;
    height: 100%;
    overflow: hidden;
    border: 1px solid var(--bat-border);
    border-radius: 20px;
    background: #eef6fa;
}

.bat-map-sample-list[b-icwpeqh8ms] {
    min-width: 0;
    min-height: 0;
    overflow: auto;
    padding: 12px;
    border: 1px solid var(--bat-border);
    border-radius: 20px;
    background: #f8fbfd;
}

.bat-map-sample-list h3[b-icwpeqh8ms] {
    margin: 0 0 10px;
    color: var(--bat-primary-dark);
    font-size: 14px;
    font-weight: 950;
}

.bat-map-sample-card[b-icwpeqh8ms] {
    display: grid;
    gap: 5px;
    width: 100%;
    padding: 12px;
    border: 1px solid #edf4f7;
    border-radius: 16px;
    background: #fff;
    text-align: left;
}

.bat-map-sample-card.active[b-icwpeqh8ms] {
    border-color: rgba(37, 99, 235, 0.55);
    background: #f5fdff;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .10);
}

.bat-map-sample-card strong[b-icwpeqh8ms] {
    color: var(--bat-primary-dark);
    font-size: 13px;
    font-weight: 950;
}

.bat-map-sample-card span[b-icwpeqh8ms],
.bat-map-sample-card small[b-icwpeqh8ms] {
    color: var(--bat-muted);
    font-size: 11px;
    font-weight: 750;
}

@media (max-width: 1180px) {
    .bat-map-modal-grid[b-icwpeqh8ms] {
        grid-template-columns: 1fr;
    }

    .bat-map-sample-list[b-icwpeqh8ms] {
        max-height: 220px;
    }
}

.bat-taxonomy-admin-tools[b-icwpeqh8ms] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    margin: 8px 0 10px;
}

.bat-mini-btn.danger[b-icwpeqh8ms],
.bat-btn-danger[b-icwpeqh8ms] {
    border-color: #fecaca;
    background: #fff5f5;
    color: #b91c1c;
}

.bat-tree-node.active[b-icwpeqh8ms] {
    border-color: rgba(37, 99, 235, .45);
    background: #eaf7fb;
    box-shadow: 0 0 0 2px rgba(37, 99, 235, .08);
}

.bat-matrix-tools[b-icwpeqh8ms] {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 8px;
}

.bat-matrix-tools .bat-matrix-note[b-icwpeqh8ms] {
    flex: 1 1 auto;
    margin-bottom: 0;
}

.bat-matrix-tools label[b-icwpeqh8ms] {
    display: grid;
    gap: 4px;
    min-width: 130px;
    padding: 8px 10px;
    border: 1px solid var(--bat-border);
    border-radius: 14px;
    background: #fff;
}

.bat-matrix-tools label span[b-icwpeqh8ms] {
    color: var(--bat-muted);
    font-size: 10px;
    font-weight: 900;
}

.bat-matrix-tools select[b-icwpeqh8ms] {
    min-height: 30px;
    border: 1px solid var(--bat-border);
    border-radius: 10px;
    color: var(--bat-primary-dark);
    font-size: 11px;
    font-weight: 850;
}

.bat-matrix-legend[b-icwpeqh8ms] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 10px;
}

.bat-matrix-legend span[b-icwpeqh8ms] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 24px;
    padding: 0 8px;
    border: 1px solid var(--bat-border);
    border-radius: 999px;
    background: #fff;
    color: var(--bat-muted);
    font-size: 10px;
    font-weight: 850;
}

.bat-matrix-legend b[b-icwpeqh8ms] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    min-height: 18px;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 950;
}

.bat-matrix-legend b.positive[b-icwpeqh8ms] { background: #dcfce7; color: #047857; }
.bat-matrix-legend b.negative[b-icwpeqh8ms] { background: #fee2e2; color: #b91c1c; }
.bat-matrix-legend b.mixed[b-icwpeqh8ms] { background: #fef3c7; color: #92400e; }
.bat-matrix-legend b.analysis[b-icwpeqh8ms] { background: #dbeafe; color: #1d4ed8; }
.bat-matrix-legend b.reported[b-icwpeqh8ms] { background: #fef3c7; color: #b45309; }

.bat-matrix-cell-button[b-icwpeqh8ms] {
    display: inline-flex;
    padding: 0;
    border: 0;
    background: transparent;
}

.bat-matrix-cell-button:disabled[b-icwpeqh8ms] {
    cursor: default;
}

.bat-editor-modal[b-icwpeqh8ms],
.bat-confirm-modal[b-icwpeqh8ms] {
    display: flex;
    flex-direction: column;
    width: min(96vw, 720px);
    max-height: min(92vh, 760px);
    overflow: auto;
    padding: 16px;
    border: 1px solid var(--bat-border);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 30px 70px rgba(15, 23, 42, .25);
}

.bat-confirm-modal[b-icwpeqh8ms] {
    width: min(92vw, 520px);
}

.bat-editor-modal-head[b-icwpeqh8ms] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}

.bat-editor-modal-head h2[b-icwpeqh8ms],
.bat-confirm-modal h2[b-icwpeqh8ms] {
    margin: 0;
    color: var(--bat-primary-dark);
    font-size: 18px;
    font-weight: 950;
}

.bat-editor-modal-head p[b-icwpeqh8ms],
.bat-confirm-modal p[b-icwpeqh8ms] {
    margin: 4px 0 0;
    color: var(--bat-muted);
    font-size: 12px;
    font-weight: 750;
    line-height: 1.5;
}

.bat-editor-form[b-icwpeqh8ms] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.bat-editor-form label[b-icwpeqh8ms] {
    display: grid;
    gap: 5px;
}

.bat-editor-form label span[b-icwpeqh8ms],
.bat-checkline span[b-icwpeqh8ms] {
    color: var(--bat-primary-dark);
    font-size: 11px;
    font-weight: 900;
}

.bat-editor-form input[b-icwpeqh8ms],
.bat-editor-form select[b-icwpeqh8ms],
.bat-editor-form textarea[b-icwpeqh8ms] {
    width: 100%;
    min-height: 34px;
    padding: 7px 10px;
    border: 1px solid var(--bat-border);
    border-radius: 12px;
    background: #fff;
    color: var(--bat-primary-dark);
    font-size: 12px;
    font-weight: 750;
}

.bat-editor-wide[b-icwpeqh8ms] {
    grid-column: 1 / -1;
}

.bat-checkline[b-icwpeqh8ms] {
    display: inline-flex !important;
    grid-column: 1 / -1;
    align-items: center;
    gap: 8px !important;
}

.bat-checkline input[b-icwpeqh8ms] {
    width: auto;
    min-height: auto;
}

.bat-editor-actions[b-icwpeqh8ms] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 16px;
}

@media (max-width: 900px) {
    .bat-editor-form[b-icwpeqh8ms],
    .bat-taxonomy-admin-tools[b-icwpeqh8ms] {
        grid-template-columns: 1fr;
    }

    .bat-matrix-tools[b-icwpeqh8ms] {
        flex-direction: column;
    }
}

.bat-row-actions[b-icwpeqh8ms] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.bat-row-action.danger[b-icwpeqh8ms] {
    border-color: #fecaca;
    color: #b91c1c;
}

.bat-row-action.danger:hover:not(:disabled)[b-icwpeqh8ms] {
    border-color: #b91c1c;
    background: #b91c1c;
    color: #fff;
}

.bat-inline-filter[b-icwpeqh8ms] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 8px;
    padding: 8px 10px;
    border: 1px solid #bfdbfe;
    border-radius: 14px;
    background: #eff6ff;
    color: #1e3a8a;
    font-size: 12px;
    font-weight: 850;
}

.bat-inline-filter strong[b-icwpeqh8ms] {
    color: #0f172a;
    font-weight: 950;
}

.bat-impact-box[b-icwpeqh8ms] {
    display: grid;
    gap: 6px;
    margin: 12px 0;
    padding: 12px;
    border: 1px solid #fde68a;
    border-radius: 14px;
    background: #fffbeb;
    color: #92400e;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.45;
}

.bat-impact-box strong[b-icwpeqh8ms] {
    color: #78350f;
    font-weight: 950;
}

.bat-matrix-table thead th[b-icwpeqh8ms] {
    position: sticky;
    top: 0;
    z-index: 2;
}

.bat-matrix-table thead .bat-sticky-col[b-icwpeqh8ms] {
    z-index: 4;
}

.bat-matrix-cell-button:hover:not(:disabled) .bat-matrix-cell[b-icwpeqh8ms] {
    box-shadow: 0 0 0 2px rgba(37, 99, 235, .16);
    transform: translateY(-1px);
}


@media (max-width: 1500px) {
    .bat-one-screen[b-icwpeqh8ms] {
        grid-template-columns: minmax(20%, 25%) minmax(40%, 1fr) minmax(24%, 28%);
    }

    .bat-center-search-panel[b-icwpeqh8ms] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .bat-center-search-actions[b-icwpeqh8ms] {
        grid-column: span 3;
    }
}

@media (max-width: 1180px) {
    .bat-one-screen[b-icwpeqh8ms] {
        grid-template-columns: 1fr;
        overflow: auto;
    }

    .bat-filter-panel[b-icwpeqh8ms],
    .bat-center-panel[b-icwpeqh8ms],
    .bat-detail-panel[b-icwpeqh8ms] {
        height: auto;
        min-height: 42dvh;
    }
}

/* hotfix 018: 검색 조건을 페이지 상단 독립 필터 바처럼 사용하고, 중앙 패널은 탭 콘텐츠만 담당 */
.bat-workspace[b-icwpeqh8ms] {
    gap: clamp(8px, 0.9dvh, 12px);
    height: 100%;
    max-height: 100%;
    overflow: hidden;
}

.bat-hero[b-icwpeqh8ms] {
    align-items: center;
}

.bat-center-search-panel[b-icwpeqh8ms] {
    flex: 0 0 auto;
    display: grid;
    grid-template-columns: minmax(24%, 1.6fr) repeat(4, minmax(10%, 1fr)) auto;
    align-items: end;
    gap: 8px;
    margin: 0;
    padding: 10px 12px;
    border: 1px solid var(--bat-border);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(9, 70, 96, 0.05);
}

.bat-one-screen[b-icwpeqh8ms] {
    min-height: 0;
}

.bat-taxonomy-box.only-tree[b-icwpeqh8ms] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
    overflow: hidden;
}

.bat-taxonomy-tree[b-icwpeqh8ms] {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
    padding-right: 4px;
}

.bat-center-body[b-icwpeqh8ms] {
    min-height: 0;
    overflow: auto;
}

.bat-pager[b-icwpeqh8ms] {
    justify-content: center;
    margin-top: auto;
    padding: 10px 0 2px;
    text-align: center;
}

.bat-pager > span[b-icwpeqh8ms] {
    min-width: 150px;
    text-align: right;
}

.bat-pager .bat-pager-controls[b-icwpeqh8ms] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.bat-pager b[b-icwpeqh8ms] {
    min-width: 64px;
    color: var(--bat-primary-dark);
    font-weight: 950;
    text-align: center;
}

.bat-pager button[b-icwpeqh8ms] {
    min-width: 56px;
    border-color: #b7c9e3;
    background: #f8fbff;
}

.bat-pager button:not(:disabled):hover[b-icwpeqh8ms] {
    border-color: var(--bat-primary);
    background: var(--bat-primary);
    color: #fff;
}

@media (max-width: 1500px) {
    .bat-center-search-panel[b-icwpeqh8ms] {
        grid-template-columns: minmax(220px, 1.4fr) repeat(2, minmax(140px, 1fr)) auto;
    }

    .bat-center-search-actions[b-icwpeqh8ms] {
        grid-column: auto;
    }
}

@media (max-width: 1180px) {
    .bat-workspace[b-icwpeqh8ms] {
        height: auto;
        max-height: none;
        overflow: visible;
    }

    .bat-center-search-panel[b-icwpeqh8ms] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bat-center-search-actions[b-icwpeqh8ms] {
        grid-column: span 2;
    }

    .bat-taxonomy-box.only-tree[b-icwpeqh8ms] {
        max-height: 48dvh;
    }
}

@media (max-width: 720px) {
    .bat-center-search-panel[b-icwpeqh8ms] {
        grid-template-columns: 1fr;
    }

    .bat-center-search-actions[b-icwpeqh8ms] {
        grid-column: auto;
    }

    .bat-pager[b-icwpeqh8ms] {
        flex-direction: column;
    }

    .bat-pager > span[b-icwpeqh8ms] {
        min-width: 0;
        text-align: center;
    }
}

/* hotfix 019: ecology final UI cleanup */
.bat-hero[b-icwpeqh8ms] {
    justify-content: flex-start;
}

.bat-hero-actions[b-icwpeqh8ms] {
    display: none !important;
}

/* 우측 상세 패널도 좌/중앙 목록처럼 카드 단위로 보이도록 정리 */
.bat-detail-panel[b-icwpeqh8ms] {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 12px;
    overflow: auto;
}

.bat-detail-title[b-icwpeqh8ms],
.bat-detail-tags[b-icwpeqh8ms],
.bat-detail-section[b-icwpeqh8ms] {
    margin: 0;
    border: 1px solid var(--bat-border);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 8px 20px rgba(9, 70, 96, 0.04);
}

.bat-detail-title[b-icwpeqh8ms] {
    padding: 14px;
    background: linear-gradient(180deg, #f5fdff, #eef7fb);
}

.bat-detail-tags[b-icwpeqh8ms] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding: 10px;
}

.bat-detail-section[b-icwpeqh8ms] {
    padding: 12px;
    border-top: 1px solid var(--bat-border);
}

.bat-detail-section.highlight[b-icwpeqh8ms] {
    border: 1px solid rgba(34, 199, 201, 0.35);
    background: #f7fdff;
}

.bat-detail-section-headline[b-icwpeqh8ms] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 8px;
}

.bat-detail-section-headline h3[b-icwpeqh8ms] {
    margin: 0;
}

/* 연관 병원체 Matrix chip이 기본 HTML 버튼처럼 보이지 않도록 전용 chip 스타일 적용 */
.bat-selected-matrix-list[b-icwpeqh8ms] {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.bat-pathogen-chip[b-icwpeqh8ms] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 28px;
    padding: 0 10px;
    border: 1px solid #f8d98a;
    border-radius: 999px;
    background: #fff7d6;
    color: #92400e;
    font-size: 11px;
    font-weight: 950;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(146, 64, 14, 0.08);
}

.bat-pathogen-chip strong[b-icwpeqh8ms],
.bat-pathogen-chip span[b-icwpeqh8ms] {
    color: inherit;
    font-size: inherit;
    font-weight: 950;
}

.bat-pathogen-chip.detected[b-icwpeqh8ms],
.bat-pathogen-chip.positive[b-icwpeqh8ms] {
    border-color: #86efac;
    background: #dcfce7;
    color: #047857;
}

.bat-pathogen-chip.negative[b-icwpeqh8ms] {
    border-color: #fecaca;
    background: #fee2e2;
    color: #b91c1c;
}

.bat-pathogen-chip.mixed[b-icwpeqh8ms],
.bat-pathogen-chip.reported[b-icwpeqh8ms] {
    border-color: #fde68a;
    background: #fef3c7;
    color: #92400e;
}

.bat-pathogen-chip.analysis[b-icwpeqh8ms] {
    border-color: #bfdbfe;
    background: #dbeafe;
    color: #1d4ed8;
}

.bat-pathogen-chip:hover[b-icwpeqh8ms] {
    transform: translateY(-1px);
    box-shadow: 0 6px 14px rgba(15, 23, 42, 0.12);
}

/* 페이저: 중앙에는 이전/다음만, 건수 범위는 오른쪽 끝에 배치 */
.bat-pager.oh-fixed-pager[b-icwpeqh8ms],
.bat-pager[b-icwpeqh8ms] {
    display: grid !important;
    grid-template-columns: minmax(120px, 1fr) auto minmax(120px, 1fr);
    align-items: center;
    justify-content: stretch;
    gap: 10px;
    width: 100%;
    margin-top: 10px;
    padding: 8px 0 2px;
}

.bat-pager-spacer[b-icwpeqh8ms] {
    min-width: 0;
}

.bat-pager .bat-pager-controls[b-icwpeqh8ms] {
    grid-column: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.bat-pager-range[b-icwpeqh8ms],
.bat-pager > span[b-icwpeqh8ms] {
    grid-column: 3;
    justify-self: end;
    min-width: 0;
    color: var(--bat-muted);
    font-size: 12px;
    font-weight: 900;
    text-align: right;
    white-space: nowrap;
}

@media (max-width: 720px) {
    .bat-pager.oh-fixed-pager[b-icwpeqh8ms],
    .bat-pager[b-icwpeqh8ms] {
        grid-template-columns: 1fr;
    }

    .bat-pager .bat-pager-controls[b-icwpeqh8ms],
    .bat-pager-range[b-icwpeqh8ms],
    .bat-pager > span[b-icwpeqh8ms] {
        grid-column: 1;
        justify-self: center;
        text-align: center;
    }
}

/* hotfix_020: page-local enforcement for visible admin/modal buttons. */
.bat-btn-primary[b-icwpeqh8ms],
.bat-editor-actions .bat-btn-primary[b-icwpeqh8ms],
.bat-editor-actions .oh-action-primary[b-icwpeqh8ms],
.bat-btn.oh-action-primary[b-icwpeqh8ms] {
    background: #0a2a62 !important;
    border: 1px solid #06183f !important;
    color: #ffffff !important;
    box-shadow: 0 10px 22px rgba(10, 42, 98, .22) !important;
}

.bat-btn-secondary[b-icwpeqh8ms],
.bat-editor-actions .bat-btn-ghost[b-icwpeqh8ms],
.bat-editor-actions .oh-action-secondary[b-icwpeqh8ms],
.bat-btn.oh-action-secondary[b-icwpeqh8ms] {
    background: #334155 !important;
    border: 1px solid #1e293b !important;
    color: #ffffff !important;
    box-shadow: 0 9px 18px rgba(15, 23, 42, .18) !important;
}

.bat-btn-danger[b-icwpeqh8ms],
.bat-editor-actions .bat-btn-danger[b-icwpeqh8ms],
.bat-editor-actions .oh-action-danger[b-icwpeqh8ms],
.bat-mini-btn.danger[b-icwpeqh8ms],
.bat-row-action.danger[b-icwpeqh8ms],
.oh-admin-action-delete[b-icwpeqh8ms] {
    background: #dc2626 !important;
    border: 1px solid #991b1b !important;
    color: #ffffff !important;
    box-shadow: 0 9px 18px rgba(220, 38, 38, .18) !important;
}

.oh-admin-action-create[b-icwpeqh8ms] {
    background: #0f766e !important;
    border: 1px solid #115e59 !important;
    color: #ffffff !important;
    box-shadow: 0 8px 16px rgba(15, 118, 110, .16) !important;
}

.oh-admin-action-edit[b-icwpeqh8ms] {
    background: #1d4ed8 !important;
    border: 1px solid #1e40af !important;
    color: #ffffff !important;
    box-shadow: 0 8px 16px rgba(29, 78, 216, .16) !important;
}

.bat-row-action:not(.oh-admin-action):not(.danger)[b-icwpeqh8ms],
.oh-user-action[b-icwpeqh8ms] {
    background: #ffffff !important;
    border: 1px solid #bfdbfe !important;
    color: #0a2a62 !important;
    box-shadow: none !important;
}

.bat-center-search-panel .oh-field-search input[b-icwpeqh8ms] {
    padding-left: 34px !important;
    border-color: #7dd3fc !important;
    background: #ffffff !important;
}

.bat-center-search-panel .oh-field-select select[b-icwpeqh8ms] {
    padding-right: 34px !important;
    border-color: #bfdbfe !important;
    background-color: #f8fbff !important;
    box-shadow: inset 3px 0 0 #93c5fd !important;
}

.bat-center-search-panel .oh-field-search[b-icwpeqh8ms]::after,
.bat-center-search-panel .oh-field-select[b-icwpeqh8ms]::after {
    position: absolute;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 16px;
    border-radius: 999px;
    font-size: 9px;
    font-weight: 950;
    pointer-events: none;
}

.bat-center-search-panel .oh-field-search[b-icwpeqh8ms]::after {
    content: "검색";
    left: 9px;
    bottom: 9px;
    width: 20px;
    background: #e0f2fe;
    color: #0369a1;
}

.bat-center-search-panel .oh-field-select[b-icwpeqh8ms]::after {
    content: "선택";
    right: 9px;
    bottom: 9px;
    width: 22px;
    background: #dbeafe;
    color: #1d4ed8;
}

/* hotfix_021: restore compact ecology filter bar.
   Page-local CSS had badge-style search/select overrides; neutralize them here. */
.bat-center-search-panel.oh-page-filter-strip[b-icwpeqh8ms] {
    display: grid !important;
    grid-template-columns: minmax(260px, 1.65fr) repeat(4, minmax(130px, .9fr)) auto !important;
    gap: 8px !important;
    align-items: end !important;
    padding: 10px 12px !important;
}

.bat-center-search-panel.oh-page-filter-strip label[b-icwpeqh8ms],
.bat-center-search-panel.oh-page-filter-strip .oh-field[b-icwpeqh8ms] {
    display: grid !important;
    gap: 4px !important;
    min-width: 0 !important;
    margin: 0 !important;
}

.bat-center-search-panel.oh-page-filter-strip .wide[b-icwpeqh8ms] {
    grid-column: auto !important;
}

.bat-center-search-panel.oh-page-filter-strip input[b-icwpeqh8ms],
.bat-center-search-panel.oh-page-filter-strip select[b-icwpeqh8ms] {
    height: 34px !important;
    min-height: 34px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.bat-center-search-panel.oh-page-filter-strip .oh-field-search input[b-icwpeqh8ms] {
    padding-left: 12px !important;
    border: 1px solid #8ec5ff !important;
    background: #fff !important;
    box-shadow: inset 3px 0 0 #38bdf8 !important;
}

.bat-center-search-panel.oh-page-filter-strip .oh-field-select select[b-icwpeqh8ms] {
    padding-left: 12px !important;
    padding-right: 28px !important;
    border: 1px solid #c7d7ee !important;
    background-color: #f8fbff !important;
    box-shadow: inset 3px 0 0 #cbd5e1 !important;
}

.bat-center-search-panel.oh-page-filter-strip .oh-field-search[b-icwpeqh8ms]::after,
.bat-center-search-panel.oh-page-filter-strip .oh-field-select[b-icwpeqh8ms]::after {
    content: none !important;
    display: none !important;
}

.bat-center-search-panel.oh-page-filter-strip .bat-center-search-actions[b-icwpeqh8ms] {
    grid-column: auto !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: end !important;
    justify-content: flex-end !important;
    gap: 6px !important;
    white-space: nowrap !important;
}

@media (max-width: 1500px) {
    .bat-center-search-panel.oh-page-filter-strip[b-icwpeqh8ms] {
        grid-template-columns: minmax(220px, 1.35fr) repeat(2, minmax(140px, 1fr)) auto !important;
    }
}

@media (max-width: 900px) {
    .bat-center-search-panel.oh-page-filter-strip[b-icwpeqh8ms] {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .bat-center-search-panel.oh-page-filter-strip .bat-center-search-actions[b-icwpeqh8ms] {
        grid-column: 1 / -1 !important;
    }
}

@media (max-width: 640px) {
    .bat-center-search-panel.oh-page-filter-strip[b-icwpeqh8ms] {
        grid-template-columns: 1fr !important;
    }
}

/* hotfix_022: final compact ecology filter bar and profile editor. */
.bat-center-search-panel.oh-page-filter-strip[b-icwpeqh8ms] {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-end !important;
    gap: 8px !important;
    padding: 10px 12px !important;
}

.bat-center-search-panel.oh-page-filter-strip .oh-field[b-icwpeqh8ms] {
    flex: 1 1 150px !important;
    min-width: 140px !important;
    max-width: none !important;
}

.bat-center-search-panel.oh-page-filter-strip .wide.oh-field[b-icwpeqh8ms] {
    flex: 1.65 1 280px !important;
    min-width: 260px !important;
}

.bat-center-search-panel.oh-page-filter-strip .bat-center-search-actions[b-icwpeqh8ms] {
    flex: 0 0 auto !important;
    margin-left: auto !important;
}

.bat-center-search-panel.oh-page-filter-strip input[b-icwpeqh8ms],
.bat-center-search-panel.oh-page-filter-strip select[b-icwpeqh8ms] {
    height: 34px !important;
    min-height: 34px !important;
}

.bat-profile-editor-form textarea[b-icwpeqh8ms] {
    min-height: 82px;
    line-height: 1.45;
}

.bat-profile-editor-modal[b-icwpeqh8ms] {
    width: min(980px, 92vw);
}

.bat-admin-section .bat-detail-actions[b-icwpeqh8ms] {
    justify-content: flex-start;
}

.bat-editor-actions .bat-btn[b-icwpeqh8ms],
.bat-confirm-modal .bat-btn[b-icwpeqh8ms],
.bat-editor-modal .bat-btn[b-icwpeqh8ms] {
    min-width: 92px !important;
    border-width: 1px !important;
    color: #fff !important;
}

.bat-editor-actions .bat-btn-primary[b-icwpeqh8ms],
.bat-editor-actions .oh-action-primary[b-icwpeqh8ms] {
    background: #0b2f6b !important;
    border-color: #0b2f6b !important;
}

.bat-editor-actions .bat-btn-secondary[b-icwpeqh8ms],
.bat-editor-actions .oh-action-secondary[b-icwpeqh8ms] {
    background: #334155 !important;
    border-color: #334155 !important;
}

.bat-editor-actions .bat-btn-danger[b-icwpeqh8ms],
.bat-editor-actions .oh-action-danger[b-icwpeqh8ms] {
    background: #dc2626 !important;
    border-color: #dc2626 !important;
}

/* v4: 일반 게시판형 숫자 페이징 */
.bat-pager .bat-page-number.active[b-icwpeqh8ms],
.bat-pager .bat-page-number.active:disabled[b-icwpeqh8ms] {
    opacity: 1;
    cursor: default;
    border-color: var(--bat-primary);
    background: var(--bat-primary);
    color: #fff;
}

.bat-pager .bat-pager-controls[b-icwpeqh8ms] {
    flex-wrap: wrap;
}

.bat-map-empty[b-icwpeqh8ms] {
    color: #94a3b8;
    font-size: 12px;
    font-weight: 800;
}
/* /Components/Pages/Institution.razor.rz.scp.css */
.oh-status-grid-compact[b-1ur9rzcnl8] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 900px) {
    .oh-status-grid-compact[b-1ur9rzcnl8] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/OpenApiGuide.razor.rz.scp.css */
.oh-step-no[b-r095dh55hf] {
    width: 2.2rem;
    height: 2.2rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    color: #1d4ed8;
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    margin-bottom: .75rem;
}

code[b-r095dh55hf] {
    color: #334155;
    background: #f8fafc;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    padding: .12rem .35rem;
}
/* /Components/Pages/OpenApiRequests.razor.rz.scp.css */
.oa-summary-card[b-85nkkgds2a] {
    margin-bottom: 1rem;
}

.oa-summary-grid[b-85nkkgds2a] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .75rem;
}

.oa-card-title-row[b-85nkkgds2a] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .75rem;
}

.oa-inline-filter[b-85nkkgds2a] {
    display: flex;
    align-items: center;
    gap: .5rem;
    white-space: nowrap;
}

.oa-inline-filter select[b-85nkkgds2a],
.oa-table-input[b-85nkkgds2a] {
    border: 1px solid var(--color-border);
    border-radius: .5rem;
    padding: .35rem .5rem;
    background: #fff;
}

.oa-table-input[b-85nkkgds2a] {
    width: 10rem;
}

.oa-table-input.oa-number[b-85nkkgds2a] {
    width: 6rem;
}

.oa-dataset-picker[b-85nkkgds2a] {
    max-height: 18rem;
    overflow: auto;
    border: 1px solid var(--color-border);
    border-radius: .75rem;
    padding: .5rem;
    background: #fff;
}

.oa-check-row[b-85nkkgds2a] {
    display: flex;
    align-items: flex-start;
    gap: .5rem;
    padding: .45rem .25rem;
    border-bottom: 1px solid rgba(15, 23, 42, .06);
}

.oa-check-row:last-child[b-85nkkgds2a] {
    border-bottom: 0;
}

.oa-check-row span[b-85nkkgds2a] {
    display: flex;
    flex-direction: column;
    gap: .15rem;
}

.oa-check-row small[b-85nkkgds2a] {
    color: #64748b;
}

@media (max-width: 1200px) {
    .oa-summary-grid[b-85nkkgds2a] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
/* /Components/Pages/OperationsChecklist.razor.rz.scp.css */
.oh-step-list[b-nwutimoekc] {
    display: grid;
    gap: .75rem;
    margin: 0;
    padding-left: 1.2rem;
}

.oh-step-list li[b-nwutimoekc] {
    padding: .65rem .75rem;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    background: #f8fafc;
}

.oh-step-list strong[b-nwutimoekc] {
    display: block;
    color: #0f172a;
    margin-bottom: .2rem;
}

.oh-step-list span[b-nwutimoekc] {
    display: block;
    color: #64748b;
    font-size: .88rem;
}

.oh-check-grid[b-nwutimoekc] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .65rem;
}

.oh-check-grid label[b-nwutimoekc] {
    display: flex;
    align-items: center;
    gap: .55rem;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: .7rem .8rem;
    background: #f8fafc;
    color: #334155;
}

@media (max-width: 900px) {
    .oh-check-grid[b-nwutimoekc] {
        grid-template-columns: 1fr;
    }
}


.operations-flow-card[b-nwutimoekc] {
    margin-top: 1rem;
}

.operations-flow-card p[b-nwutimoekc] {
    margin-bottom: .9rem;
}
/* /Components/Pages/OperationsRunbook.razor.rz.scp.css */
.runbook-banner[b-qf280jefx4] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.25rem;
    border: 1px solid #dbeafe;
    border-radius: 18px;
    background: linear-gradient(135deg, #eff6ff, #ffffff);
}

.runbook-banner h2[b-qf280jefx4] {
    margin: .6rem 0 .35rem;
    font-size: 1.35rem;
    color: #0f172a;
}

.runbook-banner p[b-qf280jefx4] {
    margin: 0;
    color: #475569;
}

.runbook-status[b-qf280jefx4] {
    min-width: 220px;
    border: 1px solid #bfdbfe;
    border-radius: 14px;
    background: #ffffff;
    padding: .85rem 1rem;
}

.runbook-status strong[b-qf280jefx4],
.runbook-status span[b-qf280jefx4] {
    display: block;
}

.runbook-status strong[b-qf280jefx4] {
    color: #1e40af;
    margin-bottom: .35rem;
}

.runbook-status span[b-qf280jefx4] {
    color: #64748b;
    font-size: .9rem;
}

.runbook-grid[b-qf280jefx4] {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: .75rem;
}

.runbook-phase-card[b-qf280jefx4] {
    display: flex;
    gap: .75rem;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    background: #ffffff;
    padding: 1rem;
}

.runbook-phase-index[b-qf280jefx4] {
    flex: 0 0 auto;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 999px;
    display: grid;
    place-items: center;
    background: #eff6ff;
    color: #1d4ed8;
    font-weight: 700;
}

.runbook-phase-card h3[b-qf280jefx4] {
    margin: 0 0 .3rem;
    font-size: 1rem;
    color: #0f172a;
}

.runbook-phase-card p[b-qf280jefx4] {
    margin: 0 0 .55rem;
    color: #64748b;
    font-size: .88rem;
}

.runbook-links[b-qf280jefx4] {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
}

.runbook-links a[b-qf280jefx4] {
    font-size: .78rem;
    border: 1px solid #dbeafe;
    border-radius: 999px;
    padding: .25rem .55rem;
    color: #1d4ed8;
    text-decoration: none;
    background: #eff6ff;
}

.runbook-timeline[b-qf280jefx4] {
    display: grid;
    gap: .85rem;
}

.runbook-step[b-qf280jefx4] {
    display: grid;
    grid-template-columns: 3rem minmax(0, 1fr);
    gap: .85rem;
}

.runbook-step-no[b-qf280jefx4] {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 999px;
    display: grid;
    place-items: center;
    background: #0f172a;
    color: #ffffff;
    font-weight: 700;
}

.runbook-step-body[b-qf280jefx4] {
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    padding: 1rem;
    background: #ffffff;
}

.runbook-step-title[b-qf280jefx4] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
}

.runbook-step-title h4[b-qf280jefx4] {
    margin: 0;
    color: #0f172a;
}

.runbook-step-body p[b-qf280jefx4] {
    margin: .45rem 0 .75rem;
    color: #475569;
}

.runbook-step-detail[b-qf280jefx4] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .6rem;
}

.runbook-step-detail div[b-qf280jefx4] {
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: .65rem;
    background: #f8fafc;
}

.runbook-step-detail strong[b-qf280jefx4],
.runbook-step-detail span[b-qf280jefx4] {
    display: block;
}

.runbook-step-detail strong[b-qf280jefx4] {
    color: #334155;
    margin-bottom: .25rem;
    font-size: .82rem;
}

.runbook-step-detail span[b-qf280jefx4] {
    color: #64748b;
    font-size: .85rem;
}

.runbook-checks[b-qf280jefx4] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .65rem;
}

.runbook-checks label[b-qf280jefx4] {
    display: flex;
    align-items: center;
    gap: .55rem;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: .75rem .85rem;
    background: #f8fafc;
    color: #334155;
}

.runbook-note[b-qf280jefx4] {
    border: 1px solid #fde68a;
    border-radius: 16px;
    background: #fffbeb;
    padding: 1rem;
    color: #92400e;
}

.runbook-note strong[b-qf280jefx4] {
    display: block;
    margin-bottom: .35rem;
}

.runbook-note p[b-qf280jefx4] {
    margin: 0;
}

.compact-table code[b-qf280jefx4] {
    white-space: nowrap;
}

@media (max-width: 1200px) {
    .runbook-grid[b-qf280jefx4] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .runbook-step-detail[b-qf280jefx4] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 800px) {
    .runbook-banner[b-qf280jefx4] {
        flex-direction: column;
    }

    .runbook-grid[b-qf280jefx4],
    .runbook-checks[b-qf280jefx4] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/PathogenAnalysis.razor.rz.scp.css */
/* Pathogen analysis one-screen explorer layout aligned with Ecology / Alpha Corona pages */

.pathogen-workspace[b-s0gto5k24c] {
    --pathogen-primary: #0a2a62;
    --pathogen-primary-dark: #06183f;
    --pathogen-accent: #38bdf8;
    --pathogen-soft: #edf5ff;
    --pathogen-border: #cfe0f6;
    --pathogen-muted: #64748b;
    --pathogen-text: #0f172a;
    --pathogen-card: #ffffff;
    display: flex;
    flex-direction: column;
    gap: 9px;
    min-width: 0;
    height: 100%;
    min-height: 0;
    overflow: hidden;
}

.pathogen-hero[b-s0gto5k24c] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    flex: 0 0 auto;
}

.pathogen-hero h1[b-s0gto5k24c] {
    margin: 0;
    color: var(--pathogen-primary-dark);
    font-size: 22px;
    font-weight: 950;
    letter-spacing: -0.04em;
}

.pathogen-hero p[b-s0gto5k24c] {
    margin: 4px 0 0;
    color: var(--pathogen-muted);
    font-size: 13px;
    font-weight: 650;
}

.pathogen-hero-actions[b-s0gto5k24c],
.pathogen-search-actions[b-s0gto5k24c],
.pathogen-tabs[b-s0gto5k24c],
.pathogen-side-tabs[b-s0gto5k24c] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.pathogen-btn[b-s0gto5k24c],
.pathogen-tab[b-s0gto5k24c],
.pathogen-pager button[b-s0gto5k24c] {
    height: 34px;
    border: 1px solid var(--pathogen-border);
    border-radius: 10px;
    background: #fff;
    color: var(--pathogen-primary);
    font-size: 12px;
    font-weight: 900;
    padding: 0 12px;
    white-space: nowrap;
}

.pathogen-btn-primary[b-s0gto5k24c],
.pathogen-tab.active[b-s0gto5k24c],
.pathogen-pager button.active[b-s0gto5k24c] {
    border-color: var(--pathogen-primary);
    background: var(--pathogen-primary);
    color: #fff;
}

.pathogen-btn-ghost:hover[b-s0gto5k24c],
.pathogen-tab:hover[b-s0gto5k24c],
.pathogen-pager button:hover:not(:disabled)[b-s0gto5k24c] {
    border-color: rgba(11, 69, 96, 0.35);
    background: var(--pathogen-soft);
}

.pathogen-kpi-strip[b-s0gto5k24c] {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
    flex: 0 0 auto;
}

.pathogen-kpi-strip article[b-s0gto5k24c] {
    min-width: 0;
    padding: 10px 14px;
    border: 1px solid var(--pathogen-border);
    border-radius: 18px;
    background: linear-gradient(180deg, #fff, #f7fbfd);
    box-shadow: 0 12px 28px rgba(9, 70, 96, 0.06);
}

.pathogen-kpi-strip span[b-s0gto5k24c],
.pathogen-kpi-strip small[b-s0gto5k24c] {
    display: block;
    overflow: hidden;
    color: var(--pathogen-muted);
    font-size: 11px;
    font-weight: 850;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pathogen-kpi-strip strong[b-s0gto5k24c] {
    display: block;
    overflow: hidden;
    margin-top: 3px;
    color: var(--pathogen-primary-dark);
    font-size: 20px;
    font-weight: 950;
    line-height: 1.05;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pathogen-search-panel[b-s0gto5k24c] {
    display: grid;
    grid-template-columns: minmax(22%, 1.7fr) repeat(3, minmax(13%, 1fr)) auto;
    gap: 8px;
    align-items: end;
    flex: 0 0 auto;
    padding: 10px;
    border: 1px solid var(--pathogen-border);
    border-radius: 16px;
    background: #f8fbfd;
}

.pathogen-search-panel label[b-s0gto5k24c] {
    display: grid;
    gap: 4px;
    min-width: 0;
    margin: 0;
}

.pathogen-search-panel span[b-s0gto5k24c] {
    color: var(--pathogen-primary);
    font-size: 11px;
    font-weight: 900;
}

.pathogen-search-panel input[b-s0gto5k24c],
.pathogen-search-panel select[b-s0gto5k24c] {
    width: 100%;
    height: 34px;
    min-width: 0;
    border: 1px solid var(--pathogen-border);
    border-radius: 10px;
    background: #fff;
    color: var(--pathogen-text);
    font-size: 12px;
    font-weight: 750;
    outline: none;
    padding: 0 10px;
}

.pathogen-one-screen[b-s0gto5k24c] {
    display: grid;
    grid-template-columns: minmax(18%, 24%) minmax(42%, 1fr) minmax(22%, 27%);
    gap: 12px;
    align-items: stretch;
    min-height: 0;
    flex: 1 1 auto;
    overflow: hidden;
}

.pathogen-panel[b-s0gto5k24c] {
    min-width: 0;
    min-height: 0;
    border: 1px solid var(--pathogen-border);
    border-radius: 20px;
    background: var(--pathogen-card);
    box-shadow: 0 16px 32px rgba(9, 70, 96, 0.06);
}

.pathogen-tree-panel[b-s0gto5k24c],
.pathogen-detail-panel[b-s0gto5k24c] {
    height: 100%;
    overflow: auto;
    padding: 12px;
}

.pathogen-center-panel[b-s0gto5k24c] {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    padding: 12px;
}

.pathogen-panel-head[b-s0gto5k24c] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 12px;
}

.pathogen-panel-head h2[b-s0gto5k24c] {
    margin: 0;
    color: var(--pathogen-primary-dark);
    font-size: 16px;
    font-weight: 950;
    letter-spacing: -0.02em;
}

.pathogen-panel-head p[b-s0gto5k24c] {
    margin: 3px 0 0;
    color: var(--pathogen-muted);
    font-size: 12px;
    font-weight: 650;
}

.pathogen-side-tabs[b-s0gto5k24c] {
    justify-content: stretch;
    margin-bottom: 10px;
}

.pathogen-side-tabs .pathogen-tab[b-s0gto5k24c] {
    flex: 1 1 0;
}

.pathogen-warning[b-s0gto5k24c],
.pathogen-rule-note[b-s0gto5k24c] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px 10px;
    margin-bottom: 10px;
    padding: 10px 12px;
    border: 1px solid #fde68a;
    border-radius: 14px;
    background: #fffbeb;
    color: #92400e;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.45;
}

.pathogen-rule-note[b-s0gto5k24c] {
    border-color: #dbeafe;
    background: #f8fbff;
    color: var(--pathogen-primary);
}

.pathogen-rule-note strong[b-s0gto5k24c] {
    color: var(--pathogen-primary-dark);
    font-weight: 950;
}

.pathogen-tree-scroll[b-s0gto5k24c] {
    display: grid;
    gap: 7px;
    min-height: 0;
}

.pathogen-tree-node[b-s0gto5k24c] {
    display: grid;
    gap: 5px;
}

.pathogen-tree-children[b-s0gto5k24c] {
    display: grid;
    gap: 5px;
    padding-left: 12px;
}

.pathogen-tree-button[b-s0gto5k24c] {
    width: 100%;
    min-height: 46px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    background: #ffffff;
    color: var(--pathogen-primary-dark);
    padding: 8px 10px;
    text-align: left;
}

.pathogen-tree-button:hover[b-s0gto5k24c],
.pathogen-tree-button.active[b-s0gto5k24c] {
    border-color: #7dd3fc;
    background: #ecfeff;
    box-shadow: inset 3px 0 0 #0ea5e9;
}

.pathogen-tree-button span[b-s0gto5k24c] {
    min-width: 0;
    display: grid;
    gap: 2px;
}

.pathogen-tree-button strong[b-s0gto5k24c],
.pathogen-tree-button small[b-s0gto5k24c] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pathogen-tree-button strong[b-s0gto5k24c] {
    font-size: 13px;
    font-weight: 950;
}

.pathogen-tree-button small[b-s0gto5k24c] {
    color: var(--pathogen-muted);
    font-size: 11px;
    font-weight: 800;
}

.pathogen-tree-button em[b-s0gto5k24c] {
    min-width: 40px;
    border-radius: 999px;
    background: #eef2f7;
    color: #0f172a;
    font-size: 11px;
    font-style: normal;
    font-weight: 950;
    padding: 4px 7px;
    text-align: center;
}

.pathogen-table-shell[b-s0gto5k24c] {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
    border: 1px solid #d6e5f7;
    border-radius: 16px;
    background: #fff;
}

.pathogen-table[b-s0gto5k24c] {
    width: 100%;
    min-width: 840px;
    border-collapse: separate;
    border-spacing: 0;
    color: var(--pathogen-text);
    font-size: 12px;
}

.pathogen-table th[b-s0gto5k24c],
.pathogen-table td[b-s0gto5k24c] {
    padding: 11px 12px;
    border-bottom: 1px solid #e6eef7;
    vertical-align: middle;
    text-align: center;
}

.pathogen-table th[b-s0gto5k24c] {
    position: sticky;
    top: 0;
    z-index: 1;
    background: #f8fbfd;
    color: var(--pathogen-primary-dark);
    font-size: 11px;
    font-weight: 950;
}

.pathogen-table tbody tr:hover[b-s0gto5k24c],
.pathogen-table tbody tr.active[b-s0gto5k24c] {
    background: #effafe;
}

.pathogen-table tbody tr.active[b-s0gto5k24c] {
    box-shadow: inset 4px 0 0 var(--pathogen-accent);
}

.pathogen-taxon-cell[b-s0gto5k24c] {
    text-align: left !important;
    min-width: 180px;
}

.pathogen-taxon-cell strong[b-s0gto5k24c],
.pathogen-taxon-cell small[b-s0gto5k24c] {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pathogen-taxon-cell strong[b-s0gto5k24c] {
    color: var(--pathogen-primary-dark);
    font-weight: 950;
}

.pathogen-taxon-cell small[b-s0gto5k24c] {
    color: var(--pathogen-muted);
    font-size: 11px;
    font-weight: 750;
}

.pathogen-click-row[b-s0gto5k24c] {
    cursor: pointer;
}

.pathogen-pager.oh-fixed-pager[b-s0gto5k24c],
.pathogen-pager[b-s0gto5k24c] {
    display: grid;
    grid-template-columns: minmax(120px, 1fr) auto minmax(120px, 1fr);
    align-items: center;
    justify-content: stretch;
    gap: 10px;
    flex: 0 0 auto;
    width: 100%;
    margin-top: 10px;
    padding: 8px 0 2px;
}

.pathogen-pager-spacer[b-s0gto5k24c] {
    grid-column: 1;
    min-width: 0;
}

.pathogen-pager-controls[b-s0gto5k24c] {
    grid-column: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 6px;
}

.pathogen-pager button[b-s0gto5k24c] {
    min-width: 34px;
    padding: 0 10px;
}

.pathogen-pager button:disabled[b-s0gto5k24c] {
    opacity: .45;
    cursor: not-allowed;
}

.pathogen-pager button.active[b-s0gto5k24c],
.pathogen-pager button.active:disabled[b-s0gto5k24c] {
    opacity: 1;
    cursor: default;
}

.pathogen-pager-info[b-s0gto5k24c] {
    grid-column: 3;
    justify-self: end;
    min-width: 0;
    color: var(--pathogen-muted);
    font-size: 12px;
    font-weight: 900;
    text-align: right;
    white-space: nowrap;
}

.pathogen-detail-title[b-s0gto5k24c] {
    border-radius: 18px;
    background: linear-gradient(135deg, #eff6ff, #ecfeff);
    padding: 14px;
}

.pathogen-detail-title span[b-s0gto5k24c] {
    display: block;
    color: #0f4c81;
    font-size: 12px;
    font-weight: 950;
    margin-bottom: 4px;
}

.pathogen-detail-title h2[b-s0gto5k24c] {
    margin: 0;
    color: var(--pathogen-primary-dark);
    font-size: 22px;
    font-weight: 950;
    letter-spacing: -0.04em;
}

.pathogen-detail-title p[b-s0gto5k24c] {
    margin: 4px 0 0;
    color: var(--pathogen-muted);
    font-size: 12px;
    font-weight: 850;
}

.pathogen-detail-section[b-s0gto5k24c] {
    margin-top: 16px;
}

.pathogen-detail-section h3[b-s0gto5k24c] {
    margin: 0 0 8px;
    color: var(--pathogen-primary-dark);
    font-size: 14px;
    font-weight: 950;
}

.pathogen-detail-list[b-s0gto5k24c] {
    display: grid;
    gap: 8px;
    margin: 0;
}

.pathogen-detail-list div[b-s0gto5k24c] {
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr);
    align-items: center;
    min-height: 34px;
    border-radius: 12px;
    background: #f8fbfd;
    padding: 7px 10px;
}

.pathogen-detail-list dt[b-s0gto5k24c],
.pathogen-detail-list dd[b-s0gto5k24c] {
    margin: 0;
    min-width: 0;
    overflow-wrap: anywhere;
    font-size: 12px;
    font-weight: 800;
}

.pathogen-detail-list dt[b-s0gto5k24c] {
    color: var(--pathogen-muted);
}

.pathogen-detail-list dd[b-s0gto5k24c] {
    color: var(--pathogen-text);
}

.pathogen-mini-stat-grid[b-s0gto5k24c] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.pathogen-mini-stat-grid div[b-s0gto5k24c] {
    min-width: 0;
    border: 1px solid #e5edf7;
    border-radius: 14px;
    background: #fff;
    padding: 10px;
}

.pathogen-mini-stat-grid span[b-s0gto5k24c],
.pathogen-mini-stat-grid strong[b-s0gto5k24c] {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pathogen-mini-stat-grid span[b-s0gto5k24c] {
    color: var(--pathogen-muted);
    font-size: 11px;
    font-weight: 850;
}

.pathogen-mini-stat-grid strong[b-s0gto5k24c] {
    margin-top: 3px;
    color: var(--pathogen-primary-dark);
    font-size: 16px;
    font-weight: 950;
}

.pathogen-empty[b-s0gto5k24c] {
    display: grid;
    place-items: center;
    min-height: 120px;
    border: 1px dashed #cbd5e1;
    border-radius: 16px;
    background: #f8fafc;
    color: var(--pathogen-muted);
    font-size: 13px;
    font-weight: 850;
    text-align: center;
    padding: 16px;
}

.pathogen-empty.compact[b-s0gto5k24c] {
    min-height: 74px;
}

@media (max-width: 1380px) {
    .pathogen-kpi-strip[b-s0gto5k24c] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .pathogen-one-screen[b-s0gto5k24c] {
        grid-template-columns: minmax(220px, 24%) minmax(460px, 1fr) minmax(260px, 27%);
    }
}

@media (max-width: 1100px) {
    .pathogen-workspace[b-s0gto5k24c] {
        height: auto;
        overflow: visible;
    }

    .pathogen-search-panel[b-s0gto5k24c],
    .pathogen-kpi-strip[b-s0gto5k24c],
    .pathogen-one-screen[b-s0gto5k24c] {
        grid-template-columns: 1fr;
    }

    .pathogen-tree-panel[b-s0gto5k24c],
    .pathogen-center-panel[b-s0gto5k24c],
    .pathogen-detail-panel[b-s0gto5k24c] {
        height: auto;
        max-height: none;
    }

    .pathogen-table-shell[b-s0gto5k24c] {
        max-height: 560px;
    }
}

.pathogen-row-actions[b-s0gto5k24c] {
    display: flex;
    gap: 0.35rem;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

.pathogen-row-action[b-s0gto5k24c] {
    border: 1px solid rgba(18, 73, 125, 0.28);
    background: #ffffff;
    color: #0b3b67;
    border-radius: 0.65rem;
    padding: 0.35rem 0.7rem;
    font-weight: 800;
    font-size: 0.78rem;
    line-height: 1;
}

.pathogen-row-action:hover[b-s0gto5k24c] {
    background: rgba(17, 86, 154, 0.08);
}

.pathogen-row-action.danger[b-s0gto5k24c] {
    border-color: rgba(220, 53, 69, 0.34);
    color: #b4232f;
}

.pathogen-row-action.danger:hover[b-s0gto5k24c] {
    background: rgba(220, 53, 69, 0.08);
}

.pathogen-modal-backdrop[b-s0gto5k24c] {
    position: fixed;
    inset: 0;
    z-index: 2500;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
    background: rgba(5, 19, 32, 0.48);
    backdrop-filter: blur(2px);
}

.pathogen-modal[b-s0gto5k24c] {
    width: min(760px, calc(100vw - 2rem));
    max-height: calc(100vh - 3rem);
    overflow: auto;
    background: #ffffff;
    border-radius: 1.1rem;
    box-shadow: 0 22px 70px rgba(7, 32, 54, 0.28);
    border: 1px solid rgba(148, 163, 184, 0.3);
    padding: 1.1rem;
}

.pathogen-modal-small[b-s0gto5k24c] {
    width: min(520px, calc(100vw - 2rem));
}

.pathogen-modal-head[b-s0gto5k24c] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.pathogen-modal-head h3[b-s0gto5k24c] {
    margin: 0;
    color: #082f56;
    font-size: 1.08rem;
    font-weight: 900;
}

.pathogen-modal-head p[b-s0gto5k24c],
.pathogen-delete-note[b-s0gto5k24c] {
    margin: 0.25rem 0 0;
    color: #607087;
    font-weight: 700;
    font-size: 0.86rem;
}

.pathogen-modal-close[b-s0gto5k24c] {
    border: 0;
    background: #eef4fb;
    color: #0b3b67;
    width: 2rem;
    height: 2rem;
    border-radius: 999px;
    font-weight: 900;
    font-size: 1.25rem;
    line-height: 1;
}

.pathogen-form-grid[b-s0gto5k24c] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
}

.pathogen-form-grid label[b-s0gto5k24c] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    color: #0b3b67;
    font-size: 0.78rem;
    font-weight: 900;
}

.pathogen-form-grid label.wide[b-s0gto5k24c] {
    grid-column: 1 / -1;
}

.pathogen-form-grid input[b-s0gto5k24c],
.pathogen-form-grid textarea[b-s0gto5k24c] {
    width: 100%;
    border: 1px solid rgba(148, 163, 184, 0.5);
    border-radius: 0.75rem;
    padding: 0.65rem 0.75rem;
    color: #0f2841;
    font-weight: 700;
    background: #f8fbff;
}

.pathogen-modal-actions[b-s0gto5k24c] {
    display: flex;
    justify-content: flex-end;
    gap: 0.55rem;
    margin-top: 1rem;
}

.pathogen-btn-danger[b-s0gto5k24c] {
    border: 1px solid #dc3545;
    background: #dc3545;
    color: #ffffff;
}

.pathogen-modal-message[b-s0gto5k24c] {
    border-radius: 0.75rem;
    padding: 0.65rem 0.8rem;
    margin-bottom: 0.8rem;
    font-weight: 800;
}

.pathogen-modal-message.error[b-s0gto5k24c] {
    background: #fff1f2;
    color: #b4232f;
    border: 1px solid rgba(220, 53, 69, 0.25);
}

.pathogen-modal-message.success[b-s0gto5k24c] {
    background: #ecfdf3;
    color: #027a48;
    border: 1px solid rgba(2, 122, 72, 0.22);
}

@media (max-width: 900px) {
    .pathogen-form-grid[b-s0gto5k24c] {
        grid-template-columns: 1fr;
    }
}

.pathogen-row-hint[b-s0gto5k24c] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 1.75rem;
    padding: 0 0.6rem;
    border: 1px solid rgba(11, 55, 100, 0.16);
    border-radius: 999px;
    color: #536b84;
    background: #f7fbff;
    font-size: 0.78rem;
    font-weight: 800;
}
/* /Components/Shared/AuthStatusBadge.razor.rz.scp.css */
.ke-auth-status[b-n8f6n62uq4] {
    min-width: 116px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    padding: 0 .55rem;
    border-radius: 999px;
    color: #fff;
    white-space: nowrap;
}

.ke-auth-dot[b-n8f6n62uq4] {
    width: 8px;
    height: 8px;
    flex: 0 0 auto;
    border-radius: 999px;
    background: #fbbf24;
    box-shadow: 0 0 0 3px rgba(251, 191, 36, .18);
}

.ke-auth-status-signed .ke-auth-dot[b-n8f6n62uq4] {
    background: #22c55e;
    box-shadow: 0 0 0 3px rgba(34, 197, 94, .18);
}

.ke-auth-status-anonymous .ke-auth-dot[b-n8f6n62uq4] {
    background: #f97316;
    box-shadow: 0 0 0 3px rgba(249, 115, 22, .18);
}

.ke-auth-text[b-n8f6n62uq4] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    line-height: 1.05;
}

.ke-auth-main[b-n8f6n62uq4] {
    max-width: 128px;
    overflow: hidden;
    font-size: .75rem;
    font-weight: 950;
    text-overflow: ellipsis;
}

.ke-auth-sub[b-n8f6n62uq4] {
    max-width: 128px;
    margin-top: .12rem;
    overflow: hidden;
    color: rgba(235, 247, 255, .72);
    font-size: .58rem;
    font-weight: 800;
    text-overflow: ellipsis;
}

@media (max-width: 1240px) {
    .ke-auth-status[b-n8f6n62uq4] { min-width: 92px; }
    .ke-auth-sub[b-n8f6n62uq4] { display: none; }
}
/* /Components/Shared/DataRecordActions.razor.rz.scp.css */
.oh-record-actions[b-766nnlz01d] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.oh-action-btn[b-766nnlz01d],
.oh-modal-btn[b-766nnlz01d] {
    border: 1px solid transparent;
    border-radius: 10px;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
    min-height: 30px;
    padding: 0 12px;
    cursor: pointer;
    box-shadow: 0 8px 16px rgba(15, 23, 42, .08);
}

.oh-action-btn-sm[b-766nnlz01d] {
    min-height: 26px;
    padding: 0 9px;
    font-size: 11px;
}

.oh-action-btn-edit[b-766nnlz01d],
.oh-modal-btn-primary[b-766nnlz01d] {
    background: #0f3b63 !important;
    border-color: #0f3b63 !important;
    color: #fff !important;
}

.oh-action-btn-edit:hover[b-766nnlz01d],
.oh-modal-btn-primary:hover:not(:disabled)[b-766nnlz01d] {
    background: #08233c !important;
    border-color: #08233c !important;
    color: #fff !important;
}

.oh-action-btn-danger[b-766nnlz01d],
.oh-modal-btn-danger[b-766nnlz01d] {
    background: #fff5f5 !important;
    border-color: #f4b6b6 !important;
    color: #b42318 !important;
}

.oh-action-btn-danger:hover[b-766nnlz01d],
.oh-modal-btn-danger:hover:not(:disabled)[b-766nnlz01d] {
    background: #dc2626 !important;
    border-color: #dc2626 !important;
    color: #fff !important;
}

.oh-modal-btn-outline[b-766nnlz01d] {
    background: #fff !important;
    border-color: #cbd5e1 !important;
    color: #0f172a !important;
}

.oh-modal-btn-outline:hover[b-766nnlz01d] {
    background: #f1f5f9 !important;
    border-color: #94a3b8 !important;
    color: #0f172a !important;
}

.oh-modal-btn:disabled[b-766nnlz01d] {
    opacity: .55;
    cursor: not-allowed;
    box-shadow: none;
}

.oh-modal-actions[b-766nnlz01d] {
    border-top: 1px solid #e2e8f0;
    padding-top: 12px;
}

/* hotfix_012: no white modal buttons on white modal surfaces. */
.oh-modal-btn-primary[b-766nnlz01d] {
    background: #0a2a62 !important;
    border-color: #06183f !important;
    color: #ffffff !important;
}

.oh-modal-btn-outline[b-766nnlz01d] {
    background: #334155 !important;
    border-color: #1e293b !important;
    color: #ffffff !important;
}

.oh-modal-btn-outline:hover:not(:disabled)[b-766nnlz01d] {
    background: #1e293b !important;
    border-color: #0f172a !important;
    color: #ffffff !important;
}

.oh-modal-btn-danger[b-766nnlz01d] {
    background: #dc2626 !important;
    border-color: #991b1b !important;
    color: #ffffff !important;
}

/* hotfix_020: record mutation actions should not be white/low-contrast. */
.oh-action-btn-edit[b-766nnlz01d],
.oh-modal-btn-primary[b-766nnlz01d] {
    background: #1d4ed8 !important;
    border-color: #1e40af !important;
    color: #ffffff !important;
}

.oh-action-btn-danger[b-766nnlz01d],
.oh-modal-btn-danger[b-766nnlz01d] {
    background: #dc2626 !important;
    border-color: #991b1b !important;
    color: #ffffff !important;
}

.oh-modal-btn-outline[b-766nnlz01d] {
    background: #334155 !important;
    border-color: #1e293b !important;
    color: #ffffff !important;
}
/* /Components/Shared/OhPager.razor.rz.scp.css */
.oh-pager[b-fhmfahiakj] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 0.75rem;
    width: 100%;
    margin-top: 0.75rem;
}

.oh-pager-controls[b-fhmfahiakj] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    min-width: 0;
}

.oh-pager-controls button[b-fhmfahiakj] {
    min-width: 2.1rem;
    min-height: 2.1rem;
    border: 1px solid rgba(33, 92, 156, 0.18);
    border-radius: 0.65rem;
    background: #fff;
    color: #0b3764;
    font-weight: 800;
    cursor: pointer;
}

.oh-pager-controls button.active[b-fhmfahiakj],
.oh-pager-controls button:disabled.active[b-fhmfahiakj] {
    background: #0b3764;
    border-color: #0b3764;
    color: #fff;
}

.oh-pager-controls button:disabled:not(.active)[b-fhmfahiakj] {
    color: rgba(11, 55, 100, 0.35);
    cursor: not-allowed;
}

.oh-pager-range[b-fhmfahiakj] {
    justify-self: end;
    color: #536b84;
    font-size: 0.9rem;
    font-weight: 800;
    white-space: nowrap;
}

@media (max-width: 900px) {
    .oh-pager[b-fhmfahiakj] {
        grid-template-columns: 1fr;
        justify-items: center;
    }

    .oh-pager-spacer[b-fhmfahiakj] {
        display: none;
    }

    .oh-pager-range[b-fhmfahiakj] {
        justify-self: center;
    }
}
