@font-face{font-family:STIX Two Text;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/stix-two-text-latin-400-normal-Dm29J5Fl.woff2)format("woff2"),url(/assets/stix-two-text-latin-400-normal-rLRKR-Xb.woff)format("woff")}@font-face{font-family:STIX Two Text;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/stix-two-text-latin-500-normal-QKEzPprE.woff2)format("woff2"),url(/assets/stix-two-text-latin-500-normal-BPyQuOGJ.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}:root{--bg:#edf2f5;--panel:#f9fbfc;--ink:#263c49;--guide:#aabcc6;--accent:#577c91;color:var(--ink);background:var(--bg);font-synthesis:none;font-family:IBM Plex Sans,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit;color:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:1px solid var(--accent);white-space:nowrap;background:0 0;border-radius:3px;padding:10px 16px;font-size:14px;font-weight:500}button:hover{background:var(--panel)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--ink);color:var(--panel);border-color:var(--ink)}button.primary:hover{background:var(--ink);text-underline-offset:3px;text-decoration:underline}button.quiet{border-color:#0000}a{color:var(--ink);text-underline-offset:4px}input,select{background:var(--panel);border:1px solid var(--accent);border-radius:2px;width:100%;min-width:0;padding:8px 10px;font-size:15px}input:focus,select:focus,button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--ink);outline-offset:3px}input[aria-invalid=true]{border-style:dashed;border-width:2px}h1,h2,p{margin:0}h1,h2{font-family:STIX Two Text,Georgia,serif;font-weight:400}h1{letter-spacing:-1px;font-size:46px;line-height:1.1}h2{font-size:26px;line-height:1.2}p{line-height:1.55}small,.fine{font-size:13px;line-height:1.5}.eyebrow{letter-spacing:1px;margin-bottom:12px;font-family:IBM Plex Mono,monospace;font-size:11px}label,label>span{display:block}input[type=date]{font-size:13px}main{max-width:1320px;margin:auto;padding:0 40px}.site-header{border-bottom:1px solid var(--guide);justify-content:space-between;align-items:center;gap:20px;height:86px;padding:0 40px;display:flex}.brand{align-items:center;gap:12px;font:26px STIX Two Text,serif;text-decoration:none;display:flex}.brand img{width:40px;height:40px}.site-header nav{align-items:center;gap:14px;display:flex}.counter{border-left:1px solid var(--guide);margin-left:10px;padding-left:9px;font-family:IBM Plex Mono;font-size:12px}.workspace-heading{justify-content:space-between;align-items:center;gap:32px;padding:35px 0 27px;display:flex}.workspace-heading p:not(.eyebrow){margin-top:10px;font-size:16px}.budget{flex-shrink:0;width:244px;font-size:14px}.budget>span{float:right;font:12px IBM Plex Mono;display:inline}.budget>div{border-bottom:2px solid var(--ink);align-items:center;margin-top:7px;display:flex}.budget b{font:28px STIX Two Text}.budget input{background:0 0;border:0;width:100%;padding:6px 8px;font:30px IBM Plex Mono}.assumptions{background:var(--panel);border:1px solid var(--guide);align-items:center;gap:12px;padding:13px 16px;font-size:13px;display:flex}.assumptions p{flex:1}.assumptions a{white-space:nowrap;font-size:12px}.marker{border:1px solid var(--accent);text-align:center;border-radius:50%;flex-shrink:0;width:20px;height:20px;font-family:serif}.section-bar{justify-content:space-between;align-items:center;gap:16px;padding:27px 0 15px;display:flex}.section-bar h2{align-items:center;gap:15px;font:13px IBM Plex Mono;display:flex}.section-bar h2 span{font:24px STIX Two Text}.action-group{gap:8px;display:flex}.comparison{border-collapse:collapse;table-layout:fixed;width:100%}.comparison th:first-child{width:25%}.comparison th{text-align:left;font-weight:400}.comparison td,.comparison th{border-bottom:1px solid var(--guide);padding:7px 16px}.comparison thead th{background:var(--ink);color:var(--panel);padding:14px 16px}.comparison thead th:first-child{font-size:14px}.comparison small{margin-top:3px;font-size:11px;line-height:1.4;display:block}.comparison th small{max-width:225px}.comparison tbody th{padding-left:0;font-size:14px}.scenario-heading{align-items:center;gap:7px;display:flex}.scenario-heading input{color:var(--panel);background:0 0;border-color:#0000;padding:3px;font-family:STIX Two Text;font-size:20px}.scenario-heading input:hover{border-color:var(--guide)}.scenario-letter{opacity:.85;font:11px IBM Plex Mono}.copy{color:var(--panel);border-color:var(--guide);padding:4px 6px;font-size:11px}.copy:hover{color:var(--ink)}.input-cell{align-items:center;gap:10px;display:flex}.input-cell input{font-family:IBM Plex Mono;font-size:14px}.comparison select{font-size:13px}.comparison .group-start td,.comparison .group-start th{border-top:2px solid var(--accent);padding-top:11px}.comparison .result-row{background:var(--panel)}.comparison .result-row th{padding-left:16px}.result-row strong{overflow-wrap:anywhere;font:30px STIX Two Text}.comparison .result-row td,.comparison .result-row th{padding-top:14px;padding-bottom:14px}.capacity-row b{overflow-wrap:anywhere;font:16px IBM Plex Mono}.capacity-row td,.capacity-row th{padding-top:13px;padding-bottom:13px}.workspace-note{justify-content:space-between;gap:16px;margin-top:10px;font-size:11px;display:flex}.notice{min-height:24px;padding-top:8px;font-size:13px}.error{font-weight:500;font-size:12px!important}.error:before{content:"! ";font-weight:700}.mobile-tabs{display:none}.chart-section{margin-top:8px}.axis-control{align-items:center;gap:12px;font-size:13px;display:flex}.axis-control select{width:auto;font-size:13px}.chart-legend{border-top:1px solid var(--guide);flex-wrap:wrap;gap:25px;padding:19px 0 8px;font-size:13px;display:flex}.chart-legend>span{align-items:center;gap:8px;display:flex}.line-key{border-top:2px solid var(--ink);width:30px;height:0}.line-1{border-top-style:dashed;border-color:var(--accent)}.line-2{border-top-style:dotted}.chart{background:var(--panel);padding:16px 18px 8px}.chart svg{width:100%;display:block}.chart svg text{fill:var(--ink);font:12px IBM Plex Mono}.grid-line{fill:none;stroke:var(--guide);stroke-width:.65px}.curve{fill:none;stroke:var(--ink);stroke-width:2.5px}.curve-1{stroke:var(--accent)}.chart-foot{border-bottom:1px solid var(--guide);justify-content:space-between;gap:20px;padding:12px 0 28px;font-size:12px;display:flex}.chart-foot details{min-width:170px;max-width:70%}summary{cursor:pointer;text-underline-offset:4px;text-decoration:underline}.chart-foot table{border-collapse:collapse;background:var(--panel);margin-top:12px;font-size:12px}.chart-foot td,.chart-foot th{border:1px solid var(--guide);padding:8px}.data-scroll{overflow:auto}.chart-empty{border:1px dashed var(--accent);padding:50px 25px}.lower-grid{grid-template-columns:1fr 1.2fr;gap:75px;padding:40px 0;display:grid}.lower-grid h2{margin-bottom:15px}.lower-grid p:not(.eyebrow){margin:12px 0;font-size:14px}.formula{border-left:2px solid var(--accent);padding:9px 15px;font:13px/1.8 IBM Plex Mono}.source-row{grid-template-columns:1fr 140px;gap:12px;margin:16px 0;font-size:12px;display:grid}.source-row span{margin-bottom:5px}.source-row input{font-size:13px}.next-step{border-top:1px solid var(--guide);border-bottom:1px solid var(--guide);justify-content:space-between;align-items:center;gap:25px;padding:30px 0;display:flex}.next-step p:not(.eyebrow){margin-top:10px;font-size:14px}footer{justify-content:space-between;align-items:center;gap:25px;padding:30px 40px;font-size:12px;display:flex}footer a{white-space:nowrap}.footer-note{opacity:.8}dialog{background:var(--panel);color:var(--ink);border:1px solid var(--accent);border-radius:4px;width:min(590px,100% - 32px);max-height:85vh;padding:0}dialog::backdrop{background:#263c4959}.dialog-content{padding:36px;position:relative}.dialog-content h2{margin-bottom:17px;font-size:32px}.dialog-content p{margin:15px 0;font-size:15px}.dialog-content label{margin:20px 0;font-size:14px}.dialog-content label input,.dialog-content label select{margin-top:8px}.dialog-close{border:0;padding:5px 8px;font-size:23px;line-height:1;position:absolute;top:8px;right:10px}.export-options{gap:12px;margin:25px 0;display:flex}.version{border-bottom:1px solid var(--guide);align-items:center;gap:8px;padding:15px 0;display:flex}.version>div{overflow-wrap:anywhere;flex:1;min-width:0}.version small{font-size:11px;display:block}.version button{padding:7px 9px;font-size:12px}.versions{max-height:45vh;overflow:auto}.sr-only{clip:rect(0,0,0,0);width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.intro{background:var(--bg);z-index:20;flex-direction:column;padding:30px 45px;display:flex;position:fixed;inset:0;overflow:auto}.intro-top{letter-spacing:1px;justify-content:space-between;align-items:center;font:11px IBM Plex Mono;display:flex}.intro-top button{letter-spacing:0;font-family:IBM Plex Sans}.intro-scene{flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:260px;display:flex;position:relative}.abacus{width:300px;max-height:40vh;color:var(--ink)}.rod-labels{justify-content:space-between;width:220px;margin:12px 0 0;font:11px IBM Plex Mono;display:flex}.intro-caption{text-align:center;min-height:180px;padding:20px 0 35px}.intro-caption h1{font-size:40px}.intro-caption p{margin-top:12px;font-size:15px}.intro-progress{background:var(--guide);width:100%;height:2px}.intro-progress i{background:var(--ink);height:2px;animation:10.5s linear forwards progress;display:block}.beads-0{animation:10.5s ease-in-out forwards slideA}.beads-1{animation:10.5s ease-in-out forwards slideB}.beads-2{animation:10.5s ease-in-out .5s forwards slideA}.intro-comparison{width:min(440px,100%);margin-top:8px;display:none}.phase-2 .intro-comparison,.phase-3 .intro-comparison{display:block}.phase-2 .abacus,.phase-3 .abacus{width:200px;max-height:24vh;transition:width .7s}.intro-comparison>div{align-items:center;gap:10px;height:25px;font:12px IBM Plex Mono;display:flex}.intro-comparison span{flex-shrink:0;width:85px}.intro-comparison i{background:var(--accent);height:8px;animation:.6s ease-out bar}.intro-comparison b{font-weight:400}.intro-comparison small{text-align:center;margin-top:10px;font-size:10px;display:block}.phase-3 .intro-caption h1{font-size:48px}@keyframes progress{0%{width:0}to{width:100%}}@keyframes slideA{0%,14%{transform:translateY(8px)}30%,to{transform:translateY(0)}}@keyframes slideB{0%,27%{transform:translateY(0)}46%,to{transform:translateY(-10px)}}@keyframes bar{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@media (width>=1600px){main{max-width:1420px}.site-header,footer{padding-left:calc(50vw - 670px);padding-right:calc(50vw - 670px)}}@media (width<=1000px){main,.site-header{padding:0 24px}.comparison td,.comparison th{padding-left:9px;padding-right:9px}.scenario-heading{gap:3px}.scenario-heading input{font-size:17px}.copy{font-size:10px}.lower-grid{gap:35px}.source-row{grid-template-columns:1fr}.source-row input[type=date]{max-width:180px}h1{font-size:40px}.workspace-heading{gap:20px}.footer-note{display:none}}@media (width<=700px){main{padding:0 18px}.site-header{flex-wrap:wrap;gap:10px;height:auto;min-height:80px;padding:15px 18px}.brand{font-size:23px}.brand img{width:32px;height:32px}.site-header nav{justify-content:space-between;gap:5px;width:100%}.site-header button{padding:7px 10px;font-size:12px}.workspace-heading{padding:25px 0 20px;display:block}h1{letter-spacing:-.5px;font-size:36px}.eyebrow{font-size:10px}.workspace-heading p:not(.eyebrow){font-size:14px}.budget{width:100%;margin-top:22px;display:block}.budget>div{margin-top:2px}.budget input{font-size:28px}.assumptions{flex-wrap:wrap;align-items:flex-start;padding:12px;font-size:12px}.assumptions a{margin-left:32px}.section-bar{flex-wrap:wrap;align-items:flex-start;padding-top:23px}.section-bar h2 span{font-size:23px}.action-group{justify-content:space-between;width:100%}.action-group button{flex:1}.mobile-tabs{gap:6px;margin:3px 0 12px;display:flex}.mobile-tabs button{text-overflow:ellipsis;flex:1;min-width:0;padding:9px 7px;font-size:12px;overflow:hidden}.mobile-tabs button[aria-selected=true]{background:var(--ink);color:var(--panel)}.comparison .scenario{display:none}.comparison.active-0 .s0,.comparison.active-1 .s1,.comparison.active-2 .s2{display:table-cell}.comparison th:first-child{width:43%}.comparison tbody th{font-size:12px}.comparison small{font-size:10px}.comparison thead th:first-child{font-size:12px}.comparison thead th{padding:11px 8px}.scenario-heading input{font-size:17px}.scenario-letter{display:none}.copy{font-size:10px}.input-cell input{font-size:15px}.comparison td{padding:7px 8px}.result-row strong{font-size:28px}.capacity-row b{font-size:15px}.workspace-note{line-height:1.5;display:block}.workspace-note span{display:block}.chart-legend{gap:10px;font-size:11px}.line-key{width:19px}.chart{padding:12px 0}.chart svg{min-height:180px}.chart-foot{display:block}.chart-foot details{max-width:100%;margin-top:14px}.chart svg text{font-size:15px}.lower-grid{grid-template-columns:1fr;gap:25px;padding:32px 0}.source-row{grid-template-columns:1fr 120px}.next-step{display:block}.next-step h2{font-size:25px}.next-step button{margin-top:20px}footer{flex-wrap:wrap;gap:15px;padding:25px 18px;font-size:11px}footer>span:last-child{width:100%}.dialog-content{padding:30px 22px}.dialog-content h2{font-size:28px}.dialog-content p{font-size:14px}.intro{padding:20px}.intro-top{gap:15px;font-size:9px}.intro-top button{font-size:12px}.intro-scene{min-height:270px}.intro-caption{min-height:190px;padding:20px 0}.intro-caption h1{font-size:30px}.intro-caption p{font-size:13px}.phase-3 .intro-caption h1{font-size:38px}.abacus{width:260px}.rod-labels{width:200px}.intro-comparison>div{font-size:10px}.intro-comparison span{width:66px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.intro-progress i{width:100%}}.intro-comparison>div{grid-template-columns:85px 1fr 80px;display:grid}.intro-comparison i{min-width:0}.intro-comparison b{grid-column:3}.intro-comparison span{width:auto}@media (width<=700px){.assumptions p{flex:calc(100% - 40px)}.assumptions a{margin-left:32px}.chart svg text{font-size:12px}.chart svg{min-height:240px}.intro-comparison>div{grid-template-columns:65px 1fr 65px}}
