/* The economics pages use explanatory diagrams and visible assumptions. */
.supply-page,.sla-page{--paper:#f5f3ed;--panel:#fffefa;--ink:#232c31;--ink-2:#626b70;--ink-3:#707976;--rule:#d9ded7;--teal:#35685e;--teal-dim:#e5ede6;--amber:#9a7651;--amber-dim:#eee7dc;--oxide:#9a573a;--mono:'IBM Plex Mono',ui-monospace,monospace;color-scheme:light}
.supply-page .tool-intro,.sla-page .tool-intro{display:block;padding:48px 0 34px}
.supply-page .tool-intro h1,.sla-page .tool-intro h1{font-size:clamp(35px,4.5vw,58px);line-height:1.1;letter-spacing:-.045em;max-width:1050px;margin:14px 0 20px}
.supply-page .tool-intro .dek,.sla-page .tool-intro .dek{max-width:760px;font-size:17px;line-height:1.7}
.supply-page .reading-note,.sla-page .reading-note{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:start;margin:0 0 36px;padding:28px 0 32px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.supply-page .reading-note h2,.sla-page .reading-note h2{font-size:24px;font-weight:400;line-height:1.3;letter-spacing:-.025em;margin:10px 0 14px}
.supply-page .reading-note p:not(.overline),.sla-page .reading-note p:not(.overline){font:14px/1.8 var(--sans);color:var(--ink-2)}
.supply-page .reading-note strong,.sla-page .reading-note strong{font-weight:500;color:var(--ink)}
.supply-page .reading-note .reading-secondary,.sla-page .reading-note .reading-secondary{font-size:12px!important;margin-top:12px}
.supply-page .worked-example{padding:23px;background:var(--panel);border:1px solid var(--rule);border-radius:3px}
.supply-page .worked-example .example-label{font:10px/1.5 var(--mono)!important;letter-spacing:.08em;color:var(--ink-3)!important;margin-bottom:20px}
.paid-hour-row+.paid-hour-row{margin-top:20px}.paid-hour-row>div:first-child{display:flex;justify-content:space-between;align-items:baseline;gap:20px;font:12px var(--sans)}
.paid-hour-row strong{font-size:17px;font-variant-numeric:tabular-nums}.paid-hour-track{height:8px;margin-top:10px;background:#edf0e9}
.paid-hour-track i{display:block;height:100%}.paid-hour-track .reserved-hours{width:100%;background:#547d70}.paid-hour-track .rented-hours{width:50%;background:#b89470}
.supply-page .worked-example .example-caption{font-size:11px!important;line-height:1.6!important;margin-top:18px}
.supply-experiment,.outage-experiment{border:1px solid var(--rule);border-radius:3px;background:var(--panel);overflow:hidden}
.experiment-head{display:flex;align-items:start;justify-content:space-between;gap:32px;padding:28px 30px 22px}
.experiment-head h2{font-size:25px;line-height:1.3;font-weight:400;letter-spacing:-.025em;margin:8px 0 0}
.experiment-head>p:last-child{font:12px/1.8 var(--sans);max-width:310px;color:var(--ink-2);text-align:right}
.rate-row{display:grid;grid-template-columns:200px 200px 1fr;gap:24px;margin:0 30px;padding:0 0 22px;border-bottom:1px solid var(--rule);align-items:end}
.rate-row .numctl label{font:11px/1.6 var(--sans);letter-spacing:0;text-transform:none;color:var(--ink-2);margin-bottom:8px}
.rate-row .numctl input{width:100%;padding:10px;font:16px var(--mono);background:var(--paper);color:var(--ink)}
.rate-explanation{font:12px/1.7 var(--sans);color:var(--ink-2);max-width:45ch;padding-bottom:3px}
.supply-art{padding:23px 28px 28px}
.supply-page .legend{font:11px var(--sans);gap:24px;margin-bottom:15px;color:var(--ink-2)}
.supply-page .legend .sw{width:10px;height:10px;border-radius:0;flex-shrink:0}.supply-page .sw.used{background:#547d70}.supply-page .sw.idle{background:repeating-linear-gradient(45deg,#879e94 0 1px,transparent 1px 4px)}.supply-page .sw.elastic{background:#b89470}
.supply-page #sim{margin:0 auto;max-width:1000px;overflow:visible}
.supply-page .krow{padding:22px 0 0;border-top:1px solid var(--rule);align-items:end;gap:32px;margin-top:0}
.supply-page .ctl label,.sla-page .sl label{font:12px/1.6 var(--sans);letter-spacing:0;text-transform:none;color:var(--ink-2);gap:20px;align-items:baseline}
.supply-page .ctl label b{font:19px/1 var(--sans);color:var(--teal);white-space:nowrap}
.supply-page .ctl input{height:28px;cursor:pointer}
.supply-page #snapBtn{min-height:44px;padding:12px 17px;color:var(--panel);background:var(--teal);border:1px solid var(--teal);border-radius:4px;font:12px var(--sans);margin-bottom:1px}
.supply-page #snapBtn:hover{background:#2b584f}
.supply-page .supply-results{border-radius:0;border:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:#edf1ea;color:var(--ink);margin:0;grid-template-columns:1.15fr 1.15fr 1fr 1fr}
.supply-page .supply-results .tk{padding:22px 25px;border-color:var(--rule)}
.supply-page .supply-results .l{font:11px/1.5 var(--sans);letter-spacing:0;text-transform:none;color:var(--ink-2)}
.supply-page .supply-results .v{font:400 clamp(26px,3vw,36px)/1.2 var(--sans);letter-spacing:-.035em;margin-top:10px;color:var(--ink)}
.supply-page .supply-results .v em{font:10px var(--mono);letter-spacing:0;color:var(--ink-2);margin-left:4px}
.supply-page .supply-results .v.bad{color:var(--oxide)}
.cost-working{display:flex;align-items:center;gap:28px;padding:22px 30px 0;font-variant-numeric:tabular-nums}.cost-working span{display:block;font:10px/1.5 var(--sans);color:var(--ink-2);margin-bottom:5px}.cost-working strong{font:17px var(--mono);font-weight:400}.cost-working>b{font-size:22px;font-weight:400;color:#929b91}
.supply-experiment .status,.outage-experiment .status{font:14px/1.75 var(--sans);font-style:normal;min-height:0;max-width:none;padding:20px 30px 0;margin:0;color:var(--ink)}
.experiment-note{padding:10px 30px 25px;font:11px/1.75 var(--sans);color:var(--ink-2);max-width:110ch}
.buying-details{margin-top:18px;border:1px solid var(--rule);border-radius:3px;background:transparent}
.buying-details>summary{display:flex;align-items:center;gap:20px;list-style:none;padding:22px 25px;cursor:pointer;font:16px var(--sans);letter-spacing:-.01em;color:var(--ink)}
.buying-details>summary::-webkit-details-marker{display:none}.buying-details>summary:after{content:'+';font-size:22px;font-weight:400;color:var(--teal);margin-left:auto}.buying-details[open]>summary:after{content:'−'}
.buying-details>summary small{font:11px var(--sans);color:var(--ink-2);margin-left:auto;letter-spacing:0}
.buying-details .detail-body{padding:0 25px 25px}.buying-details .controls{margin-top:0;padding-top:5px;border-top:0;gap:40px}.buying-details .ctl label b{font:14px var(--mono)}
.buying-details .input-grid{gap:18px;margin-top:24px;padding-top:24px}
.buying-details .numctl label,.buying-details .filectl label{font:11px var(--sans);text-transform:none;letter-spacing:0;color:var(--ink-2)}
.buying-details input[type=number],.buying-details input[type=file]{font:13px var(--sans)}
.buying-details .filectl input::file-selector-button{background:var(--panel);border:1px solid var(--rule);color:var(--teal);font:12px var(--sans);padding:9px 12px;cursor:pointer}
.supply-page .notes,.sla-page .notes{padding-top:0;margin-top:18px}.buying-details.notes p{font:14px/1.8 var(--sans);max-width:90ch;margin-bottom:16px;color:var(--ink-2)}
.buying-details.notes .decision-strip{margin:24px 0}.buying-details .rule-box{font:12px/1.8 var(--mono);background:var(--panel);padding:16px 20px;border-radius:0;border-color:var(--rule);border-left:2px solid var(--teal)}
.buying-details.notes p.scope-note{font-size:12px;margin-bottom:0}
.supply-page .foot,.sla-page .foot{font:10px/1.8 var(--mono);margin-top:28px}
.supply-page .nav-bot,.sla-page .nav-bot{justify-content:space-between;align-items:start;text-transform:none;letter-spacing:0;margin:38px 0}
.supply-page .nav-bot a,.sla-page .nav-bot a{white-space:normal;font:14px var(--sans)}
.next-label{display:block;margin-bottom:8px;font:9px var(--mono);letter-spacing:.1em;color:var(--ink-3)}
/* The outage diagram shows its actual denominator rather than an arbitrary server count. */
.sla-page .contract-reading{grid-template-columns:.9fr 1.1fr}
.outage-grid{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:45px;padding:0 30px 28px}
.measurement-card{padding:23px;background:#f0f2ec;border:1px solid var(--rule);border-radius:3px}
.measurement-label{font:9px/1.7 var(--mono);letter-spacing:.08em;color:var(--ink-2)}
.measurement-total{font:400 40px/1.2 var(--sans);letter-spacing:-.04em;font-variant-numeric:tabular-nums;margin:12px 0 3px!important}
.measurement-equation{font:12px/1.6 var(--mono);color:var(--ink-2)}
.measurement-row{display:flex;align-items:baseline;justify-content:space-between;gap:20px;font:12px/1.6 var(--sans);margin-top:24px;color:var(--ink-2)}.measurement-row strong{font:16px var(--mono);color:var(--ink)}
.measurement-track{height:8px;background:#d6e0d7;margin-top:10px}.measurement-track i{display:block;height:100%;background:var(--oxide);transition:width .2s}
.measurement-definition{font:12px var(--sans);font-weight:500;margin-top:18px!important;color:var(--ink)}
.art-annotation{font:11px/1.7 var(--sans);color:var(--ink-2);margin-top:8px!important}
.outage-controls{padding:4px 0}.outage-controls .seg .lbl{font:12px var(--sans);text-transform:none;letter-spacing:0;color:var(--ink);margin-bottom:12px}
.sla-page .seg .btns{gap:5px;display:flex;flex-wrap:wrap}
.sla-page .seg button{border:1px solid var(--rule);border-radius:4px;padding:12px 17px;font:12px var(--sans);min-height:44px;color:var(--ink-2);background:var(--panel)}
.sla-page .seg button.on{color:var(--panel);background:var(--teal);border-color:var(--teal)}
.sla-page .main-slider{margin-top:26px}.sla-page .sl label{display:flex;flex-wrap:wrap;gap:8px}.sla-page .sl label b{font:13px var(--mono);color:var(--teal)}
.sla-page .control-help{font:11px/1.7 var(--sans);color:var(--ink-2);margin-top:6px;max-width:50ch}
.outage-mini{display:flex;gap:25px;margin-top:26px;padding-top:20px;border-top:1px solid var(--rule)}.outage-mini>div{flex:1}
.outage-mini span{display:block;font:10px var(--sans);color:var(--ink-2);margin-bottom:7px}.outage-mini .v{font:25px var(--sans);letter-spacing:-.025em;font-weight:400;color:var(--ink)}.outage-mini em{font-style:normal;font-size:14px}.outage-mini .v.bad{color:var(--oxide)}
.outage-results{display:grid;grid-template-columns:1fr 1fr;background:#edf1ea;color:var(--ink);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.outage-results>div{padding:23px 30px 25px}.outage-results>div+div{border-left:1px solid var(--rule)}
.outage-results .l{font:12px var(--sans);color:var(--ink-2)}.outage-results .v{font:400 clamp(32px,4vw,45px)/1.2 var(--sans);letter-spacing:-.04em;margin-top:10px;font-variant-numeric:tabular-nums}
.outage-results .calculation-note{font:11px/1.7 var(--mono);color:var(--ink-2);margin-top:10px;min-height:3.4em}
.result-track{height:3px;background:#d9dfd5;margin-top:14px}.result-track i{display:block;height:100%;background:#9a7651;transition:width .2s}.credit-result .result-track i{background:var(--teal)}
.sla-page .scenario-advanced{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.scenario-advanced .seggroup,.scenario-advanced .allowed,.scenario-advanced .excl{grid-column:1/-1}
.sla-page .scenario-advanced .seg .lbl{font:11px var(--sans);text-transform:none;letter-spacing:0}.sla-page .scenario-advanced .allowed{font:12px/1.7 var(--sans);margin-top:0}.sla-page .scenario-advanced .excl{font:12px/1.7 var(--sans);margin-top:0}
.sla-page #refdeal{margin-top:26px}.sla-page .dealcard{border-radius:3px;padding:23px;background:var(--panel)}.sla-page .dgrid{gap:24px 35px}.sla-page .df{min-width:0}.sla-page .dfl{font:10px var(--sans);letter-spacing:0;text-transform:none}
.sla-page .dfv .cbtn{font:16px var(--sans);min-height:30px;min-width:30px;border-radius:3px;margin:0 5px}
.sla-page .dealcap,.sla-page .excap{font:11px/1.7 var(--sans);max-width:100%;color:var(--ink-2)}
.sla-page .clause-doorway{margin:36px 0 24px}.clause-doorway .overline{margin-bottom:16px}
.clause-links{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.clause-links a{display:flex;align-items:center;gap:16px;padding:22px;font-size:15px;border-left:1px solid var(--rule)}.clause-links a:first-child{border-left:0}.clause-links a:hover{background:var(--panel);color:var(--teal)}.clause-links span{font:9px var(--mono);color:var(--ink-3)}.clause-links b{margin-left:auto;color:var(--teal);font-weight:400}
.sla-page .contract-review{margin-top:0}.sla-page .review-intro{font:14px/1.8 var(--sans);color:var(--ink-2);margin-bottom:18px}.sla-page .scope-note.warning{font:11px/1.8 var(--sans);max-width:none;border-radius:0;margin-bottom:0}
.sla-page .boardbar,.sla-page .rhead{grid-template-columns:minmax(0,1fr) 210px;gap:24px}.sla-page .sortbar{grid-column:1/2}.sla-page .boardbar{padding:0 22px 12px}.sla-page .sortbar button{font:12px var(--sans);border-radius:4px;padding:9px 13px}.sla-page .sortbar button.on{color:var(--panel)}
.sla-page .rdraft,.sla-page .rask{display:none}.sla-page .xpos{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:20px}
.sla-page .rhead{padding:22px}.sla-page .rname{font:19px/1.3 var(--sans);letter-spacing:-.015em}.sla-page .rtag{font-size:9px;letter-spacing:.04em;margin-top:8px}.sla-page .rhead:hover .rname{color:var(--teal)}
.sla-page .rmoney{padding-top:2px}.sla-page .rval{font:17px var(--sans);letter-spacing:-.02em}.sla-page .rtagm{font-size:9px;letter-spacing:0;text-transform:none}.sla-page .rbar{height:3px;margin-top:10px}.sla-page .rchip{background:var(--teal-dim);color:var(--ink-2);font:10px var(--sans);letter-spacing:0;text-transform:none}.sla-page .gline{opacity:.2}
.sla-page .xin{padding:0 22px 28px;max-width:1000px}.sla-page .xpos p,.sla-page .xwhy,.sla-page .xread,.sla-page .xrl p:not(.xk){font:14px/1.8 var(--sans);max-width:100%}.sla-page .xread{font-size:12px;margin-top:18px}
.sla-page .xrl{padding:0 20px 20px;background:#f0f2ec;border-left:2px solid var(--teal);margin-top:20px}.sla-page .xrl .xk{padding-top:18px}.sla-page .xmodel{font:11px/1.8 var(--mono);max-width:100%;margin-top:18px}
.sla-page .workflow{gap:20px;font-family:var(--sans)}.sla-page .workflow select,.sla-page .workflow button{font:12px var(--sans);min-height:42px}
.sla-page .srcblock{max-width:none;margin-top:18px}.sla-page .srcblock summary{color:var(--ink);font:16px var(--sans);letter-spacing:0;text-transform:none}.sla-page .srcblock ul{padding:0 25px 22px;margin-top:0}.sla-page .srcblock li{font:11px/1.8 var(--mono);margin-bottom:12px;overflow-wrap:anywhere}.sla-page .srcblock summary h2{font:inherit}.sla-page .srcblock a,.sla-page .excap a,.sla-page .foot a{color:var(--teal)}
@media(max-width:1000px){.supply-page .reading-note,.sla-page .reading-note{gap:28px}.rate-row{grid-template-columns:1fr 1fr;gap:18px}.rate-explanation{grid-column:1/-1;max-width:none}.supply-page .supply-results .tk{padding:20px}.outage-grid{gap:28px;padding-left:24px;padding-right:24px}.clause-links a{padding:20px 14px;font-size:14px;gap:10px}.sla-page .seg button{padding:13px}.supply-page .supply-results .v em{display:block;margin:5px 0 0}}
@media(max-width:760px){
  .supply-page .tool-intro,.sla-page .tool-intro{padding:30px 0 25px}.supply-page .tool-intro h1,.sla-page .tool-intro h1{font-size:clamp(34px,7.5vw,48px)}.supply-page .tool-intro .dek,.sla-page .tool-intro .dek{font-size:15px}
  .supply-page .reading-note,.sla-page .reading-note{grid-template-columns:1fr;gap:20px;padding:23px 0;margin-bottom:25px}.supply-page .reading-note h2,.sla-page .reading-note h2{font-size:23px;margin:8px 0 12px}.sla-page .contract-reading{gap:0}
  .experiment-head{padding:23px 22px 20px;display:block}.experiment-head h2{font-size:23px}.experiment-head>p:last-child{margin-top:14px;font-size:11px;text-align:left;max-width:100%}
  .rate-row{margin:0 20px;gap:15px}.rate-row .numctl label{font-size:10px;min-height:3.2em}.rate-row .numctl input{font-size:15px}
  .supply-art{padding:22px 14px}.supply-page .legend{gap:14px;font-size:9px}.supply-page #sim text{font-size:19px}.supply-page #sim text.chart-mid{display:none}
  .supply-page .krow{display:block;padding:20px 6px 0}.supply-page .ctl{min-width:0}.supply-page .ctl label{font-size:12px;gap:10px}.supply-page .ctl label b{font-size:18px}.supply-page #snapBtn{margin-top:16px;width:100%;min-height:44px}
  .supply-page .supply-results{grid-template-columns:1fr 1fr}.supply-page .supply-results .tk{padding:18px 20px}.supply-page .supply-results .tk:nth-child(3){border-left:0}.supply-page .supply-results .tk:nth-child(n+3){border-top:1px solid var(--rule)}.supply-page .supply-results .v{font-size:29px}.supply-page .supply-results .v em{display:inline;font-size:9px}
  .cost-working{padding:20px 22px 0;gap:12px;justify-content:space-between}.cost-working span{font-size:9px;max-width:10ch}.cost-working strong{font-size:13px}.cost-working>b{font-size:16px}
  .supply-experiment .status,.outage-experiment .status{font-size:13px;padding:20px 22px 0}.experiment-note{padding:8px 22px 22px;font-size:10px}
  .buying-details>summary{padding:21px;font-size:15px;gap:10px;flex-wrap:wrap;position:relative;padding-right:50px}.buying-details>summary small{width:100%;margin:0;font-size:10px}.buying-details>summary:after{position:absolute;right:20px;top:26px}.buying-details .detail-body{padding:0 20px 24px}.buying-details .controls{display:block}.buying-details .controls .ctl+.ctl{margin-top:20px}.buying-details .ctl label b{font-size:12px}
  .outage-grid{grid-template-columns:1fr;padding:0 22px 24px;gap:24px}.measurement-card{padding:20px}.measurement-total{font-size:35px}.outage-controls{padding:0}.outage-controls .seg .btns button{flex:1}.outage-mini{margin-top:20px}.outage-results>div{padding:20px 22px}.outage-results .l{font-size:11px;min-height:3em;line-height:1.5}.outage-results .v{font-size:33px}.outage-results .calculation-note{font-size:10px;min-height:5.1em}
  .sla-page .scenario-advanced{grid-template-columns:1fr;gap:20px}.sla-page .scenario-advanced .sl{grid-column:1}.sla-page .scenario-advanced .seggroup{gap:20px}.sla-page .dealcard{padding:18px}.sla-page .dgrid{display:grid;grid-template-columns:1fr;gap:20px}.sla-page .dder{gap:20px}
  .clause-links{grid-template-columns:1fr}.clause-links a{border-left:0;border-top:1px solid var(--rule);padding:20px 8px;font-size:16px}.clause-links a:first-child{border-top:0}.sla-page .clause-doorway{margin-top:30px}
  .sla-page .boardbar,.sla-page .rhead{grid-template-columns:minmax(0,1fr) 110px;gap:15px}.sla-page .boardbar{padding:0 0 10px}.sla-page .sortbar{grid-column:1/-1;gap:7px}.sla-page .baxis{display:none}.sla-page .sortbar button{font-size:11px}.sla-page .rhead{padding:18px 14px}.sla-page .rname{font-size:16px}.sla-page .rtag{font-size:8px;line-height:1.6}.sla-page .rline{display:block}.sla-page .rtagm{display:block;font-size:8px;margin-top:3px}.sla-page .rval{font-size:17px}.sla-page .xpos{grid-template-columns:1fr;gap:0}.sla-page .xin{padding:0 14px 22px}.sla-page .xrl{padding-left:14px;padding-right:14px}.sla-page .xpos p,.sla-page .xwhy,.sla-page .xread,.sla-page .xrl p:not(.xk){font-size:13px}.sla-page .srcblock ul{padding-left:20px;padding-right:20px}.sla-page .workflow{gap:14px}
  .supply-page .nav-bot a,.sla-page .nav-bot a{font-size:12px;max-width:47%;line-height:1.5}.supply-page .nav-bot,.sla-page .nav-bot{flex-wrap:nowrap;gap:20px}.supply-page .nav-next,.sla-page .nav-next{text-align:right}
}
@media(prefers-reduced-motion:reduce){.result-track i,.measurement-track i{transition:none}}
@media print{.site-header,.experience-footer{display:none!important}.rbody{max-height:none!important;opacity:1!important}.buying-details .detail-body{display:block!important}.outage-results,.supply-results,.reading-note{break-inside:avoid}}
