@font-face{font-family:Sora Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/sora-latin-ext-wght-normal-CawQDOvP.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sora Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/sora-latin-wght-normal-DdqRvwsR.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#f6f5ef;--surface:#fff;--surface-soft:#ebe7db;--ink:#1c1f24;--muted:#666b73;--line:#d8d2c2;--accent:#0b6f77;--accent-strong:#084f56;--accent-soft:#dcecea;--on-accent:#fff;--done:#2e7a4b;--done-soft:#e1efe4;--warm:#b85f34;--warm-soft:#f6e5da;--danger:#b03a2e;--shadow:0 1px 2px #1c1f240d, 0 6px 20px #1c1f240f;--radius:14px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#1a1c1e;--surface:#232528;--surface-soft:#2b2d32;--ink:#e7e5df;--muted:#9a9ea6;--line:#3a3c42;--accent:#27b5bd;--accent-strong:#1d969d;--accent-soft:#1d3436;--on-accent:#0f1a1b;--done:#5cc48a;--done-soft:#1f3327;--warm:#e07a44;--warm-soft:#3a2a20;--danger:#ef7a6c;--shadow:0 1px 2px #0000004d, 0 6px 20px #00000040}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);margin:0;font-family:Sora Variable,Sora,ui-sans-serif,system-ui,sans-serif;font-size:15px;line-height:1.55}h1,h2,h3,p{margin:0}button{font:inherit;color:inherit}svg{flex:none;width:1.15em;height:1.15em}#app{max-width:1080px;margin:0 auto;padding:0 16px 64px}.top{padding:20px 0 8px}.brand{letter-spacing:-.01em;align-items:center;gap:10px;font-weight:600;display:inline-flex}.brand span:not(.brand-mark){color:var(--muted);font-weight:400}.brand-mark{background:var(--accent);width:28px;height:28px;color:var(--on-accent);border-radius:8px;place-items:center;display:grid}.eyebrow{color:var(--muted);letter-spacing:.02em;font-size:13px}h1{letter-spacing:-.03em;font-size:clamp(28px,5vw,40px);font-weight:650;line-height:1.15}.muted{color:var(--muted)}.button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:8px 16px;font-weight:550;transition:background .12s,border-color .12s,transform 80ms;display:inline-flex}.button:hover{border-color:var(--muted)}.button:active{transform:translateY(1px)}.button.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.button.primary:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.button.large{min-height:48px;padding:10px 22px;font-size:16px}.link{color:var(--muted);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:6px 2px;text-decoration:underline}.link:hover{color:var(--ink)}.link.danger:hover{color:var(--danger)}.icon-button{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.icon-button:hover{background:var(--surface-soft);color:var(--ink)}.icon-button.copied{color:var(--done)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.bar{background:var(--surface-soft);border-radius:99px;flex:1;height:6px;overflow:hidden}.bar span{border-radius:inherit;background:var(--accent);height:100%;transition:width .25s;display:block}.is-done .bar span{background:var(--done)}.hero{justify-items:start;gap:14px;padding:40px 0 28px;display:grid}.lede{max-width:56ch;color:var(--muted)}.status-line{border-radius:99px;align-items:center;gap:8px;padding:6px 12px;font-size:14px;font-weight:500;display:inline-flex}.status-line.ok{background:var(--done-soft);color:var(--done)}.status-line.due{background:var(--warm-soft);color:var(--warm)}.preview{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);display:grid;overflow:hidden}.preview-item{align-items:center;gap:14px;padding:14px 18px;display:flex}.preview-item+.preview-item{border-top:1px solid var(--line)}.preview-item div{flex:1;display:grid}.preview-item div span{color:var(--muted);font-size:14px}.preview-item>.muted{white-space:nowrap;font-size:13px}.run-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px 32px;padding:32px 0 24px;display:flex}.overall{gap:8px;min-width:min(100%,320px);display:grid}.overall p{color:var(--muted);font-size:14px}.overall strong{color:var(--ink)}.complete{border-radius:var(--radius);background:var(--done-soft);flex-wrap:wrap;align-items:center;gap:14px 18px;margin-bottom:20px;padding:18px 20px;display:flex}.complete div{flex:1;min-width:200px}.complete h2{font-size:17px}.complete p{color:var(--muted);font-size:14px}.complete-mark{background:var(--done);width:40px;height:40px;color:var(--surface);border-radius:50%;place-items:center;font-size:20px;display:grid}.complete .button.primary{background:var(--done);border-color:var(--done);color:var(--surface)}.grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.run-footer{text-align:center;margin-top:24px;font-size:14px}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);flex-direction:column;gap:14px;padding:18px;display:flex}.card.is-active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), var(--shadow)}.card.is-done{background:color-mix(in srgb, var(--done-soft) 55%, var(--surface))}.card.is-skipped{box-shadow:none;background:0 0;border-style:dashed}.card-head,.dialog-head{text-align:left;background:0 0;border:0;align-items:center;gap:12px;width:100%;padding:0;display:flex}.card-head{cursor:pointer}.icon{background:var(--surface-soft);width:42px;height:42px;color:var(--ink);border-radius:11px;flex:none;place-items:center;font-size:20px;display:grid}.is-active .icon{background:var(--accent-soft);color:var(--accent)}.is-done .icon{background:var(--done-soft);color:var(--done)}.card-title{flex:1;min-width:0;display:grid}.card-title h2{letter-spacing:-.01em;font-size:17px}.card-title span{color:var(--muted);font-size:13px}.pill{background:var(--surface-soft);color:var(--muted);white-space:nowrap;border-radius:99px;align-items:center;gap:4px;padding:3px 10px;font-size:12px;font-weight:550;display:inline-flex}.is-active .pill{background:var(--accent-soft);color:var(--accent)}.is-done .pill{background:var(--done-soft);color:var(--done)}.card-progress{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:10px;font-size:12px;display:flex}.card-body{flex:1;align-content:start;gap:6px;display:grid}.card-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:550}.card-step{font-weight:550}.is-done .card-step,.is-skipped .card-step{color:var(--muted);font-weight:400}.card-actions{flex-wrap:wrap;gap:8px;display:flex}.card-actions .button.primary{flex:1}.command{background:var(--surface-soft);border-radius:9px;align-items:center;gap:4px;margin-top:4px;padding:4px 4px 4px 12px;display:flex}.command code{white-space:nowrap;-webkit-user-select:all;user-select:all;flex:1;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:13.5px;overflow-x:auto}dialog{border:1px solid var(--line);background:var(--surface);width:min(640px,100% - 32px);max-height:calc(100dvh - 48px);color:var(--ink);border-radius:18px;padding:0;box-shadow:0 24px 60px #00000040}dialog[open]{flex-direction:column;display:flex}dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#14161873}.dialog-head{border-bottom:1px solid var(--line);padding:18px 14px 14px 20px}.dialog-steps{flex:1;padding:16px 20px 20px;overflow-y:auto}.dialog-foot{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px 14px;padding:14px 20px;font-size:14px;display:flex}.dialog-foot .spacer{flex:1}.dialog-foot .button{font-size:15px}.steps{gap:2px;margin:16px 0 20px;padding:0;list-style:none;display:grid}.steps .section{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-top:14px;padding:0 0 4px 44px;font-size:12px;font-weight:600}.steps .section:first-child{margin-top:0}.step{border-radius:10px;gap:12px;padding:10px 10px 12px 0;display:flex}.step.is-current{background:var(--accent-soft);margin-left:-8px;padding-left:8px}.step-body{flex:1;gap:4px;min-width:0;padding-top:4px;display:grid}.step-body h3{font-size:15px;font-weight:600}.step-body p{color:var(--muted);font-size:14px}.step.is-done h3{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);font-weight:500}.items{flex-wrap:wrap;gap:6px;margin:2px 0 0;padding:0;list-style:none;display:flex}.items li{border:1px solid var(--line);border-radius:99px;padding:2px 9px;font-size:12.5px}.check{cursor:pointer;flex:none;position:relative}.check input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.check-box{border:1.5px solid var(--line);background:var(--surface);width:32px;height:32px;color:var(--muted);border-radius:50%;place-items:center;font-size:13px;font-weight:600;display:grid}.check-box svg{display:none}.check:hover .check-box{border-color:var(--accent)}.check input:focus-visible+.check-box{outline:2px solid var(--accent);outline-offset:2px}.is-current .check-box{border-color:var(--accent);color:var(--accent)}.check input:checked+.check-box{border-color:var(--done);background:var(--done);color:var(--surface)}.check input:checked+.check-box svg{display:block}.check input:checked+.check-box .num{display:none}.note-label{color:var(--muted);margin-bottom:6px;font-size:13px;font-weight:550;display:block}textarea{border:1px solid var(--line);background:var(--bg);width:100%;color:var(--ink);font:inherit;resize:vertical;border-radius:10px;padding:10px 12px;font-size:14px}textarea:focus{border-color:var(--accent);outline:none}.history{margin-top:48px}.history h2{margin-bottom:10px;font-size:15px}.history ol{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.history li{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:4px 18px;padding:10px 0;font-size:14px;display:flex}.history li strong{min-width:70px}.history li .muted{margin-left:auto}@media (width<=560px){body{font-size:14.5px}.grid{grid-template-columns:1fr}dialog{border-radius:18px 18px 0 0;width:100%;max-width:none;max-height:92dvh;margin:auto 0 0}.preview-item>.muted{display:none}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
