@import"https://fonts.googleapis.com/css2?family=Besley:wght@400;500&family=Figtree:wght@400;500;600&display=swap";:root,[data-theme=light]{--sp-paper: #FFFFFF;--sp-surface: #FBF9F6;--sp-fill: #F1ECE5;--sp-rule: #E4DDD3;--sp-rule-strong: #A39788;--sp-ink: #26221E;--sp-ink-2: #5B534A;--sp-ink-3: #736960;--sp-clay: #B4401A;--sp-slate: #245E8C;--sp-moss: #47741C;--sp-ochre: #8F5E00;--sp-umber: #7A4521;--sp-sand: #C9995A;--sp-chart-1: #DB4A1F;--sp-chart-2: #1F7BC8;--sp-chart-3: #3E9A3A;--sp-chart-4: #C78300;--sp-chart-5: #9A5A2E;--sp-chart-6: #B3854A;--sp-good: #3A7419;--sp-good-tint: #E0EDD2;--sp-warn: #855600;--sp-warn-tint: #F7E7C2;--sp-bad: #B02A1A;--sp-bad-tint: #F8DCD3;--sp-accent: var(--sp-clay)}[data-theme=dark]{--sp-paper: #2B1711;--sp-surface: #36201A;--sp-fill: #472A20;--sp-rule: #57362B;--sp-rule-strong: #8A6052;--sp-ink: #F7EEE8;--sp-ink-2: #DDC5B8;--sp-ink-3: #B8988A;--sp-clay: #FF8E5E;--sp-slate: #7DB8E8;--sp-moss: #A8D068;--sp-ochre: #F5BA45;--sp-umber: #E0A274;--sp-sand: #B8916A;--sp-chart-1: #FF7A45;--sp-chart-2: #5AAEF0;--sp-chart-3: #7CCB5C;--sp-chart-4: #FFBE3D;--sp-chart-5: #D9925E;--sp-chart-6: #E2C08F;--sp-good: #A8D068;--sp-good-tint: #2F3A1E;--sp-warn: #F5BA45;--sp-warn-tint: #45311A;--sp-bad: #FF7D6B;--sp-bad-tint: #4E2219;--sp-accent: var(--sp-clay)}:root{--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--sp-8: 64px;--sp-radius: 3px;--sp-radius-pill: 999px;--sp-text-xs: .75rem;--sp-text-sm: .875rem;--sp-text-md: 1rem;--sp-text-lg: 1.25rem;--sp-text-xl: 1.5625rem;--sp-text-2xl: 1.953rem;--sp-text-3xl: 2.441rem;--sp-text-4xl: 3.052rem;--sp-measure: 65ch;--sp-sheet: 1120px;--sp-hair: 1px;--font-display: "Besley", "Iowan Old Style", Georgia, serif;--font-body: "Figtree", "Segoe UI", system-ui, sans-serif;--font-code: ui-monospace, "SFMono-Regular", Menlo, monospace}.display-1{font-family:var(--font-display);font-size:3.052rem;line-height:1.08;font-weight:400;letter-spacing:-.035em}.display-2{font-family:var(--font-display);font-size:2.441rem;line-height:1.05;font-weight:400;letter-spacing:-.03em}.display-3{font-family:var(--font-display);font-size:1.953rem;line-height:1.08;font-weight:400;letter-spacing:-.025em}.heading-3{font-family:var(--font-body);font-size:1.5625rem;line-height:1.25;font-weight:500;letter-spacing:-.01em}.heading-4{font-family:var(--font-body);font-size:1.25rem;line-height:1.3;font-weight:600}.lead{font-family:var(--font-body);font-size:1.25rem;line-height:1.5;font-weight:400}.body{font-family:var(--font-body);font-size:1rem;line-height:1.55;font-weight:400}.small{font-family:var(--font-body);font-size:.875rem;line-height:1.5;font-weight:400}.label{font-family:var(--font-body);font-size:.75rem;line-height:1.4;font-weight:600;letter-spacing:.08em}:root{--sp-accent-tint: color-mix(in srgb, var(--sp-accent) 12%, var(--sp-paper));--sp-font-display: var(--font-display);--sp-font-body: var(--font-body);--sp-font-code: var(--font-code);color-scheme:light}:root[data-theme=dark]{color-scheme:dark}:root[data-accent=slate]{--sp-accent: var(--sp-slate)}:root[data-accent=moss]{--sp-accent: var(--sp-moss)}:root[data-accent=ochre]{--sp-accent: var(--sp-ochre)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--sp-paper);color:var(--sp-ink);font-family:var(--sp-font-body);font-size:var(--sp-text-md);line-height:1.55;-webkit-font-smoothing:antialiased}body.sp-grain{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .5 0 0 0 0 .4 0 0 0 0 .3 0 0 0 .05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}h1,h2,h3,h4{margin:0;color:var(--sp-ink);text-wrap:balance}h1,h2{font-family:var(--sp-font-display);font-weight:400;letter-spacing:-.035em;line-height:1.08}h1{font-size:var(--sp-text-4xl)}h2{font-size:var(--sp-text-2xl);letter-spacing:-.025em}h3{font-family:var(--sp-font-body);font-size:var(--sp-text-xl);font-weight:500;letter-spacing:-.01em;line-height:1.25}h4{font-family:var(--sp-font-body);font-size:var(--sp-text-lg);font-weight:600;line-height:1.3}.sp-tool h1{font-size:var(--sp-text-3xl)}h1 em,h2 em{font-style:normal;color:var(--sp-accent)}p{margin:0;max-width:var(--sp-measure)}.sp-lead{font-size:var(--sp-text-lg);color:var(--sp-ink-2);line-height:1.5}.sp-caption{font-size:var(--sp-text-sm);color:var(--sp-ink-3)}a{color:var(--sp-accent);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--sp-accent);outline-offset:2px}.sp-num,td.num,th.num{font-variant-numeric:tabular-nums}.sp-unit{text-transform:none;letter-spacing:.01em;font-weight:500}code,.sp-code{font-family:var(--sp-font-code);font-size:.9em}.sp-sheet{max-width:var(--sp-sheet);margin:0 auto;padding:var(--sp-6) max(16px,4vw) var(--sp-8);display:grid;gap:var(--sp-7)}.sp-stack{display:grid;gap:var(--sp-4)}.sp-stack--tight{gap:var(--sp-2)}.sp-row{display:flex;flex-wrap:wrap;gap:var(--sp-4);align-items:center}.sp-grid{display:grid;gap:var(--sp-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.sp-split{display:grid;gap:var(--sp-6);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start}@media (max-width: 760px){.sp-split{grid-template-columns:1fr}}.sp-scroll{overflow-x:auto}.sp-titleblock{display:grid;grid-template-columns:1fr auto;gap:var(--sp-4) var(--sp-5);align-items:end;padding-bottom:var(--sp-5);border-bottom:var(--sp-hair) solid var(--sp-rule-strong)}.sp-titleblock__meta{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:var(--sp-1) var(--sp-5);font-family:var(--sp-font-body);font-weight:600;font-size:var(--sp-text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--sp-ink-3)}.sp-titleblock__meta b{font-weight:500;color:var(--sp-ink-2)}.sp-eyebrow{display:inline-flex;align-items:center;gap:var(--sp-2);font-family:var(--sp-font-body);font-weight:600;font-size:var(--sp-text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--sp-accent)}.sp-eyebrow:before,.sp-eyebrow:after{content:"";width:18px;height:7px;border-top:var(--sp-hair) solid currentColor;border-left:var(--sp-hair) solid currentColor;transform:translateY(3px)}.sp-eyebrow:after{border-left:0;border-right:var(--sp-hair) solid currentColor}.sp-break{border:0;height:9px;margin:0;background:linear-gradient(var(--sp-rule-strong),var(--sp-rule-strong)) left center / 1px 9px no-repeat,linear-gradient(var(--sp-rule-strong),var(--sp-rule-strong)) right center / 1px 9px no-repeat,repeating-linear-gradient(90deg,var(--sp-rule-strong) 0 10px,transparent 10px 18px) center / 100% 1px no-repeat}.sp-section{display:grid;gap:var(--sp-5)}.sp-section__head{display:grid;gap:var(--sp-3)}.sp-card{background:var(--sp-surface);border:var(--sp-hair) solid var(--sp-rule);border-radius:var(--sp-radius);padding:var(--sp-5);display:grid;gap:var(--sp-3)}.sp-card--flat{background:transparent}.sp-card__label{font-family:var(--sp-font-body);font-weight:600;font-size:var(--sp-text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--sp-ink-3)}.sp-note{border-left:2px solid var(--sp-accent);background:var(--sp-accent-tint);padding:var(--sp-3) var(--sp-4);font-size:var(--sp-text-sm);color:var(--sp-ink-2);border-radius:0 var(--sp-radius) var(--sp-radius) 0;max-width:var(--sp-measure)}.sp-note strong{color:var(--sp-ink)}.sp-stats{display:grid;gap:0;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));border-top:var(--sp-hair) solid var(--sp-rule-strong);border-bottom:var(--sp-hair) solid var(--sp-rule)}.sp-stat{padding:var(--sp-4) var(--sp-4) var(--sp-4) 0;display:grid;gap:var(--sp-1);align-content:start}.sp-stat+.sp-stat{padding-left:var(--sp-4);border-left:var(--sp-hair) solid var(--sp-rule)}.sp-stat__label{font-family:var(--sp-font-body);font-weight:600;font-size:var(--sp-text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--sp-ink-3)}.sp-stat__value{font-family:var(--sp-font-display);font-size:var(--sp-text-3xl);letter-spacing:-.03em;line-height:1.05;font-variant-numeric:tabular-nums lining-nums}.sp-stat__unit{font-family:var(--sp-font-body);font-size:var(--sp-text-sm);color:var(--sp-ink-2);letter-spacing:0;margin-left:4px}.sp-stat__delta{font-size:var(--sp-text-sm);color:var(--sp-ink-2)}.sp-stat--emphasis{background:var(--sp-fill);padding-left:var(--sp-4)}.sp-pill{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:var(--sp-radius-pill);font-size:var(--sp-text-xs);font-weight:600;letter-spacing:.02em;line-height:1.6;background:var(--sp-fill);color:var(--sp-ink-2);white-space:nowrap}.sp-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.sp-pill--good{background:var(--sp-good-tint);color:var(--sp-good)}.sp-pill--warn{background:var(--sp-warn-tint);color:var(--sp-warn)}.sp-pill--bad{background:var(--sp-bad-tint);color:var(--sp-bad)}.sp-tag{display:inline-block;padding:1px 8px;border:var(--sp-hair) solid var(--sp-rule-strong);border-radius:var(--sp-radius);font-family:var(--sp-font-body);font-weight:600;font-size:var(--sp-text-xs);color:var(--sp-ink-2)}.sp-table{width:100%;border-collapse:collapse;font-size:var(--sp-text-sm);background:var(--sp-surface)}.sp-table caption{text-align:left;padding-bottom:var(--sp-2);font-size:var(--sp-text-sm);color:var(--sp-ink-3);caption-side:top}.sp-table th{text-align:left;font-weight:500;font-family:var(--sp-font-body);font-weight:600;font-size:var(--sp-text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--sp-ink-3);padding:var(--sp-2) var(--sp-3);border-top:var(--sp-hair) solid var(--sp-rule-strong);border-bottom:var(--sp-hair) solid var(--sp-rule-strong);background:var(--sp-paper)}.sp-table td{padding:var(--sp-2) var(--sp-3);border-bottom:var(--sp-hair) solid var(--sp-rule);vertical-align:top}.sp-table .num{text-align:right;font-variant-numeric:tabular-nums}.sp-table tr.sp-total td{border-top:var(--sp-hair) solid var(--sp-rule-strong);border-bottom:var(--sp-hair) solid var(--sp-rule-strong);font-weight:600;background:var(--sp-fill)}.sp-table tbody tr:hover td{background:var(--sp-accent-tint)}.sp-btn{display:inline-flex;align-items:center;gap:var(--sp-2);padding:9px 16px;border-radius:var(--sp-radius);border:var(--sp-hair) solid var(--sp-accent);background:var(--sp-accent);color:var(--sp-paper);font:500 var(--sp-text-sm)/1.2 var(--sp-font-body);cursor:pointer;text-decoration:none}.sp-btn:hover{filter:brightness(1.08)}.sp-btn--ghost{background:transparent;color:var(--sp-ink);border-color:var(--sp-rule-strong)}.sp-btn--ghost:hover{background:var(--sp-fill);filter:none}.sp-field{display:grid;gap:6px}.sp-field label{font-family:var(--sp-font-body);font-weight:600;font-size:var(--sp-text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--sp-ink-3)}.sp-input,.sp-select{font:var(--sp-text-md)/1.3 var(--sp-font-body);color:var(--sp-ink);background:var(--sp-surface);border:var(--sp-hair) solid var(--sp-rule-strong);border-radius:var(--sp-radius);padding:8px 10px;font-variant-numeric:tabular-nums}.sp-input:focus,.sp-select:focus{outline:2px solid var(--sp-accent);outline-offset:0;border-color:var(--sp-accent)}.sp-range{accent-color:var(--sp-accent);width:100%}.sp-range-row{display:grid;grid-template-columns:1fr auto;gap:var(--sp-3);align-items:center}.sp-range-row output{font-family:var(--sp-font-body);font-weight:600;font-size:var(--sp-text-sm);min-width:7ch;text-align:right}.sp-segment{display:inline-flex;border:var(--sp-hair) solid var(--sp-rule-strong);border-radius:var(--sp-radius);overflow:hidden}.sp-segment button{font:500 var(--sp-text-sm)/1 var(--sp-font-body);padding:8px 12px;border:0;background:transparent;color:var(--sp-ink-2);cursor:pointer}.sp-segment button+button{border-left:var(--sp-hair) solid var(--sp-rule-strong)}.sp-segment button[aria-pressed=true]{background:var(--sp-fill);color:var(--sp-ink)}.sp-theme-toggle{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:var(--sp-hair) solid var(--sp-rule-strong);border-radius:var(--sp-radius-pill);background:transparent;color:var(--sp-ink-2);font:600 var(--sp-text-xs)/1 var(--sp-font-body);text-transform:uppercase;letter-spacing:.08em;cursor:pointer}.sp-theme-toggle:hover{background:var(--sp-fill);color:var(--sp-ink)}.sp-theme-toggle__icon{width:12px;height:12px;border-radius:50%;border:1.5px solid currentColor;background:linear-gradient(90deg,currentColor 50%,transparent 50%)}.sp-figure{margin:0;display:grid;gap:var(--sp-3)}.sp-figure__head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--sp-2) var(--sp-4);align-items:baseline}.sp-figure figcaption{font-size:var(--sp-text-sm);color:var(--sp-ink-3);max-width:var(--sp-measure)}.sp-chart{width:100%;min-height:240px}.sp-chart svg{display:block;width:100%;height:auto;overflow:visible}.sp-legend{display:flex;flex-wrap:wrap;gap:var(--sp-2) var(--sp-4);font-size:var(--sp-text-sm);color:var(--sp-ink-2);list-style:none;margin:0;padding:0}.sp-legend li{display:inline-flex;align-items:center;gap:6px}.sp-legend i{width:14px;height:3px;border-radius:1px;background:var(--c, var(--sp-ink))}.sp-legend i.sp-legend--setpoint{height:0;border-top:1.5px dashed var(--sp-ink);background:none}.sp-legend i.sp-legend--band{height:10px;background:var(--sp-fill);border:1px solid var(--sp-rule-strong)}.sp-footer{border-top:var(--sp-hair) solid var(--sp-rule-strong);padding-top:var(--sp-3);display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--sp-2);font-family:var(--sp-font-body);font-weight:600;font-size:var(--sp-text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--sp-ink-3)}@media (max-width: 600px){h1{font-size:var(--sp-text-3xl)}.sp-stat+.sp-stat{padding-left:0;border-left:0;border-top:var(--sp-hair) solid var(--sp-rule)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition:none!important;animation:none!important}}html{scrollbar-gutter:stable}.sp-sheet{gap:var(--sp-6)}p{margin:0}.sp-titleblock{grid-template-columns:1fr}.app-tools{display:flex;gap:var(--sp-3);align-items:center;flex-wrap:wrap;justify-content:space-between}h1 em.good,h2 em.good{color:var(--sp-good)}h1 em.bad,h2 em.bad{color:var(--sp-bad)}.app-figures{display:grid;gap:var(--sp-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))}.app-figures .sp-card{align-content:start}.app-figures .sp-card__label{min-height:2.8em}.app-figure{white-space:nowrap}.app-wide,.sp-note.app-wide{max-width:none}.app-building{display:grid;gap:var(--sp-6);grid-template-columns:minmax(0,1fr) minmax(220px,320px);align-items:start}.app-cols{display:grid;gap:var(--sp-4) var(--sp-5);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.app-cols--4{grid-template-columns:repeat(4,minmax(0,1fr))}.app-cols .wide{grid-column:span 2}@media (max-width: 860px){.app-building{grid-template-columns:1fr}.app-cols--4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 480px){.app-cols,.app-cols--4{grid-template-columns:1fr}.app-cols .wide{grid-column:auto}}.app-building{align-items:stretch}.app-sketchfig{grid-template-rows:minmax(0,1fr) auto;height:100%}.app-sketch{display:block;width:100%;height:100%;min-height:240px;background:var(--sp-surface);border:var(--sp-hair) solid var(--sp-rule);border-radius:var(--sp-radius)}.app-sketch text{font-family:var(--font-body);font-size:9px;font-weight:600;letter-spacing:.08em;fill:var(--sp-ink-3)}.app-dims{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:var(--sp-2);align-items:center;color:var(--sp-ink-3)}.sp-btn--ghost[aria-pressed=true]{background:var(--sp-fill);border-color:var(--sp-ink)}.app-headrow{display:flex;flex-wrap:wrap;gap:var(--sp-2) var(--sp-4);align-items:baseline;justify-content:space-between;min-height:1.75rem}.app-headrow>h3{font-size:var(--sp-text-lg);font-weight:600}.app-figure{font-family:var(--font-display);font-size:var(--sp-text-2xl);letter-spacing:-.025em;line-height:1.1;font-variant-numeric:tabular-nums lining-nums}.app-wordmark{font-family:var(--font-display);font-size:var(--sp-text-lg);letter-spacing:-.02em;color:var(--sp-ink)}.app-steps{display:flex;flex-wrap:wrap;gap:var(--sp-hair);background:var(--sp-rule-strong);border:var(--sp-hair) solid var(--sp-rule-strong);border-radius:var(--sp-radius);overflow:hidden}.app-steps button{flex:1 1 auto;white-space:nowrap;display:flex;align-items:baseline;gap:var(--sp-2);padding:10px 14px;border:0;background:var(--sp-paper);color:var(--sp-ink-2);font:500 var(--sp-text-sm)/1.2 var(--font-body);cursor:pointer;text-align:left}.app-steps button[aria-current=step]{background:var(--sp-fill);color:var(--sp-ink)}.app-steps button:hover:not([aria-current=step]){background:var(--sp-surface)}@media (max-width: 640px){.app-steps button{padding-block:12px}}.app-navrow{display:flex;gap:var(--sp-5);align-items:stretch;flex-wrap:wrap}.app-navrow .app-steps{flex:1 1 520px}.app-nerd{flex:0 0 auto}.app-steps .n{font-weight:600;font-size:var(--sp-text-xs);letter-spacing:.08em;color:var(--sp-accent);font-variant-numeric:tabular-nums}.app-actions{display:flex;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap;padding-top:var(--sp-4);border-top:var(--sp-hair) solid var(--sp-rule)}.sp-btn:disabled{opacity:.45;cursor:default;filter:none}.sp-segment{justify-self:start;width:fit-content;max-width:100%;flex-wrap:wrap;gap:var(--sp-hair);background:var(--sp-rule-strong)}.sp-segment button{flex:1 1 auto;background:var(--sp-paper)}.sp-segment button+button{border-left:0}.app-form{display:grid;gap:var(--sp-4) var(--sp-5);grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));align-items:start}.app-form .wide{grid-column:span 2}@media (max-width: 520px){.app-form .wide{grid-column:auto}}.sp-field{min-width:0}.sp-field>.lbl{font-family:var(--font-body);font-weight:600;font-size:var(--sp-text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--sp-ink-3)}.sp-input,.sp-select{width:100%;min-width:0}textarea.sp-input{resize:vertical;line-height:1.5;min-height:112px}.app-check{display:flex;gap:var(--sp-2);align-items:flex-start;font-size:var(--sp-text-sm);color:var(--sp-ink);cursor:pointer}.app-check input{width:16px;height:16px;margin-top:3px;accent-color:var(--sp-accent);flex:none}.app-group{display:grid;gap:var(--sp-4)}.app-group>h3{font-size:var(--sp-text-lg);font-weight:600}.app-q{display:grid;gap:var(--sp-2)}.app-q>.q{font-size:var(--sp-text-md);font-weight:500;color:var(--sp-ink)}.app-choices{display:grid;gap:var(--sp-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.app-choice{display:grid;gap:var(--sp-1);text-align:left;padding:var(--sp-4);background:var(--sp-surface);border:var(--sp-hair) solid var(--sp-rule-strong);border-radius:var(--sp-radius);color:var(--sp-ink);font:inherit;cursor:pointer}.app-choice:hover{background:var(--sp-fill)}.app-choice[aria-pressed=true]{background:var(--sp-fill);border-color:var(--sp-ink)}.app-choice b{font-weight:600;font-size:var(--sp-text-md)}.app-choice span{font-size:var(--sp-text-sm);color:var(--sp-ink-2)}.app-list{border:var(--sp-hair) solid var(--sp-rule-strong);border-radius:var(--sp-radius);max-height:220px;overflow-y:auto;background:var(--sp-surface)}.app-list button{display:block;width:100%;text-align:left;padding:8px 10px;border:0;border-bottom:var(--sp-hair) solid var(--sp-rule);background:transparent;color:var(--sp-ink);font:var(--sp-text-sm)/1.4 var(--font-body);font-variant-numeric:tabular-nums;cursor:pointer}.app-list button:last-child{border-bottom:0}.app-list button:hover,.app-list button[aria-pressed=true]{background:var(--sp-fill)}.app-statement{font-size:var(--sp-text-lg);line-height:1.5;color:var(--sp-ink);max-width:var(--sp-measure)}.app-statement b{font-weight:600;font-variant-numeric:tabular-nums}.app-status{font-size:var(--sp-text-sm);color:var(--sp-ink-3)}.app-map{display:block;width:100%;height:auto;background:var(--sp-surface);border:var(--sp-hair) solid var(--sp-rule);border-radius:var(--sp-radius);cursor:crosshair;touch-action:manipulation}.app-map .dot{fill:var(--sp-rule-strong)}.app-map .here{fill:none;stroke:var(--sp-accent);stroke-width:1.5}.app-map .here-dot{fill:var(--sp-accent)}.app-pair{display:grid;gap:var(--sp-6);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.app-pair .sp-figure__head{display:grid;gap:var(--sp-2);justify-content:start;min-height:5.75rem;align-content:start}@media (max-width: 860px){.app-pair{grid-template-columns:1fr}.app-pair .sp-figure__head{min-height:0}}.app-dial{display:grid;gap:var(--sp-6);grid-template-columns:minmax(220px,320px) minmax(0,1fr);align-items:center}.app-two{display:grid;gap:var(--sp-6) var(--sp-7);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}@media (max-width: 720px){.app-dial,.app-two{grid-template-columns:1fr}.app-dial .app-clock{margin:0 auto}}.app-clock{display:block;width:100%;max-width:340px;height:auto;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.app-clock text{font-family:var(--font-body);font-size:11px;fill:var(--sp-ink-3);font-variant-numeric:tabular-nums}.app-clock .hand{cursor:grab;touch-action:none}.app-clock .hand circle{fill:var(--sp-paper);stroke:var(--sp-ink);stroke-width:1.5}.app-clock .hand circle.reach{fill:transparent;stroke:none}.app-clock .hand text{fill:var(--sp-ink);font-weight:600}.app-sched{display:block;width:100%;height:auto;border:var(--sp-hair) solid var(--sp-rule);border-radius:var(--sp-radius);background:var(--sp-surface);cursor:ns-resize;touch-action:none;-webkit-user-select:none;user-select:none}.app-sched text.val{fill:var(--sp-ink-2);font-weight:600;font-size:11px;pointer-events:none}.app-sched text.val--run{fill:var(--sp-ink);font-size:12.5px}.app-sched text{font-family:var(--font-body);font-size:11px;fill:var(--sp-ink-3);font-variant-numeric:tabular-nums}.app-scatter{display:block;width:100%;height:auto}.sp-table td .sp-pill,.sp-table td .sp-tag{margin-left:var(--sp-2)}.sp-table td i.sw{display:inline-block;width:10px;height:10px;border-radius:1px;margin-right:var(--sp-2);background:var(--c)}.app-think{display:grid;gap:var(--sp-3);justify-items:start;padding:var(--sp-5) 0}.app-think .sp-lead{min-height:3.2em}.app-wave{display:flex;align-items:flex-end;gap:2px;width:min(100%,30rem);height:104px;border-bottom:var(--sp-hair) solid var(--sp-rule-strong);margin-bottom:var(--sp-3)}.app-wave i{flex:1;height:100%;transform-origin:bottom;transform:scaleY(calc(.3 + .03 * var(--i)));background:color-mix(in srgb,var(--sp-chart-1) calc(var(--i) * 4.3%),var(--sp-chart-2));animation:app-wave 1.5s ease-in-out infinite;animation-delay:calc((var(--i) - 24) * 75ms)}@keyframes app-wave{0%,to{transform:scaleY(.28);background:var(--sp-chart-2)}50%{transform:scaleY(1);background:var(--sp-chart-1)}}.app-nowrap{white-space:nowrap}.sp-table tr.app-pick{cursor:pointer}.sp-table tr.app-pick:focus-visible{outline:2px solid var(--sp-accent);outline-offset:-2px}.sp-table tr.app-muted td{color:var(--sp-ink-3)}.sp-table tr.app-muted td i.sw{background:var(--sp-rule-strong)}.sp-table tr.app-picked td{background:var(--sp-accent-tint);color:var(--sp-ink)}.sp-table tr.app-picked td:first-child{box-shadow:inset 2px 0 0 var(--sp-accent)}.app-sched--static{cursor:default}.app-report{display:grid;gap:var(--sp-7)}.app-report__page{display:grid}.app-report__week .sp-chart{min-height:0}@media print{@page{margin:14mm}html{font-size:12px}body{-webkit-print-color-adjust:exact;print-color-adjust:exact}.app-navrow,.app-actions,.app-tools,.no-print,.sp-footer{display:none!important}.sp-sheet{max-width:none;padding:0;gap:var(--sp-5)}.sp-titleblock h1{font-size:var(--sp-text-2xl)}.sp-titleblock .sp-lead{display:none}.app-report{gap:var(--sp-5)}.app-report__page{break-before:page}.sp-figure,.sp-stats,.sp-table tr{break-inside:avoid}}.sp-table td i.sw.sw--hatch{background-image:repeating-linear-gradient(45deg,transparent 0 2px,var(--sp-surface) 2px 3.5px)}.sp-legend i.app-legend--hatch{height:3px;background-image:repeating-linear-gradient(90deg,transparent 0 4px,var(--sp-paper) 4px 6px)}.app-onerow{overflow-x:auto;max-width:100%}.app-onerow .sp-segment{flex-wrap:nowrap}.app-onerow .sp-segment button{white-space:nowrap;padding-inline:var(--sp-3)}.sp-table td.app-chk,.sp-table th.app-chk{width:1%;text-align:center}.sp-table td.app-chk input{cursor:pointer}.app-q[hidden]{display:none}.app-match td{vertical-align:middle}.app-match .sp-select{min-width:9rem}.app-when{display:grid;grid-template-columns:auto auto auto;justify-content:start;gap:var(--sp-3) var(--sp-5);align-items:center}.app-when__head{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:var(--sp-text-sm);font-weight:600;color:var(--sp-ink)}.app-when__head i,.app-when__m i{width:14px;height:10px;border-radius:1px;flex:none}.app-when__head i.band,.app-when__m i.band{background:var(--sp-fill);border:1px solid var(--sp-rule-strong)}.app-when__zone{font-size:var(--sp-text-md);font-weight:500;color:var(--sp-ink)}.app-when__cell{display:grid;gap:var(--sp-1)}.app-when__m{display:none;font-size:var(--sp-text-sm);color:var(--sp-ink-3)}.app-when--one{grid-template-columns:auto auto}@media (max-width: 720px){.app-when{grid-template-columns:1fr;gap:var(--sp-2)}.app-when>span:empty,.app-when__head{display:none}.app-when__m{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;font-weight:600;color:var(--sp-ink)}.app-when__cell .sp-segment{width:100%}.app-when__zone{margin-top:var(--sp-3)}}.app-rooms{display:grid;gap:var(--sp-3)}.app-room{display:grid;grid-template-columns:5.5rem auto auto 4.5rem 6.5rem 8rem;justify-content:start;gap:var(--sp-2) var(--sp-4);align-items:stretch}.app-room__name{align-self:end;font-size:var(--sp-text-md);font-weight:500;color:var(--sp-ink);padding-bottom:9px}.app-room .sp-field{display:flex;flex-direction:column}.app-room .sp-field>.sp-segment{flex:1;align-self:flex-start}@media (min-width: 901px){.app-room+.app-room .lbl{display:none}}@media (max-width: 900px){.app-room{grid-template-columns:repeat(auto-fill,minmax(8.5rem,max-content));align-items:start}.app-room__name{grid-column:1 / -1;align-self:start;padding-bottom:0;margin-top:var(--sp-2)}}@media (max-width: 560px){.app-room{grid-template-columns:repeat(2,minmax(0,1fr))}.app-room .app-room__seg{grid-column:1 / -1}.app-room .sp-field>.sp-segment{align-self:stretch;width:100%;flex-wrap:nowrap}}.app-ref{display:grid;gap:var(--sp-7)}.app-ref h3{font-size:var(--sp-text-lg);font-weight:600;margin-top:var(--sp-3)}.app-ref p,.app-ref .app-ref__list{max-width:78ch;line-height:1.6}.app-ref__list{margin:0;padding-left:1.25rem;display:grid;gap:var(--sp-2);color:var(--sp-ink)}.app-ref__toc{margin:0;padding-left:1.25rem;columns:2;column-gap:var(--sp-7);max-width:78ch;line-height:1.8}.app-ref__table td:first-child{font-weight:500;color:var(--sp-ink);white-space:nowrap}.app-ref__table td{line-height:1.5}.app-eq{margin:0;padding:var(--sp-3) var(--sp-4);background:var(--sp-surface);border:var(--sp-hair) solid var(--sp-rule);border-left:2px solid var(--sp-accent);border-radius:var(--sp-radius);font-family:var(--sp-font-code);font-size:var(--sp-text-sm);line-height:1.5;white-space:pre-wrap;max-width:78ch;color:var(--sp-ink)}.app-ref__list .app-eq{margin:var(--sp-2) 0}@media (max-width: 640px){.app-ref__toc{columns:1}.app-ref__table td:first-child{white-space:normal}}@media print{.app-ref{gap:var(--sp-5)}.app-ref h3,.app-ref .sp-section__head{break-after:avoid}.app-ref .app-eq,.app-ref .sp-note,.app-ref li{break-inside:avoid}.app-ref a{color:inherit;text-decoration:none}.app-ref p,.app-ref .app-ref__list,.app-ref .app-eq,.app-ref__toc{max-width:none}}@media (max-width: 600px){.sp-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.sp-stats>.sp-stat{padding:var(--sp-4) var(--sp-3) var(--sp-4) 0;border:0}.sp-stats>.sp-stat:nth-child(2n){padding-left:var(--sp-4);border-left:var(--sp-hair) solid var(--sp-rule)}.sp-stats>.sp-stat:nth-child(n+3){border-top:var(--sp-hair) solid var(--sp-rule)}.sp-stats>.sp-stat--emphasis{padding-left:var(--sp-4)}.sp-stat__value{font-size:var(--sp-text-2xl)}}@media (max-width: 340px){.sp-stats{grid-template-columns:1fr}.sp-stats>.sp-stat:nth-child(2n){padding-left:0;border-left:0}.sp-stats>.sp-stat--emphasis{padding-left:var(--sp-4)}.sp-stats>.sp-stat:nth-child(n+2){border-top:var(--sp-hair) solid var(--sp-rule)}}.app-hbars{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:max-content minmax(0,1fr) max-content;gap:var(--sp-1) var(--sp-4);align-items:center}.app-hbars li{display:contents}.app-hbars__name{font-size:var(--sp-text-sm);font-weight:500;color:var(--sp-ink)}.app-hbars__track{display:flex;gap:1px;height:22px;background:var(--sp-surface);border-left:var(--sp-hair) solid var(--sp-rule-strong)}.app-hbars__track i{display:block;height:100%;min-width:1px}.app-hbars__val{font-size:var(--sp-text-sm);font-weight:500;color:var(--sp-ink);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.app-hbars__split{grid-column:2 / -1;font-size:var(--sp-text-xs);color:var(--sp-ink-3);font-variant-numeric:tabular-nums;margin-bottom:var(--sp-3)}@media (max-width: 640px){.app-hbars{grid-template-columns:minmax(0,1fr) max-content}.app-hbars__name{grid-column:1 / -1;margin-bottom:-2px}.app-hbars__split{grid-column:1 / -1}}.sp-stat.app-stat--rec{background:var(--sp-good-tint)}.app-stat--rec .sp-stat__value{color:var(--sp-good)}.app-hbars__val .sp-unit{margin-left:var(--sp-2);font-weight:400;color:var(--sp-ink-3)}.sp-pill--cold{background:color-mix(in srgb,var(--sp-chart-2) 16%,var(--sp-paper));color:color-mix(in srgb,var(--sp-chart-2) 78%,var(--sp-ink))}.app-tagnote .sp-pill{margin-right:var(--sp-2)}.app-rates{margin-top:var(--sp-5)}.app-rates__table{max-width:46rem}.app-rates__table td.num{white-space:normal}.app-rates figcaption{max-width:46rem}@media print{.app-rates{break-inside:avoid}}.app-stat--heat .sp-stat__value{color:var(--sp-chart-1)}.app-stat--cool .sp-stat__value{color:var(--sp-chart-2)}.app-hbars--plain{row-gap:var(--sp-2);max-width:46rem}
