:root{--ecu-pink:#f20082;--ecu-lime:#b5d100;--ecu-turquoise:#00b082;--ecu-indigo:#2b2678;--ecu-yellow:#eddb00;--ecu-orange:#ff8500;--ecu-red:#d1210a;--ecu-purple:#633370;--ecu-black:#000000;--ecu-white:#ffffff;--ecu-pearl:#fffef9;--page:#f4f4f2;--surface-1:#ffffff;--surface-2:#ebebeb;--text-primary:#000000;--text-secondary:#3d3d3d;--text-muted:#767676;--rule:#000000;--hair:#d4d4d4;--accent-band:var(--ecu-lime);--ok:#1a7f37;--warn:#d98a00;--bad:#d03b3b;--idle:#9a9a9a}@media (prefers-color-scheme:dark){:root{--page:#000000;--surface-1:#0d0d0d;--surface-2:#1c1c1c;--text-primary:#ffffff;--text-secondary:#c9c9c9;--text-muted:#8f8f8f;--rule:#ffffff;--hair:#333333;--ok:#2fbf5b;--warn:#f0a31c;--bad:#e66767;--idle:#6e6e6e}}:root{--band-gap:10px;--water:#eef4fb;--water-deep:#6f9fd8;--water-lit:#00b082;--aws-ink:#232f3e}@media (prefers-color-scheme:dark){:root{--water:#0c1824;--water-deep:#2f6db0;--aws-ink:#d5dbdb}}*{box-sizing:border-box;margin:0;padding:0}body,html{background:var(--page);color:var(--text-primary);font-family:F37 Jagger,Jagger,Aptos,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.45}main{height:100vh;display:flex;flex-direction:column;padding:16px 20px 12px}main.doc{height:auto;display:block;padding-bottom:64px}.masthead .context a{color:inherit}.full-page{margin:-4px 0 14px}.section-title{font-size:20px;margin:28px 0 6px;padding-top:14px;border-top:2px solid var(--rule)}.section-lede{color:var(--text-secondary);max-width:80ch;margin-bottom:12px}.source-note{font-size:12.5px;color:var(--text-muted);margin-bottom:8px}.source-panes{display:grid;grid-template-columns:320px minmax(0,1fr);grid-gap:12px;gap:12px;align-items:start}.source-code,.source-tree{background:var(--surface-1);border:1px solid var(--rule);border-radius:4px}.source-tree{padding:8px 0;position:-webkit-sticky;position:sticky;top:12px;max-height:calc(100vh - 24px);overflow:auto}.source-tree ul{list-style:none}.source-tree button{display:block;width:100%;text-align:left;background:none;border:0;padding:4px 10px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12.5px;overflow-wrap:anywhere}.source-tree button:hover{background:var(--surface-2)}.source-tree .folder{font-weight:700}.source-tree .leaf.picked{background:var(--text-primary);color:var(--page)}.source-code header{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:8px 12px;border-bottom:1px solid var(--rule);font-size:12.5px}.source-code .source-note{padding:12px;margin:0}.code{list-style:none;counter-reset:line;overflow-x:auto;padding:8px 0;font-size:12.5px;line-height:1.55}.code li{counter-increment:line;display:flex;white-space:pre}.code li:before{content:counter(line);flex:0 0 48px;padding-right:12px;text-align:right;color:var(--text-muted);-webkit-user-select:none;-moz-user-select:none;user-select:none;font-family:ui-monospace,SF Mono,Menlo,monospace}.code code{background:none;padding:0;font-size:inherit;overflow-wrap:normal}@media (max-width:800px){.source-panes{grid-template-columns:1fr}.source-tree{position:static;max-height:260px}}.stage{min-height:0;gap:8px}.canvas-wrap,.stage{flex:1 1;display:flex}.canvas-wrap{min-width:0;flex-direction:column}.drawer{width:440px;flex-shrink:0;overflow-x:hidden;overflow-y:auto;padding:0 12px 16px}.drawer .card,.drawer .cards,.drawer .panel{min-width:0;max-width:100%}.drawer code{overflow-wrap:anywhere;white-space:normal}.map-notes{display:grid;grid-template-columns:2fr 1fr;grid-gap:16px;gap:16px;padding-top:8px;font-size:12.5px;color:var(--text-secondary)}.map-notes h3{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:2px}.map-notes p+p{margin-top:4px}@media (max-width:960px){.map-notes{grid-template-columns:1fr}}.canvas-hint{font-size:12px;color:var(--text-muted);padding-top:4px}.status-unavailable{border-left:4px solid var(--warn);background:var(--surface-1);color:var(--text-primary);font-size:13px;margin:0 0 12px;padding:8px 12px}.page-foot{color:var(--text-muted);font-size:12px;max-width:110ch;margin-top:14px}.map-toolbar{position:relative;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:44px;margin-bottom:8px}.map-toolbar>.catalog{position:absolute;left:var(--lake-left,calc(50% - 280px));width:var(--lake-width,560px)}.views{gap:4px}.toolbar-end,.views{display:flex;align-items:center;flex-wrap:wrap}.toolbar-end{justify-content:flex-end;gap:18px}@media (max-width:1100px){.map-toolbar{flex-direction:column;align-items:stretch}.map-toolbar>.catalog{position:static;width:auto}.toolbar-end{justify-content:flex-start}}.legend{display:flex;gap:18px;flex-wrap:wrap;list-style:none;font-size:13px;color:var(--text-secondary)}.legend li{display:flex;gap:6px}.dot,.legend li{align-items:center}.dot{display:inline-flex;justify-content:center;width:16px;height:16px;border-radius:50%;flex-shrink:0;color:#ffffff;font-size:11px;font-weight:700;line-height:1}.dot.green{background:var(--ok)}.dot.amber{background:var(--warn)}.dot.red{background:var(--bad)}.dot.unknown{background:var(--idle)}.dot.planned{background:transparent;border:2px dashed var(--idle)}button{font:inherit;color:inherit;cursor:pointer}.clear{padding:6px 12px;font-size:13px}.clear,.zoom{background:var(--surface-1);border:1px solid var(--rule);border-radius:4px}.zoom{display:inline-flex;align-items:stretch;margin-left:8px;overflow:hidden}.views .zoom button{border:0;border-radius:0;min-width:40px;padding:9px 12px}.views .zoom button:hover{background:var(--surface-2)}.views .zoom .zoom-level{min-width:64px;border-left:1px solid var(--hair);border-right:1px solid var(--hair);font-size:15px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.views button{padding:9px 14px;font-size:15px;line-height:1.45;min-width:40px}.lakemap,.views button{background:var(--surface-1);border:1px solid var(--rule);border-radius:4px}.lakemap{display:block;flex:1 1;min-height:0;width:100%;cursor:-webkit-grab;cursor:grab;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none}.lakemap.panning{cursor:-webkit-grabbing;cursor:grabbing}.lakemap:focus-visible{outline:3px solid var(--water-lit);outline-offset:1px}.detail-far .col-sub,.detail-far .fine{display:none}.aws-account{fill:none;stroke:var(--aws-ink);stroke-width:2}.aws-tab{fill:var(--aws-ink)}.aws-smile{fill:none;stroke:#ff9900;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.lakemap .aws-label{font-weight:700;font-size:14px}.aws-region{fill:none;stroke:#00a4a6;stroke-width:1.5;stroke-dasharray:6 4}.lakemap .aws-region-label{fill:#00a4a6;font-size:12px;font-weight:700}.bus path{fill:none;stroke:var(--water-lit);stroke-width:3}.box{fill:var(--page);stroke:var(--rule);stroke-width:1.5}.box.open{stroke-dasharray:none}.box-head{fill:transparent}.hit:hover>.box-head{fill:var(--surface-2)}.lakemap .box-label{font-size:19px;font-weight:700;letter-spacing:-.01em}.lakemap .box-toggle{font-size:12.5px;font-weight:700}.lakemap .box-total{font-size:44px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.lakemap .node-sub.alarm{fill:var(--bad);font-weight:700}.group{fill:var(--surface-1);stroke:var(--hair);stroke-width:1}.group.selected{stroke:var(--rule);stroke-width:2.5}.hit:hover>.group{stroke:var(--rule)}.lakemap .group-label{font-size:13px;font-weight:700}.bar.status-live{fill:var(--ok)}.bar.status-in-validation{fill:var(--warn)}.bar.status-draft{fill:var(--text-muted)}.lakemap text{fill:var(--text-primary);font-size:13px}.lakemap .col-title{font-size:15px;font-weight:700}.lakemap .col-sub{font-size:12px;fill:var(--text-muted)}.hit{cursor:pointer;outline:none}.hit:focus-visible>rect{stroke:var(--water-lit);stroke-width:3}.dim{opacity:.22}.lakemap g,.lakemap path{transition:opacity .16s ease}.node{fill:var(--surface-1);stroke:var(--rule);stroke-width:1}.node.source.planned{stroke:var(--idle);stroke-dasharray:4 3}.node.source.red{stroke:var(--bad);stroke-width:2}.node.selected{stroke-width:2.5}.hit:hover>.node,.node.dest,.node.selected{fill:var(--surface-2)}.node.dest{stroke:var(--hair)}.lakemap .node-label{font-weight:700}.lakemap .node-sub{font-size:11.5px;fill:var(--text-muted)}.lakemap .node-sub.status-live{fill:var(--ok)}.lakemap .node-sub.status-in-validation{fill:var(--warn)}.lakemap .dest-label{font-size:13px;font-weight:700}.lakemap .dest-label.small{font-size:11.5px}.light.green{fill:var(--ok)}.light.amber{fill:var(--warn)}.light.red{fill:var(--bad)}.light.unknown{fill:var(--idle)}.light.planned{fill:none;stroke:var(--idle);stroke-width:2;stroke-dasharray:3 2}.lakemap .light-glyph{fill:#ffffff;font-size:11px;font-weight:700;pointer-events:none}.feed{fill:none;stroke-width:2;stroke-dasharray:6 5;animation:flow 1.4s linear infinite}.feed.green{stroke:var(--ok)}.feed.amber{stroke:var(--warn);animation-duration:3s}.feed.red{stroke:var(--bad);animation:none;stroke-dasharray:2 6}.feed.unknown{stroke:var(--idle);animation:none;stroke-dasharray:4 5}.feed.planned{stroke:var(--idle);stroke-width:1;animation:none;stroke-dasharray:2 5}.flow{fill:none;stroke-width:2}.flow.live{stroke:var(--water-lit);stroke-dasharray:6 5;animation:flow 1.4s linear infinite}.flow.pending{stroke:var(--idle);stroke-dasharray:3 4}@keyframes flow{to{stroke-dashoffset:-22}}@media (prefers-reduced-motion:reduce){.feed,.flow.live{animation:none}}.lake{fill:var(--water);stroke:var(--rule);stroke-width:1.5}.layer-head,.section-head{fill:transparent}.hit:hover>.layer-head,.hit:hover>.section-head{fill:var(--surface-1);opacity:.6}.lakemap .layer-label{font-weight:700;font-size:11px;letter-spacing:.06em;text-transform:uppercase;fill:var(--text-secondary)}.lakemap .section-label{font-weight:700}.lakemap .section-sens{font-size:10.5px;fill:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.cell.filled{fill:var(--surface-1);stroke:var(--text-secondary);stroke-width:1.5}.cell.partial{fill:var(--surface-1);stroke:var(--idle);stroke-width:1.5;stroke-dasharray:5 3}.cell.empty{fill:url(#walled);stroke:var(--hair);stroke-width:1}.cell.reached{fill:var(--water-lit);opacity:.9}.cell.partial.reached{opacity:.35}.cell.open{stroke:var(--rule);stroke-width:2;stroke-dasharray:none}g.tile{cursor:pointer}g.tile:hover>.cell.filled{opacity:.75}g.tile:hover>.cell.partial{fill:var(--water)}g.tile:focus-visible{outline:none}g.tile:focus-visible>.cell{stroke:var(--rule);stroke-width:2}.lakemap .tile-head{font-size:12.5px;font-weight:700;fill:var(--text-primary)}.lakemap .tile-line{font-size:10px;fill:var(--text-secondary)}.lakemap .open-tile{overflow:visible}.open-tile-card{box-sizing:border-box;display:flex;flex-direction:column;background:var(--surface-1);border:2px solid var(--rule);border-radius:6px;box-shadow:0 12px 40px rgba(0,0,0,.35);padding:10px 12px;font-size:12px;color:var(--text-primary);cursor:default}.open-tile-card header{display:flex;align-items:flex-start;gap:8px;padding-bottom:8px;border-bottom:1px solid var(--hair);margin-bottom:8px}.open-tile-card header div{display:flex;flex-direction:column;flex:1 1;gap:2px}.open-tile-card header b{font-size:13.5px}.open-tile-card header span{color:var(--text-muted);font-size:11.5px}.open-tile-note{color:var(--text-secondary);margin-bottom:8px;line-height:1.4}.open-tile-list{list-style:none;overflow:hidden}.open-tile-list li{padding:0 0 6px;margin-bottom:6px;border-bottom:1px solid var(--hair)}.open-tile-list li:last-child{border-bottom:0;margin-bottom:0}.open-tile-list b,.open-tile-list code,.open-tile-list span{display:block}.open-tile-list span{color:var(--text-secondary);font-size:11.5px}.open-tile-list.compact li{padding-bottom:3px;margin-bottom:3px}.open-tile-list .open-tile-tag{float:right;display:inline;margin-left:8px;color:var(--text-muted);font-size:11px}.open-tile-list code{font-size:11.5px}.open-tile-attention{color:var(--text-primary)!important}.hatch{stroke:var(--hair);stroke-width:2}.wall{stroke:var(--rule);stroke-width:1.5}.lake-foot text{font-size:11.5px;fill:var(--text-secondary)}.lock path{stroke:var(--text-primary);stroke-width:1.6}.lock rect{fill:var(--text-primary)}.gate{fill:var(--surface-2);stroke:var(--rule);stroke-width:1}.lakemap .gate-label{fill:var(--text-primary);font-size:11.5px;font-weight:700;letter-spacing:.12em}.pass{fill:var(--surface-1);stroke:var(--rule);stroke-width:1}.lock-pass{cursor:pointer}.lock-pass:focus-visible .pass,.lock-pass:hover .pass{fill:var(--water);stroke-width:2}.protection{list-style:none}.protection li{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:9px 0;border-top:1px solid var(--hair)}.protection li:first-child{border-top:0;padding-top:0}.protection li>span:not(.assurance){color:var(--text-secondary)}.assurance{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:1px 7px;border-radius:3px;border:1px solid var(--rule)}.assurance.enforced{background:var(--ok);border-color:var(--ok);color:#ffffff}.assurance.declared{background:var(--warn);border-color:var(--warn);color:#000000}.assurance.absent{background:var(--bad);border-color:var(--bad);color:#ffffff}.assurance.not-applicable{color:var(--text-muted);border-style:dashed}.tile.gap{border-color:var(--bad)}.tile.gap b{color:var(--bad)}.tile.no-gap{border-color:var(--ok)}.tile.no-gap b{color:var(--ok)}.gap-mark .lock path{stroke:var(--bad)}.gap-mark .lock rect{fill:var(--bad)}.panel{margin-top:0}.catalog{position:relative}.catalog-pop{position:absolute;top:calc(100% + 4px);left:0;z-index:5;width:calc(100% - 198px);max-height:340px;overflow-y:auto;background:var(--surface-1);border:1px solid var(--rule);border-radius:4px;padding:8px 10px}.catalog-controls{display:flex;gap:8px}.catalog input,.catalog select{font:inherit;font-size:13px;color:inherit;background:var(--surface-1);border:1px solid var(--rule);border-radius:4px;padding:7px 10px;min-width:0}.catalog input{flex:1 1;font-size:15px;padding:9px 14px}.catalog select{flex:none;width:190px;font-size:15px;padding:9px 34px 9px 14px;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23666' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:12px 8px;cursor:pointer}.catalog-count{font-size:12px;color:var(--text-muted);margin:8px 0 4px}.catalog-results,.linklist{list-style:none}.catalog-results button,.linklist button{display:flex;justify-content:space-between;align-items:baseline;gap:10px;width:100%;text-align:left;background:none;border:0;border-top:1px solid var(--hair);padding:7px 2px}.catalog-results button:hover,.linklist button:hover{background:var(--surface-2)}.catalog-tag{font-size:11px;color:var(--text-muted);white-space:nowrap}.catalog-tag.governed{color:var(--ok);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.catalog .clear{margin-top:8px}.workitem{color:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px;white-space:nowrap}.workitem:hover{color:var(--water-lit)}button.inline{background:none;border:0;padding:0;text-decoration:underline}.clear{margin-bottom:12px}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:8px;gap:8px;margin-top:8px}.tile{background:var(--surface-1);border:1px solid var(--rule);border-radius:4px;padding:8px 14px;display:flex;align-items:baseline;gap:10px;min-width:0}.tile b{font-size:22px;line-height:1.2;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tile span{font-size:14px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.panel-head{display:flex;align-items:flex-start;gap:12px;border-bottom:2px solid var(--rule);padding-bottom:12px;margin-bottom:14px}.panel-head>div{flex:1 1}.panel-head .dot{margin-top:6px}.panel-head h2{font-size:19px;overflow-wrap:anywhere;letter-spacing:-.01em}.panel-head p{color:var(--text-secondary);font-size:15px;max-width:72ch}.badge{border:1px solid var(--rule);border-radius:4px;padding:3px 10px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.badge.green,.badge.status-live{background:var(--ok);border-color:var(--ok);color:#ffffff}.badge.amber,.badge.status-in-validation{background:var(--warn);border-color:var(--warn);color:#000000}.badge.red{background:var(--bad);border-color:var(--bad);color:#ffffff}.badge.unknown{background:var(--idle);border-color:var(--idle);color:#ffffff}.badge.planned{border-style:dashed;color:var(--text-muted)}.warning{border-left:4px solid var(--bad);background:var(--surface-1);padding:8px 12px;margin-bottom:14px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:12px;gap:12px;align-items:start}.doc .cards{display:block;columns:300px 4;column-gap:12px}.doc .cards .card{page-break-inside:avoid;break-inside:avoid;margin-bottom:12px}.open-page rect{fill:transparent}.open-page path{fill:none;stroke:var(--text-muted);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.open-page:focus-visible rect,.open-page:hover rect{fill:var(--text-primary)}.open-page:focus-visible path,.open-page:hover path{stroke:var(--page)}.open-page{outline:none;cursor:pointer}.protection-wide .protection{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:12px;gap:12px}.protection-wide .protection li,.protection-wide .protection li:first-child{background:var(--surface-1);border:1px solid var(--rule);border-radius:4px;padding:12px 14px;gap:6px}.streamflow{background:var(--surface-1);border:1px solid var(--rule);border-radius:4px;margin-bottom:14px;overflow-x:auto}.lakemap.static{height:auto;min-width:900px;border:0;cursor:default;touch-action:auto;display:block}.lakemap .input-code{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:10.5px;fill:var(--text-secondary)}.lakemap .layer-label.beyond{fill:var(--text-muted)}.lakemap .lake-foot-text{font-size:11.5px;fill:var(--text-secondary)}.card{background:var(--surface-1);border:1px solid var(--rule);border-radius:4px;padding:14px 16px}.card h3{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:10px}.card p+p{margin-top:8px}.card.datasets{grid-column:1/-1}.dataset-search{width:100%;font:inherit;padding:6px 10px;margin-bottom:8px;border:1px solid var(--rule);border-radius:4px;background:var(--page);color:var(--text-primary)}.dataset-list{list-style:none;max-height:360px;overflow-y:auto}.dataset-list li{border-top:1px solid var(--hair)}.dataset-list li:first-child{border-top:0}.dataset-list button{all:unset;box-sizing:border-box;width:100%;display:flex;justify-content:space-between;gap:12px;padding:6px 2px;cursor:pointer}.dataset-list button:focus-visible .dataset-name,.dataset-list button:hover .dataset-name{text-decoration:underline}.dataset-list li.open .dataset-name{font-weight:700}.dataset-meta{color:var(--text-muted);font-size:12.5px;white-space:nowrap}.dataset-facts{padding:0 2px 10px}.dataset-none{color:var(--text-muted);padding:6px 2px}.dataset-clear{all:unset;cursor:pointer;margin-left:10px;text-transform:none;letter-spacing:0;text-decoration:underline;color:var(--text-secondary)}.lakemap .source-rule{stroke:var(--hair)}.lakemap .source-frame-box{fill:var(--surface-1);stroke:var(--rule);stroke-width:1}.lakemap .source-frame-box.selected{stroke-width:2.5}.lakemap .hit:hover>.source-frame-box{stroke:var(--text-primary)}.lakemap .source-frame-label{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;fill:var(--text-muted)}.lakemap .chip-label{font-size:11.5px;fill:var(--text-secondary)}.lakemap .hit:hover .chip-label,.lakemap .node.chip.selected+.light+.chip-label{fill:var(--text-primary)}.facts div{display:grid;grid-template-columns:116px 1fr;grid-gap:10px;gap:10px;padding:6px 0;border-top:1px solid var(--hair)}.facts div:first-child{border-top:0}.facts dt{color:var(--text-muted);font-size:12.5px}code{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;background:var(--surface-2);padding:1px 5px;border-radius:3px;overflow-wrap:anywhere}.files{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.checks,.grants,.named,.takes{list-style:none}.checks li{display:grid;grid-template-columns:16px 92px 1fr;grid-gap:10px;gap:10px;align-items:center;padding:6px 0;border-top:1px solid var(--hair)}.checks li:first-child{border-top:0}.checks span:last-child{color:var(--text-secondary)}.takes li{padding:5px 0 5px 18px;position:relative}.takes li:before{content:"";position:absolute;left:0;top:11px;width:8px;height:8px;background:var(--water-lit);border-radius:2px}.named li{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:8px 0;border-top:1px solid var(--hair)}.named li:first-child{border-top:0;padding-top:0}.named span{font-size:12.5px;color:var(--text-secondary)}.named .columns code{margin-right:4px}.located{color:var(--ok)}.named .located.missing{color:var(--bad);font-weight:700}.left-behind{margin-top:10px;padding-top:10px;color:var(--text-secondary)}.grants li,.left-behind{border-top:1px solid var(--hair)}.grants li{display:flex;flex-direction:column;gap:2px;padding:8px 0}.grants li:first-child{border-top:0;padding-top:0}.grants span{color:var(--text-secondary)}.grants .grant-meta{font-size:12px;color:var(--text-muted)}@media (max-width:960px){main{height:auto}.stage{flex-direction:column}.lakemap{flex:none;height:64vh}.drawer{width:auto;overflow:visible}}@media (max-width:600px){main{padding:16px 16px 40px}.facts div{grid-template-columns:1fr;gap:0}}.signin-wrap{justify-content:center;min-height:80vh}.signin-card,.signin-wrap{display:flex;align-items:center}.signin-card{max-width:420px;width:100%;padding:36px 36px 32px;text-align:center;flex-direction:column;gap:10px}.signin-card .band{width:100%;margin:4px 0}.signin-card h1{font-size:24px;font-weight:800;letter-spacing:-.01em;margin-top:10px}.signin-card .sub{margin-bottom:14px;color:var(--text-secondary)}.signin-button{font:inherit;font-size:14px;font-weight:700;padding:10px 22px;border:2px solid var(--rule);border-radius:4px;background:var(--text-primary);color:var(--page);cursor:pointer}.signin-button:hover:not(:disabled){background:var(--accent-band);color:#000000}.signin-button:disabled{opacity:.4;cursor:not-allowed}.source-actions{display:flex;gap:12px;align-items:center}.source-actions button{background:var(--surface-1);border:1px solid var(--rule);border-radius:4px;padding:3px 10px;font-size:12.5px;font-weight:700}.source-actions button:hover{background:var(--text-primary);color:var(--page)}.propose{padding:12px;display:flex;flex-direction:column;gap:10px}.propose-editor{width:100%;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12.5px;line-height:1.55;padding:10px 12px;background:var(--page);color:var(--text-primary);border:1px solid var(--rule);border-radius:4px;resize:vertical;-moz-tab-size:2;tab-size:2}.propose-field{display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--text-secondary)}.propose-field input,.propose-field textarea{font:inherit;font-size:14px;color:var(--text-primary);background:var(--surface-1);border:1px solid var(--rule);border-radius:4px;padding:7px 10px}.propose-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.propose-actions .clear{margin:0}.propose-done{line-height:1.6}.proposals{margin-top:-2px}.lakemap .open-system{overflow:visible}.open-system-card{height:100%;box-sizing:border-box;display:flex;flex-direction:column;background:var(--surface-1);border:2px solid var(--text-muted);border-radius:6px;box-shadow:0 12px 40px rgba(0,0,0,.45);padding:12px 14px;font-size:13px;color:var(--text-primary);cursor:default}.open-system-card.green{border-color:var(--ok)}.open-system-card.red{border-color:var(--bad)}.open-system-card header{display:flex;align-items:center;gap:10px;padding-bottom:10px;border-bottom:1px solid var(--hair);margin-bottom:10px}.open-system-card header div{display:flex;flex-direction:column;flex:1 1}.open-system-card header b{font-size:15px}.open-system-card header span{color:var(--text-muted);font-size:12px}.open-system-close{all:unset;cursor:pointer;font-size:20px;line-height:1;padding:0 4px;color:var(--text-muted)}.open-system-close:hover{color:var(--text-primary)}.light-dot{width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff}.light-dot.green{background:var(--ok)}.light-dot.amber{background:var(--warn);color:#000}.light-dot.red{background:var(--bad)}.light-dot.unknown{background:var(--idle)}.dataset-browser{display:flex;flex-direction:column;min-height:0;flex:1 1}.dataset-sections{list-style:none;overflow-y:auto;flex:1 1;min-height:0}.dataset-sections>li{border-top:1px solid var(--hair)}.dataset-sections>li:first-child{border-top:0}.dataset-section{all:unset;box-sizing:border-box;width:100%;display:flex;gap:8px;align-items:center;padding:7px 2px;cursor:pointer;font-weight:700}.dataset-section .caret{width:12px;color:var(--text-muted)}.dataset-section .dataset-name{flex:1 1}.dataset-flag{font-size:12px;font-weight:600;white-space:nowrap}.dataset-flag.amber{color:var(--warn)}.dataset-flag.red{color:var(--bad)}.dataset-list li.flagged>button{box-shadow:inset 3px 0 0 var(--warn);padding-left:8px}.dataset-list li.flagged.red>button{box-shadow:inset 3px 0 0 var(--bad)}.light-dot.small{width:16px;height:16px;font-size:11px;flex:none}.dataset-sections .dataset-list{max-height:none;overflow:visible;padding-left:20px}.env-badge{position:fixed;top:12px;right:12px;z-index:1000;padding:4px 10px;background:var(--warn);color:#000000;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;pointer-events:none}.gc-tabs{display:flex;gap:0;border-bottom:2px solid var(--rule);margin:6px 0 14px;overflow-x:auto}.gc-tab{background:none;border:0;border-bottom:4px solid transparent;padding:8px 14px 6px;font-size:15px;font-weight:700;color:var(--text-secondary);white-space:nowrap;margin-bottom:-2px}.gc-tab.picked,.gc-tab:hover{color:var(--text-primary)}.gc-tab.picked{border-bottom-color:var(--accent-band)}.gc-tab-count{margin-left:6px;font-weight:400;color:var(--text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.gc-tiles{margin:0 0 12px}button.tile{font:inherit;color:inherit;text-align:left;cursor:pointer}.gc-tile-filter:hover{background:var(--surface-2)}.gc-tile-filter.picked{outline:2px solid var(--text-primary);outline-offset:-2px}.gc-tile-filter .dot{width:10px;height:10px;vertical-align:-1px}.gc-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.gc-controls input,.gc-controls select{font:inherit;font-size:13px;color:inherit;background:var(--surface-1);border:1px solid var(--rule);border-radius:4px;padding:7px 10px;min-width:0}.gc-controls input{flex:1 1 240px}.gc-controls .clear{margin:0}.gc-count{font-size:12px;color:var(--text-muted);margin:8px 0}.gc-empty{color:var(--text-secondary);padding:16px 0}.gc-muted{color:var(--text-muted)}.gc-flag{color:var(--bad);font-weight:700}.gc-caret{width:14px;flex-shrink:0}.gc-caret,.gc-meta{color:var(--text-muted)}.gc-meta{font-size:12.5px;font-weight:400}.gc-system{background:var(--surface-1);border:1px solid var(--rule);border-radius:4px;margin-bottom:12px}.gc-domain-head,.gc-system-head{all:unset;box-sizing:border-box;display:flex;align-items:baseline;gap:10px;width:100%;cursor:pointer;flex-wrap:wrap}.gc-system-head{padding:10px 14px;font-size:17px;font-weight:700}.gc-domain-head:focus-visible,.gc-row-head:focus-visible,.gc-system-head:focus-visible{outline:2px solid var(--water-lit);outline-offset:-2px}.gc-system-facts{color:var(--text-secondary);font-size:13px;padding:0 14px 10px 38px;max-width:120ch}.gc-system-facts a{color:inherit}.gc-domain{border-top:1px solid var(--hair)}.gc-domain-head{padding:8px 14px;font-weight:700}.gc-domain-head:hover,.gc-system-head:hover{background:var(--surface-2)}.gc-sens{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;border:1px solid var(--hair);border-radius:3px;padding:0 6px;color:var(--text-secondary)}.gc-rows{list-style:none;padding:0 0 6px}.gc-row{border-top:1px solid var(--hair)}.gc-row-head{all:unset;box-sizing:border-box;cursor:pointer;width:100%;display:grid;grid-template-columns:150px minmax(0,1fr) 130px 210px 190px;grid-gap:12px;gap:12px;align-items:baseline;padding:7px 14px 7px 38px;font-size:13px}.gc-row-head:hover,.gc-row.open .gc-row-head{background:var(--surface-2)}.gc-health{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.gc-health .dot{width:10px;height:10px}.gc-name{display:flex;flex-direction:column;min-width:0}.gc-name b{overflow-wrap:anywhere}.gc-detail code,.gc-name code,.gc-policies code{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11.5px;color:var(--text-muted);overflow-wrap:anywhere;background:none;padding:0}.gc-name code{align-self:flex-start}.gc-cell{color:var(--text-secondary)}.gc-when{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.gc-detail{display:grid;grid-template-columns:max-content minmax(0,1fr);grid-gap:4px 16px;gap:4px 16px;padding:8px 14px 12px 38px;font-size:13px}.gc-detail dt{color:var(--text-muted)}.gc-detail dd code+code{margin-left:8px}.gc-more{padding:8px 14px 4px 38px;border-top:1px solid var(--hair)}.gc-more .clear{margin:0}.gc-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr));grid-gap:12px;gap:12px;align-items:start}.gc-card{background:var(--surface-1);border:1px solid var(--rule);border-radius:4px;padding:12px 14px}.gc-card header{display:flex;justify-content:space-between;align-items:baseline;gap:10px;border-bottom:2px solid var(--rule);padding-bottom:8px;margin-bottom:8px}.gc-card h3{font-size:17px}.gc-card a,.gc-plain a{color:inherit}.gc-card>p{color:var(--text-secondary);margin-bottom:8px}.gc-card .gc-detail{padding:0 0 8px}.gc-grants,.gc-policies{width:100%;border-collapse:collapse;font-size:13px}.gc-grants caption{text-align:left;font-weight:700;padding:8px 0 4px}.gc-grants td,.gc-grants th,.gc-policies td,.gc-policies th{text-align:left;vertical-align:top;padding:6px 8px;border-top:1px solid var(--hair)}.gc-grants th,.gc-policies th{color:var(--text-muted);font-weight:400;border-top:0}.gc-policies{background:var(--surface-1);border:1px solid var(--rule)}.gc-policies a{color:inherit}.gc-plain{list-style:none}.gc-plain li{display:flex;gap:10px;align-items:baseline;padding:6px 0;border-top:1px solid var(--hair)}@media (max-width:900px){.gc-tab{padding:8px 9px 6px;font-size:14px}.gc-row-head{display:flex;flex-wrap:wrap;column-gap:10px;row-gap:2px;padding-left:14px}.gc-row-head .gc-name{order:-1;flex:1 1 60%}.gc-row-head .gc-cell{font-size:12px}.gc-row-head .gc-cell+.gc-cell:before{content:"· ";color:var(--text-muted)}.gc-detail,.gc-more,.gc-system-facts{padding-left:14px}.gc-grants,.gc-policies{display:block;overflow-x:auto}}.gc-policies td code{color:var(--text-primary)}.stream-section-body a,.stream-summary a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}.stream-sections{display:flex;flex-direction:column}.stream-section{border-bottom:1px solid var(--rule)}.stream-section>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:18px minmax(0,17rem) minmax(0,1fr);align-items:baseline;grid-gap:4px 12px;gap:4px 12px;padding:14px 4px}.stream-section>summary::-webkit-details-marker{display:none}.stream-section>summary:before{content:"+";font-weight:600;font-size:16px;color:var(--text-primary)}.stream-section[open]>summary:before{content:"−"}.stream-section>summary:hover{background:var(--surface-2)}.stream-section>summary:focus-visible{outline:2px solid var(--rule);outline-offset:-2px}.stream-section-title{font-weight:600;font-size:16px}.stream-section-summary{color:var(--text-secondary);font-size:13.5px;min-width:0}.stream-section-body{padding:4px 0 22px;display:flex;flex-direction:column;gap:12px;min-width:0}.stream-section-sub{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:8px 0 0}@media (max-width:640px){.stream-section>summary{grid-template-columns:18px minmax(0,1fr)}.stream-section-summary{grid-column:2}.stream-section-body{padding-left:4px}}.dest-link{cursor:pointer;outline:none}.dest-link:focus-visible .node.dest,.dest-link:hover .node.dest{stroke:var(--rule);stroke-width:2px}.dest-link .dest-label{text-decoration:underline;text-underline-offset:3px}.stream-sections .card code{overflow-wrap:anywhere}.stream-section .protection-wide{margin-top:4px}.streamflow:has(+.stream-sections .attached){margin-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.stream-section.attached{border:1px solid var(--rule);border-top:0;border-radius:0 0 4px 4px;background:var(--surface-1)}.stream-section.attached>summary{grid-template-columns:18px minmax(0,1fr);padding:10px 14px}.stream-section.attached>.stream-section-body{padding:4px 14px 20px}.stream-page .stream-code{margin-top:40px}.stream-page .stream-body{width:90%;margin-inline:auto}@media (max-width:640px){.stream-page .stream-body{width:100%}}.stream-page .stream-section-body{padding-block:12px 32px;gap:20px}.stream-page .protection-wide .protection{display:block;columns:220px 4;column-gap:12px}.stream-page .protection-wide .protection li{page-break-inside:avoid;break-inside:avoid;margin-bottom:12px;display:flex}.stream-page .stream-sections .section-title{border-top:none;padding-top:0}.request-filter{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 14px}.request-filter button{font:inherit;font-size:13px;font-weight:600;padding:4px 12px;border:1px solid var(--rule);border-radius:4px;background:var(--surface-1);color:var(--text-primary);cursor:pointer}.request-filter button[aria-pressed=true]{background:var(--text-primary);color:var(--page)}.request-filter .count{margin-left:6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;opacity:.7}.request-table{width:100%;border-collapse:collapse;background:var(--surface-1);border:1px solid var(--hair)}.request-table th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);border-bottom:2px solid var(--rule);padding:8px 10px}.request-table td{padding:10px;border-bottom:1px solid var(--hair);vertical-align:top}.request-table td.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700;color:var(--text-secondary)}.request-table td.when{white-space:nowrap;color:var(--text-muted);font-size:13px}.request-table tr.open td{border-bottom:0}.request-table tr.detail td,.request-table tr.open td{background:var(--surface-2)}.request-table .sub{color:var(--text-secondary);font-size:12.5px;margin-top:2px}.row-toggle{font:inherit;font-weight:700;border:0;background:none;padding:0;color:var(--text-primary);text-align:left;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.stage-pill{display:inline-block;font-size:12px;font-weight:700;padding:2px 9px;border-radius:999px;border:1px solid var(--hair);white-space:nowrap}.stage-pill.delivered{border-color:var(--ok);color:var(--ok)}.stage-pill.approved,.stage-pill.building{border-color:var(--water-deep)}.request-detail{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);grid-gap:24px;gap:24px;padding:4px 0 8px}.request-detail h3{font-size:13px;margin-bottom:4px}.request-detail p+p{margin-top:6px}.request-detail .prose{white-space:pre-wrap}.request-history{list-style:none;font-size:13px;margin-bottom:12px}.advance,.request-history{display:flex;flex-direction:column;gap:8px}.advance label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600}.advance textarea{font:inherit;padding:6px 8px;border:1px solid var(--hair);border-radius:4px;background:var(--surface-1);color:var(--text-primary)}.advance button{align-self:flex-start;font:inherit;font-weight:700;padding:7px 16px;border:2px solid var(--rule);border-radius:4px;background:var(--text-primary);color:var(--page);cursor:pointer}.advance button:hover:not(:disabled){background:var(--accent-band);color:#000000}.advance button:disabled{opacity:.4;cursor:not-allowed}@media (max-width:760px){.request-detail{grid-template-columns:minmax(0,1fr)}}.requests-admin .empty{color:var(--text-muted);padding:12px 0}.request-view{display:flex;gap:6px;margin:4px 0 10px}.request-find{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);grid-gap:6px 12px;gap:6px 12px;align-items:end;margin:0 0 12px}.request-find label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600}.request-find input,.request-find select{font:inherit;font-weight:400;padding:6px 8px;border:1px solid var(--hair);border-radius:4px;background:var(--surface-1);color:var(--text-primary);width:100%}.request-find input:focus-visible,.request-find select:focus-visible{outline:2px solid var(--accent-band);border-color:var(--rule)}.request-find-count{grid-column:1/-1;font-size:13px;color:var(--text-secondary)}.request-find-empty{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.request-find .linkish{font:inherit;font-weight:700;padding:0;border:0;background:none;color:inherit;text-decoration:underline;cursor:pointer}.request-find-empty button{font:inherit;font-size:13px;font-weight:700;padding:5px 14px;border:2px solid var(--rule);border-radius:4px;background:var(--text-primary);color:var(--page);cursor:pointer}.request-find-empty button:focus-visible,.request-find-empty button:hover{background:var(--accent-band);color:#000000}@media (max-width:560px){.request-find{grid-template-columns:minmax(0,1fr)}}.request-view button{font:inherit;font-size:13px;font-weight:600;padding:4px 12px;border:1px solid var(--rule);border-radius:4px;background:var(--surface-1);color:var(--text-primary);cursor:pointer}.request-view button[aria-pressed=true]{background:var(--text-primary);color:var(--page)}.request-board{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:12px;gap:12px;align-items:start}.request-column{background:var(--surface-2);border:1px solid var(--hair);border-radius:4px;padding:10px;display:flex;flex-direction:column;gap:8px;min-height:120px}.request-column h2{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);padding-bottom:6px;border-bottom:2px solid var(--rule)}.request-column h2 .count{margin-left:6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;opacity:.7}.request-column .empty{font-size:13px;padding:4px 0}.request-card{background:var(--surface-1);border:1px solid var(--hair);border-radius:4px;padding:10px;display:flex;flex-direction:column;gap:4px}.request-card .num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700;font-size:12px;color:var(--text-secondary)}.request-card .sub{color:var(--text-secondary);font-size:12.5px}.request-card .meta{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:12.5px;margin-top:4px}.request-card .when{color:var(--text-muted);white-space:nowrap}.request-card .request-detail{grid-template-columns:minmax(0,1fr);gap:12px;margin-top:8px;padding-top:8px;border-top:1px solid var(--hair)}@media (max-width:1000px){.request-board{grid-template-columns:minmax(0,1fr)}}.request-detail .request-documents,.request-detail h3+.request-documents{list-style:none;display:flex;flex-direction:column;gap:6px;font-size:13px}.request-documents a{font-weight:700;overflow-wrap:anywhere}.doc-scan{display:inline-block;font-size:11px;font-weight:700;padding:1px 7px;border-radius:999px;border:1px solid var(--hair);white-space:nowrap}.doc-scan.clean{border-color:var(--ok);color:var(--ok)}.doc-scan.threat,.doc-scan.unscannable{border-color:var(--bad);color:var(--bad)}.request-detail .attach{display:flex;flex-direction:column;gap:4px;margin-top:10px;font-size:13px;font-weight:600}.request-detail .attach input{font:inherit;font-weight:400;max-width:100%}.costs{--series-1:#2a78d6;--series-2:#eb6834;--series-3:#1baf7a;--series-4:#eda100;--series-5:#e87ba4;--series-6:#008300;--series-7:#6250d6;--series-other:#b4b4b0}@media (prefers-color-scheme:dark){.costs{--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--series-5:#d55181;--series-6:#008300;--series-7:#9085e9;--series-other:#5c5c58}}.cost-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));grid-gap:8px;gap:8px;margin-top:4px}.kpi{background:var(--surface-1);border:1px solid var(--rule);border-radius:4px;padding:10px 14px 12px;display:flex;flex-direction:column;gap:2px;min-width:0}.kpi .label{font-size:13px;color:var(--text-secondary)}.kpi b{font-size:26px;line-height:1.15;font-weight:600}.kpi.hero b{font-size:34px}.kpi .note{font-size:12.5px;color:var(--text-muted)}.kpi.flag{border-color:var(--warn);box-shadow:inset 4px 0 0 var(--warn)}.delta{font-size:12.5px;color:var(--text-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.delta.up>span:first-child{color:var(--bad)}.delta.down>span:first-child{color:var(--ok)}.delta .vs{color:var(--text-muted);white-space:normal}td .delta .vs{display:none}.meter{position:relative;height:8px;border-radius:4px;background:var(--surface-2);margin:6px 0 2px;overflow:visible}.meter .fill{position:absolute;inset:0 auto 0 0;border-radius:4px;background:var(--ok)}.meter.warn .fill{background:var(--warn)}.meter.bad .fill{background:var(--bad)}.meter .forecast-mark{position:absolute;top:-3px;width:2px;height:14px;background:var(--text-primary);transform:translateX(-1px)}.cost-chart{background:var(--surface-1);border:1px solid var(--rule);border-radius:4px;padding:12px 14px 6px}.cost-chart-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:8px 16px}.cost-plot{position:relative;margin-top:8px;contain:inline-size;overflow-x:clip}.cost-plot svg{display:block;overflow:visible}.cost-plot .grid{stroke:var(--hair);stroke-width:1}.cost-plot .baseline{stroke:var(--text-muted);stroke-width:1}.cost-plot .tick{font-size:11px;fill:var(--text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cost-plot .hit{fill:transparent;cursor:crosshair}.cost-plot .forecast{fill:none;stroke:var(--series-1);stroke-width:1.5;stroke-dasharray:3 3}.cost-plot .budget-line{stroke:var(--text-primary);stroke-width:1.5}.cost-plot .budget-label{font-size:11.5px;font-weight:700;fill:var(--text-primary);paint-order:stroke;stroke:var(--surface-1);stroke-width:4px}.cost-legend{list-style:none;display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12.5px;color:var(--text-secondary);margin-bottom:6px}.cost-legend li{display:inline-flex;align-items:center;gap:6px}.swatch{display:inline-block;width:10px;height:10px;border-radius:2px;flex:none;vertical-align:-1px}.swatch.outline{border:1.5px dashed var(--series-1);background:transparent}.swatch.rule{height:2px;width:14px;background:var(--text-primary);border-radius:0}.cost-tip{position:absolute;z-index:5;pointer-events:none;min-width:200px;max-width:260px;background:var(--surface-1);border:1px solid var(--rule);border-radius:4px;padding:8px 10px;font-size:12.5px;box-shadow:0 4px 14px rgb(0 0 0/.15)}.cost-tip b{display:block;margin-bottom:4px}.cost-tip .row{display:flex;align-items:center;gap:6px}.cost-tip .label{flex:1 1;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cost-tip .value{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cost-tip .total{border-top:1px solid var(--hair);margin-top:4px;padding-top:4px;font-weight:700}.seg{display:inline-flex;border:1px solid var(--rule);border-radius:4px;overflow:hidden;margin-bottom:8px}.seg button{font:inherit;font-size:13px;font-weight:600;background:var(--surface-1);color:var(--text-primary);border:0;padding:5px 12px;cursor:pointer}.seg button+button{border-left:1px solid var(--rule)}.seg button[aria-pressed=true]{background:var(--text-primary);color:var(--page)}.seg button:focus-visible{outline:2px solid var(--accent-band);outline-offset:-2px}.cost-pair{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);grid-gap:0 20px;gap:0 20px;align-items:start}@media (max-width:1000px){.cost-pair{grid-template-columns:minmax(0,1fr)}}.table-scroll{overflow-x:auto}.cost-table td.num,.cost-table th.num{text-align:right;white-space:nowrap}.cost-table td.num{color:var(--text-primary);font-weight:400}.cost-table tr.resolved td{color:var(--text-muted)}.cost-table td .swatch{margin-right:4px}.share{display:inline-block;width:90px;height:6px;background:var(--surface-2);border-radius:3px;vertical-align:middle;overflow:hidden}.share>span{display:block;height:100%;background:var(--text-secondary);border-radius:3px}.share-pct{font-size:12.5px;color:var(--text-secondary);margin-left:8px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.spark{display:block}.spark polyline{fill:none;stroke:var(--text-muted);stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}.spark circle{fill:var(--text-primary)}.sev{font-weight:700;text-transform:capitalize;white-space:nowrap}.sev-critical>span{color:var(--bad)}.sev-warning>span{color:var(--warn)}.sev-info>span{color:var(--text-muted)}.cost-empty{color:var(--text-secondary);padding:6px 0 2px}.budget+.budget{margin-top:14px;padding-top:14px;border-top:1px solid var(--hair)}.budget-head{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:13.5px}.budget-head span{color:var(--text-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.meter-wide{position:relative;margin:8px 0 10px}.meter-wide .meter{height:12px;border-radius:6px}.meter-wide .meter .fill{border-radius:6px}.meter-wide .tick-mark{position:absolute;top:0;width:1px;height:18px;background:var(--text-muted)}.thresholds{list-style:none;display:grid;grid-gap:4px;gap:4px;font-size:13px}.thresholds li{display:flex;gap:6px;align-items:baseline}.thresholds li>span:first-child{color:var(--ok)}.thresholds li.fired>span:first-child{color:var(--bad)}.thresholds .state{margin-left:auto;color:var(--text-muted)}.thresholds li.fired .state{color:var(--text-primary);font-weight:700}.alarm-list,.region-list{list-style:none;display:grid;grid-gap:8px;gap:8px;font-size:13.5px}.region-list li{display:grid;grid-template-columns:minmax(0,1fr) 110px 80px;align-items:center;grid-gap:10px;gap:10px}.region-list .share{width:100%}.region-list .num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.region-list li.away .region-name{font-weight:700}.region-list li.away .region-name:after{content:" · outside Canada";font-weight:400;color:var(--warn)}.alarm-list li{display:grid;grid-template-columns:100px minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:baseline;padding-bottom:8px;border-bottom:1px solid var(--hair)}.alarm-list li:last-child{border-bottom:0;padding-bottom:0}.alarm-state{font-weight:700;white-space:nowrap}.alarm-list li.ok .alarm-state>span{color:var(--ok)}.alarm-list li.alarm .alarm-state>span{color:var(--bad)}.alarm-list li.insufficient_data .alarm-state>span{color:var(--text-muted)}.alarm-name{overflow-wrap:anywhere}.alarm-name .sub{display:block;color:var(--text-secondary);font-size:12.5px}.alarm-list .when{color:var(--text-muted);font-size:12.5px;white-space:nowrap}@media (max-width:640px){.alarm-list li{grid-template-columns:minmax(0,1fr);gap:2px}.region-list li{grid-template-columns:minmax(0,1fr) 70px}.region-list .share{display:none}}main.costs{max-width:1720px;margin-inline:auto}.cost-overview{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);grid-column-gap:20px;column-gap:20px;align-items:start}.cost-daily{grid-column:1/-1}.cost-monthly{grid-column:1;grid-row:2/4}.cost-budget,.cost-regions{grid-column:2}.cost-bottom{display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,2fr);grid-gap:20px;gap:20px;align-items:start}.alarm-scroll{max-height:420px;overflow-y:auto}.alarm-list li{display:block}.alarm-list summary{display:grid;grid-template-columns:90px minmax(0,1fr) auto;grid-gap:10px;gap:10px;cursor:pointer;align-items:baseline}.alarm-list summary:focus-visible{outline:2px solid var(--accent-band);outline-offset:3px}.alarm-list summary .alarm-name:before{content:"▸ ";color:var(--text-muted)}.alarm-list details[open] summary .alarm-name:before{content:"▾ "}.alarm-detail{padding:10px 0 2px 100px;font-size:12px;overflow-wrap:anywhere;color:var(--text-secondary)}.alarm-detail b{font-weight:500}.alarm-detail p{margin-top:6px}@media (min-width:1600px){.cost-overview{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}.cost-daily{grid-column:1;grid-row:1}.cost-monthly{grid-column:2;grid-row:1}.cost-budget{grid-column:1;grid-row:2}.cost-regions{grid-column:2;grid-row:2}}@media (max-width:1000px){.cost-bottom,.cost-overview{grid-template-columns:minmax(0,1fr)}.cost-overview>section{grid-column:1;grid-row:auto}}@media (max-width:640px){.alarm-list summary{grid-template-columns:minmax(0,1fr);gap:2px}.alarm-detail{padding-left:0}}main.planning{--planning-label:340px;max-width:1920px;margin-inline:auto}.planning-intro{display:flex;justify-content:space-between;gap:28px;margin:24px 0 16px}.planning-intro h2{font-size:30px;letter-spacing:-.025em;line-height:1.15;margin-bottom:8px}.planning-intro p{max-width:76ch;color:var(--text-secondary)}.planning-collected{display:flex;flex-direction:column;gap:2px;text-align:right;flex:none;font-size:12px;color:var(--text-secondary)}.planning-collected b{font-size:14px;color:var(--text-primary)}.planning-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px;margin-bottom:20px}.planning-stats>div{border:1px solid var(--rule);background:var(--surface-1);padding:12px 16px;display:flex;flex-direction:column}.planning-stats b{font-size:28px;font-weight:600;line-height:1.15;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.planning-stats span{font-size:12px;color:var(--text-secondary);margin-top:4px}.planning-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;margin-bottom:12px}.planning-toolbar label{font-size:12px;display:flex;flex-direction:column;gap:4px;color:var(--text-secondary);min-width:130px}.planning-toolbar .planning-search{flex:1 1;min-width:210px}.planning-toolbar input,.planning-toolbar select{height:36px;font:inherit;font-size:13px;padding:6px 10px;border:1px solid var(--rule);border-radius:4px;color:var(--text-primary);background-color:var(--surface-1);min-width:0;max-width:240px}.planning-search input{max-width:none;width:100%}.planning-options button,.planning-toolbar button{font:inherit;background:var(--surface-1);color:var(--text-primary);border:1px solid var(--rule);border-radius:4px;padding:7px 12px;cursor:pointer}.planning-toolbar .planning-export{background:var(--text-primary);color:var(--page);height:36px;font-weight:600}.planning-options{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-bottom:12px;font-size:12px}.planning-options label{display:flex;gap:6px;align-items:center}.planning-options button{padding:3px 8px;font-size:12px}.planning-legend{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-left:auto;color:var(--text-secondary)}.planning-legend i{width:12px;height:8px;border-radius:2px;display:inline-block}.planning-bar.boards,.planning-legend .boards{background:#3279b5}.planning-bar.planner,.planning-legend .planner{background:#20846d}.planning-legend>span{margin-left:8px}.planning-chart{overflow:auto;max-height:65vh;min-height:240px;border:1px solid var(--rule);background:var(--surface-1);position:relative}.planning-chart:focus-visible{outline:2px solid var(--accent-band);outline-offset:3px}.planning-canvas{position:relative;min-width:100%}.planning-chart-head{top:0;z-index:6;height:42px;border-bottom:1px solid var(--rule)}.planning-chart-head,.planning-row-label{position:-webkit-sticky;position:sticky;display:flex;background:var(--surface-1)}.planning-row-label{width:var(--planning-label);flex:none;left:0;z-index:4;border-right:1px solid var(--rule);align-items:center;padding:8px 12px;min-width:0}.planning-chart-head .planning-row-label{font-weight:600;z-index:8}.planning-axis{position:relative;flex:1 1;font-size:11px;color:var(--text-secondary)}.planning-axis>span{position:absolute;bottom:10px;padding-left:6px;white-space:nowrap}.planning-chart-body{position:relative}.planning-chart-row{display:flex;border-bottom:1px solid var(--hair);position:relative}.planning-chart-row.selected .planning-row-label{background:var(--surface-2);box-shadow:inset 3px 0 0 var(--accent-band)}.planning-select{font:inherit;border:0;background:transparent;color:inherit;text-align:left;min-width:0;cursor:pointer;display:flex;flex-direction:column;flex:1 1;gap:3px}.planning-select b{font-size:12.5px;font-weight:500;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:100%}.planning-select>span:not(.planning-work-title){font-size:10.5px;color:var(--text-secondary)}.planning-work-title{display:flex;align-items:center;gap:6px;min-width:0;width:100%}.planning-chevron{width:14px;flex:none;font-size:17px}.planning-select{align-self:stretch;justify-content:center}.planning-row-label{padding-block:0}.planning-chart-head .planning-row-label{padding-block:8px}.planning-row-track{position:relative;height:100%;flex:none}.planning-bar{position:absolute;top:18px;height:21px;border-radius:3px;border:1px solid transparent;color:white;cursor:pointer;z-index:2;min-width:4px}.planning-bar.draft{border:1px dashed var(--text-primary);background-image:repeating-linear-gradient(135deg,transparent,transparent 5px,rgb(255 255 255/.18) 0,rgb(255 255 255/.18) 7px)}.planning-bar.complete{opacity:.5}.planning-bar>span{font-size:10px;display:block;white-space:nowrap;overflow:hidden;padding:0 4px}.planning-tracks{position:absolute;left:var(--planning-label);top:0;pointer-events:none}.planning-tracks>i{position:absolute;top:0;bottom:0;border-left:1px solid var(--hair)}.planning-today{position:absolute;top:0;bottom:0;border-left:1px solid var(--warn);z-index:1}.planning-today>span{position:-webkit-sticky;position:sticky;top:42px;background:var(--surface-1);color:var(--warn);font-size:10px;padding:2px 4px}.planning-edges{position:absolute;inset:0;overflow:hidden}.planning-edges>path{fill:none;stroke:var(--text-muted);stroke-width:1;opacity:.6}.planning-edges marker path{fill:var(--text-muted)}.planning-deadline{position:absolute;top:4px;color:var(--warn);font-size:11px;transform:translateX(-50%);z-index:3}.planning-outside{position:-webkit-sticky;position:sticky;left:calc(var(--planning-label) + 12px);padding:18px 14px;display:inline-block;font-size:11px;color:var(--text-muted)}.planning-chart-empty{padding:20px}.planning-detail{position:relative;padding:16px 20px;border:1px solid var(--rule);border-top:3px solid var(--text-primary);margin-top:14px;background:var(--surface-1)}.planning-detail h3{font-size:18px;margin:4px 30px 12px 0}.planning-detail>button{position:absolute;right:14px;top:10px;background:none;border:none;font-size:24px;color:var(--text-primary);cursor:pointer}.planning-detail dl{display:flex;gap:16px 28px;flex-wrap:wrap;margin-bottom:12px}.planning-detail dt{font-size:11px;color:var(--text-muted)}.planning-detail dd{font-size:13px}.planning-detail p{margin-bottom:10px;font-size:12px;color:var(--text-secondary)}.planning-detail a{font-size:13px;font-weight:600}.planning-inline{font:inherit;border:0;background:transparent;color:var(--text-primary);text-align:left;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.planning-undated .section-title span{font-size:15px;color:var(--text-muted);font-weight:400}.planning-undated table{min-width:780px}.planning-unavailable{padding:30px 0}.planning-unavailable p{margin-top:10px;color:var(--text-secondary)}@media(max-width:760px){main.planning{--planning-label:240px}.planning-intro{flex-direction:column;gap:12px}.planning-collected{text-align:left}.planning-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.planning-toolbar label{flex:1 1}.planning-legend{margin-left:0}}@media print{@page{size:landscape;margin:10mm}main.planning{padding:0;--planning-label:340px}.planning-detail,.planning-options,.planning-toolbar{display:none!important}.planning-chart{max-height:none;overflow:visible}.planning-canvas{zoom:.65}.planning-chart-head,.planning-row-label{position:static}.planning-chart-row{page-break-inside:avoid;break-inside:avoid}.planning-bar{print-color-adjust:exact;-webkit-print-color-adjust:exact}}.masthead .masthead-nav{display:grid;grid-auto-flow:column;grid-auto-columns:1fr}.masthead .masthead-nav a{text-align:center;white-space:nowrap}.planning-toolbar select.vantage-select{-webkit-padding-end:2.5rem;padding-inline-end:2.5rem}.planning-time-controls{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:14px 0 8px}.planning-copy,.planning-time-controls button{font:inherit;font-size:12px;border:1px solid var(--rule);border-radius:4px;background:var(--surface-1);color:var(--text-primary);padding:7px 12px;min-height:34px}.planning-window{font-size:13px;margin-left:8px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.planning-time-controls+.source-note{margin-bottom:12px}.planning-undated{margin-top:24px;border-top:2px solid var(--rule);padding-block:16px}.planning-undated>summary{cursor:pointer;display:flex;align-items:center;gap:10px;list-style:none}.planning-undated>summary::-webkit-details-marker{display:none}.planning-undated>summary:before{content:"+";font-size:22px;width:18px}.planning-undated[open]>summary:before{content:"−"}.planning-undated .section-title{margin:0}.planning-undated .section-lede{margin-top:12px}.planning-copy{margin-bottom:8px}.planning-copy-fallback{display:block;width:100%;min-height:220px;font:inherit;color:var(--text-primary);background:var(--surface-1);padding:12px;margin-bottom:12px}@media(max-width:600px){.masthead .masthead-nav{width:100%;grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr))}.planning-window{width:100%;margin:4px 0 0}}@media print{.planning-copy,.planning-copy-fallback,.planning-time-controls{display:none}}.planning-view-toggle{display:inline-flex}.planning-view-toggle button{border-radius:0;min-height:30px}.planning-view-toggle button:first-child{border-radius:4px 0 0 4px}.planning-view-toggle button:last-child{border-radius:0 4px 4px 0;border-left:0}.planning-view-toggle button[aria-pressed=true]{background:var(--text-primary);color:var(--page)}.planning-workspace{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:16px;gap:16px;align-items:start}.planning-workspace.has-detail{grid-template-columns:minmax(0,1fr) 360px}.planning-workspace>.planning-detail{margin:0;max-height:65vh;overflow:auto}.planning-detail dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.planning-related{border-top:1px solid var(--hair);margin-block:12px;padding-top:12px}.planning-related h4{font-size:13px;margin-bottom:8px}.planning-related ul{list-style:none;padding:0}.planning-related li{margin-bottom:10px;font-size:12px}.planning-related li>span{display:block;color:var(--text-secondary);font-size:11px;margin-top:3px}.planning-date-issue{color:var(--warn)}.planning-list{max-height:65vh;border:1px solid var(--rule);overflow:auto}.planning-list table{min-width:900px;width:100%}.planning-list .planning-select{min-width:240px;max-width:520px}.planning-list .planning-select b{white-space:normal}.planning-list th{position:-webkit-sticky;position:sticky;top:0;background:var(--surface-1);z-index:1}.planning-list tr.selected{background:var(--surface-2)}@media(max-width:1100px){.planning-workspace.has-detail{grid-template-columns:minmax(0,1fr)}}@media print{.planning-workspace.has-detail{display:block}.planning-list{max-height:none}}.planning-control-rail{display:flex;align-items:center;gap:12px;overflow-x:auto;padding-block:4px 10px;margin-bottom:4px}.planning-control-rail>*{flex-shrink:0}.planning-control-rail .planning-options,.planning-control-rail .planning-time-controls{flex-wrap:nowrap;margin:0;gap:6px}.planning-control-rail .planning-window,.planning-control-rail button,.planning-control-rail label{white-space:nowrap}.planning-control-rail .planning-options button,.planning-control-rail .planning-time-controls button{min-height:30px;padding:5px 9px}.planning-control-rail .planning-legend{flex-wrap:nowrap;white-space:nowrap;font-size:11px;margin-left:auto}.planning-control-rail .planning-window{width:auto;font-size:12px;margin:0 0 0 6px}@media print{.planning-control-rail{display:none}}.planning-intro{display:grid;grid-template-columns:minmax(280px,1fr) auto auto;grid-gap:20px;gap:20px;align-items:center}.planning-intro .planning-stats{display:flex;gap:20px;margin:0}.planning-intro .planning-stats>div{border:0;background:none;padding:0;max-width:115px}.planning-intro .planning-stats b{font-size:24px}.planning-intro .planning-stats span{font-size:11px;line-height:1.35;margin-top:3px}@media(max-width:1200px){.planning-intro{grid-template-columns:minmax(0,1fr) auto}.planning-intro .planning-stats{grid-column:1/-1;grid-row:2;justify-content:space-between;max-width:660px}}@media(max-width:760px){.planning-intro{grid-template-columns:minmax(0,1fr);gap:14px}.planning-intro .planning-stats{gap:14px}.planning-collected{grid-row:3}}.planning-undated>summary .section-title{border:0;padding:0}.planning-completed[aria-pressed=true]{background:var(--text-primary);color:var(--page)}.planning-chart-row,.planning-list tbody tr{cursor:pointer}.planning-terms{height:30px;font:inherit;font-size:12px;color:var(--text-primary);background-color:var(--surface-1);border:1px solid var(--rule);border-radius:4px;padding:4px 2.5rem 4px 9px;max-width:180px}