/* V28 palette retained; new controls are scoped to this repair. */
.it45{--ink:#0b1b3a;--blue:#1748d8;--deep:#082b73;--paper:#f5f1e8;color:var(--ink);max-width:1440px;margin:auto;padding:20px 24px;font:14px/1.5 Arial,Helvetica,sans-serif}
.it45 *{box-sizing:border-box}.it45 h2{font-size:25px;line-height:1.2;margin:0 0 8px;color:var(--deep)}.it45 h3{color:var(--deep);margin:0 0 8px}.it45 p{margin:8px 0}.it45 .bar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px}.it45 label{display:flex;flex-direction:column;gap:5px;font-weight:600;font-size:13px}.it45 input,.it45 select,.it45 textarea{font:14px Arial;border:1px solid #b8c3da;border-radius:6px;min-height:42px;padding:8px;max-width:100%;background:white;color:var(--ink)}.it45 input[type=checkbox]{min-height:20px}.it45 textarea{width:100%;min-height:100px}.it45 button,.it45 a.itbutton{border:1px solid var(--blue);background:var(--blue);color:white;border-radius:7px;min-height:42px;padding:9px 14px;font:600 13px Arial;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.it45 button.secondary{background:white;color:var(--deep)}.it45 button:disabled{opacity:.5;cursor:not-allowed}.it45 :focus-visible{outline:3px solid #e64c3a;outline-offset:3px}.it45 .notice{border-left:4px solid #1748d8;background:#eaf0ff;padding:12px 15px;margin:12px 0}.it45 .notice.error{border-color:#c84732;background:#fbe9e5}.it45 .cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:14px 0}.it45 .card,.it45 .panel45{background:white;border:1px solid #d7dce8;border-radius:12px;padding:16px;min-width:0}.it45 .card b{display:block;color:var(--blue);font-size:26px;letter-spacing:-.6px}.it45 .card h3{font-size:14px}.it45 .card small{font-size:12px;color:#526079}.it45 .columns{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:18px}.it45 .grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.it45 .scroll{overflow:auto;max-width:100%}.it45 table{width:100%;border-collapse:collapse;font-size:12px}.it45 th,.it45 td{padding:10px 8px;border-bottom:1px solid #d7dce8;text-align:left;vertical-align:top;max-width:32em;overflow-wrap:anywhere}.it45 th{background:#eaf0ff;color:var(--deep)}.it45 .sub{font-size:12px;color:#536078}.it45 details{margin-top:16px;border:1px solid #d7dce8;border-radius:8px;padding:12px}.it45 summary{cursor:pointer;font-weight:700;color:var(--deep)}.it45 svg{display:block;width:100%;height:auto;max-height:630px}.it45 svg text{font-family:Arial,Helvetica,sans-serif}.it45 .flow-track{stroke:#cfdaec;stroke-width:12;fill:none}.it45 .flow-current{stroke:#1748d8;stroke-width:5;fill:none;stroke-dasharray:10 11;animation:flow45 1.25s linear infinite}.it45 .flow-current.reverse{animation-direction:reverse}.it45 .flow-current.stopped{animation-play-state:paused;stroke:#6d778b}.it45 .flow-missing{stroke:#8490a6;stroke-width:2;stroke-dasharray:4 6;fill:none}.it45 .flow-label{fill:#082b73;font-size:13px;font-weight:bold;paint-order:stroke;stroke:#fff;stroke-width:5px;stroke-linejoin:round}.it45 .node-box{fill:#f5f1e8;stroke:#1748d8;stroke-width:2}.it45 .node-name{fill:#082b73;font-size:18px;font-weight:bold}.it45 .node-data{fill:#435474;font-size:13px}.it45 .selected{background:#eaf0ff}.it45 .code{font-family:monospace;font-size:12px}.it45 .inlinecheck{flex-direction:row;align-items:center;gap:8px}.it45 .controls-spaced{justify-content:space-between}.it45 .nowrap{white-space:nowrap}.it45 .full{grid-column:1/-1}.it45 .acresult{padding:14px;background:#f5f1e8}.it45 .recovery{padding:14px;border:1px solid #1748d8;border-radius:8px;background:white}.it45 .branchrow:hover{background:#f5f1e8}@keyframes flow45{to{stroke-dashoffset:-42}}
@media(prefers-reduced-motion:reduce){.it45 .flow-current{animation:none}}
@media(max-width:900px){.it45 .cards{grid-template-columns:repeat(3,minmax(0,1fr))}.it45 .columns{grid-template-columns:1fr}.it45 .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.it45{padding:14px 12px}.it45 .cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.it45 .card{padding:12px}.it45 .card b{font-size:23px}.it45 .grid{grid-template-columns:1fr}.it45 .bar{align-items:stretch}.it45 .bar>*{min-width:0;flex:1 1 140px}.it45 h2{font-size:23px}.it45 .panel45{padding:12px}.it45 svg{min-width:480px}.it45 .diagram{overflow-x:auto}.it45 .flow-label{font-size:14px}}
@media print{.it45 .bar button,.it45 input,.it45 input[type=file]{display:none}.it45 .flow-current{animation:none}.it45 .columns{display:block}.it45 .panel45{break-inside:avoid}}

#f45-loads .scroll,#load45-shared .scroll{max-height:420px;overflow:auto}#load45-shared th,#f45-loads th{position:sticky;top:0;z-index:1}
.it45 .s48-spatial{margin-top:20px}.it45 .s48-spatial [hidden]{display:none!important}.s48-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:16px}.s48-map{position:relative;height:540px;overflow:hidden;background:#f7f9ff;border:1px solid #bbc9e1;border-radius:9px;touch-action:none}.it45 .s48-map svg.gm-vectors{position:absolute;inset:0;width:100%;height:100%;min-width:0;max-height:none}.s48-map .gm-grid{stroke:#cbd5e8;stroke-width:1}.s48-diagram{overflow:auto;border:1px solid #bbc9e1;border-radius:9px;background:#f7f9ff}.it45 .s48-diagram svg{min-width:680px;width:100%;max-height:none}.s48-diagram [role=button]{cursor:pointer}.s48-diagram [role=button]:focus{outline:3px solid #e64c3a}.s48-result{font-size:22px;font-weight:bold;color:#1748d8}.s48-checks{margin:12px 0}.s48-checks dt{font-weight:bold;color:#082b73}.s48-checks dd{margin:0 0 12px;overflow-wrap:anywhere}.it45 .s48-spatial ol{padding-left:22px}.it45 .s48-spatial li{margin:7px 0}.it45 [data-select-bus][aria-pressed=true],.it45 [data-capacity-id][aria-pressed=true]{background:#eaf0ff;border:2px solid #082b73}
.c48-table{max-height:470px;overflow:auto;margin-top:16px}.c48-table th{position:sticky;top:0;z-index:1}.c48-detail{max-height:660px;overflow:auto}.c48-detail details{padding:10px 0;border-bottom:1px solid #dbe3f2}.c48-detail summary{color:#082b73;font-weight:600;cursor:pointer}.c48-detail p{overflow-wrap:anywhere}#capacity48-map-layers label{display:flex;align-items:flex-start;gap:8px;padding:10px}#capacity48-map-layers input{width:auto}
@media(max-width:900px){.s48-layout{grid-template-columns:1fr}.s48-map{height:460px}}@media print{.s48-map{height:120mm}.s48-layout{display:block}}

#n48-electrical{margin-top:24px;border:1px solid #c4d0e3;border-radius:10px;padding:16px}#n48-electrical>summary{font-size:18px;font-weight:700;color:#1748d8;cursor:pointer;padding:5px 0 15px}#n48-location-map{margin-top:0}#n48-location-map .s48-map{height:620px}#n48-location-map .bar{align-items:end;gap:10px}#n48-location-map .inlinecheck{align-items:center}[data-s48="coordinates"] input{min-width:120px}[data-s48="coordinate-editor"]{padding:12px;background:#f3f6fb;border:1px solid #cbd6e7;border-radius:8px;margin:12px 0}[data-s48="coordinate-editor"] summary{font-weight:bold;cursor:pointer}@media(max-width:700px){#n48-location-map .s48-map{height:460px}}
.n48-steps{color:#176f81;font-weight:600;margin:1rem 0}.n48-assumptions{margin:1rem 0}.n48-assumptions summary{cursor:pointer;color:#176f81}.n48-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:1rem 0}.n48-summary>div{padding:1rem;border:1px solid #d9e2e9;border-radius:10px;background:#f5f8fa}.n48-summary strong{display:block;font-size:1.55rem}.n48-summary span{display:block;font-size:.85rem;color:#536878}@media(max-width:650px){.n48-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
