:root{color-scheme:light;--bg: #ffffff;--surface: #f6f6fa;--card: #ffffff;--line: #e5e4ee;--line-strong: #cfcde0;--ink: #17162b;--ink-2: #56546f;--ink-3: #807e98;--accent: #4b42a8;--accent-ink: #ffffff;--accent-soft: #ebe9f8;--flow-0: #6250d6;--flow-1: #16a39a;--flow-2: #eb6834;--trend: #16a39a;--s1: #2a78d6;--s2: #eb6834;--s3: #1baf7a;--s4: #eda100;--s5: #e87ba4;--good: #0ca30c;--bad: #d03b3b;--seq-lo: #cde2fb;--seq-hi: #104281;--banner: linear-gradient(100deg, #168a80 0%, #3a72c4 40%, #5e60d0 62%, #b0559f 100%);--font-sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}@media (prefers-color-scheme: dark){:root{color-scheme:dark;--bg: #11111b;--surface: #1a1a28;--card: #151522;--line: #2a2a3d;--line-strong: #3a3a52;--ink: #eceaf7;--ink-2: #b0aecb;--ink-3: #8a88a6;--accent: #9085e9;--accent-ink: #11111b;--accent-soft: #27244a;--flow-0: #9085e9;--flow-1: #1fa597;--flow-2: #d95926;--trend: #1fa597;--s1: #3987e5;--s2: #d95926;--s3: #199e70;--s4: #c98500;--s5: #d55181;--seq-lo: #1b2840;--seq-hi: #86b6ef;--banner: linear-gradient(100deg, #12665f 0%, #2c5596 40%, #4a45a3 62%, #8a3f7c 100%)}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:14px;line-height:1.5;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:24px 64px;-webkit-font-smoothing:antialiased}.page{max-width:1240px;margin:0 auto;display:flex;flex-direction:column;gap:22px}td,.value,svg text,.when{font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button{font:inherit;color:inherit}a{color:inherit}h1,h2,h3{text-wrap:balance}.muted{color:var(--ink-3)}.up{color:var(--bad)}.down{color:var(--good)}.hint{color:var(--ink-3);font-size:12.5px;margin:0}.release-footer{margin-top:18px;padding-top:12px;border-top:1px solid var(--line);color:var(--ink-3);font-size:12px;text-align:center;overflow-wrap:anywhere}.release-footer a{color:var(--accent)}.topbar{display:flex;flex-wrap:wrap;align-items:center;gap:4px 16px;margin-bottom:-10px}.topnav{display:flex;gap:4px}.topnav a{text-decoration:none;color:var(--ink-2);font-size:13px;padding:4px 10px;border-radius:6px}.topnav a:hover{color:var(--ink)}.topnav a[aria-current=page]{background:var(--accent-soft);color:var(--ink);font-weight:500}.userbar{position:relative;margin-left:auto;font-size:12.5px;color:var(--ink-2)}.user-button{font:inherit;color:var(--ink-2);background:none;border:0;border-radius:6px;padding:4px 8px;cursor:pointer}.user-button:after{content:" ▾";color:var(--ink-3)}.user-button:hover,.user-button[aria-expanded=true]{color:var(--ink);background:var(--accent-soft)}.user-menu{position:absolute;top:100%;right:0;z-index:20;margin-top:4px;min-width:10em;display:grid;background:var(--card);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px #00000024;padding:4px}.user-menu a,.user-menu button{font:inherit;font-size:13px;color:var(--ink);background:none;border:0;border-radius:4px;padding:5px 8px;text-align:left;text-decoration:none;cursor:pointer}.user-menu a:hover,.user-menu button:hover{background:var(--accent-soft)}.profile{display:grid;gap:10px;justify-items:start}.profile h2{margin:0;font-size:15px}.profile-accounts{max-height:none;width:100%;columns:3 16em}.profile-accounts li{break-inside:avoid}.aws-profiles{list-style:none;margin:0;padding:0;width:100%;display:grid;gap:6px}.aws-profiles label{display:grid;grid-template-columns:minmax(0,16em) minmax(0,22em);gap:4px 12px;align-items:center}.aws-profiles input{font:13px ui-monospace,SFMono-Regular,Menlo,monospace;padding:4px 8px;min-width:0}.profile-invalid{display:block;color:var(--bad);font-size:12px;margin-top:2px}@media (max-width: 640px){.aws-profiles label{grid-template-columns:minmax(0,1fr)}}.notice{border:1px solid var(--bad);border-radius:8px;padding:12px 16px;background:var(--card)}.notice b{display:block;margin-bottom:4px}.notice.warn{border-color:var(--s4)}.badge{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;border:1px solid rgba(255,255,255,.7);border-radius:999px;padding:4px 10px;white-space:nowrap}.badge.quiet{border-color:var(--line-strong);color:var(--ink-2);margin-left:10px}.banner{background:var(--banner);border-radius:8px;color:#fff;padding:22px 30px;display:flex;flex-wrap:wrap;align-items:center;gap:16px 52px}.banner .b-title{margin-right:auto}.banner .crumb{margin:0;font-size:13px;opacity:.9}.banner h1{margin:0;font-size:30px;font-weight:700;letter-spacing:-.01em;line-height:1.2}.banner .stat{display:flex;flex-direction:column;align-items:center}.banner .stat b{font-size:20px;font-weight:600;white-space:nowrap}.banner .stat span{font-size:13px;opacity:.92}.banner.with-info{position:relative;padding-right:60px}.report-info-button{position:absolute;top:12px;right:14px;width:26px;height:26px;padding:0;border:1px solid rgba(255,255,255,.7);border-radius:50%;background:#ffffff29;color:#fff;font:italic 600 14px/1 Georgia,Times New Roman,serif;cursor:pointer}.report-info-button:hover{background:#ffffff47}.report-top-sentinel{height:1px;margin-bottom:-23px}.report-top{position:sticky;top:env(safe-area-inset-top,0px);z-index:8;background:var(--bg);display:flex;flex-direction:column;gap:12px;padding-bottom:10px}.report-top.preview{position:static;z-index:auto}.report-top .subbar,.report-top .filters{margin-top:0}.report-top.condensed{gap:8px;box-shadow:0 10px 12px -12px #14123259}.report-top.condensed .banner{padding:8px 20px;gap:4px 28px}.report-top.condensed .banner h1{font-size:18px}.report-top.condensed .banner .crumb,.report-top.condensed .stat-start,.report-top.condensed .desc{display:none}.report-top.condensed .banner .stat{flex-direction:row;align-items:baseline;gap:8px}.report-top.condensed .banner .stat b{font-size:15px}.report-top.condensed .banner .stat span{font-size:12px}.report-top.condensed .badge{padding:2px 8px;font-size:10px}.report-top.condensed .banner.with-info{padding-right:44px}.report-top.condensed .report-info-button{top:50%;right:10px;width:22px;height:22px;font-size:12px;transform:translateY(-50%)}@media (max-width: 640px){.report-top{position:static}}.subbar{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:space-between;margin-top:-10px}.meta{margin:0;color:var(--ink-2);font-size:13px}.meta select{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:3px 6px}.chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.toggles{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;font-size:13px;color:var(--ink-2)}.toggle{display:inline-flex;align-items:center;gap:6px;color:var(--ink);cursor:pointer}.toggle input{margin:0;accent-color:var(--accent)}.chip{display:inline-flex;align-items:center;gap:8px;background:var(--accent-soft);border:0;border-radius:999px;padding:5px 10px 5px 12px;font-size:13px;cursor:pointer}.chip b{font-weight:500}.chip .x{color:var(--ink-2);font-size:15px;line-height:1}.filters{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:flex-end;margin-top:-10px}.filter{display:flex;flex-direction:column;gap:2px;font-size:12px;color:var(--ink-2);min-width:0}.filter{position:relative}.filter .pick{font:inherit;font-size:13px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:4px 22px 4px 8px;max-width:18em;min-width:7em;text-align:left;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:relative}.filter .pick:after{content:"▾";position:absolute;right:7px;color:var(--ink-3)}.filter.active .pick{border-color:var(--accent);background:var(--accent-soft)}.filter.active.exclude .pick{border-style:dashed}.pick-panel{position:absolute;top:100%;left:0;z-index:20;margin-top:4px;min-width:18em;max-width:26em;background:var(--card);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px #00000024;padding:8px;color:var(--ink);font-size:13px}.pick-mode{display:flex;gap:14px;padding:2px 4px 8px;border-bottom:1px solid var(--line);margin-bottom:4px}.pick-mode label{display:flex;align-items:center;gap:4px;cursor:pointer}.pick-list{list-style:none;margin:0;padding:0;max-height:22em;overflow-y:auto}.pick-list label{display:flex;align-items:center;gap:8px;padding:3px 4px;border-radius:4px;cursor:pointer}.pick-list label:hover{background:var(--accent-soft)}.pick-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pick-cost{color:var(--ink-3);font-variant-numeric:tabular-nums}.pick-list .muted{padding:4px}.pick-panel>.linkbtn{margin:6px 4px 0}.linkbtn{border:0;background:none;color:var(--accent);cursor:pointer;padding:4px 2px;font-size:13px}.linkbtn:disabled{color:var(--ink-3);cursor:default}.problem{margin-top:8px;color:var(--ink-2);font-size:13px}.problem ul{margin:4px 0 0;padding-left:18px}.start-hero{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:16px;align-items:stretch}.start-hero.three{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr)}@media (max-width: 900px){.start-hero,.start-hero.three{grid-template-columns:minmax(0,1fr)}}.start-chart,.start-savings,.start-health{display:flex;flex-direction:column;gap:4px}.start-chart-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px;font-size:12.5px}.start-figure{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px}.start-figure b{font-size:28px;font-weight:600;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.start-figure .muted{font-size:12.5px}.start-pill{background:var(--accent-soft);color:var(--ink-2);border-radius:999px;padding:2px 10px;font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}.start-chart svg{display:block}.start-chart .weekend{fill:var(--ink-3);fill-opacity:.07}.start-chart .grid{stroke:var(--line)}.start-chart .axis{fill:var(--ink-3);font-size:10.5px}.start-chart{--source: var(--flow-0)}.start-source-0{--source: var(--flow-1)}.start-source-1{--source: var(--flow-0)}.start-area{fill:var(--source);fill-opacity:.12}.start-line{fill:none;stroke:var(--source);stroke-width:1.6}.start-dot{fill:var(--card);stroke:var(--source);stroke-width:2}.start-lone{fill:var(--source)}.start-legend{display:flex;flex-wrap:wrap;gap:2px 14px;margin:4px 0 2px;padding:0;list-style:none;font-size:12px;color:var(--ink-2)}.start-legend li{display:flex;align-items:center;gap:6px}.start-swatch{flex:none;width:12px;height:12px;border-radius:3px;background:var(--source)}.start-swatch.projected{background:repeating-linear-gradient(135deg,var(--source) 0 2px,transparent 2px 5px);box-shadow:inset 0 0 0 1px var(--source)}.start-plot{position:relative}.start-tip{position:absolute;top:8px;z-index:5;width:max-content;max-width:min(300px,75%);padding:8px 10px;pointer-events:none;font-size:12.5px;color:var(--ink);background:var(--card);border:1px solid var(--line-strong);border-radius:8px;box-shadow:0 8px 24px #00000024}.start-tip-when{display:flex;justify-content:space-between;gap:12px;color:var(--ink-2)}.start-tip-source{display:flex;align-items:center;gap:5px;white-space:nowrap}.start-tip-figure{font-size:15px;font-weight:600;font-variant-numeric:tabular-nums}.start-tip-rows{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1px 12px;margin:4px 0 0;padding:0;list-style:none;font-variant-numeric:tabular-nums}.start-tip-rows li{display:contents}.start-tip-name{display:flex;align-items:center;gap:5px;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.start-tip-note{margin:4px 0 0;color:var(--ink-2)}.start-months{margin-top:10px;font-size:12.5px}.start-hit{fill:transparent}.start-bar{fill:var(--source)}.start-bar.projected{fill:url(#start-hatch);stroke:var(--source);stroke-width:1}.start-hatch-line{stroke:var(--flow-0);stroke-width:2}.start-bar-off{opacity:.45}.start-opens{display:flex;flex-wrap:wrap;gap:0 16px;margin-top:auto}.start-figure-scaled{color:var(--ink-2);font-size:15px}.start-figure-scaled b{font-size:20px;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}.start-rule{stroke:var(--ink-3);stroke-width:.6}.start-open{margin-top:auto;padding-top:6px;color:var(--accent);font-size:13px;text-decoration:none}.start-open:hover{text-decoration:underline}.start-savings-note{margin:0 0 10px;font-size:12.5px}.start-health-figures{display:flex;flex-wrap:wrap;gap:4px 20px;margin-bottom:8px}.start-next{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column;gap:6px;font-size:13px}.start-kinds{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column;gap:10px}.start-kinds li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;font-size:13px}.start-kinds i{grid-column:1 / -1;height:5px;border-radius:3px;background:var(--flow-1)}.start-kind-value{font-weight:500;font-variant-numeric:tabular-nums}.start-group-title{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:500;margin:0 0 10px}.start-group-title:before{content:"";width:10px;height:10px;border-radius:3px;background:var(--trend)}.start-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}.start-card:has(.start-card-built){display:flex;flex-direction:column}.start-card:has(.start-card-built) a{flex:1 1 auto;height:auto}.start-card-built{display:flex;align-items:center;gap:8px;padding:4px 14px 0;color:var(--ink-3);font-size:12px}.start-card a{display:flex;flex-direction:column;gap:4px;height:100%;background:var(--card);border:1px solid var(--line);border-top:3px solid var(--trend);border-radius:10px;padding:12px 14px;color:inherit;text-decoration:none;transition:border-color .12s,box-shadow .12s}.start-card a:hover{border-color:var(--line-strong);border-top-color:var(--trend);box-shadow:0 2px 10px #14123212}.start-card-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;font-weight:600}.start-provisional{font-family:var(--font-mono);font-size:10px;font-weight:400;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);border:1px solid var(--line-strong);border-radius:999px;padding:0 6px}.start-card-summary{color:var(--ink-2);font-size:12.5px;min-height:2.9em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.start-card-figures{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;margin-top:6px}.start-card-figures b{font-size:20px;font-weight:600;font-variant-numeric:tabular-nums}.start-card-figures small{display:block;margin-top:2px;color:var(--ink-2);font-size:12px;font-variant-numeric:tabular-nums}.start-card-figures svg{flex:none;width:96px;height:34px}.start-card-updated{margin-top:auto;padding-top:6px;border-top:1px solid var(--line);color:var(--ink-3);font-size:11.5px}.ruled{display:flex;align-items:center;gap:14px;margin:0 0 14px}.ruled h2{font-size:21px;font-weight:500;white-space:nowrap;margin:0}.ruled:after{content:"";height:2px;flex:1;background:var(--line-strong)}.blocks{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:24px;align-items:start}.block-wide{grid-column:1 / -1}.block-half,.kpi{grid-column:span 3}.block-third{grid-column:span 2}@media (max-width: 1040px){.block-third{grid-column:span 3}}@media (max-width: 760px){.block-half,.block-third,.kpi{grid-column:1 / -1}}.panel{min-width:0}.prose{max-width:80ch}.prose h3{font-size:15px;font-weight:500;margin:0 0 6px}.prose p{margin:0 0 8px;font-size:15.5px;line-height:1.6}.prose p:last-child{margin-bottom:0}.prose b{font-weight:600;font-variant-numeric:tabular-nums}.prose.note{border-left:3px solid var(--line-strong);padding:2px 0 2px 14px;color:var(--ink-2)}.prose.note p{font-size:13.5px}.calendar{min-width:0;--tone-bad: var(--bad);--tone-warn: var(--s4);--tone-info: var(--s1);--tone-muted: var(--ink-3)}.calendar-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 16px;margin-bottom:8px}.calendar-head .actions-title{margin:0}.calendar-nav{display:flex;flex-wrap:wrap;gap:4px 14px;font-variant-numeric:tabular-nums}.calendar-months{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px 28px;align-items:start}.calendar-month{border-collapse:collapse;table-layout:fixed;width:100%}.calendar-month caption{text-align:left;font-size:13.5px;font-weight:500;padding-bottom:6px}.calendar-month th{font-size:11px;font-weight:500;color:var(--ink-3);padding:0 0 4px}.calendar-month td{padding:1px;height:38px;vertical-align:top}.calendar-cell{position:relative;height:100%}.calendar-day{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;width:100%;height:36px;padding:3px 0 0;border:1px solid transparent;border-radius:6px;background:none;color:var(--ink-3);font:inherit;font-size:12.5px;font-variant-numeric:tabular-nums}.calendar-day.shown{border-color:var(--ink)}button.calendar-day{color:var(--ink);font-weight:600;cursor:pointer;background:color-mix(in srgb,var(--tone) 14%,transparent)}button.calendar-day:hover,button.calendar-day[aria-expanded=true]{background:color-mix(in srgb,var(--tone) 28%,transparent)}.calendar .tone-bad{--tone: var(--tone-bad)}.calendar .tone-warn{--tone: var(--tone-warn)}.calendar .tone-info{--tone: var(--tone-info)}.calendar .tone-muted{--tone: var(--tone-muted)}.calendar-dots{display:flex;align-items:center;gap:2px;height:10px;margin-top:2px}.calendar-dots small{font-size:9px;font-weight:400;color:var(--ink-2)}.calendar-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--tone);flex:none}.calendar-key{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:10px;font-size:12px;color:var(--ink-2)}.calendar-key .calendar-dot,.calendar-popup-kind .calendar-dot{margin-right:5px;vertical-align:1px}.calendar-popup{position:absolute;top:100%;left:0;z-index:5;width:min(340px,calc(100vw - 32px));padding-top:4px;font-size:13px}.calendar-popup-day,.calendar-popup ul{background:var(--card);border:1px solid var(--line-strong);margin:0}.calendar-popup-day{padding:8px 12px 4px;border-bottom:0;border-radius:8px 8px 0 0;font-size:12px;color:var(--ink-2)}.calendar-popup ul{list-style:none;padding:0 4px 4px;border-top:0;border-radius:0 0 8px 8px;max-height:340px;overflow-y:auto;box-shadow:0 8px 24px #14123229}.calendar-popup button{display:flex;flex-direction:column;gap:2px;width:100%;padding:6px 8px;border:0;border-radius:6px;background:none;color:var(--ink-2);font:inherit;text-align:left;cursor:pointer}.calendar-popup button:hover,.calendar-popup button:focus-visible{background:var(--accent-soft)}.calendar-popup button b{color:var(--ink);font-weight:600}.calendar-popup-kind{font-size:11.5px}.calendar-popup-about{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;white-space:pre-line}.calendar-popup-go{color:var(--accent);font-size:12px}.chapter{scroll-margin-top:calc(env(safe-area-inset-top,0px) + var(--report-top, 0px) + 16px)}.chapter:focus{outline:none}.chapter:focus-visible{outline:2px solid var(--accent);outline-offset:6px;border-radius:6px}.chapter.arrived{animation:chapter-arrived 1.8s ease-out;border-radius:6px}@keyframes chapter-arrived{0%{background:var(--accent-soft);box-shadow:0 0 0 8px var(--accent-soft)}to{background:transparent;box-shadow:0 0 0 8px transparent}}.actions{min-width:0}.actions-title{font-size:13px;font-weight:500;color:var(--ink-2);margin:0 0 10px}.chapters{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:30px}.chapter h3{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:17px;font-weight:500;margin:0}.chapter h3 .n{color:var(--ink-3)}.chapter h3 .cell-link{font:inherit;color:inherit}.effort{font-size:11.5px;font-weight:500;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:2px 10px}.chapter-sum{margin:2px 0 12px;color:var(--ink-2);font-size:13px;font-variant-numeric:tabular-nums}.chapter-about{margin:0 0 14px;max-width:92ch;font-size:14px;line-height:1.55;white-space:pre-line}.chapter .note{display:grid;grid-template-columns:minmax(0,8.5em) minmax(0,1fr);gap:6px 16px;margin:0 0 14px;max-width:92ch;font-size:14px;line-height:1.55}.chapter .note dt{color:var(--ink-3);font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;padding-top:3px}.chapter .note dd{margin:0}.chapter .note ol{margin:0;padding-left:18px}@media (max-width: 640px){.chapter .note{grid-template-columns:minmax(0,1fr)}.chapter .note dt{padding-top:6px}}.entries{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;align-items:start;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:10px 14px}.entry .what{display:block;font-weight:500}.entry .why{display:block;color:var(--ink-2);font-size:13px;margin-top:2px}.entry .where{display:block;color:var(--ink-3);font-size:12px;margin-top:4px;overflow-wrap:anywhere}.entry .figure{font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.entry-end{display:flex;align-items:center;gap:10px}.ext-link{margin-left:4px;color:var(--accent);text-decoration:none;font-size:.95em}.ext-link:hover{text-decoration:underline}.command-icon{border:1px solid var(--line-strong);border-radius:6px;background:none;color:var(--ink-2);cursor:pointer;padding:1px 6px;font:600 12px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.command-icon:hover{color:var(--accent);border-color:var(--accent)}.commands{width:min(760px,calc(100vw - 32px));max-height:calc(100vh - 32px);background:var(--card);color:inherit;border:1px solid var(--line-strong);border-radius:10px;padding:16px}.commands::backdrop{background:#00000073}.commands-head{display:flex;justify-content:space-between;align-items:start;gap:16px;margin-bottom:12px}.commands-head .where{display:block;color:var(--ink-3);font-size:12px;margin-top:2px;overflow-wrap:anywhere}.command{margin-top:12px}.command-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:13px}.command .hint{color:var(--ink-2)}.command.warn .hint{color:var(--bad)}.command pre{margin:4px 0 0;padding:10px 12px;border:1px solid var(--line);border-radius:6px;overflow-x:auto;font:12.5px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace}.command.wrap pre{white-space:pre-wrap;overflow-wrap:anywhere}.commands-note{margin:14px 0 0;color:var(--ink-2);font-size:13px}.command-group h4{margin:16px 0 0;font-size:13px;font-weight:600}.chapter h3 .command-icon{align-self:center;font-size:11.5px}.actions.done .entry{background:transparent}.actions.done .tick{color:var(--good)}.chapter>.linkbtn{margin-top:6px}.panel h3{font-size:13px;font-weight:500;color:var(--ink-2);margin:0 0 8px}.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:16px;min-width:0}.lead{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.headline{font-size:clamp(24px,3.4vw,36px);font-weight:600;letter-spacing:-.015em;line-height:1.2;margin:0;max-width:36ch}.lede{color:var(--ink-2);font-size:15.5px;margin:0;max-width:72ch}.seg{display:inline-flex;background:var(--surface);border-radius:8px;padding:3px;gap:2px}.seg button{border:0;background:transparent;color:var(--ink-2);font-size:13px;padding:5px 12px;border-radius:6px;cursor:pointer}.seg button[aria-pressed=true]{background:var(--card);color:var(--ink);box-shadow:0 1px 2px #0000001a}.lanes{align-self:stretch;display:grid;gap:2px;margin-top:4px;border:1px solid var(--line);border-radius:8px;padding:10px 14px}.lane{display:grid;grid-template-columns:minmax(0,16em) minmax(0,1fr) 7em;gap:2px 14px;align-items:center;padding:3px 0;border-radius:4px}.lane.on{background:var(--accent-soft)}.lane svg{display:block;width:100%;height:24px;overflow:visible}.lane-total{border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:4px}.lane-total svg{height:32px}.lane-name{display:flex;flex-direction:column;min-width:0;font-size:13px;line-height:1.35}.lane-name .cell-link,.lane-name b{overflow-wrap:anywhere;font-weight:500}.lane-kind{font-size:12px}.lane-change{text-align:right;font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}.lane svg line,.lane svg path{vector-effect:non-scaling-stroke}.lane-line{fill:none;stroke:var(--trend);stroke-width:2}.lane-before{fill:var(--line-strong)}.lane-up{fill:var(--bad);stroke:var(--bad)}.lane-down{fill:var(--good);stroke:var(--good)}.lane-off{stroke:var(--ink-3);stroke-width:1.5;stroke-dasharray:2 3}.lane-mark{stroke-width:2}.lane-total .lane-mark{stroke-width:1.5;stroke-opacity:.45}.lane-total .lane-mark.on{stroke-opacity:1;stroke-width:2.5}.lane-why{grid-column:1 / -1;margin:0;padding:0;list-style:none;font-size:12px;line-height:1.4;color:var(--ink-2);overflow-wrap:anywhere}.lane-axis{padding-top:0}.lane-ticks{display:flex;justify-content:space-between;font-size:11.5px;color:var(--ink-3)}.lanes .hint{margin-top:4px}@media (max-width: 640px){.lane{grid-template-columns:minmax(0,1fr) auto}.lane svg,.lane-ticks{grid-column:1 / -1;grid-row:2}}.scrub{position:sticky;top:calc(env(safe-area-inset-top,0px) + var(--report-top, 0px));z-index:6;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:12px 18px 10px;display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:8px 18px;align-items:center;box-shadow:0 4px 14px #1412320f}@media (max-width: 680px){.scrub{grid-template-columns:auto minmax(0,1fr)}.scrub .track{grid-column:1 / -1}}@media (max-width: 640px){.scrub{top:env(safe-area-inset-top,0px)}}.scrub .hint{grid-column:1 / -1}.btn-primary{background:var(--accent);color:var(--accent-ink);border:0;border-radius:6px;padding:8px 16px;font-weight:500;display:inline-flex;gap:8px;align-items:center;justify-content:center;cursor:pointer;min-width:96px}.btn-primary svg{width:12px;height:12px;fill:currentColor}.when{font-size:13px;color:var(--ink-2);white-space:nowrap}.track{position:relative;padding-top:12px;padding-bottom:18px;min-width:0}.track input[type=range]{width:100%;margin:0;accent-color:var(--accent);display:block}.coverage{position:absolute;top:2px;left:8px;width:calc(100% - 16px);height:6px}.coverage .ran{fill:var(--trend)}.coverage .missed{fill:var(--line)}.ticks{position:absolute;left:8px;right:8px;bottom:0;height:16px;font-size:11.5px;color:var(--ink-3)}.ticks span{position:absolute;transform:translate(-50%);white-space:nowrap}@media (max-width: 760px){.ticks span.odd{display:none}}.kpi{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;min-width:0}.kpi .label{color:var(--ink-2);font-size:12.5px}.kpi .value{font-size:28px;font-weight:500;letter-spacing:-.01em}.kpi .note{color:var(--ink-3);font-size:12px}.kpi svg{width:100%;max-width:170px;height:52px}.spark-area{fill:var(--trend);fill-opacity:.14}.spark-line{fill:none;stroke:var(--trend);stroke-width:1.5}.spark-dot{fill:var(--trend);stroke:var(--card);stroke-width:2}.res-table{max-height:420px;overflow:auto;border:1px solid var(--line);border-radius:8px}table.t{width:100%;border-collapse:collapse;font-size:13px}.t th{text-align:left;font-weight:500;color:var(--ink-2);font-size:12.5px;border-bottom:1px solid var(--line-strong);padding:7px 10px;white-space:nowrap;position:sticky;top:0;background:var(--card);z-index:1}.t td{padding:7px 10px;border-bottom:1px solid var(--line);vertical-align:top}.t tr:last-child td{border-bottom:0}.idx{color:var(--ink-3);width:2.5em}.how{display:block;font-family:var(--font-mono);font-size:11.5px;color:var(--ink-3);overflow-wrap:anywhere}.how-table{width:100%;border-collapse:collapse;margin-top:4px;font-family:var(--font-mono);font-size:11.5px;color:var(--ink-3)}.t .how-table th{position:static;background:none;padding:3px 12px 3px 0;font-family:var(--font-sans);font-size:11.5px;white-space:normal;border-bottom:1px solid var(--line)}.t .how-table td{padding:3px 12px 3px 0;overflow-wrap:break-word}.t .how-table td:last-child{white-space:nowrap}.inbar{display:flex;align-items:center;gap:8px;white-space:nowrap}.inbar i{display:block;height:14px;border-radius:2px;background:var(--trend);flex:none}.tag{display:inline-block;margin-left:8px;padding:0 7px;border-radius:999px;background:var(--accent-soft);color:var(--ink-2);font-size:11.5px;white-space:nowrap}.table-apart{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0 0 10px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-size:13px}.table-apart b{font-weight:500}.cell-link{border:0;background:none;padding:0;cursor:pointer;text-align:left}.cell-link:hover{color:var(--accent);text-decoration:underline}.zoom{border:1px solid var(--line);border-radius:8px;padding:12px 14px;display:flex;flex-direction:column;gap:10px;min-width:0}.zoom-empty{margin:0}.zcrumbs{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 6px;font-size:13px}.zcrumb{border:0;background:none;padding:0;color:var(--accent);cursor:pointer;overflow-wrap:anywhere;text-align:left}.zcrumb:hover{text-decoration:underline}.zcrumb[aria-current=location]{color:var(--ink);font-weight:500;cursor:default;text-decoration:none}.zcrumb-sep{color:var(--ink-3)}.zcrumb-total{color:var(--ink-2);margin-right:auto;padding-left:6px;font-variant-numeric:tabular-nums}.zbar{display:flex;gap:2px;height:30px}.zseg{flex:1 1 0;min-width:3px;border:0;padding:0;border-radius:3px}button.zseg{cursor:zoom-in}.zseg.on,button.zseg:focus-visible{outline:2px solid var(--ink);outline-offset:1px}.seg-rest{background:var(--line-strong)}table.zlist{width:100%;border-collapse:collapse;font-size:12.5px}.zlist th{text-align:left;font-weight:500;color:var(--ink-3);font-size:12px;padding:3px 8px;border-bottom:1px solid var(--line-strong);white-space:nowrap}.zlist td{padding:4px 8px;border-bottom:1px solid var(--line);vertical-align:top}.zlist tr:last-child td{border-bottom:0}.zlist tr.on td{background:var(--accent-soft)}.zlist .num{text-align:right;white-space:nowrap}.zlist .sw-col{width:22px;padding-right:0}.zlist .sw{display:inline-block;width:10px;height:10px;border-radius:2px;vertical-align:-1px}.zlist .cell-link{overflow-wrap:anywhere}.zlines{overflow-x:auto}.facts{margin:0;display:flex;flex-wrap:wrap;gap:4px 18px;font-size:12px;border-top:1px solid var(--line);padding-top:8px}.facts div{display:flex;gap:6px;align-items:baseline;min-width:0}.facts dt{color:var(--ink-3)}.facts dd{margin:0;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.bigchart svg{display:block;width:100%}.readout{margin:0 0 4px;font-size:12.5px;color:var(--ink-2);min-height:1.5em}.trend-area{fill-opacity:.16}.trend-line{fill:none;stroke-width:2}.trend-dot{stroke-width:0}.series-0{fill:var(--trend);stroke:var(--trend);background:var(--trend)}.series-1{fill:var(--s1);stroke:var(--s1);background:var(--s1)}.series-2{fill:var(--s2);stroke:var(--s2);background:var(--s2)}.series-3{fill:var(--s3);stroke:var(--s3);background:var(--s3)}.series-4{fill:var(--s4);stroke:var(--s4);background:var(--s4)}.series-5{fill:var(--s5);stroke:var(--s5);background:var(--s5)}.trend-line.series-0,.trend-line.series-1,.trend-line.series-2,.trend-line.series-3,.trend-line.series-4,.trend-line.series-5{fill:none}.trend-area.series-0,.trend-area.series-1,.trend-area.series-2,.trend-area.series-3,.trend-area.series-4,.trend-area.series-5{stroke:none}.now-line{stroke:var(--accent);stroke-width:1.5}.hover-line{stroke:var(--ink-3)}.flow-card{position:relative}.flow-head{margin-bottom:8px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px}.flow-readout{display:grid;flex:1 1 24em}.flow-readout>span{grid-area:1 / 1}.flow-readout>.keep-room{visibility:hidden}.flow-level{display:flex;align-items:center;gap:8px;color:var(--ink-3);font-size:12.5px}.flow-level input{accent-color:var(--accent);width:160px}.flow-level-value{color:var(--ink);min-width:4.5em;font-variant-numeric:tabular-nums}.sankey-wrap{overflow-x:auto}.colhead{fill:var(--ink-3);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.c-0{fill:var(--flow-0)}.c-1{fill:var(--flow-1)}.c-2{fill:var(--flow-2)}.links path{fill:none;stroke-opacity:.32}.links path:hover{stroke-opacity:.6}.node{transition:opacity .12s}.links path{transition:stroke-opacity .12s,d .3s,stroke-width .3s}.node rect,.node .lbl{transition:transform .3s,height .3s}.links.tracing path{stroke-opacity:0;pointer-events:none}.links.tracing path.traced{stroke-opacity:.55;pointer-events:auto}.links.tracing path.traced:hover{stroke-opacity:.7}.node.faded{opacity:.2}.node.gone{opacity:0;pointer-events:none}.flow-head .hint.traced{color:var(--ink)}.links .flow-0{stroke:var(--flow-0)}.links .flow-1{stroke:var(--flow-1)}.links .flow-2{stroke:var(--flow-2)}.node[role=button]{cursor:pointer;outline:none}.node:focus-visible rect,.node.on rect{stroke:var(--ink);stroke-width:2}.lbl .nm{fill:var(--ink);font-weight:500;font-size:12.5px}.lbl .vl{fill:var(--ink-3);font-size:12px}.flow-note{margin:24px auto;max-width:520px;text-align:center;color:var(--ink-2)}.net-map text{font-size:12px}.net-box rect{fill:var(--accent);fill-opacity:.035;stroke:var(--line-strong);stroke-width:1}.net-box.d-1 rect{fill-opacity:.06;stroke-dasharray:5 3}.net-box.d-2 rect{fill-opacity:.09;stroke-dasharray:2 3}.net-box.alert rect{stroke:var(--bad);stroke-opacity:.55}.net-box .kind{fill:var(--ink-3);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase}.net-box .nm{fill:var(--ink);font-weight:500}.net-box .vl{fill:var(--ink-3)}.net-lines path{fill:none}.net-in{stroke:var(--ink-3);stroke-opacity:.45;stroke-width:1.5}.net-line path:first-child{stroke:var(--ink-3);stroke-opacity:.5;stroke-width:1.4}.net-in.alert,.net-line.alert path:first-child{stroke:var(--bad);stroke-opacity:.8;stroke-width:1.8}.net-line .net-hit{stroke:transparent;stroke-width:10}.net-line.traced path:first-child,.net-in.traced{stroke-opacity:1;stroke-width:2.4}.net-internet circle{fill:var(--surface);stroke:var(--ink-3);stroke-width:1.5}.net-internet text{fill:var(--ink);font-size:10.5px;font-weight:600}.net-entry rect{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1}.net-entry text{fill:var(--ink);font-weight:500}.net-entry.alert rect{stroke:var(--bad);stroke-width:1.5}.net-node rect{fill:var(--card);stroke:var(--line-strong);stroke-width:1}.net-node .stripe{fill:var(--flow-1);stroke:none}.net-node.alert rect:not(.stripe){stroke:var(--bad);stroke-width:1.5}.net-node.alert .stripe{fill:var(--bad)}.net-node .nm{fill:var(--ink);font-weight:500;font-size:12.5px}.net-node .ports{fill:var(--ink-2);font-family:var(--font-mono);font-size:11px}.net-node.alert .ports{fill:var(--bad)}.net-box,.net-entry,.net-node,.net-line,.net-in,.net-internet{transition:opacity .12s}.net-map .faded{opacity:.15}.net-box.faded{opacity:.45}.net-box[role=button],.net-entry[role=button],.net-node[role=button]{cursor:pointer;outline:none}.net-entry:focus-visible rect,.net-entry.on rect,.net-node:focus-visible rect:not(.stripe),.net-node.on rect:not(.stripe),.net-box:focus-visible rect,.net-box.on rect{stroke:var(--ink);stroke-width:2}.net-key{display:flex;align-items:center;gap:6px;margin:0;color:var(--ink-3);font-size:12.5px}.net-key i{display:inline-block;width:18px;height:0;border-top:2px solid var(--bad)}.net-more{margin-top:6px}.hbars{list-style:none;margin:0;padding:0;display:grid;gap:4px}.hbars button{width:100%;display:grid;grid-template-columns:minmax(0,9em) minmax(0,1fr) auto;gap:8px;align-items:center;border:0;background:none;padding:3px 4px;border-radius:4px;cursor:pointer;font-size:12.5px;text-align:left}.hbars button:disabled{cursor:default}.hbars button:hover:not(:disabled),.hbars button.on{background:var(--accent-soft)}.hbars .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hbars .bar-track{height:12px}.hbars .bar-track i{display:block;height:100%;border-radius:2px;background:var(--s1)}.hbars .v{color:var(--ink-2);white-space:nowrap}.donut-row{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.donut-total{fill:var(--ink);font-size:15px;font-weight:600}.legend{display:flex;flex-direction:column;gap:4px;font-size:12.5px;min-width:150px}.legend.inline{flex-direction:row;flex-wrap:wrap;gap:4px 14px;margin-top:6px}.legend div{display:flex;align-items:center;gap:8px}.legend .sw{width:10px;height:10px;border-radius:2px;flex:none}.legend .v{margin-left:auto;color:var(--ink-2)}.heat-wrap{overflow-x:auto}.heat .missed{fill:var(--card);stroke:var(--ink-3);stroke-width:1.2}.seq-key{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:11.5px;color:var(--ink-3);margin-top:6px}.seq-key i{display:block;width:110px;height:8px;border-radius:4px;background:linear-gradient(90deg,var(--seq-lo),var(--seq-hi))}.setup{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.setup>p{margin:0;max-width:80ch}.setup-table{overflow-x:auto;border:1px solid var(--line);border-radius:8px}.setup-parts{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:4px 16px;margin:0;font-size:13px}.setup-parts dt{font-weight:500}.setup-parts dd{margin:0;color:var(--ink-2);overflow-wrap:anywhere}.setup .ruled{flex-wrap:wrap;row-gap:8px}.setup .ruled>h2{white-space:normal}.setup .ruled>.btn{order:1}.setup-perms{min-width:640px}.setup-perms td:nth-child(1){width:18%}.setup-perms td:nth-child(2){width:4.5em}.setup-perms td:nth-child(3){width:34%}.setup-role th{position:static;white-space:normal;background:var(--surface);color:var(--ink);font-size:13px;padding:10px}.setup-used{display:block;color:var(--ink-2);font-weight:400;margin-top:2px;overflow-wrap:anywhere}.setup-list{list-style:none;margin:0;padding:0;font-family:var(--font-mono);font-size:12px;overflow-wrap:anywhere}.setup-deny{color:var(--bad);font-weight:500}.setup-when{display:block;margin-top:4px;color:var(--ink-2);font-size:12px;overflow-wrap:anywhere}.setup-steps{display:grid;gap:14px;margin:0;padding-left:20px}.setup-steps>li{max-width:80ch;min-width:0}.setup-steps>li>b{font-weight:500}.setup-steps h3{margin:12px 0 4px;font-size:13px;font-weight:500;color:var(--ink-2)}.setup-cmd{margin:6px 0 0;padding:10px 12px;overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:8px;font-family:var(--font-mono);font-size:12px;line-height:1.55}@media (max-width: 640px){.setup-parts{grid-template-columns:minmax(0,1fr)}.setup-parts dd{margin-bottom:6px}}.aws-choice{border:0;margin:0;padding:0;display:grid;gap:10px;min-width:0}.aws-choice legend{padding:0;margin-bottom:10px;font-weight:500}.aws-choice label{display:flex;align-items:baseline;gap:8px;cursor:pointer;max-width:80ch}.aws-choice input{margin:0;accent-color:var(--accent)}.aws-choice .hint{display:block;margin-top:2px}.aws-bucket{border:0;margin:0;padding:0;display:grid;gap:10px;min-width:0;max-width:80ch}.aws-bucket legend{padding:0;margin-bottom:10px;font-weight:500}.aws-bucket .bucket-name{display:grid;gap:6px}.aws-bucket input[type=text]{font:13px ui-monospace,SFMono-Regular,Menlo,monospace;padding:4px 8px;min-width:0;width:min(100%,34em)}.aws-bucket .create{display:flex;align-items:baseline;gap:8px;cursor:pointer}.aws-bucket .create input{margin:0;accent-color:var(--accent)}.aws-bucket .hint{display:block;margin-top:2px;overflow-wrap:anywhere}.aws-bucket .invalid{display:block;color:var(--bad);font-size:12px}.aws-actions{display:flex;flex-wrap:wrap;gap:8px}.aws-policies summary{cursor:pointer;color:var(--accent);font-size:13px}.setup>p code,.setup-parts code,.notice code{font-family:var(--font-mono);font-size:12.5px;background:var(--surface);border-radius:4px;padding:0 4px;overflow-wrap:anywhere}.setup .command{margin-top:0}.aws-policies .command{margin-top:12px}.setup .command pre{max-height:22em;overflow:auto}.help{display:grid;grid-template-columns:190px minmax(0,1fr);gap:36px;align-items:start}@media (max-width: 760px){.help{grid-template-columns:minmax(0,1fr);gap:20px}}.help-toc{position:sticky;top:calc(env(safe-area-inset-top,0px) + 16px)}@media (max-width: 760px){.help-toc{position:static}}.help-toc ol{list-style:none;margin:0;padding:0;border-left:2px solid var(--line);display:grid;gap:2px}.help-toc a{display:block;padding:4px 12px;text-decoration:none;color:var(--ink-2);font-size:13px}.help-toc a:hover{color:var(--accent)}.help-body{display:flex;flex-direction:column;gap:44px;min-width:0;max-width:880px}.help-body section{scroll-margin-top:16px}.help-body p,.help-body li{max-width:72ch}.help-body code{font-family:var(--font-mono);font-size:12.5px;background:var(--surface);border-radius:4px;padding:1px 5px;overflow-wrap:anywhere}.help-panel{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:16px 20px;margin-top:14px}.help-panel h3{margin:0 0 6px;font-size:16px;font-weight:600}.help-panel>:last-child{margin-bottom:0}.flow{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.flow li{position:relative}.flow li+li:before{content:"→";position:absolute;left:-21px;top:50%;transform:translateY(-50%);color:var(--ink-3)}@media (max-width: 760px){.flow{grid-template-columns:minmax(0,1fr);gap:24px}.flow li+li:before{content:"↓";left:50%;top:-21px;transform:translate(-50%)}}.flow button{width:100%;height:100%;display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px 14px;cursor:pointer}.flow button:hover{border-color:var(--line-strong)}.flow button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}.flow b{font-size:15px}.flow-n{font-family:var(--font-mono);font-size:11px;color:var(--ink-3)}.flow-who{font-size:12.5px;color:var(--ink-2)}.tour{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start;margin-top:14px}@media (max-width: 900px){.tour{grid-template-columns:minmax(0,1fr)}}.tour .help-panel{margin-top:0}.sketch{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px;grid-template-areas:"banner banner banner banner banner banner" "headline headline headline headline headline headline" "scrubber scrubber scrubber scrubber scrubber scrubber" "calendar calendar calendar calendar calendar calendar" "kpi kpi table table table table" "trend trend trend trend trend trend" "sankey sankey sankey sankey sankey sankey" "bars bars donut donut heatmap heatmap" "network network network network network network" "text text text text text text" "actions actions actions actions actions actions"}.sk{min-height:34px;padding:6px;border:1px dashed var(--line-strong);border-radius:6px;background:var(--card);color:var(--ink-2);font-size:12px;cursor:pointer}.sk:hover{border-style:solid}.sk[aria-pressed=true]{border-style:solid;border-color:var(--accent);background:var(--accent-soft);color:var(--ink);font-weight:600;box-shadow:0 0 0 1px var(--accent)}.sk-banner{grid-area:banner;min-height:46px;border:0;background:var(--banner);color:#fff}.sk-banner[aria-pressed=true]{background:var(--banner);color:#fff;box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--accent)}.sk-headline{grid-area:headline}.sk-scrubber{grid-area:scrubber}.sk-kpi{grid-area:kpi;min-height:72px}.sk-table{grid-area:table;min-height:72px}.sk-trend{grid-area:trend;min-height:60px}.sk-sankey{grid-area:sankey;min-height:66px}.sk-bars{grid-area:bars;min-height:54px}.sk-donut{grid-area:donut;min-height:54px}.sk-heatmap{grid-area:heatmap;min-height:54px}.sk-network{grid-area:network;min-height:60px}.sk-text{grid-area:text}.sk-actions{grid-area:actions;min-height:60px}.sk-calendar{grid-area:calendar;min-height:54px}.tour-count{margin:0 0 2px;font-family:var(--font-mono);font-size:11.5px;color:var(--ink-3)}.tour-nav{display:flex;justify-content:space-between;margin-top:12px}.hours{display:grid;grid-template-columns:repeat(24,minmax(0,1fr));gap:4px;margin:16px 0}@media (max-width: 900px){.hours{grid-template-columns:repeat(12,minmax(0,1fr));row-gap:10px}}.hours button{display:flex;flex-direction:column;align-items:center;gap:3px;border:0;background:none;padding:0;cursor:pointer;font-size:11px;color:var(--ink-3);font-variant-numeric:tabular-nums}.hours button:before{content:"";display:block;width:100%;height:34px;border-radius:3px;background:var(--trend)}.hours button:hover:before{opacity:.8}.hours button.missed:before{background:var(--card);border:1.5px dashed var(--ink-3)}.figures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0}@media (max-width: 560px){.figures{grid-template-columns:minmax(0,1fr)}}.figures div{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px 16px}.figures dt{color:var(--ink-2);font-size:12.5px}.figures dd{margin:0;font-variant-numeric:tabular-nums}.figures dd:first-of-type{font-size:24px;font-weight:500}.figures dd.muted{font-size:12.5px}.faq{display:grid;gap:8px}.faq details{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:10px 14px}.faq summary{cursor:pointer;font-weight:500}.faq p{margin:8px 0 0;color:var(--ink-2)}.code{margin:0;font-family:var(--font-mono);font-size:12px;line-height:1.55;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:12px 14px;overflow-x:auto}svg text{font-family:var(--font-sans);fill:var(--ink-2);font-size:12px}.grid line{stroke:var(--line)}.axis-label{fill:var(--ink-3);font-size:11.5px}.btn{border:1px solid var(--line-strong);border-radius:6px;background:var(--card);color:var(--ink);cursor:pointer;padding:6px 12px;font-size:14px}.btn:hover:not(:disabled){background:var(--surface)}.btn:disabled{color:var(--ink-3);cursor:default}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.primary:hover:not(:disabled){background:var(--accent);filter:brightness(1.1)}.btn.primary:disabled{background:var(--surface);border-color:var(--line-strong);color:var(--ink-3)}.btn.danger{border-color:var(--bad);color:var(--bad)}.btn.small{padding:3px 8px;font-size:13px}.btn.on-banner{background:#ffffff29;border-color:#ffffffb3;color:#fff}.btn.on-banner:hover:not(:disabled){background:#ffffff47}.builder{display:flex;flex-direction:column;gap:16px}.builder-fields{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end;flex:1 1 auto;min-width:0}.builder-field{display:flex;flex-direction:column;gap:4px;flex:1 1 200px;min-width:0;max-width:320px;font-size:13px;color:var(--ink-2)}.builder-field.wide{flex-basis:100%;max-width:none}.builder-field input,.builder-field select,.builder-add select{font:inherit;font-size:14px;color:var(--ink);background:var(--bg);border:1px solid var(--line-strong);border-radius:6px;padding:6px 8px;width:100%;height:34px;box-sizing:border-box}.builder-add select{width:auto;max-width:100%}.builder-section{border:1px solid var(--line);border-radius:8px;padding:12px 16px;margin:0;display:flex;flex-direction:column;gap:12px;min-width:0}.builder-section>legend{padding:0 6px;font-size:13px;font-weight:600;color:var(--ink-2)}.builder-row,.builder-block{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;justify-content:space-between}.builder-row .builder-field.wide{flex:1 1 200px}.builder-block{position:relative;background:var(--surface);border-radius:6px;padding:12px}.builder-info{position:absolute;top:8px;right:8px;width:20px;height:20px;padding:0;border:1px solid var(--line-strong);border-radius:50%;background:var(--card);color:var(--ink-2);font:italic 600 12px/1 Georgia,Times New Roman,serif;cursor:pointer}.builder-info:hover{border-color:var(--accent);color:var(--accent)}.block-help{width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 32px);background:var(--card);color:inherit;border:1px solid var(--line-strong);border-radius:10px;padding:16px;font-size:14px}.block-help::backdrop{background:#00000073}.block-help-head{display:flex;justify-content:space-between;align-items:start;gap:16px;margin-bottom:8px;font-size:16px}.block-help p{margin:0 0 10px}.block-help dl{margin:14px 0 10px;padding-top:10px;border-top:1px solid var(--line)}.block-help dl>div{margin-bottom:8px}.block-help dt{font-weight:600}.block-help dd{margin:2px 0 0;color:var(--ink-2)}.report-info{width:min(640px,calc(100vw - 32px));color:var(--ink)}.report-info h3{margin:16px 0 6px;font-size:14px}.report-info ul{margin:0 0 10px;padding-left:18px}.report-info li{margin-bottom:4px;color:var(--ink-2)}.report-info .report-info-section{margin:8px 0 4px;font-size:13px;font-weight:600;color:var(--ink-2)}.builder-mover{display:flex;gap:4px;flex:none}.builder-add{font-size:13px;color:var(--ink-2)}.builder-check{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-2);margin-right:12px}.builder-columns{border:0;padding:0;margin:0;flex-basis:100%;min-width:0}.builder-columns>legend{padding:0;margin-bottom:4px;font-size:13px;color:var(--ink-2)}.builder-problems{margin:0;padding-left:18px;color:var(--ink-2);font-size:13px}.builder-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.builder-confirm{font-size:13px;color:var(--ink-2)}.builder-preview{display:flex;flex-direction:column;gap:22px}.builder-kept{margin:0;padding-right:24px;flex:1 1 200px;font-size:13px;color:var(--ink-2)}@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}.collection-job{display:block;font-weight:600;white-space:nowrap}.collection-about{display:block;margin-top:2px;min-width:24ch;max-width:60ch}.collection-nowrap{white-space:nowrap}.run-status{font-weight:500;white-space:nowrap}.run-status[data-tone=good]{color:var(--good)}.run-status[data-tone=bad]{color:var(--bad)}.run-status[data-tone=warn]{color:var(--s4)}.run-status[data-tone=muted]{color:var(--ink-3)}.run-status[data-tone=live]{color:var(--accent)}.btn-primary:disabled{opacity:.5;cursor:default}.trouble-list{list-style:none;margin:0;padding:0;display:grid;gap:14px}.trouble-item{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;align-items:start}.trouble-detail{margin:4px 0 0;max-width:92ch;color:var(--ink-2);font-size:14px;line-height:1.5}.trouble-fix{margin-top:10px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px}.trouble-actions{display:flex;flex-wrap:wrap;gap:10px}.bundle-preview{max-height:360px}@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(/ui/assets/outfit-latin-wght-normal-Bc-8i84L.woff2) format("woff2")}:root{--font-display: "Outfit", var(--font-sans);--accent: #d9192c;--accent-ink: #ffffff;--accent-soft: #fdeeef;--rise: #b45309;--good: #0f766e;--bad: #d9192c;--flow-0: #e11d2e;--flow-1: #3f3d6b;--flow-2: #8a88a6;--trend: #3f3d6b;--s2: #3f3d6b;--seq-lo: #ecebf3;--seq-hi: #2e2c55;--pulse-nav: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 75 24'%3E%3Cpath fill='none' stroke='%23E11D2E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M0 15H30L34.2 1.6L40.9 22.6L44.7 15H75'/%3E%3C/svg%3E");--pulse-rule: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 34 30'%3E%3Cpath fill='none' stroke='%23E11D2E' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round' d='M0 15H5L8 5.4L12.8 20.4L15.5 15H34'/%3E%3C/svg%3E")}@media (prefers-color-scheme: dark){:root{--accent: #ff4d57;--accent-ink: #11111b;--accent-soft: #3a1a22;--rise: #f5b14c;--good: #4fd1c5;--bad: #ff4d57;--flow-0: #ff4d57;--flow-1: #a9a8e0;--flow-2: #8a88a6;--trend: #a9a8e0;--s2: #a9a8e0;--seq-lo: #1e1e30;--seq-hi: #cfcde0;--pulse-nav: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 75 24'%3E%3Cpath fill='none' stroke='%23FF4D57' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M0 15H30L34.2 1.6L40.9 22.6L44.7 15H75'/%3E%3C/svg%3E");--pulse-rule: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 34 30'%3E%3Cpath fill='none' stroke='%23FF4D57' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round' d='M0 15H5L8 5.4L12.8 20.4L15.5 15H34'/%3E%3C/svg%3E")}}html{overflow-x:clip}.logo{display:block;flex:none}.logo img{display:block;width:auto;height:34px}.topbar{position:relative;min-height:64px;margin-top:-24px;margin-bottom:6px;gap:0 28px}.topbar:after{content:"";position:absolute;left:calc(50% - 50vw);bottom:0;width:100vw;height:1px;background:var(--line-strong)}.topnav{align-self:stretch}.topnav a{position:relative;display:inline-flex;align-items:center;min-height:64px;padding:0 16px;border-radius:0;font-family:var(--font-display);font-size:15px}.topnav a[aria-current]{background:none;font-weight:600}.topnav a[aria-current]:after{content:"";position:absolute;z-index:1;left:50%;bottom:-8.5px;width:75px;height:24px;margin-left:-37px;background:var(--pulse-nav) center / contain no-repeat;pointer-events:none}@media (max-width: 640px){.topbar{padding-top:8px}.topnav{order:3;flex-basis:100%}.topnav a{min-height:44px;padding:0 12px}}.suggest-feature{display:inline-flex;align-items:center;gap:7px;flex:none;margin-left:auto;padding:7px 14px;border:1px solid var(--accent);border-radius:999px;background:var(--accent-soft);color:var(--accent);font-family:var(--font-display);font-size:14px;font-weight:600;text-decoration:none;white-space:nowrap}.suggest-feature:hover{background:var(--accent);color:var(--accent-ink)}.suggest-feature+.userbar{margin-left:0}@media (max-width: 640px){.suggest-feature{padding:6px 12px;font-size:13px}}.banner{background:none;color:var(--ink);border-radius:0;padding:0;gap:12px 40px}.banner .crumb{color:var(--ink-2);opacity:1}.banner .crumb:not(:has(a)){display:none}.banner h1{font-family:var(--font-display);font-size:34px;font-weight:600}.banner .stat b{font-family:var(--font-display)}.banner .stat span{color:var(--ink-2);opacity:1}.banner.with-info{padding-right:40px}.badge{border-color:var(--line-strong);color:var(--ink-2)}.report-info-button{top:4px;right:0;border-color:var(--line-strong);background:none;color:var(--ink-2)}.report-info-button:hover{background:var(--surface);color:var(--ink)}.report-top.condensed .banner{padding:6px 0}.report-top.condensed .report-info-button{right:0}.btn.on-banner{background:var(--card);border-color:var(--line-strong);color:var(--ink)}.btn.on-banner:hover:not(:disabled){background:var(--surface)}.banner:not(.with-info) .btn.on-banner,.btn.primary,.btn-primary{font-family:var(--font-display);font-weight:600}.banner:not(.with-info) .btn.on-banner{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);padding:9px 18px;border-radius:8px;font-size:15px}.banner:not(.with-info) .btn.on-banner:hover:not(:disabled){background:var(--accent);filter:brightness(1.1)}.ruled{gap:12px}.ruled h2,.start-group-title{font-family:var(--font-display);font-weight:600}.ruled h2{font-size:21px}.ruled:after,.start-group-title:after{content:"";flex:1;min-width:40px;height:30px;background:var(--pulse-rule) left center / 34px 30px no-repeat,linear-gradient(var(--line-strong),var(--line-strong)) 34px center / calc(100% - 34px) 1px no-repeat}.start-group-title{gap:12px;font-size:19px}.start-group-title:before{content:none}.headline,.chapter h3,.help-panel h3,.kpi .value,.figures dd:first-of-type,.start-figure b,.start-figure-scaled b,.start-card-title,.start-card-figures b{font-family:var(--font-display)}.start-figure b{font-size:32px}.start-chart .start-figure b{font-size:38px}.start-card-figures b{font-size:23px}.kpi .value{font-weight:600}.start-source-0{--source: var(--flow-0)}.start-source-1{--source: var(--flow-1)}.start-area{fill-opacity:.05}.start-line{stroke-width:2.75;stroke-linecap:round;stroke-linejoin:round}.start-dot{fill:var(--source);stroke:color-mix(in srgb,var(--source) 30%,transparent);stroke-width:10;paint-order:stroke}.start-pill{background:var(--surface)}.start-card a{border-top:1px solid var(--line)}.start-card a:hover{border-top-color:var(--line-strong)}.start-card a:hover .start-card-title{color:var(--accent)}.spark-area{fill:none}.spark-line{stroke:var(--ink)}.spark-dot{fill:var(--accent)}.series-0{fill:var(--flow-0);stroke:var(--flow-0);background:var(--flow-0)}.hbars .bar-track i{background:var(--trend)}.up{color:var(--rise)}.lane-up{fill:var(--rise);stroke:var(--rise)}.net-box rect{fill:var(--ink)}.net-entry rect{fill:var(--surface);stroke:var(--ink-3)}.flow.flow-5{grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}.flow.flow-5 li+li:before{left:-18px}@media (max-width: 960px){.flow.flow-5{grid-template-columns:minmax(0,1fr);gap:24px}.flow.flow-5 li+li:before{content:"↓";left:50%;top:-21px;transform:translate(-50%)}}.sk-banner{border:1px dashed var(--line-strong);background:var(--card);color:var(--ink-2)}.sk-banner[aria-pressed=true]{border:1px solid var(--accent);background:var(--accent-soft);color:var(--ink);box-shadow:0 0 0 1px var(--accent)}
