@font-face{font-family:ReportRoboto;src:local('Roboto')}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;color:#1d2e39;background:#f5f7f8;font-family:Inter,ReportRoboto,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px;line-height:1.55}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:#087b6b;text-underline-offset:3px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.58}svg{display:block;flex-shrink:0}h1,h2,h3,p{margin-top:0}h1{font-size:31px;line-height:1.2;letter-spacing:-.8px;font-weight:650;margin-bottom:12px}h2{font-size:21px;line-height:1.3;letter-spacing:-.3px;font-weight:650;margin-bottom:9px}h3{font-size:16px;line-height:1.4;font-weight:650;margin-bottom:8px}p{margin-bottom:12px}code{font-family:"SFMono-Regular",Consolas,monospace;font-size:.88em;background:#edf2f3;padding:2px 5px;border-radius:4px;overflow-wrap:anywhere}.muted{color:#657580}.small{font-size:12px}.eyebrow{font-size:11px;letter-spacing:1.8px;text-transform:uppercase;font-weight:650;color:#648181;margin-bottom:9px}.sidebar{position:fixed;inset:0 auto 0 0;width:286px;background:#152c3b;color:#d2dce2;display:flex;flex-direction:column;z-index:40}.brand{padding:27px 22px 23px;border-bottom:1px solid #ffffff12;display:flex;gap:12px;align-items:center}.brand-mark{width:42px;height:42px;border:1px solid #88d8c844;border-radius:12px;color:#83d3c1;display:grid;place-items:center;background:#ffffff05}.brand-name{font-size:19px;line-height:1.2;color:#fff;font-weight:650;letter-spacing:-.5px}.brand-subtitle{font-size:12px;color:#93a8b6;margin-top:4px}.chapter-nav{padding:16px 12px;overflow:auto;flex:1}.nav-group{font-size:10px;text-transform:uppercase;letter-spacing:1.7px;color:#8da5b4;padding:17px 13px 7px}.nav-link{display:flex;gap:12px;align-items:center;position:relative;color:#c3d2dc;text-decoration:none;padding:11px 12px;border-radius:7px;line-height:1.35;margin:2px 0;min-height:50px;font-size:12.5px}.nav-link:hover{background:#ffffff09;color:white}.nav-link.active{background:#294756;color:#fff}.nav-link.active:before{position:absolute;content:"";width:3px;height:24px;background:#7fd2bf;left:0;top:50%;transform:translateY(-50%);border-radius:3px}.nav-number{color:#93aebd;min-width:22px;font-variant-numeric:tabular-nums;font-size:12px}.nav-link.active .nav-number{color:#91e0cf}.nav-text{flex:1}.nav-count{font-size:10px;color:#a6bec8;white-space:nowrap}.nav-complete{color:#7fd2bf}.sidebar-footer{padding:16px 20px 18px;background:#112735;border-top:1px solid #ffffff12}.save-line{font-size:11px;color:#b2c9d3;display:flex;align-items:center;gap:7px}.save-dot{width:6px;height:6px;background:#7fd2bf;border-radius:50%}.save-line.failed .save-dot{background:#f2ad74}.data-tools{display:flex;gap:7px;margin-top:11px}.data-tools .icon-button{width:35px;height:35px;min-width:35px;color:#d4e3e9;border-color:#ffffff1c;background:transparent}.data-tools .icon-button:hover{background:#ffffff0c}.workspace{margin-left:286px;min-height:100vh}.toolbar{position:sticky;top:0;z-index:25;height:68px;padding:0 36px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #e0e7eb;background:#fafcfcf5;backdrop-filter:blur(10px)}.toolbar-context{display:flex;gap:13px;align-items:center;min-width:0}.toolbar-chapter{font-size:12px;font-weight:650;letter-spacing:1.6px;color:#6d858f;white-space:nowrap}.toolbar-title{font-size:13px;color:#5e717b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:550px}.toolbar-actions{display:flex;align-items:center;gap:7px}.icon-button{width:42px;height:42px;min-width:42px;padding:0;display:inline-grid;place-items:center;line-height:1;vertical-align:middle;border:1px solid #d5dfe4;border-radius:8px;color:#35525f;background:white;text-decoration:none}.icon-button:hover{background:#eaf3f1;border-color:#9bbfb7;color:#0c6959}.icon-button.primary{background:#087b6b;border-color:#087b6b;color:white}.icon-button.primary:hover{background:#066b5d}.mobile-menu{display:none}.content{max-width:1140px;margin:0 auto;padding:35px 38px 48px}.chapter-hero{padding:0 0 26px;margin-bottom:28px;border-bottom:1px solid #dce5e9}.chapter-hero .lead{font-size:15px;max-width:780px;color:#536974;line-height:1.7;margin-bottom:14px}.chapter-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:11px;color:#627780}.stage-pill{border:1px solid #c5d8d3;color:#286b60;background:#eaf3f0;padding:3px 9px;border-radius:4px}.section{margin:30px 0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.section-heading h2{margin-bottom:3px}.section-intro{font-size:13px;color:#657681;max-width:820px;margin-bottom:0}.section-index{font-size:11px;color:#82979e;letter-spacing:1px;font-weight:600;white-space:nowrap}.form-panel{background:#fff;border:1px solid #dce5e9;border-radius:10px;margin-bottom:15px;padding:22px}.form-panel h3{font-size:13px;margin:0 0 17px;color:#365460}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}.field{min-width:0}.field.wide{grid-column:1/-1}.field label{display:block;font-size:12px;font-weight:600;color:#425b66;margin-bottom:6px;line-height:1.45}.input-wrap{display:flex;align-items:stretch;border:1px solid #cfdbe0;border-radius:6px;background:#fff;min-height:43px;overflow:hidden}.input-wrap:focus-within{border-color:#3b9c8b;box-shadow:0 0 0 3px #3b9c8b15}.input-wrap input,.input-wrap select{width:100%;min-width:0;border:0;outline:0;padding:9px 11px;background:transparent;color:#1c3744;font-size:14px;font-variant-numeric:tabular-nums}.input-wrap input[readonly]{background:#f2f5f6;color:#69808a}.input-wrap .unit{display:flex;align-items:center;padding:0 11px;font-size:11px;color:#607c85;border-left:1px solid #e7edef;background:#f8fafb;white-space:nowrap}.field-help{font-size:11px;line-height:1.5;color:#71848d;margin-top:5px}.field-error{color:#b74738;font-size:11px;min-height:0;margin-top:4px}.field.invalid .input-wrap{border-color:#d48a79}.assumption-note{background:#fff9ed;border:1px solid #ecdfbc;border-radius:8px;padding:13px 16px;color:#785f25;font-size:12px;margin-bottom:18px}.results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.calculation-card{background:#fff;border:1px solid #d7e2e6;border-top:3px solid #4e9d8d;border-radius:8px;overflow:hidden;min-width:0}.calculation-head{padding:17px 19px 0;display:flex;align-items:center;gap:10px;justify-content:space-between}.calculation-head h3{font-size:14px;line-height:1.45;margin:0}.calculation-body{padding:13px 19px 18px}.result-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #eef2f4}.result-row:last-child{border-bottom:0}.result-label{font-size:11px;max-width:64%;color:#69808a}.result-value{font-size:15px;color:#1b4d4a;font-weight:650;font-variant-numeric:tabular-nums;text-align:right;overflow-wrap:anywhere}.formula{background:#f5f9f8;border:1px solid #e1ece8;border-radius:5px;padding:12px 10px;margin:13px 0 12px;overflow:auto;max-width:100%;font-size:13px;color:#294d4a}.formula mjx-container{margin:0!important;display:block!important}.formula mjx-container svg{max-width:none}.calculation-purpose{font-size:12px;color:#576f7a;margin:10px 0}.next-action{margin:12px 0 9px;padding-left:12px;border-left:2px solid #9bcabe;font-size:12px;color:#33564f}.next-action strong{display:block;color:#28695c;font-size:10px;text-transform:uppercase;letter-spacing:1px;margin-bottom:4px}.calculation-note{font-size:11px;color:#7d713c;background:#fcf9ef;border-radius:5px;padding:9px 10px;margin:10px 0}.missing{font-size:11px;color:#88683b;padding:10px;background:#fff8eb;border-radius:5px;margin-top:10px}.source-link{font-size:10px;display:inline-flex;gap:5px;align-items:flex-start;color:#5c7e82;line-height:1.5;margin-top:8px}.source-link svg{margin-top:1px}.step-card{border:1px solid #d9e3e7;background:white;border-radius:8px;margin:13px 0;padding:20px}.step-heading{display:flex;gap:12px;align-items:baseline;margin-bottom:9px}.step-id{font-family:Consolas,monospace;color:#77908f;font-size:11px;white-space:nowrap}.step-heading h3{margin:0;font-size:15px}.step-action{font-size:13px;line-height:1.7;color:#455e6a}.expectation{font-size:12px;line-height:1.65;background:#f2f7f5;border-radius:5px;padding:11px 13px;color:#456b5c;margin-top:10px}.expectation strong{font-weight:600;color:#2c6655}.record{margin-top:13px;border-top:1px solid #edf1f3;padding-top:11px}.record summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#697d86;font-size:12px;min-height:27px}.record summary::-webkit-details-marker{display:none}.record summary:before{content:'+';font-size:17px;color:#72958a;margin-right:2px}.record summary .record-label{flex:1}.record[open] summary:before{content:'−'}.record[open] summary{margin-bottom:13px}.record-status{font-size:10px;color:#7d8b92;border:1px solid #dce4e7;border-radius:4px;padding:2px 6px;white-space:nowrap}.record-status.pass{color:#28705e;background:#eaf5ef;border-color:#cbe3d5}.record-status.fail{color:#aa4d3a;background:#fff1ed;border-color:#efcebf}textarea{width:100%;border:1px solid #cedadf;border-radius:6px;background:white;resize:vertical;min-height:80px;outline:0;padding:10px 11px;font-size:13px;color:#203d4b;line-height:1.6}textarea:focus{border-color:#439f8e;box-shadow:0 0 0 3px #3b9c8b15}.record-fields{display:grid;grid-template-columns:1fr 1fr;gap:13px}.record-fields .full{grid-column:1/-1}.record-fields label,.param-fields label{display:block;font-size:11px;color:#627780;margin-bottom:5px}.record-fields input,.record-fields select,.param-fields input,.param-fields select,.matrix-row input,.matrix-row select{width:100%;min-width:0;border:1px solid #cedadf;border-radius:5px;padding:9px;background:white;color:#254351;min-height:39px;outline:0}.record-error{font-size:11px;color:#9c6a30;margin-top:8px}.monitor-list{display:grid;gap:0;border:1px solid #dce5e8;background:white;border-radius:8px;overflow:hidden}.monitor-row{display:grid;grid-template-columns:180px minmax(0,1fr);gap:22px;padding:15px 19px;border-bottom:1px solid #e8eef0;align-items:start}.monitor-row:last-child{border-bottom:0}.monitor-name{font-size:12px;font-weight:650;color:#365561}.monitor-address{font:11px/1.7 Consolas,monospace;color:#168471;overflow-wrap:anywhere;margin-bottom:4px}.monitor-look{font-size:12px;color:#647b87}.outcome-box{padding:20px 23px;border:1px solid #b7d8ce;background:#eaf4ef;border-radius:8px;color:#2b6151;font-size:13px;line-height:1.7}.outcome-box strong{display:block;font-size:12px;margin-bottom:6px;text-transform:uppercase;letter-spacing:1px}.parameter-card{border:1px solid #d8e3e7;background:#fff;border-radius:8px;margin:12px 0;padding:18px}.parameter-title{display:flex;align-items:center;gap:11px;margin-bottom:8px}.parameter-title code{color:#087b6b;background:#e8f3ef;font-size:12px;flex-shrink:0}.parameter-title h3{font-size:13px;margin:0}.parameter-baseline{font-size:11px;color:#70848e;margin-bottom:12px;overflow-wrap:anywhere}.parameter-proposal{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:7px}.parameter-proposal .input-wrap{min-height:41px}.param-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.param-fields .full{grid-column:1/-1}.button{border:1px solid #087b6b;border-radius:6px;background:#087b6b;color:#fff;padding:10px 16px;font-size:12px;font-weight:600;min-height:42px;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;gap:8px}.button:hover{background:#066b5e}.button.secondary{background:#fff;border-color:#d1dfe2;color:#3d5f6b}.button.secondary:hover{background:#f0f6f5}.button.minor{background:transparent;border-color:transparent;color:#557b74;padding:6px 2px;min-height:32px}.resource-panel{border:1px solid #dbe5e8;background:#fff;border-radius:8px;margin-top:14px}.resource-panel>summary{cursor:pointer;padding:17px 20px;font-size:13px;color:#3f646b;font-weight:600}.resource-inner{padding:0 20px 20px}.source-list{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.source-list a{font-size:12px}.theory{font-size:13px;line-height:1.75;overflow-wrap:anywhere;color:#435a65}.theory h1{font-size:24px}.theory h2{font-size:19px;margin-top:27px}.theory h3{font-size:15px;margin-top:20px}.theory table{display:block;overflow:auto;border-collapse:collapse;font-size:11px;max-width:100%;margin:15px 0}.theory th,.theory td{padding:8px 10px;border:1px solid #d9e3e7;vertical-align:top;text-align:left;min-width:110px}.theory th{background:#eff5f3}.theory pre{white-space:pre-wrap;overflow:auto;background:#f3f6f7;padding:13px;border-radius:6px}.theory .formula{font-size:12px}.theory blockquote{border-left:3px solid #b9d3ca;padding-left:12px;color:#657c81;margin:15px 0}.chapter-navigation{margin-top:35px;display:flex;justify-content:space-between;gap:16px;border-top:1px solid #dce5e8;padding-top:23px}.chapter-navigation a{display:flex;align-items:center;gap:8px;font-size:12px;text-decoration:none;color:#456c70;max-width:48%;line-height:1.5}.chapter-navigation a:last-child{text-align:right;margin-left:auto}.chapter-navigation span{color:#84989e;font-size:10px;display:block}.cycle-table{width:100%;border-collapse:collapse;font-size:12px}.cycle-table th{font-size:10px;letter-spacing:.1px;text-align:left;color:#6e828c;background:#f3f7f7;padding:10px}.cycle-table td{padding:6px;border-bottom:1px solid #e6edef;vertical-align:middle}.cycle-table input{width:100%;min-width:0;border:1px solid #d0dde1;padding:8px;border-radius:4px;font-variant-numeric:tabular-nums;font-size:13px}.cycle-table .stage-name{min-width:140px}.matrix-list{border:1px solid #dce5e8;border-radius:8px;overflow:hidden;background:#fff}.matrix-row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(115px,.8fr) minmax(0,1fr);gap:13px;padding:13px 17px;border-bottom:1px solid #e7eef0;align-items:center}.matrix-row:last-child{border-bottom:0}.matrix-name{font-size:12px;font-weight:600;color:#3c5966;line-height:1.5}.matrix-name small{display:block;font-weight:400;color:#81919a;font-size:10px}.matrix-note{grid-column:1/-1;font-size:11px;color:#71838b;margin-top:-5px}.filter-input{width:100%;border:1px solid #cedbdf;border-radius:6px;padding:10px 12px;font-size:13px;margin:2px 0 15px}.registry-results{max-height:540px;overflow:auto;padding-right:3px}.registry-row{border-bottom:1px solid #e1e9ec;padding:11px 0}.registry-row>summary{display:flex;gap:12px;cursor:pointer;list-style:none;align-items:baseline;font-size:12px}.registry-row>summary code{white-space:nowrap;color:#087b6b}.registry-row>summary span{color:#4d6874;line-height:1.5}.registry-detail{padding:13px 0 3px;font-size:11px;color:#687f89}.registry-detail .param-fields{margin-top:12px}.registry-meta{font-size:10px;margin:8px 0;color:#7c8c92}.registry-count{font-size:11px;color:#7a8f97;margin-bottom:12px}.report-summary{background:#f0f6f4;border:1px solid #c9ded6;border-radius:8px;padding:20px;display:flex;align-items:center;justify-content:space-between;gap:18px}.report-summary h3{margin-bottom:5px}.report-summary p{margin:0;color:#58756d;font-size:12px}.open-items{font-size:12px;background:#fff8eb;border:1px solid #ecdfbf;padding:13px 16px;border-radius:7px;color:#80632c;margin:15px 0}.open-items ul{padding-left:18px;margin:6px 0}.toast{position:fixed;bottom:20px;left:calc(50% + 110px);transform:translate(-50%,20px);padding:12px 18px;color:#fff;background:#1f3c48;border-radius:8px;box-shadow:0 6px 26px #0a1f3020;z-index:90;font-size:12px;opacity:0;pointer-events:none;transition:opacity .15s,transform .15s;max-width:min(600px,90vw)}.toast.visible{opacity:1;transform:translate(-50%,0)}.loading{min-height:100vh;display:grid;place-items:center;color:#5a797c;font-size:14px}.menu-scrim{display:none}.skip-link{position:fixed;left:10px;top:-100px;background:white;padding:10px;z-index:100}.skip-link:focus{top:10px}dialog{border:1px solid #c9dce0;border-radius:12px;padding:28px;max-width:490px;width:calc(100vw - 32px);color:#284450;box-shadow:0 18px 100px #132e3e30}dialog::backdrop{background:#102b3c66}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #75bcaa;outline-offset:3px}.status-line{font-size:11px;color:#829198;margin-top:8px}.status-line.stale{color:#9f6c29}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:1500px){.content{max-width:1220px;padding-left:48px;padding-right:48px}.fields{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1150px){.sidebar{width:253px}.workspace{margin-left:253px}.toolbar{padding:0 26px}.content{padding:30px 26px 40px}.results{grid-template-columns:1fr}.monitor-row{grid-template-columns:155px minmax(0,1fr)}.toast{left:calc(50% + 110px)}}
@media(max-width:800px){html{scroll-padding-top:76px}.sidebar{width:286px;transform:translateX(-100%);transition:transform .18s}.sidebar.open{transform:translateX(0)}.workspace{margin-left:0}.toolbar{height:62px;padding:0 15px;gap:10px}.toolbar-context{gap:9px}.toolbar-title{max-width:45vw;font-size:12px}.toolbar-chapter{font-size:10px;letter-spacing:.7px}.mobile-menu{display:inline-grid}.toolbar-actions{gap:5px}.icon-button{width:40px;height:40px;min-width:40px}.content{padding:25px 18px 32px}.chapter-hero{padding-bottom:22px;margin-bottom:25px}h1{font-size:25px;letter-spacing:-.55px;line-height:1.25}h2{font-size:19px}.chapter-hero .lead{font-size:13px;line-height:1.75}.section{margin:26px 0}.section-intro{font-size:12px}.section-index{display:none}.form-panel{padding:18px 16px}.fields{gap:17px 16px}.input-wrap input,.input-wrap select,textarea,.record-fields input,.record-fields select,.param-fields input,.param-fields select,.matrix-row input,.matrix-row select,.cycle-table input,.filter-input{font-size:16px}.input-wrap .unit{font-size:10px;padding:0 9px}.field label{font-size:12px}.field-help{font-size:10.5px}.calculation-head{padding:15px 16px 0}.calculation-body{padding:11px 16px 16px}.calculation-head h3{font-size:14px}.result-value{font-size:15px}.result-label{font-size:11px}.step-card{padding:17px 16px}.step-heading{gap:10px}.step-heading h3{font-size:14px}.step-action{font-size:12.5px}.monitor-row{grid-template-columns:1fr;gap:4px;padding:14px 16px}.monitor-address{font-size:11px}.monitor-name{font-size:12px}.monitor-look{font-size:12px}.resource-inner{padding-left:16px;padding-right:16px}.resource-panel>summary{padding:16px}.menu-scrim.open{display:block;position:fixed;inset:0;background:#112a3966;z-index:35}.toast{left:50%;bottom:15px}.matrix-row{grid-template-columns:1fr 1fr;gap:9px;padding:13px}.matrix-name{grid-column:1/-1;font-size:12px}.matrix-note{margin-top:0}.record-fields,.param-fields{gap:13px}.registry-results{max-height:600px}.registry-row>summary{gap:9px;font-size:11px}.registry-row>summary code{font-size:10px}.parameter-card{padding:16px}.parameter-title{align-items:flex-start}.parameter-title h3{font-size:12px}.cycle-table{display:block}.cycle-table thead{display:none}.cycle-table tbody{display:grid;gap:13px}.cycle-table tr{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:13px;border:1px solid #d7e3e5;border-radius:7px}.cycle-table td{padding:0;border:0;display:block}.cycle-table td:before{content:attr(data-label);display:block;font-size:10px;color:#6f848e;margin-bottom:5px}.cycle-table td:first-child{grid-column:1/-1}.cycle-table .stage-name{min-width:0}.report-summary{padding:16px}.report-summary h3{font-size:14px}.outcome-box{padding:18px;font-size:12px}.chapter-navigation a{font-size:11px;gap:6px}}
@media(max-width:480px){.fields{grid-template-columns:1fr}.toolbar-title{max-width:40vw}.toolbar-chapter{display:none}.record-fields,.param-fields{grid-template-columns:1fr}.record-fields .full,.param-fields .full{grid-column:1}.parameter-proposal{grid-template-columns:minmax(0,1fr) 40px}.form-panel h3{font-size:12px}.result-label{max-width:63%}.chapter-navigation a{max-width:47%}.chapter-meta{gap:7px;font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.sidebar,.toolbar,.chapter-navigation,.data-tools,.toast,.mobile-menu,.menu-scrim{display:none!important}.workspace{margin:0}.content{max-width:none;padding:0}.record{display:none}.calculation-card,.step-card,.form-panel,.monitor-row{break-inside:avoid}.section-heading{break-after:avoid}.resource-panel{display:none}body{background:white;font-size:10pt}.results{display:block}.calculation-card{margin-bottom:12px}}
