.console{border-top:1px solid var(--ln);border-bottom:1px solid var(--ln);font-variant-numeric:tabular-nums;min-height:860px;font-size:14px;display:flex}.rail{border-right:1px solid var(--ln);background:var(--sf);flex-direction:column;flex:0 0 232px;display:flex}.rail-brand{border-bottom:1px solid var(--ln);align-items:center;gap:10px;height:56px;padding:0 20px;display:flex}.badge-mono{border:1px solid var(--ln2);width:24px;height:24px;color:var(--mu);border-radius:6px;place-items:center;font-size:11px;display:grid}.rail-brand span:last-child{flex-direction:column;line-height:1.3;display:flex}.rail-brand small{color:var(--mu);font-size:12px}.rail-tabs{flex-direction:column;gap:2px;padding:12px;display:flex}.rail-tabs button{all:unset;cursor:pointer;color:var(--mu);border-radius:6px;gap:10px;padding:8px 10px;display:flex}.rail-tabs button:hover{color:var(--tx);background:var(--rs)}.rail-tabs button[aria-selected=true]{color:var(--tx);background:var(--rs);box-shadow:inset 0 0 0 1px var(--ln2)}.rail-tabs button:focus-visible,.mtabs button:focus-visible{outline:2px solid var(--a1);outline-offset:2px}.rail-tabs .n{color:var(--fa)}.rail-foot{border-top:1px solid var(--ln);color:var(--mu);flex-direction:column;gap:8px;margin-top:auto;padding:16px 20px;font-size:12px;display:flex}.rail-foot a{color:inherit;text-decoration:none}.rail-foot a:hover{color:var(--tx)}.rail-foot .fa{color:var(--fa)}.console-main{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{min-height:56px;padding:8px var(--gutter);border-bottom:1px solid var(--ln);color:var(--mu);flex-wrap:wrap;align-items:center;gap:8px 16px;font-size:12px;display:flex}.crumb{color:var(--tx);gap:8px;font-size:14px;display:flex}.crumb .fa{color:var(--fa)}.env{border:1px solid var(--ln2);color:var(--tx);border-radius:6px;margin-left:auto;padding:3px 8px}.api-status{color:var(--tx);align-items:center;gap:6px;display:flex}.api-status i{border:1px solid var(--mu);border-radius:50%;width:7px;height:7px}.api-status[data-kind=ok] i{background:var(--ok);border:0;animation:2.8s ease-in-out infinite bu-pulse}.api-status[data-kind=warn] i{background:var(--wn);border:0;animation:1.6s ease-in-out infinite bu-pulse}.api-status[data-kind=error] i{background:var(--er);border:0}.topbar b{color:var(--tx);font-weight:400}.mtabs{display:none}.panel-wrap{padding:var(--gutter)}.panel-wrap[hidden]{display:none}.work{flex-wrap:wrap;align-items:flex-start;gap:24px;display:flex}.req{border:1px solid var(--ln);background:var(--sf);border-radius:12px;flex:0 400px;min-width:0}.card-head{border-bottom:1px solid var(--ln);flex-wrap:wrap;align-items:center;gap:8px 12px;padding:14px 16px;display:flex}.card-head .fa,.fa{color:var(--fa)}.card-head .push{margin-left:auto}.mini-btn{all:unset;cursor:pointer;border:1px solid var(--ln2);color:var(--tx);white-space:nowrap;border-radius:6px;padding:5px 10px;font-size:12px}.mini-btn:hover{background:var(--rs)}.mini-btn:focus-visible,.go:focus-visible,.seg button:focus-visible,.switch:focus-visible{outline:2px solid var(--a1);outline-offset:2px}.fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 12px;padding:16px;display:grid}.fields .wide{grid-column:1/-1}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field>span:first-child,.label{color:var(--mu);justify-content:space-between;gap:8px;font-size:12px;display:flex}.field .val{color:var(--tx)}.field input:not([type=range]):not([type=checkbox]),.field select{border:1px solid var(--ln2);background:var(--bg);width:100%;height:36px;color:var(--tx);font:inherit;border-radius:6px;padding:0 10px;font-size:14px}.field select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--fa) 50%), linear-gradient(135deg, var(--fa) 50%, transparent 50%);background-position:calc(100% - 15px) 16px,calc(100% - 10px) 16px;background-repeat:no-repeat;background-size:5px 5px;padding-right:28px}.field input:focus-visible,.field select:focus-visible{outline:2px solid var(--a1);outline-offset:1px}.field input[aria-invalid=true],.field select[aria-invalid=true]{border-color:var(--er)}.field .err{color:var(--er);font-size:12px;line-height:1.4}.field .err:empty{display:none}.field .hint{color:var(--fa);font-size:12px}input[type=range]{width:100%;accent-color:var(--a1);margin:0}.ticks{color:var(--fa);justify-content:space-between;font-size:12px;display:flex}.seg{border:1px solid var(--ln2);border-radius:6px;grid-auto-columns:1fr;grid-auto-flow:column;padding:2px;font-size:12px;display:grid}.seg button{all:unset;cursor:pointer;height:30px;color:var(--mu);border-radius:4px;place-items:center;display:grid}.seg button[aria-checked=true]{background:var(--chip);color:var(--tx)}.toggle-row{color:var(--mu);justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.switch{all:unset;cursor:pointer;border:1px solid var(--ln2);border-radius:9px;flex:none;width:32px;height:18px;position:relative}.switch:after{content:"";background:var(--fa);border-radius:50%;width:12px;height:12px;transition:left .15s;position:absolute;top:2px;left:2px}.switch[aria-checked=true]{border-color:var(--a1);background:var(--a1)}.switch[aria-checked=true]:after{background:var(--bg);left:16px}.req-section{border-top:1px solid var(--ln);flex-direction:column;gap:12px;padding:16px;display:flex}.req-foot{flex-direction:column;gap:10px;padding:0 16px 16px;display:flex}.form-err{color:var(--er);font-size:12px}.form-err:empty{display:none}.go{all:unset;cursor:pointer;background:var(--tx);height:40px;color:var(--bg);text-align:center;border-radius:6px;place-items:center;display:grid}.go[disabled]{cursor:progress;background:var(--chip);color:var(--mu)}.route-opt{box-shadow:inset 0 0 0 1px var(--ln);color:var(--fa);border-radius:6px;align-items:center;gap:10px;padding:8px 10px;font-size:12px;display:flex}.route-opt i{border:1px solid var(--fa);width:8px;height:8px}.route-opt span:nth-child(2){flex:1}.route-opt[data-on=true]{color:var(--tx);background:var(--sel);box-shadow:inset 0 0 0 1px var(--a1)}.route-opt[data-on=true] i{background:linear-gradient(135deg, var(--a1), var(--a2));border:0}.kicker{letter-spacing:.06em;color:var(--fa);font-size:12px}.results{flex-direction:column;flex:560px;gap:16px;min-width:0;display:flex}.result-set{flex-direction:column;gap:16px;min-width:0;display:flex}.result-set[hidden],.results [data-state][hidden]{display:none}.card{border:1px solid var(--ln);border-radius:12px;min-width:0}.card-body{flex-direction:column;gap:12px;padding:24px;display:flex}.big{letter-spacing:-.02em;align-self:flex-start;font-size:clamp(40px,4.4vw,64px);line-height:1}.chip{border:1px solid var(--ln2);white-space:nowrap;border-radius:6px;padding:4px 10px;font-size:12px}.chip[data-kind=ok]{border-color:var(--ok)}.chip[data-kind=warn]{border-color:var(--wn)}.sub{color:var(--mu);font-size:12px}.note{font-family:var(--sans);color:var(--mu);margin:0;font-size:15px;line-height:1.55}.state{border:1px solid var(--ln);border-radius:12px;flex-direction:column;justify-content:center;gap:18px;min-height:480px;padding:32px;display:flex}.state.empty{border-style:dashed;border-color:var(--ln2);text-align:center;align-items:center;gap:12px}.state h3{font-family:var(--sans);margin:0;font-size:28px;font-weight:600}.state .lede{font-family:var(--sans);color:var(--mu);max-width:48ch;margin:0;font-size:16px;line-height:1.55}.state-tag{align-items:center;gap:8px;font-size:12px;display:flex}.state-tag i{border-radius:50%;width:8px;height:8px}.state-tag.warn i{background:var(--wn)}.state-tag.error i{background:var(--er)}.cursor{vertical-align:-.15em;background:var(--mu);width:.55em;height:1em;margin-left:2px;animation:1.1s step-end infinite bu-blink;display:inline-block}.progress{background:var(--rs);border-radius:2px;height:4px;overflow:hidden}.progress span{background:linear-gradient(90deg, var(--a1), var(--a2));width:30%;height:100%;animation:1.6s ease-in-out infinite lab-indeterminate;display:block}@keyframes lab-indeterminate{0%{transform:translate(-100%)}to{transform:translate(340%)}}.skel{background:var(--rs);border-radius:4px;display:block}.state pre,.log{font-family:var(--mono);color:var(--mu);white-space:pre-wrap;margin:0;font-size:12px;line-height:1.8}.btn-row{flex-wrap:wrap;gap:12px;display:flex}.btn-row button{all:unset;cursor:pointer;border:1px solid var(--ln2);border-radius:6px;place-items:center;height:40px;padding:0 16px;display:grid}.btn-row button.primary{background:var(--tx);color:var(--bg);border:0}.btn-row button:focus-visible{outline:2px solid var(--a1);outline-offset:2px}.view-switch{border:1px solid var(--ln2);border-radius:6px;margin-left:auto;padding:2px;font-size:12px;display:flex}.view-switch button{all:unset;cursor:pointer;border-radius:4px;padding:3px 10px}.view-switch button[aria-pressed=true]{background:var(--chip)}.view-switch button:focus-visible{outline:2px solid var(--a1)}.band{height:28px;margin-top:8px;position:relative}.band .axis{background:var(--ln2);height:1px;position:absolute;top:13px;left:0;right:0}.band .fill{background:var(--sel);border:1px solid var(--a1);border-radius:2px;height:12px;position:absolute;top:7px}.band .mark{background:var(--tx);width:2px;height:24px;margin-left:-1px;position:absolute;top:1px}.band .target{border-left:1px dashed var(--wn);height:30px;position:absolute;top:-2px}.band-ticks{height:16px;color:var(--fa);font-size:12px;position:relative}.band-ticks span{white-space:nowrap;position:absolute;transform:translate(-50%)}.band-ticks span:first-child{transform:none}.band-ticks span:last-child{transform:translate(-100%)}.wf{padding:12px 16px 16px;font-size:12px}.wf-row{grid-template-columns:minmax(0,200px) minmax(0,1fr) 84px;align-items:center;gap:12px;height:28px;display:grid}.wf-row .lab{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.wf-row .lab .fa{margin-left:4px}.wf-row .track{height:100%;position:relative}.wf-row .zero{background:var(--ln);width:1px;position:absolute;top:0;bottom:0}.wf-row .bar{border-radius:2px;min-width:2px;height:12px;position:absolute;top:8px}.wf-row .bar.up{background:linear-gradient(90deg, var(--a1), var(--a2))}.wf-row .bar.down{background:var(--fa)}.wf-row .amt{text-align:right}.wf-row.edge{color:var(--mu)}.wf-row.total{border-top:1px solid var(--ln);height:32px;color:var(--tx);margin-top:4px}.wf-row .dot{background:var(--mu);border-radius:50%;width:8px;height:8px;margin-left:-4px;position:absolute;top:10px}.wf-row .tick{background:var(--tx);width:2px;height:16px;margin-left:-1px;position:absolute;top:8px}.wf-legend{color:var(--fa);gap:16px;margin-top:10px;display:flex}.wf-legend span{align-items:center;gap:6px;display:flex}.wf-legend i{width:10px;height:8px}.wf-legend .up{background:linear-gradient(90deg, var(--a1), var(--a2))}.wf-legend .down{background:var(--fa)}.tbl-wrap{overflow-x:auto}.tbl{border-collapse:collapse;width:100%;font-size:12px}.tbl th{color:var(--fa);text-align:left;white-space:nowrap;padding:8px;font-weight:400}.tbl td{border-top:1px solid var(--ln);white-space:nowrap;padding:9px 8px}.tbl th:first-child,.tbl td:first-child{padding-left:16px}.tbl th:last-child,.tbl td:last-child{padding-right:16px}.tbl .r{text-align:right}.tbl .mu{color:var(--mu)}.sim{align-items:center;gap:8px;display:flex}.sim i{background:var(--rs);width:56px;height:4px;position:relative}.sim i b{background:var(--mu);position:absolute;inset:0 auto 0 0}.simple-rows{padding:8px 16px 16px;font-size:12px}.simple-rows div{border-bottom:1px solid var(--ln);justify-content:space-between;gap:12px;padding:7px 0;display:flex}.lc{padding:12px 16px 16px;position:relative}.lc svg{touch-action:pan-y;width:100%;height:auto;display:block;overflow:visible}.lc .grid{stroke:var(--ln)}.lc .axis{stroke:var(--ln2)}.lc .tick{fill:var(--fa);font-size:11px;font-family:var(--mono)}.lc .s1{fill:none;stroke:var(--a1);stroke-width:2px}.lc .s2{fill:none;stroke:var(--mu);stroke-width:2px;stroke-dasharray:5 4}.lc .area{fill:var(--a1);opacity:.12}.lc .shade{fill:var(--rs)}.lc .shade-label{fill:var(--fa);font-size:11px;font-family:var(--mono)}.lc .target-line{stroke:var(--wn);stroke-dasharray:4 4}.lc .target-label{fill:var(--wn);font-size:11px;font-family:var(--mono)}.lc .marker{fill:var(--a1);stroke:var(--bg);stroke-width:2px}.lc .marker-line{stroke:var(--ln2);stroke-dasharray:2 3}.lc .cross{stroke:var(--mu)}.lc .hover-dot{stroke:var(--bg);stroke-width:2px}.lc .hover-dot.s1d{fill:var(--a1)}.lc .hover-dot.s2d{fill:var(--mu)}.lc-tip{pointer-events:none;border:1px solid var(--ln2);background:var(--sf);white-space:nowrap;z-index:2;border-radius:6px;padding:8px 10px;font-size:12px;line-height:1.6;position:absolute}.lc-tip[hidden]{display:none}.legend{color:var(--mu);flex-wrap:wrap;gap:6px 16px;font-size:12px;display:flex}.legend span{align-items:center;gap:6px;display:flex}.legend i{border-top:2px solid var(--a1);width:14px;height:0}.legend i.dash{border-top:2px dashed var(--mu)}.legend i.area{background:var(--a1);opacity:.25;border:0;height:8px}.legend i.shade{border:1px solid var(--ln2);background:var(--rs);height:8px}.readouts{border-top:1px solid var(--ln);grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));display:grid}.readouts>div{border-right:1px solid var(--ln);flex-direction:column;gap:6px;padding:14px 16px;display:flex}.readouts>div:last-child{border-right:0}.readouts span{color:var(--mu);font-size:12px}.readouts b{font-size:20px;font-weight:400}.warns{border:1px solid var(--wn);border-radius:12px;flex-direction:column;gap:8px;padding:14px 16px;display:flex}.warns[hidden]{display:none}.warns div{font-family:var(--sans);gap:10px;font-size:15px;line-height:1.5;display:flex}.warns div:before{content:"!";font-family:var(--mono);color:var(--wn)}.drawer{border:1px solid var(--ln);background:var(--sf);border-radius:12px;overflow:hidden}.drawer-head{flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 16px;display:flex}.drawer-head .toggle{all:unset;cursor:pointer;gap:8px;display:flex}.drawer-head .toggle:focus-visible{outline:2px solid var(--a1);outline-offset:2px}.drawer-body{border-top:1px solid var(--ln);flex-wrap:wrap;display:flex}.drawer-body[hidden]{display:none}.drawer-body pre{min-width:0;max-height:420px;font-family:var(--mono);color:var(--mu);flex:260px;margin:0;padding:16px;font-size:12px;line-height:1.65;overflow:auto}.drawer-body pre+pre{color:var(--tx);border-left:1px solid var(--ln)}.mc{flex-direction:column;gap:24px;max-width:1040px;display:flex}.mc-head{flex-direction:column;gap:8px;display:flex}.mc-head h2{font-family:var(--sans);margin:0;font-size:28px;font-weight:600}.mc-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;display:grid}.mc-card{border:1px solid var(--ln);border-radius:12px;flex-direction:column;gap:14px;min-width:0;padding:20px;display:flex}.mc-card .metric{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.mc-card .metric b{font-size:40px;font-weight:400;line-height:1}.kv{border-top:1px solid var(--ln);font-size:12px}.kv div{border-bottom:1px solid var(--ln);grid-template-columns:minmax(120px,40%) minmax(0,1fr);gap:12px;padding:8px 0;display:grid}.kv dt,.kv span:first-child{color:var(--mu)}.kv dd{text-align:right;margin:0}.limits{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.limits li{font-family:var(--sans);gap:10px;font-size:16px;line-height:1.5;display:flex}.limits li:before{content:"!";font-family:var(--mono);color:var(--wn)}.formula{border:1px solid var(--ln);background:var(--sf);font-family:var(--mono);white-space:pre;border-radius:12px;margin:0;padding:16px;font-size:13px;line-height:1.8;overflow-x:auto}@media (width<=860px){.console{flex-direction:column;min-height:0}.rail{display:none}.env{margin-left:0}.mtabs{border-bottom:1px solid var(--ln);grid-auto-columns:1fr;grid-auto-flow:column;font-size:12px;display:grid}.mtabs button{all:unset;cursor:pointer;height:44px;color:var(--mu);place-items:center;display:grid}.mtabs button[aria-selected=true]{color:var(--tx);box-shadow:inset 0 -2px 0 var(--tx)}.req,.results{flex:100%}.wf-row{grid-template-columns:minmax(0,120px) minmax(0,1fr) 72px}.state{min-height:320px;padding:24px}}.intro[data-astro-cid-6jfan4zt]{flex-direction:column;gap:10px;padding-top:40px;padding-bottom:28px;display:flex}.prompt[data-astro-cid-6jfan4zt]{font-size:14px}.fa[data-astro-cid-6jfan4zt]{color:var(--fa)}.hi[data-astro-cid-6jfan4zt]{color:var(--hi)}h1[data-astro-cid-6jfan4zt]{letter-spacing:-.01em;margin:0;font-size:clamp(28px,3vw,40px);font-weight:600}p[data-astro-cid-6jfan4zt]{max-width:68ch;color:var(--mu);margin:0;font-size:17px;line-height:1.6}
