/* Executive Light visual system. Existing components and behavior remain intact. */
:root{--navy:#0b2e63;--navy2:#0a2a5e;--panel:#fff;--panel2:#f7f9fc;--line:#e5e7eb;--text:#172033;--muted:#6b7280;--cyan:#5b8def;--blue:#1d5fd1;--green:#16804a;--yellow:#af7317;--red:#cf3d46;--white:#fff;--ink:#172033;--soft:#f5f7fa;--shadow:0 2px 10px rgba(26,50,88,.05)}
html,body{background:#f5f7fa;color:var(--text)}body{font-size:13px;line-height:1.45;font-variant-numeric:tabular-nums}button,select,input{font-variant-numeric:tabular-nums}button:focus-visible,select:focus-visible,input:focus-visible,.clickable:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.sidebar{width:208px;padding:24px 13px 20px;background:#0b2e63;border:0;box-shadow:2px 0 14px rgba(8,36,82,.09)}.brand{gap:10px;padding:0 8px 27px}.brand-mark{width:34px;height:34px;border-radius:7px;background:#fff;color:#0b2e63;font-size:21px}.brand strong{font-size:14px;letter-spacing:.6px}.brand small{color:#b9cdec;font-size:8px;letter-spacing:.35px}.sidebar nav{gap:5px}.nav-btn{min-height:41px;padding:10px 11px;border-radius:7px;color:#c9d7ed;font-weight:650;font-size:12px;transition:background .14s,color .14s}.nav-btn .num{width:21px;color:#a8c1e8;font-size:11px}.nav-btn:hover{background:#174279;color:white}.nav-btn.active{background:#1d5fd1;color:#fff;box-shadow:none}.nav-btn.active .num{color:#fff}.storage-state{margin-top:auto;padding:9px 10px;border-color:#3c5d8b;background:#11376b;color:#eff5ff}.storage-state small{color:#b8c9e1}.live-dot{background:#7dd8a3;box-shadow:none}.sidebar-footer{border-top:1px solid rgba(255,255,255,.16);margin-top:17px;padding:17px 10px 0;color:#fff;display:grid;gap:2px}.sidebar-footer strong{font-size:12px;letter-spacing:1px}.sidebar-footer span{font-size:8px;color:#c7d9f1;letter-spacing:.5px}.sidebar-footer small{color:#a7bddc;font-size:9px;line-height:1.45;margin-top:10px}
main{margin-left:208px;max-width:none;padding:0 28px 36px}.topbar{min-height:76px;margin:0 -28px 18px;padding:13px 28px;gap:16px;background:#fff;border-bottom:1px solid #e8edf4}.eyebrow,.section-label{color:#1d5fd1;font-size:10px;letter-spacing:1px}.topbar h1{color:#172033;font-size:25px;line-height:1.15;margin:4px 0}.subtitle{color:#6b7280;font-size:12px}.top-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px}.updated{color:#8491a3}.secondary,.reset,.tab-btn,.quick-btn,.period-btn{background:#fff;color:#44546a;border:1px solid #dce3ec;border-radius:7px;box-shadow:none;min-height:35px}.secondary:hover,.reset:hover,.tab-btn:hover,.quick-btn:hover,.period-btn:hover{color:#1d5fd1;border-color:#92b8f6;background:#f4f8ff}.primary{background:#1d5fd1;border:1px solid #1d5fd1;border-radius:7px;box-shadow:none}.primary:hover{background:#154da9}.tab-btn.active,.quick-btn.active,.period-btn.active{background:#1d5fd1;border-color:#1d5fd1;color:#fff}
.filterbar{grid-template-columns:minmax(105px,1fr) 10px minmax(105px,1fr) 10px minmax(105px,1fr) 10px minmax(105px,1fr) 10px minmax(105px,1fr) auto;gap:10px;margin:0 0 22px;padding:13px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:var(--shadow)}.filterbar label{color:#6b7280;font-size:11px;font-weight:650}.filterbar select{height:36px;margin-top:5px;padding:0 11px;border:1px solid #dbe2eb;border-radius:7px;background:#fff;color:#172033;font-weight:650;outline:0}.filterbar option{background:#fff;color:#172033}.filter-arrow{color:#a9b8cb}.filterbar .reset{height:38px;align-self:end;white-space:nowrap}
#app{max-width:1640px;margin:0 auto}.page{gap:20px}.notice{background:#eef8f2;border:1px solid #d5ebdd;color:#236243;border-radius:8px}.notice small{color:#4e7f61}.notice-icon{color:#16804a}.kpi-grid{gap:16px}.kpi{min-height:118px;padding:16px 18px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:var(--shadow);color:#172033}.kpi:after{display:none}.kpi .kpi-title{font-size:12px;color:#637083;font-weight:650}.kpi .kpi-icon{font-size:15px;color:#5b8def}.kpi strong{font-size:27px;line-height:1.14;margin:12px 0 7px;letter-spacing:-.7px;color:#142a4d}.kpi small{font-size:11px;color:#7b8798}.delta.up,.text-red{color:var(--red)}.delta.down,.text-green{color:var(--green)}.delta.flat{color:var(--yellow)}.grid{gap:18px}.card,.card.white{min-width:0;padding:18px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;color:#172033;box-shadow:var(--shadow)}.card-head{gap:12px;margin-bottom:15px}.card.white .card-head{padding-bottom:10px;border-color:#e8edf3}.card-head h2{font-size:17px;color:#162d52;line-height:1.25;margin:3px 0}.card-head small{font-size:11px;color:#7c8798}.card.white .section-label{color:#1d5fd1}.legend{gap:11px;color:#69788a}.legend .l-blue{color:#1d5fd1}.legend .l-cyan{color:#8bb5ff}.chart{height:190px}.bar{background:#1d5fd1;border-radius:3px 3px 0 0}.bar.cyan{background:#8bb5ff}.bar.red{background:#cf3d46}.bar-group label{color:#7b8798}.track,.white .track,.card.white .track{background:#e8eef6}.fill{background:#1d5fd1}.hrow{font-size:12px}.hrow b{color:#213b61}.donut-wrap{gap:17px;min-height:190px}.donut{width:128px;height:128px}.donut:after,.card.white .donut:after{width:79px;height:79px;background:#fff}.donut-center b{color:#163761}.donut-center small,.donut-legend small,.card.white .donut-center small,.card.white .donut-legend small{color:#6b7280}.donut-legend{font-size:11px}.waterfall{height:190px}.card.white .wf-col span,.card.white .wf-col b{color:#68778a}
.key-list,.focus-list{gap:8px}.key-item,.card.white .key-item{grid-template-columns:28px 1fr;gap:10px;padding:9px 10px;background:#fff;border:1px solid #e5eaf1;border-radius:8px;color:#172033}.key-item i,.card.white .key-item i{width:23px;height:23px;border-radius:50%;background:#e9f1ff;color:#1d5fd1;font-weight:800}.key-item b{color:#1e3557;font-size:12px}.key-item small,.card.white .key-item small{font-size:11px;color:#6b7280;line-height:1.35}.clickable{cursor:pointer}.clickable:hover,.key-item.clickable:hover{background:#f3f7ff!important;border-color:#a9c8f7!important}.clickable:hover .kpi{border-color:#a9c8f7}.insight,.card.white .insight{background:#f3f7ff;border-left:3px solid #5b8def;color:#172033;border-radius:0 6px 6px 0}.insight small{color:#6b7280}
.score-table,.data-table{font-size:12px}.score-table th,.data-table th,.card.white .score-table th,.card.white .data-table th{position:sticky;top:0;z-index:2;background:#eef3f9;color:#4b5d73;padding:10px 11px;border-bottom:1px solid #dfe6ee;text-align:left;font-weight:750}.score-table td,.data-table td,.card.white .score-table td,.card.white .data-table td{padding:10px 11px;background:#fff;color:#273b54;border-top:0;border-bottom:1px solid #eef1f5}.score-table tr:hover td,.data-table tr:hover td,.card.white .score-table tr:hover td,.card.white .data-table tr:hover td{background:#f0f6ff}.score-table th:not(:first-child),.score-table td:not(:first-child){text-align:right}.data-table td:has(.status),.data-table th:last-child{text-align:center}#vehicleTable th:nth-child(n+5):nth-child(-n+13),#vehicleTable td:nth-child(n+5):nth-child(-n+13){text-align:right}.table-scroll{border:1px solid #e9eef4;border-radius:7px}.status{padding:4px 8px;border-radius:5px}.status.good,.severity.low{color:#16804a;background:#e9f7ee}.status.warn,.severity.medium{color:#94610d;background:#fff5dc}.status.bad,.severity.high{color:#c73441;background:#fff0f1}
.metric-row{font-size:12px}.search-row{align-items:center;flex-wrap:wrap}.search-row input{min-height:36px;background:#fff;border-color:#dce3ec;color:#172033}.matrix,.card.white .matrix{background:linear-gradient(90deg,rgba(36,138,91,.055) 0 50%,rgba(234,165,53,.055) 50%),linear-gradient(0deg,rgba(30,99,211,.035) 0 50%,rgba(207,61,70,.045) 50%);border-color:#dfe6ee;border-radius:6px}.matrix:before,.matrix:after{background:#c6d2e2}.quadrant,.card.white .quadrant,.axis-x,.axis-y,.card.white .axis-x,.card.white .axis-y{color:#728197}.bubble{background:#1d5fd1;box-shadow:none}.bubble.focus{background:#cf3d46}.anomaly-card{background:#fff;border-color:#e5e7eb;box-shadow:none}.anomaly-card p{color:#6b7280}
.dropzone{background:#f3f8ff;border:1.5px dashed #8bb5ff;border-radius:10px;color:#17375f;transition:background .14s,border-color .14s}.dropzone.drag{background:#eaf3ff;border-color:#1d5fd1}.dropzone p{color:#6b7280}.flow-step{background:#f4f7fb;border-color:#e1e8f1;color:#456077}.flow-step:not(:last-child):after{color:#1d5fd1}.upload-month-field{background:#f1f6ff;border-color:#c9daf6}.upload-month-field label{color:#1b3762}.upload-month-field label strong{color:#af7317}.upload-month-field small{color:#657991}.upload-month-field input,.upload-queue-row input{background:#fff;color:#172033;border-color:#cfdae8;color-scheme:light}.upload-queue{background:#fff;border-color:#e1e7ef}.upload-queue-head small,.upload-queue-row small,.upload-queue-row label{color:#6b7280}.upload-queue-row{border-color:#edf0f4}.toast{background:#193c6d;border-color:#193c6d;box-shadow:0 10px 28px rgba(25,48,85,.18)}
.report-sheet{border:1px solid #dce3ec;box-shadow:0 7px 24px rgba(30,54,88,.08);border-radius:3px}.report-head{border-color:#1d5fd1}.report-box{border-color:#e1e8f0}.report-box h3{color:#154b9c}.report-kpi{border-color:#e1e8f0;background:#fbfcfe}.report-kpi small{color:#6b7280}.report-kpi b{color:#183968}.empty{color:#7a8798}
.drawer-backdrop{background:rgba(15,31,52,.35)}.drawer{width:min(500px,96vw);background:#f7f9fc;color:#172033;border-left:1px solid #dfe6ef;box-shadow:-12px 0 34px rgba(24,45,73,.16)}.drawer-head{background:#fff;border-bottom:1px solid #e5e7eb}.drawer-head h2{color:#172d50}.drawer-tabs{background:#fff;border-bottom:1px solid #e5e7eb}.drawer-tabs button{color:#657389}.drawer-tabs button.active{color:#1d5fd1;border-bottom-color:#1d5fd1}.breadcrumb{color:#4f6789;background:#f4f7fb;border-bottom:1px solid #e5e7eb}.drawer-body{background:#f7f9fc}.drawer-kpi{background:#fff;border-color:#e5e7eb}.drawer-kpi b{color:#19385e}.detail-row,.card.white .detail-row{border-color:#e5eaf1;color:#273b54}.detail-row:hover{background:#edf4ff}.loading{background:rgba(245,247,250,.88);color:#19365c}.loading span{border-color:#cbdcf8;border-top-color:#1d5fd1}
@media(min-width:1500px){.kpi-grid{grid-template-columns:repeat(8,minmax(0,1fr))}.kpi{min-height:118px;padding:16px}.kpi strong{font-size:24px;margin:11px 0 7px}}
@media(min-width:1366px){#app[data-view="executive"] .page>.grid:nth-child(3){grid-template-columns:minmax(0,1.65fr) minmax(235px,.8fr) minmax(205px,.7fr)!important}}
@media(max-width:1499px){.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1365px){main{padding-left:22px;padding-right:22px}.topbar{margin-left:-22px;margin-right:-22px;padding-left:22px;padding-right:22px}.sidebar{width:196px}main{margin-left:196px}.filterbar{gap:7px;padding:11px}.filterbar select{padding:0 6px}#app[data-view="executive"] .page>.grid:nth-child(3){grid-template-columns:minmax(0,1.4fr) minmax(240px,1fr)!important}#app[data-view="executive"] .page>.grid:nth-child(3)>.card:last-child{grid-column:1/-1}.kpi strong{font-size:24px}}
@media(max-width:1050px){.sidebar{width:74px;padding:17px 9px}.brand{padding:0 0 18px;justify-content:center}.brand div,.nav-btn span:not(.num),.storage-state div,.sidebar-footer{display:none}.nav-btn{justify-content:center;padding:10px}.nav-btn .num{width:auto}.storage-state{justify-content:center}main{margin-left:74px}.filterbar{grid-template-columns:repeat(3,minmax(0,1fr)) auto}.filter-arrow{display:none}.filterbar .reset{grid-column:auto}.grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}#app[data-view="executive"] .page>.grid:nth-child(3){grid-template-columns:1fr 1fr!important}}
@media(max-width:800px){.sidebar{position:static;width:100%;padding:9px;box-shadow:none}.brand,.storage-state,.sidebar-footer{display:none}.sidebar nav{gap:4px}.nav-btn{min-width:max-content;padding:8px 9px}.nav-btn span:not(.num){display:inline}.nav-btn .num{width:auto}main{margin:0;padding:0 16px 28px}.topbar{margin:0 -16px 15px;padding:13px 16px}.topbar h1{font-size:21px}.filterbar{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.filterbar .reset{grid-column:1/-1}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.two,.grid.three,.grid.equal,#app[data-view="executive"] .page>.grid:nth-child(3){grid-template-columns:1fr!important}#app[data-view="executive"] .page>.grid:nth-child(3)>.card:last-child{grid-column:auto}.page{gap:15px}.grid{gap:15px}}
@media(max-width:520px){.kpi{min-height:105px;padding:12px}.kpi strong{font-size:20px}.filterbar{grid-template-columns:1fr 1fr}.card,.card.white{padding:14px}.donut-wrap{flex-wrap:wrap}.top-actions .updated{display:none}.search-row input{width:100%}}
@media print{html,body{background:#fff}.report-sheet{border:0;box-shadow:none}}
/* Dense operational views and secondary controls */
.clickable:hover{transform:none}.compare-select{background:#fff;color:#172033;border-color:#dce3ec;min-height:35px}.raw-card{background:#fff;border-color:#e5e7eb;color:#172033}.breadcrumb button{color:#1d5fd1}.breadcrumb span{color:#8996a9}.drawer-head button{color:#50627a}.drawer-head button:hover{color:#1d5fd1}.drawer-tabs button:hover{background:#f4f8ff;color:#1d5fd1}.drawer-body .raw-card:hover{border-color:#a9c8f7}.report-actions{align-self:start}.report-actions label{color:#5c6b7f}.report-actions .compare-select{width:100%;margin:5px 0 13px}.report-actions .primary,.report-actions .secondary{width:100%;margin-top:7px}#app[data-view="report"] .page>.grid{grid-template-columns:180px minmax(0,1fr) 220px!important;align-items:start}#app[data-view="report"] .quick-filters{display:grid;width:100%}#app[data-view="report"] .quick-btn{text-align:left}#app[data-view="report"] .report-sheet{width:100%}#app[data-view="vehicle"] .table-scroll:has(#vehicleTable){max-height:min(56vh,620px)!important;min-height:360px}#app[data-view="vehicle"] .card:has(#vehicleTable){min-height:440px}#app[data-view="vehicle"] .search-row{gap:10px}#app[data-view="vehicle"] .quick-filters{flex:1}#app[data-view="anomaly"] .data-table th:nth-child(n+6):nth-child(-n+8),#app[data-view="anomaly"] .data-table td:nth-child(n+6):nth-child(-n+8),#app[data-view="data"] .data-table th:nth-child(n+2),#app[data-view="data"] .data-table td:nth-child(n+2){text-align:right}
.brand strong{color:#fff}.brand small{color:#b9cdec}.sidebar .storage-state b{color:#edf4ff}.sidebar .sidebar-footer strong{color:#fff}
@media(max-width:1200px){#app[data-view="report"] .page>.grid{grid-template-columns:1fr!important}#app[data-view="report"] .quick-filters{display:flex}#app[data-view="report"] .report-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#app[data-view="report"] .report-actions .card-head,#app[data-view="report"] .report-actions .detail-list{grid-column:1/-1}}
@media(min-width:1500px){#app:not([data-view="executive"]) .kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}#app[data-view="data"] .kpi-grid{grid-template-columns:repeat(7,minmax(0,1fr))}}
.ledger-note{margin:0 0 12px;color:#5c6b7f;font-size:12px}.ledger-scroll{max-height:420px}.ledger-scroll .data-table{min-width:960px}.ledger-scroll td:nth-child(4){max-width:290px;overflow:hidden;text-overflow:ellipsis}.ledger-scroll td:nth-child(6),.ledger-scroll th:nth-child(6){text-align:right}.ledger-scroll td:nth-child(7),.ledger-scroll th:nth-child(7){text-align:center}
.ledger-raw{display:grid;gap:0;margin-top:12px;border-top:1px solid #e5eaf1}.ledger-raw>div{display:grid;grid-template-columns:100px 1fr;gap:8px;padding:7px 0;border-bottom:1px solid #eef1f5;font-size:11px}.ledger-raw span{color:#6b7280}.ledger-raw b{font-weight:650;color:#253a57;overflow-wrap:anywhere}

/* Upload mapping, pre-validation and local folder sync */
.upload-main-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:14px 0 9px}.upload-main-actions button{min-height:37px}#folderSyncStatus{display:block;max-width:620px;margin:0 auto;color:#657991;line-height:1.45}
.validation-toolbar{flex-wrap:wrap}.validation-toolbar select{max-width:300px;min-height:34px;border:1px solid #d8e0ea;border-radius:6px;background:white;color:#172033}.validation-toolbar label{display:flex;align-items:center;gap:6px}
.data-modal-backdrop{position:fixed;inset:0;z-index:3000;display:grid;place-items:center;padding:24px;background:rgba(15,31,52,.46);backdrop-filter:blur(2px)}
.data-modal{display:flex;flex-direction:column;width:min(760px,96vw);max-height:92vh;overflow:hidden;background:#fff;border:1px solid #dfe6ef;border-radius:12px;box-shadow:0 24px 70px rgba(14,35,67,.25);color:#172033}
.data-modal>header{display:flex;justify-content:space-between;gap:18px;padding:20px 22px 16px;border-bottom:1px solid #e8edf3;background:#fbfcfe}.data-modal>header small{color:#1d5fd1;font-size:10px;font-weight:800;letter-spacing:1px}.data-modal>header h2{margin:3px 0 4px;color:#17365f;font-size:21px}.data-modal>header p{margin:0;color:#6b7280;font-size:12px}.modal-x{align-self:flex-start;width:34px;height:34px;border:1px solid #dce3ec;border-radius:7px;background:#fff;color:#657389;font-size:22px;line-height:1}.modal-x:hover{border-color:#92b8f6;color:#1d5fd1;background:#f4f8ff}
.data-modal>footer{display:flex;justify-content:flex-end;gap:9px;padding:14px 20px;border-top:1px solid #e5e7eb;background:#fbfcfe}.data-modal>footer button{min-width:110px}.data-modal .primary:disabled{cursor:not-allowed;opacity:.42}
.mapping-guide{margin:18px 20px 0;padding:11px 13px;border-left:3px solid #5b8def;background:#f3f7ff;color:#4e6076;font-size:12px}.mapping-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 16px;padding:18px 20px 22px;overflow:auto}.mapping-grid label{display:grid;gap:6px;color:#526176;font-size:12px;font-weight:700}.mapping-grid label.required span{color:#17365f}.mapping-grid select{width:100%;height:38px;padding:0 10px;border:1px solid #d8e0ea;border-radius:7px;background:#fff;color:#172033}
.validation-modal{width:min(1480px,97vw);height:min(880px,94vh)}.validation-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:15px 20px 10px}.validation-summary>div{padding:11px 13px;border:1px solid #e3e9f1;border-radius:8px;background:#f8fafc}.validation-summary small{display:block;color:#6b7280;font-size:10px}.validation-summary b{display:block;margin-top:3px;color:#17365f;font-size:18px}.validation-summary .error-count b{color:#c73441}.validation-summary .warning-count b{color:#94610d}.validation-toolbar{display:flex;align-items:center;gap:12px;padding:0 20px 12px;color:#6b7280;font-size:11px}.validation-sheet{flex:1;min-height:0;margin:0 20px 16px;overflow:auto;border:1px solid #dfe6ee;border-radius:8px}.validation-sheet table{width:100%;min-width:1180px;border-collapse:separate;border-spacing:0;font-size:11px}.validation-sheet th{position:sticky;top:0;z-index:4;padding:9px 8px;background:#eef3f9;color:#4b5d73;border-bottom:1px solid #dfe6ee;text-align:left;white-space:nowrap}.validation-sheet td{padding:6px 7px;border-bottom:1px solid #eef1f5;background:#fff;vertical-align:top}.validation-sheet tr.validation-error td{background:#fff6f6}.validation-sheet tr.validation-warning td{background:#fffaf0}.validation-sheet input{width:100%;min-width:94px;height:32px;padding:0 7px;border:1px solid #d8e0ea;border-radius:5px;background:#fff;color:#253a57}.validation-sheet input:focus{border-color:#5b8def;box-shadow:0 0 0 2px rgba(91,141,239,.12)}.validation-sheet .issue-cell{min-width:190px;line-height:1.45}.validation-badge{display:inline-block;margin:1px 3px 1px 0;padding:2px 6px;border-radius:10px;font-size:10px}.validation-badge.error{background:#fff0f1;color:#c73441}.validation-badge.warning{background:#fff5dc;color:#94610d}
@media(max-width:800px){.data-modal-backdrop{padding:8px}.data-modal{max-height:96vh}.mapping-grid{grid-template-columns:1fr}.validation-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.validation-toolbar{align-items:flex-start;flex-direction:column}.upload-main-actions{display:grid}.upload-main-actions button{width:100%}}

.danger{border:1px solid #f2b8bd;border-radius:8px;padding:9px 13px;background:#fff5f5;color:#b4232f;font-weight:750}.danger:hover{border-color:#df6f78;background:#fff0f1}.danger:disabled{cursor:not-allowed;opacity:.42}.file-actions{flex-wrap:wrap}.source-policy{border-color:#c8daf8;background:#f5f9ff}.source-policy .notice-icon{color:#1d5fd1}.delete-modal{width:min(620px,96vw)}.delete-form{display:grid;gap:16px;padding:22px}.delete-form>label:not(.delete-confirm){display:grid;gap:7px;color:#445269;font-size:12px;font-weight:750}.delete-form select{width:100%;height:42px;padding:0 11px;border:1px solid #d8e0ea;border-radius:7px;background:#fff;color:#172033}.delete-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:15px;border:1px solid #f0c9cd;border-radius:9px;background:#fff8f8}.delete-summary>strong,.delete-summary>small{grid-column:1/-1}.delete-summary>strong{color:#7e1d27}.delete-summary>div{padding:9px;border:1px solid #ecdfe0;border-radius:7px;background:#fff}.delete-summary span,.delete-summary b{display:block}.delete-summary span{color:#6b7280;font-size:10px}.delete-summary b{margin-top:3px;color:#172033;font-size:17px}.delete-summary small{color:#7c6265;line-height:1.5}.delete-confirm{display:flex;align-items:center;gap:8px;padding:11px 12px;border-radius:8px;background:#f7f9fc;color:#384861;font-weight:700}.delete-confirm input{width:17px;height:17px;accent-color:#c73441}@media(max-width:620px){.delete-summary{grid-template-columns:1fr}.delete-summary>strong,.delete-summary>small{grid-column:auto}}
.validation-sheet tr.has-error td{background:#fff6f6}.validation-sheet tr.has-warning td{background:#fffaf0}.validation-sheet td:nth-child(2) small{display:block;color:#7b8798}.validation-badge{font-weight:750}.validation-badge.ok{background:#e9f7ee;color:#16804a}

/* Decision support additions: filters, comparison, root cause, load distribution and map */
.active-filter-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 18px;padding:10px 14px;background:#fff;border:1px solid #e5e7eb;border-radius:9px;box-shadow:var(--shadow)}.active-filter-chips{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.active-filter-chips>strong{margin-right:3px;color:#4d5d73;font-size:12px}.filter-chip{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:4px 9px;border:1px solid #cfe0f7;border-radius:16px;background:#f2f7ff;color:#173a69}.filter-chip span{color:#6580a5;font-size:10px}.filter-chip b{font-size:11px}.filter-chip i{font-style:normal;color:#5576a1}.filter-chip:hover{border-color:#78a9ef;background:#e9f2ff}.data-freshness{display:grid;grid-template-columns:auto auto;gap:0 7px;align-items:center;min-width:250px;text-align:right}.data-freshness span{color:#6b7280;font-size:10px}.data-freshness b{color:#18375f;font-size:11px}.data-freshness small{grid-column:1/-1;max-width:300px;overflow:hidden;color:#7b8798;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.comparison-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.comparison-item{display:grid;grid-template-columns:1fr auto;align-items:end;gap:3px 10px;padding:12px 15px;background:#fff;border:1px solid #e5e7eb;border-radius:9px}.comparison-item span{color:#637083;font-size:11px}.comparison-item b{grid-row:1/3;grid-column:2;font-size:20px}.comparison-item small{color:#8792a1;font-size:10px}
.root-cause-list{display:grid;gap:8px}.root-cause-item{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;width:100%;padding:10px 11px;border:1px solid #e5eaf1;border-radius:8px;background:#fff;text-align:left}.root-cause-item:hover{border-color:#a9c8f7;background:#f3f7ff}.root-cause-item>i{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e9f1ff;color:#1d5fd1;font-style:normal;font-weight:800}.root-cause-item>span{display:grid;gap:2px}.root-cause-item b{color:#1e3557;font-size:12px}.root-cause-item small{color:#6b7280;font-size:11px}.root-cause-item em{color:#6681a5;font-size:10px;font-style:normal}.root-cause-item.bad>i{background:#fff0f1;color:#c73441}.root-cause-item.warn>i{background:#fff5dc;color:#94610d}.root-cause-item.good>i{background:#e9f7ee;color:#16804a}
.center-map-card{padding-bottom:14px}.center-map-layout{display:grid;grid-template-columns:minmax(500px,1.45fr) minmax(260px,.55fr);gap:18px;align-items:stretch}.center-map-layout #centerMap{position:relative;min-height:420px;border:1px solid #e7edf4;border-radius:9px;background:linear-gradient(180deg,#f8fbff,#f2f6fb);overflow:hidden}.map-loading{position:absolute;inset:0;display:grid;place-items:center;color:#7a8798;font-size:12px}.center-map-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-content:start}.center-map-row{display:grid;grid-template-columns:9px 1fr auto;align-items:center;gap:8px;min-height:62px;padding:9px 10px;border:1px solid #e4eaf2;border-radius:8px;background:#fff;text-align:left}.center-map-row:hover,.center-map-row.active{border-color:#78a9ef;background:#f1f6ff}.center-map-row>i{width:9px;height:9px;border-radius:50%;background:#94a3b8}.center-map-row.good>i{background:#1b9a59}.center-map-row.warn>i{background:#e6a628}.center-map-row.bad>i{background:#d9444d}.center-map-row>span{display:grid;gap:2px}.center-map-row>span b{color:#1b365d;font-size:11px}.center-map-row small{color:#7b8798;font-size:9px}.center-map-row>em{display:grid;gap:2px;color:#263b59;font-size:10px;font-style:normal;text-align:right}.center-map-row>em small{display:block}
.center-map-pins{position:absolute;inset:0;z-index:4;pointer-events:none}.map-center-pin{position:absolute;display:flex;align-items:center;gap:5px;padding:4px 7px 4px 5px;transform:translate(-9px,-50%);border:1px solid #d9e2ed;border-radius:15px;background:rgba(255,255,255,.93);box-shadow:0 2px 7px rgba(16,42,76,.16);color:#1d3659;font-size:10px;font-weight:800;white-space:nowrap;pointer-events:auto}.map-center-pin:hover,.map-center-pin.active{z-index:2;border-color:#1d5fd1;background:#eef5ff;color:#154da9}.map-center-pin i{width:12px;height:12px;border:3px solid #fff;border-radius:50%;background:#94a3b8;box-shadow:0 0 0 2px #94a3b8}.map-center-pin.good i{background:#1b9a59;box-shadow:0 0 0 2px #1b9a59}.map-center-pin.warn i{background:#e6a628;box-shadow:0 0 0 2px #e6a628}.map-center-pin.bad i{background:#d9444d;box-shadow:0 0 0 2px #d9444d}.map-center-pin.active i{transform:scale(1.18)}
.load-distribution{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.load-band{position:relative;display:grid;gap:4px;min-height:116px;padding:14px 12px;overflow:hidden;border:1px solid #e3e9f1;border-radius:9px;background:#fff;text-align:left}.load-band:hover,.load-band.active{border-color:#78a9ef;background:#f3f7ff}.load-band span{color:#5c6b7f;font-size:11px}.load-band b{color:#17365f;font-size:22px}.load-band small{color:#7b8798}.load-band i{position:absolute;left:0;bottom:0;height:4px;background:#1d5fd1}.load-band.bad i{background:#cf3d46}.load-band.warn i{background:#e6a628}.load-band.good i{background:#1b9a59}
.mapping-guide{display:flex;align-items:center;justify-content:space-between;gap:14px}.mapping-guide label{display:flex;align-items:center;gap:8px;color:#17365f;font-weight:750;white-space:nowrap}.mapping-guide select{height:36px;padding:0 30px 0 10px;border:1px solid #cbd9eb;border-radius:7px;background:#fff;color:#172033}.mapping-guide span{color:#5f7086}.mapping-grid label[hidden]{display:none!important}
@media(max-width:1200px){.center-map-layout{grid-template-columns:1fr}.center-map-list{grid-template-columns:repeat(4,1fr)}.active-filter-bar{align-items:flex-start;flex-direction:column}.data-freshness{text-align:left}}
@media(max-width:800px){.comparison-strip{grid-template-columns:1fr}.center-map-list{grid-template-columns:1fr 1fr}.center-map-layout #centerMap{min-height:360px}.load-distribution{grid-template-columns:1fr 1fr}.mapping-guide{align-items:flex-start;flex-direction:column}}

/* Center / region operational tables, quarter audit and unmapped trace */
.search-row.compact{justify-content:space-between;gap:10px;margin:0 0 11px}.search-row.compact input{width:min(320px,100%)}
.quarter-audit{display:grid;gap:13px}.quarter-total{display:grid;grid-template-columns:1fr auto;gap:3px 12px;align-items:center;padding:13px 15px;border:1px solid #d6e4f7;border-radius:9px;background:#f3f7ff}.quarter-total span{color:#50627a;font-size:12px;font-weight:750}.quarter-total b{grid-column:2;grid-row:1/3;color:#17365f;font-size:22px}.quarter-total small{color:#718096;font-size:10px}
.unclassified-guide{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 12px;padding:12px 14px;border:1px solid #f1d79a;border-radius:9px;background:#fff9e9;color:#654712}.unclassified-guide>div{display:grid;gap:2px}.unclassified-guide b{font-size:12px}.unclassified-guide small{color:#856c3d;font-size:11px}.unclassified-guide button{flex:0 0 auto}.source-locator{display:block;margin-top:3px;color:#74839a;font-size:9px;line-height:1.35}
#app[data-view="center"] .table-scroll{max-height:430px}#app[data-view="center"] .data-table th:nth-child(n+2):nth-child(-n+8),#app[data-view="center"] .data-table td:nth-child(n+2):nth-child(-n+8){text-align:right}#app[data-view="center"] .data-table th:last-child,#app[data-view="center"] .data-table td:last-child{text-align:center}
@media(max-width:800px){.unclassified-guide{align-items:flex-start;flex-direction:column}.unclassified-guide button{width:100%}.search-row.compact input{width:100%}}
