@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:100 700;font-display:swap;src:url("fonts/plex-sans-latin.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/plex-mono-latin.woff2") format("woff2")}
:root{--teal:#006b83;--teal-dark:#00566a;--teal-soft:#eaf4f6;--ink:#14161a;--muted:#505861;--rule:#d5d8dc;--surface:#fff;--sunk:#f0f1f3;--warning:#8e5200;--warning-soft:#fdf1dc;--danger:#a8281c;--sans:"IBM Plex Sans",sans-serif;--mono:"IBM Plex Mono",monospace;color:var(--ink);background:var(--surface);font:16px/1.5 var(--sans);font-synthesis:none;scrollbar-color:#9aa5ad var(--sunk);scrollbar-width:auto}
*{box-sizing:border-box}body{margin:0}a{color:var(--teal);text-underline-offset:4px}button,input,select{font:inherit}button,select,input{accent-color:var(--teal)}button,a,select,input{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--teal);outline-offset:4px}button:active:not(:disabled){transform:translateY(1px)}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h2{font-size:26px;font-weight:600;letter-spacing:-.5px}h3{font-size:20px;font-weight:600}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:10;top:-100px;left:20px;padding:10px;background:white}.skip-link:focus{top:10px}
.masthead{height:72px;display:flex;align-items:center;margin:0 40px;border-bottom:1px solid var(--rule);gap:20px}.wordmark{font-size:29px;font-weight:600;color:var(--ink);text-decoration:none;letter-spacing:-1px}.product-name{border-left:1px solid var(--rule);padding-left:20px;font-size:18px}.masthead nav{margin-left:auto;display:flex;gap:38px}.masthead nav a{display:inline-flex;align-items:center;gap:10px;font-size:16px;color:var(--ink);text-decoration:none}.masthead nav a:hover{text-decoration:underline}.masthead svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7}
main{padding:32px 40px 0;max-width:1680px;margin:auto}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:38px}.schedule-area{min-width:0}h1{font-size:clamp(32px,3.6vw,56px);line-height:1.12;font-weight:600;letter-spacing:-1.8px}.intro{font-size:clamp(18px,1.65vw,26px);margin-top:9px;letter-spacing:-.3px}.run-line{display:flex;justify-content:space-between;align-items:baseline;gap:12px;min-height:52px;padding:20px 0 10px;font-size:13px;color:var(--muted)}#run-status[data-kind=success]{color:var(--teal);font-weight:600}#run-status[data-kind=warning]{color:var(--warning);font-weight:600}#run-meta{font-family:var(--mono);font-size:11px;text-align:right}
.schedule-scroll{overflow:auto;scrollbar-color:#9aa5ad var(--sunk)}table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:660px;font-family:var(--mono);font-size:13px}th,td{border:1px solid var(--rule);height:50px;text-align:center;padding:0;position:relative}thead th{background:#fafafa;height:43px;font-weight:400}thead th:first-child{width:225px;text-align:left;padding-left:17px}tbody th{text-align:left;font-weight:400}tbody th button{border:0;background:transparent;width:100%;height:100%;display:flex;align-items:center;gap:13px;text-align:left;color:var(--ink);padding:10px 15px;font-size:13px;font-family:var(--mono)}tbody th button:hover{background:var(--teal-soft)}tbody th button[aria-pressed=true]{background:var(--teal-soft);box-shadow:inset 3px 0 var(--teal)}tbody th button span:first-child{font-size:12px;font-weight:500}tbody th button span:last-child{font-family:var(--sans);font-size:15px}td .access{position:absolute;inset:4px;background:var(--teal);color:white;display:flex;align-items:center;justify-content:center;font-size:11px;border:0;border-radius:2px;font-family:var(--mono)}td .access:hover{background:var(--teal-dark)}tr.selected .access{box-shadow:inset 0 0 0 2px var(--teal-dark)}td.due:after{content:"";position:absolute;right:0;top:0;bottom:0;border-right:2px dashed #a06722;pointer-events:none}td.closed{background:repeating-linear-gradient(135deg,#f0f1f3,#f0f1f3 4px,#e2e5e8 4px,#e2e5e8 5px)}td .late{background:var(--warning)}td .late:hover{background:#6f4000}tfoot th,tfoot td{height:34px;color:var(--muted);font-size:11px;background:#fafafa}tfoot th{text-align:left;padding-left:16px;font-weight:400}.empty-row{padding:30px;font-family:var(--sans);height:300px;color:var(--muted)}.legend{display:flex;gap:23px;flex-wrap:wrap;padding-top:12px;font-size:11px;color:var(--muted)}.legend span{display:flex;align-items:center;gap:6px}.key{display:inline-block;width:12px;height:10px}.access-key{background:var(--teal)}.late-key{background:var(--warning)}.due-key{border-right:2px dashed #a06722}.closed-key{background:repeating-linear-gradient(135deg,#e1e5e8,#e1e5e8 2px,#fff 2px,#fff 4px);border:1px solid var(--rule)}.basis{color:var(--muted);font-size:12px;margin-top:8px;min-height:18px}.metrics{display:grid;grid-template-columns:1fr 1fr 1.5fr;margin-top:25px;padding:0 0 0 22px;gap:24px}.metrics>div{display:flex;flex-direction:column;gap:2px}.metrics>div+div{border-left:1px solid var(--rule);padding-left:28px}.metrics strong{font-family:var(--mono);font-size:26px;line-height:1.3;font-weight:400}.metrics span{font-size:14px;color:var(--muted)}.metrics span span{font-size:11px}.comparison{min-height:22px;font-size:12px;margin-top:16px;color:var(--muted)}
.controls{border-left:1px solid var(--rule);padding-left:28px;padding-top:8px}.controls label:not(.checkbox){display:block;margin:19px 0 6px;font-size:15px}.controls select{width:100%;border:1px solid #b9c0c9;background:#fff;color:var(--ink);border-radius:3px;padding:10px 13px;height:46px;cursor:pointer}.checkbox{display:flex;align-items:center;gap:11px;margin:22px 0 20px;font-size:15px}.checkbox input{width:21px;height:21px;margin:0}.primary{display:block;width:100%;height:51px;border:1px solid var(--teal);background:var(--teal);color:white;border-radius:3px;font-size:16px;font-weight:600}.primary:hover:not(:disabled){background:var(--teal-dark)}.settings-state{font-size:11px;line-height:1.45;color:var(--muted);min-height:20px;margin-top:9px}.settings-state.dirty{color:var(--warning)}.inspector{border-top:1px solid var(--rule);padding-top:19px;margin-top:20px;min-height:210px}.inspector h2{font-size:24px}.inspector h3{font-size:17px;margin:14px 0 5px}.inspector p{font-size:14px;color:var(--muted);margin-top:10px}.inspector .job-id{color:var(--teal);font-family:var(--mono);font-size:12px}.inspector .calculation{font-family:var(--mono);font-size:13px;background:var(--teal-soft);color:var(--ink);padding:10px 12px;margin-top:13px}.inspector .hint{font-size:11px}.error{border-left:3px solid var(--danger);padding:13px 16px;background:#fce9e6;color:var(--danger);font-size:14px;margin:12px 0}
.walkthrough{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;margin-top:16px;padding:10px 0 4px}.walkthrough button{display:flex;gap:17px;align-items:flex-start;text-align:left;border:0;background:transparent;padding:6px 0 12px;color:var(--ink);border-bottom:2px solid transparent;border-radius:0}.walkthrough button:hover,.walkthrough button[aria-pressed=true]{border-bottom-color:var(--teal)}.step-number{display:grid;place-items:center;flex-shrink:0;width:39px;height:39px;border-radius:50%;background:var(--teal);color:white;font:20px var(--mono)}.walkthrough strong{display:block;font-size:20px;font-weight:600;margin:0 0 6px}.walkthrough button>span:last-child>span{font-size:14px;color:var(--muted);line-height:1.5;display:block;max-width:320px}.model-section{border-top:1px solid var(--rule);margin-top:24px;padding-top:23px;scroll-margin-top:25px}.model-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.model-heading h2{font-size:21px}.model-heading>span{font-size:11px;color:var(--muted)}.model-detail{display:grid;grid-template-columns:1.2fr 1fr;gap:45px;padding:20px 0 27px;min-height:120px}.model-detail h3{font-size:18px}.model-detail p{font-size:14px;color:var(--muted);max-width:650px;margin-top:6px}.model-detail code{font-family:var(--mono);font-size:14px;border-left:3px solid var(--teal);padding:4px 18px;white-space:pre-line}.model-section details{border-top:1px solid var(--rule);padding:14px 0;font-size:14px}.model-section summary{cursor:pointer;width:fit-content;color:var(--teal)}.proof-content{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:24px 0}.proof-content h3{font-size:17px;margin:10px 0}.proof-content p{font-size:14px;color:var(--muted)}.proof-content ul{padding-left:20px}.proof-content li{padding-bottom:8px;font-size:13px}.secondary{border:1px solid var(--rule);border-radius:3px;background:white;padding:9px 14px;font-size:13px;color:var(--ink)}.secondary:hover{background:var(--sunk)}footer{border-top:1px solid var(--rule);margin:12px 40px 0;padding:20px 0 26px;display:flex;justify-content:space-between;gap:24px;color:var(--muted);font-size:12px}footer strong{color:var(--ink);font-size:18px;margin-right:13px}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:var(--sunk)}::-webkit-scrollbar-thumb{background:#9aa5ad;border:2px solid var(--sunk);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#73838e}
@media(min-width:1500px){main{padding-top:36px}.workspace{grid-template-columns:minmax(0,1fr) 370px;gap:38px}th,td{height:49px}thead th{height:44px}.run-line{min-height:50px}.controls{padding-left:28px}.metrics{margin-top:22px}.walkthrough{margin-top:24px;padding-top:26px}}
@media(max-width:1100px){.masthead{margin:0 24px}main{padding:28px 24px 0}.workspace{grid-template-columns:minmax(0,1fr) 290px;gap:24px}.controls{padding-left:22px}h1{letter-spacing:-1px}.intro{font-size:19px}.run-line{flex-wrap:wrap;gap:2px}table{min-width:610px}thead th:first-child{width:195px}.metrics{padding:0;gap:14px}.metrics>div+div{padding-left:14px}.metrics strong{font-size:22px}.metrics span{font-size:12px}.walkthrough{gap:16px}.walkthrough button{gap:10px}.walkthrough strong{font-size:18px}.walkthrough button>span:last-child>span{font-size:13px}.step-number{width:30px;height:30px;font-size:16px}footer{margin-right:24px;margin-left:24px}footer>span{display:none}}
@media(max-width:760px){.masthead{height:auto;min-height:66px;gap:12px;margin:0 18px;flex-wrap:wrap;padding:12px 0}.wordmark{font-size:24px}.product-name{font-size:14px;padding-left:12px}.masthead nav{width:100%;gap:23px;margin-left:0}.masthead nav a{font-size:13px}.masthead svg{width:14px;height:14px}main{padding:26px 18px 0}.workspace{display:flex;flex-direction:column;gap:21px}h1{font-size:34px;max-width:420px}.intro{font-size:18px;margin-top:10px}.run-line{padding-top:18px;min-height:57px}.controls{border-left:0;border-top:1px solid var(--rule);padding:20px 0 0;display:grid;grid-template-columns:1fr;gap:20px}.controls h2{font-size:23px}.controls label:not(.checkbox){margin-top:17px}.inspector{margin-top:0;padding-top:20px;min-height:0}.metrics{margin-top:20px;grid-template-columns:1fr 1fr 1fr;gap:12px}.metrics strong{font-size:20px}.metrics>div+div{padding-left:12px}.metrics span{font-size:11px}.metrics span span{display:none}.legend{gap:13px;font-size:10px}.comparison{margin-top:17px;min-height:0}.walkthrough{grid-template-columns:1fr 1fr;gap:16px 20px;margin-top:26px}.walkthrough button>span:last-child>span{font-size:12px}.walkthrough strong{font-size:18px}.model-heading{align-items:flex-start;flex-direction:column;gap:5px}.model-detail{grid-template-columns:1fr;gap:17px;padding:19px 0}.model-detail code{font-size:12px;overflow-wrap:anywhere}.proof-content{grid-template-columns:1fr;gap:18px}footer{margin:10px 18px 0;font-size:11px}.schedule-scroll:focus-visible{outline-offset:1px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}button:active:not(:disabled){transform:none}}
@media(forced-colors:active){:root{scrollbar-color:auto}td .access{border:2px solid ButtonText}.step-number{border:1px solid ButtonText}.access-key{border:2px solid ButtonText}td.closed{border-style:dotted}}

.model-intro{font-size:15px;max-width:950px;color:var(--muted);margin-top:12px}.model-intro strong{color:var(--ink);font-weight:600}#step-points{padding-left:19px;margin:12px 0 0;font-size:14px;color:var(--muted)}#step-points li{margin-bottom:10px;padding-left:3px}.example-label{color:var(--teal);font-family:var(--mono);font-size:12px}.model-example{background:var(--teal-soft);padding:21px 24px}.model-example p{margin:9px 0 17px}.model-example code{display:block;font-size:12px;line-height:1.8;padding:0;border:0;overflow-wrap:anywhere}.source-links{margin-top:16px}
@media(max-width:760px){.walkthrough{grid-template-columns:1fr;gap:5px;padding:9px 0}.walkthrough button{padding:12px 0;gap:15px}.walkthrough button>span:last-child>span{max-width:100%;font-size:13px}.model-detail{gap:16px}.model-intro{font-size:14px}.model-example{padding:17px 18px}}
