*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}:root{--paper:#eff1ec;--band:#e4e9e1;--card:#f7f8f5;--ink:#12171a;--ink-soft:#2b3439;--muted:#59635e;--rule:#ccd4cb;--rule-soft:#dde3da;--marker:#f2e85c;--ledger:#0f5c46;--surface:#fff;--on-ledger:#eaf2ee;--on-marker:#12171a;--mark-bg:#12171a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace;--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Helvetica,Arial,sans-serif}:root[data-theme=dark]{--paper:#10140f;--band:#0b0f0b;--card:#191d18;--surface:#1e241d;--ink:#ecefe8;--ink-soft:#b7c0b4;--muted:#828d80;--rule:#2c332b;--rule-soft:#232a22;--ledger:#37a97c;--on-ledger:#07130d;--mark-bg:#232a21;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#10140f;--band:#0b0f0b;--card:#191d18;--surface:#1e241d;--ink:#ecefe8;--ink-soft:#b7c0b4;--muted:#828d80;--rule:#2c332b;--rule-soft:#232a22;--ledger:#37a97c;--on-ledger:#07130d;--mark-bg:#232a21;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}html{-webkit-text-size-adjust:100%;background:var(--paper)}.mark rect{fill:var(--mark-bg)}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.6}a{color:inherit}button{font:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:2px}.app{grid-template-columns:250px minmax(0,1fr);min-height:100vh;display:grid}.side{background:var(--band);border-right:1px solid var(--rule);flex-direction:column;align-self:start;gap:22px;height:100vh;padding:24px 16px 20px;display:flex;position:sticky;top:0;overflow-y:auto}.side .top{align-items:center;gap:9px;padding:0 6px;display:flex}.topmark{align-items:center;gap:9px;display:inline-flex}.burger{border:1px solid var(--rule);background:var(--card);width:38px;height:38px;color:var(--ink);border-radius:9px;justify-content:center;align-items:center;display:none}.burger:hover{border-color:var(--ink)}.side .brand{letter-spacing:-.01em;font-size:16px;font-weight:700}.snav{flex-direction:column;gap:1px;display:flex}.snav a{font-family:var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--muted);border-radius:8px;align-items:center;gap:10px;padding:9px 11px;font-size:12px;text-decoration:none;transition:background .12s,color .12s;display:flex}.snav a:hover{background:var(--card);color:var(--ink)}.snav a.on{background:var(--card);color:var(--ink);box-shadow:inset 2px 0 0 var(--marker)}.snav a .d{background:var(--rule);border-radius:50%;flex:none;width:5px;height:5px}.snav a:hover .d,.snav a.on .d{background:var(--ledger)}.psk{background:var(--card);border:1px solid var(--rule);border-radius:16px;height:220px;margin-top:16px;animation:1.3s ease-in-out infinite pulse}.sfoot{border-top:1px solid var(--rule);color:var(--muted);flex-direction:column;gap:12px;margin-top:auto;padding:16px 8px 0;font-size:13px;display:flex}.sfoot .who{line-height:1.45}.sfoot .who b{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:600;display:block;overflow:hidden}.sfoot a,.sfoot button{color:var(--muted);text-align:left;background:0 0;border:0;padding:0;text-decoration:none}.sfoot a:hover,.sfoot button:hover{color:var(--ink)}.sfoot .tgl{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);border:1px solid var(--rule);background:0 0;border-radius:999px;align-self:flex-start;align-items:center;gap:8px;padding:6px 13px 6px 11px;font-size:11px;transition:background .12s,border-color .12s;display:inline-flex}.sfoot .tgl:hover{background:var(--card);border-color:var(--ink);color:var(--ink)}.sfoot .tgl svg{flex:none;width:15px;height:15px}.switch{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--rule);color:var(--ink);background:0 0;border-radius:999px;align-self:flex-start;align-items:center;gap:7px;padding:6px 13px;font-size:11px;display:inline-flex}.switch:hover{background:var(--card)}.wsmenu{flex-direction:column;gap:2px;display:flex}.wsmenu button{text-align:left;width:100%;color:var(--ink);background:0 0;border:0;border-radius:8px;padding:8px 10px;font-size:13px;display:block}.wsmenu button:hover{background:var(--card)}.wsmenu button.on{background:var(--card);box-shadow:inset 2px 0 0 var(--marker)}.wsmenu .m{font-family:var(--mono);color:var(--muted);margin-top:2px;font-size:10.5px;display:block}.mainc{width:100%;max-width:940px;padding:38px clamp(20px,4vw,52px) 72px}.apphead h1{letter-spacing:-.02em;font-size:clamp(26px,3vw,34px);line-height:1.1}.apphead .status{font-family:var(--mono);color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;font-size:12.5px;display:flex}.tiles{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:13px;margin:26px 0 8px;display:grid}.tile{background:var(--card);border:1px solid var(--rule);border-radius:14px;padding:16px 17px}.tile .k{font-family:var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-bottom:9px;font-size:10px;display:block}.tile .v{letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:23px;font-weight:700;line-height:1.15}.tile .v .figd{color:var(--muted);font-size:15px;font-weight:400}.tile .s{font-family:var(--mono);color:var(--muted);margin-top:4px;font-size:11px;display:block}.sect{background:var(--surface);border:1px solid var(--rule);border-radius:16px;margin-top:16px;padding:22px 24px}.sect h2{letter-spacing:-.01em;margin-bottom:2px;font-size:16px}.small{color:var(--ink-soft);font-size:14px;line-height:1.6}.small.muted{color:var(--muted)}.pill{font-family:var(--mono);letter-spacing:.13em;text-transform:uppercase;border:1.5px solid var(--rule);border-radius:2px;padding:2px 8px;font-size:10px;font-weight:600;display:inline-block}.pill.ok{background:var(--ledger);border-color:var(--ledger);color:var(--on-ledger)}.pill.okline{color:var(--ledger);border-color:var(--ledger)}.pill.warn{background:var(--marker);border-color:var(--on-marker);color:var(--on-marker)}.pill.stop{background:var(--ink);border-color:var(--ink);color:var(--paper)}.pill.dim{color:var(--muted)}.meter{background:var(--paper);border:1px solid var(--rule);border-radius:999px;height:9px;margin-top:16px;overflow:hidden}.meter .fill{background:var(--ledger);border-radius:999px;height:100%}.meter .fill.over{background:var(--marker)}.fig{font-family:var(--mono);color:var(--ink-soft);font-variant-numeric:tabular-nums;margin-top:10px;font-size:12.5px}.fig b{color:var(--ink);font-size:15px}.figd{color:var(--muted)}.chart{margin-top:22px}.cbars{border-bottom:1px solid var(--rule);align-items:flex-end;gap:4px;height:92px;padding:0 2px;display:flex}.cb{background:var(--rule);border-radius:2px 2px 0 0;flex:1;min-width:0}.cb.hi{background:var(--ledger)}.cx{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);justify-content:space-between;gap:8px;margin-top:7px;font-size:10.5px;display:flex}.tblwrap{background:var(--paper);border:1px solid var(--rule);border-radius:8px;margin-top:14px;overflow-x:auto}.led{border-collapse:collapse;width:100%;font-size:13.5px;line-height:1.5}.led th{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-align:left;border-bottom:1px solid var(--rule);white-space:nowrap;background:color-mix(in srgb,var(--band) 55%,transparent);padding:9px 10px;font-size:10px;font-weight:500}.led td{border-bottom:1px solid var(--rule-soft);white-space:nowrap;font-variant-numeric:tabular-nums;padding:7px 10px}.led tr:last-child td{border-bottom:0}.led .t{font-family:var(--mono);font-size:12px}.out{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;font-size:10px}.out.ok{color:var(--ledger);font-weight:600}.out.ref{background:var(--marker);border:1px solid var(--on-marker);color:var(--on-marker);border-radius:2px;padding:1px 6px;font-weight:600}.out.off{color:var(--muted)}.copyrow{gap:8px;margin-top:8px;display:flex}.copyurl{min-width:0;font-family:var(--mono);background:var(--card);border:1px solid var(--rule);color:var(--ink-soft);border-radius:8px;flex:1;padding:12px 14px;font-size:12.5px}.copybtn{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--ink);color:var(--ink);white-space:nowrap;background:0 0;border-radius:8px;padding:0 15px;font-size:11px}.copybtn:hover{background:var(--ink);color:var(--paper)}.key{background:var(--paper);border:1px solid var(--rule);font-family:var(--mono);color:var(--ink-soft);overflow-wrap:anywhere;border-radius:8px;margin-top:14px;padding:13px 16px;font-size:12.5px;line-height:1.75}.appcta{font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;border:1px solid var(--ink);color:var(--ink);background:0 0;border-radius:8px;align-items:center;gap:8px;margin-top:4px;padding:9px 15px;font-size:12px;text-decoration:none;display:inline-flex}.appcta:hover{background:var(--ink);color:var(--paper)}.appcta.danger{border-color:var(--rule);color:var(--muted)}.appcta.danger:hover{background:var(--marker);border-color:var(--on-marker);color:var(--on-marker)}.actionrow{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.note{background:var(--card);border:1px solid var(--rule-soft);color:var(--ink-soft);border-radius:8px;margin-top:16px;padding:14px 16px;font-size:13.5px}.note .nk{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-size:10.5px;display:block}.note.warn{box-shadow:inset 3px 0 0 var(--marker)}.devset{border-top:1px solid var(--rule-soft);margin-top:16px;padding-top:14px}.devset summary{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);cursor:pointer;font-size:11px;list-style:none}.devset summary::-webkit-details-marker{display:none}.devset summary:hover,.devset[open] summary{color:var(--ink)}.center{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.center .box{text-align:center;max-width:420px}.center h1{letter-spacing:-.01em;margin-bottom:8px;font-size:22px}.center p{color:var(--muted)}.skel{background:var(--card);border:1px solid var(--rule);border-radius:14px;height:80px;animation:1.3s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.snav .grp{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);opacity:.8;padding:15px 11px 5px;font-size:9.5px;display:block}.setuphd{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.cprog-n{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px}.prog{background:var(--paper);border:1px solid var(--rule);border-radius:999px;height:8px;margin:14px 0 4px;overflow:hidden}.prog-fill{background:var(--ledger);border-radius:999px;height:100%;transition:width .3s}.check{border-top:1px solid var(--rule-soft);margin-top:14px;list-style:none}.crow{border-bottom:1px solid var(--rule-soft);gap:14px;padding:18px 2px;display:flex}.crow:last-child{border-bottom:0}.cmark{border:1.5px solid var(--rule);width:30px;height:30px;font-family:var(--mono);color:var(--muted);background:var(--card);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.crow.is-done .cmark{background:var(--ledger);border-color:var(--ledger);color:var(--on-ledger)}.cbody{flex:1;min-width:0}.ctitle{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ctitle h3{letter-spacing:-.01em;font-size:15px}.crow.is-done .ctitle h3{color:var(--muted)}.starters{flex-direction:column;gap:7px;margin:12px 0 2px;list-style:none;display:flex}.starter{font-family:var(--mono);color:var(--ink-soft);background:var(--card);border:1px solid var(--rule-soft);border-radius:8px;padding:9px 12px;font-size:12.5px;line-height:1.5}.starter-q{color:var(--muted)}.setw{z-index:40;background:var(--surface);border:1px solid var(--rule);border-radius:999px;align-items:stretch;display:flex;position:fixed;bottom:clamp(12px,3vw,24px);right:clamp(12px,3vw,24px);box-shadow:0 6px 24px #00000024}.setw-open{color:var(--ink);background:0 0;border:0;border-radius:999px 0 0 999px;align-items:center;gap:9px;padding:10px 8px 10px 16px;display:flex}.setw-open:hover{background:var(--card)}.setw-dot{background:var(--marker);border-radius:50%;flex:none;width:7px;height:7px}.setw-k{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;font-size:11px}.setw-n{font-family:var(--mono);color:var(--on-ledger);background:var(--ledger);font-variant-numeric:tabular-nums;border-radius:999px;padding:2px 8px;font-size:11px}.setw-x{border:0;border-left:1px solid var(--rule);color:var(--muted);background:0 0;border-radius:0 999px 999px 0;padding:0 13px;font-size:16px;line-height:1}.setw-x:hover{color:var(--ink);background:var(--card)}.banner{margin-top:14px}.banner .meter{margin:0 0 10px}.banner-line{margin-top:0}.tglsw{border:1px solid var(--rule);background:var(--card);color:var(--muted);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;align-items:center;gap:8px;padding:4px 6px 4px 12px;font-size:10px;display:inline-flex}.tglsw:hover{border-color:var(--ink)}.tglsw-t{text-align:right;min-width:20px}.tglsw-h{background:var(--rule);border-radius:999px;flex:none;width:34px;height:18px;transition:background .15s;position:relative}.tglsw-h:after{content:"";background:var(--surface);border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:2px;left:2px}.tglsw.on{color:var(--ledger);border-color:var(--ledger)}.tglsw.on .tglsw-h{background:var(--ledger)}.tglsw.on .tglsw-h:after{transform:translate(16px)}.tglsw:disabled{opacity:.55;cursor:default}.mback{z-index:60;background:#080c088c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.mcard{background:var(--surface);border:1px solid var(--rule);border-radius:16px;width:100%;max-width:560px;max-height:85vh;padding:22px 24px;overflow-y:auto;box-shadow:0 20px 60px #00000052}.mhd{justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;display:flex}.mhd h2{letter-spacing:-.01em;font-size:17px}.mx{border:1px solid var(--rule);width:30px;height:30px;color:var(--muted);background:0 0;border-radius:8px;flex:none;justify-content:center;align-items:center;font-size:17px;line-height:1;display:flex}.mx:hover{color:var(--ink);border-color:var(--ink)}.agrid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:13px;margin-top:16px;display:grid}.acard{background:var(--card);border:1px solid var(--rule);border-radius:14px;flex-direction:column;gap:10px;padding:16px 17px;display:flex}.acard-hd{justify-content:space-between;align-items:center;gap:10px;display:flex}.acard-hd h3{letter-spacing:-.01em;font-size:15px}.acard-kind{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border:1px solid var(--rule);border-radius:2px;padding:2px 6px;font-size:9.5px}.acard .actionrow,.acard .copyrow,.acard .key{margin-top:0}.aok{flex-wrap:wrap;align-items:center;gap:10px;margin-top:6px;display:flex}.skillrows{flex-direction:column;gap:18px;margin-top:16px;display:flex}.skillrow h3{letter-spacing:-.01em;margin-bottom:4px;font-size:14px}.skillrow code{font-family:var(--mono);background:var(--card);border:1px solid var(--rule-soft);border-radius:4px;padding:1px 5px;font-size:12.5px}.skillrow .copyrow{margin-top:10px}.plans{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:13px;margin-top:16px;display:grid}.plan{background:var(--card);border:1px solid var(--rule);border-radius:14px;flex-direction:column;gap:10px;padding:16px 17px;display:flex}.plan-hd{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.plan-hd h3{letter-spacing:-.01em;font-size:16px}.plan-price{font-family:var(--mono);color:var(--ledger);white-space:nowrap;font-size:12px;font-weight:600}.plan-list{color:var(--ink-soft);flex-direction:column;gap:5px;font-size:13.5px;list-style:none;display:flex}.plan-list li{padding-left:16px;position:relative}.plan-list li:before{content:"·";color:var(--ledger);font-weight:700;position:absolute;left:5px}.plan .appcta{margin-top:auto}.toasts{z-index:80;flex-direction:column;gap:8px;max-width:min(92vw,380px);display:flex;position:fixed;top:clamp(12px,3vw,20px);right:clamp(12px,3vw,20px)}.toast{background:var(--surface);border:1px solid var(--rule);color:var(--ink);border-radius:10px;align-items:flex-start;gap:10px;padding:12px 12px 12px 14px;font-size:13.5px;line-height:1.5;display:flex;box-shadow:0 8px 30px #00000029}.toast.ok{box-shadow:0 8px 30px #00000029,inset 3px 0 0 var(--ledger)}.toast.warn{box-shadow:0 8px 30px #00000029,inset 3px 0 0 var(--marker)}.toast>span{flex:1;min-width:0}.toast .tx{color:var(--muted);background:0 0;border:0;flex:none;padding:0 2px;font-size:16px;line-height:1}.toast .tx:hover{color:var(--ink)}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@media (max-width:760px){.app{grid-template-columns:minmax(0,1fr)}.side{border-right:0;border-bottom:1px solid var(--rule);flex-direction:column;gap:0;height:auto;padding:0;position:static}.side .top{justify-content:space-between;padding:12px 16px}.burger{display:inline-flex}.snav{flex-direction:column;gap:2px;padding:4px 12px 12px;display:none}.snav a .d{display:none}.sfoot{margin-top:0;display:none}.side.open .snav{display:flex}.side.open .sfoot{padding:14px 16px 18px;display:flex}.mainc{padding:24px 18px 56px}}
