.ost-power-flow{--flow-ink:#152f55;--flow-muted:#526883;--flow-line:#dbe7f3;--flow-blue:#0665db;--flow-green:#15803d;--flow-red:#dc2626;font:400 15px/1.45 "OST Sans",Arial,sans-serif;color:var(--flow-ink);background:#eaf4fd;padding:24px;max-width:1680px;margin:auto;font-variant-numeric:tabular-nums;text-align:left}
.ost-power-flow *{box-sizing:border-box}.ost-power-flow [hidden]{display:none!important}.ost-power-flow h1,.ost-power-flow h2,.ost-power-flow p{margin:0;font-family:inherit;text-transform:none;letter-spacing:normal}.ost-power-flow h1{font-size:24px;font-weight:600;line-height:1.2}.ost-power-flow h2{font-size:18px;font-weight:600}.ost-power-flow button,.ost-power-flow input,.ost-power-flow select{font:inherit;text-transform:none;letter-spacing:normal;line-height:1.35;border:1px solid #becfe2;border-radius:6px;min-height:40px;background:#fff;color:var(--flow-ink);padding:8px 12px;box-shadow:none}.ost-power-flow button{cursor:pointer;white-space:nowrap}.ost-power-flow button:hover{background:#e0efff}.ost-power-flow button:disabled{opacity:.55;cursor:wait}.ost-power-flow :focus-visible{outline:2px solid var(--flow-ink);outline-offset:3px}.ost-power-flow ::selection{background:#c6dff7;color:#152f55}.ost-power-flow input{caret-color:var(--flow-blue)}.ost-power-flow .flow-primary{background:var(--flow-blue);color:#fff;border-color:var(--flow-blue)}.ost-power-flow .flow-primary:hover{background:#0055bd}.ost-power-flow .flow-initial{padding:64px 20px;text-align:center}.ost-power-flow .flow-login{padding:64px 20px;min-height:520px;display:grid;place-items:center}.ost-power-flow .flow-login-form{width:100%;max-width:400px;background:#fff;border:1px solid var(--flow-line);border-radius:12px;padding:32px}.ost-power-flow .flow-login-form>p:first-of-type{margin:12px 0 28px;color:var(--flow-muted)}.ost-power-flow .flow-login-form label{display:block;margin:16px 0 6px}.ost-power-flow .flow-login-form input,.ost-power-flow .flow-login-form button{display:block;width:100%;height:46px}.ost-power-flow .flow-login-form button{margin-top:24px}.ost-power-flow .flow-login-status{margin:12px 0;color:#a82020;font-size:14px}.ost-power-flow .flow-login-form small{color:var(--flow-muted);font-size:13px}.ost-power-flow .flow-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}.ost-power-flow .flow-heading p{font-size:14px;color:var(--flow-muted);margin-top:6px}.ost-power-flow .flow-account{display:flex;align-items:center;gap:12px;font-size:13px}.ost-power-flow .flow-account button{min-height:36px;padding:6px 10px}.ost-power-flow .flow-toolbar{display:flex;align-items:end;gap:18px;flex-wrap:wrap;background:#fff;border:1px solid var(--flow-line);border-radius:12px;padding:16px}.ost-power-flow .flow-latest[aria-pressed=true]{background:#e0efff;color:#0055bd;border-color:#8aafd3}.ost-power-flow .flow-date-form{display:flex;align-items:end;gap:10px}.ost-power-flow .flow-date-form label{display:grid;gap:5px;font-size:13px}.ost-power-flow .flow-date-form input{width:160px}.ost-power-flow .flow-layers{display:flex;gap:6px;margin-left:auto}.ost-power-flow .flow-layers button{display:flex;align-items:center;gap:8px}.ost-power-flow .flow-layers button[aria-pressed=false]{opacity:.5;background:#f6faff}.ost-power-flow .flow-dot{display:inline-block;width:9px;height:9px;border-radius:50%;flex-shrink:0}.ost-power-flow .flow-green{background:var(--flow-green)}.ost-power-flow .flow-red{background:var(--flow-red)}.ost-power-flow .flow-statusbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:54px;padding:8px 2px;font-size:13px;color:var(--flow-muted)}.ost-power-flow .flow-statusbar button{border:0;background:transparent;min-height:32px;padding:4px 8px;color:#0055bd}.ost-power-flow .flow-status.is-error{color:#a82020}.ost-power-flow .flow-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px;align-items:start}.ost-power-flow .flow-main{background:#f6faff;border:1px solid var(--flow-line);border-radius:12px;overflow:hidden;min-width:0}.ost-power-flow .flow-viewbar{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;background:#fff;border-bottom:1px solid var(--flow-line)}.ost-power-flow .flow-tabs{display:flex;gap:4px}.ost-power-flow .flow-viewbar button{font-size:13px;min-height:36px;padding:6px 10px}.ost-power-flow .flow-tabs button{border-color:transparent}.ost-power-flow .flow-tabs button[aria-pressed=true]{background:#e0efff;color:#0055bd}.ost-power-flow .flow-canvas-wrap{position:relative;height:max(760px,calc(100vh - 300px));overflow:hidden;touch-action:none}.ost-power-flow .flow-canvas-tools{position:absolute;left:16px;top:16px;z-index:1;display:flex;gap:4px}.ost-power-flow .flow-canvas-tools button{min-width:36px;min-height:36px;font-size:12px;padding:6px 10px}.ost-power-flow .flow-canvas-tools [data-action=in],.ost-power-flow .flow-canvas-tools [data-action=out]{font-size:20px;padding:0}.ost-power-flow .flow-svg{display:block;width:100%;height:100%;cursor:grab;touch-action:none;user-select:none;max-width:none}.ost-power-flow .flow-svg.is-dragging{cursor:grabbing}.ost-power-flow .flow-pan-help{position:absolute;bottom:12px;left:16px;font-size:11px;color:var(--flow-muted);pointer-events:none}.ost-power-flow .flow-route{color:var(--flow-green);outline:none;transition:opacity .15s}.ost-power-flow .flow-level-400{color:var(--flow-red)}.ost-power-flow .flow-wire{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:.35}.ost-power-flow .flow-route[data-state=flow] .flow-wire,.ost-power-flow .flow-route[data-state=zero] .flow-wire{opacity:.75}.ost-power-flow .flow-route[data-state=missing] .flow-wire,.ost-power-flow .flow-route:not([data-key]) .flow-wire{stroke-dasharray:5 4}.ost-power-flow .flow-hit{fill:none;stroke:transparent;stroke-width:14;cursor:pointer}.ost-power-flow .flow-route.is-selected .flow-wire,.ost-power-flow .flow-route:focus-visible .flow-wire{stroke-width:4;opacity:1}.ost-power-flow .flow-route:focus-visible .flow-hit{stroke:#c2d9ed;stroke-opacity:.3}.ost-power-flow .flow-route.is-selected .flow-number{fill:var(--flow-ink);font-weight:700}.ost-power-flow .flow-particles path,.ost-power-flow .flow-fixed-arrow path{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.ost-power-flow .flow-number{font:500 11px "OST Sans",Arial,sans-serif;fill:var(--flow-ink);paint-order:stroke;stroke:#f6faff;stroke-width:5;stroke-linejoin:round;pointer-events:none}.ost-power-flow .flow-station{fill:#f6faff;stroke:currentColor;stroke-width:2.5;color:var(--flow-green)}.ost-power-flow .flow-station.flow-level-400{color:var(--flow-red)}.ost-power-flow .flow-stations text{font:500 14px "OST Sans",Arial,sans-serif;fill:var(--flow-ink);paint-order:stroke;stroke:#f6faff;stroke-width:4;pointer-events:none}.ost-power-flow .flow-fixed-arrow{display:none}.ost-power-flow.is-paused .flow-fixed-arrow{display:block}.ost-power-flow.is-paused .flow-particles{display:none}.ost-power-flow .flow-route.is-hidden{opacity:.06;pointer-events:none}.ost-power-flow .flow-details{padding:20px;background:#fff;border:1px solid var(--flow-line);border-radius:12px;min-width:0}.ost-power-flow .flow-select-label{display:grid;gap:7px;margin:20px 0 0;font-size:13px;color:var(--flow-muted)}.ost-power-flow .flow-metric-select{width:100%;font-size:13px;padding:10px 8px;min-width:0}.ost-power-flow .flow-detail-body{padding:24px 0;min-height:180px}.ost-power-flow .flow-detail-body p{font-size:14px;color:var(--flow-muted);margin:12px 0}.ost-power-flow .flow-detail-body h3{font:600 17px/1.4 "OST Sans",Arial,sans-serif;color:var(--flow-ink);margin:0 0 12px}.ost-power-flow .flow-detail-value{font-size:30px;font-weight:500;line-height:1.2;letter-spacing:-.02em}.ost-power-flow .flow-detail-value small{font-size:14px;margin-left:5px;color:var(--flow-muted);letter-spacing:normal}.ost-power-flow .flow-direction-label{font-size:12px;color:var(--flow-muted);display:block;margin-top:20px}.ost-power-flow .flow-direction-value{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:6px;font-size:14px}.ost-power-flow .flow-direction-value svg{width:20px;height:16px;flex:none}.ost-power-flow .flow-source-key{font-size:11px;overflow-wrap:anywhere;color:var(--flow-muted);margin-top:20px}.ost-power-flow .flow-legend{border-top:1px solid var(--flow-line);padding-top:16px;font-size:13px;color:var(--flow-muted)}.ost-power-flow .flow-legend p{margin-bottom:10px}.ost-power-flow .flow-legend .flow-dot{margin-right:8px}.ost-power-flow .flow-footnote{font-size:12px;color:var(--flow-muted);margin-top:20px}.ost-power-flow .flow-table-wrap{overflow:auto;max-height:820px;scrollbar-color:#a0b8ce #f6faff;scrollbar-width:thin}.ost-power-flow .flow-measurements{width:100%;border-collapse:collapse;font-size:13px;background:#fff;border:0;margin:0;line-height:1.45}.ost-power-flow .flow-measurements th,.ost-power-flow .flow-measurements td{border:0;border-bottom:1px solid var(--flow-line);padding:12px 16px;text-align:left;background:transparent;vertical-align:middle}.ost-power-flow .flow-measurements thead{position:sticky;top:0;background:#f6faff;z-index:1}.ost-power-flow .flow-measurements thead th{font-size:12px;font-weight:500;color:var(--flow-muted)}.ost-power-flow .flow-measurements th[scope=row]{font-weight:400}.ost-power-flow .flow-measurements td:nth-child(2){text-align:right;white-space:nowrap;font-weight:500}.ost-power-flow .flow-measurements button{padding:0;min-height:28px;border:0;background:transparent;text-align:left;white-space:normal;font-size:13px;color:#0055bd}.ost-power-flow .flow-measurements small{display:block;font-size:11px;color:var(--flow-muted)}.ost-power-flow .flow-measurements tr.is-selected{background:#e0efff}.ost-power-flow .flow-empty .flow-number,.ost-power-flow .flow-empty .flow-particles{display:none}.ost-power-flow .flow-canvas-wrap:fullscreen{background:#f6faff;height:100vh;width:100vw}.ost-power-flow .flow-table-wrap:focus-visible{outline-offset:-3px}
@media(min-width:1600px){.ost-power-flow .flow-layout{grid-template-columns:minmax(0,1fr) 320px}}
@media(max-width:1000px){.ost-power-flow{padding:20px}.ost-power-flow .flow-layout{grid-template-columns:minmax(0,1fr) 240px;gap:14px}.ost-power-flow .flow-details{padding:16px}.ost-power-flow .flow-layers{margin-left:0}.ost-power-flow .flow-toolbar{gap:12px}.ost-power-flow .flow-canvas-wrap{height:760px}}
@media(max-width:760px){.ost-power-flow{padding:16px 12px}.ost-power-flow .flow-heading{align-items:start}.ost-power-flow h1{font-size:22px}.ost-power-flow .flow-heading p{font-size:12px}.ost-power-flow .flow-account{flex-direction:column;align-items:end;gap:4px}.ost-power-flow .flow-layout{display:flex;flex-direction:column;gap:16px}.ost-power-flow .flow-main,.ost-power-flow .flow-details{width:100%}.ost-power-flow .flow-toolbar{padding:12px;gap:12px}.ost-power-flow .flow-date-form{width:100%;order:2;gap:8px}.ost-power-flow .flow-date-form label:first-child{flex:1;min-width:0}.ost-power-flow .flow-date-form input{width:100%;min-width:0}.ost-power-flow .flow-layers{margin-left:auto}.ost-power-flow .flow-layers button,.ost-power-flow .flow-latest{padding:8px;font-size:12px;gap:5px}.ost-power-flow .flow-viewbar{padding:10px 8px;gap:6px}.ost-power-flow .flow-viewbar button{font-size:11px;padding:7px 6px;white-space:normal}.ost-power-flow .flow-canvas-wrap{height:660px}.ost-power-flow .flow-canvas-tools{top:10px;left:10px}.ost-power-flow .flow-pan-help{font-size:10px;left:10px;right:10px}.ost-power-flow .flow-statusbar{font-size:11px}.ost-power-flow .flow-login{padding:24px 0;min-height:460px}.ost-power-flow .flow-login-form{padding:24px}.ost-power-flow .flow-table-wrap{max-height:660px}.ost-power-flow .flow-measurements th,.ost-power-flow .flow-measurements td{padding:10px 8px}.ost-power-flow .flow-measurements td:last-child{min-width:130px}.ost-power-flow .flow-detail-body{min-height:0}.ost-power-flow .flow-legend{display:flex;flex-wrap:wrap;gap:0 20px}}
@media(prefers-reduced-motion:reduce){.ost-power-flow *{transition:none!important}.ost-power-flow .flow-particles{display:none}.ost-power-flow .flow-fixed-arrow{display:block}}

.ost-power-flow .flow-node-value{font:500 11px "OST Sans",Arial,sans-serif;fill:#526883;paint-order:stroke;stroke:#f6faff;stroke-width:4}.ost-power-flow .flow-route[data-key=""] .flow-wire{stroke-dasharray:5 4;opacity:.25}

/* Keep theme-wide button and form furniture out of this operational surface. */
.ost-power-flow button,.ost-power-flow input,.ost-power-flow select{width:auto;height:40px;min-height:40px;font-family:inherit;font-weight:400;text-transform:none;letter-spacing:normal}
.ost-power-flow button{display:inline-flex;align-items:center;justify-content:center;flex:none}
.ost-power-flow label,.ost-power-flow small{font-family:inherit;font-weight:400;text-transform:none;letter-spacing:normal}
.ost-power-flow .flow-login-form input,.ost-power-flow .flow-login-form button{width:100%;height:46px}
.ost-power-flow .flow-login-form button,.ost-power-flow .flow-primary{font-family:inherit;font-weight:500}
.ost-power-flow .flow-account button{height:36px;min-height:36px}
.ost-power-flow .flow-latest{width:auto;align-self:end}
.ost-power-flow .flow-statusbar{justify-content:space-between}
.ost-power-flow .flow-statusbar button{height:32px;min-height:32px;width:auto}
.ost-power-flow .flow-status{max-width:none;width:auto;flex:1}
.ost-power-flow .flow-viewbar button{height:36px;min-height:36px;width:auto}
.ost-power-flow .flow-canvas-wrap{display:flex;flex-direction:column}
.ost-power-flow .flow-canvas-tools{position:static;flex-shrink:0;align-self:start;padding:10px 12px;width:100%;background:#f6faff}
.ost-power-flow .flow-canvas-tools button{height:34px;min-height:34px;width:auto}
.ost-power-flow .flow-svg{flex:1;height:auto;min-height:0}
.ost-power-flow .flow-metric-select{width:100%;font-family:inherit}
.ost-power-flow .flow-measurements button{height:auto;min-height:28px;white-space:normal;display:inline;text-align:left;justify-content:start}
.ost-power-flow .flow-stations text{font-size:17px}
.ost-power-flow .flow-number{font-size:12px}
.ost-power-flow .flow-node-value{font-size:12px}
.ost-power-flow :focus-visible{outline-color:#334155}
@media(max-width:760px){
 .ost-power-flow .flow-latest{flex:1;min-width:120px}
 .ost-power-flow .flow-layers{margin-left:0;flex:none}
 .ost-power-flow .flow-date-form input{width:100%}
 .ost-power-flow .flow-viewbar button{height:auto;min-height:36px}
 .ost-power-flow .flow-viewbar [data-action=motion]{max-width:120px}
 .ost-power-flow .flow-canvas-wrap{height:680px}
 .ost-power-flow .flow-stations text{font-size:19px}
 .ost-power-flow .flow-details{padding:18px}
}

/* This feed uses exact five-minute times, independently of the public H01–H24 controls. */
.ost-power-flow .flow-date-form input[type=time]{width:110px;min-width:0}
.ost-power-flow .flow-date-form button[type=submit]{min-width:0;height:40px;padding:8px 12px}

.ost-power-flow{max-width:none;width:100%;margin:0}.ost-power-flow .flow-toolbar{align-items:flex-end}.ost-power-flow .flow-date-form{margin:0;flex-wrap:wrap}.ost-power-flow .flow-date-form label{margin:0;min-width:0}.ost-power-flow .flow-date-form button{height:40px}.ost-power-flow .flow-layers{align-items:center}.ost-power-flow .flow-statusbar{padding:12px 2px}.ost-power-flow .flow-details{overflow-wrap:anywhere}@media(max-width:760px){.ost-power-flow .flow-date-form label:nth-child(2){flex:1;min-width:110px}.ost-power-flow .flow-date-form button{flex:none}.ost-power-flow .flow-statusbar{flex-wrap:wrap}}

.ost-power-flow input.flatpickr-input+input{height:44px!important;border:1px solid #becfe2!important;border-radius:8px!important;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23526883' stroke-width='1.6'%3E%3Crect x='3' y='5' width='18' height='16' rx='3'/%3E%3Cpath d='M16 3v4M8 3v4M3 11h18'/%3E%3C/svg%3E") no-repeat right 12px center!important;color:#152f55!important;-webkit-text-fill-color:#152f55!important;font:400 15px OST Sans,Arial,sans-serif!important;padding:10px 42px 10px 14px!important;cursor:pointer;min-width:0;width:190px;box-shadow:none!important}.ost-power-flow .generation-export input.flatpickr-input+input{width:100%}.ost-date-calendar{font-family:OST Sans,Arial,sans-serif;background:#fff;border-radius:12px;border:1px solid #dbe7f3;box-shadow:0 12px 32px rgba(21,47,85,.16);padding:8px;color:#152f55;width:324px}.ost-date-calendar .flatpickr-day{border-radius:8px;color:#152f55}.ost-date-calendar .flatpickr-day.selected,.ost-date-calendar .flatpickr-day.selected:hover{background:#0055bd;border-color:#0055bd;color:white}.ost-date-calendar .flatpickr-day.today{border-color:#98b8de}.ost-date-calendar .flatpickr-day:hover{background:#eaf4fd;border-color:#eaf4fd}.ost-date-calendar .flatpickr-months{padding:8px 0 12px}.ost-date-calendar .flatpickr-current-month{font-size:15px}.ost-date-calendar .flatpickr-current-month input.cur-year{font:inherit;color:#152f55;background:white;border:0;border-radius:0;height:auto;padding:0 0 0 3px}.ost-date-calendar .flatpickr-current-month .flatpickr-monthDropdown-months{font:inherit;color:#152f55;background:white}.ost-date-calendar span.flatpickr-weekday{color:#526883;font-weight:500}.ost-date-calendar .flatpickr-day.prevMonthDay,.ost-date-calendar .flatpickr-day.nextMonthDay{color:#8b9bb0}@media(max-width:600px){.ost-power-flow input.flatpickr-input+input{width:100%;flex:1}}

.flatpickr-calendar.ost-date-calendar.open{opacity:1!important;background:#fff!important;z-index:99999}.ost-date-calendar .flatpickr-months .flatpickr-month{height:44px;background:#fff;color:#152f55}.ost-date-calendar .flatpickr-current-month{display:flex;align-items:center;justify-content:center;gap:8px;height:36px;padding:4px 0}.ost-date-calendar .flatpickr-current-month .flatpickr-monthDropdown-months{width:auto!important;height:28px!important;padding:0!important;line-height:28px}.ost-date-calendar .numInputWrapper{width:64px}.ost-date-calendar .flatpickr-current-month input.cur-year{width:100%!important;height:28px!important;min-height:0!important;line-height:28px!important}.ost-date-calendar .flatpickr-months .flatpickr-prev-month,.ost-date-calendar .flatpickr-months .flatpickr-next-month{top:12px}

.ost-power-flow input.flatpickr-input+input{width:170px}.ost-power-flow .export-dates input.flatpickr-input+input{width:100%}

.ost-power-flow .flow-date-form input[type=time]{height:44px;width:150px;background:#fff;color:#152f55;color-scheme:light;border:1px solid #becfe2;border-radius:8px;padding:10px 12px;font-family:inherit}.ost-power-flow .flow-date-form input.flatpickr-input+input{width:170px}@media(max-width:760px){.ost-power-flow .flow-date-form input.flatpickr-input+input,.ost-power-flow .flow-date-form input[type=time]{width:100%}}
