@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/IBMPlexMono-400.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/IBMPlexMono-500.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:100 700;font-display:swap;src:url(/fonts/IBMPlexSans.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

:root{--bg:#0a0a0a;--raise:#0c0c0c;--text:#ededeb;--muted:#a9a9a4;--faint:#85857f;--line:#262625;--line2:#3a3a38;--amber:#ffb000;--ok:#8fd694;--bad:#ff6b5a}
*{box-sizing:border-box;margin:0;padding:0}
html{scrollbar-color:#3a3a38 #0a0a0a;scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font:16px/1.6 'IBM Plex Sans',sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
::selection{background:var(--amber);color:#0a0a0a}
:focus-visible{outline:2px solid var(--amber);outline-offset:2px}
.m{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.dt{font-family:'IBM Plex Mono',monospace;font-size:13px}
.m,.dt,td,b,output{font-variant-numeric:tabular-nums}
.muted{color:var(--muted)}.faint{color:var(--faint)}.amber{color:var(--amber)}
.wrap{max-width:1312px;margin:0 auto;border-left:1px solid var(--line);border-right:1px solid var(--line)}
svg.ar{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s cubic-bezier(.16,1,.3,1)}
svg.ck{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
h1{font-weight:300;letter-spacing:-.035em;line-height:1;text-wrap:balance}
h2{font-weight:300;font-size:44px;letter-spacing:-.025em;line-height:1.08;text-wrap:balance}
table{width:100%;border-collapse:collapse}
th{text-align:left;font-weight:400}

/* nav */
nav{border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5;background:rgba(10,10,10,.92);backdrop-filter:blur(8px)}
nav .wrap{display:grid;grid-template-columns:260px 1fr auto auto;height:60px}
nav .id{display:flex;align-items:center;gap:12px;padding:0 24px;border-right:1px solid var(--line);font-weight:600;letter-spacing:.02em;white-space:nowrap}
nav .id i{width:8px;height:8px;background:var(--amber)}
nav .ln{display:flex;align-items:center;gap:30px;padding:0 24px;color:var(--muted)}
nav .ln a{position:relative;padding:4px 0;transition:color .2s}
nav .ln a:hover{color:var(--text)}
nav .ln a:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:var(--amber);transform:scaleX(0);transform-origin:left;transition:transform .25s cubic-bezier(.16,1,.3,1)}
nav .ln a:hover:after{transform:scaleX(1)}
nav .ac{display:flex}
nav .ac a{display:flex;align-items:center;gap:10px;padding:0 24px;border-left:1px solid var(--line);transition:background .2s}
nav .ac a:hover{background:#151514}
nav .ac a.p{background:var(--text);color:var(--bg);font-weight:500}
nav .ac a.p:hover{background:#fff}

/* buttons */
.btns{display:flex}
.btn{height:52px;padding:0 24px;display:inline-flex;align-items:center;gap:16px;border:1px solid var(--line2);font-weight:500;white-space:nowrap;transition:background .2s,border-color .2s}
.btn+.btn{border-left:0}
.btn:hover{background:#151514;border-color:#55554f}
.btn:hover svg.ar{transform:translateX(3px)}
.btn.p{background:var(--text);color:var(--bg);border-color:var(--text)}
.btn.p:hover{background:#fff}
.btn .m{color:#55554f}

/* figure */
.diag{position:relative;overflow:hidden;background:linear-gradient(var(--line) 1px,transparent 1px) 0 0/40px 40px,linear-gradient(90deg,var(--line) 1px,transparent 1px) 0 0/40px 40px;background-color:var(--raise)}
.diag img{position:absolute;left:50%;transform:translateX(-50%);opacity:.96;width:auto;max-width:none}
.diag:after{content:"";position:absolute;left:0;right:0;bottom:0;height:200px;background:linear-gradient(transparent,var(--bg))}
.diag .label{position:absolute;left:20px;top:16px;color:var(--faint);z-index:1}
.co{position:absolute;display:flex;align-items:center;gap:10px;line-height:1.5;z-index:1}
.co i{display:block;height:1px;background:var(--amber)}
.co em{font-style:normal;background:var(--bg);border:1px solid var(--line2);padding:3px 8px}
.co s{text-decoration:none;color:var(--amber);margin-right:6px}

/* footer */
footer .wrap{display:grid;grid-template-columns:260px 1fr auto;border-bottom:1px solid var(--line)}
footer .wrap>div{padding:24px}
/* dividers on the RIGHT of each cell, like every column above (.side, .sec>.k, article): a left border sat 1px off their line */
footer .wrap>div:not(:last-child){border-right:1px solid var(--line)}
.fl{display:flex;flex-wrap:wrap;gap:12px 36px;color:var(--muted)}
.fl a:hover{color:var(--text)}
.soc{display:flex;padding:0!important}
.soc a{display:flex;align-items:center;gap:10px;padding:0 24px;border-left:1px solid var(--line);transition:background .2s}
.soc a:first-child{border-left:0}
.soc a:hover{background:#151514}
.soc svg{width:16px;height:16px;stroke:var(--text);fill:none;stroke-width:1.5;stroke-linejoin:round}
.legal{text-align:center;color:var(--faint);padding:18px 20px;font-size:13px}

@media (max-width:760px){
 .wrap{border:0}
 nav .wrap{grid-template-columns:1fr auto auto}nav .ln{display:none}nav .ac a:first-child{display:none}nav .id{border-right:0;padding:0 16px}
 h2{font-size:32px}
 .btns{flex-direction:column}.btn{justify-content:space-between}.btn+.btn{border-left:1px solid var(--line2);border-top:0}
 footer .wrap{grid-template-columns:1fr}footer .wrap>div{padding:20px 16px}footer .wrap>div:not(:last-child){border-right:0}footer .wrap>div+div{border-top:1px solid var(--line)}
 .fl{gap:12px 22px}.soc a{padding:16px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* app pages: dashboard, admin, docs, status */
nav .id i{flex:none}
nav .id span{color:var(--faint);font-weight:400}
nav .ln a.on{color:var(--text)}
nav .ln a.on:after{transform:scaleX(1)}
.who{display:flex;align-items:center;gap:10px}
.av{width:24px;height:24px;background:#2a2a28;display:inline-grid;place-items:center;color:var(--muted);font:500 11px 'IBM Plex Mono',monospace;flex:none}
.av.l{width:44px;height:44px;font-size:15px}
.app{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:calc(100vh - 60px - 73px)}
.side{border-right:1px solid var(--line);padding-bottom:32px}
.side .grp{padding:24px 24px 8px;color:var(--faint)}
.side a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 24px;color:var(--muted);box-shadow:inset 2px 0 0 transparent;transition:background .2s,color .2s}
.side a:hover{color:var(--text);background:#111110}
.side a.on{color:var(--text);box-shadow:inset 2px 0 0 var(--amber);background:#121211}
.side a.lock{color:var(--faint);cursor:default}.side a.lock:hover{background:none;color:var(--faint)}
.side a .ct{font:12px 'IBM Plex Mono',monospace;color:var(--faint)}
.side a .ct.am{color:#0a0a0a;background:var(--amber);padding:0 6px}
.side .sess{margin:28px 24px 0;border:1px solid var(--line2);padding:14px;font-size:13px;color:var(--muted)}
.side .sess b{display:flex;align-items:center;gap:8px;color:var(--text);font-weight:500;margin-bottom:4px}
.side .sess svg{width:15px;height:15px;stroke:var(--ok);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.main{padding:36px 44px 56px;min-width:0}
.ph{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px}
.ph h1{font-size:40px}
.ph .sub{color:var(--muted);margin-top:8px}
.box{border:1px solid var(--line2);background:var(--bg)}
.hd{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;border-bottom:1px solid var(--line2)}
h2.ph2{font-size:15px;font-weight:500;letter-spacing:0;line-height:1.4}
.cell{padding:20px}
.tag{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line2);padding:2px 8px;white-space:nowrap;color:var(--muted)}
.tag i{width:7px;height:7px;background:currentColor}
.tag.ok{color:var(--ok);border-color:#2f4a31}
.tag.am{color:var(--amber);border-color:#5a4410}
.tag.bad{color:var(--bad);border-color:#5a2a25}
.kv{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-top:1px solid var(--line)}
.kv:first-child{border-top:0}
.kv>span:first-child{color:var(--muted);white-space:nowrap}
.kv>*:last-child{text-align:right;min-width:0;overflow-wrap:anywhere}
.btn.s{height:34px;padding:0 12px;font-size:14px;gap:8px}
.btn.x{color:var(--bad);border-color:#5a2a25}
.btn.x:hover{background:#1a0f0d;border-color:var(--bad)}
.btn.ok{background:var(--ok);border-color:var(--ok);color:#0a0a0a}
.btn.ok:hover{background:#a6e3aa}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));border:1px solid var(--line2);margin-bottom:24px}
.stats>div{padding:18px 20px}
.stats>div+div{border-left:1px solid var(--line2)}
.stats b{display:block;font-size:32px;font-weight:300;letter-spacing:-.02em;margin:6px 0 2px}
.stats small{color:var(--muted);font-size:13px}
table.t th{padding:10px 20px;border-bottom:1px solid var(--line2);color:var(--faint);white-space:nowrap}
table.t td{padding:13px 20px;border-bottom:1px solid var(--line);vertical-align:middle}
table.t tr:last-child td{border-bottom:0}
table.t tbody tr{transition:background .2s}
table.t tbody tr:hover td{background:#0f0f0e}
table.t td.r,table.t th.r{text-align:right}
.name{display:flex;align-items:center;gap:12px}
.name small{display:block;color:var(--faint);font-size:13px;line-height:1.3}
svg.ic{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ok{color:var(--ok)}.am{color:var(--amber)}.bad{color:var(--bad)}
.field{display:flex;align-items:center;gap:10px;height:38px;border:1px solid var(--line2);padding:0 12px;color:var(--faint);min-width:260px}
.seg{display:flex;border:1px solid var(--line2);max-width:100%;overflow-x:auto}
.seg a{white-space:nowrap}
.seg a{padding:7px 14px;color:var(--muted);font-size:14px}
.seg a+a{border-left:1px solid var(--line2)}
.seg a.on{background:#1a1a19;color:var(--text)}
.seg a:hover{color:var(--text)}
.toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.example{color:var(--faint);font-size:13px}
.scroll{overflow-x:auto}
@media (max-width:760px){nav .ac a.who{display:none}}
@media (max-width:900px){
 .app{grid-template-columns:1fr;align-content:start}
 .side{border-right:0;border-bottom:1px solid var(--line);padding:0;display:flex;overflow-x:auto;scrollbar-width:none}
 .side.more{mask-image:linear-gradient(to right,#000 calc(100% - 56px),transparent);-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 56px),transparent)}
 .side .grp,.side .sess{display:none}
 .side a{white-space:nowrap;padding:14px 16px;box-shadow:inset 0 -2px 0 transparent}
 .side a.on{box-shadow:inset 0 -2px 0 var(--amber)}
 .main{padding:24px 16px 40px}
 .ph{flex-direction:column;align-items:flex-start}.ph h1{font-size:32px}
 .stats>div+div{border-left:0;border-top:1px solid var(--line2)}
 .field{min-width:0;flex:1}
 table.t th,table.t td{padding-left:14px;padding-right:14px}
}
.sc-home .sigw{border:1px solid var(--line2);background:#0c0c0c}
.sc-home .sig-hd{display:flex;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--line)}
.sc-home .chart{display:block;width:100%;height:auto;padding:14px 12px 0}
.sc-home .chart .g{stroke:var(--line);stroke-width:1}
.sc-home .chart .ax{fill:var(--faint);font:11px 'IBM Plex Mono',monospace}
.sc-home .chart .lb{fill:var(--muted);font:11px 'IBM Plex Mono',monospace;paint-order:stroke;stroke:#0c0c0c;stroke-width:4px;stroke-linejoin:round}
.sc-home .chart .cv{fill:none;stroke:#55554f;stroke-width:1.5;transition:stroke .2s}
.sc-home .chart .cv.hot{stroke:var(--text);stroke-width:2}
.sc-home .chart .cur{stroke:var(--amber);stroke-width:1}
.sc-home .chart .dot{fill:#0c0c0c;stroke:var(--amber);stroke-width:1.5}
.sc-home .sig-ctl{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;padding:18px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sc-home .sig-ctl label{color:var(--muted);line-height:1.5}
.sc-home .sig-ctl output{font-size:34px;font-weight:300;letter-spacing:-.02em;min-width:112px;text-align:right;font-variant-numeric:tabular-nums}
.sc-home input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:28px;background:transparent;cursor:pointer}
.sc-home input[type=range]::-webkit-slider-runnable-track{height:2px;background:linear-gradient(90deg,var(--amber) var(--p,12%),var(--line2) var(--p,12%))}
.sc-home input[type=range]::-moz-range-track{height:2px;background:var(--line2)}
.sc-home input[type=range]::-moz-range-progress{height:2px;background:var(--amber)}
.sc-home input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;margin-top:-7px;background:var(--amber);border:3px solid #0c0c0c;outline:1px solid var(--amber)}
.sc-home input[type=range]::-moz-range-thumb{width:12px;height:12px;border-radius:0;background:var(--amber);border:3px solid #0c0c0c}
.sc-home .nets{margin:0}
.sc-home .nets th{padding:12px 20px 10px;border-bottom:1px solid var(--line)}
.sc-home .nets td{padding:13px 20px;border-top:0;border-bottom:1px solid var(--line);vertical-align:middle;transition:background .2s,color .2s}
.sc-home .nets td:first-child{font-weight:500}
.sc-home .nets tr.weak td{background:#141412}
.sc-home .nets tr.lost td{color:var(--faint)}
.sc-home .nets .kind{display:block;color:var(--faint);font-size:12px;line-height:1.3}
.sc-home .sig{display:inline-flex;align-items:center;gap:12px}
.sc-home .bars{display:flex;gap:3px;align-items:flex-end;height:14px}
.sc-home .bars i{width:4px;background:var(--line2)}
.sc-home .bars i:nth-child(1){height:4px}
.sc-home .bars i:nth-child(2){height:6.5px}
.sc-home .bars i:nth-child(3){height:9px}
.sc-home .bars i:nth-child(4){height:11.5px}
.sc-home .bars i:nth-child(5){height:14px}
.sc-home .bars i.on{background:var(--text)}
.sc-home .st{font:500 12px/1 'IBM Plex Mono',monospace;letter-spacing:.04em;text-transform:uppercase}
.sc-home .s-ok{color:var(--ok)}
.sc-home .s-rd{color:var(--text)}
.sc-home .s-br{color:var(--amber)}
.sc-home .s-no{color:var(--bad)}
.sc-home .sig-ft{padding:14px 20px;color:var(--faint);font-size:13px}
@media (max-width:760px){.sc-home .sig-hd{padding:12px 16px}
.sc-home .sig-hd span:last-child{display:none}
.sc-home .sig-ctl{grid-template-columns:1fr auto;gap:10px 16px;padding:16px}
.sc-home .sig-ctl input{grid-column:1/-1;grid-row:2}
.sc-home .nets th,.sc-home .nets td{padding-left:12px;padding-right:12px}
.sc-home .nets th:nth-child(2),.sc-home .nets td:nth-child(2){display:none}
.sc-home .sig{flex-direction:column;align-items:flex-start;gap:6px}
.sc-home .sig-ft{padding:12px 16px}}
.sc-home .hero{display:grid;grid-template-columns:1fr 520px;border-bottom:1px solid var(--line)}
.sc-home .hl{padding:72px 48px 44px;border-right:1px solid var(--line);display:flex;flex-direction:column}
.sc-home h1{font-size:84px;margin:0 0 28px}
.sc-home .lead{font-size:19px;color:var(--muted);max-width:540px;font-weight:300;line-height:1.55}
.sc-home .hl .btns{margin-top:40px}
.sc-home .spec{margin-top:auto;padding-top:56px;display:grid;grid-template-columns:1fr 1fr;column-gap:40px}
.sc-home .spec div{display:flex;justify-content:space-between;align-items:baseline;padding:13px 0;border-top:1px solid var(--line)}
.sc-home .spec b{font-size:17px;font-weight:400}
.sc-home .hero .diag{height:700px}
.sc-home .hero .diag img{top:34px;height:960px}
.sc-home .sec{display:grid;grid-template-columns:260px 1fr;border-bottom:1px solid var(--line);scroll-margin-top:60px}
.sc-home .sec>.k{padding:36px 24px;border-right:1px solid var(--line);color:var(--faint)}
.sc-home .sec>.k b{display:block;color:var(--text);font-weight:500;margin-top:6px}
.sc-home .sec>.k p{margin-top:18px;color:var(--muted);font-size:14px;line-height:1.55;text-transform:none;letter-spacing:0;font-family:'IBM Plex Sans',sans-serif}
.sc-home .sec>.v{padding:36px 48px 56px}
.sc-home .sub{margin-top:14px;color:var(--muted);max-width:620px}
.sc-home .cap{margin-top:36px}
.sc-home .cap td{padding:18px 0;border-top:1px solid var(--line);vertical-align:baseline}
.sc-home .cap td.n{width:64px;color:var(--amber)}
.sc-home .cap td.t{width:260px;font-size:18px}
.sc-home .cap td.d{color:var(--muted);padding-right:32px}
.sc-home .cap td.s{text-align:right;white-space:nowrap}
.sc-home .chip{display:inline-block;border:1px solid var(--line2);padding:2px 8px;color:var(--muted)}
.sc-home .cap tr{transition:background .2s}
.sc-home .cap tr:hover td{background:#0f0f0e}
.sc-home .sig-grid{margin-top:32px}
.sc-home .sig-grid .sigw{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
.sc-home .sig-grid .sig-hd,.sc-home .sig-grid .sig-ctl,.sc-home .sig-grid .sig-ft{grid-column:1/-1}
.sc-home .sig-grid .chart{grid-column:1;grid-row:2;align-self:center;padding:16px 12px 8px}
.sc-home .sig-grid .nets{grid-column:2;grid-row:2;border-left:1px solid var(--line)}
.sc-home .sig-grid .nets tr:last-child td{border-bottom:0}
.sc-home .sig-grid .sig-ctl{grid-row:3;border-bottom:0}
.sc-home .sig-grid .sig-ft{grid-row:4;border-top:1px solid var(--line)}
.sc-home .sig-grid .nets th:nth-child(2),.sc-home .sig-grid .nets td:nth-child(2){display:none}
.sc-home .steps{display:grid;grid-template-columns:repeat(4,1fr);margin-top:36px;position:relative}
.sc-home .steps:before{content:"";position:absolute;left:0;right:0;top:5px;height:1px;background:var(--line2)}
.sc-home .steps li{list-style:none;padding:28px 24px 0 0;position:relative}
.sc-home .steps li:before{content:"";position:absolute;left:0;top:0;width:11px;height:11px;background:var(--bg);border:1px solid var(--amber)}
.sc-home .steps li:first-child:before{background:var(--amber)}
.sc-home .steps .m{color:var(--amber)}
.sc-home .steps b{display:block;font-size:18px;font-weight:500;margin:8px 0 6px}
.sc-home .steps p{color:var(--muted);font-size:15px;max-width:240px}
.sc-home .req{display:grid;grid-template-columns:1fr 1fr;margin-top:36px;border:1px solid var(--line2)}
.sc-home .req>div{padding:32px}
.sc-home .req>div+div{border-left:1px solid var(--line2)}
.sc-home .amt{font-size:80px;font-weight:300;letter-spacing:-.04em;line-height:1;margin:16px 0 10px}
.sc-home .req .btns{margin-top:32px}
.sc-home .req small{display:block;margin-top:14px;color:var(--faint);font-size:13px}
.sc-home .row{display:flex;justify-content:space-between;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}
.sc-home .row:first-child{padding-top:4px}
.sc-home .row:last-child{border:0}
.sc-home .row span:last-child{color:var(--muted)}
.sc-home .row .ck{color:var(--amber)}
.sc-home .rv{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;margin-top:0;border:1px dashed var(--line2);padding:26px 28px}
.sc-home .rv p{color:var(--muted)}
@media (max-width:760px){.sc-home .hero{grid-template-columns:1fr}
.sc-home .hl{padding:40px 16px 32px;border-right:0}
.sc-home h1{font-size:48px;margin-bottom:20px}
.sc-home .lead{font-size:17px}
.sc-home .spec{grid-template-columns:1fr;padding-top:36px}
.sc-home .hero .diag{height:500px;border-top:1px solid var(--line)}
.sc-home .hero .diag img{height:700px}
.sc-home .co em{font-size:11px}
.sc-home .sec{grid-template-columns:1fr}
.sc-home .sec>.k{border-right:0;border-bottom:1px solid var(--line);padding:16px}
.sc-home .sec>.k p{display:none}
.sc-home .sec>.v{padding:24px 16px 40px}
.sc-home .sig-grid .sigw{display:block}
.sc-home .sig-grid .nets{border-left:0}
.sc-home .cap tr{display:grid;grid-template-columns:44px 1fr;border-top:1px solid var(--line);padding:14px 0}
.sc-home .cap td{border:0;padding:0;width:auto!important}
.sc-home .cap td.t{font-size:17px}
.sc-home .cap td.d{grid-column:2;margin-top:4px;padding:0}
.sc-home .cap td.s{display:none}
.sc-home .hero .co{display:none}
.sc-home .steps{grid-template-columns:1fr;gap:0}
.sc-home .steps:before{left:5px;right:auto;top:0;bottom:0;width:1px;height:auto}
.sc-home .steps li{padding:0 0 22px 30px}
.sc-home .steps li:before{top:6px}
.sc-home .req{grid-template-columns:1fr}
.sc-home .req>div{padding:24px 18px}
.sc-home .req>div+div{border-left:0;border-top:1px solid var(--line2)}
.sc-home .amt{font-size:64px}
.sc-home .rv{grid-template-columns:1fr;padding:20px 18px}}
.sc-dash .state{display:flex;align-items:center;gap:18px;padding:18px 22px;border:1px solid #2f4a31;background:#0d120d;margin-bottom:24px}
.sc-dash .state b{display:block;font-weight:500;font-size:18px}
.sc-dash .state .sq{width:12px;height:12px;background:var(--ok);flex:none}
.sc-dash .state .tag{margin-left:auto}
.sc-dash .g{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:24px;margin-bottom:24px}
.sc-dash .g>*{min-width:0}
@media (max-width:1100px){.sc-dash .g .hd{flex-wrap:wrap}}
.sc-dash .gnote{padding:14px 20px;border-top:1px solid var(--line);color:var(--muted);font-size:13px;line-height:1.55}
.sc-dash .gnote b{color:var(--amber);font-weight:500}
.sc-dash .key{display:flex;align-items:center;gap:6px;border:1px solid var(--line2);padding:6px;font-family:'IBM Plex Mono',monospace;font-size:14px}
.sc-dash .key span{flex:1;padding:0 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sc-dash .keyrow{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:14px;flex-wrap:wrap}
.sc-dash .keyrow span{color:var(--muted);font-size:14px}
.sc-dash .cl{margin-top:30px}
.sc-dash .cl .hdr{display:flex;justify-content:space-between;align-items:baseline}
.sc-dash .prog{display:flex;gap:3px;margin:8px 0 10px}
.sc-dash .prog b{flex:1;height:5px;background:var(--line2)}
.sc-dash .prog b.d{background:var(--amber)}
.sc-dash .ck{display:flex;gap:12px;align-items:center;padding:8px 0}
.sc-dash .ck i{width:18px;height:18px;border:1px solid var(--line2);display:grid;place-items:center;flex:none}
.sc-dash .ck i.d{background:var(--amber);border-color:var(--amber);color:#0a0a0a}
.sc-dash .ck.done span{color:var(--muted)}
.sc-dash .dl{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;border-top:1px solid var(--line)}
.sc-dash .dl:first-of-type{border-top:0}
.sc-dash .dl small{display:block;color:var(--faint);font-size:13px}
.sc-dash .wait{border:1px dashed var(--line2);padding:22px 24px}
.sc-dash .wait .lab{color:var(--faint);font-size:13px;margin-bottom:14px}
.sc-dash .wait .row1{display:flex;gap:16px;align-items:center}
.sc-dash .wait .row1 i{width:12px;height:12px;background:var(--amber);flex:none}
.sc-dash .wait b{font-weight:500;font-size:18px}
.sc-dash .chain{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-top:18px;font-size:14px}
.sc-dash .chain div{border-top:2px solid var(--line2);padding-top:10px;color:var(--faint)}
.sc-dash .chain div.d{border-color:var(--ok);color:var(--text)}
.sc-dash .chain div.c{border-color:var(--amber);color:var(--amber)}
@media (max-width:1100px){.sc-dash .g{grid-template-columns:1fr}}
@media (max-width:760px){.sc-dash .state{flex-wrap:wrap}
.sc-dash .state .tag{margin-left:0}
.sc-dash .chain{grid-template-columns:1fr}
.sc-dash .dl{flex-wrap:wrap}}
.sc-ad1 .q{display:grid;grid-template-columns:320px minmax(0,1fr);border:1px solid var(--line2)}
.sc-ad1 .ql{border-right:1px solid var(--line2)}
.sc-ad1 .ql .hd{border-bottom:1px solid var(--line2)}
.sc-ad1 .qi{display:block;padding:16px 20px;border-bottom:1px solid var(--line);box-shadow:inset 2px 0 0 transparent;transition:background .2s}
.sc-ad1 .qi:hover{background:#111110}
.sc-ad1 .qi.on{background:#141413;box-shadow:inset 2px 0 0 var(--amber)}
.sc-ad1 .qi .top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.sc-ad1 .qi b{font-weight:500}
.sc-ad1 .qi .meta{color:var(--muted);font-size:14px;margin:2px 0 10px}
.sc-ad1 .qi .res{display:flex;align-items:center;gap:8px;font-size:13px}
.sc-ad1 .ql .foot{padding:16px 20px;color:var(--faint);font-size:13px}
.sc-ad1 .qd{min-width:0;display:flex;flex-direction:column}
.sc-ad1 .who-h{display:flex;align-items:center;gap:16px;padding:22px 24px;border-bottom:1px solid var(--line2)}
.sc-ad1 .who-h h2{font-size:26px;font-weight:400;letter-spacing:-.01em}
.sc-ad1 .who-h .sub{color:var(--muted)}
.sc-ad1 .who-h .tags{margin-left:auto;display:flex;gap:8px}
.sc-ad1 .qgrid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
.sc-ad1 .qgrid>div{padding:22px 24px}
.sc-ad1 .qgrid>div+div{border-left:1px solid var(--line2)}
.sc-ad1 .qgrid h2{margin-bottom:10px}
.sc-ad1 .chk{display:grid;grid-template-columns:22px 1fr;gap:10px;padding:11px 0;border-top:1px solid var(--line)}
.sc-ad1 .chk:first-of-type{border-top:0}
.sc-ad1 .chk svg{margin-top:4px}
.sc-ad1 .chk small{display:block;color:var(--faint);font-size:13px}
.sc-ad1 .reason{padding:20px 24px;border-top:1px solid var(--line2)}
.sc-ad1 .reason label{display:block;font-weight:500;margin-bottom:8px}
.sc-ad1 .reason textarea{width:100%;min-height:78px;background:var(--raise);border:1px solid var(--line2);color:var(--text);font:15px/1.5 'IBM Plex Sans',sans-serif;padding:10px 12px;resize:vertical}
.sc-ad1 .reason textarea::placeholder{color:var(--faint)}
.sc-ad1 .reason textarea:focus{outline:none;border-color:var(--amber)}
.sc-ad1 .bar{margin-top:auto;display:flex;align-items:center;gap:12px;padding:16px 24px;border-top:1px solid var(--line2);background:var(--raise)}
.sc-ad1 .bar .btn[aria-disabled=true]{opacity:.45;pointer-events:none}
.sc-ad1 .bar p{margin-left:auto;color:var(--faint);font-size:13px;text-align:right}
@media (max-width:1100px){.sc-ad1 .q{grid-template-columns:1fr}
.sc-ad1 .ql{border-right:0;border-bottom:1px solid var(--line2)}
.sc-ad1 .qgrid{grid-template-columns:1fr}
.sc-ad1 .qgrid>div+div{border-left:0;border-top:1px solid var(--line2)}}
@media (max-width:760px){.sc-ad1 .who-h{flex-wrap:wrap}
.sc-ad1 .who-h .tags{margin-left:0}
.sc-ad1 .bar{flex-wrap:wrap}
.sc-ad1 .bar p{margin-left:0;text-align:left;flex-basis:100%}
.sc-ad1 .qgrid>div,.sc-ad1 .reason,.sc-ad1 .bar,.sc-ad1 .who-h{padding-left:16px;padding-right:16px}}
.sc-ad2 table.t td .acts{display:flex;gap:6px;justify-content:flex-end}
.sc-ad2 tr.sus td{color:var(--faint)}
.sc-ad2 tr.flag td{background:#12100a}
.sc-ad2 .flagline{display:flex;align-items:center;gap:8px;color:var(--amber);font-size:13px;margin-top:4px;white-space:nowrap}
.sc-ad2 td.ver small{display:block;font-size:12px}
.sc-ad2 td.seen{white-space:nowrap}
.sc-ad2 .cust table.t th,.sc-ad2 .cust table.t td{padding-left:12px;padding-right:12px}
.sc-ad2 .cust table.t th:first-child,.sc-ad2 .cust table.t td:first-child{padding-left:18px}
.sc-ad2 .cust table.t th:last-child,.sc-ad2 .cust table.t td:last-child{padding-right:14px}
.sc-ad2 table.t td .acts .btn{white-space:nowrap;padding:0 10px}
@media (max-width:1100px){.sc-ad2 table.t{min-width:860px}}
.sc-ad3 table.t td.when{white-space:nowrap}
.sc-ad3 .act{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.sc-ad3 .by{white-space:nowrap}
.sc-ad3 .by small{display:block;color:var(--faint);font-size:12px}
@media (max-width:1100px){.sc-ad3 table.t{min-width:860px}}
.sc-docs .doc{display:grid;grid-template-columns:260px minmax(0,1fr) 220px}
.sc-docs .doc .side{padding-bottom:40px}
.sc-docs .search{margin:20px 20px 4px;white-space:nowrap;font-size:14px;display:flex;align-items:center;gap:10px;height:38px;border:1px solid var(--line2);padding:0 12px;color:var(--faint);transition:border-color .2s}
.sc-docs .search:hover{border-color:#55554f}
.sc-docs .search kbd{margin-left:auto;font:11px 'IBM Plex Mono',monospace;border:1px solid var(--line2);padding:1px 5px}
.sc-docs .doc .side a{justify-content:flex-start;padding:6px 24px;font-size:15px}
.sc-docs .doc .side a s{text-decoration:none;color:var(--faint);font:12px 'IBM Plex Mono',monospace;width:28px;flex:none}
.sc-docs .doc .side a.on s{color:var(--amber)}
.sc-docs article{padding:36px 56px 64px;border-right:1px solid var(--line);min-width:0}
.sc-docs .crumb{color:var(--faint);font-size:14px;margin-bottom:22px}
.sc-docs .crumb a:hover{color:var(--text)}
.sc-docs article h1{font-size:52px}
.sc-docs .meta{display:flex;flex-wrap:wrap;margin:24px 0 28px;border:1px solid var(--line2);width:fit-content;font-size:14px;color:var(--muted)}
.sc-docs .meta div{padding:8px 14px}
.sc-docs .meta div+div{border-left:1px solid var(--line2)}
.sc-docs article p,.sc-docs article ol,.sc-docs article ul{color:#c9c9c5;max-width:66ch}
.sc-docs article p{margin-bottom:16px}
.sc-docs article b{color:var(--text);font-weight:500}
.sc-docs .step{display:grid;grid-template-columns:64px minmax(0,1fr);border-top:1px solid var(--line);padding-top:26px;margin-top:34px}
.sc-docs .step .n{color:var(--amber);font:500 13px 'IBM Plex Mono',monospace;padding-top:12px}
.sc-docs .step h2{font-size:32px;margin-bottom:12px}
.sc-docs ol{margin:4px 0 16px 20px}
.sc-docs ol li{margin-bottom:6px;padding-left:4px}
.sc-docs article ul{margin:4px 0 16px 20px;list-style:square}
.sc-docs article ul li{margin-bottom:6px;padding-left:4px}
.agree{display:grid;grid-template-columns:20px 1fr;gap:12px;align-items:start;margin:22px 0 4px;max-width:66ch;font-size:15px;color:#c9c9c5;cursor:pointer}
.agree input{width:18px;height:18px;margin-top:3px;align-self:start;accent-color:var(--amber)}
.btn[aria-disabled="true"]{opacity:.45;cursor:not-allowed}
.sc-docs .call{display:grid;grid-template-columns:22px 1fr;gap:12px;border:1px solid #5a4410;background:#120f07;padding:14px 18px;margin:18px 0;max-width:66ch}
.sc-docs .call.info{border-color:var(--line2);background:var(--raise)}
.sc-docs .call b{display:block}
.sc-docs .call span{color:var(--muted)}
.sc-docs .call svg{margin-top:3px}
.sc-docs pre{border:1px solid var(--line2);background:var(--raise);margin:14px 0 18px;max-width:66ch}
.sc-docs pre .h{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line2);padding:4px 6px 4px 14px;color:var(--faint);font:12px 'IBM Plex Sans',sans-serif}
.sc-docs pre .h a{padding:3px 10px;border:1px solid transparent}
.sc-docs pre .h a:hover{border-color:var(--line2);color:var(--text)}
.sc-docs pre code{display:block;padding:14px 16px;border:0;font:13.5px/1.7 'IBM Plex Mono',monospace;color:#d6d6d1;white-space:pre-wrap;overflow-wrap:anywhere}
.sc-docs pre .c{color:var(--faint)}
.sc-docs pre .k{color:var(--amber)}
.sc-docs code{font:13.5px 'IBM Plex Mono',monospace;border:1px solid var(--line2);padding:1px 6px}
.sc-docs .fig{height:220px;border:1px dashed var(--line2);display:grid;place-items:center;color:var(--faint);margin:16px 0 8px;max-width:66ch;background:var(--raise)}
.sc-docs .figcap{color:var(--faint);font-size:14px;margin-bottom:18px}
.sc-docs .help{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line2);padding:12px 12px 12px 18px;margin-top:48px;max-width:66ch}
.sc-docs .help div{display:flex;gap:8px}
/* Previous / next: always two equal halves across the full width of the page's section rules, so
   "previous" is always on the left and "next" always on the right, whatever the page is made of.
   A missing one is an empty half (the <span>), never a box stretched across. */
.sc-docs .pn{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:56px;padding-top:32px;border-top:1px solid var(--line)}
.sc-docs .pn a{display:block;padding:16px 18px;border:1px solid var(--line2);transition:background .2s,border-color .2s}
.sc-docs .pn a:hover{background:#111110;border-color:#55554f}
.sc-docs .pn>:nth-child(2){text-align:right}
.sc-docs .pn small{display:flex;align-items:center;gap:6px;color:var(--faint);font-size:13px;margin-bottom:4px}
.sc-docs .pn>:nth-child(2) small{justify-content:flex-end}
.sc-docs .toc{padding:36px 24px;position:sticky;top:60px;align-self:start}
.sc-docs .toc .t{color:var(--faint);margin-bottom:12px}
.sc-docs .toc a{display:block;color:var(--muted);font-size:14px;padding:5px 0 5px 12px;box-shadow:inset 1px 0 0 var(--line2)}
.sc-docs .toc a:hover{color:var(--text)}
.sc-docs .toc a.on{color:var(--text);box-shadow:inset 2px 0 0 var(--amber)}
@media (max-width:1100px){.sc-docs .doc{grid-template-columns:240px minmax(0,1fr)}
.sc-docs .toc{display:none}
.sc-docs article{border-right:0}}
@media (max-width:900px){.sc-docs .doc{grid-template-columns:1fr}
.sc-docs .doc .side{display:none}
.sc-docs article{padding:28px 16px 48px}
.sc-docs article h1{font-size:38px}
.sc-docs .step{grid-template-columns:1fr}
.sc-docs .step .n{padding:0 0 6px}
.sc-docs .step h2{font-size:26px}}
.sc-status .st{display:grid;grid-template-columns:260px minmax(0,1fr)}
.sc-status .st .side{padding:32px 24px;color:var(--faint)}
.sc-status .st .side dl div{margin-bottom:20px}
.sc-status .st .side dd{color:var(--text);font-size:15px;margin-top:2px}
.sc-status .big{display:flex;align-items:center;gap:20px;border:1px solid #2f4a31;background:#0d120d;padding:22px 26px;margin-bottom:24px}
.sc-status .big .sq{width:14px;height:14px;background:var(--ok);flex:none}
.sc-status .big h1{font-size:40px}
.sc-status .big .tag{margin-left:auto}
.sc-status .secthd{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin:36px 0 12px}
.sc-status .secthd h2{font-size:32px}
.sc-status .legend{display:flex;gap:16px;color:var(--faint);font-size:13px}
.sc-status .legend i{display:inline-block;width:8px;height:8px;margin-right:6px}
.sc-status .comp{padding:18px 22px;border-top:1px solid var(--line)}
.sc-status .comp:first-child{border-top:0}
.sc-status .comp .row{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}
.sc-status .comp b{font-weight:500}
.sc-status .comp small{display:block;color:var(--muted);font-size:14px}
.sc-status .uptime{display:flex;gap:2px;height:28px}
.sc-status .uptime i{flex:1;background:#5f8f63;transition:opacity .15s}
.sc-status .uptime i.w{background:var(--amber)}
.sc-status .uptime i:hover{opacity:.6}
.sc-status .ax{display:flex;justify-content:space-between;margin-top:6px;color:var(--faint);font-size:13px}
.sc-status .inc{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:24px;padding:18px 22px;border-top:1px solid var(--line)}
.sc-status .inc:first-child{border-top:0}
.sc-status .inc>.tag{align-self:start}
.sc-status .inc b{font-weight:500;display:block}
.sc-status .inc p{color:var(--muted)}
.sc-status .inc .when{color:var(--faint);font-size:14px}
@media (max-width:900px){.sc-status .st{grid-template-columns:1fr}
.sc-status .st .side{border-right:0;border-bottom:1px solid var(--line);padding:16px}
.sc-status .st .side dl{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sc-status .st .side dl div{margin:0}}
@media (max-width:760px){.sc-status .big{flex-wrap:wrap}
.sc-status .big h1{font-size:30px}
.sc-status .big .tag{margin-left:0}
.sc-status .secthd{flex-direction:column}
.sc-status .inc{grid-template-columns:1fr;gap:6px}
.sc-status .uptime{gap:1px}}
/* ---- shared additions for the preview (new pages, brand, preview chrome) ---- */
nav .id .bm{height:17px;width:79px;fill:currentColor;flex:none;display:block}
nav .id{gap:10px}
[hidden]{display:none!important}

/* flow pages: sign in, licence key, game, waiting, password */
.flow{border-bottom:1px solid var(--line)}
.fl-in{max-width:740px;margin:0 auto;padding:56px 32px 72px}
.flow h1{font-size:52px;margin:10px 0 18px}
.lead2{font-size:18px;color:var(--muted);font-weight:300;line-height:1.55;margin-bottom:28px;max-width:62ch}
.lead2 b,.note b{color:var(--text);font-weight:500}
.note{margin-top:18px;color:var(--faint);font-size:14px}
.flow .btns{margin-top:24px}
.lbl{display:block;font-weight:500;margin:18px 0 8px}
.lbl:first-child{margin-top:0}
.inp{border:1px solid var(--line2);background:var(--raise);display:flex}
.inp:focus-within{border-color:var(--amber)}
.inp input{flex:1;min-width:0;background:none;border:0;color:var(--text);padding:12px 14px;font-size:14px;outline:none}
.inp input::placeholder{color:var(--faint);font-family:'IBM Plex Sans',sans-serif}
.human{display:flex;align-items:center;gap:10px;margin-top:16px;border:1px dashed var(--line2);padding:12px 14px;color:var(--faint);font-size:14px}
.result{margin-top:22px;border-top:1px solid var(--line2);padding-top:10px}
.flow .chk{display:grid;grid-template-columns:22px 1fr;gap:10px;padding:11px 0;border-top:1px solid var(--line)}
.flow .chk:first-child{border-top:0}
.flow .chk svg{margin-top:4px}
.flow .chk small{display:block;color:var(--faint);font-size:13px}
.call2{display:grid;grid-template-columns:22px 1fr;gap:12px;border:1px solid var(--line2);background:var(--raise);padding:14px 18px;margin-top:24px}
.call2.warn{border-color:#5a4410;background:#120f07}
.call2.warn>svg{color:var(--amber)}
.call2 svg{margin-top:4px}
.call2>div>b:first-child{display:block}
.call2 b{font-weight:500}
.call2 span{color:var(--muted)}
.away{border:1px dashed var(--line2);padding:26px 28px;background:repeating-linear-gradient(135deg,transparent 0 14px,#0f0f0e 14px 15px)}
.away p{margin-top:10px;color:var(--muted);max-width:60ch}
.away p b{color:var(--text);font-weight:500}
.fl-chain{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:6px;margin:0 0 30px!important;font-size:14px}
.fl-chain div{border-top:2px solid var(--line2);padding-top:10px;color:var(--faint)}
.fl-chain div .m{display:block;margin-bottom:2px}
.fl-chain div.d{border-color:var(--ok);color:var(--text)}
.fl-chain div.c{border-color:var(--amber);color:var(--amber)}
.seg.pick{width:fit-content;margin-bottom:6px}
.big-key{padding:10px!important}
.big-key span{font-size:15px;color:var(--text);white-space:normal!important;overflow-wrap:anywhere;user-select:all}
.ol2{margin:0 0 0 20px;color:#c9c9c5}
.ol2 li{margin:4px 0;padding-left:4px}
.ol2 b{color:var(--text);font-weight:500}
.agree{display:flex;align-items:center;gap:12px;margin-top:26px;cursor:pointer}
.agree input{width:18px;height:18px;accent-color:var(--amber)}
.btn.is-off{opacity:.35;pointer-events:none}
.quote{font-size:17px;border-left:2px solid var(--amber);padding-left:14px}
.sc-dash .state.bad-state{border-color:#5a2a25;background:#140d0c}
.sc-dash .state.bad-state .sq{background:var(--bad)}

@media (max-width:760px){
 .fl-in{padding:32px 16px 56px}
 .flow h1{font-size:36px}
 .lead2{font-size:16px}
 .fl-chain{grid-template-columns:1fr 1fr!important;row-gap:14px}
 .away{padding:20px 18px}
}

/* ---- the intro: black curtain, bars draw, fill, wordmark slides out, curtain lifts. 3.5 s, not skippable ---- */
.intro{position:fixed;inset:0;z-index:100;background:#000;display:grid;place-items:center;border-bottom:1px solid var(--amber);
 animation:intro-lift .65s cubic-bezier(.76,0,.24,1) 2.85s forwards;--h:clamp(44px,8vw,76px)}
.intro .mark{display:flex;align-items:flex-start}
.intro .icon{height:var(--h);width:calc(var(--h)*276/110);overflow:visible;flex:none}
.intro .bar{fill:#ededeb;fill-opacity:0;stroke:#ededeb;stroke-width:3}
.intro .b1{stroke-dasharray:618;stroke-dashoffset:618;animation:intro-draw 1s ease-in-out .1s forwards,intro-fill .4s ease 1.1s forwards}
.intro .b2{stroke-dasharray:406;stroke-dashoffset:406;animation:intro-draw .9s ease-in-out .3s forwards,intro-fill .4s ease 1.2s forwards}
.intro .word{overflow:hidden;max-width:0;margin-top:calc(var(--h)*-42/110);animation:intro-open .8s cubic-bezier(.22,1,.36,1) 1.55s forwards}
.intro .word svg{display:block;height:calc(var(--h)*214/110);width:calc(var(--h)*695/110);margin-left:calc(var(--h)*53/110);fill:#ededeb;transform:translateX(-100%);animation:intro-slide .8s cubic-bezier(.22,1,.36,1) 1.55s forwards}
@keyframes intro-draw{to{stroke-dashoffset:0}}
@keyframes intro-fill{to{fill-opacity:1;stroke-opacity:0}}
@keyframes intro-open{to{max-width:calc(var(--h)*748/110)}}
@keyframes intro-slide{to{transform:translateX(0)}}
@keyframes intro-lift{to{transform:translateY(-100%)}}
.intro-seen .intro{display:none}
html.intro-on{overflow:hidden}
@media (prefers-reduced-motion:reduce){.intro{display:none}}

.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,12px);z-index:60;max-width:min(560px,calc(100vw - 32px));background:var(--text);color:var(--bg);padding:12px 16px;font-size:14px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}
.toast.on{opacity:1;transform:translate(-50%,0)}
.toast.bad{background:var(--bad)}

[data-s="s1"]{left:24px;top:180px!important}
[data-s="s2"]{width:92px!important}
[data-s="s3"]{right:24px;top:500px!important}
[data-s="s4"]{width:70px!important}
[data-s="s5"]{left:24px;top:628px!important}
[data-s="s6"]{width:118px!important}
[data-s="s7"]{background:#5f8f63!important}
[data-s="s8"]{background:var(--amber)!important}
[data-s="s9"]{margin-top:24px!important}
[data-s="s10"]{font-size:14px!important}
[data-s="s11"]{font-size:15px;font-weight:500!important}
[data-s="s12"]{margin-top:30px!important}
[data-s="s13"]{margin-top:14px!important}

/* ---- additions for the real site (forms, buttons as <button>, status legend, admin) ---- */
button.btn{font:inherit;font-weight:500;background:transparent;color:inherit;cursor:pointer;border-radius:0}
button.btn.s{font-size:14px}
button.btn:disabled{opacity:.5;cursor:wait}
button.btn[aria-disabled="true"]{opacity:.35;pointer-events:none}
.err{margin-top:14px;color:var(--bad);font-size:14px}
.ts{margin-top:16px;min-height:65px}
.mt24{margin-top:24px}
.fs14{font-size:14px}
form.box{display:block}
.uptime i.b{background:var(--bad)}
.uptime i.n{background:var(--line2)}
.legend .lg-ok{background:#5f8f63}.legend .lg-w{background:var(--amber)}.legend .lg-b{background:var(--bad)}.legend .lg-n{background:var(--line2)}
.sc-status .big.degraded{border-color:#5a4410;background:#120f07}.sc-status .big.degraded .sq{background:var(--amber)}
.who.acc{display:flex;align-items:center;gap:10px;padding:0 24px;border-left:1px solid var(--line)}
.side .ct:empty{display:none}
.seg button{font:inherit;font-size:14px;background:none;border:0;color:var(--muted);padding:7px 14px;cursor:pointer}
.seg button+button{border-left:1px solid var(--line2)}
.seg button.on{background:#1a1a19;color:var(--text)}
.field input{flex:1;min-width:0;background:none;border:0;color:var(--text);font:inherit;font-size:14px;outline:none}
.qi{width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--line);color:inherit;font:inherit;cursor:pointer}
.alert-item{display:block;padding:8px 24px;color:var(--amber);font-size:14px}
.nf{padding:96px 48px}
@media (max-width:760px){.who.acc{display:none}.nf{padding:56px 16px}}
.lic-pick{margin:-8px 0 24px;width:fit-content;max-width:100%}

/* ---- phone menu (built by app.js): one button, a full-height panel under the bar ---- */
.mb{display:none;align-items:center;gap:10px;padding:0 18px;border:0;border-left:1px solid var(--line);background:none;color:var(--text);cursor:pointer}
.mb .mi{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;flex:none}
.mb .x{display:none}.mb[aria-expanded=true] .o{display:none}.mb[aria-expanded=true] .x{display:inline}
.mb[aria-expanded=true]{background:#151514}
.mb:hover{background:#151514}
@media (max-width:760px){.mb{display:flex}}
@media (max-width:900px){.sc-docs .mb{display:flex}}
html.menu-open{overflow:hidden}
.mnav{position:fixed;top:61px;left:0;right:0;bottom:0;z-index:4;background:var(--bg);overflow-y:auto;overscroll-behavior:contain;padding-bottom:40px;animation:mnav-in .22s cubic-bezier(.16,1,.3,1)}
@keyframes mnav-in{from{opacity:0;transform:translateY(-6px)}}
.mnav .msec{border-bottom:1px solid var(--line);padding-bottom:10px}
.mnav .mh{padding:22px 16px 8px;color:var(--faint)}
.mnav .msec>a{display:flex;align-items:center;gap:12px;min-height:48px;padding:0 16px;font-size:17px;color:var(--muted);box-shadow:inset 2px 0 0 transparent}
.mnav .msec>a.on,.mnav .msec>a.acct{color:var(--text)}
.mnav .msec>a.on{box-shadow:inset 2px 0 0 var(--amber)}
.mnav .msec>a:active,.mnav .side a:active{background:#111110}
.mnav .side{border-right:0;padding-bottom:0}
.mnav .side .grp{padding:16px 16px 6px}
.mnav .side a{padding:11px 16px;justify-content:flex-start}
.mnav .side a s{text-decoration:none;color:var(--faint);font:12px 'IBM Plex Mono',monospace;width:34px;flex:none}
@media (prefers-reduced-motion:reduce){.mnav{animation:none}}
.mnav .side a{font-size:16px}
.mnav .side a.on s{color:var(--amber)}

@media (max-width:760px){.sc-dash .side a:not([href^="#"]){display:none}.sc-dash .side a{padding:14px 13px}}

/* ---- polish, 2026-09-23 ---- */
/* A pre's own font is monospace, so its 66ch was wider than a callout's 66ch: measure both in the text's ch. */
.sc-docs pre{font-family:inherit}
.sc-status .legend{flex-wrap:wrap;gap:6px 16px}
.sc-status .legend span{white-space:nowrap}
@media (max-width:760px){
 .sc-docs .meta{border:0;gap:8px}
 .sc-docs .meta div,.sc-docs .meta div+div{border:1px solid var(--line2)}
 .fl{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:14px 26px}
}
/* the home page's questions: question left, answer right, the capability table's rhythm */
.sc-home .faq{margin:36px 0 32px}
.sc-home .faq>div{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:8px 40px;padding:22px 0;border-top:1px solid var(--line)}
.sc-home .faq h3{font-size:18px;font-weight:400;line-height:1.4;text-wrap:balance}
.sc-home .faq p{color:var(--muted);line-height:1.6;max-width:62ch}
.sc-home .faq p a{color:var(--amber)}
.sc-home .faq p a:hover{text-decoration:underline;text-underline-offset:3px}
.sc-home .faq code{font:14px 'IBM Plex Mono',monospace;color:var(--text);border:1px solid var(--line2);padding:1px 6px;white-space:nowrap}
@media (max-width:760px){.sc-home .faq>div{grid-template-columns:1fr;padding:18px 0}}
/* the manual's chapter list inside the phone menu is a list, not the dashboard's sideways tab row */
.mnav .side{display:block;overflow:visible;border-bottom:0;-webkit-mask-image:none;mask-image:none}
.mnav .side .grp{display:block}
.mnav .side a{white-space:normal;box-shadow:inset 2px 0 0 transparent}
.mnav .side a.on{box-shadow:inset 2px 0 0 var(--amber)}
@media (max-width:760px){nav .ac a,.mb{padding:0 14px;white-space:nowrap}}
/* The manual has a third column (On this page, 220px). Give the footer the same three columns so
   Discord and Payhip sit exactly under it instead of 30-odd pixels off its line. */
@media (min-width:1101px){
 .sc-docs footer .wrap{grid-template-columns:260px minmax(0,1fr) 220px}
 .sc-docs .soc a{flex:1;justify-content:center;padding:0 10px}
}
/* ---- manual, session 6: settings tables, the questions page, hand-drawn flow charts ---- */
.sc-docs .sets{margin:12px 0 18px;max-width:66ch;font-size:14px;line-height:1.5}
.sc-docs .sets th{text-align:left;font:12px 'IBM Plex Mono',monospace;color:var(--faint);padding:8px 14px 8px 0;border-bottom:1px solid var(--line2);font-weight:400}
.sc-docs .sets td{padding:11px 14px 11px 0;border-bottom:1px solid var(--line);vertical-align:top;color:#c9c9c5}
.sc-docs .sets td:first-child{font:13px/1.5 'IBM Plex Mono',monospace;color:var(--text)}
.sc-docs .sets th:last-child,.sc-docs .sets td:last-child{padding-right:0;text-align:right}
.sc-docs .sets td:last-child{font:13px/1.5 'IBM Plex Mono',monospace;color:var(--amber);white-space:nowrap}
.sc-docs .sets code{font-size:12.5px;padding:0 4px}
.sc-docs .qa>div{padding:18px 0 4px;border-top:1px solid var(--line);max-width:66ch}
.sc-docs .qa>div:first-child{border-top:0;padding-top:4px}
.sc-docs .qa h3{font-size:18px;font-weight:500;line-height:1.4;margin-bottom:6px}
.sc-docs .fc{display:block;width:100%;max-width:440px;height:auto;margin:20px 0 10px}
.sc-docs .fc .bx{fill:var(--raise);stroke:var(--line2);stroke-width:1}
.sc-docs .fc .bx.a{stroke:var(--amber)}
.sc-docs .fc .bx.q{stroke:#55554f}
.sc-docs .fc .bx.ok{stroke:var(--ok)}
.sc-docs .fc a .bx{transition:fill .2s}
.sc-docs .fc a:hover .bx,.sc-docs .fc a:focus-visible .bx{fill:#1a150a}
.sc-docs .fc .lane{fill:none}
.sc-docs .fc .lane.alt{fill:#0f0f0e}
.sc-docs .fc .sw{fill:var(--raise);stroke:var(--line2)}
.sc-docs .fc .sw.a{stroke:var(--amber)}
.sc-docs .fc .ln{fill:none;stroke:#55554f;stroke-width:1.2}
.sc-docs .fc .ln.a{stroke:var(--amber)}
.sc-docs .fc .hd{fill:#55554f}
.sc-docs .fc .hd.a{fill:var(--amber)}
.sc-docs .fc .t{fill:var(--text);font:500 12.5px 'IBM Plex Sans',sans-serif}
.sc-docs .fc .s{fill:var(--muted);font:11px 'IBM Plex Sans',sans-serif}
.sc-docs .fc .m{fill:var(--faint);font:10.5px 'IBM Plex Mono',monospace;letter-spacing:.06em}
.sc-docs .fc .k,.sc-docs .fc .k2{fill:var(--amber);font:500 12px 'IBM Plex Mono',monospace}
.sc-docs .fc .k2{font-size:10.5px;letter-spacing:.06em}
.sc-docs .fc .yes{fill:var(--ok);font:10.5px 'IBM Plex Mono',monospace}
.sc-docs .fc .no{fill:var(--amber);font:10.5px 'IBM Plex Mono',monospace;text-anchor:middle}
@media (max-width:900px){.sc-docs .sets thead{display:none}
.sc-docs .sets tr{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;border-bottom:1px solid var(--line);padding:10px 0}
.sc-docs .sets td{border:0;padding:0}
.sc-docs .sets td:first-child{grid-column:1;grid-row:1;overflow-wrap:anywhere}
.sc-docs .sets td:last-child{grid-column:2;grid-row:1}
.sc-docs .sets td:nth-child(2){grid-column:1/-1;grid-row:2;padding-top:4px}
.sc-docs .fc{max-width:none}}
#maint{margin-top:8px}

/* Studio plugin box (LAUNCH ROUND 7a) */
.sc-dash .studio{margin-bottom:24px}
.sc-dash .studio-row{display:flex;gap:0;max-width:420px}
.sc-dash .studio-row .inp{flex:1}
.sc-dash .studio-row .btn{height:auto;border-left:0}
.sc-dash .studio-hd{border-top:1px solid var(--line)}
