/* Premium Hybrid V3. Presentation only; native Filament owns actions and state. */
:root {
    --fcp-brand: #047857; --fcp-emerald: #10b981; --fcp-brand-soft: #ecfdf5;
    --fcp-sidebar: #102528; --fcp-sidebar-hover: #204448; --fcp-sidebar-active: #14594a;
    --fcp-ink: #101828; --fcp-muted: #667085; --fcp-line: #e4eaf0;
    --fcp-canvas: #f4f7fa; --fcp-surface: #fff; --fcp-soft: #f8fafc;
    --fcp-danger: #b42318; --fcp-warning: #92400e; --fcp-info: #2563eb;
    --fcp-radius: 12px; --fcp-shadow: 0 3px 14px #10252806;
    --fcp-ease: cubic-bezier(.2,.7,.2,1); --fcp-fast: 150ms; --fcp-motion: 200ms;
}
.fi-main { padding-top: 1.25rem; }
.fi-header-heading { font-size: 28px !important; letter-spacing: -.035em; }
.fi-header-subheading { font-size: 13px; line-height: 1.5; }
.fi-sidebar-item-label { font-size: 13px; }
.fi-sidebar-item-btn { transition: background-color var(--fcp-fast) var(--fcp-ease), box-shadow var(--fcp-fast) var(--fcp-ease); }
.fi-sidebar-item.fi-active .fi-sidebar-item-btn { background: var(--fcp-sidebar-active) !important; box-shadow: inset 2px 0 var(--fcp-emerald), inset 0 0 0 1px #ffffff09; }
.fi-sidebar-item-btn:hover { background: var(--fcp-sidebar-hover) !important; }
.fi-sidebar-group-label { font-size: 11px; letter-spacing: .1em; }
.fi-sidebar-item .fi-badge { border-radius: 7px !important; font-size: 11px; }
.fi-topbar { box-shadow: 0 2px 12px #10252803; }
/* Keep the brand rail aligned with Filament's native collapsed sidebar state. */
@media (min-width: 1024px) {
    .fi-body:has(.fi-main-sidebar:not(.fi-sidebar-open)) .fi-topbar-start { width: var(--collapsed-sidebar-width); }
    .fi-body:has(.fi-main-sidebar:not(.fi-sidebar-open)) .fi-topbar-start > a { display: none; }
    .fi-body:has(.fi-main-sidebar:not(.fi-sidebar-open)) .fi-topbar-collapse-sidebar-btn-ctn { margin-inline: auto; }
}
.fi-global-search .fi-input-wrp { background: #f8fafc; }
.fi-global-search-results-ctn { box-shadow: 0 16px 40px #1025281a; }
.fi-btn, .ops-row-action { transition: background-color var(--fcp-fast), border-color var(--fcp-fast), box-shadow var(--fcp-fast), transform var(--fcp-fast); }
.fi-btn:active, .ops-row-action:active { transform: translateY(1px); }
.fi-btn { font-size: 12px; min-height: 36px; }
.fi-input, .fi-select-input, .fi-fo-select { font-size: 13px; }
.fi-fo-field-label-content, .fi-ta-filters .fi-fo-field-label-content { font-size: 12px; }
.fi-input-wrp { transition: box-shadow var(--fcp-fast); }
.fi-input-wrp:focus-within { outline: 2px solid #64748b; outline-offset: 2px; box-shadow: none; }
/* The wrapper owns one visible focus indicator, not a second rectangle inside it. */
.fi-input-wrp :is(input, select, textarea, button):focus-visible { outline: none; box-shadow: none; }
@media (forced-colors: active) { .fi-input-wrp:focus-within { outline-color: Highlight; } }
.fi-ta-filters { padding: 14px 18px; background: #fcfdfd; }
.fi-ta-header-cell-label, .fi-ta-text-description, .fi-pagination { font-size: 12px !important; }
.fi-ta-text-item-label, .fi-in-text-item { font-size: 13px; }
.fi-ta-header-cell { background: var(--fcp-soft); }
.fi-ta-cell .fi-ta-text { padding-block: 12px; }
.fi-ta-row:hover { background: #f4fbf8 !important; }
.fi-ta-filter-indicators { background: #f0fdf8; }
.fi-section-header-heading, .fi-ta-heading { font-size: 16px; }
.fi-section-header-description, .fi-ta-description, .fi-in-entry-label, .fi-modal-description { font-size: 12px; }
.fi-modal-window { border-radius: 14px; box-shadow: 0 24px 70px #10252824; }
.fi-dropdown-panel { border: 1px solid var(--fcp-line); box-shadow: 0 12px 36px #10252815; }
.fi-tabs { background: #fff; border: 1px solid var(--fcp-line); padding: 5px; }
.fi-tabs-item { font-size: 13px; min-height: 36px; }
.fi-no-notification { border: 1px solid var(--fcp-line); border-radius: 12px; background: #fff; box-shadow: 0 8px 30px #10252814; }
.fi-no-notification-title { font-size: 14px; font-weight: 650; }
.fi-no-notification-body, .fi-no-notification-date { font-size: 12px; line-height: 1.55; }
.fi-no-notification-icon { width: 22px; height: 22px; }
.fi-no-notification.fi-color-success { border-left: 3px solid #10b981; }
.fi-no-notification.fi-color-danger { border-left: 3px solid #ef4444; }
.fi-no-notification.fi-color-warning { border-left: 3px solid #f59e0b; }
.fi-no-notification.fi-color-info { border-left: 3px solid #3b82f6; }
.fi-no-notification-unread-ctn { background: #f5fcf8; }
.fi-no-database .fi-no-notification { box-shadow: none; margin-bottom: 8px; }
.fi-wi-chart-grid-color { color: #eef2f6; }
.fi-wi-chart-text-color { color: #667085; }
.fi-wi-chart-tooltip-bg-color { color: #102528; }
.fi-wi-chart-tooltip-text-color { color: #fff; }
.fi-wi-chart .fi-section-header { padding: 16px 18px 8px; }
.fi-wi-chart .fi-section-content { padding: 8px 14px 14px; }
.fi-page :is(.fleet-hero, .template-rc-hero, .ops-guide-hero) { padding: 20px; }
.fi-page :is(.fleet-hero, .template-rc-hero, .ops-guide-hero) :is(h2,h3) { font-size: 24px !important; }
.fi-page :is(.campaign-card, .template-rc-panel, .analytics-panel, .ops-guide-card) { border: 1px solid var(--fcp-line); background: #fff; }
.fi-page :is(.analytics-table, .analytics-panel p, .analytics-panel small, .analytics-compare-row, .campaign-stat span, .template-rc-stat span, .ap-sub) { font-size: 12px; }
.fi-page :is(.fleet-card, .campaign-card, .template-rc-card, .analytics-card, .ops-guide-card) { transition: border-color var(--fcp-motion), box-shadow var(--fcp-motion); }
.fi-page :is(.fleet-card, .campaign-card, .template-rc-card, .analytics-card, .ops-guide-card):hover { border-color: #c9ded5; box-shadow: 0 5px 20px #10252809; }
.fcp-stat__label, .fcp-stat__description { font-size: 12px; }
.fcp-stat__value { font-size: 28px; }

/* Approved composition: issues + intelligence, KPI strip, ranking + principal trend. */
.fcp-v3 .fi-page-content { gap: 14px; }
.fcp-v3 .ops-toolbar { padding: 10px 12px 8px; border-radius: 12px; box-shadow: var(--fcp-shadow); }
.fcp-v3 .ops-toolbar .fi-sc-has-gap { gap: 8px; }
.fcp-v3 .ops-toolbar .fi-fo-field-label-content { font-size: 12px; color: #52606e; }
.fcp-v3 .ops-toolbar .fi-input, .fcp-v3 .ops-toolbar .fi-select-input-btn, .fcp-v3 .ops-toolbar .fi-select-input { font-size: 12px; }
.fcp-v3 .ops-toolbar .fi-select-input-btn { min-height: 34px; }
.fcp-v3 .ops-toolbar .fi-fo-field { gap: 4px; }
.fcp-v3 .ops-toolbar .fi-fo-field-label .fi-ac-link { font-size: 11px; }
.fcp-v3 .ops-scope { font-size: 12px; padding-top: 7px; margin-top: 8px; gap: 6px; }
.fcp-v3 .ops-chips { align-items: center; gap: 7px; }
.fcp-v3 .ops-chips button { font-size: 12px; padding: 3px 7px; }
.fcp-v3 .ops-filter-more { display: inline-flex; align-items: center; gap: 6px; background: #fff; border: 1px solid var(--fcp-line); }
.ops-filter-more .fi-icon { width: 16px; height: 16px; }
.fcp-v3 .ops-workspace { grid-template-columns: minmax(0,1.5fr) minmax(350px,1fr); gap: 14px; align-items: stretch; }
.fcp-v3 .ops-panel { border-color: var(--fcp-line); border-radius: var(--fcp-radius); box-shadow: var(--fcp-shadow); }
.fcp-v3 .ops-panel > header { padding: 10px 14px; min-height: 54px; }
.fcp-v3 .ops-panel h2 { font-size: 16px; letter-spacing: -.025em; }
.fcp-v3 .ops-panel header p { font-size: 12px; margin-top: 3px; color: var(--fcp-muted); }
.fcp-v3 .ops-panel header > a, .fcp-v3 .ops-panel header > button { font-size: 12px; }
.ops-section-heading { display: flex; align-items: center; gap: 10px; min-width: 0; }
.ops-icon { width: 34px; height: 34px; border-radius: 9px; background: #ecfdf5; color: #047857; display: inline-grid; place-items: center; flex-shrink: 0; }
.ops-icon .fi-icon { width: 20px; height: 20px; }
.ops-icon--danger { color: #b42318; background: #fff1f2; }
.ops-icon--warning { color: #92400e; background: #fffbeb; }
.ops-icon--neutral { color: #52606e; background: #f1f5f9; }
.fcp-v3 .ops-count { color: #b42318; background: #fff0f1; font-size: 12px; border-radius: 6px; padding: 2px 6px; }
.fcp-v3 .ops-table { font-size: 12px; }
.fcp-v3 .ops-table th { font-size: 12px; padding: 8px 10px; background: #f8fafc; }
.fcp-v3 .ops-table td { padding: 10px; vertical-align: middle; }
.fcp-v3 .ops-table td small { font-size: 12px; line-height: 1.35; margin-top: 3px; color: var(--fcp-muted); }
.fcp-v3 .ops-table tbody tr:hover { background: #f6fcf9; }
.fcp-v3 .ops-issues td:first-child { min-width: 150px; }
.fcp-v3 .ops-issues td { padding-block: 8px; }
.fcp-v3 .ops-issues td:nth-child(2) { min-width: 138px; }
.fcp-v3 .ops-issues td:last-child { min-width: 80px; }
.fcp-v3 .ops-issues td:nth-child(3) { white-space: nowrap; }
.ops-domain { max-width: 190px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; display: block; font-weight: 550; }
.fcp-v3 .ops-severity { display: inline-flex; align-items: center; gap: 5px; font-size: 11px; padding: 3px 6px; white-space: nowrap; }
.ops-severity i { width: 5px; height: 5px; border-radius: 50%; background: currentColor; }
.fcp-v3 .ops-evidence { font-size: 12px; max-width: 300px; }
.fcp-v3 .ops-evidence summary { color: #047857; }
.fcp-v3 .ops-row-action { display: inline-flex; justify-content: center; padding: 4px 9px; border: 1px solid #dfe6ec; border-radius: 6px; background: #fff; color: #344054; font-size: 12px; white-space: nowrap; }
.fcp-v3 .ops-row-action:hover { background: #ecfdf5; border-color: #a7d9c6; }
.fcp-v3 .ops-paging { font-size: 12px; padding: 9px 12px; gap: 9px; }
.fcp-v3 .ops-muted { font-size: 12px; }
.fcp-v3 .ops-empty { font-size: 13px; padding: 28px 14px !important; }
.fcp-v3 .ops-empty > .fi-icon { width: 28px; height: 28px; color: #059669; margin: 0 auto 10px; }
.fcp-v3 .ops-empty strong { display: block; }
.fcp-v3 .ops-comparison { display: flex; flex-direction: column; }
.ops-comparison-scope { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 3px 8px; padding: 0 14px 8px; font-size: 12px; color: #667085; }
.ops-comparison-scope span { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ops-comparison-rows { padding: 0 14px; }
.ops-intelligence-row { display: grid; grid-template-columns: minmax(96px,1.3fr) minmax(72px,.8fr) minmax(76px,1fr) 52px; align-items: center; gap: 9px; min-height: 42px; border-top: 1px solid #eef2f6; font-size: 12px; }
.ops-intelligence-value { text-align: right; font-variant-numeric: tabular-nums; }
.ops-intelligence-value strong { font-size: 17px; font-weight: 650; letter-spacing: -.02em; }
.ops-intelligence-value small { display: block; color: #667085; font-size: 11px; }
.ops-change { text-align: center; font-size: 12px; border-radius: 5px; padding: 3px; font-variant-numeric: tabular-nums; }
.ops-change small { display: block; font-size: 10px; }
.ops-change--positive { color: #047857; background: #ecfdf5; }
.ops-change--negative { color: #b42318; background: #fff1f2; }
.ops-change--neutral { color: #667085; }
.ops-mini-comparison { display: flex; flex-direction: column; gap: 5px; }
.ops-mini-comparison span { background: #10b981; height: 5px; border-radius: 2px; }
.ops-mini-comparison span + span { background: #a8b8c5; }
.ops-comparison-note { padding: 10px 14px; font-size: 11px; line-height: 1.4; color: #667085; border-top: 1px solid #eef2f6; margin-top: auto; }
.ops-comparison-note span, .ops-comparison-note small { display: block; }
.ops-comparison-note small { margin-top: 3px; }
.fcp-v3 .ops-summary { gap: 10px; grid-template-columns: repeat(5,minmax(0,1fr)); }
.fcp-v3 .ops-kpi { padding: 12px; gap: 8px; box-shadow: var(--fcp-shadow); transition: border-color var(--fcp-motion), box-shadow var(--fcp-motion), transform var(--fcp-motion); position: relative; }
.fcp-v3 .ops-kpi:hover { transform: translateY(-2px); border-color: #bdddcf; box-shadow: 0 6px 20px #1025280c; }
.ops-kpi-main { display: flex; align-items: center; gap: 9px; min-width: 0; }
.ops-kpi-main > div { min-width: 0; }
.ops-kpi-label { color: #667085; font-size: 12px; line-height: 1.4; display: block; }
.ops-kpi-main strong { display: block; font-size: 28px; font-weight: 650; font-variant-numeric: tabular-nums; letter-spacing: -.03em; line-height: 1.2; }
.ops-kpi-main strong.ops-unavailable { font-size: 15px; }
.ops-kpi-main strong small { font-size: 13px; font-weight: 450; letter-spacing: 0; }
.fcp-v3 .ops-kpi > small { font-size: 11px; }
.ops-kpi--danger { border-bottom-color: #fecaca !important; }
.ops-kpi--warning { border-bottom-color: #fde68a !important; }
.ops-meter { height: 4px; background: #eef2f6; border-radius: 4px; overflow: hidden; margin-top: auto; }
.ops-meter span { display: block; height: 100%; background: #10b981; }
.ops-lower-workspace { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(360px,1fr); gap: 14px; align-items: start; }
.ops-segmented { display: flex; flex-shrink: 0; border: 1px solid #e4eaf0; border-radius: 7px; padding: 3px; background: #f8fafc; }
.ops-segmented button { padding: 5px 8px; border-radius: 5px; font-size: 12px; color: #667085; }
.ops-segmented button[aria-pressed="true"] { background: #047857; color: #fff; box-shadow: 0 2px 5px #04785715; }
.ops-number-positive { color: #047857; font-weight: 600; }
.fcp-v3 .ops-ranking td { padding-block: 10px; font-variant-numeric: tabular-nums; }
.ops-primary-trend, .ops-primary-trend .fi-sc, .ops-primary-trend .fi-wi { min-width: 0; }
.ops-primary-trend .fi-wi-chart { grid-column: 1 / -1 !important; }
.ops-primary-trend .fi-section-header-heading { font-size: 16px; }
.ops-primary-trend .fi-section-header-description { font-size: 12px; }
.ops-outcome-summary { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; background: #fff; border: 1px solid var(--fcp-line); border-radius: 10px; padding: 12px 14px; font-size: 12px; color: #52606e; }
.ops-outcome-summary > strong { color: #101828; }
.ops-outcome-summary > span { display: inline-flex; align-items: center; gap: 5px; }
.ops-outcome-summary > span i { width: 7px; height: 7px; border-radius: 2px; }
.ops-outcome-bar { display: flex; width: 130px; height: 7px; overflow: hidden; border-radius: 4px; background: #eef2f6; }
.ops-outcome-accepted { background: #10b981; }.ops-outcome-rejected { background: #ef4444; }.ops-outcome-unanswered { background: #94a3b8; }
.fcp-v3 .ops-details-toggle { font-size: 13px; padding-block: 4px; }
.fcp-v3 .ops-loading { background: #102528; box-shadow: 0 8px 24px #10252820; font-size: 13px; }
.ops-loading-dot { display: inline-block; width: 7px; height: 7px; background: #6ee7b7; border-radius: 50%; margin-right: 6px; }
.fcp-v3 .ops-warning { font-size: 13px; }
.fcp-v3 :is(#action-required,#website-performance) { scroll-margin-top: 12rem; }
@media(min-width:1280px) { .fcp-v3 .ops-toolbar > .fi-sc.fi-grid { grid-template-columns: repeat(6,minmax(0,1fr)); } }
@media(max-width:1399px) { .fcp-v3 .ops-workspace, .ops-lower-workspace { grid-template-columns: minmax(0,1fr) minmax(340px,.8fr); }.fcp-v3 .ops-summary { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media(max-width:1099px) { .fcp-v3 .ops-workspace, .ops-lower-workspace { grid-template-columns: minmax(0,1fr); }.fcp-v3 .ops-toolbar { position: static; }.ops-intelligence-row { grid-template-columns: minmax(120px,1.4fr) 1fr 1fr 70px; } }
@media(max-width:639px) { .fi-header-heading { font-size: 25px !important; }.fcp-v3 .ops-summary { grid-template-columns: repeat(2,minmax(0,1fr)); }.fcp-v3 .ops-panel > header { flex-wrap: wrap; gap: 10px; }.ops-kpi-main { gap: 6px; }.ops-kpi-main .ops-icon { width: 28px; height: 28px; }.ops-kpi-main strong { font-size: 26px; }.ops-intelligence-row { grid-template-columns: minmax(88px,1fr) 1fr 1fr; }.ops-mini-comparison { display: none; }.fcp-v3 .ops-chips { width: 100%; }.fcp-v3 .ops-scope { gap: 8px; }.ops-domain { max-width: 170px; }.ops-outcome-bar { width: 100%; }.fcp-v3 .ops-panel h2 { font-size: 16px; } }
@media(prefers-reduced-motion:reduce) { .fi-btn, .ops-row-action, .fi-sidebar-item-btn, .fcp-v3 .ops-kpi { transition: none !important; transform: none !important; } }
/* Recovery notice is separate from Livewire's morph tree and never auto-retries. */
.fcp-request-error {
    position: fixed;
    inset: auto 1rem 1rem;
    z-index: 10000;
    max-width: 54rem;
    margin-inline: auto;
    padding: 1rem;
    border: 1px solid #b45309;
    border-radius: .75rem;
    background: #fffbeb;
    color: #78350f;
    box-shadow: 0 4px 20px #0002;
    font-size: .875rem;
}
.fcp-request-error button {
    margin-top: .5rem;
    padding: .5rem .75rem;
    border: 1px solid currentColor;
    border-radius: .375rem;
    font-weight: 600;
    cursor: pointer;
}
.fcp-request-error button:focus-visible { outline: 3px solid #0f766e; outline-offset: 3px; }

/* One compact control surface across the console. Native filters/actions stay intact. */
.fcp-v3 .ops-toolbar { position: static; }
.ops-filter-summary, .ops-filter-actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.ops-filter-summary { min-height: 36px; font-size: 13px; }
.ops-filter-summary > div { display: flex; align-items: baseline; flex-wrap: wrap; gap: 6px 14px; }
.ops-filter-summary span { color: var(--fcp-muted); font-size: 12px; }
.ops-filter-summary button { flex-shrink: 0; align-items: center; gap: 6px; }
.ops-filter-summary button .fi-icon { width: 16px; height: 16px; }
#dashboard-filter-fields { padding-top: 12px; margin-top: 8px; border-top: 1px solid var(--fcp-line); }
.ops-filter-actions { margin-top: 12px; }
.ops-view-switch { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; font-size: 12px; color: var(--fcp-brand); }
.ops-overview-content:not([hidden]) { display: grid; gap: 14px; }
.ops-compare-setup { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; padding: 24px; flex: 1; text-align: center; }
.ops-compare-setup > p { color: var(--fcp-muted); max-width: 45ch; font-size: 13px; line-height: 1.6; }
.ops-compare-pair { display: flex; align-items: center; gap: 12px; width: 100%; font-size: 12px; }
.ops-compare-pair > span:not([aria-hidden]) { flex: 1; min-width: 0; overflow-wrap: anywhere; background: var(--fcp-soft); padding: 12px; border-radius: 8px; border: 1px dashed #cbd5e1; }
.ops-compare-pair small { display: block; color: var(--fcp-muted); margin-bottom: 4px; }
.fcp-v3 #performance-comparison { scroll-margin-top: 5rem; }
.fcp-v3 .ops-loading { background: #fff; color: #344054; border: 1px solid var(--fcp-line); font-size: 12px; max-width: calc(100vw - 2rem); }
.fi-ta-header-toolbar { gap: 10px; flex-wrap: wrap; }
.fi-ta-filter-indicators { font-size: 12px; background: #f8fafc; }
.fi-page :is(.fleet-section, .template-rc-fleet, .analytics-panel, .ops-guide-card, .fleet-card, .campaign-card, .template-rc-panel, .template-rc-card, .analytics-card) { border-radius: var(--fcp-radius); box-shadow: var(--fcp-shadow); }
.fi-page :is(.fleet-hero, .template-rc-hero, .ops-guide-hero) { background: #fff; border: 1px solid var(--fcp-line); border-radius: var(--fcp-radius); color: var(--fcp-ink); box-shadow: var(--fcp-shadow); }
.fi-page :is(.fleet-hero, .template-rc-hero, .ops-guide-hero) :is(p, .fleet-eyebrow, .pill) { color: var(--fcp-muted); }
.fi-page .fleet-hero a { color: var(--fcp-brand) !important; }
.fi-page .fleet-pulse div { border-color: var(--fcp-line); background: var(--fcp-soft); backdrop-filter: none; }
.fi-page .fleet-pulse span { color: var(--fcp-muted); }
.fi-page .fleet-pulse strong { color: var(--fcp-ink); }
.fi-page :is(.fleet-section-head, .template-rc-head, .analytics-panel-head) { gap: 12px; flex-wrap: wrap; }
.fi-page :is(.campaign-name, .template-rc-plan strong, .ops-row strong) { overflow-wrap: anywhere; min-width: 0; }
.fi-page .analytics-compare-row { border: 1px solid var(--fcp-line); border-radius: 8px; padding: 12px; margin-top: 8px; }
.fi-page .analytics-remove { min-width: 32px; min-height: 32px; border-radius: 6px; }
.fi-page .analytics-remove:hover { background: #fff1f2; color: var(--fcp-danger); }
.fi-page .analytics-shell :is(button, select, input, a, summary):focus-visible { outline: 2px solid #64748b; outline-offset: 2px; box-shadow: none; }
.analytics-controls-disclosure > summary { cursor: pointer; color: var(--fcp-ink); font-size: 13px; font-weight: 600; padding: 4px 0; }
.analytics-controls-disclosure > summary span { color: var(--fcp-muted); font-size: 12px; font-weight: 400; margin-left: 12px; }
.analytics-controls-disclosure[open] > summary { margin-bottom: 12px; }
@media(max-width:1599px) { .ops-issues .ops-table :is(th,td):nth-child(3) { display: none; } }
@media(min-width:1280px) { #dashboard-filter-fields > .fi-sc.fi-grid { grid-template-columns: repeat(5,minmax(0,1fr)); } }
@media(max-width:639px) { .ops-filter-summary { align-items: start; }.ops-filter-summary > div { flex-direction: column; }.ops-compare-setup { padding: 20px 14px; } }
/* Read-only operational evidence: no additional chart/runtime dependencies. */
.ops-freshness { display:flex; justify-content:space-between; gap:.5rem 1rem; flex-wrap:wrap; color:#64748b; font-size:.75rem; }
.ops-freshness[data-freshness="stale"], .ops-freshness[data-freshness="unknown"] { color:#92400e; }
.ops-report-controls { display:flex; flex-wrap:wrap; align-items:end; gap:1rem; padding:1rem; }
.ops-report-controls label { display:grid; gap:.4rem; flex:1 1 12rem; min-width:0; font-size:.8rem; color:#475569; }
.ops-report-controls select, .ops-report-controls input { width:100%; min-width:0; padding:.55rem; border:1px solid #cbd5e1; border-radius:.5rem; background:#fff; color:#0f172a; }
.ops-funnel { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; padding:1rem; }
.ops-funnel > div { display:grid; gap:.6rem; min-width:0; }
.ops-funnel strong { font-size:1.5rem; overflow-wrap:anywhere; }
.ops-funnel span { font-size:.8rem; }
.ops-evidence-context { display:flex; flex-wrap:wrap; gap:1rem; padding:1rem; background:#f8fafc; }
.ops-timeline { list-style:none; margin:0; padding:1rem; }
.ops-timeline li { display:grid; grid-template-columns:11rem minmax(0,1fr); gap:1rem; border-left:2px solid #d1fae5; border-bottom:1px solid #f1f5f9; padding:1rem; }
.ops-timeline time, .ops-timeline small { font-size:.75rem; color:#64748b; }
.ops-timeline h3 { font-weight:600; overflow-wrap:anywhere; }
.ops-timeline p { font-size:.85rem; color:#475569; overflow-wrap:anywhere; }
@media(max-width:640px) { .ops-funnel { grid-template-columns:repeat(2,minmax(0,1fr)); } .ops-timeline li { grid-template-columns:1fr; gap:.4rem; } }
