
/* R45-P9 — Operations Fair Comparison & Executive Decision Redesign */
.page-operations {
    --op91-ink:#101a33;
    --op91-muted:#64728d;
    --op91-line:#dce4ef;
    --op91-soft:#f6f8fc;
    --op91-primary:#5146e5;
    --op91-compare:#14a89a;
    --op91-navy:#0a2850;
    --op91-navy2:#0d4563;
    --op91-shadow:0 14px 42px rgba(31,51,82,.08);
}
.page-operations .operations91-page{display:grid;gap:18px;color:var(--op91-ink)}
.page-operations .operations91-controls,.page-operations .operations91-card,.page-operations .operations91-details{background:#fff;border:1px solid var(--op91-line);border-radius:22px;box-shadow:var(--op91-shadow)}
.page-operations .operations91-controls{display:grid;grid-template-columns:minmax(235px,.62fr) minmax(0,2.38fr);grid-template-areas:"copy filter" "note note" "alert alert";gap:14px 22px;padding:18px 20px;align-items:end}
.page-operations .operations91-controls-copy{grid-area:copy;align-self:center;min-width:0}
.page-operations .operations91-controls-copy>span,.page-operations .operations91-card-head span,.page-operations .operations91-agenda header span,.page-operations .operations91-section-head span,.page-operations .operations91-details summary span{display:block;color:#5b21b6;font-size:12px;font-weight:900;letter-spacing:.045em}
.page-operations .operations91-controls-copy strong{display:block;margin:6px 0 5px;font-size:21px;line-height:1.25}
.page-operations .operations91-controls-copy strong i{margin:0 5px;color:#6d28d9;font-size:13px;font-style:normal}
.page-operations .operations91-controls-copy p{margin:0;color:var(--op91-muted);font-size:14px;line-height:1.45}
.page-operations .operations91-filter{grid-area:filter;display:grid;grid-template-columns:minmax(135px,.8fr) minmax(115px,.65fr) minmax(115px,.65fr) minmax(105px,.55fr);gap:10px;align-items:end}
.page-operations .operations91-filter.is-range{grid-template-columns:minmax(125px,.7fr) minmax(145px,.8fr) minmax(145px,.8fr) minmax(115px,.65fr) minmax(105px,.55fr)}
.page-operations .operations91-filter label{min-width:0}
.page-operations .operations91-filter label>span{display:block;margin:0 0 6px;color:#3f4d68;font-size:11px;font-weight:900}
.page-operations .operations91-filter select,.page-operations .operations91-filter input{width:100%;min-height:46px;border:1px solid #d8e0ec;border-radius:13px;background:#fff;padding:0 12px;color:var(--op91-ink);font:inherit;font-weight:750}
.page-operations .operations91-filter button{min-height:46px;border:0;border-radius:13px;background:linear-gradient(135deg,#5630b5,#168fa7);color:#fff;font:inherit;font-weight:900;cursor:pointer}
.page-operations .operations91-contract{grid-area:note;display:flex;align-items:center;gap:9px;min-height:38px;padding:8px 12px;border:1px solid #dce4ef;border-radius:12px;background:#f7f9fc;color:#43506a;font-size:13px}
.page-operations .operations91-contract.is-fair{border-color:#c7e7d7;background:#f1faf5;color:#235b45}
.page-operations .operations91-contract>span{display:grid;place-items:center;flex:0 0 23px;width:23px;height:23px;border-radius:50%;background:#e8e2fa;color:#5b21b6;font-weight:900}
.page-operations .operations91-contract.is-fair>span{background:#d8f1e3;color:#087f63}
.page-operations .operations91-contract p{margin:0}
.page-operations .operations91-alert{grid-area:alert;margin:0;color:#9f1239;font-weight:800}
.page-operations .operations91-state{padding:28px;border:1px solid #fecdd3;border-radius:20px;background:#fff1f2}

.page-operations .operations91-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.06fr) minmax(500px,.94fr);grid-template-areas:"copy metrics" "strip strip";gap:18px 28px;padding:26px;border-radius:24px;background:linear-gradient(132deg,var(--op91-navy) 0%,#0b345b 56%,var(--op91-navy2) 100%);color:#fff;box-shadow:0 20px 54px rgba(7,39,76,.18)}
.page-operations .operations91-hero:after{content:"";position:absolute;right:-100px;bottom:-150px;width:420px;height:420px;border-radius:50%;border:1px solid rgba(255,255,255,.08)}
.page-operations .operations91-hero-copy{grid-area:copy;position:relative;z-index:1}
.page-operations .operations91-hero-copy>span{color:#7ee7dc;font-size:12px;font-weight:900;letter-spacing:.06em}
.page-operations .operations91-hero-copy h2{margin:9px 0 6px;color:#fff;font-size:clamp(32px,3vw,44px);line-height:1.05;letter-spacing:-.035em}
.page-operations .operations91-hero-delta{display:inline-flex;align-items:center;min-height:34px;margin:4px 0 13px;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.12);color:#fff!important;font-size:17px;font-weight:900}
.page-operations .operations91-hero-copy p{max-width:720px;margin:0;color:#d9e7f4;font-size:16px;line-height:1.65}
.page-operations .operations91-period-line{display:flex;align-items:center;gap:8px;margin-top:16px;color:#fff;font-size:13px}
.page-operations .operations91-period-line i{color:#7ee7dc;font-style:normal;font-weight:900}
.page-operations .operations91-hero-metrics{grid-area:metrics;position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;align-self:center}
.page-operations .operations91-hero-metrics article{min-width:0;padding:14px;border:1px solid rgba(255,255,255,.16);border-radius:16px;background:rgba(255,255,255,.09)}
.page-operations .operations91-hero-metrics span{display:block;min-height:31px;color:#bcd2e6;font-size:10px;font-weight:800;line-height:1.35}
.page-operations .operations91-hero-metrics strong{display:block;margin:7px 0 5px;color:#fff;font-size:29px;line-height:1}
.page-operations .operations91-hero-metrics small{display:block;color:#d4e3ef;font-size:11px;font-weight:750;line-height:1.35}
.page-operations .operations91-hero-strip{grid-area:strip;position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(255,255,255,.13);border-radius:15px;background:rgba(255,255,255,.075)}
.page-operations .operations91-hero-strip>span{padding:10px 14px;border-right:1px solid rgba(255,255,255,.12)}
.page-operations .operations91-hero-strip small{display:block;color:#bcd2e6;font-size:10px;font-weight:800}
.page-operations .operations91-hero-strip b{display:block;margin-top:3px;color:#fff;font-size:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.page-operations .operations91-hero-strip em{display:block;margin-top:2px;color:#d5e5f1;font-size:11px;font-style:normal;font-weight:800}
.page-operations .is-up{color:#047857!important}
.page-operations .is-down{color:#c5283d!important}
.page-operations .is-neutral{color:#64748b!important}
.page-operations .operations91-hero .is-up,.page-operations .operations91-hero .is-down,.page-operations .operations91-hero .is-neutral{color:#fff!important}

.page-operations .operations91-main-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(315px,.55fr);gap:18px}
.page-operations .operations91-card{padding:21px}
.page-operations .operations91-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.page-operations .operations91-card-head h2,.page-operations .operations91-agenda h2,.page-operations .operations91-section-head h2{margin:6px 0 5px;color:var(--op91-ink);font-size:clamp(25px,2.2vw,31px);line-height:1.15;letter-spacing:-.025em}
.page-operations .operations91-card-head p,.page-operations .operations91-section-head p{margin:0;color:var(--op91-muted);line-height:1.5}
.page-operations .operations91-tabs{display:flex;gap:7px}
.page-operations .operations91-tabs button{min-height:40px;padding:0 13px;border:1px solid var(--op91-line);border-radius:12px;background:#fff;color:#35415b;font:inherit;font-size:12px;font-weight:900;cursor:pointer}
.page-operations .operations91-tabs button.is-active{border-color:transparent;background:linear-gradient(135deg,#5a3ce0,#2089df);color:#fff;box-shadow:0 8px 20px rgba(81,70,229,.2)}
.page-operations .operations91-chart-stage{position:relative;min-height:405px;margin-top:8px}
.page-operations .operations91-chart-stage canvas{width:100%;height:390px;min-height:390px}
.page-operations .operations91-chart-state{display:none;position:absolute;inset:25px;place-items:center;border:1px dashed var(--op91-line);border-radius:16px;background:#f8fafc;text-align:center}
.page-operations .operations91-chart-card[data-operations91-chart-state="empty"] .operations91-chart-state.is-empty,.page-operations .operations91-chart-card[data-operations91-chart-state="error"] .operations91-chart-state.is-error{display:grid}
.page-operations .operations91-chart-card[data-operations91-chart-state="empty"] canvas,.page-operations .operations91-chart-card[data-operations91-chart-state="error"] canvas{display:none}

.page-operations .operations91-agenda header{margin-bottom:12px}
.page-operations .operations91-agenda article{display:grid;grid-template-columns:38px minmax(0,1fr);gap:11px;padding:14px 0;border-top:1px solid var(--op91-line)}
.page-operations .operations91-agenda article:first-of-type{border-top:0}
.page-operations .operations91-agenda article>i{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#eee9ff;color:#5b21b6;font-style:normal;font-weight:900}
.page-operations .operations91-agenda small{display:block;color:var(--op91-muted);font-size:10px;font-weight:900;letter-spacing:.04em}
.page-operations .operations91-agenda strong{display:block;margin:4px 0;font-size:16px;line-height:1.3}
.page-operations .operations91-agenda b{font-size:15px}
.page-operations .operations91-agenda p{margin:7px 0 0;color:var(--op91-muted);font-size:13px;line-height:1.45}

.page-operations .operations91-concentration{padding:21px}
.page-operations .operations91-section-head{display:flex;justify-content:space-between;gap:18px;margin-bottom:14px}
.page-operations .operations91-concentration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.page-operations .operations91-concentration-grid>article{padding:16px;border:1px solid var(--op91-line);border-radius:17px;background:#fbfcff}
.page-operations .operations91-concentration-grid h3{margin:0 0 10px;font-size:19px}
.page-operations .operations91-rank-list{display:grid;gap:0}
.page-operations .operations91-rank-list>div{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 0;border-top:1px solid var(--op91-line)}
.page-operations .operations91-rank-list>div:first-child{border-top:0}
.page-operations .operations91-rank-list i{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#eee9ff;color:#5b21b6;font-style:normal;font-weight:900}
.page-operations .operations91-rank-list section{min-width:0}
.page-operations .operations91-rank-list strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
.page-operations .operations91-rank-list small{display:block;margin-top:4px;color:var(--op91-muted);font-size:11px}
.page-operations .operations91-rank-list b{font-size:13px;white-space:nowrap}

.page-operations .operations91-details{overflow:hidden}
.page-operations .operations91-details summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 20px;cursor:pointer;list-style:none}
.page-operations .operations91-details summary::-webkit-details-marker{display:none}
.page-operations .operations91-details summary strong{display:block;margin-top:4px;font-size:17px}
.page-operations .operations91-details summary>b{padding:8px 12px;border-radius:999px;background:#f0ecff;color:#5b21b6;font-size:12px}
.page-operations .operations91-details[open] summary{border-bottom:1px solid var(--op91-line)}
.page-operations .operations91-detail-content{display:grid;gap:18px;padding:20px}
.page-operations .operations91-detail-content header{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}
.page-operations .operations91-detail-content h3{margin:0;font-size:20px}
.page-operations .operations91-detail-content header p{margin:0;color:var(--op91-muted)}
.page-operations .operations91-table-wrap{overflow:auto;border:1px solid var(--op91-line);border-radius:14px}
.page-operations .operations91-table-wrap table{width:100%;min-width:760px;border-collapse:collapse}
.page-operations .operations91-table-wrap th,.page-operations .operations91-table-wrap td{padding:13px 14px;border-bottom:1px solid var(--op91-line);text-align:left}
.page-operations[dir="rtl"] .operations91-table-wrap th,.page-operations[dir="rtl"] .operations91-table-wrap td{text-align:right}
.page-operations .operations91-table-wrap th{background:#f5f7fb;color:#4b5871;font-size:11px}
.page-operations .operations91-table-wrap tr:last-child td{border-bottom:0}

@media(max-width:1320px){
    .page-operations .operations91-controls{grid-template-columns:1fr;grid-template-areas:"copy" "filter" "note" "alert"}
    .page-operations .operations91-filter,.page-operations .operations91-filter.is-range{grid-template-columns:repeat(3,minmax(0,1fr))}
    .page-operations .operations91-hero{grid-template-columns:1fr;grid-template-areas:"copy" "metrics" "strip"}
}
@media(max-width:1060px){
    .page-operations .operations91-main-grid{grid-template-columns:1fr}
    .page-operations .operations91-hero-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
    .page-operations .operations91-concentration-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
    .page-operations .operations91-controls,.page-operations .operations91-card{padding:15px}
    .page-operations .operations91-filter,.page-operations .operations91-filter.is-range{grid-template-columns:1fr}
    .page-operations .operations91-hero{padding:20px 16px}
    .page-operations .operations91-hero-metrics,.page-operations .operations91-hero-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
    .page-operations .operations91-card-head{flex-direction:column}
    .page-operations .operations91-tabs{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}
    .page-operations .operations91-chart-stage{min-height:350px}
    .page-operations .operations91-chart-stage canvas{height:335px;min-height:335px}
    .page-operations .operations91-detail-content header{flex-direction:column}
}


/* R45-P9.1 — Control period line and topbar no-overlap polish */
.page-operations .operations91-controls {
    grid-template-columns: minmax(300px, .72fr) minmax(0, 2.28fr);
}
.page-operations .operations91-controls-copy strong {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 8px;
    white-space: nowrap;
    font-size: 20px;
    letter-spacing: -.015em;
}
.page-operations .operations91-controls-copy strong i {
    flex: 0 0 auto;
    margin: 0;
}
.page-operations .elite-topbar--flow-safe {
    margin-bottom: 18px;
}
.page-operations .operations91-page > section,
.page-operations .operations91-page > details {
    scroll-margin-top: 18px;
}
.page-operations .operations91-rank-list > div {
    grid-template-columns: 34px minmax(0, 1fr) minmax(80px, auto);
}
.page-operations .operations91-rank-list b {
    text-align: end;
}

@media (max-width: 1320px) {
    .page-operations .operations91-controls {
        grid-template-columns: 1fr;
    }
    .page-operations .operations91-controls-copy strong {
        justify-content: flex-start;
    }
}
@media (max-width: 520px) {
    .page-operations .operations91-controls-copy strong {
        white-space: normal;
        flex-wrap: wrap;
    }
}


/* R45-P9.2 — Light executive KPI cards and semantic performance colors */
.page-operations .operations91-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}
.page-operations .operations91-kpi {
    --tone: #7c3aed;
    position: relative;
    min-width: 0;
    min-height: 150px;
    overflow: hidden;
    padding: 21px 20px 18px;
    border: 1px solid var(--op91-line);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(15,23,42,.045);
}
.page-operations .operations91-kpi::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 4px;
    background: var(--tone);
}
.page-operations[dir="rtl"] .operations91-kpi::before {
    inset: 0 0 0 auto;
}
.page-operations .operations91-kpi::after {
    content: "";
    position: absolute;
    width: 96px;
    height: 96px;
    right: -38px;
    bottom: -48px;
    border-radius: 50%;
    background: color-mix(in srgb, var(--tone) 10%, white);
}
.page-operations[dir="rtl"] .operations91-kpi::after {
    right: auto;
    left: -38px;
}
.page-operations .operations91-kpi.tone-blue { --tone: #2563eb; }
.page-operations .operations91-kpi.tone-teal { --tone: #0f9f8f; }
.page-operations .operations91-kpi.tone-violet { --tone: #7c3aed; }
.page-operations .operations91-kpi.tone-amber { --tone: #d97706; }
.page-operations .operations91-kpi-label {
    display: block;
    margin-bottom: 8px;
    color: #52627a;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
}
.page-operations .operations91-kpi > strong {
    position: relative;
    z-index: 1;
    display: block;
    color: var(--op91-ink);
    font-size: clamp(30px, 2.55vw, 42px);
    line-height: 1.05;
    letter-spacing: -.035em;
}
.page-operations .operations91-kpi > small {
    position: relative;
    z-index: 1;
    display: block;
    margin-top: 8px;
    color: var(--op91-muted);
    font-size: 13px;
    line-height: 1.45;
}
.page-operations .operations91-delta {
    position: relative;
    z-index: 1;
    display: inline-flex;
    width: fit-content;
    margin-top: 8px;
    padding: 4px 7px;
    border-radius: 999px;
    font-size: 12px;
    font-style: normal;
    font-weight: 900;
}
.page-operations .operations91-delta.positive {
    color: #047857;
    background: #e8f8f2;
}
.page-operations .operations91-delta.negative {
    color: #c5283d;
    background: #fff0f2;
}
.page-operations .operations91-delta.neutral {
    color: #475569;
    background: #f1f5f9;
}

.page-operations .operations91-summary-card {
    display: grid;
    grid-template-columns: minmax(300px, 1fr) minmax(0, 2.3fr);
    gap: 22px;
    align-items: center;
    padding: 22px 24px;
    background: linear-gradient(100deg, #ffffff 0%, #f8f4ff 48%, #effbfd 100%);
}
.page-operations .operations91-summary-intro > span {
    display: block;
    color: #5b21b6;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .045em;
}
.page-operations .operations91-summary-intro h2 {
    margin: 6px 0 8px;
    color: var(--op91-ink);
    font-size: clamp(25px, 2.2vw, 32px);
    line-height: 1.16;
    letter-spacing: -.025em;
}
.page-operations .operations91-summary-intro > strong {
    display: block;
    margin-bottom: 6px;
    font-size: 16px;
    line-height: 1.35;
}
.page-operations .operations91-summary-intro p {
    margin: 0;
    color: var(--op91-muted);
    font-size: 15px;
    line-height: 1.55;
}
.page-operations .operations91-summary-signals {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-left: 1px solid #dfe7f2;
}
.page-operations[dir="rtl"] .operations91-summary-signals {
    border-left: 0;
    border-right: 1px solid #dfe7f2;
}
.page-operations .operations91-summary-signals article {
    min-width: 0;
    padding: 10px 16px;
    border-right: 1px solid #dfe7f2;
}
.page-operations[dir="rtl"] .operations91-summary-signals article {
    border-right: 0;
    border-left: 1px solid #dfe7f2;
}
.page-operations .operations91-summary-signals article:last-child {
    border-right: 0;
    border-left: 0;
}
.page-operations .operations91-summary-signals span {
    display: block;
    color: #64748b;
    font-size: 12px;
    font-weight: 850;
}
.page-operations .operations91-summary-signals strong {
    display: block;
    margin-top: 8px;
    color: var(--op91-ink);
    font-size: 18px;
    line-height: 1.25;
    overflow-wrap: anywhere;
}
.page-operations .operations91-summary-signals small {
    display: block;
    margin-top: 6px;
    color: #53657f;
    font-size: 12px;
    font-weight: 750;
    line-height: 1.4;
}
.page-operations .is-positive {
    color: #047857 !important;
}
.page-operations .is-negative {
    color: #c5283d !important;
}
.page-operations .is-neutral {
    color: #64748b !important;
}

/* Preserve red/green semantics in every decision area. */
.page-operations .operations91-agenda .is-up,
.page-operations .operations91-rank-list .is-up,
.page-operations .operations91-table-wrap .is-up {
    color: #047857 !important;
}
.page-operations .operations91-agenda .is-down,
.page-operations .operations91-rank-list .is-down,
.page-operations .operations91-table-wrap .is-down {
    color: #c5283d !important;
}

@media(max-width:1120px){
    .page-operations .operations91-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .page-operations .operations91-summary-card {
        grid-template-columns: 1fr;
    }
    .page-operations .operations91-summary-signals {
        border-left: 0;
        border-right: 0;
        border-top: 1px solid #dfe7f2;
        padding-top: 10px;
    }
}
@media(max-width:700px){
    .page-operations .operations91-kpi-grid {
        grid-template-columns: 1fr;
    }
    .page-operations .operations91-summary-signals {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .page-operations .operations91-summary-signals article:nth-child(2) {
        border-right: 0;
    }
}
@media(max-width:460px){
    .page-operations .operations91-summary-signals {
        grid-template-columns: 1fr;
    }
    .page-operations .operations91-summary-signals article {
        border-right: 0;
        border-left: 0;
        border-bottom: 1px solid #dfe7f2;
    }
    .page-operations .operations91-summary-signals article:last-child {
        border-bottom: 0;
    }
}
