/* /Components/Dashboard/DashboardSummary.razor.rz.scp.css */
/* ── Summary panel ─────────────────────────────────────────────────────── */

.summary-panel[b-tlvqr0ihne] {
    display: flex;
    gap: 1.5rem;
    align-items: end;
    padding: 1rem 1.25rem;
    background: rgba(255,255,255,0.04);
    border-radius: 12px;
    border: 1px solid rgba(255,255,255,0.08);
    flex-wrap: wrap;
}

.summary-counter[b-tlvqr0ihne] {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.counter-value[b-tlvqr0ihne] {
    font-size: 2.25rem;
    font-weight: 800;
    line-height: 1;
    color: #E0E4EA;
}

.counter-label[b-tlvqr0ihne] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #667788;
    margin-top: 0.2rem;
}

.summary-counter.pass .counter-value[b-tlvqr0ihne]  { color: #4CAF50; }
.summary-counter.fail .counter-value[b-tlvqr0ihne]  { color: #B0171E; }
.summary-counter.yield .counter-value[b-tlvqr0ihne] { color: #FFC107; }

.summary-timestamp[b-tlvqr0ihne] {
    margin-left: auto;
    font-size: 0.75rem;
    color: #556677;
}

/* ── Responsive ───────────────────────────────────────────────────── */
@media (max-width: 480px) {
    .summary-panel[b-tlvqr0ihne] {
        gap: 1rem;
        padding: 0.75rem 1rem;
    }

    .counter-value[b-tlvqr0ihne] {
        font-size: 1.75rem;
    }

    .summary-timestamp[b-tlvqr0ihne] {
        margin-left: 0;
        flex-basis: 100%;
    }
}

/* ── Light theme ──────────────────────────────────────────────────────── */
html[data-theme="light"] .summary-panel[b-tlvqr0ihne]      { background: #ffffff; border-color: #d1dce8; }
html[data-theme="light"] .counter-value[b-tlvqr0ihne]      { color: #1a2535; }
html[data-theme="light"] .counter-label[b-tlvqr0ihne]      { color: #4a6278; }
html[data-theme="light"] .summary-timestamp[b-tlvqr0ihne]  { color: #64748b; }
html[data-theme="light"] .summary-counter.pass .counter-value[b-tlvqr0ihne]  { color: #15803d; }
html[data-theme="light"] .summary-counter.fail .counter-value[b-tlvqr0ihne]  { color: #b91c1c; }
html[data-theme="light"] .summary-counter.yield .counter-value[b-tlvqr0ihne] { color: #b45309; }
/* /Components/Dashboard/FailurePareto.razor.rz.scp.css */
/* ── Failure Pareto ────────────────────────────────────────────────────── */

.failure-pareto[b-ezxsv6364p] {
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 12px;
    padding: 1rem 1.25rem;
}

.failure-pareto h3[b-ezxsv6364p] {
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #667788;
    margin: 0 0 0.75rem;
}

.empty-pareto[b-ezxsv6364p] {
    color: #556677;
    text-align: center;
    padding: 1.5rem;
}

.pareto-list[b-ezxsv6364p] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.pareto-row[b-ezxsv6364p] {
    display: grid;
    grid-template-columns: 1.5rem 1fr 40% 3rem;
    align-items: center;
    gap: 0.5rem;
}

/* ── Responsive ───────────────────────────────────────────────────── */
@media (max-width: 480px) {
    .pareto-row[b-ezxsv6364p] {
        grid-template-columns: 1.5rem 1fr 3rem;
    }

    /* Hide the bar track on very small screens; keep rank, name, count */
    .pareto-bar-track[b-ezxsv6364p] {
        display: none;
    }
}

.pareto-rank[b-ezxsv6364p] {
    font-size: 0.8rem;
    color: #667788;
    text-align: right;
}

.pareto-name[b-ezxsv6364p] {
    font-size: 0.85rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.pareto-bar-track[b-ezxsv6364p] {
    height: 14px;
    background: rgba(255,255,255,0.06);
    border-radius: 4px;
    overflow: hidden;
}

.pareto-bar[b-ezxsv6364p] {
    height: 100%;
    background: #B0171E;
    border-radius: 4px;
    min-width: 4px;
    transition: width 0.5s ease;
}

.pareto-count[b-ezxsv6364p] {
    font-size: 0.85rem;
    font-weight: 700;
    text-align: right;
    color: #B0171E;
}

/* ── Light theme ──────────────────────────────────────────────────────── */
html[data-theme="light"] .failure-pareto[b-ezxsv6364p]          { background: #ffffff; border-color: #d1dce8; }
html[data-theme="light"] .failure-pareto h3[b-ezxsv6364p]       { color: #4a6278; }
html[data-theme="light"] .empty-pareto[b-ezxsv6364p]            { color: #64748b; }
html[data-theme="light"] .pareto-rank[b-ezxsv6364p]             { color: #4a6278; }
html[data-theme="light"] .pareto-bar-track[b-ezxsv6364p]        { background: rgba(0,0,0,0.07); }
/* /Components/Dashboard/StationCard.razor.rz.scp.css */
/* ── Station card ──────────────────────────────────────────────────────── */

.station-card[b-ngpfyg460r] {
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 12px;
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    transition: border-color 0.3s;
}

.station-card.yield-good[b-ngpfyg460r]         { border-left: 4px solid #4CAF50; }
.station-card.yield-warning[b-ngpfyg460r]      { border-left: 4px solid #FF9800; }
.station-card.yield-poor[b-ngpfyg460r]         { border-left: 4px solid #B0171E; }
.station-card.yield-idle[b-ngpfyg460r]         { border-left: 4px solid #546E7A; opacity: 0.6; }
.station-card.yield-broken[b-ngpfyg460r]       { border-left: 4px solid #B0171E; background: rgba(176,23,30,0.10); }
.station-card.yield-planned-down[b-ngpfyg460r] { border-left: 4px solid #546E7A; background: rgba(84,110,122,0.12); opacity: 0.75; }

/* ── Header ───────────────────────────────────────────────────────────── */

.station-header[b-ngpfyg460r] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.station-id[b-ngpfyg460r] {
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: 0.03em;
}

.status-dot[b-ngpfyg460r] {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    flex-shrink: 0;
}

.status-running[b-ngpfyg460r]       { background: #2196F3; animation: pulse-dot 1.5s infinite; }
.status-idle[b-ngpfyg460r]          { background: #546E7A; }
.status-done[b-ngpfyg460r]          { background: #78909C; }
.status-broken[b-ngpfyg460r]        { background: #B0171E; animation: pulse-dot 2s infinite; }
.status-planned-down[b-ngpfyg460r]  { background: #546E7A; }

@@keyframes pulse-dot {
    0%[b-ngpfyg460r], 100%[b-ngpfyg460r] { opacity: 1; }
    50%[b-ngpfyg460r] { opacity: 0.3; }
}

/* ── Yield ────────────────────────────────────────────────────────────── */

.yield-value[b-ngpfyg460r] {
    font-size: 3rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.02em;
}

.yield-good .yield-value[b-ngpfyg460r]  { color: #4CAF50; }
.yield-warning .yield-value[b-ngpfyg460r] { color: #FF9800; }
.yield-poor .yield-value[b-ngpfyg460r]  { color: #B0171E; }
.yield-idle .yield-value[b-ngpfyg460r]  { color: #546E7A; }

/* ── Verdict strip ────────────────────────────────────────────────────── */

.verdict-strip[b-ngpfyg460r] {
    display: flex;
    gap: 5px;
    padding: 0.25rem 0;
}

.verdict-dot[b-ngpfyg460r] {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    flex-shrink: 0;
}

.dot-pass[b-ngpfyg460r]  { background: #4CAF50; }
.dot-fail[b-ngpfyg460r]  { background: #B0171E; }
.dot-other[b-ngpfyg460r] { background: #546E7A; }

/* ── Responsive ───────────────────────────────────────────────────── */
@media (max-width: 640px) {
    .station-card[b-ngpfyg460r] {
        padding: 0.9rem 1rem;
    }

    .yield-value[b-ngpfyg460r] {
        font-size: 2.25rem;
    }

    .station-id[b-ngpfyg460r] {
        font-size: 1.2rem;
    }
}

/* ── Meta ─────────────────────────────────────────────────────────────── */

.station-meta[b-ngpfyg460r] {
    font-size: 0.8rem;
    color: #8899AA;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.current-test[b-ngpfyg460r] {
    color: #2196F3;
    font-weight: 600;
}

.running-indicator[b-ngpfyg460r] {
    font-size: 0.65rem;
    margin-right: 0.25rem;
}

.elapsed[b-ngpfyg460r] {
    font-weight: 400;
    opacity: 0.7;
    margin-left: 0.25rem;
}

.meta-row[b-ngpfyg460r] {
    display: flex;
    justify-content: space-between;
}

.streak-warning[b-ngpfyg460r] {
    color: #FF9800;
    font-weight: 700;
    font-size: 0.85rem;
    margin-top: 0.25rem;
}

/* ── Down state banner ────────────────────────────────────────────────── */

.down-banner[b-ngpfyg460r] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 0.75rem;
    border-radius: 6px;
    font-weight: 700;
    font-size: 0.9rem;
    letter-spacing: 0.04em;
}

.down-banner-broken[b-ngpfyg460r]  { background: rgba(176,23,30,0.25); color: #FF6B6B; }
.down-banner-planned[b-ngpfyg460r] { background: rgba(84,110,122,0.20); color: #90A4AE; }

.down-icon[b-ngpfyg460r]    { font-size: 1rem; }
.down-elapsed[b-ngpfyg460r] { margin-left: auto; font-weight: 400; font-size: 0.8rem; opacity: 0.85; }

.down-reason[b-ngpfyg460r] {
    font-size: 0.78rem;
    color: #8899AA;
    font-style: italic;
    padding: 0 0.25rem;
}

/* ── KPI row (UPH + FPY) ─────────────────────────────────────────────── */

.kpi-row[b-ngpfyg460r] { font-weight: 600; color: #90A4AE; }
.fpy-good[b-ngpfyg460r]    { color: #4CAF50; }
.fpy-warning[b-ngpfyg460r] { color: #FF9800; }
.fpy-poor[b-ngpfyg460r]    { color: #B0171E; }

/* ── Long-idle warning ────────────────────────────────────────────────── */

.idle-warning[b-ngpfyg460r] {
    color: #FF9800;
    font-size: 0.78rem;
    margin-top: 0.25rem;
}

/* ── Light theme ──────────────────────────────────────────────────────── */
html[data-theme="light"] .station-card[b-ngpfyg460r] { background: #ffffff; border-color: #d1dce8; }
html[data-theme="light"] .station-card.yield-broken[b-ngpfyg460r]       { background: rgba(176,23,30,0.07); }
html[data-theme="light"] .station-card.yield-planned-down[b-ngpfyg460r] { background: rgba(84,110,122,0.07); }
html[data-theme="light"] .station-meta[b-ngpfyg460r]  { color: #4a6278; }
html[data-theme="light"] .down-reason[b-ngpfyg460r]   { color: #4a6278; }
html[data-theme="light"] .kpi-row[b-ngpfyg460r]       { color: #4a6278; }
html[data-theme="light"] .down-banner-broken[b-ngpfyg460r]  { background: rgba(176,23,30,0.10);  color: #b91c1c; }
html[data-theme="light"] .down-banner-planned[b-ngpfyg460r] { background: rgba(84,110,122,0.10); color: #475569; }
/* /Components/Dashboard/YieldTimelineChart.razor.rz.scp.css */
/* ── Yield timeline chart ───────────────────────────────────────────────── */

.yield-chart-placeholder[b-op13ohkgxu] {
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 12px;
    padding: 1rem 1.25rem;
}

.yield-chart-placeholder h3[b-op13ohkgxu] {
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #667788;
    margin: 0 0 0.5rem;
}

.yield-chart-canvas[b-op13ohkgxu] {
    width: 100%;
}

.empty-chart[b-op13ohkgxu] {
    color: #556677;
    text-align: center;
    padding: 2rem;
}

/* ── Light theme ──────────────────────────────────────────────────────── */
html[data-theme="light"] .yield-chart-placeholder[b-op13ohkgxu] { background: #ffffff; border-color: #d1dce8; }
html[data-theme="light"] .yield-chart-placeholder h3[b-op13ohkgxu] { color: #4a6278; }
html[data-theme="light"] .empty-chart[b-op13ohkgxu] { color: #64748b; }
/* /Components/Pages/Dashboard.razor.rz.scp.css */
/* ── PLEASE / test health board (top of page) ────────────────────────── */

.home-health-board[b-y6ualib644] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    padding: 1rem 1.5rem 0;
    background: rgba(0,0,0,0.18);
}

.home-health-panel[b-y6ualib644] {
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 8px;
    padding: 0.85rem 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.home-health-panel__title[b-y6ualib644] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: #8899AA;
}

.home-health-panel__body[b-y6ualib644] {
    flex: 1;
}

.home-health-panel__link[b-y6ualib644] {
    font-size: 0.75rem;
    color: #38bdf8;
    text-decoration: none;
    align-self: flex-start;
}

.home-health-panel__link:hover[b-y6ualib644] { text-decoration: underline; }

.home-health-stats[b-y6ualib644] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.home-health-stat[b-y6ualib644] {
    padding: 3px 10px;
    border-radius: 6px;
    font-size: 0.78rem;
    font-weight: 700;
    border: 1px solid transparent;
}

.home-health-stat--pass[b-y6ualib644]    { background: rgba(52,211,153,0.1);  color: #34d399; border-color: rgba(52,211,153,0.25); }
.home-health-stat--fail[b-y6ualib644]    { background: rgba(248,113,113,0.1); color: #f87171; border-color: rgba(248,113,113,0.25); }
.home-health-stat--warn[b-y6ualib644]    { background: rgba(251,191,36,0.1);  color: #fbbf24; border-color: rgba(251,191,36,0.25); }
.home-health-stat--run[b-y6ualib644]     { background: rgba(96,165,250,0.1);  color: #60a5fa; border-color: rgba(96,165,250,0.25); }
.home-health-stat--idle[b-y6ualib644]    { background: rgba(100,116,139,0.1); color: #94a3b8; border-color: rgba(100,116,139,0.25); }
.home-health-stat--loading[b-y6ualib644] { background: rgba(100,116,139,0.05); color: #667788; border-color: rgba(100,116,139,0.12); }

.home-health-recents[b-y6ualib644] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3rem;
    margin-top: 0.4rem;
}

.home-health-badge[b-y6ualib644] {
    padding: 2px 7px;
    border-radius: 4px;
    font-size: 0.7rem;
    font-weight: 600;
    font-family: monospace;
}

.home-health-badge--pass[b-y6ualib644] { background: rgba(52,211,153,0.15);  color: #34d399; }
.home-health-badge--fail[b-y6ualib644] { background: rgba(248,113,113,0.15); color: #f87171; }
.home-health-badge--run[b-y6ualib644]  { background: rgba(96,165,250,0.15);  color: #60a5fa; }

.home-health-skeleton[b-y6ualib644] {
    height: 1.4rem;
    border-radius: 4px;
    background: rgba(255,255,255,0.06);
    animation: please-pulse 1.4s ease-in-out infinite;
}

.home-health-search-form[b-y6ualib644] {
    display: flex;
    gap: 0.4rem;
}

.home-health-search-input[b-y6ualib644] {
    flex: 1;
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.14);
    color: #E0E4EA;
    border-radius: 5px;
    padding: 0.3rem 0.5rem;
    font-size: 0.82rem;
}

.home-health-search-btn[b-y6ualib644] {
    background: #38bdf8;
    color: #0f172a;
    border: none;
    border-radius: 5px;
    padding: 0.3rem 0.7rem;
    font-size: 0.82rem;
    font-weight: 700;
    cursor: pointer;
}

.home-health-hint[b-y6ualib644] {
    margin: 0.35rem 0 0;
    font-size: 0.7rem;
    color: #667788;
}

@media (max-width: 900px) {
    .home-health-board[b-y6ualib644] {
        grid-template-columns: 1fr;
    }
}

/* ── Dashboard page layout ─────────────────────────────────────────────── */

.dashboard[b-y6ualib644] {
    background-color: var(--bg-dashboard);
    color: #E0E4EA;
    min-height: 100vh;
    padding: 0;
    display: flex;
    flex-direction: column;
}

/* ── Filter bar ───────────────────────────────────────────────────────── */

.filter-bar[b-y6ualib644] {
    display: flex;
    gap: 1rem;
    align-items: end;
    flex-wrap: wrap;
    padding: 0.5rem 1.5rem;
    background: rgba(0,0,0,0.25);
    transition: opacity 0.3s, max-height 0.3s;
    max-height: 8rem;
    overflow: hidden;
}

.filter-hidden .filter-bar[b-y6ualib644] {
    opacity: 0;
    max-height: 0;
    padding: 0 1.5rem;
}

.filter-bar label[b-y6ualib644] {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #8899AA;
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.filter-bar input[b-y6ualib644],
.filter-bar select[b-y6ualib644] {
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.15);
    color: #E0E4EA;
    border-radius: 4px;
    padding: 0.25rem 0.5rem;
    font-size: 0.85rem;
    min-width: 6rem;
}

.btn-apply[b-y6ualib644] {
    background: var(--color-fail, #B0171E);
    color: white;
    border: none;
    border-radius: 4px;
    padding: 0.35rem 1rem;
    font-size: 0.85rem;
    cursor: pointer;
}


.btn-apply:hover[b-y6ualib644] {
    opacity: 0.85;
}

/* ── Grid layout ──────────────────────────────────────────────────────── */

.dashboard-grid[b-y6ualib644] {
    display: grid;
    grid-template-columns: minmax(280px, 35%) 1fr;
    gap: 1rem;
    padding: 1rem 1.5rem;
    flex: 1;
}

.station-cards[b-y6ualib644] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 1rem;
    align-content: start;
}

.right-panel[b-y6ualib644] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* ── Loading / empty states ───────────────────────────────────────────── */

.loading[b-y6ualib644] {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 50vh;
    font-size: 1.5rem;
    color: #667788;
}

.no-stations[b-y6ualib644] {
    grid-column: 1 / -1;
    text-align: center;
    padding: 3rem;
    color: #667788;
    font-size: 1.2rem;
}

/* ── Responsive ───────────────────────────────────────────────────────── */

@media (max-width: 1280px) {
    .dashboard-grid[b-y6ualib644] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .filter-bar[b-y6ualib644] {
        padding: 0.5rem 0.75rem;
        gap: 0.6rem;
    }

    .filter-bar label[b-y6ualib644] {
        flex-basis: calc(50% - 0.3rem);
    }

    .btn-apply[b-y6ualib644] {
        flex: 1;
        text-align: center;
    }

    .dashboard-grid[b-y6ualib644] {
        padding: 0.75rem;
        gap: 0.75rem;
    }

    .station-cards[b-y6ualib644] {
        grid-template-columns: 1fr;
    }
}

/* ── Light theme ─────────────────────────────────────────────────────── */

html[data-theme="light"] .dashboard[b-y6ualib644] { background-color: #f0f4f8; color: #1a2535; }

html[data-theme="light"] .home-health-board[b-y6ualib644] { background: rgba(0,0,0,0.03); }
html[data-theme="light"] .home-health-panel[b-y6ualib644] { background: #ffffff; border-color: #d1dce8; }
html[data-theme="light"] .home-health-panel__title[b-y6ualib644] { color: #4a6278; }
html[data-theme="light"] .home-health-panel__link[b-y6ualib644] { color: #0284c7; }
html[data-theme="light"] .home-health-skeleton[b-y6ualib644] { background: rgba(0,0,0,0.07); }
html[data-theme="light"] .home-health-search-input[b-y6ualib644] { background: #f8fafc; border-color: #d1dce8; color: #1a2535; }
html[data-theme="light"] .home-health-search-btn[b-y6ualib644] { background: #0284c7; }
html[data-theme="light"] .home-health-hint[b-y6ualib644] { color: #7a9ab0; }

html[data-theme="light"] .filter-bar[b-y6ualib644] { background: rgba(0,0,0,0.05); }
html[data-theme="light"] .filter-bar label[b-y6ualib644] { color: #4a6278; }
html[data-theme="light"] .filter-bar input[b-y6ualib644],
html[data-theme="light"] .filter-bar select[b-y6ualib644] { background: #ffffff; border-color: #d1dce8; color: #1a2535; }

html[data-theme="light"] .loading[b-y6ualib644],
html[data-theme="light"] .no-stations[b-y6ualib644] { color: #7a9ab0; }
/* /Components/Pages/Home.razor.rz.scp.css */
.home-landing[b-2zw3mkxwzy] {
    max-width: 900px;
    margin: 0 auto;
    padding: 60px 24px 80px;
}

.home-landing__header[b-2zw3mkxwzy] {
    text-align: center;
    margin-bottom: 48px;
}

.home-landing__title[b-2zw3mkxwzy] {
    font-size: 2.4rem;
    font-weight: 800;
    color: #e2e8f0;
    letter-spacing: -0.02em;
    margin: 0 0 10px;
}

.home-landing__subtitle[b-2zw3mkxwzy] {
    color: #8fa8be;
    font-size: 1rem;
    margin: 0;
}

.home-landing__grid[b-2zw3mkxwzy] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 20px;
}

.home-landing__card[b-2zw3mkxwzy] {
    background: #1b2736;
    border: 1px solid #2c3e50;
    border-radius: 12px;
    padding: 28px 24px;
    text-decoration: none;
    color: inherit;
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition: transform 0.15s, box-shadow 0.15s, border-color 0.15s;
    box-shadow: 0 2px 8px rgba(0,0,0,0.25);
}

.home-landing__card:hover[b-2zw3mkxwzy] {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0,0,0,0.4);
    border-color: #38bdf8;
}

.home-landing__card-icon[b-2zw3mkxwzy] {
    font-size: 1.8rem;
    line-height: 1;
    margin-bottom: 4px;
}

.home-landing__card-title[b-2zw3mkxwzy] {
    font-size: 1.1rem;
    font-weight: 700;
    color: #e2e8f0;
}

.home-landing__card-desc[b-2zw3mkxwzy] {
    font-size: 0.875rem;
    color: #8fa8be;
    line-height: 1.55;
}
/* /Components/Pages/License.razor.rz.scp.css */
/* Dark-first (the app's default theme); light overrides via html[data-theme="light"]. */

.license-page[b-1kjv7odaoj] {
    max-width: 760px;
    padding: 1.5rem;
}

.license-page h1[b-1kjv7odaoj] {
    margin-bottom: 1.25rem;
}

.license-card[b-1kjv7odaoj] {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 10px;
    padding: 1.1rem 1.25rem;
    margin-bottom: 1.1rem;
}

.license-card__hdr[b-1kjv7odaoj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.license-card h2[b-1kjv7odaoj] {
    font-size: 1rem;
    margin: 0 0 0.75rem;
    opacity: 0.8;
}

.license-card__hdr h2[b-1kjv7odaoj] {
    margin-bottom: 0;
}

.license-grid[b-1kjv7odaoj] {
    display: grid;
    grid-template-columns: 9rem 1fr;
    row-gap: 0.4rem;
    column-gap: 1rem;
    margin: 0.5rem 0 0;
}

.license-grid dt[b-1kjv7odaoj] {
    opacity: 0.55;
}

.license-grid dd[b-1kjv7odaoj] {
    margin: 0;
}

.license-grid code[b-1kjv7odaoj] {
    font-size: 0.85rem;
    word-break: break-all;
}

.license-muted[b-1kjv7odaoj] {
    opacity: 0.6;
    margin: 0.6rem 0 0;
}

.license-label[b-1kjv7odaoj] {
    display: block;
    margin: 0.9rem 0 0.35rem;
    font-size: 0.85rem;
    opacity: 0.65;
}

.license-textarea[b-1kjv7odaoj] {
    width: 100%;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: 0.8rem;
    padding: 0.5rem 0.6rem;
    color: inherit;
    background: rgba(0, 0, 0, 0.22);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 6px;
    resize: vertical;
    box-sizing: border-box;
}

.license-btn[b-1kjv7odaoj] {
    margin-top: 0.6rem;
    padding: 0.45rem 0.9rem;
    color: inherit;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 6px;
    background: transparent;
    cursor: pointer;
}

.license-btn:hover[b-1kjv7odaoj] {
    background: rgba(255, 255, 255, 0.08);
}

.license-btn--primary[b-1kjv7odaoj] {
    background: #2563eb;
    border-color: #2563eb;
    color: #fff;
}

.license-btn--primary:hover[b-1kjv7odaoj] {
    background: #1d4ed8;
}

.license-result[b-1kjv7odaoj] {
    margin: 0.7rem 0 0;
    font-size: 0.9rem;
}

.license-result--ok[b-1kjv7odaoj] {
    color: #4ade80;
}

.license-result--err[b-1kjv7odaoj] {
    color: #f87171;
}

.license-badge[b-1kjv7odaoj] {
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.2rem 0.6rem;
    border-radius: 999px;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.license-badge--ok[b-1kjv7odaoj] {
    background: rgba(34, 197, 94, 0.16);
    color: #4ade80;
}

.license-badge--warn[b-1kjv7odaoj] {
    background: rgba(245, 158, 11, 0.16);
    color: #fbbf24;
}

.license-badge--err[b-1kjv7odaoj] {
    background: rgba(239, 68, 68, 0.16);
    color: #f87171;
}

.license-badge--muted[b-1kjv7odaoj] {
    background: rgba(148, 163, 184, 0.16);
    color: #94a3b8;
}

/* ── Light theme overrides ───────────────────────────────────────────────── */

html[data-theme="light"] .license-card[b-1kjv7odaoj] {
    background: #fff;
    border-color: #e2e2e2;
}

html[data-theme="light"] .license-textarea[b-1kjv7odaoj] {
    background: #fff;
    border-color: #d4d4d4;
}

html[data-theme="light"] .license-btn[b-1kjv7odaoj] {
    border-color: #d4d4d4;
}

html[data-theme="light"] .license-btn:hover[b-1kjv7odaoj] {
    background: rgba(0, 0, 0, 0.04);
}

html[data-theme="light"] .license-result--ok[b-1kjv7odaoj] {
    color: #15803d;
}

html[data-theme="light"] .license-result--err[b-1kjv7odaoj] {
    color: #b91c1c;
}

html[data-theme="light"] .license-badge--ok[b-1kjv7odaoj] {
    background: #dcfce7;
    color: #15803d;
}

html[data-theme="light"] .license-badge--warn[b-1kjv7odaoj] {
    background: #fef9c3;
    color: #92400e;
}

html[data-theme="light"] .license-badge--err[b-1kjv7odaoj] {
    background: #fee2e2;
    color: #b91c1c;
}

html[data-theme="light"] .license-badge--muted[b-1kjv7odaoj] {
    background: #f1f5f9;
    color: #64748b;
}
/* /Components/Pages/SitesOverview.razor.rz.scp.css */
.sites-page[b-2uo4heokmk] {
    padding: 1.5rem 2rem;
    max-width: 1200px;
    margin: 0 auto;
}

.sites-header[b-2uo4heokmk] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1.5rem;
}

.sites-title[b-2uo4heokmk] {
    font-size: 1.6rem;
    font-weight: 700;
    margin: 0;
}

.sites-controls[b-2uo4heokmk] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.hours-select[b-2uo4heokmk] {
    font-size: 0.85rem;
}

.last-updated[b-2uo4heokmk] {
    font-size: 0.78rem;
    color: #546E7A;
}

.sites-loading[b-2uo4heokmk], .sites-empty[b-2uo4heokmk] {
    text-align: center;
    padding: 3rem;
    color: #546E7A;
}

.sites-empty code[b-2uo4heokmk] {
    background: rgba(255,255,255,0.07);
    padding: 0.2rem 0.4rem;
    border-radius: 4px;
    font-size: 0.85rem;
}

/* ── Table ───────────────────────────────────────────────────────────── */

.sites-table[b-2uo4heokmk] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.9rem;
    margin-bottom: 2rem;
}

.sites-table thead th[b-2uo4heokmk] {
    text-align: left;
    padding: 0.6rem 1rem;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #546E7A;
    border-bottom: 1px solid rgba(255,255,255,0.08);
}

.sites-table thead th.num[b-2uo4heokmk] { text-align: right; }

.sites-table td[b-2uo4heokmk] {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid rgba(255,255,255,0.05);
    vertical-align: middle;
}

.sites-table td.num[b-2uo4heokmk] { text-align: right; font-variant-numeric: tabular-nums; }

.site-row[b-2uo4heokmk] {
    cursor: pointer;
    transition: background 0.15s;
}

.site-row:hover[b-2uo4heokmk] { background: rgba(255,255,255,0.04); }

.site-name[b-2uo4heokmk] { font-weight: 700; font-size: 1rem; }
.site-code[b-2uo4heokmk] { font-size: 0.72rem; color: #546E7A; margin-top: 0.1rem; }

.line-row[b-2uo4heokmk] { background: rgba(255,255,255,0.01); }
.line-name[b-2uo4heokmk] { font-size: 0.82rem; color: #78909C; padding-left: 1.5rem !important; }
.line-indent[b-2uo4heokmk] { color: #37474F; margin-right: 0.35rem; }
.line-stations[b-2uo4heokmk] { font-size: 0.72rem; color: #37474F; margin-left: 0.4rem; }

/* ── KPI colour classes ──────────────────────────────────────────────── */
td.good[b-2uo4heokmk] { color: #4CAF50; font-weight: 600; }
td.warn[b-2uo4heokmk] { color: #FF9800; font-weight: 600; }
td.poor[b-2uo4heokmk] { color: #B0171E; font-weight: 600; }

/* ── Yield chart section ─────────────────────────────────────────────── */

.sites-chart-section[b-2uo4heokmk] { margin-top: 1rem; }
.chart-title[b-2uo4heokmk] {
    font-size: 1rem;
    font-weight: 600;
    color: #78909C;
    margin-bottom: 0.75rem;
}

/* ── Light theme ──────────────────────────────────────────────────────── */
html[data-theme="light"] .last-updated[b-2uo4heokmk]    { color: #64748b; }
html[data-theme="light"] .sites-loading[b-2uo4heokmk],
html[data-theme="light"] .sites-empty[b-2uo4heokmk]     { color: #64748b; }
html[data-theme="light"] .sites-empty code[b-2uo4heokmk] { background: rgba(0,0,0,0.05); }
html[data-theme="light"] .sites-table thead th[b-2uo4heokmk] { color: #4a6278; border-bottom-color: #d1dce8; }
html[data-theme="light"] .sites-table td[b-2uo4heokmk]       { border-bottom-color: #e8eef4; }
html[data-theme="light"] .site-row:hover[b-2uo4heokmk]       { background: rgba(0,0,0,0.03); }
html[data-theme="light"] .line-name[b-2uo4heokmk]            { color: #4a6278; }
html[data-theme="light"] .line-indent[b-2uo4heokmk]          { color: #94a3b8; }
html[data-theme="light"] .line-stations[b-2uo4heokmk]        { color: #64748b; }
html[data-theme="light"] .chart-title[b-2uo4heokmk]          { color: #4a6278; }
/* /Components/Pages/Statistics.razor.rz.scp.css */
.statistics-page[b-mbofi03n77] {
    padding: 20px;
    max-width: 1600px;
    margin: 0 auto;
}

.statistics-page h1[b-mbofi03n77] {
    margin-bottom: 20px;
    color: #e2e8f0;
}

/* Filter Bar */
.filter-bar[b-mbofi03n77] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 16px;
    background: #1b2736;
    padding: 16px 20px;
    border-radius: 8px;
    border: 1px solid #2c3e50;
    margin-bottom: 24px;
}

.filter-field[b-mbofi03n77] {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.filter-field label[b-mbofi03n77] {
    font-weight: 600;
    font-size: 12px;
    color: #8fa8be;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

.filter-field input[type="number"][b-mbofi03n77] {
    width: 100px;
    padding: 7px 10px;
    border: 1px solid #2c3e50;
    border-radius: 4px;
    font-size: 14px;
    background: #141d26;
    color: #e2e8f0;
}

.filter-field input[type="number"]:focus[b-mbofi03n77] {
    outline: none;
    border-color: #38bdf8;
}

.filter-field input[type="text"][b-mbofi03n77] {
    width: 180px;
    padding: 7px 10px;
    border: 1px solid #2c3e50;
    border-radius: 4px;
    font-size: 14px;
    background: #141d26;
    color: #e2e8f0;
}

.filter-field input[type="text"][b-mbofi03n77]::placeholder {
    color: #506070;
}

.filter-field input[type="text"]:focus[b-mbofi03n77] {
    outline: none;
    border-color: #38bdf8;
}

.btn-refresh[b-mbofi03n77] {
    padding: 8px 20px;
    background-color: #38bdf8;
    color: #0f1923;
    border: none;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: background-color 0.2s;
    align-self: flex-end;
}

.btn-refresh:hover:not(:disabled)[b-mbofi03n77] {
    background-color: #7dd3fc;
}

.btn-refresh:disabled[b-mbofi03n77] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Status messages */
.status-message[b-mbofi03n77] {
    padding: 40px;
    text-align: center;
    color: #8fa8be;
    font-style: italic;
    font-size: 14px;
}

.status-message.error[b-mbofi03n77] {
    color: #f87171;
}

/* Summary line */
.results-summary[b-mbofi03n77] {
    font-size: 14px;
    color: #c8d9e6;
    margin-bottom: 10px;
}

.filtered-note[b-mbofi03n77] {
    color: #8fa8be;
    font-style: italic;
}

/* Table wrapper */
.table-wrapper[b-mbofi03n77] {
    overflow-x: auto;
}

/* Data table */
.data-table[b-mbofi03n77] {
    width: 100%;
    border-collapse: collapse;
    background: #1b2736;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid #2c3e50;
}

.data-table thead[b-mbofi03n77] {
    background: #141d26;
}

.data-table th[b-mbofi03n77] {
    padding: 11px 14px;
    text-align: left;
    font-weight: 600;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    white-space: nowrap;
    color: #8fa8be;
    border-bottom: 1px solid #2c3e50;
}

.data-table td[b-mbofi03n77] {
    padding: 10px 14px;
    border-bottom: 1px solid #243040;
    font-size: 14px;
    color: #c8d9e6;
}

.data-table tbody tr:last-child td[b-mbofi03n77] {
    border-bottom: none;
}

.data-table tbody tr.capability-row:hover[b-mbofi03n77] {
    background-color: #1f3044;
}

/* Expand column */
.col-expand[b-mbofi03n77] {
    width: 28px;
    text-align: center;
}

.expand-icon[b-mbofi03n77] {
    display: inline-block;
    transition: transform 0.15s, color 0.15s;
    cursor: pointer;
    font-size: 11px;
    color: #506070;
}

.expand-icon.expanded[b-mbofi03n77] {
    transform: rotate(90deg);
    color: #38bdf8;
}

.capability-row[b-mbofi03n77] {
    cursor: pointer;
}

.capability-row.row-expanded[b-mbofi03n77] {
    background-color: #1a2d42;
}

.capability-row.row-expanded td[b-mbofi03n77] {
    font-weight: 600;
    color: #e2e8f0;
}

/* Column sizing */
.col-num[b-mbofi03n77] {
    text-align: right;
    white-space: nowrap;
}

.col-name[b-mbofi03n77] {
    font-family: 'Consolas', 'Courier New', monospace;
    font-size: 13px;
    color: #7dd3fc;
}

.col-step[b-mbofi03n77],
.col-test[b-mbofi03n77] {
    font-size: 13px;
    color: #8fa8be;
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Cpk badges */
.cpk-badge[b-mbofi03n77] {
    display: inline-block;
    padding: 2px 10px;
    border-radius: 12px;
    font-weight: 700;
    font-size: 13px;
    font-variant-numeric: tabular-nums;
}

.cpk-bad[b-mbofi03n77]      { background: rgba(248, 113, 113, 0.15); color: #f87171; }
.cpk-marginal[b-mbofi03n77] { background: rgba(251, 191,  36, 0.12); color: #fbbf24; }
.cpk-good[b-mbofi03n77]     { background: rgba( 52, 211, 153, 0.12); color: #34d399; }
.cpk-unknown[b-mbofi03n77]  { background: rgba(143, 168, 190, 0.12); color: #8fa8be; }

/* Expanded detail row */
.detail-row td[b-mbofi03n77] {
    padding: 0;
    border-bottom: 2px solid #2c3e50;
    background-color: #141d26;
}

.detail-loading[b-mbofi03n77] {
    padding: 16px 20px;
    font-style: italic;
    color: #8fa8be;
    font-size: 13px;
}

.detail-panel[b-mbofi03n77] {
    padding: 16px 24px;
}

.detail-stats[b-mbofi03n77] {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 32px;
    margin-bottom: 10px;
}

.stat-item[b-mbofi03n77] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.stat-label[b-mbofi03n77] {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    color: #506070;
}

.stat-value[b-mbofi03n77] {
    font-size: 15px;
    font-variant-numeric: tabular-nums;
    color: #e2e8f0;
}

.pass-count[b-mbofi03n77] { color: #34d399; font-weight: 700; }
.fail-count[b-mbofi03n77] { color: #f87171; font-weight: 700; }
.separator[b-mbofi03n77]  { color: #506070; }

.limits-note[b-mbofi03n77] {
    margin-top: 8px;
    padding: 8px 12px;
    background: rgba(251, 191, 36, 0.08);
    border-left: 3px solid #fbbf24;
    border-radius: 3px;
    font-size: 13px;
    color: #fbbf24;
}

/* ── Responsive ──────────────────────────────────────────────────────────── */

/* Tablet — filter bar wraps, minor density reduction */
@media (max-width: 1024px) {
    .statistics-page[b-mbofi03n77] {
        padding: 16px;
    }

    .filter-bar[b-mbofi03n77] {
        gap: 12px;
    }

    .filter-field input[type="text"][b-mbofi03n77] {
        width: 140px;
    }
}

/* Small tablet / large phone — stack filters, hide secondary columns */
@media (max-width: 768px) {
    .statistics-page[b-mbofi03n77] {
        padding: 12px;
    }

    .statistics-page h1[b-mbofi03n77] {
        font-size: 1.3rem;
    }

    .filter-bar[b-mbofi03n77] {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }

    .filter-field input[type="text"][b-mbofi03n77],
    .filter-field input[type="number"][b-mbofi03n77] {
        width: 100%;
        box-sizing: border-box;
    }

    .btn-refresh[b-mbofi03n77] {
        grid-column: 1 / -1;
        width: 100%;
    }

    .table-wrapper[b-mbofi03n77] {
        -webkit-overflow-scrolling: touch;
    }

    /* Hide secondary columns at this breakpoint */
    .col-step[b-mbofi03n77],
    .col-test[b-mbofi03n77],
    .col-limits[b-mbofi03n77],
    .col-mean[b-mbofi03n77] {
        display: none;
    }

    .detail-stats[b-mbofi03n77] {
        gap: 14px 20px;
    }
}

/* Mobile — single-column layout, minimal table */
@media (max-width: 480px) {
    .statistics-page[b-mbofi03n77] {
        padding: 8px;
    }

    .statistics-page h1[b-mbofi03n77] {
        font-size: 1.15rem;
        margin-bottom: 14px;
    }

    .filter-bar[b-mbofi03n77] {
        grid-template-columns: 1fr;
        padding: 12px;
    }

    /* Also hide Station and Cp on small phones — keep: name, samples, Cpk */
    .col-station[b-mbofi03n77],
    .col-cp[b-mbofi03n77] {
        display: none;
    }

    .col-name[b-mbofi03n77] {
        font-size: 12px;
        max-width: 140px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .data-table th[b-mbofi03n77],
    .data-table td[b-mbofi03n77] {
        padding: 8px 8px;
        font-size: 12px;
    }

    .cpk-badge[b-mbofi03n77] {
        padding: 2px 6px;
        font-size: 12px;
    }

    .results-summary[b-mbofi03n77] {
        font-size: 12px;
    }

    .detail-stats[b-mbofi03n77] {
        grid-template-columns: 1fr 1fr;
        display: grid;
        gap: 12px 16px;
    }

    .stat-value[b-mbofi03n77] {
        font-size: 13px;
    }
}

/* ── Light theme ─────────────────────────────────────────────────────── */

html[data-theme="light"] .statistics-page h1[b-mbofi03n77] { color: #1a2535; }
html[data-theme="light"] .filter-bar[b-mbofi03n77] { background: #ffffff; border-color: #d1dce8; }
html[data-theme="light"] .filter-field label[b-mbofi03n77] { color: #4a6278; }
html[data-theme="light"] .filter-field input[type="number"][b-mbofi03n77],
html[data-theme="light"] .filter-field input[type="text"][b-mbofi03n77] { background: #f8fafc; border-color: #d1dce8; color: #1a2535; }
html[data-theme="light"] .filter-field input[type="text"][b-mbofi03n77]::placeholder { color: #7a9ab0; }
html[data-theme="light"] .status-message[b-mbofi03n77] { color: #4a6278; }
html[data-theme="light"] .results-summary[b-mbofi03n77] { color: #4a6278; }
html[data-theme="light"] .filtered-note[b-mbofi03n77] { color: #7a9ab0; }
html[data-theme="light"] .data-table[b-mbofi03n77] { background: #ffffff; border-color: #d1dce8; }
html[data-theme="light"] .data-table thead[b-mbofi03n77] { background: #f0f4f8; }
html[data-theme="light"] .data-table th[b-mbofi03n77] { color: #4a6278; border-bottom-color: #d1dce8; }
html[data-theme="light"] .data-table td[b-mbofi03n77] { color: #1a2535; border-bottom-color: #e8eef4; }
html[data-theme="light"] .data-table tbody tr.capability-row:hover[b-mbofi03n77] { background-color: #f0f4f8; }
html[data-theme="light"] .col-name[b-mbofi03n77] { color: #0284c7; }
html[data-theme="light"] .col-step[b-mbofi03n77],
html[data-theme="light"] .col-test[b-mbofi03n77] { color: #4a6278; }
html[data-theme="light"] .capability-row.row-expanded[b-mbofi03n77] { background-color: #e8f4fc; }
html[data-theme="light"] .capability-row.row-expanded td[b-mbofi03n77] { color: #1a2535; }
html[data-theme="light"] .detail-row td[b-mbofi03n77] { background-color: #f8fafc; border-bottom-color: #d1dce8; }
html[data-theme="light"] .stat-label[b-mbofi03n77] { color: #4a6278; }
html[data-theme="light"] .stat-value[b-mbofi03n77] { color: #1a2535; }
html[data-theme="light"] .separator[b-mbofi03n77] { color: #94a3b8; }
html[data-theme="light"] .expand-icon[b-mbofi03n77] { color: #7a9ab0; }
/* /Components/Pages/TestResultDetail.razor.rz.scp.css */
/* ── Test Result Detail — same design-token set as TestResults ──────────── */

.test-result-detail-page[b-1norijzfg0] {
    --tr-bg:           #1E2A35;
    --tr-surface:      #253340;
    --tr-surface-alt:  #2C3E4F;
    --tr-border:       rgba(255,255,255,0.20);
    --tr-text:         #E0E4EA;
    --tr-text-muted:   #8A9BB0;
    --tr-input-bg:     #1a2530;
    --tr-input-focus:  #1e2e3e;
    --tr-accent:       #2196F3;
    --tr-pass:         #4CAF50;
    --tr-fail:         #E53935;
    --tr-warn:         #FF9800;
    --tr-aborted:      #546E7A;
    --tr-header-bg:    #151f28;
    --tr-color-scheme: dark;

    padding: 24px;
    max-width: 1200px;
    margin: 0 auto;
    color: var(--tr-text);
}

html[data-theme="light"] .test-result-detail-page[b-1norijzfg0] {
    --tr-bg:           #f8fafc;
    --tr-surface:      #ffffff;
    --tr-surface-alt:  #f0f4f8;
    --tr-border:       #d1dce8;
    --tr-text:         #1a2535;
    --tr-text-muted:   #4a6278;
    --tr-input-bg:     #ffffff;
    --tr-input-focus:  #f0f4f8;
    --tr-accent:       #0284c7;
    --tr-header-bg:    #f0f4f8;
    --tr-color-scheme: light;
}

/* ── Page chrome ────────────────────────────────────────────────────────── */

.loading[b-1norijzfg0] {
    padding: 60px;
    text-align: center;
    color: var(--tr-text-muted);
    font-size: 18px;
    font-style: italic;
}

.error-message[b-1norijzfg0] {
    padding: 40px;
    text-align: center;
    background: rgba(229,57,53,0.1);
    border: 1px solid rgba(229,57,53,0.4);
    border-radius: 8px;
}

.error-message h2[b-1norijzfg0] { color: #E57373; margin-bottom: 10px; }
.error-message p[b-1norijzfg0]  { color: var(--tr-text); }

.report-actions[b-1norijzfg0] {
    display: flex;
    gap: 10px;
    margin-bottom: 20px;
}

.btn[b-1norijzfg0] {
    padding: 8px 18px;
    border-radius: 5px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    text-decoration: none;
    display: inline-block;
    border: none;
    transition: filter 0.15s;
}

.btn-secondary[b-1norijzfg0] {
    background: var(--tr-surface);
    color: var(--tr-text);
    border: 1px solid var(--tr-border);
}

.btn-secondary:hover[b-1norijzfg0] { filter: brightness(1.1); }

.btn-primary[b-1norijzfg0] {
    background: var(--tr-accent);
    color: white;
}

.btn-primary:hover[b-1norijzfg0] { filter: brightness(1.15); }

.report-title[b-1norijzfg0] {
    font-size: 1.4rem;
    font-weight: 700;
    color: var(--tr-text);
    margin-bottom: 20px;
}

/* ── Artifacts table (rendered directly in this component) ──────────────── */

.artifacts-section[b-1norijzfg0] {
    margin-top: 24px;
    border: 1px solid var(--tr-border);
    border-radius: 8px;
    overflow: hidden;
    background: var(--tr-surface);
}

.artifacts-section h4[b-1norijzfg0] {
    margin: 0;
    padding: 12px 18px;
    background: var(--tr-header-bg);
    border-bottom: 1px solid var(--tr-border);
    font-size: 14px;
    color: var(--tr-text);
    font-weight: 600;
}

.artifacts-table[b-1norijzfg0] {
    width: 100%;
    border-collapse: collapse;
    font-size: 13px;
}

.artifacts-table th[b-1norijzfg0] {
    padding: 9px 14px;
    text-align: left;
    background: var(--tr-header-bg);
    color: var(--tr-text-muted);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    font-weight: 600;
    border-bottom: 1px solid var(--tr-border);
}

.artifacts-table td[b-1norijzfg0] {
    padding: 9px 14px;
    border-bottom: 1px solid var(--tr-border);
    color: var(--tr-text);
}

.artifacts-table tbody tr:last-child td[b-1norijzfg0] { border-bottom: none; }
.artifacts-table tbody tr:hover[b-1norijzfg0] { background: var(--tr-surface-alt); }

.file-name[b-1norijzfg0] { font-family: 'Consolas', 'Courier New', monospace; font-weight: 600; }

.btn-download[b-1norijzfg0] {
    display: inline-block;
    padding: 4px 12px;
    background: transparent;
    border: 1px solid var(--tr-accent);
    color: var(--tr-accent);
    border-radius: 4px;
    font-size: 12px;
    text-decoration: none;
    white-space: nowrap;
    transition: background 0.15s, color 0.15s;
}

.btn-download:hover[b-1norijzfg0] { background: var(--tr-accent); color: white; }

/* ── Child component styles (mirrors TestResults.razor.css ::deep rules) ── */

[b-1norijzfg0] .no-data { padding: 48px; text-align: center; color: var(--tr-text-muted); font-style: italic; }

[b-1norijzfg0] .data-table {
    width: 100%;
    border-collapse: collapse;
    background: var(--tr-surface);
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid var(--tr-border);
}

[b-1norijzfg0] .data-table thead { background: var(--tr-header-bg); color: var(--tr-text-muted); }

[b-1norijzfg0] .data-table th {
    padding: 11px 15px;
    text-align: left;
    font-weight: 600;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 1px solid var(--tr-border);
}

[b-1norijzfg0] .data-table td {
    padding: 10px 15px;
    border-bottom: 1px solid var(--tr-border);
    font-size: 14px;
    color: var(--tr-text);
}

[b-1norijzfg0] .data-table tbody tr:last-child td { border-bottom: none; }
[b-1norijzfg0] .data-table tbody tr:hover { background: var(--tr-surface-alt); }

[b-1norijzfg0] .col-expand { width: 30px; text-align: center; }

[b-1norijzfg0] .expand-icon {
    display: inline-block;
    transition: transform 0.2s, color 0.2s;
    cursor: pointer;
    font-size: 12px;
    color: var(--tr-text-muted);
}

[b-1norijzfg0] .expand-icon.expanded { transform: rotate(90deg); color: var(--tr-accent); }

[b-1norijzfg0] .step-row { cursor: pointer; }

[b-1norijzfg0] .verdict-pass         { color: var(--tr-pass);    font-weight: 600; }
[b-1norijzfg0] .verdict-fail         { color: var(--tr-fail);    font-weight: 600; }
[b-1norijzfg0] .verdict-undetermined { color: var(--tr-warn);    font-weight: 600; }
[b-1norijzfg0] .verdict-aborted      { color: var(--tr-aborted); font-weight: 600; }
[b-1norijzfg0] .verdict-error        { color: var(--tr-fail);    font-weight: 600; }

[b-1norijzfg0] .verdict-row-pass         { border-left: 3px solid var(--tr-pass);    background: rgba(76,175,80,0.07); }
[b-1norijzfg0] .verdict-row-fail         { border-left: 3px solid var(--tr-fail);    background: rgba(229,57,53,0.07); }
[b-1norijzfg0] .verdict-row-undetermined { border-left: 3px solid var(--tr-warn);    background: rgba(255,152,0,0.07); }
[b-1norijzfg0] .verdict-row-aborted      { border-left: 3px solid var(--tr-aborted); background: rgba(84,110,122,0.07); }

/* ── ReportHeader ─────────────────────────────────────────────────────── */

[b-1norijzfg0] .report-header {
    padding: 18px 20px;
    border-radius: 8px;
    margin-bottom: 20px;
    border: 1px solid var(--tr-border);
    background: var(--tr-surface);
}

[b-1norijzfg0] .report-header.verdict-pass         { border-left: 4px solid var(--tr-pass); }
[b-1norijzfg0] .report-header.verdict-fail         { border-left: 4px solid var(--tr-fail); }
[b-1norijzfg0] .report-header.verdict-undetermined { border-left: 4px solid var(--tr-warn); }
[b-1norijzfg0] .report-header.verdict-aborted      { border-left: 4px solid var(--tr-aborted); }

[b-1norijzfg0] .verdict-badge {
    display: inline-block;
    padding: 5px 16px;
    border-radius: 20px;
    font-weight: 700;
    font-size: 13px;
    color: white;
    margin-bottom: 12px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

[b-1norijzfg0] .verdict-badge.verdict-pass         { background: var(--tr-pass); }
[b-1norijzfg0] .verdict-badge.verdict-fail         { background: var(--tr-fail); }
[b-1norijzfg0] .verdict-badge.verdict-undetermined { background: var(--tr-warn); color: #333; }
[b-1norijzfg0] .verdict-badge.verdict-aborted      { background: var(--tr-aborted); }

[b-1norijzfg0] .header-table { width: 100%; border-collapse: collapse; }
[b-1norijzfg0] .header-table td { padding: 4px 10px; font-size: 13px; color: var(--tr-text); }
[b-1norijzfg0] .header-table td.label { font-weight: 600; color: var(--tr-text-muted); width: 15%; white-space: nowrap; }
[b-1norijzfg0] .header-table td.value { width: 35%; font-family: 'Consolas', 'Courier New', monospace; word-break: break-word; }

[b-1norijzfg0] .verdict-text-pass         { color: var(--tr-pass);    font-weight: 700; }
[b-1norijzfg0] .verdict-text-fail         { color: var(--tr-fail);    font-weight: 700; }
[b-1norijzfg0] .verdict-text-undetermined { color: var(--tr-warn);    font-weight: 700; }
[b-1norijzfg0] .verdict-text-aborted      { color: var(--tr-aborted); font-weight: 700; }

[b-1norijzfg0] .config-snapshot-section { margin-top: 12px; border-top: 1px solid var(--tr-border); padding-top: 8px; }

[b-1norijzfg0] .config-snapshot-toggle {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 13px;
    font-weight: 600;
    color: var(--tr-text-muted);
    padding: 4px 0;
    display: flex;
    align-items: center;
    gap: 6px;
}
[b-1norijzfg0] .config-snapshot-toggle:hover { color: var(--tr-accent); }
[b-1norijzfg0] .toggle-icon { font-size: 11px; width: 12px; text-align: center; }

[b-1norijzfg0] .config-snapshot-table { width: 100%; border-collapse: collapse; margin-top: 8px; font-size: 13px; }
[b-1norijzfg0] .config-snapshot-table th {
    text-align: left;
    padding: 6px 10px;
    background: var(--tr-header-bg);
    border-bottom: 1px solid var(--tr-border);
    font-weight: 600;
    color: var(--tr-text-muted);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}
[b-1norijzfg0] .config-snapshot-table td { padding: 5px 10px; border-bottom: 1px solid var(--tr-border); }
[b-1norijzfg0] .config-snapshot-table .config-key   { font-family: 'Consolas', 'Courier New', monospace; color: var(--tr-text-muted); white-space: nowrap; width: 30%; }
[b-1norijzfg0] .config-snapshot-table .config-value { font-family: 'Consolas', 'Courier New', monospace; color: var(--tr-text); word-break: break-all; }

/* ── Step results ─────────────────────────────────────────────────────── */

[b-1norijzfg0] .step-results-table { margin-top: 20px; }
[b-1norijzfg0] .step-results-table h4 { margin-bottom: 10px; color: var(--tr-text); font-size: 15px; font-weight: 600; }

[b-1norijzfg0] .col-order    { width: 50px; text-align: center; }
[b-1norijzfg0] .col-name     { min-width: 200px; }
[b-1norijzfg0] .col-duration { width: 100px; }
[b-1norijzfg0] .col-verdict  { width: 100px; }
[b-1norijzfg0] .col-error    { max-width: 200px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

[b-1norijzfg0] .iteration-badge   { display: inline-block; padding: 1px 6px; background: var(--tr-surface-alt); border-radius: 10px; font-size: 11px; color: var(--tr-text-muted); margin-left: 6px; }
[b-1norijzfg0] .forced-badge      { margin-left: 4px; color: var(--tr-warn); }
[b-1norijzfg0] .measurement-count { font-size: 12px; color: var(--tr-text-muted); margin-left: 6px; }

[b-1norijzfg0] .measurement-row    { background: var(--tr-bg); font-size: 13px; }
[b-1norijzfg0] .measurement-row td { padding: 6px 15px; }
[b-1norijzfg0] .measurement-indent { padding-left: 40px !important; }

[b-1norijzfg0] .measurement-type-badge {
    display: inline-block;
    padding: 1px 6px;
    border-radius: 4px;
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    margin-right: 6px;
    color: white;
}

[b-1norijzfg0] .type-numeric { background: #1565C0; }
[b-1norijzfg0] .type-boolean { background: #00838F; }
[b-1norijzfg0] .type-string  { background: #6A1B9A; }
[b-1norijzfg0] .units { color: var(--tr-text-muted); font-size: 12px; margin-left: 2px; }

/* ── Pagination / buttons ─────────────────────────────────────────────── */

[b-1norijzfg0] .paged-step-results { margin-top: 10px; }

[b-1norijzfg0] .pagination         { display: flex; align-items: center; justify-content: center; gap: 15px; margin-top: 20px; padding: 15px; }
[b-1norijzfg0] .step-pagination    { display: flex; align-items: center; gap: 12px; margin-top: 10px; padding: 8px 0; font-size: 13px; color: var(--tr-text-muted); }
[b-1norijzfg0] .step-pagination-info { font-size: 13px; color: var(--tr-text-muted); margin-top: 8px; padding: 4px 0; }
[b-1norijzfg0] .page-indicator     { font-size: 13px; color: var(--tr-text-muted); }

[b-1norijzfg0] .btn-sm { padding: 5px 12px; font-size: 12px; background: var(--tr-surface-alt); color: var(--tr-text); border: 1px solid var(--tr-border); border-radius: 4px; cursor: pointer; transition: background 0.15s; }
[b-1norijzfg0] .btn-sm:hover:not(:disabled) { background: var(--tr-input-focus); }
[b-1norijzfg0] .btn-sm:disabled { opacity: 0.4; cursor: not-allowed; }

[b-1norijzfg0] .btn-outline { background: transparent; border: 1px solid var(--tr-accent); color: var(--tr-accent); border-radius: 4px; padding: 4px 10px; cursor: pointer; text-decoration: none; font-size: 12px; white-space: nowrap; }
[b-1norijzfg0] .btn-outline:hover { background: var(--tr-accent); color: white; }

[b-1norijzfg0] .tag-badge { display: inline-block; padding: 2px 8px; margin: 2px 4px 2px 0; background: var(--tr-surface-alt); border: 1px solid var(--tr-border); border-radius: 10px; font-size: 11px; color: var(--tr-text-muted); white-space: nowrap; }

/* ── Execution logs ───────────────────────────────────────────────────── */

[b-1norijzfg0] .execution-logs-section { margin-top: 20px; }

[b-1norijzfg0] .logs-toggle { background: var(--tr-surface); border: 1px solid var(--tr-border); border-radius: 6px; padding: 8px 16px; cursor: pointer; font-size: 14px; color: var(--tr-text); display: flex; align-items: center; gap: 8px; transition: background 0.15s; }
[b-1norijzfg0] .logs-toggle:hover { background: var(--tr-surface-alt); }
[b-1norijzfg0] .log-count   { font-size: 12px; color: var(--tr-text-muted); }
[b-1norijzfg0] .logs-loading, [b-1norijzfg0] .logs-empty { padding: 20px; text-align: center; color: var(--tr-text-muted); font-style: italic; }

[b-1norijzfg0] .log-table-panel  { margin-top: 10px; border: 1px solid var(--tr-border); border-radius: 6px; overflow: hidden; background: var(--tr-surface); }
[b-1norijzfg0] .log-table-header { display: flex; align-items: center; justify-content: space-between; padding: 10px 15px; background: var(--tr-header-bg); border-bottom: 1px solid var(--tr-border); }
[b-1norijzfg0] .log-table-header h3 { margin: 0; font-size: 14px; color: var(--tr-text); }
[b-1norijzfg0] .log-table-scroll { max-height: 400px; overflow-y: auto; }

[b-1norijzfg0] .log-data-table { width: 100%; border-collapse: collapse; font-size: 12px; font-family: 'Consolas', 'Courier New', monospace; }

[b-1norijzfg0] .log-column-headers th { padding: 6px 10px; background: var(--tr-header-bg); color: var(--tr-text-muted); text-align: left; font-size: 11px; text-transform: uppercase; letter-spacing: 0.3px; position: sticky; top: 0; }
[b-1norijzfg0] .log-column-filters td { padding: 3px 6px; background: var(--tr-surface); border-bottom: 1px solid var(--tr-border); }
[b-1norijzfg0] .log-column-filters input { width: 100%; background: var(--tr-input-bg); border: 1px solid var(--tr-border); border-radius: 3px; padding: 2px 6px; color: var(--tr-text); font-size: 11px; color-scheme: var(--tr-color-scheme); }

[b-1norijzfg0] .log-data-table tbody tr    { border-bottom: 1px solid var(--tr-border); }
[b-1norijzfg0] .log-data-table tbody tr td { padding: 4px 10px; color: var(--tr-text); }

[b-1norijzfg0] .level-error   { background: rgba(229,57,53,0.12); }
[b-1norijzfg0] .level-warning { background: rgba(255,152,0,0.10); }

[b-1norijzfg0] .log-table-footer { padding: 6px 15px; background: var(--tr-header-bg); border-top: 1px solid var(--tr-border); font-size: 11px; color: var(--tr-text-muted); }

/* ── Nested executions ────────────────────────────────────────────────── */

[b-1norijzfg0] .nested-executions-section { margin-top: 25px; }
[b-1norijzfg0] .nested-execution  { border: 1px solid var(--tr-border); border-radius: 6px; margin-bottom: 10px; overflow: hidden; }
[b-1norijzfg0] .nested-header     { padding: 10px 15px; background: var(--tr-surface); cursor: pointer; display: flex; align-items: center; gap: 10px; }
[b-1norijzfg0] .nested-header:hover { background: var(--tr-surface-alt); }
[b-1norijzfg0] .nested-title      { flex: 1; font-size: 14px; color: var(--tr-text); }
[b-1norijzfg0] .nested-verdict    { font-weight: 600; font-size: 13px; }
[b-1norijzfg0] .nested-body       { padding: 15px; border-top: 1px solid var(--tr-border); background: var(--tr-bg); }

[b-1norijzfg0] .depth-1 { margin-left: 20px; }
[b-1norijzfg0] .depth-2 { margin-left: 40px; }
[b-1norijzfg0] .depth-3 { margin-left: 60px; }

[b-1norijzfg0] .step-count-badge { display: inline-block; padding: 1px 8px; background: var(--tr-surface-alt); border-radius: 10px; font-size: 11px; color: var(--tr-text-muted); margin-left: 8px; }

/* ── Plotly charts (PlotlyChart child component) ──────────────────────── */

[b-1norijzfg0] .plotly-chart-wrapper {
    background: var(--tr-header-bg);
    border: 1px solid var(--tr-border);
    border-radius: 6px;
    overflow: hidden;
    margin-bottom: 16px;
}

[b-1norijzfg0] .plotly-chart-header {
    padding: 8px 14px;
    background: var(--tr-surface);
    border-bottom: 1px solid var(--tr-border);
    display: flex;
    align-items: center;
    gap: 12px;
}

[b-1norijzfg0] .plotly-chart-name { font-family: 'Consolas', 'Courier New', monospace; font-size: 13px; font-weight: 600; color: var(--tr-text); }
[b-1norijzfg0] .plotly-chart-desc { font-size: 12px; color: var(--tr-text-muted); }

[b-1norijzfg0] .plotly-chart-container { width: 100%; min-height: 360px; }

[b-1norijzfg0] .plotly-chart-loading,
[b-1norijzfg0] .plotly-chart-error {
    padding: 24px;
    text-align: center;
    font-size: 13px;
    color: var(--tr-text-muted);
    font-style: italic;
}
[b-1norijzfg0] .plotly-chart-error { color: var(--tr-fail); }

/* ── Print ────────────────────────────────────────────────────────────── */

@media print {
    .no-print[b-1norijzfg0], .report-actions[b-1norijzfg0] { display: none !important; }

    [b-1norijzfg0] .artifact-charts-section,
    [b-1norijzfg0] .plotly-chart-wrapper { display: none !important; }

    body[b-1norijzfg0], html[b-1norijzfg0], .test-result-detail-page[b-1norijzfg0] {
        background: white !important;
        color: black !important;
    }
}

/* ── Responsive ───────────────────────────────────────────────────────── */

@media (max-width: 768px) {
    .test-result-detail-page[b-1norijzfg0] { padding: 12px; }
    .report-actions[b-1norijzfg0] { flex-wrap: wrap; }
    .report-actions .btn[b-1norijzfg0] { flex: 1; text-align: center; }
    .artifact-image-figure[b-1norijzfg0] { max-width: 100%; }
}

@media (max-width: 480px) {
    .artifacts-table thead th:nth-child(2)[b-1norijzfg0] { display: none; }
    .artifacts-table tbody td:nth-child(2)[b-1norijzfg0] { display: none; }
}
/* /Components/Pages/TestResults.razor.rz.scp.css */
/* ── Test Results page — dark theme to match Dashboard ────────────────────── */

.test-results-page[b-04rappqf53] {
    --tr-bg:          #1E2A35;
    --tr-surface:     #253340;
    --tr-surface-alt: #2C3E4F;
    --tr-border:      rgba(255,255,255,0.20);
    --tr-text:        #E0E4EA;
    --tr-text-muted:  #8A9BB0;
    --tr-input-bg:    #1a2530;
    --tr-input-focus: #1e2e3e;
    --tr-accent:      #2196F3;
    --tr-pass:        #4CAF50;
    --tr-fail:        #E53935;
    --tr-warn:        #FF9800;
    --tr-aborted:     #546E7A;
    --tr-header-bg:   #151f28;
    --tr-color-scheme: dark;
}

html[data-theme="light"] .test-results-page[b-04rappqf53] {
    --tr-bg:          #f8fafc;
    --tr-surface:     #ffffff;
    --tr-surface-alt: #f0f4f8;
    --tr-border:      #d1dce8;
    --tr-text:        #1a2535;
    --tr-text-muted:  #4a6278;
    --tr-input-bg:    #ffffff;
    --tr-input-focus: #f0f4f8;
    --tr-accent:      #0284c7;
    --tr-header-bg:   #f0f4f8;
    --tr-color-scheme: light;
}

.test-results-page[b-04rappqf53] {
    padding: 24px;
    max-width: 1600px;
    margin: 0 auto;
    color: var(--tr-text);
}

.test-results-header[b-04rappqf53] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 24px;
}

.test-results-header h1[b-04rappqf53] {
    margin: 0;
    color: var(--tr-text);
    font-size: 1.6rem;
    font-weight: 600;
}

.test-results-header .btn-secondary[b-04rappqf53] {
    background: var(--tr-surface);
    color: var(--tr-text);
    border: 1px solid var(--tr-border);
    border-radius: 5px;
    padding: 7px 16px;
    font-size: 13px;
    text-decoration: none;
    cursor: pointer;
    transition: background 0.15s;
}

.test-results-header .btn-secondary:hover[b-04rappqf53] { background: var(--tr-surface-alt); }

[b-04rappqf53] .search-form {
    background: var(--tr-surface);
    padding: 20px;
    border-radius: 8px;
    margin-bottom: 28px;
    border: 1px solid var(--tr-border);
}

[b-04rappqf53] .search-form h3 {
    margin-top: 0;
    margin-bottom: 16px;
    color: var(--tr-text);
    font-size: 15px;
    font-weight: 600;
}

[b-04rappqf53] .search-fields { margin-bottom: 16px; }

[b-04rappqf53] .search-row {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 14px;
    margin-bottom: 12px;
}

[b-04rappqf53] .search-row .field label {
    display: block;
    margin-bottom: 5px;
    font-weight: 600;
    color: var(--tr-text);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

[b-04rappqf53] .search-row .field .form-control {
    width: 100%;
    padding: 8px 12px;
    background: var(--tr-input-bg);
    border: 1px solid var(--tr-border);
    border-radius: 5px;
    font-size: 14px;
    color: var(--tr-text);
    transition: background 0.15s, border-color 0.15s;
    color-scheme: var(--tr-color-scheme);
}

[b-04rappqf53] .search-row .field .form-control:focus {
    outline: none;
    background: var(--tr-input-focus);
    border-color: var(--tr-accent);
    box-shadow: 0 0 0 2px rgba(33, 150, 243, 0.25);
}

[b-04rappqf53] .search-row .field .form-control::placeholder { color: var(--tr-text-muted); }

[b-04rappqf53] .search-actions { display: flex; gap: 10px; }

[b-04rappqf53] .search-actions .btn {
    padding: 8px 20px;
    border: none;
    border-radius: 5px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: filter 0.15s;
}

[b-04rappqf53] .search-actions .btn-primary { background: var(--tr-accent); color: white; }
[b-04rappqf53] .search-actions .btn-primary:hover:not(:disabled) { filter: brightness(1.15); }

[b-04rappqf53] .search-actions .btn-secondary {
    background: var(--tr-surface-alt);
    color: var(--tr-text);
    border: 1px solid var(--tr-border);
}

[b-04rappqf53] .search-actions .btn-secondary:hover:not(:disabled) { filter: brightness(1.15); }
[b-04rappqf53] .search-actions .btn:disabled { opacity: 0.45; cursor: not-allowed; }

[b-04rappqf53] .results-table-container { margin-top: 10px; }
[b-04rappqf53] .results-summary { font-size: 13px; color: var(--tr-text-muted); margin-bottom: 10px; }
[b-04rappqf53] .no-data { padding: 48px; text-align: center; color: var(--tr-text-muted); font-style: italic; }

[b-04rappqf53] .data-table {
    width: 100%;
    border-collapse: collapse;
    background: var(--tr-surface);
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid var(--tr-border);
}

[b-04rappqf53] .data-table thead { background: var(--tr-header-bg); color: var(--tr-text-muted); }

[b-04rappqf53] .data-table th {
    padding: 11px 15px;
    text-align: left;
    font-weight: 600;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 1px solid var(--tr-border);
}

[b-04rappqf53] .data-table td {
    padding: 10px 15px;
    border-bottom: 1px solid var(--tr-border);
    font-size: 14px;
    color: var(--tr-text);
}

[b-04rappqf53] .data-table tbody tr:last-child td { border-bottom: none; }
[b-04rappqf53] .data-table tbody tr:hover { background: var(--tr-surface-alt); }

[b-04rappqf53] .col-expand { width: 30px; text-align: center; }

[b-04rappqf53] .expand-icon {
    display: inline-block;
    transition: transform 0.2s, color 0.2s;
    cursor: pointer;
    font-size: 12px;
    color: var(--tr-text-muted);
}

[b-04rappqf53] .expand-icon.expanded { transform: rotate(90deg); color: var(--tr-accent); }

[b-04rappqf53] .result-row { cursor: pointer; }
[b-04rappqf53] .result-row.expanded { background: var(--tr-surface-alt); font-weight: 600; }

[b-04rappqf53] .verdict-pass         { color: var(--tr-pass);    font-weight: 600; }
[b-04rappqf53] .verdict-fail         { color: var(--tr-fail);    font-weight: 600; }
[b-04rappqf53] .verdict-undetermined { color: var(--tr-warn);    font-weight: 600; }
[b-04rappqf53] .verdict-aborted      { color: var(--tr-aborted); font-weight: 600; }
[b-04rappqf53] .verdict-error        { color: var(--tr-fail);    font-weight: 600; }

[b-04rappqf53] .verdict-row-pass         { border-left: 3px solid var(--tr-pass);    background: rgba(76,175,80,0.07); }
[b-04rappqf53] .verdict-row-fail         { border-left: 3px solid var(--tr-fail);    background: rgba(229,57,53,0.07); }
[b-04rappqf53] .verdict-row-undetermined { border-left: 3px solid var(--tr-warn);    background: rgba(255,152,0,0.07); }
[b-04rappqf53] .verdict-row-aborted      { border-left: 3px solid var(--tr-aborted); background: rgba(84,110,122,0.07); }

[b-04rappqf53] .inline-detail-row > td { padding: 0; border-bottom: 2px solid var(--tr-border); }
[b-04rappqf53] .inline-detail { padding: 20px; background: var(--tr-bg); }
[b-04rappqf53] .loading-detail { padding: 20px; text-align: center; color: var(--tr-text-muted); font-style: italic; }

[b-04rappqf53] .report-header {
    padding: 18px 20px;
    border-radius: 8px;
    margin-bottom: 20px;
    border: 1px solid var(--tr-border);
    background: var(--tr-surface);
}

[b-04rappqf53] .report-header.verdict-pass         { border-left: 4px solid var(--tr-pass); }
[b-04rappqf53] .report-header.verdict-fail         { border-left: 4px solid var(--tr-fail); }
[b-04rappqf53] .report-header.verdict-undetermined { border-left: 4px solid var(--tr-warn); }
[b-04rappqf53] .report-header.verdict-aborted      { border-left: 4px solid var(--tr-aborted); }

[b-04rappqf53] .verdict-badge {
    display: inline-block;
    padding: 5px 16px;
    border-radius: 20px;
    font-weight: 700;
    font-size: 13px;
    color: white;
    margin-bottom: 12px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

[b-04rappqf53] .verdict-badge.verdict-pass         { background: var(--tr-pass); }
[b-04rappqf53] .verdict-badge.verdict-fail         { background: var(--tr-fail); }
[b-04rappqf53] .verdict-badge.verdict-undetermined { background: var(--tr-warn); color: #333; }
[b-04rappqf53] .verdict-badge.verdict-aborted      { background: var(--tr-aborted); }

[b-04rappqf53] .header-table { width: 100%; border-collapse: collapse; }

[b-04rappqf53] .header-table td { padding: 4px 10px; font-size: 13px; color: var(--tr-text); }

[b-04rappqf53] .header-table td.label {
    font-weight: 600;
    color: var(--tr-text-muted);
    width: 15%;
    white-space: nowrap;
}

[b-04rappqf53] .header-table td.value {
    width: 35%;
    font-family: 'Consolas', 'Courier New', monospace;
    word-break: break-word;
}

[b-04rappqf53] .verdict-text-pass         { color: var(--tr-pass);    font-weight: 700; }
[b-04rappqf53] .verdict-text-fail         { color: var(--tr-fail);    font-weight: 700; }
[b-04rappqf53] .verdict-text-undetermined { color: var(--tr-warn);    font-weight: 700; }
[b-04rappqf53] .verdict-text-aborted      { color: var(--tr-aborted); font-weight: 700; }

[b-04rappqf53] .config-snapshot-section { margin-top: 12px; border-top: 1px solid var(--tr-border); padding-top: 8px; }

[b-04rappqf53] .config-snapshot-toggle {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 13px;
    font-weight: 600;
    color: var(--tr-text-muted);
    padding: 4px 0;
    display: flex;
    align-items: center;
    gap: 6px;
}

[b-04rappqf53] .config-snapshot-toggle:hover { color: var(--tr-accent); }
[b-04rappqf53] .toggle-icon { font-size: 11px; width: 12px; text-align: center; }

[b-04rappqf53] .config-snapshot-table { width: 100%; border-collapse: collapse; margin-top: 8px; font-size: 13px; }

[b-04rappqf53] .config-snapshot-table th {
    text-align: left;
    padding: 6px 10px;
    background: var(--tr-header-bg);
    border-bottom: 1px solid var(--tr-border);
    font-weight: 600;
    color: var(--tr-text-muted);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

[b-04rappqf53] .config-snapshot-table td { padding: 5px 10px; border-bottom: 1px solid var(--tr-border); }
[b-04rappqf53] .config-snapshot-table .config-key { font-family: 'Consolas', 'Courier New', monospace; color: var(--tr-text-muted); white-space: nowrap; width: 30%; }
[b-04rappqf53] .config-snapshot-table .config-value { font-family: 'Consolas', 'Courier New', monospace; color: var(--tr-text); word-break: break-all; }

[b-04rappqf53] .step-results-table { margin-top: 20px; }
[b-04rappqf53] .step-results-table h4 { margin-bottom: 10px; color: var(--tr-text); font-size: 15px; font-weight: 600; }
[b-04rappqf53] .step-row { cursor: pointer; }

[b-04rappqf53] .col-order    { width: 50px; text-align: center; }
[b-04rappqf53] .col-name     { min-width: 200px; }
[b-04rappqf53] .col-duration { width: 100px; }
[b-04rappqf53] .col-verdict  { width: 100px; }
[b-04rappqf53] .col-error    { max-width: 200px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

[b-04rappqf53] .iteration-badge { display: inline-block; padding: 1px 6px; background: var(--tr-surface-alt); border-radius: 10px; font-size: 11px; color: var(--tr-text-muted); margin-left: 6px; }
[b-04rappqf53] .forced-badge { margin-left: 4px; color: var(--tr-warn); }
[b-04rappqf53] .measurement-count { font-size: 12px; color: var(--tr-text-muted); margin-left: 6px; }

/* ── Responsive ───────────────────────────────────────────────────────────── */

@media (max-width: 768px) {
    .test-results-page[b-04rappqf53] {
        padding: 12px;
    }

    .test-results-header[b-04rappqf53] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
        margin-bottom: 16px;
    }

    [b-04rappqf53] .search-row {
        grid-template-columns: 1fr;
    }

    [b-04rappqf53] .results-table-container {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    /* Wrap search actions */
    [b-04rappqf53] .search-actions {
        flex-wrap: wrap;
    }
}

@media (max-width: 480px) {
    /* Hide less-essential columns in the results table */
    [b-04rappqf53] .data-table thead th:nth-child(4),
    [b-04rappqf53] .data-table tbody td:nth-child(4) {
        display: none;
    }

    [b-04rappqf53] .header-table td.label,
    [b-04rappqf53] .header-table td.value {
        width: auto;
        display: block;
        padding: 2px 6px;
    }
}
[b-04rappqf53] .measurement-row { background: var(--tr-bg); font-size: 13px; }
[b-04rappqf53] .measurement-row td { padding: 6px 15px; }
[b-04rappqf53] .measurement-indent { padding-left: 40px !important; }

[b-04rappqf53] .measurement-type-badge {
    display: inline-block;
    padding: 1px 6px;
    border-radius: 4px;
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    margin-right: 6px;
    color: white;
}

[b-04rappqf53] .type-numeric { background: #1565C0; }
[b-04rappqf53] .type-boolean { background: #00838F; }
[b-04rappqf53] .type-string  { background: #6A1B9A; }
[b-04rappqf53] .units { color: var(--tr-text-muted); font-size: 12px; margin-left: 2px; }

[b-04rappqf53] .nested-executions-section { margin-top: 25px; }

[b-04rappqf53] .nested-execution { border: 1px solid var(--tr-border); border-radius: 6px; margin-bottom: 10px; overflow: hidden; }
[b-04rappqf53] .nested-header { padding: 10px 15px; background: var(--tr-surface); cursor: pointer; display: flex; align-items: center; gap: 10px; }
[b-04rappqf53] .nested-header:hover { background: var(--tr-surface-alt); }
[b-04rappqf53] .nested-title { flex: 1; font-size: 14px; }
[b-04rappqf53] .nested-verdict { font-weight: 600; font-size: 13px; }
[b-04rappqf53] .nested-body { padding: 15px; border-top: 1px solid var(--tr-border); background: var(--tr-bg); }

[b-04rappqf53] .depth-1 { margin-left: 20px; }
[b-04rappqf53] .depth-2 { margin-left: 40px; }
[b-04rappqf53] .depth-3 { margin-left: 60px; }

[b-04rappqf53] .step-count-badge { display: inline-block; padding: 1px 8px; background: var(--tr-surface-alt); border-radius: 10px; font-size: 11px; color: var(--tr-text-muted); margin-left: 8px; }

[b-04rappqf53] .pagination { display: flex; align-items: center; justify-content: center; gap: 15px; margin-top: 20px; padding: 15px; }
[b-04rappqf53] .step-pagination { display: flex; align-items: center; gap: 12px; margin-top: 10px; padding: 8px 0; font-size: 13px; color: var(--tr-text-muted); }
[b-04rappqf53] .step-pagination-info { font-size: 13px; color: var(--tr-text-muted); margin-top: 8px; padding: 4px 0; }
[b-04rappqf53] .page-indicator { font-size: 13px; color: var(--tr-text-muted); }

[b-04rappqf53] .btn-sm { padding: 5px 12px; font-size: 12px; background: var(--tr-surface-alt); color: var(--tr-text); border: 1px solid var(--tr-border); border-radius: 4px; cursor: pointer; transition: background 0.15s; }
[b-04rappqf53] .btn-sm:hover:not(:disabled) { background: var(--tr-input-focus); }
[b-04rappqf53] .btn-sm:disabled { opacity: 0.4; cursor: not-allowed; }

[b-04rappqf53] .btn-outline { background: transparent; border: 1px solid var(--tr-accent); color: var(--tr-accent); border-radius: 4px; padding: 4px 10px; cursor: pointer; text-decoration: none; font-size: 12px; white-space: nowrap; }
[b-04rappqf53] .btn-outline:hover { background: var(--tr-accent); color: white; }

[b-04rappqf53] .tags-cell { max-width: 250px; }

[b-04rappqf53] .tag-badge { display: inline-block; padding: 2px 8px; margin: 2px 4px 2px 0; background: var(--tr-surface-alt); border: 1px solid var(--tr-border); border-radius: 10px; font-size: 11px; color: var(--tr-text-muted); white-space: nowrap; }

[b-04rappqf53] .paged-step-results { margin-top: 10px; }
[b-04rappqf53] .loading { padding: 30px; text-align: center; color: var(--tr-text-muted); font-style: italic; }

[b-04rappqf53] .execution-logs-section { margin-top: 20px; }

[b-04rappqf53] .logs-toggle { background: var(--tr-surface); border: 1px solid var(--tr-border); border-radius: 6px; padding: 8px 16px; cursor: pointer; font-size: 14px; color: var(--tr-text); display: flex; align-items: center; gap: 8px; transition: background 0.15s; }
[b-04rappqf53] .logs-toggle:hover { background: var(--tr-surface-alt); }
[b-04rappqf53] .log-count { font-size: 12px; color: var(--tr-text-muted); }
[b-04rappqf53] .logs-loading, [b-04rappqf53] .logs-empty { padding: 20px; text-align: center; color: var(--tr-text-muted); font-style: italic; }

[b-04rappqf53] .log-table-panel { margin-top: 10px; border: 1px solid var(--tr-border); border-radius: 6px; overflow: hidden; background: var(--tr-surface); }
[b-04rappqf53] .log-table-header { display: flex; align-items: center; justify-content: space-between; padding: 10px 15px; background: var(--tr-header-bg); border-bottom: 1px solid var(--tr-border); }
[b-04rappqf53] .log-table-header h3 { margin: 0; font-size: 14px; color: var(--tr-text); }
[b-04rappqf53] .log-table-scroll { max-height: 400px; overflow-y: auto; }

[b-04rappqf53] .log-data-table { width: 100%; border-collapse: collapse; font-size: 12px; font-family: 'Consolas', 'Courier New', monospace; }

[b-04rappqf53] .log-column-headers th { padding: 6px 10px; background: var(--tr-header-bg); color: var(--tr-text-muted); text-align: left; font-size: 11px; text-transform: uppercase; letter-spacing: 0.3px; position: sticky; top: 0; }
[b-04rappqf53] .log-column-filters td { padding: 3px 6px; background: var(--tr-surface); border-bottom: 1px solid var(--tr-border); }
[b-04rappqf53] .log-column-filters input { width: 100%; background: var(--tr-input-bg); border: 1px solid var(--tr-border); border-radius: 3px; padding: 2px 6px; color: var(--tr-text); font-size: 11px; color-scheme: var(--tr-color-scheme); }

[b-04rappqf53] .log-data-table tbody tr { border-bottom: 1px solid rgba(255,255,255,0.05); }
[b-04rappqf53] .log-data-table tbody tr td { padding: 4px 10px; color: var(--tr-text); }

[b-04rappqf53] .level-error   { background: rgba(229,57,53,0.12); }
[b-04rappqf53] .level-warning { background: rgba(255,152,0,0.10); }

[b-04rappqf53] .log-table-footer { padding: 6px 15px; background: var(--tr-header-bg); border-top: 1px solid var(--tr-border); font-size: 11px; color: var(--tr-text-muted); }
/* /Components/Pages/Usage.razor.rz.scp.css */
/* Dark-first (the app's default theme); light overrides via html[data-theme="light"]. */

.usage-page[b-mjtu4g5lz7] {
    max-width: 760px;
    padding: 1.5rem;
}

.usage-page h1[b-mjtu4g5lz7] {
    margin-bottom: 0.25rem;
}

.usage-sub[b-mjtu4g5lz7] {
    opacity: 0.6;
    margin: 0 0 1.25rem;
}

.usage-note[b-mjtu4g5lz7] {
    background: rgba(245, 158, 11, 0.12);
    border: 1px solid rgba(245, 158, 11, 0.3);
    border-radius: 8px;
    padding: 0.7rem 0.9rem;
    margin-bottom: 1rem;
}

.usage-card[b-mjtu4g5lz7] {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 10px;
    padding: 1.1rem 1.25rem;
    margin-bottom: 1.1rem;
}

.usage-card__hdr[b-mjtu4g5lz7] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.usage-card h2[b-mjtu4g5lz7] {
    font-size: 1rem;
    margin: 0;
    opacity: 0.85;
}

.usage-badge[b-mjtu4g5lz7] {
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.2rem 0.6rem;
    border-radius: 999px;
}

.usage-badge--ok[b-mjtu4g5lz7] {
    background: rgba(34, 197, 94, 0.16);
    color: #4ade80;
}

.usage-badge--over[b-mjtu4g5lz7] {
    background: rgba(239, 68, 68, 0.16);
    color: #f87171;
}

.usage-spark[b-mjtu4g5lz7] {
    width: 100%;
    height: 40px;
    margin: 0.75rem 0;
    display: block;
}

.usage-spark polyline[b-mjtu4g5lz7] {
    fill: none;
    stroke: #2563eb;
    stroke-width: 1.5;
    vector-effect: non-scaling-stroke;
}

.usage-grid[b-mjtu4g5lz7] {
    display: grid;
    grid-template-columns: 12rem 1fr;
    row-gap: 0.3rem;
    margin: 0;
}

.usage-grid dt[b-mjtu4g5lz7] {
    opacity: 0.55;
}

.usage-grid dd[b-mjtu4g5lz7] {
    margin: 0;
}

html[data-theme="light"] .usage-card[b-mjtu4g5lz7] {
    background: #fff;
    border-color: #e2e2e2;
}

html[data-theme="light"] .usage-spark polyline[b-mjtu4g5lz7] {
    stroke: #2563eb;
}
/* /Components/Please/AssistPanel.razor.rz.scp.css */
.assist-panel[b-bzxnwwv3kg] {
    position: fixed;
    top: 0;
    right: -420px;
    width: 400px;
    height: 100vh;
    background: #1a2530;
    border-left: 1px solid #2e3d4d;
    box-shadow: -4px 0 24px rgba(0,0,0,0.4);
    display: flex;
    flex-direction: column;
    z-index: 500;
    transition: right 0.2s ease;
    overflow: hidden;
}

.assist-panel--open[b-bzxnwwv3kg] { right: 0; }

.assist-panel__header[b-bzxnwwv3kg] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 16px;
    border-bottom: 1px solid #2e3d4d;
    flex-shrink: 0;
}

.assist-panel__title[b-bzxnwwv3kg] { font-weight: 700; color: #E0E4EA; font-size: 0.95rem; }

.assist-panel__close[b-bzxnwwv3kg] {
    background: none;
    border: none;
    color: #8fa0ae;
    font-size: 1rem;
    cursor: pointer;
    padding: 2px 6px;
    border-radius: 4px;
}
.assist-panel__close:hover[b-bzxnwwv3kg] { background: #2e3d4d; color: #E0E4EA; }

.assist-panel__body[b-bzxnwwv3kg] { flex: 1; overflow-y: auto; padding: 12px 16px; }

.assist-panel__loading[b-bzxnwwv3kg],
.assist-panel__empty[b-bzxnwwv3kg] { color: #8fa0ae; font-size: 0.85rem; padding: 20px 0; text-align: center; }

.assist-panel__assertion[b-bzxnwwv3kg] {
    background: #243040;
    border: 1px solid #2e3d4d;
    border-radius: 6px;
    padding: 10px 12px;
    margin-bottom: 10px;
}

.assist-panel__assertion-header[b-bzxnwwv3kg] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 6px;
    flex-wrap: wrap;
}

.assist-panel__assertion-kind[b-bzxnwwv3kg] { font-size: 0.72rem; color: #8fa0ae; text-transform: uppercase; letter-spacing: 0.04em; }
.assist-panel__assertion-date[b-bzxnwwv3kg] { font-size: 0.72rem; color: #546E7A; margin-left: auto; }
.assist-panel__assertion-body[b-bzxnwwv3kg] { font-size: 0.85rem; color: #c8d4dc; line-height: 1.5; }

.assist-panel__evidence[b-bzxnwwv3kg] {
    margin: 8px 0 0 0;
    padding: 0 0 0 16px;
    font-size: 0.78rem;
    color: #8fa0ae;
}
.assist-panel__evidence li[b-bzxnwwv3kg] { margin-bottom: 2px; }
.assist-panel__evidence-kind[b-bzxnwwv3kg] { font-weight: 600; color: #80cbc4; margin-right: 4px; }
.assist-panel__evidence-ref[b-bzxnwwv3kg]  { color: #546E7A; }
/* /Components/Please/CoverageBadge.razor.rz.scp.css */
/* styles moved to app.css */
/* /Components/Please/CoverageView.razor.rz.scp.css */
.cov-rollup[b-mzin7ggejf] { margin-bottom: 8px; }

.cov-rollup__bar[b-mzin7ggejf] {
    display: flex;
    height: 12px;
    border-radius: 6px;
    overflow: hidden;
    background: #141d26;
    margin-bottom: 12px;
    gap: 2px;
}

.cov-rollup__seg[b-mzin7ggejf] { height: 100%; transition: width 0.4s ease; min-width: 2px; border-radius: 2px; }
.cov-rollup__seg--pass[b-mzin7ggejf] { background: #34d399; }
.cov-rollup__seg--warn[b-mzin7ggejf] { background: #fbbf24; }
.cov-rollup__seg--fail[b-mzin7ggejf] { background: #f87171; }
.cov-rollup__seg--idle[b-mzin7ggejf] { background: #64748b; }
.cov-rollup__seg--info[b-mzin7ggejf] { background: #1e3a5f; }

.cov-rollup__legend[b-mzin7ggejf] {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
}

.cov-rollup__legend-item[b-mzin7ggejf] {
    font-size: 0.82rem;
    font-weight: 600;
    padding-left: 16px;
    position: relative;
}

.cov-rollup__legend-item[b-mzin7ggejf]::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 8px;
    height: 8px;
    border-radius: 50%;
}

.cov-rollup__legend-item--pass[b-mzin7ggejf] { color: #34d399; }
.cov-rollup__legend-item--pass[b-mzin7ggejf]::before { background: #34d399; }
.cov-rollup__legend-item--warn[b-mzin7ggejf] { color: #fbbf24; }
.cov-rollup__legend-item--warn[b-mzin7ggejf]::before { background: #fbbf24; }
.cov-rollup__legend-item--fail[b-mzin7ggejf] { color: #f87171; }
.cov-rollup__legend-item--fail[b-mzin7ggejf]::before { background: #f87171; }
.cov-rollup__legend-item--idle[b-mzin7ggejf] { color: #64748b; }
.cov-rollup__legend-item--idle[b-mzin7ggejf]::before { background: #64748b; }
.cov-rollup__legend-item--info[b-mzin7ggejf] { color: #60a5fa; }
.cov-rollup__legend-item--info[b-mzin7ggejf]::before { background: #1e3a5f; }

.cov-tc-link[b-mzin7ggejf] { margin-right: 6px; margin-bottom: 3px; font-size: 0.8rem; color: #7dd3fc; background: rgba(125,211,252,0.08); padding: 1px 6px; border-radius: 3px; text-decoration: none; display: inline-block; }
.cov-tc-link:hover[b-mzin7ggejf] { text-decoration: underline; color: #bae6fd; }

.cov-td--links[b-mzin7ggejf] { white-space: normal !important; }
.cov-links-wrap[b-mzin7ggejf] { max-width: 280px; }
/* /Components/Please/MermaidDiagram.razor.rz.scp.css */
.mermaid-diagram-container[b-62s8vpdunq] {
    margin: 1.25rem 0;
    text-align: center;
    overflow-x: auto;
}

.mermaid-diagram-container :deep(svg)[b-62s8vpdunq] {
    max-width: 100%;
    height: auto;
}
/* /Components/Please/PleaseHome.razor.rz.scp.css */
.please-home-board[b-x52vis1297] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr));
    gap: 1.25rem;
    margin-top: 0.5rem;
}

.please-home-panel[b-x52vis1297] {
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 10px;
    padding: 1.1rem 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.please-home-panel__title[b-x52vis1297] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: #8fa8be;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid #2c3e50;
}

.please-home-panel__body[b-x52vis1297] {
    flex: 1;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-content: flex-start;
}

.please-home-panel__link[b-x52vis1297] {
    font-size: 0.75rem;
    color: #38bdf8;
    text-decoration: none;
    align-self: flex-start;
}

.please-home-panel__link:hover[b-x52vis1297] { text-decoration: underline; }

/* ── MCP connection card ──────────────────────────────────────────────── */
.please-mcp-card[b-x52vis1297] {
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.1);
    border-radius: 10px;
    padding: 1.25rem 1.5rem;
    margin-top: 1.5rem;
}

.please-mcp-header[b-x52vis1297] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 0.75rem;
}

.please-mcp-icon[b-x52vis1297] {
    font-size: 2rem;
    line-height: 1;
    flex-shrink: 0;
}

.please-mcp-header strong[b-x52vis1297] {
    font-size: 0.95rem;
    color: #e2e8f0;
}

.please-mcp-desc[b-x52vis1297] {
    margin: 0.2rem 0 0 0;
    font-size: 0.88rem;
    color: #8fa8be;
}

.please-mcp-tabs[b-x52vis1297] {
    display: flex;
    border-bottom: 2px solid rgba(255,255,255,0.1);
    margin: 0.5rem 0 1.25rem 0;
}

.please-mcp-tab[b-x52vis1297] {
    background: none;
    border: none;
    border-bottom: 3px solid transparent;
    padding: 0.5rem 1.25rem;
    font-size: 0.88rem;
    font-weight: 500;
    cursor: pointer;
    color: #8fa8be;
    margin-bottom: -2px;
    transition: color 0.15s, border-color 0.15s;
    white-space: nowrap;
}

.please-mcp-tab:hover[b-x52vis1297] { color: #e2e8f0; }

.please-mcp-tab--active[b-x52vis1297] {
    color: #38bdf8;
    border-bottom-color: #38bdf8;
    font-weight: 600;
}

.please-mcp-hint[b-x52vis1297] {
    margin: 0 0 0.6rem 0;
    font-size: 0.88rem;
    color: #8fa8be;
}

.please-mcp-section[b-x52vis1297] {
    margin-top: 1.25rem;
    padding-top: 1.25rem;
    border-top: 1px solid rgba(255,255,255,0.07);
}

.please-mcp-section:first-child[b-x52vis1297] {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
}

.please-mcp-section-title[b-x52vis1297] {
    font-size: 0.88rem;
    font-weight: 700;
    color: #e2e8f0;
    margin: 0 0 0.6rem 0;
}

.please-mcp-option-label[b-x52vis1297] {
    font-size: 0.75rem;
    font-weight: 700;
    color: #8fa8be;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin: 1rem 0 0.4rem 0;
}

.please-mcp-option-label:first-child[b-x52vis1297] { margin-top: 0; }

.please-mcp-steps[b-x52vis1297] {
    margin: 0 0 0.5rem 0;
    padding-left: 1.25rem;
    font-size: 0.88rem;
    color: #94a3b8;
    line-height: 1.6;
}

.please-mcp-steps li[b-x52vis1297] { margin-bottom: 0.2rem; }
.please-mcp-steps--spaced li[b-x52vis1297] { margin-bottom: 0.5rem; }

.please-mcp-steps kbd[b-x52vis1297] {
    display: inline-block;
    padding: 0.1rem 0.35rem;
    font-size: 0.8rem;
    font-family: 'Consolas', 'Menlo', monospace;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.18);
    border-bottom-width: 2px;
    border-radius: 3px;
    color: #e2e8f0;
}

.please-mcp-command-row[b-x52vis1297] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    background: #0d1117;
    border-radius: 6px;
    padding: 0.6rem 1rem;
}

.please-mcp-command-row--pre[b-x52vis1297] { align-items: flex-start; }

.please-mcp-command[b-x52vis1297] {
    flex: 1;
    color: #a8ff78;
    font-family: 'Consolas', 'Menlo', monospace;
    font-size: 0.9rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    background: transparent;
}

.please-mcp-command--pre[b-x52vis1297] {
    white-space: pre;
    overflow-x: auto;
}

.please-mcp-copy-btn[b-x52vis1297] {
    flex-shrink: 0;
    background: rgba(255,255,255,0.08);
    color: #94a3b8;
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 4px;
    padding: 0.25rem 0.75rem;
    font-size: 0.8rem;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
    white-space: nowrap;
}

.please-mcp-copy-btn:hover[b-x52vis1297] { background: rgba(255,255,255,0.14); color: #e2e8f0; }

.please-mcp-copy-btn--copied[b-x52vis1297] {
    background: #166534;
    border-color: #16a34a;
    color: #bbf7d0;
}

.please-mcp-notice[b-x52vis1297] {
    display: flex;
    gap: 0.75rem;
    background: rgba(251, 191, 36, 0.1);
    border: 1px solid rgba(251, 191, 36, 0.35);
    border-radius: 6px;
    padding: 0.75rem 1rem;
    margin-bottom: 1rem;
    font-size: 0.88rem;
    color: #fde68a;
    line-height: 1.5;
}

.please-mcp-meta[b-x52vis1297] {
    margin-top: 0.75rem;
    font-size: 0.82rem;
    color: #8fa8be;
}

.please-mcp-meta a[b-x52vis1297] { color: #38bdf8; text-decoration: none; }
.please-mcp-meta a:hover[b-x52vis1297] { text-decoration: underline; }

@media (max-width: 768px) {
    .please-mcp-card[b-x52vis1297] {
        padding: 1rem;
    }

    .please-mcp-tabs[b-x52vis1297] {
        flex-wrap: wrap;
        gap: 0;
    }

    .please-mcp-tab[b-x52vis1297] {
        padding: 0.4rem 0.9rem;
        font-size: 0.82rem;
    }

    .please-mcp-command[b-x52vis1297] {
        font-size: 0.78rem;
    }
}

@media (max-width: 480px) {
    .please-home-board[b-x52vis1297] {
        gap: 0.75rem;
    }

    .please-home-panel[b-x52vis1297] {
        padding: 0.85rem 1rem;
    }

    .please-mcp-header[b-x52vis1297] {
        flex-direction: column;
        gap: 0.5rem;
    }

    .please-mcp-command-row[b-x52vis1297] {
        flex-direction: column;
        align-items: stretch;
        gap: 0.5rem;
    }

    .please-mcp-copy-btn[b-x52vis1297] {
        align-self: flex-start;
    }
}

/* ── Light theme ─────────────────────────────────────────────────────── */

html[data-theme="light"] .please-home-panel[b-x52vis1297] { background: #ffffff; border-color: #d1dce8; }
html[data-theme="light"] .please-home-panel__title[b-x52vis1297] { color: #4a6278; border-bottom-color: #d1dce8; }
html[data-theme="light"] .please-home-panel__link[b-x52vis1297] { color: #0284c7; }

html[data-theme="light"] .please-mcp-card[b-x52vis1297] { background: #ffffff; border: 1px solid #d1dce8; }
html[data-theme="light"] .please-mcp-header strong[b-x52vis1297] { color: #1a2535; }
html[data-theme="light"] .please-mcp-desc[b-x52vis1297] { color: #4a6278; }
html[data-theme="light"] .please-mcp-tabs[b-x52vis1297] { border-bottom-color: #d1dce8; }
html[data-theme="light"] .please-mcp-tab[b-x52vis1297] { color: #4a6278; }
html[data-theme="light"] .please-mcp-tab:hover[b-x52vis1297] { color: #1a2535; }
html[data-theme="light"] .please-mcp-tab--active[b-x52vis1297] { color: #0284c7; border-bottom-color: #0284c7; }
html[data-theme="light"] .please-mcp-hint[b-x52vis1297] { color: #4a6278; }
html[data-theme="light"] .please-mcp-section[b-x52vis1297] { border-top-color: #d1dce8; }
html[data-theme="light"] .please-mcp-section-title[b-x52vis1297] { color: #1a2535; }
html[data-theme="light"] .please-mcp-option-label[b-x52vis1297] { color: #4a6278; }
html[data-theme="light"] .please-mcp-steps[b-x52vis1297] { color: #4a6278; }
html[data-theme="light"] .please-mcp-steps kbd[b-x52vis1297] { background: #f0f4f8; border-color: #c8d9e8; color: #1a2535; }
html[data-theme="light"] .please-mcp-copy-btn[b-x52vis1297] { background: #f0f4f8; border-color: #d1dce8; color: #4a6278; }
html[data-theme="light"] .please-mcp-copy-btn:hover[b-x52vis1297] { background: #e2eaf4; color: #1a2535; }
html[data-theme="light"] .please-mcp-meta[b-x52vis1297] { color: #4a6278; }
html[data-theme="light"] .please-mcp-meta a[b-x52vis1297] { color: #0284c7; }
/* /Components/Please/PleaseProjectReport.razor.rz.scp.css */
/* ── Toolbar (not printed) ─────────────────────────────────────────────── */
.rpt-toolbar[b-wlqf72q5d0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 20px;
    background: #fff;
    border-bottom: 1px solid #e2e8f0;
    position: sticky;
    top: 0;
    z-index: 100;
    gap: 16px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.06);
}

/* Breadcrumb sits on the always-white toolbar, so force light-surface colours
   regardless of the app theme (::deep pierces into the child component). */
.rpt-toolbar[b-wlqf72q5d0]  .please-breadcrumb__link { color: #64748b; }
.rpt-toolbar[b-wlqf72q5d0]  .please-breadcrumb__link:hover { color: #2563eb; }
.rpt-toolbar[b-wlqf72q5d0]  .please-breadcrumb__sep { color: #94a3b8; }
.rpt-toolbar[b-wlqf72q5d0]  .please-breadcrumb__current { color: #1e293b; }

.rpt-toolbar__tabs[b-wlqf72q5d0] { display: flex; gap: 4px; flex-shrink: 0; }

.rpt-tab[b-wlqf72q5d0] {
    padding: 5px 14px;
    border: 1px solid #e2e8f0;
    border-radius: 4px;
    background: transparent;
    color: #64748b;
    font-size: 0.82rem;
    cursor: pointer;
    transition: all 0.12s;
}

.rpt-tab:hover[b-wlqf72q5d0] { background: #f1f5f9; color: #334155; }

.rpt-tab--active[b-wlqf72q5d0] { background: #1e40af; border-color: #1e40af; color: #fff; }

.rpt-print-btn[b-wlqf72q5d0] {
    padding: 6px 16px;
    border: 1px solid #e2e8f0;
    border-radius: 4px;
    background: #f8fafc;
    color: #334155;
    font-size: 0.82rem;
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.12s;
}

.rpt-print-btn:hover[b-wlqf72q5d0] { background: #f1f5f9; border-color: #cbd5e1; }

/* ── Document shell ────────────────────────────────────────────────────── */
.rpt-doc[b-wlqf72q5d0] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 48px 60px;
    background: #fff;
    color: #1e293b;
    min-height: calc(100vh - 48px);
    font-family: system-ui, -apple-system, sans-serif;
    font-size: 0.9rem;
    line-height: 1.5;
}

/* ── Cover ─────────────────────────────────────────────────────────────── */
.rpt-cover[b-wlqf72q5d0] {
    text-align: center;
    padding: 56px 0 40px;
    border-bottom: 2px solid #e2e8f0;
    margin-bottom: 36px;
}

.rpt-cover__title[b-wlqf72q5d0] {
    font-size: 2.25rem;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 12px;
    line-height: 1.2;
}

.rpt-cover__sub[b-wlqf72q5d0] {
    font-size: 1.05rem;
    color: #475569;
    font-weight: 500;
    margin-bottom: 14px;
}

.rpt-cover__meta[b-wlqf72q5d0] { margin-bottom: 10px; }

.rpt-cover__generated[b-wlqf72q5d0] {
    font-size: 0.78rem;
    color: #64748b;
    margin-bottom: 20px;
}

.rpt-cover__desc[b-wlqf72q5d0] {
    max-width: 620px;
    margin: 0 auto;
    text-align: left;
    color: #475569;
    font-size: 0.9rem;
}

/* ── Chips ─────────────────────────────────────────────────────────────── */
.rpt-chip[b-wlqf72q5d0] {
    display: inline-block;
    padding: 2px 10px;
    border-radius: 12px;
    font-size: 0.72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    background: #f1f5f9;
    color: #475569;
    border: 1px solid #e2e8f0;
    margin: 0 3px;
}

.rpt-chip--lifecycle[b-wlqf72q5d0] { background: #eff6ff; color: #1d4ed8; border-color: #bfdbfe; }
.rpt-chip--open[b-wlqf72q5d0]      { background: #fff7ed; color: #c2410c; border-color: #fed7aa; }
.rpt-chip--closed[b-wlqf72q5d0]    { background: #f0fdf4; color: #15803d; border-color: #bbf7d0; }

/* ── Health badge (Project Status) ─────────────────────────────────────── */
.rpt-health[b-wlqf72q5d0] {
    display: inline-block;
    padding: 2px 12px;
    border-radius: 12px;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin: 0 3px;
    border: 1px solid transparent;
}
.rpt-health--green[b-wlqf72q5d0]   { background: #f0fdf4; color: #15803d; border-color: #bbf7d0; }
.rpt-health--amber[b-wlqf72q5d0]   { background: #fffbeb; color: #b45309; border-color: #fde68a; }
.rpt-health--red[b-wlqf72q5d0]     { background: #fef2f2; color: #dc2626; border-color: #fecaca; }
.rpt-health--blocked[b-wlqf72q5d0] { background: #faf5ff; color: #7e22ce; border-color: #e9d5ff; }
.rpt-health--unknown[b-wlqf72q5d0] { background: #f1f5f9; color: #475569; border-color: #e2e8f0; }

/* Health-tinted metric (value colour echoes the badge) */
.rpt-metric.rpt-health--green   .rpt-metric__value[b-wlqf72q5d0] { color: #15803d; }
.rpt-metric.rpt-health--amber   .rpt-metric__value[b-wlqf72q5d0] { color: #b45309; }
.rpt-metric.rpt-health--red     .rpt-metric__value[b-wlqf72q5d0] { color: #dc2626; }
.rpt-metric.rpt-health--blocked .rpt-metric__value[b-wlqf72q5d0] { color: #7e22ce; }

/* ── Metrics strip ─────────────────────────────────────────────────────── */
.rpt-metrics[b-wlqf72q5d0] {
    display: flex;
    margin-bottom: 36px;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    overflow: hidden;
}

.rpt-metric[b-wlqf72q5d0] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 14px 8px;
    border-right: 1px solid #e2e8f0;
    background: #f8fafc;
}

.rpt-metric:last-child[b-wlqf72q5d0] { border-right: none; }
.rpt-metric--warn[b-wlqf72q5d0]  { background: #fffbeb; }
.rpt-metric--error[b-wlqf72q5d0] { background: #fef2f2; }

.rpt-metric__label[b-wlqf72q5d0] {
    font-size: 0.68rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #64748b;
    margin-bottom: 4px;
}

.rpt-metric__value[b-wlqf72q5d0] { font-size: 1.3rem; font-weight: 700; color: #0f172a; }
.rpt-metric--warn  .rpt-metric__value[b-wlqf72q5d0] { color: #d97706; }
.rpt-metric--error .rpt-metric__value[b-wlqf72q5d0] { color: #dc2626; }

/* ── Sections ──────────────────────────────────────────────────────────── */
.rpt-section[b-wlqf72q5d0] { margin-bottom: 44px; }

.rpt-section__title[b-wlqf72q5d0] {
    font-size: 1.05rem;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 14px;
    padding: 9px 14px;
    background: #f1f5f9;
    border-left: 4px solid #3b82f6;
    border-radius: 0 4px 4px 0;
}

.rpt-section__empty[b-wlqf72q5d0] {
    color: #64748b;
    font-size: 0.875rem;
    padding: 4px 0;
    font-style: italic;
}

/* ── Tables ────────────────────────────────────────────────────────────── */
.rpt-table[b-wlqf72q5d0] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.845rem;
}

.rpt-table th[b-wlqf72q5d0] {
    background: #f8fafc;
    color: #475569;
    font-weight: 600;
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding: 7px 10px;
    text-align: left;
    border-bottom: 2px solid #e2e8f0;
    border-right: 1px solid #e2e8f0;
}

.rpt-table th:last-child[b-wlqf72q5d0] { border-right: none; }

.rpt-table td[b-wlqf72q5d0] {
    padding: 7px 10px;
    border-bottom: 1px solid #f1f5f9;
    border-right: 1px solid #f1f5f9;
    color: #334155;
    vertical-align: top;
    word-break: break-word;
}

.rpt-table td:last-child[b-wlqf72q5d0] { border-right: none; }
.rpt-table tr:last-child td[b-wlqf72q5d0] { border-bottom: none; }
.rpt-table tbody tr:hover td[b-wlqf72q5d0] { background: #f8fafc; }

.rpt-table--kv th[b-wlqf72q5d0] { display: none; }

.rpt-kv-key[b-wlqf72q5d0] {
    width: 180px;
    font-weight: 600;
    color: #475569;
    white-space: nowrap;
}

.rpt-code[b-wlqf72q5d0] {
    font-family: 'Cascadia Code', 'JetBrains Mono', 'Fira Code', monospace;
    font-size: 0.8rem;
    color: #1e40af;
    white-space: nowrap;
}

/* Code cells that hold a list (e.g. linked test cases) must wrap, not spill the table */
.rpt-code--wrap[b-wlqf72q5d0] { white-space: normal; word-break: break-word; }

.rpt-muted[b-wlqf72q5d0] { color: #64748b; font-style: italic; }

/* ── Result / Coverage badges ─────────────────────────────────────────── */
.rpt-result--pass[b-wlqf72q5d0]      { color: #16a34a; font-weight: 600; }
.rpt-result--fail[b-wlqf72q5d0]      { color: #dc2626; font-weight: 600; }
.rpt-result--deviation[b-wlqf72q5d0] { color: #d97706; font-weight: 600; }
.rpt-result--other[b-wlqf72q5d0]     { color: #64748b; }

.rpt-cov--done[b-wlqf72q5d0]     { color: #16a34a; font-weight: 600; }
.rpt-cov--partial[b-wlqf72q5d0]  { color: #d97706; font-weight: 600; }
.rpt-cov--missing[b-wlqf72q5d0]  { color: #dc2626; font-weight: 600; }
.rpt-cov--obsolete[b-wlqf72q5d0] { color: #64748b; }

/* ── Severity badges ──────────────────────────────────────────────────── */
.rpt-sev[b-wlqf72q5d0] {
    display: inline-block;
    padding: 1px 7px;
    border-radius: 10px;
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    white-space: nowrap;
}

.rpt-sev--blocking[b-wlqf72q5d0] { background: #fef2f2; color: #dc2626; border: 1px solid #fecaca; }
.rpt-sev--warning[b-wlqf72q5d0]  { background: #fffbeb; color: #d97706; border: 1px solid #fde68a; }
.rpt-sev--info[b-wlqf72q5d0]     { background: #eff6ff; color: #2563eb; border: 1px solid #bfdbfe; }

/* ── Entry cards ──────────────────────────────────────────────────────── */
.rpt-entry-list[b-wlqf72q5d0] { display: flex; flex-direction: column; gap: 12px; }

.rpt-entry[b-wlqf72q5d0] {
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    overflow: hidden;
}

.rpt-entry__header[b-wlqf72q5d0] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 9px 13px;
    background: #f8fafc;
    border-bottom: 1px solid #e2e8f0;
    flex-wrap: wrap;
}

.rpt-entry__code[b-wlqf72q5d0] {
    font-family: monospace;
    font-size: 0.78rem;
    color: #1e40af;
    font-weight: 600;
    white-space: nowrap;
}

.rpt-entry__title[b-wlqf72q5d0] { font-weight: 600; color: #0f172a; flex: 1; min-width: 0; }

.rpt-entry__date[b-wlqf72q5d0] { font-size: 0.73rem; color: #64748b; white-space: nowrap; margin-left: auto; }

.rpt-entry__body[b-wlqf72q5d0] {
    padding: 11px 13px;
    font-size: 0.86rem;
    color: #334155;
    line-height: 1.6;
}

.rpt-entry__resolution[b-wlqf72q5d0] {
    padding: 8px 13px 11px;
    background: #f0fdf4;
    border-top: 1px solid #d1fae5;
    font-size: 0.86rem;
    color: #15803d;
}

.rpt-entry__resolution-label[b-wlqf72q5d0] { font-weight: 600; margin-right: 5px; }

/* ── Loading / error ──────────────────────────────────────────────────── */
.rpt-loading[b-wlqf72q5d0] {
    text-align: center;
    padding: 80px;
    color: #64748b;
    font-size: 1.1rem;
    background: #fff;
}

.rpt-error[b-wlqf72q5d0] {
    text-align: center;
    padding: 80px;
    color: #dc2626;
    background: #fff;
}

/* ── Footer ───────────────────────────────────────────────────────────── */
.rpt-footer[b-wlqf72q5d0] {
    display: flex;
    justify-content: space-between;
    margin-top: 48px;
    padding-top: 14px;
    border-top: 1px solid #e2e8f0;
    font-size: 0.75rem;
    color: #64748b;
}

/* ── Design Brief ─────────────────────────────────────────────────────── */
.rpt-brief-banner[b-wlqf72q5d0] {
    background: #fef9c3;
    border: 1px solid #fde68a;
    border-radius: 6px;
    color: #713f12;
    font-size: 0.78rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    padding: 9px 18px;
    margin-bottom: 32px;
    text-align: center;
}

.rpt-section__sub[b-wlqf72q5d0] {
    font-size: 0.82rem;
    color: #64748b;
    font-style: italic;
    margin: -8px 0 16px;
}

.rpt-concept-card[b-wlqf72q5d0] {
    border: 1px solid #bfdbfe;
    border-left: 4px solid #2563eb;
    border-radius: 0 6px 6px 0;
    overflow: hidden;
    margin-bottom: 14px;
}

.rpt-concept-card__header[b-wlqf72q5d0] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    background: #eff6ff;
    border-bottom: 1px solid #bfdbfe;
    flex-wrap: wrap;
}

.rpt-concept-card__title[b-wlqf72q5d0] {
    font-weight: 700;
    color: #1e3a5f;
    flex: 1;
    min-width: 0;
    font-size: 0.95rem;
}

.rpt-concept-card--closed[b-wlqf72q5d0] {
    border-color: #e2e8f0;
    border-left-color: #94a3b8;
    opacity: 0.85;
}

.rpt-concept-card--closed .rpt-concept-card__header[b-wlqf72q5d0] {
    background: #f8fafc;
    border-bottom-color: #e2e8f0;
}

.rpt-concept-card--closed .rpt-concept-card__title[b-wlqf72q5d0] {
    color: #475569;
}

/* ── Print ────────────────────────────────────────────────────────────── */
@@media print {
    .rpt-toolbar[b-wlqf72q5d0]        { display: none !important; }
    .rpt-doc[b-wlqf72q5d0]            { max-width: 100%; padding: 12px 20px; }
    .rpt-cover[b-wlqf72q5d0]          { page-break-after: always; }
    .rpt-section[b-wlqf72q5d0]        { break-inside: avoid; margin-bottom: 28px; }
    .rpt-entry[b-wlqf72q5d0]          { break-inside: avoid; }
    .rpt-concept-card[b-wlqf72q5d0]   { break-inside: avoid; }
    .rpt-table tr[b-wlqf72q5d0]       { break-inside: avoid; }
    .rpt-table[b-wlqf72q5d0]          { font-size: 0.78rem; }
    .rpt-table th[b-wlqf72q5d0],
    .rpt-table td[b-wlqf72q5d0]       { padding: 5px 8px; }
    .rpt-metrics[b-wlqf72q5d0]        { break-inside: avoid; }
    .rpt-brief-banner[b-wlqf72q5d0]   { background: #fef9c3 !important; -webkit-print-color-adjust: exact; }
}
/* /Components/Shared/DemoBanner.razor.rz.scp.css */
.demo-banner[b-ayp6kotud6] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 8px 20px;
    background: rgba(251, 191, 36, 0.07);
    border-bottom: 1px solid rgba(251, 191, 36, 0.18);
    font-size: 0.82rem;
    flex-wrap: wrap;
}

.demo-banner__text[b-ayp6kotud6] {
    color: #c9a84c;
    letter-spacing: 0.01em;
}

.demo-banner__cta[b-ayp6kotud6] {
    background: none;
    border: 1px solid rgba(56, 189, 248, 0.4);
    color: #38bdf8;
    padding: 4px 14px;
    border-radius: 5px;
    font-size: 0.8rem;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
    white-space: nowrap;
}

.demo-banner__cta:hover[b-ayp6kotud6] {
    background: rgba(56, 189, 248, 0.1);
    border-color: #38bdf8;
}
/* /Components/Shared/LicenseBanner.razor.rz.scp.css */
.license-banner[b-pf1l9zuzcd] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    background: rgba(245, 158, 11, 0.14);
    border-bottom: 1px solid rgba(245, 158, 11, 0.3);
    padding: 0.5rem 1rem;
    font-size: 0.9rem;
}

.license-banner__link[b-pf1l9zuzcd] {
    font-weight: 600;
    white-space: nowrap;
}
/* /Components/Shared/SignUpModal.razor.rz.scp.css */
.signup-modal__backdrop[b-f3q8dfle5o] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.65);
    z-index: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

.signup-modal__dialog[b-f3q8dfle5o] {
    background: #1b2736;
    border: 1px solid #2c3e50;
    border-radius: 10px;
    width: 100%;
    max-width: 460px;
    box-shadow: 0 12px 48px rgba(0, 0, 0, 0.5);
    overflow: hidden;
}

/* ── Header ─────────────────────────────────────────────────────────── */

.signup-modal__header[b-f3q8dfle5o] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 20px 14px;
    border-bottom: 1px solid #2c3e50;
}

.signup-modal__title[b-f3q8dfle5o] {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    color: #e2e8f0;
    letter-spacing: -0.01em;
}

.signup-modal__close[b-f3q8dfle5o] {
    background: none;
    border: none;
    color: #506070;
    font-size: 1rem;
    cursor: pointer;
    padding: 2px 6px;
    border-radius: 4px;
    line-height: 1;
    transition: background 0.12s, color 0.12s;
}

.signup-modal__close:hover[b-f3q8dfle5o] {
    background: #243347;
    color: #e2e8f0;
}

/* ── Body ────────────────────────────────────────────────────────────── */

.signup-modal__body[b-f3q8dfle5o] {
    padding: 20px;
}

.signup-modal__description[b-f3q8dfle5o] {
    margin: 0 0 20px;
    font-size: 0.85rem;
    color: #8fa8be;
    line-height: 1.55;
}

.signup-modal__field[b-f3q8dfle5o] {
    margin-bottom: 14px;
}

.signup-modal__label[b-f3q8dfle5o] {
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    color: #8fa8be;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 5px;
}

.signup-modal__optional[b-f3q8dfle5o] {
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
    color: #506070;
    margin-left: 4px;
}

.signup-modal__input[b-f3q8dfle5o] {
    width: 100%;
    background: #141d26;
    border: 1px solid #2c3e50;
    border-radius: 5px;
    color: #e2e8f0;
    font-size: 0.875rem;
    padding: 8px 12px;
    outline: none;
    transition: border-color 0.15s, box-shadow 0.15s;
    font-family: inherit;
    resize: none;
}

.signup-modal__input[b-f3q8dfle5o]::placeholder {
    color: #506070;
}

.signup-modal__input:focus[b-f3q8dfle5o] {
    border-color: #38bdf8;
    box-shadow: 0 0 0 2px rgba(56, 189, 248, 0.15);
}

.signup-modal__textarea[b-f3q8dfle5o] {
    height: 72px;
}

.signup-modal__error[b-f3q8dfle5o] {
    font-size: 0.8rem;
    color: #f87171;
    margin: 8px 0 0;
}

/* ── Actions ─────────────────────────────────────────────────────────── */

.signup-modal__actions[b-f3q8dfle5o] {
    display: flex;
    justify-content: flex-end;
    margin-top: 20px;
}

.signup-modal__submit[b-f3q8dfle5o] {
    background: #38bdf8;
    color: #0f172a;
    border: none;
    border-radius: 5px;
    padding: 8px 24px;
    font-size: 0.875rem;
    font-weight: 700;
    cursor: pointer;
    transition: filter 0.15s;
}

.signup-modal__submit:hover:not(:disabled)[b-f3q8dfle5o] {
    filter: brightness(1.1);
}

.signup-modal__submit:disabled[b-f3q8dfle5o] {
    opacity: 0.55;
    cursor: not-allowed;
}

/* ── Success ─────────────────────────────────────────────────────────── */

.signup-modal__success[b-f3q8dfle5o] {
    padding: 40px 20px;
    text-align: center;
    color: #8fa8be;
    font-size: 0.9rem;
}

.signup-modal__success-icon[b-f3q8dfle5o] {
    font-size: 2rem;
    color: #34d399;
    margin-bottom: 12px;
}

.signup-modal__success p[b-f3q8dfle5o] {
    margin: 0;
    color: #e2e8f0;
}
/* /Components/TestResults/ArtifactViewer.razor.rz.scp.css */
.artifact-images-section[b-xh6aljbmu3],
.artifact-charts-section[b-xh6aljbmu3],
.artifact-csv-inline-section[b-xh6aljbmu3] {
    padding: 14px 0 0;
}

.artifact-inline-heading[b-xh6aljbmu3] {
    margin: 0 0 10px;
    font-size: 13px;
    font-weight: 600;
    color: #495057;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

.artifact-image-grid[b-xh6aljbmu3] {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.artifact-image-figure[b-xh6aljbmu3] {
    margin: 0;
    background: #fff;
    border: 1px solid #dee2e6;
    border-radius: 6px;
    overflow: hidden;
    max-width: 480px;
}

.artifact-inline-img[b-xh6aljbmu3] {
    display: block;
    max-width: 100%;
    height: auto;
}

.artifact-image-figure figcaption[b-xh6aljbmu3] {
    padding: 6px 10px;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.artifact-img-name[b-xh6aljbmu3] {
    font-family: 'Consolas', 'Courier New', monospace;
    font-size: 12px;
    color: #6c757d;
}

.artifact-img-desc[b-xh6aljbmu3] {
    font-size: 12px;
    color: #333;
}

.artifact-csv-block[b-xh6aljbmu3] {
    margin-bottom: 20px;
    border: 1px solid #dee2e6;
    border-radius: 6px;
    overflow: hidden;
}

.artifact-csv-title[b-xh6aljbmu3] {
    padding: 6px 12px;
    font-family: 'Consolas', 'Courier New', monospace;
    font-size: 12px;
    font-weight: 600;
    color: #495057;
    background: #f8f9fa;
    border-bottom: 1px solid #dee2e6;
}

.artifact-csv-scroll[b-xh6aljbmu3] {
    overflow-x: auto;
    max-height: 400px;
    overflow-y: auto;
}

.artifact-csv-table[b-xh6aljbmu3] {
    border-collapse: collapse;
    font-size: 13px;
    width: 100%;
    white-space: nowrap;
}

.artifact-csv-table th[b-xh6aljbmu3],
.artifact-csv-table td[b-xh6aljbmu3] {
    border: 1px solid #dee2e6;
    padding: 4px 10px;
    text-align: left;
}

.artifact-csv-table th[b-xh6aljbmu3] {
    background: #f8f9fa;
    font-weight: 600;
    position: sticky;
    top: 0;
    z-index: 1;
}

.artifact-csv-loading[b-xh6aljbmu3],
.artifact-csv-error[b-xh6aljbmu3] {
    padding: 12px;
    font-size: 13px;
    color: #6c757d;
}

.artifact-csv-error[b-xh6aljbmu3] {
    color: #dc3545;
}

/* ── Dark theme ───────────────────────────────────────────────────────────── */

html:not([data-theme="light"]) .artifact-inline-heading[b-xh6aljbmu3] { color: #8A9BB0; }

html:not([data-theme="light"]) .artifact-image-figure[b-xh6aljbmu3] {
    background: #151f28;
    border-color: rgba(255,255,255,0.10);
}

html:not([data-theme="light"]) .artifact-img-name[b-xh6aljbmu3] { color: #8A9BB0; }
html:not([data-theme="light"]) .artifact-img-desc[b-xh6aljbmu3] { color: #E0E4EA; }

html:not([data-theme="light"]) .artifact-csv-block[b-xh6aljbmu3] {
    border-color: rgba(255,255,255,0.10);
}

html:not([data-theme="light"]) .artifact-csv-title[b-xh6aljbmu3] {
    background: #1E2A35;
    border-bottom-color: rgba(255,255,255,0.08);
    color: #8A9BB0;
}

html:not([data-theme="light"]) .artifact-csv-table th[b-xh6aljbmu3],
html:not([data-theme="light"]) .artifact-csv-table td[b-xh6aljbmu3] {
    border-color: rgba(255,255,255,0.08);
    color: #E0E4EA;
}

html:not([data-theme="light"]) .artifact-csv-table th[b-xh6aljbmu3] {
    background: #1E2A35;
    color: #8A9BB0;
}

html:not([data-theme="light"]) .artifact-csv-loading[b-xh6aljbmu3] { color: #8A9BB0; }
html:not([data-theme="light"]) .artifact-csv-error[b-xh6aljbmu3]   { color: #E57373; }
