/* ═══ SB_SC v107 · supply-chain assessment (chain lens · map lens · coverage · CO strip · MM mount) ═══ */
body{min-height:100vh}
/* v109 · frozen header doctrine: the sub line and the two control rows may never move or resize.
   Hard geometry: fixed heights for sub and metrics, fixed widths for every variable control. */
#scr-fundamentals #fmoSub{min-height:60px}
#scr-fundamentals .ob-head{min-height:66px;align-items:flex-start}
/* v112 · consolidated frozen band: title + back buttons + metrics + selectors in ONE sticky strip,
   full-bleed panel background with a brand underline so the band reads as chrome, not content */
.backbar{top:45px !important} /* unmapped screens keep the old sticky back-bar */
.sc-head{position:sticky;top:45px;z-index:44;background:var(--panel);margin:0 -24px 14px;padding:8px 24px 10px;border-bottom:2px solid var(--brand)}
.sc-head.sc-stuck{box-shadow:0 10px 22px rgba(8,12,14,.25)}
.sc-h1row{display:flex;align-items:center;gap:12px;min-height:30px}
.sc-h1row h1{margin:0;font-size:17px}
.sc-h1row .fm-breadcrumb{margin:0;position:relative;top:1px}
.sc-head .backbar{position:static !important;top:auto !important;margin-left:auto;padding:0;border:none !important;background:transparent !important;display:flex;gap:8px;box-shadow:none !important}
.sc-head .backbar .btn{padding:4px 10px;font-size:10.5px}
.sc-head .ob-head{position:static !important;padding:6px 0 0;border:none;background:transparent;min-height:0}
/* v113 · harmonised band: same title row, same 58px metric boxes, same strip rhythm everywhere */
.sc-head .ob-kpis{background:var(--bg);height:58px;overflow:hidden}
.sc-head .ob-kpis>div{min-width:170px;box-sizing:border-box}
.sc-head .ob-kpis .v{font-size:20px}
.sc-head .fm-breadcrumb{display:none} /* v113 · breadcrumbs duplicated the frozen title */
.sc-head h1 span{display:none}        /* v113 · fine print beside banners removed, all sections */
.sc-head .mcw-hd,.sc-head .kpirow{margin:6px 0 0}
.sc-head .mcw-hd h1{font-size:17px;margin:0}
.sc-head .mcw-kpis{margin:0}
/* PM keeps its metrics mast as a second frozen strip directly under the band */
.sc-pin{position:sticky;top:var(--sc-pm-top,95px);z-index:43;background:var(--panel);margin:0 -24px;padding:8px 24px;border-bottom:2px solid var(--brand)}
.sc-pin.sc-stuck{box-shadow:0 8px 18px rgba(8,12,14,.22)}
#scr-decisions #ppApp{overflow:visible !important} /* overflow:hidden defeats position:sticky */
/* v113 · schematic dashboard: six questions as succinct tiles, expanded view one click away */
.sc-dbtools{display:flex;gap:4px;margin-left:auto;align-self:center}
.sc-dbtools .tab{font-size:10px;padding:3px 10px}
.sc-dbgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:10px 0 18px}
.sc-dbtile{background:var(--panel);border:1px solid var(--line);border-top:2px solid var(--brand);padding:13px 15px;cursor:pointer}
.sc-dbtile .q{font-size:12.5px;font-weight:600;margin:0 0 7px;color:var(--txt)}
.sc-dbtile .v{font-size:24px;font-weight:600;color:var(--txt);font-variant-numeric:tabular-nums}
.sc-dbtile .v u{text-decoration:none;font-size:11px;font-weight:400;color:var(--faint);margin-left:6px}
.sc-dbtile .r{font-size:10.5px;color:var(--muted);margin-top:5px;line-height:1.45;min-height:30px}
.sc-dbtile .go{font-size:9.5px;letter-spacing:.5px;text-transform:uppercase;color:var(--brandLt);margin-top:8px}
body.sc-dbschem #scr-dash #prodTiles,body.sc-dbschem #scr-dash .db{display:none}
@media(max-width:1100px){.sc-dbgrid{grid-template-columns:repeat(2,1fr)}}
/* the left rail anchors to the top chrome instead of floating vertically centred */
.leftnav{top:59px !important;transform:none !important;max-height:calc(100vh - 75px);overflow-y:auto}
/* v110 · metrics read as data: brand rule and brand labels, quiet panel */
#scr-fundamentals #fmoKpis{border-top:2px solid var(--brandLt)}
#scr-fundamentals #fmoKpis .k{color:var(--brandLt)}
/* v110 · choices read as controls: the active choice fills solid, unselected stay outline */
#scr-fundamentals #fmoSubject .tab.on,#scr-fundamentals #fmoCols .tab.on,#scr-fundamentals #scLensCtl .tab.on{background:var(--brandLt);border-color:var(--brandLt);color:#0E1114}
#scr-fundamentals #fmoKpis{height:58px;overflow:hidden;flex:none}
#scr-fundamentals #fmoKpis>div{min-width:200px;box-sizing:border-box}
#scr-fundamentals #fmoSubjWrap{flex:none;width:312px}
#scr-fundamentals #scLensWrap{flex:none}
.sc-dim{opacity:.45 !important;pointer-events:none}
.sc-dim2{opacity:.45 !important}
.sc-lens{display:inline-flex;gap:4px;margin-left:12px;vertical-align:middle}
.sc-lens button{font:inherit;font-size:10px;padding:3px 10px;border:1px solid var(--line2);background:transparent;color:var(--muted);cursor:pointer;border-radius:3px}
.sc-lens button.on{background:var(--brandLt);border-color:var(--brandLt);color:#0E1114}
.sc-svgwrap{overflow-x:auto}
.sc-svgwrap svg{width:100%;height:auto;display:block;min-width:640px}
.sc-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:10px;color:var(--muted);margin-top:8px}
.sc-legend i{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:4px}
.sc-note{font-size:10.5px;color:var(--faint);margin-top:8px;line-height:1.5;border-top:1px solid var(--line);padding-top:6px}
.sc-ruler{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:4px 0 16px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.sc-ruler>div{font-size:10px;color:var(--muted)}
.sc-ruler b{display:flex;align-items:baseline;gap:6px;font-size:11px;color:var(--txt);margin-bottom:3px;font-weight:600}
.sc-ruler b i{display:inline-block;width:9px;height:9px;border-radius:2px;flex:none}
.sc-ruler b u{margin-left:auto;text-decoration:none;color:var(--brandLt);font-weight:600;font-variant-numeric:tabular-nums}
.sc-ruler .bar{height:7px;background:var(--panel2);position:relative;margin:3px 0;border-radius:2px;overflow:hidden}
.sc-ruler .bar i{position:absolute;left:0;top:0;bottom:0;background:var(--brandLt)}
.sc-ruler em{font-style:normal;font-size:8.5px;letter-spacing:.4px;text-transform:uppercase;color:var(--faint)}
.sc-frow{display:grid;grid-template-columns:150px minmax(0,1fr) 84px;gap:12px;align-items:center;margin-top:10px}
.sc-frow .n{font-size:11.5px;font-weight:600;color:var(--txt)}
.sc-frow .b{display:flex;height:13px;gap:2px}
.sc-frow .b i{display:block;height:100%;border-radius:2px}
.sc-frow .p{font-size:11px;font-weight:600;color:var(--brandLt);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.sc-hot{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:8px;font-size:10.5px;color:var(--muted)}
.sc-hot span{cursor:pointer}
.sc-hot b{color:var(--txt);font-weight:600}
.sc-hot u{text-decoration:none;color:var(--brandLt)}
@media(max-width:900px){.sc-ruler{grid-template-columns:repeat(2,1fr)}.sc-frow{grid-template-columns:110px minmax(0,1fr) 74px}}
