:root{color:#17212b;font-synthesis:none;text-rendering:optimizelegibility;background:#eef7f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 15% 20%,#4dc0b542,#0000 34rem),radial-gradient(circle at 90% 0,#ffba6333,#0000 30rem),linear-gradient(135deg,#f7fbf8 0%,#e8f3f6 46%,#f3f0e8 100%);min-width:320px;min-height:100vh;margin:0;overflow-x:clip}button,input{font:inherit}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{appearance:textfield}.number-input-shell{align-self:center;width:100%;min-width:0;position:relative}.number-input-shell input[type=number]{padding-inline-end:2.35rem}.number-input-steppers{pointer-events:none;z-index:2;grid-template-rows:1fr 1fr;gap:0;width:1.65rem;display:grid;position:absolute;inset-block:1px;inset-inline-end:1px}.number-input-step{pointer-events:auto;color:#103846;cursor:pointer;touch-action:manipulation;background:#e3f1edf0;border:none;border-radius:0;place-items:center;margin:0;padding:0;font-size:.72rem;font-weight:900;line-height:1;display:grid}.number-input-step-up{border-bottom:1px solid #2b576524;border-radius:0 7px 0 0}.number-input-step-down{border-radius:0 0 7px}.number-input-step:hover:not(:disabled){background:#1f9c9338}.number-input-step:active:not(:disabled){background:#1f9c9359}.number-input-step:disabled{opacity:.45;cursor:not-allowed}.price-row>.number-input-shell,.water-price-row>.number-input-shell{grid-column:3;min-width:0}.volume-setup-inline>.number-input-shell{grid-column:1;min-width:0}.price-row input[type=number],.water-price-row input[type=number],.volume-setup-inline input[type=number]{grid-column:unset}button{cursor:pointer}.app-shell{flex-direction:column;min-height:100vh;display:flex}.site-footer{color:#17212b61;letter-spacing:.02em;flex-shrink:0;width:100%;margin-top:0;padding:0;font-size:.83rem;font-weight:600}.site-footer-inner{text-align:center;box-sizing:border-box;max-width:118rem;margin-inline:auto;padding:.55rem 1rem .75rem}.site-footer-updated{opacity:.85;margin-top:.2rem;font-size:.62rem;font-weight:500;display:block}.site-footer a{color:inherit;text-underline-offset:2px;-webkit-text-decoration:underline #17212b47;text-decoration:underline #17212b47}.site-footer a:hover{color:#17212b94;text-decoration-color:#17212b66}.hero-band{color:#f8fffc;background:linear-gradient(120deg,#0a4d68f0,#1a7b74e6),#0a4d68;grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr) minmax(21rem,31rem);gap:1.615rem;padding:clamp(1.01rem,2.42vw,2.42rem);display:grid;position:relative;overflow:hidden}.hero-band-toolbar{display:none}@media (width>=1081px){.hero-band:not(.hero-band--nav-stacked){grid-template-rows:auto;grid-template-columns:minmax(0,1fr) max-content}.hero-band:not(.hero-band--nav-stacked) .hero-band-toolbar{width:var(--hero-nav-slot-width,max-content);max-width:100%;min-height:var(--hero-nav-slot-height,var(--site-nav-control-height,2.35rem));pointer-events:none;grid-area:1/2;place-self:start end;display:block}.hero-band:not(.hero-band--nav-stacked) .hero-content{grid-area:1/1;align-self:start}.hero-band:not(.hero-band--nav-stacked) .hero-metrics{margin-top:calc(var(--hero-nav-slot-height,var(--site-nav-control-height,2.35rem)) + .65rem);grid-area:1/2;align-self:start;min-width:21rem;max-width:31rem}.hero-band:not(.hero-band--nav-stacked) .hero-metrics div{padding:.6rem .7rem}.hero-band.hero-band--nav-stacked{grid-template-rows:auto auto auto;grid-template-columns:1fr;row-gap:1rem}.hero-band.hero-band--nav-stacked .hero-band-toolbar{width:100%;max-width:18rem;min-height:var(--hero-nav-slot-height,var(--site-nav-control-height,2.35rem));pointer-events:none;grid-area:2/1;justify-self:end;display:block}.hero-band.hero-band--nav-stacked .hero-content{grid-area:1/1;align-self:start}.hero-band.hero-band--nav-stacked .hero-metrics{grid-area:3/1;align-self:stretch;min-width:0;max-width:none}}.hero-band:after{content:"";opacity:.32;background:repeating-radial-gradient(at 50% 120%,#fff3 0 .18rem,#0000 .2rem 1.3rem);height:5.65rem;position:absolute;inset:auto 0 0}.watermark{opacity:.26;pointer-events:none;position:absolute;inset:0}.watermark span{border:1px solid #ffffff38;border-radius:48% 52% 46% 54%;width:42rem;height:42rem;display:block;position:absolute}.watermark span:first-child{top:-26rem;right:-4rem}.watermark span:nth-child(2){bottom:-28rem;left:7rem;transform:rotate(34deg)}.watermark span:nth-child(3){width:22rem;height:22rem;top:-12rem;left:38%;transform:rotate(68deg)}.hero-content,.hero-metrics{z-index:1;position:relative}.hero-content{max-width:52rem}.eyebrow,.section-kicker{color:#8bded1;letter-spacing:0;text-transform:uppercase;font-size:.72rem;font-weight:800}h1,h2,h3,p{margin:0}h1{letter-spacing:0;margin-top:.285rem;font-size:4.8rem;line-height:.9}.hero-content p{color:#f8fffcd6;max-width:46rem;margin-top:.888rem;font-size:.985rem;line-height:1.65}.hero-diagnose-link{color:#8bded1;text-underline-offset:2px;margin-top:.65rem;font-weight:700;text-decoration:underline;display:inline-block}.hero-diagnose-link:hover{color:#f8fffc}.hero-metrics{grid-template-columns:repeat(3,minmax(0,1fr));align-self:end;gap:.565rem;display:grid}.hero-metrics div{background:#ffffff2e;border:1px solid #ffffff38;border-radius:8px;flex-direction:column;justify-content:space-between;min-width:0;padding:.808rem;display:flex}.hero-metrics span,.projection-grid span{color:#f8fffcb8;font-size:.78rem;font-weight:700;display:block}.projection-grid span{overflow-wrap:break-word;min-width:0;line-height:1.18}.hero-metrics strong{flex-shrink:0;margin-top:0;font-size:1.45rem;display:block}.workspace{flex-direction:column;flex:auto;width:100%;min-width:0;max-width:100%;min-height:0;padding:1rem;display:flex}.workspace-shell{flex-direction:row;flex:auto;align-items:stretch;gap:1rem;width:100%;min-width:0;max-width:118rem;min-height:0;margin-inline:auto;display:flex;position:relative}.workspace-col{flex-direction:column;gap:1rem;min-width:0;min-height:0;display:flex}.workspace-col--left{flex:0 0 22.25rem;width:22.25rem;min-width:22.25rem;max-width:22.25rem}.workspace-col--right{flex:0 0 28rem;width:28rem;min-width:28rem;max-width:28rem}.workspace-col-spacer{flex:auto;min-height:0}.center-stack{flex:auto;gap:1rem;min-width:0;min-height:0;display:grid}.panel{background:#ffffffeb;border:1px solid #2a515d1f;border-radius:8px;min-width:0;box-shadow:0 24px 60px #143c481a}.panel-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.1rem .65rem;display:flex}.panel-heading h2{letter-spacing:0;margin-top:.1rem;font-size:1.25rem}.collapsible-panel{overflow:hidden}.collapsed-panel-body{min-width:0;padding-bottom:.95rem}.collapsible-panel-heading{flex-wrap:nowrap}.collapsible-title{min-width:0}.collapsible-title h2{overflow-wrap:anywhere}.panel-heading-actions{flex:none;align-items:center;gap:.45rem;display:inline-flex}.collapse-toggle{flex:none;place-items:center;padding:0;display:inline-grid}.collapse-toggle-icon{width:1.08rem;height:1.08rem;transition:transform .16s}.collapsible-panel.is-collapsed .collapse-toggle-icon{transform:rotate(-90deg)}.collapse-toggle:focus-visible{outline-offset:2px;outline:3px solid #1f9c9338}.collapsed-summary{flex-wrap:wrap;gap:.38rem;min-width:0;padding:0 1.1rem .95rem;display:flex}.collapsed-summary span{color:#375862;text-overflow:ellipsis;white-space:nowrap;background:#ffffffb8;border:1px solid #2b57651f;border-radius:999px;align-items:center;max-width:100%;min-height:1.55rem;padding:.22rem .48rem;font-size:.68rem;font-weight:850;line-height:1.15;display:inline-flex;overflow:hidden}.projection-panel .collapsed-summary span{color:#f8fffcdb;background:#ffffff1a;border-color:#ffffff2e}@media (prefers-reduced-motion:reduce){.collapse-toggle-icon{transition:none}}.icon-button,.ghost-button,.seg-button{color:#103846;background:#e4f5f1;border:0;border-radius:8px;min-height:2.35rem;font-weight:800}.icon-button{width:2.35rem;font-size:1.1rem}.ghost-button,.seg-button{padding:0 .85rem}.seg-button{background:#f3f7f3}.field{gap:.35rem;padding:.8rem;display:grid;position:relative}.field span,.reading-tile span,.target-row span,.tap-row span{color:#4b6870;font-size:.78rem;font-weight:800}.field input,.field select,.reading-tile input,.target-row input{color:#122b33;text-align:left;background:#ffffffd1;border:1px solid #2b576524;border-radius:8px;outline:none;width:100%;min-width:0;padding:.75rem .8rem}.field input:disabled{color:#87989d;background:#e9f1efb8}.reading-tile input:disabled{color:#87989d}.checkbox-field input{accent-color:#128f86;width:1.35rem;height:1.35rem}.field input:focus,.field select:focus,.reading-tile input:focus,.target-row input:focus{border-color:#1f9c93;box-shadow:0 0 0 3px #1f9c9326}.field em{color:#6d858c;font-size:.74rem;font-style:normal;font-weight:700}.volume-panel .field input[type=number]{font-size:.95rem;font-weight:700}.custom-select{min-width:0;position:relative}.custom-select-trigger{color:#122b33;width:100%;min-width:0;font:inherit;text-align:left;cursor:pointer;background:#ffffffd1;border:1px solid #2b576524;border-radius:8px;outline:none;justify-content:space-between;align-items:center;gap:.35rem;margin:0;display:inline-flex}.custom-select-trigger:hover:not(:disabled){background:#fff;border-color:#1f9c9359}.custom-select-trigger:focus-visible,.custom-select.is-open .custom-select-trigger{border-color:#1f9c93;box-shadow:0 0 0 3px #1f9c9326}.custom-select-trigger:disabled{color:#87989d;cursor:not-allowed;background:#e9f1efb8}.custom-select--field{width:100%}.custom-select--field .custom-select-trigger{padding:.75rem .65rem .75rem .8rem;font-size:.95rem;font-weight:700}.custom-select--compact .custom-select-trigger{padding:.35rem .28rem .35rem .42rem;font-size:.65rem;font-weight:800;line-height:1.2}.custom-select-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.custom-select-chevron{color:#0d5c56;flex-shrink:0;justify-content:center;align-items:center;width:.825rem;height:.825rem;display:inline-flex}.custom-select-chevron-icon{width:100%;height:100%;display:block}.custom-select--compact .custom-select-chevron{width:.675rem;height:.675rem}.custom-select-menu{z-index:40;background:#fffdf8;border:1px solid #2b576524;border-radius:8px;flex-direction:column;min-width:100%;max-height:min(16rem,50vh);padding:.25rem;display:flex;position:absolute;top:calc(100% + .25rem);left:0;right:0;overflow:auto;box-shadow:0 10px 28px #10384629}.custom-select-item{text-align:left;color:#122b33;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:.45rem .55rem;font-weight:700}.custom-select--compact .custom-select-item{padding:.35rem .45rem;font-size:.65rem;font-weight:800}.custom-select-item:hover,.custom-select-item:focus-visible{background:#1f9c931a;outline:none}.custom-select-item.is-selected{color:#0d5c56;background:#128f861f}.field-hint{color:#6d858c;margin:0;font-size:.72rem;font-weight:600;line-height:1.45}.temperature-unit-field{gap:.45rem;padding:0 .35rem .85rem;display:grid}.temperature-unit-heading{color:#4b6870;font-size:.78rem;font-weight:800}.setup-list .temperature-unit-heading-label{align-self:start}.setup-list .setup-info-label.target-label{box-sizing:border-box;align-items:flex-start;gap:.35rem;max-width:100%;display:inline-flex}.setup-list .setup-info-label.target-label>:first-child{overflow-wrap:anywhere;min-width:0;max-width:100%}.setup-list .setup-info-label.target-label>.target-info-trigger{flex:none;margin-top:.06rem}.temperature-unit-options{flex-wrap:wrap;gap:.65rem 1.25rem;display:flex}.unit-option{cursor:pointer;color:#122b33;align-items:center;gap:.35rem;font-size:.82rem;font-weight:700;display:inline-flex}.unit-option input{accent-color:#128f86;width:1rem;height:1rem;margin:0}.price-list,.setup-list{padding:0 .35rem .55rem;display:grid}.panel-prices{container:panel-prices/inline-size}.tap-panel-intro{color:#517078;max-width:40rem;margin:0;padding:0 1.1rem .85rem;font-size:.72rem;font-weight:650;line-height:1.45}.tap-panel-intro a{color:inherit;text-decoration:underline}.tap-list{min-width:0;padding:0 .35rem .55rem;display:grid}.panel-fill-tap .tap-list .field.tap-row{align-items:center;column-gap:.5rem}.setup-list>.temperature-unit-field{padding:0 .8rem .85rem}.target-list{grid-template-columns:minmax(0,1fr) 6.35rem max-content 6.35rem;gap:.45rem .2rem;min-width:0;padding:.35rem .75rem .55rem;display:grid}.panel-targets .target-row input[type=number],.panel-targets .target-row input[type=text][inputmode=decimal],.panel-targets .target-row input[type=text][inputmode=numeric]{font-variant-numeric:tabular-nums}.volume-setup-inline{grid-template-columns:minmax(0,1fr) minmax(4.25rem,max-content);align-items:center;column-gap:.35rem;min-width:0;display:grid}.volume-setup-inline>.number-input-shell{font-variant-numeric:tabular-nums}.volume-setup-inline .price-unit-select.custom-select{box-sizing:border-box;grid-column:2;justify-self:stretch;width:100%;min-width:0}.price-row,.water-price-row{grid-template-columns:minmax(0,1fr) 1rem minmax(4.25rem,6rem) 5.4rem 2.1rem;align-items:center;column-gap:.5rem}.water-price-row .price-unit-select{grid-column:4}.water-price-row .availability-toggle{grid-column:2}.tap-row{grid-template-columns:minmax(0,1fr) minmax(4.25rem,6rem) 2.75rem;align-items:center}.tap-row>.target-label{min-width:0}.tap-row>.number-input-shell{grid-column:2;min-width:0}.tap-row em{grid-column:3;justify-self:start}.price-row .price-unit-select.custom-select,.water-price-row .price-unit-select.custom-select{box-sizing:border-box;grid-column:4;justify-self:stretch;width:100%;min-width:0}.panel-prices .price-unit-select.custom-select--compact .custom-select-trigger,.volume-setup-inline .price-unit-select.custom-select--compact .custom-select-trigger{height:2.625rem}.panel-fill-tap .tap-row>.number-input-shell,.panel-prices .price-row>.number-input-shell,.panel-prices .water-price-row>.number-input-shell,.panel-targets .target-row>.number-input-shell,.setup-list>.field>.number-input-shell,.volume-setup-inline>.number-input-shell{font-variant-numeric:tabular-nums;height:2.625rem}.panel-fill-tap .tap-row .number-input-shell input[type=number],.panel-fill-tap .tap-row .number-input-shell input[type=text][inputmode=decimal],.panel-fill-tap .tap-row .number-input-shell input[type=text][inputmode=numeric],.panel-prices .number-input-shell input[type=number],.panel-prices .number-input-shell input[type=text][inputmode=decimal],.panel-prices .number-input-shell input[type=text][inputmode=numeric],.panel-targets .target-row .number-input-shell input[type=number],.panel-targets .target-row .number-input-shell input[type=text][inputmode=decimal],.panel-targets .target-row .number-input-shell input[type=text][inputmode=numeric],.setup-list>.field>.number-input-shell input[type=number],.setup-list>.field>.number-input-shell input[type=text][inputmode=decimal],.setup-list>.field>.number-input-shell input[type=text][inputmode=numeric],.volume-setup-inline>.number-input-shell input[type=number],.volume-setup-inline>.number-input-shell input[type=text][inputmode=decimal],.volume-setup-inline>.number-input-shell input[type=text][inputmode=numeric]{height:100%;padding-block:.75rem;padding-inline-end:2.35rem}.panel-fill-tap .tap-row .number-input-steppers,.panel-prices .number-input-steppers,.panel-targets .target-row .number-input-steppers,.setup-list>.field>.number-input-shell .number-input-steppers,.volume-setup-inline>.number-input-shell .number-input-steppers{width:1.65rem}.chemical-label{grid-column:1;align-items:center;gap:.35rem;min-width:0;max-width:100%;display:inline-flex;position:relative}.chemical-label>span:first-child{flex:none}.chemical-label>span:nth-child(2){overflow-wrap:anywhere;min-width:0}.chemical-label-spacer{flex:none;width:1rem;height:1rem;display:inline-flex}.availability-toggle{color:#60757b;grid-column:2;justify-self:end;align-items:center;gap:.35rem;font-size:.72rem;font-weight:800;display:flex}.availability-toggle input{accent-color:#128f86;width:1rem;height:1rem}.water-price-row.disabled>*,.price-row.disabled>:not(.chemical-label):not(.amazon-cart-link):not(.amazon-cart-spacer),.price-row.disabled .info-popover-trigger,.price-row.disabled .chemical-info-trigger,.price-row.disabled .chemical-label>span:nth-child(2){opacity:.6}.price-row.disabled .amazon-cart-link{opacity:1}.amazon-cart-link,.amazon-cart-spacer{grid-column:5;justify-content:center;justify-self:end;align-items:center;width:2.1rem;height:2.1rem;display:inline-flex}.amazon-cart-link{color:#103846;background:#fff8ec;border:1px solid #2b576524;border-radius:6px;transition:border-color .16s,box-shadow .16s,transform .16s}.amazon-cart-link:hover,.amazon-cart-link:focus-visible{border-color:#ed97228c;outline:none;transform:translateY(-1px);box-shadow:0 0 0 3px #ed972229}.amazon-cart-link svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:1.1rem;height:1.1rem}.readings-panel{background:linear-gradient(135deg,#ffffffe6,#f0f9f6d6),#fff}.reading-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));align-items:stretch;gap:.28rem;padding:.14rem .65rem .5rem;display:grid}.reading-tile{background:linear-gradient(#ffffffeb,#edf7f6e0),#fff;border:1px solid #155d671f;border-radius:8px;grid-template-rows:minmax(1.65rem,auto) 2.625rem 1.45rem;align-content:start;gap:.1rem;min-width:0;height:100%;padding:.3rem .38rem .34rem;display:grid}.reading-tile-footer{justify-content:space-between;align-items:center;gap:.18rem;min-width:0;height:1.45rem;max-height:1.45rem;display:flex;overflow:hidden}.reading-tile-footer small{white-space:nowrap;text-overflow:ellipsis;flex:1 1 0;min-width:0;margin:0;overflow:hidden}.reading-tile-footer .tile-toggle{flex-shrink:0}.reading-tile>small{white-space:nowrap;text-overflow:ellipsis;align-self:center;min-width:0;margin:0;line-height:1.1;overflow:hidden}.reading-tile>span{overflow-wrap:break-word;min-width:0;line-height:1.2}.reading-tile .target-label{min-width:0;max-width:100%}.reading-input-row{align-items:center;min-width:0;height:2.625rem;min-height:0;display:block}.reading-value-control{width:100%;min-width:0;height:2.625rem;display:block;position:relative}.reading-tile input{font-variant-numeric:tabular-nums;background:0 0;border:0;max-width:100%;padding:0;font-size:1.18rem;font-weight:900}.reading-tile .number-input-shell{align-self:center;min-width:0;height:100%;min-height:0}.reading-tile .number-input-shell input[type=number],.reading-tile .number-input-shell input[type=text][inputmode=decimal],.reading-tile .number-input-shell input[type=text][inputmode=numeric]{box-sizing:border-box;height:100%;min-height:0;padding-inline-end:4.05rem;line-height:1}.reading-tile .number-input-steppers{width:1.65rem;inset-block:1px;inset-inline-end:0}.reading-tile .number-input-step{font-size:.74rem}.reading-value-control em{z-index:3;pointer-events:none;align-items:center;display:grid;position:absolute;inset-block:0;inset-inline-end:1.85rem}.reading-tile em{color:#71858a;white-space:nowrap;font-size:.74rem;font-style:normal;font-weight:800}.reading-tile small,.current-calculated-tile small{color:#517078;font-size:.64rem;font-weight:850;line-height:1.1}.current-calculated-tile small{padding-inline-end:4.35rem}.current-calculated{grid-template-columns:repeat(auto-fit,minmax(min(100%,15.5rem),1fr));gap:.65rem;padding:0 1.1rem 1.1rem;display:grid}.current-calculated-tile{min-width:0;box-shadow:none;background:linear-gradient(#e8f4f1f2,#dcece8e0),#ffffff8c;border:1px dashed #155d6761;border-radius:8px;gap:.28rem;padding:.65rem .75rem .72rem;display:grid;position:relative}.reading-calculated-badge{z-index:1;color:#0d5c56;letter-spacing:.06em;text-transform:uppercase;background:#128f861f;border-radius:4px;width:fit-content;max-width:42%;padding:.1rem .32rem;font-size:.58rem;font-weight:900;line-height:1.2;display:block;position:absolute;inset-block-end:.48rem;inset-inline-end:.58rem}.current-calculated-label{overflow-wrap:break-word;color:#4b6870;min-width:0;font-size:.78rem;font-weight:800;line-height:1.28;display:block}.current-calculated-value{font-variant-numeric:tabular-nums;color:#2a4a52;margin-top:.05rem;font-size:1.12rem;font-weight:800;line-height:1.2;display:block}.current-diagnostic-warnings{border-top:1px solid #12515b1f;gap:.45rem;margin:0 1.1rem 1.1rem;padding-top:.8rem;display:grid}.current-diagnostic-warnings--collapsed{margin-top:0}.current-diagnostic-warnings>span{color:#4d6b72;letter-spacing:.08em;text-transform:uppercase;font-size:.73rem;font-weight:900}.current-diagnostic-warnings strong{color:#71380b;background:#fff0db;border-radius:8px;padding:.55rem .65rem;font-size:.82rem;font-weight:700;line-height:1.45;display:block}.tile-toggle{background:#ffffffdb;border:1px solid #2b57651f;border-radius:999px;flex-shrink:0;align-items:center;gap:.16rem;padding:.08rem .22rem;display:inline-flex}.tile-toggle input{accent-color:#128f86;width:.75rem;height:.75rem;padding:0}.tile-toggle b{color:#375862;font-size:.58rem;line-height:1}.tile-toggle-segmented{gap:.04rem;padding:.06rem}.tile-toggle-segment{cursor:pointer;border:1px solid #0000;border-radius:999px;align-items:center;gap:.06rem;padding:.02rem .14rem;display:inline-flex}.tile-toggle-segment input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tile-toggle-segment:has(input:checked){background:#128f8624;border-color:#128f8659}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.plan-panel{overflow:hidden}.status-pill{border-radius:999px;padding:.5rem .7rem;font-size:.78rem;font-weight:900}.status-pill.good{color:#07594d;background:#d9f6e8}.status-pill.warn{color:#7a3712;background:#ffead7}.no-action-needed{color:#31525c;margin:0;padding:.4rem 1.1rem 1.1rem;font-size:.92rem;font-weight:750;line-height:1.45}.timeline{gap:0;margin:0;padding:.4rem 1.1rem 1.1rem;list-style:none;display:grid}.timeline li{grid-template-columns:2.4rem minmax(0,1fr);gap:.8rem;padding:.75rem 0;display:grid}.step-index{color:#fff;background:#0d6d77;border-radius:8px;place-items:center;width:2.2rem;height:2.2rem;font-weight:900;display:grid}.step-body{border-bottom:1px solid #274e591a;min-width:0;padding-bottom:.8rem}.timeline li:last-child{padding-bottom:0}.timeline li:last-child .step-body{border-bottom:none;padding-bottom:0}.step-topline{flex-wrap:wrap;justify-content:space-between;gap:.25rem 1rem;display:flex}.step-topline h3{overflow-wrap:anywhere;min-width:0;font-size:1rem}.step-topline strong{white-space:nowrap;color:#0a7168}.amount-line{color:#173943;overflow-wrap:anywhere;margin-top:.18rem;font-size:1.15rem;font-weight:900}.step-body p{color:#5c747b;overflow-wrap:anywhere;margin-top:.35rem;line-height:1.5}.chemistry-changes{flex-wrap:wrap;gap:.35rem;margin-top:.6rem;display:flex}.chemistry-changes span{color:#17434d;background:#edf8f5;border:1px solid #0d6d7724;border-radius:8px;padding:.32rem .45rem;font-size:.78rem;font-weight:800}.inline-warnings,.warnings{gap:.45rem;margin-top:.7rem;display:grid}.inline-warnings span,.warnings span{color:#71380b;background:#fff0db;border-radius:8px;padding:.55rem .65rem;font-size:.82rem;font-weight:700;display:block}.target-row{grid-template-columns:subgrid;grid-column:1/-1;align-items:center;min-width:0;padding:0;display:grid}.target-row>span:first-child{overflow-wrap:break-word;min-width:0}.target-label{align-items:center;gap:.35rem;min-width:0;max-width:100%;display:inline-flex;position:relative}.target-label>span:first-child{flex:none}.target-label>span:nth-child(2){overflow-wrap:anywhere;min-width:0}.info-popover-trigger,.target-info-trigger,.chemical-info-trigger{color:#0d5c56;cursor:help;background:#128f8617;border:1px solid #128f8657;border-radius:999px;flex:none;justify-content:center;align-items:center;width:1rem;height:1rem;font-size:.65rem;font-weight:900;line-height:1;display:inline-flex}.info-popover-trigger:focus-visible,.target-info-trigger:focus-visible,.chemical-info-trigger:focus-visible{outline-offset:2px;outline:2px solid #1f9c938c}.info-popover,.target-info-popover,.chemical-info-popover{z-index:20;color:#17353d;white-space:normal;overflow-wrap:break-word;opacity:0;pointer-events:none;background:#fffdf8;border:1px solid #2b576529;border-radius:8px;width:min(22rem,100vw - 2rem);max-width:78vw;padding:.7rem .75rem;font-size:.74rem;font-weight:650;line-height:1.42;transition:opacity .13s,transform .13s;display:none;position:absolute;inset-block-end:calc(100% + .45rem);inset-inline-start:0;transform:translateY(.25rem);box-shadow:0 14px 34px #1038462e}.info-popover-close{color:#17353d6b;cursor:pointer;background:0 0;border:0;border-radius:3px;justify-content:center;align-items:center;width:.95rem;height:.95rem;margin:0;padding:0;line-height:0;display:flex;position:absolute;inset-block-start:.2rem;inset-inline-end:.2rem}.info-popover-close:hover,.info-popover-close:focus-visible{color:#17353d;background:#2b576514}.info-popover-close:focus-visible{outline-offset:1px;outline:2px solid #1f9c938c}.info-popover-close-icon{flex-shrink:0;width:.55rem;height:.55rem}.target-label:focus-within .info-popover,.chemical-label:focus-within .info-popover,.info-popover.active{opacity:1;pointer-events:auto;display:block;transform:translateY(0)}@media (hover:hover) and (pointer:fine){.info-popover:before{content:"";height:.5rem;position:absolute;inset-block-start:100%;inset-inline:0}:is(.target-label:has(.info-popover-trigger:hover) .info-popover,.target-label:has(.info-popover:hover) .info-popover,.chemical-label:has(.info-popover-trigger:hover) .info-popover,.chemical-label:has(.info-popover:hover) .info-popover){opacity:1;pointer-events:auto;display:block;transform:translateY(0)}}.target-row b{color:#819197;justify-self:center;font-size:.72rem}.projection-panel{color:#f6fffb;background:linear-gradient(145deg,#0a4d68f2,#1f7168eb),#0a4d68}.projection-panel .section-kicker{color:#96efe3}.projection-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,16.5rem),1fr));gap:.4rem;padding:.25rem 1.1rem .75rem;display:grid}.projection-grid div{background:#ffffff1a;border:1px solid #ffffff29;border-radius:8px;grid-template-columns:minmax(0,1fr) 5.75rem;align-items:center;gap:.55rem;min-width:0;min-height:3.05rem;padding:.48rem .58rem;display:grid}.projection-grid strong{text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;justify-self:end;min-width:0;font-size:1.1rem;line-height:1.1;display:block}.projection-panel .warnings{padding:0 1.1rem 1.1rem}.diagnostics{background:#ffffff1a;border:1px solid #ffffff29;border-radius:8px;margin:0 1.1rem 1rem;padding:.85rem}.projection-panel.is-collapsed .diagnostics--collapsed{margin:0 1.1rem}.projection-panel.is-collapsed .diagnostics--collapsed-balance{padding:.58rem .68rem .62rem}.projection-panel.is-collapsed .diagnostics--collapsed-balance span{letter-spacing:.02em;font-size:.72rem}.projection-panel.is-collapsed .diagnostics--collapsed-balance strong{margin-top:.16rem;font-size:.84rem;line-height:1.3}.projection-panel.is-collapsed .collapsed-summary+.diagnostics--collapsed{border-top:1px solid #ffffff29;margin-top:0;padding-top:.8rem}.projection-panel.is-collapsed .warnings--collapsed{margin:0 1.1rem}.projection-panel.is-collapsed .diagnostics--collapsed+.warnings--collapsed{margin-top:.45rem;padding-top:0}.diagnostics span{color:#f8fffcb8;font-size:.78rem;font-weight:800;display:block}.diagnostics strong{margin-top:.25rem;display:block}.diagnostics p{color:#f8fffcb8;margin-top:.45rem;font-size:.82rem;line-height:1.45}:root{--site-nav-inset:clamp(1.01rem, 2.42vw, 2.42rem);--site-nav-control-height:2.35rem;--site-nav-pad-block:.35rem;--hero-band-gradient:linear-gradient(120deg, #0a4d68f0, #1a7b74e6), #0a4d68}.app-header-nav{z-index:40;color:#f8fffc;visibility:hidden;--nav-pin-progress:0;background:0 0;border-bottom:1px solid #0000;transition:border-color .2s,box-shadow .2s;position:fixed;left:0;right:0}.app-header-nav:before{z-index:-1;content:"";background:var(--hero-band-gradient);opacity:var(--nav-pin-progress);transition:opacity .2s;position:absolute;inset:0}.app-header-nav.is-ready{visibility:visible}.app-header-nav.is-pinned{border-bottom-color:rgba(255, 255, 255, calc(var(--nav-pin-progress) * .12));box-shadow:0 4px 20px rgba(10, 77, 104, calc(var(--nav-pin-progress) * .28))}.app-header-nav-inner{padding:var(--site-nav-pad-block) var(--site-nav-inset);flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:.5rem .75rem;margin:0;transition:justify-content .2s;display:flex;position:relative}.app-header-nav.is-hero{pointer-events:none;height:0;min-height:0;overflow:visible}.app-header-nav.is-hero .app-header-nav-inner{pointer-events:auto}.app-header-nav.is-hero.has-hero-anchor .app-header-nav-inner{top:var(--nav-top,0);left:0;right:var(--site-nav-inset);box-sizing:border-box;width:auto;max-width:none;padding:0 0 0 var(--site-nav-inset);justify-content:flex-end;align-items:center;margin:0;position:fixed}@media (width<=1080px){.app-header-nav.is-hero.has-hero-anchor .app-header-nav-inner{top:var(--site-nav-inset)}}.app-header-nav.is-hero:not(.has-hero-anchor) .app-header-nav-inner{width:max-content;margin-left:auto;margin-right:var(--site-nav-inset);justify-content:flex-end;padding:0}.app-nav-brand{left:var(--site-nav-inset);color:#f8fffc;opacity:var(--nav-pin-progress);pointer-events:none;font-weight:800;text-decoration:none;transition:opacity .2s;position:absolute}.app-header-nav.is-pinned .app-nav-brand{pointer-events:auto}.app-nav-link{color:#f8fffcd6;font-size:.85rem;font-weight:600;text-decoration:none;transition:color .25s}.app-nav-link.router-link-active{color:#8bded1}.app-nav-actions{flex-shrink:0;align-items:center;gap:.35rem;margin-right:.15rem;display:inline-flex}.app-nav-icon-btn{width:var(--site-nav-control-height);height:var(--site-nav-control-height);color:#f8fffc;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff73;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:background .2s,border-color .2s,color .2s;display:inline-flex}.app-nav-icon-btn:hover{background:#ffffff38;border-color:#ffffff9e}.app-nav-icon-btn:focus-visible{outline-offset:2px;outline:2px solid #8bded1e6}.app-nav-icon-svg{width:1.15rem;height:1.15rem}.app-nav-profile{flex-shrink:1;min-width:0;margin-left:.25rem}.app-header-nav.is-hero .profile-picker-trigger{max-width:14rem}.profile-picker-icon{display:none}.profile-picker-trigger{min-height:var(--site-nav-control-height);color:#103846;max-width:min(18rem,100%);font:inherit;cursor:pointer;background:#ffffffeb;border:1px solid #ffffff8c;border-radius:8px;align-items:center;gap:.45rem;padding:0 .75rem 0 .85rem;font-weight:700;display:inline-flex;box-shadow:0 2px 10px #0000001f}.profile-picker-trigger:hover{background:#fff;border-color:#ffffffb8}.profile-picker-label{letter-spacing:.02em;text-transform:uppercase;color:#1038469e;flex-shrink:0;font-size:.72rem;font-weight:800}.profile-picker-value{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;overflow:hidden}.profile-picker-chevron{opacity:.88;flex-shrink:0;margin-left:.1rem;font-size:.95rem;line-height:1}.feedback-fab{z-index:60;color:#fff;min-height:2.5rem;font:inherit;cursor:pointer;background:#0d5c6d;border:none;border-radius:0 8px 8px 0;justify-content:center;align-items:center;gap:.4rem;padding:0 .75rem;font-size:.85rem;font-weight:700;display:inline-flex;position:fixed;bottom:1.25rem;left:0;box-shadow:0 4px 14px #0d5c6d3d}.feedback-fab-icon{flex:none;width:1.1rem;height:1.1rem;display:block}.feedback-fab:hover{background:#0a4a58}.profile-picker{position:relative}.profile-picker-menu{z-index:50;background:#fff;border:1px solid #0000001f;border-radius:.5rem;flex-direction:column;min-width:10rem;padding:.25rem;display:flex;position:absolute;top:calc(100% + .25rem);right:0;box-shadow:0 8px 24px #0000001f}.profile-picker-item{text-align:left;cursor:pointer;font:inherit;background:0 0;border:none;border-radius:.35rem;padding:.4rem .6rem}.profile-picker-item:hover{background:#0d5c6d14}.profile-manager-overlay,.import-share-overlay,.feedback-modal-overlay{z-index:100;background:#00000073;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.profile-manager-panel{background:#fff;border:1px solid #0d5c6d1f;border-radius:.95rem;width:100%;max-width:36rem;max-height:90vh;padding:0;overflow:auto;box-shadow:0 18px 48px #0a4d6838}.profile-manager-header{background:linear-gradient(120deg,#0a4d6814,#1a7b740f),#f7fbfa;border-bottom:1px solid #0d5c6d1a;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.25rem 1rem;display:flex}.profile-manager-heading{gap:.35rem;display:grid}.profile-manager-eyebrow{color:#0d5c6d;letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:800}.profile-manager-header h2{color:#103846;margin:0;font-size:1.35rem;line-height:1.15}.profile-manager-lead{color:#4b6870;max-width:30rem;margin:0;font-size:.86rem;line-height:1.5}.profile-manager-close{color:#103846;cursor:pointer;background:#0d5c6d1a;border:none;border-radius:8px;flex-shrink:0;width:2.35rem;height:2.35rem;font-size:1.35rem;line-height:1}.profile-manager-close:hover{background:#0d5c6d29}.profile-manager-error{color:#b42318;margin:0;padding:.75rem 1.25rem 0;font-size:.85rem;font-weight:600}.profile-manager-list{flex-direction:column;gap:.85rem;margin:0;padding:1rem 1.25rem;list-style:none;display:flex}.profile-manager-card{background:#fff;border:1px solid #0d5c6d1f;border-radius:.75rem;gap:.75rem;padding:.95rem;display:grid;box-shadow:0 2px 10px #0a4d680d}.profile-manager-card.is-active{background:linear-gradient(#e4f5f1a6,#fff 42%);border-color:#0d5c6d57;box-shadow:0 4px 16px #0d5c6d1a}.profile-manager-card-top{flex-wrap:wrap;gap:.4rem;min-height:1.35rem;display:flex}.profile-manager-badge{color:#0d5c6d;letter-spacing:.03em;text-transform:uppercase;background:#0d5c6d1f;border-radius:999px;align-items:center;padding:.18rem .55rem;font-size:.68rem;font-weight:800;display:inline-flex}.profile-manager-badge--saved{color:#2e7d32;background:#2e7d321f}.profile-manager-field{gap:.35rem;display:grid}.profile-manager-field span{color:#4b6870;font-size:.76rem;font-weight:800}.profile-manager-field input{color:#103846;width:100%;min-height:2.5rem;font:inherit;box-sizing:border-box;background:#fff;border:1px solid #0d5c6d2e;border-radius:8px;padding:.55rem .75rem;font-weight:700}.profile-manager-field input:focus{border-color:#0d5c6d6b;outline:2px solid #0d5c6d3d}.profile-manager-field input[aria-invalid=true]{border-color:#b42318}.profile-manager-field-error{color:#b42318;font-size:.78rem;font-weight:600}.profile-manager-actions{flex-wrap:wrap;gap:.5rem;display:flex}.profile-manager-btn{min-height:2.2rem;font:inherit;cursor:pointer;border:none;border-radius:8px;padding:0 .85rem;font-size:.82rem;font-weight:800}.profile-manager-btn:disabled{opacity:.45;cursor:not-allowed}.profile-manager-btn--primary{color:#fff;background:#0d5c6d}.profile-manager-btn--primary:hover:not(:disabled){background:#0a4a58}.profile-manager-btn--secondary{color:#103846;background:#e4f5f1}.profile-manager-btn--secondary:hover:not(:disabled){background:#d3eee8}.profile-manager-btn--danger{color:#9b1c1c;background:#9b1c1c14}.profile-manager-btn--danger:hover:not(:disabled){background:#9b1c1c24}.profile-manager-btn--danger-solid{color:#fff;background:#9b1c1c}.profile-manager-btn--danger-solid:hover:not(:disabled){background:#7f1616}.confirm-dialog-overlay{z-index:110;background:#1038468c;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.confirm-dialog-panel{background:#fff;border:1px solid #9b1c1c2e;border-radius:.85rem;width:100%;max-width:22rem;padding:1.25rem;box-shadow:0 16px 40px #0a4d683d}.confirm-dialog-title{color:#103846;margin:0 0 .55rem;font-size:1.1rem;line-height:1.25}.confirm-dialog-message{color:#4b6870;margin:0 0 1.15rem;font-size:.88rem;line-height:1.5}.confirm-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.profile-manager-footer{background:#fafcfc;border-top:1px solid #0d5c6d14;justify-content:flex-end;padding:.85rem 1.25rem 1.25rem;display:flex}.import-share-panel,.feedback-modal-panel{background:#fff;border-radius:.75rem;width:100%;max-width:28rem;max-height:90vh;padding:1.25rem;overflow:auto;box-shadow:0 12px 40px #0003}.feedback-modal-panel{max-width:32rem}.import-share-actions{justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.import-share-privacy{color:#60757b;font-size:.8rem}.feedback-modal-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}@media (width>=1081px){.app-shell{min-height:unset}.workspace{flex:0 auto}.workspace-shell{align-items:flex-start}.site-footer-inner{text-align:left;padding:0}.workspace-shell>.site-footer{pointer-events:auto;width:auto;max-width:26.5rem;position:absolute;inset-block-end:0;inset-inline-start:0}}@media (width<=1280px){.target-list{grid-template-columns:minmax(0,1fr) max-content minmax(0,1fr);row-gap:.65rem}.target-row{grid-template-columns:subgrid;row-gap:.25rem}.target-row>span:first-child{grid-column:1/-1}.target-row>.number-input-shell{width:100%}.price-row,.water-price-row{grid-template-columns:max-content minmax(0,1fr) 4.9rem max-content;gap:.42rem .35rem}.price-row>.chemical-label,.water-price-row>.chemical-label{grid-area:1/1/auto/-1}.price-row>.availability-toggle,.water-price-row>.availability-toggle{grid-area:2/1;justify-self:start}.price-row>.number-input-shell,.water-price-row>.number-input-shell{grid-area:2/2}.price-row .price-unit-select.custom-select,.water-price-row .price-unit-select.custom-select{grid-area:2/3}.price-row .amazon-cart-link,.price-row .amazon-cart-spacer,.water-price-row .amazon-cart-spacer{grid-area:2/4}}@container panel-prices (width<=30rem){.price-row,.water-price-row{grid-template-columns:max-content minmax(0,1fr) 4.9rem max-content;gap:.42rem .35rem}.price-row>.chemical-label,.water-price-row>.chemical-label{grid-area:1/1/auto/-1}.price-row>.availability-toggle,.water-price-row>.availability-toggle{grid-area:2/1;justify-self:start}.price-row>.number-input-shell,.water-price-row>.number-input-shell{grid-area:2/2}.price-row .price-unit-select.custom-select,.water-price-row .price-unit-select.custom-select{grid-area:2/3}.price-row .amazon-cart-link,.price-row .amazon-cart-spacer,.water-price-row .amazon-cart-spacer{grid-area:2/4}}@media (width<=1400px) and (width>=1081px){.workspace-col--left{flex:0 21rem;width:auto;min-width:17.5rem;max-width:21rem}.workspace-col--right{flex:0 25.5rem;width:auto;min-width:20.5rem;max-width:25.5rem}.center-stack{flex:1 1 0;min-width:0}}@media (width<=1280px) and (width>=1081px){.workspace-col--left{flex:0 17.5rem;width:auto;min-width:15.75rem;max-width:17.5rem}.workspace-col--right{flex:0 20.5rem;width:auto;min-width:18.5rem;max-width:20.5rem}.workspace-col--left .panel-heading,.workspace-col--right .panel-heading{padding-inline:.85rem}.workspace-col--left .setup-list>.field,.workspace-col--left .tap-list .field,.workspace-col--left .setup-list>.temperature-unit-field,.workspace-col--left .tap-panel-intro{padding-inline:.65rem}.workspace-col--left .volume-setup-inline{grid-template-columns:minmax(0,1fr) minmax(3.65rem,max-content)}.workspace-col--right .price-list,.workspace-col--right .target-list{padding-inline:.5rem}}@media (width<=1180px){h1{font-size:3.85rem}.hero-metrics strong,.projection-grid strong{font-size:1.3rem}.reading-tile input{font-size:1.18rem}}@media (width<=1180px) and (width>=1081px){.workspace-col--left{flex:0 16.25rem;width:auto;min-width:15rem;max-width:16.25rem}.workspace-col--right{flex:0 19.25rem;width:auto;min-width:17.75rem;max-width:19.25rem}}@media (width<=1080px){.hero-band{grid-template-rows:auto auto;grid-template-columns:1fr}.hero-band-toolbar{display:none}.hero-content{grid-area:1/1}h1{font-size:3.2rem}.workspace-shell{flex-direction:column;display:flex}.workspace-shell>.site-footer{order:6}.workspace-col--left,.workspace-col--right{display:contents}.workspace-col-spacer{display:none}.volume-panel{order:1}.panel-targets{order:2}.panel-prices{order:3}.panel-fill-tap{order:4}.center-stack{order:5}.hero-metrics,.current-calculated{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-metrics{grid-area:2/1}.reading-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,10.75rem),1fr));gap:.32rem;padding:.08rem .5rem .42rem}.reading-tile{gap:.08rem;padding:.28rem .34rem .3rem}.reading-tile input{font-size:1.2rem}}@media (width<=640px){.app-nav-profile{flex:none;margin-left:0}.profile-picker-trigger{width:var(--site-nav-control-height);height:var(--site-nav-control-height);color:#f8fffc;max-width:none;min-height:0;box-shadow:none;background:#ffffff1f;border-color:#ffffff73;justify-content:center;gap:0;padding:0}.profile-picker-trigger:hover{background:#ffffff38;border-color:#ffffff9e}.profile-picker-icon{display:block}.profile-picker-label,.profile-picker-value,.profile-picker-chevron{display:none}}@media (width<=520px){:root{--site-nav-inset:.85rem;--site-nav-control-height:2.25rem;--site-nav-pad-block:.3rem}.hero-band{padding:.85rem}.app-header-nav-inner{gap:.35rem}.app-header-nav:not(.is-hero) .app-nav-brand{opacity:0;pointer-events:none}.app-nav-actions{gap:.25rem;margin-right:0}h1{font-size:2rem}.hero-content p{font-size:.88rem}.hero-content .eyebrow{font-size:.64rem}.hero-metrics strong,.projection-grid strong{font-size:1.18rem}.workspace{padding:.7rem}.hero-metrics,.current-calculated,.projection-grid{grid-template-columns:1fr}.reading-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.28rem;padding:.08rem .5rem .5rem}.reading-tile{gap:.06rem;padding:.24rem .3rem .28rem}.reading-tile input{font-size:1.08rem}.hero-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-metrics div:last-child{grid-column:1/-1}.projection-grid div{grid-template-columns:minmax(0,1fr) 5.75rem}}@media (width<=379px){.reading-grid{grid-template-columns:1fr}}@media (width<=1080px){.feedback-fab{border-radius:8px 0 0 8px;justify-content:center;align-items:center;gap:.4rem;min-width:0;min-height:2.5rem;padding:0 .7rem;font-size:.78rem;display:inline-flex;left:auto;right:0;box-shadow:0 4px 14px #0d5c6d3d;bottom:max(.85rem, calc(.5rem + env(safe-area-inset-bottom)))!important}.feedback-fab-icon{display:block}}@media (width<=420px){.feedback-fab{width:2.5rem;padding:0}.feedback-fab-label{display:none}}@media (width<=440px){.panel-heading{padding:.95rem .85rem .55rem}.collapsible-panel-heading{gap:.65rem}.panel-heading-actions{gap:.32rem}.collapsed-summary{padding-inline:.85rem}.collapsed-panel-body{padding-bottom:.85rem}.current-diagnostic-warnings--collapsed,.projection-panel.is-collapsed .diagnostics--collapsed,.projection-panel.is-collapsed .warnings--collapsed{margin-inline:.85rem}.price-list,.setup-list{padding-inline:.25rem}.target-list{padding-inline:.85rem}}.target-row-warning{background:#ffc10714;border:1px solid #ffc10740;border-radius:.5rem;flex-direction:column;grid-column:1/-1;gap:.5rem;margin-top:.15rem;padding:.65rem .75rem;display:flex}.warning-chip{flex-wrap:wrap;align-items:flex-start;gap:.35rem .5rem;font-size:.8rem;line-height:1.35;display:flex}.warning-chip-icon{flex-shrink:0;font-weight:700}.warning-chip-body{flex-direction:column;flex:12rem;gap:.12rem;display:flex}.warning-chip-message{margin:0}.warning-chip-sources{color:#5a6a72;margin:0;font-size:.72rem}.warning-chip-sources a{color:inherit;text-decoration:underline}.warning-chip-fix{flex-shrink:0;font-size:.75rem}.warning-chip--info{color:#4a6270}.warning-chip--warn{color:#8a5a00}.warning-chip--warn .warning-chip-icon{color:#b8860b}.warning-chip--danger{color:#8b2e2e}.warning-chip--danger .warning-chip-icon{color:#c62828}.print-only,.print-plan-sheet{display:none}@media print{@page{size:letter portrait;margin:.3in .36in}html,body{color:#000;-webkit-print-color-adjust:economy;print-color-adjust:economy;background:#fff;width:100%;height:auto;margin:0;padding:0}.no-print,.print-hide,.site-footer,.feedback-fab,.app-header-nav,.import-share-overlay{display:none!important}.print-plan-sheet{color:#000;-webkit-print-color-adjust:economy;print-color-adjust:economy;page-break-inside:avoid;break-inside:avoid;flex-direction:column;gap:.26rem;width:100%;max-width:none;font-family:Segoe UI,system-ui,sans-serif;font-size:7.8pt;line-height:1.2;display:flex!important}.print-sheet-header{border-bottom:1.35pt solid #111;grid-template-columns:minmax(0,1fr) 2.75in;align-items:end;gap:.35rem;padding-bottom:.18rem;display:grid}.print-sheet-header h1{letter-spacing:-.01em;margin:0;font-size:12.5pt;line-height:1.08}.print-sheet-meta{color:#333;margin:.1rem 0 0;font-size:7.3pt}.print-sheet-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:.12rem;display:grid}.print-sheet-summary span{text-transform:uppercase;letter-spacing:.03em;color:#444;font-size:6.3pt;font-weight:700;display:block}.print-sheet-summary strong{font-variant-numeric:tabular-nums;margin-top:.03rem;font-size:9pt;display:block}.print-context-grid{border-bottom:.7pt solid #bbb;grid-template-columns:1.2fr .8fr;gap:.45rem;padding-bottom:.2rem;display:grid}.print-context-grid h2,.print-chemistry-section h2,.print-sheet-plan h2{text-transform:uppercase;letter-spacing:.04em;color:#000;margin:0 0 .14rem;font-size:7.6pt;font-weight:800}.print-fact-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.08rem .28rem;margin:0;display:grid}.print-fact-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))}.print-fact-grid div{min-width:0}.print-fact-grid dt{color:#333;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:6.4pt;font-weight:600;overflow:hidden}.print-fact-grid dd{font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:7.2pt;font-weight:800;overflow:hidden}.print-chemistry-section{border-bottom:.7pt solid #bbb;padding-bottom:.18rem}.print-chemistry-table{border-collapse:collapse;table-layout:fixed;width:100%}.print-chemistry-table th,.print-chemistry-table td{text-overflow:ellipsis;white-space:nowrap;border-bottom:.35pt solid #e1e1e1;padding:.055rem .16rem;font-size:7pt;line-height:1.14;overflow:hidden}.print-chemistry-table thead th{color:#333;text-align:right;text-transform:uppercase;letter-spacing:.03em;border-bottom:.65pt solid #999;font-size:6.35pt;font-weight:800}.print-chemistry-table th:first-child,.print-chemistry-table td:first-child{text-align:left;width:34%}.print-chemistry-table tbody th{color:#222;font-weight:700}.print-chemistry-table tbody td{text-align:right;font-variant-numeric:tabular-nums}.print-sheet-lsi{color:#333;white-space:nowrap;text-overflow:ellipsis;margin:.12rem 0 0;font-size:6.7pt;overflow:hidden}.print-sheet-plan{flex:auto;min-height:0}.print-sheet-empty{margin:0;font-size:7.4pt;font-weight:600}.print-plan-steps{columns:2 3.35in;column-gap:.42rem;margin:0;padding:0;list-style:none}.print-plan-steps li{break-inside:avoid;page-break-inside:avoid;border-bottom:.5pt solid #ddd;width:100%;padding:.16rem 0;display:inline-block}.print-plan-steps li:last-child{border-bottom:none}.print-step-heading{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:.25rem;display:grid}.print-step-index{color:#000;border:.8pt solid #000;border-radius:2pt;justify-content:center;align-items:center;width:.95rem;height:.95rem;font-size:6.8pt;font-weight:800;line-height:1;display:inline-flex}.print-step-title{min-width:0}.print-step-title strong{font-size:7.4pt;line-height:1.2;display:block}.print-step-amount{margin-top:.03rem;font-size:7pt;font-weight:800;display:block}.print-step-cost{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:7.4pt;font-weight:800}.print-step-rationale{color:#333;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:.08rem 0 0 1.2rem;font-size:6.7pt;line-height:1.22;display:-webkit-box;overflow:hidden}.print-step-tags,.print-step-warnings{flex-wrap:wrap;gap:.1rem;margin:.08rem 0 0 1.2rem;display:flex}.print-step-tags span,.print-step-warnings span{border:.5pt solid #999;padding:.035rem .16rem;font-size:6.15pt;font-weight:700;line-height:1.2}.print-step-warnings span{background:0 0;border-color:#000}.print-sheet-warnings{color:#000;margin:.18rem 0 0;padding-left:1rem;font-size:6.7pt;font-weight:700}.print-sheet-footer{text-align:center;color:#555;border-top:.75pt solid #bbb;margin-top:auto;padding-top:.12rem;font-size:6.5pt}}.toast-host{z-index:70;pointer-events:none;justify-content:center;width:min(24rem,100vw - 2rem);display:flex;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%)}.toast{color:#e8f5e9;text-align:center;background:#1b3a2f;border-radius:999px;margin:0;padding:.65rem 1.15rem;font-size:.85rem;font-weight:600;line-height:1.35;box-shadow:0 6px 24px #00000038}.toast-enter-active,.toast-leave-active{transition:opacity .28s,transform .28s}.toast-enter-from,.toast-leave-to{opacity:0;transform:translateY(.65rem)}.toast-enter-to,.toast-leave-from{opacity:1;transform:translateY(0)}
