@font-face{font-family:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/instrument-sans-latin-ext-wght-normal-B5bTHO_g.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:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/instrument-sans-latin-wght-normal-BbzFLZTg.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}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-ext-wght-normal-X_5orZeX.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-wght-normal-DiZS0aHC.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-symbols2-wght-normal-CO5SzqOn.woff2)format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-vietnamese-wght-normal-DadHysG0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-ext-wght-normal-Bwz-egvJ.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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-wght-normal-XN7g48iV.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{--font-sans:"Instrument Sans Variable", "Segoe UI", system-ui, -apple-system, Helvetica, Arial, sans-serif;--font-mono:"Geist Mono Variable", ui-monospace, SFMono-Regular, Consolas, monospace;--text-micro:11px;--text-small:12px;--text-body:14px;--text-lead:16px;--text-subtitle:20px;--text-title:24px;--metric-sm:26px;--metric-md:32px;--metric-lg:38px;--radius-chip:4px;--radius-inner:8px;--radius-card:12px;--radius-pill:999px;--space-4:4px;--space-8:8px;--space-12:12px;--space-16:16px;--space-20:20px;--space-24:24px;--space-32:32px}:root,:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page:#eef1f5;--card:#fff;--alert-card:#fdf3f2;--ink:#0a0c12;--ink-2:#565c6b;--ink-3:#686e7b;--nav:#3a404d;--accent:#0047ff;--on-accent:#fff;--accent-tint:#e8edff;--drop-target:#a3b5ff;--ok:#0b7a55;--warn:#9a6410;--alert:#c8302a;--warn-pill-bg:#fbf0dc;--warn-pill-fg:#7a5200;--alert-pill-bg:#f7dddb;--alert-pill-fg:#a8231e;--control-edge:#c9cfd9;--track:#e7eaef;--muted-icon:#a8aebb;--hairline:#0a0c1212;--drag-shadow:0 16px 32px #0a0c121f, 0 2px 6px #0a0c120f}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#0b0e14;--card:#141922;--alert-card:#1f1417;--ink:#e6e9ef;--ink-2:#9ba5b5;--ink-3:#7a8494;--nav:#c3cbd8;--accent:#4f7dff;--on-accent:#0b0e14;--accent-tint:#1b2647;--drop-target:#3a5aa8;--ok:#34c08a;--warn:#e0a93e;--alert:#f2685e;--warn-pill-bg:#2a2113;--warn-pill-fg:#e8bc63;--alert-pill-bg:#3a1d1a;--alert-pill-fg:#ff8f84;--control-edge:#3b4554;--track:#232b38;--muted-icon:#5a6474;--hairline:#ffffff17;--drag-shadow:0 18px 38px #0009, 0 2px 8px #00000073}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#0b0e14;--card:#141922;--alert-card:#1f1417;--ink:#e6e9ef;--ink-2:#9ba5b5;--ink-3:#7a8494;--nav:#c3cbd8;--accent:#4f7dff;--on-accent:#0b0e14;--accent-tint:#1b2647;--drop-target:#3a5aa8;--ok:#34c08a;--warn:#e0a93e;--alert:#f2685e;--warn-pill-bg:#2a2113;--warn-pill-fg:#e8bc63;--alert-pill-bg:#3a1d1a;--alert-pill-fg:#ff8f84;--control-edge:#3b4554;--track:#232b38;--muted-icon:#5a6474;--hairline:#ffffff17;--drag-shadow:0 18px 38px #0009, 0 2px 8px #00000073}*,:before,:after{box-sizing:border-box}html{font-family:var(--font-sans);font-size:var(--text-body);color:var(--ink);background:var(--page);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;line-height:1.5}body{margin:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.login{place-content:center;gap:var(--space-16);min-height:100dvh;padding:var(--space-24);display:grid}.login h1{align-items:center;gap:var(--space-8);font-size:var(--text-title);letter-spacing:-.03em;margin:0;font-weight:600;display:flex}.login h1 svg{color:var(--accent)}.login form{gap:var(--space-8);width:min(360px,100%);display:grid}.login label{font-size:var(--text-small);color:var(--ink-2)}.login input{font:inherit;padding:var(--space-12);border:1px solid var(--control-edge);border-radius:var(--radius-inner);background:var(--card);color:var(--ink)}.login button{font:inherit;padding:var(--space-12) var(--space-16);border-radius:var(--radius-pill);background:var(--accent);color:var(--on-accent);cursor:pointer;border:0;font-weight:500}.login button:disabled{opacity:.6;cursor:progress}.login [role=alert]{font-size:var(--text-small);color:var(--alert);margin:0}.board{--row:211px;--gap:16px;min-height:100dvh;padding:var(--space-24)}@media (width<=1099px){.board{--row:176px;--gap:14px}}@media (width<=639px){.board{--row:168px;--gap:12px;padding:var(--space-16)}}.board-header{align-items:center;gap:var(--space-8);color:var(--accent);display:flex}.board-wordmark{font-size:var(--text-lead);letter-spacing:-.03em;color:var(--ink);font-weight:600}.board-header-gap{flex-grow:1}.board-empty{margin-top:var(--space-32);max-width:48ch}.board-empty h1{margin:0 0 var(--space-8);font-size:var(--text-title);letter-spacing:-.03em;font-weight:600}.board-empty p{color:var(--ink-2);margin:0}.board-alert{margin:var(--space-16) 0 0;padding:var(--space-12) var(--space-16);border-radius:var(--radius-inner);background:var(--alert-card);color:var(--alert-pill-fg)}.board-grid{margin:var(--space-24) 0 0;grid-auto-rows:var(--row);gap:var(--gap);padding:0;list-style:none;display:grid}.board-cell{min-width:0;position:relative}.board-cell[data-dragging=true]>.card{opacity:0}.card-drop{border:1.5px dashed var(--drop-target);border-radius:var(--radius-card);background:var(--accent-tint);font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:.08em;color:var(--accent);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.card-lifted{border-radius:var(--radius-card);height:100%;box-shadow:var(--drag-shadow);cursor:grabbing}.card{box-sizing:border-box;height:100%;padding:var(--space-20);background:var(--card);border:1px solid var(--hairline);border-radius:var(--radius-card);flex-direction:column;display:flex}.card[data-state=unreachable]{border-color:color-mix(in srgb, var(--warn) 30%, transparent)}.card[data-state=error]{background:var(--alert-card);border-color:color-mix(in srgb, var(--alert) 26%, transparent)}.card[data-state=paused]{background:var(--page);border:1px dashed var(--control-edge)}.card-head{align-items:center;gap:var(--space-8);min-height:24px;display:flex}.card-title{min-width:0;font-size:var(--text-body);color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;margin:0;font-weight:500;overflow:hidden}.card[data-state=paused] .card-title{color:var(--ink-3)}.card-head-gap{flex-grow:1}.card-dot{border-radius:var(--radius-pill);background:var(--ok);flex-shrink:0;width:6px;height:6px}.pill{border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:var(--text-micro);white-space:nowrap;flex-shrink:0;padding:2px 8px;font-weight:500}.pill[data-tone=warn]{background:var(--warn-pill-bg);color:var(--warn-pill-fg)}.pill[data-tone=alert]{background:var(--alert-pill-bg);color:var(--alert-pill-fg)}.icon-button{border-radius:var(--radius-inner);width:32px;height:32px;color:var(--muted-icon);cursor:pointer;background:0 0;border:0;flex-shrink:0;place-items:center;margin:-6px;padding:0;display:inline-grid}.icon-button:hover{color:var(--ink-2);background:var(--track)}@media (pointer:coarse){.icon-button{width:44px;height:44px;margin:-12px}}.card-handle{cursor:grab;touch-action:none}.card-menu{position:relative}.card-menu-panel{z-index:2;min-width:180px;padding:var(--space-4);background:var(--card);border:1px solid var(--hairline);border-radius:var(--radius-inner);box-shadow:var(--drag-shadow);position:absolute;top:calc(100% + 6px);right:0}.card-menu-panel button{width:100%;padding:var(--space-8) var(--space-12);border-radius:var(--radius-chip);color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:block}.card-menu-panel button:hover{background:var(--track)}.card-body{min-height:0;margin-top:var(--space-16);flex-direction:column;flex-grow:1;display:flex;overflow:hidden}.card-grow{flex-grow:1}.card-center{justify-content:center;align-items:center;gap:var(--space-8);text-align:center;color:var(--ink-2);flex-direction:column;flex-grow:1;display:flex}.card-center p{margin:0}.icon-ok{color:var(--ok)}.icon-warn{color:var(--warn)}.icon-muted{color:var(--muted-icon)}.card-metric,.card-error,.card-foot{flex-shrink:0}.card-metric{align-items:baseline;column-gap:var(--space-4);flex-wrap:wrap;margin:0;display:flex}.card-metric-value{font-size:var(--metric-lg);letter-spacing:-.03em;font-weight:500;line-height:1}.card-metric-unit{font-size:var(--text-lead);color:var(--ink-2)}.card-metric-caption{margin-top:var(--space-8);font-size:var(--text-small);color:var(--ink-3);flex-basis:100%}.card-lines{row-gap:var(--space-8);min-height:0;margin:var(--space-16) 0 0;flex-flow:column wrap;flex:0 auto;column-gap:100%;display:flex;overflow:hidden}.card-line{justify-content:space-between;gap:var(--space-8);width:100%;font-size:var(--text-small);display:flex}.card-line dt{color:var(--ink-3)}.card-line dd{margin:0;font-weight:500}.card-line[data-tone=warn] dd{color:var(--warn)}.card-line[data-tone=alert] dd{color:var(--alert)}.card-foot{align-items:center;gap:var(--space-8);margin-top:var(--space-12);padding-top:var(--space-12);border-top:1px solid var(--hairline);font-size:var(--text-small);color:var(--ink-3);display:flex}.card-foot-text{flex-grow:1}.card-action{color:var(--accent);font-weight:500;text-decoration:none}.card-action:hover{text-decoration:underline}.card-label{font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:.08em;color:var(--ink-3)}.card-signal{color:var(--warn-pill-fg);align-items:center;gap:9px;margin:0;font-weight:500;display:flex}.card-note{min-height:0;margin:var(--space-8) 0 0;color:var(--ink-3);flex-flow:column wrap;flex:0 auto;column-gap:100%;display:flex;overflow:hidden}.card-note:before{content:"";width:100%}.card-note>span{-webkit-line-clamp:2;-webkit-box-orient:vertical;width:100%;display:-webkit-box;overflow:hidden}.card-last-known{margin-top:var(--space-12);padding:11px var(--space-12);border-radius:var(--radius-inner);background:var(--page)}.card-last-known p{margin:0}.card-last-known .card-last-value{color:var(--ink-3);margin-top:6px}.card-error{color:var(--ink-2);align-items:baseline;gap:9px;margin:0;display:flex}.card-error-code{font-size:var(--metric-md);letter-spacing:-.03em;color:var(--alert);font-weight:500;line-height:1}@media (width<=1099px){.card{padding:var(--space-16)}.card-body{margin-top:var(--space-12)}.card-metric-value{font-size:var(--metric-md)}.card-note>span{-webkit-line-clamp:1}.card-last-known{padding:var(--space-8) 10px}}@media (width<=639px){.card-metric-value{font-size:var(--metric-sm)}}.card-empty{font-size:var(--text-lead);color:var(--ink);margin:0;font-weight:500}.card-cta{border-radius:var(--radius-pill);background:var(--accent);color:var(--on-accent);padding:10px 18px;font-weight:500;text-decoration:none;display:inline-block}.skeleton{border-radius:var(--radius-chip);background:var(--track);display:block}.skeleton--title{width:44px;height:11px}.skeleton--metric{width:92px;height:34px}.skeleton--caption{width:70px;height:11px;margin-top:var(--space-12)}.skeleton--bar{border-radius:var(--radius-pill);width:100%;height:6px}.add-chips{gap:var(--space-8);margin:var(--space-16) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.chip{border-radius:var(--radius-pill);background:var(--accent-tint);color:var(--accent);font:inherit;cursor:pointer;border:0;padding:6px 12px}.add-none{margin:var(--space-16) 0 0;color:var(--ink-3)}.add-menu{position:relative}.add-menu-button{padding:var(--space-8) var(--space-16);border-radius:var(--radius-pill);background:var(--accent-tint);color:var(--accent);font:inherit;cursor:pointer;border:0;font-weight:500}.add-menu-panel{z-index:3;width:min(320px,80vw);padding:var(--space-12);background:var(--card);border:1px solid var(--hairline);border-radius:var(--radius-card);box-shadow:var(--drag-shadow);position:absolute;top:calc(100% + 8px);right:0}.add-menu-panel .add-chips{margin:0}.progress{gap:var(--space-8);flex-direction:column;display:flex}.progress-track{border-radius:var(--radius-pill);background:var(--track);height:6px;overflow:hidden}.progress-fill{border-radius:inherit;background:var(--accent);height:100%;display:block}.progress-count{font-family:var(--font-mono);font-size:var(--text-small);color:var(--ink-2);margin:0}.progress-scroll{min-height:0;margin-top:var(--space-12);overscroll-behavior:contain;flex:auto;overflow-y:auto}.progress-steps{gap:var(--space-4);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.progress-step-main{box-sizing:border-box;align-items:baseline;gap:var(--space-8);width:100%;padding:6px var(--space-8);border-radius:var(--radius-inner);color:var(--ink);font:inherit;text-align:left;background:0 0;border:0;display:flex}.progress-step[data-next=true] .progress-step-main{background:var(--accent-tint)}.progress-step[data-done=true] .progress-step-main{color:var(--ink-3)}.progress-step-number{min-width:2ch;font-family:var(--font-mono);font-size:var(--text-small);color:var(--ink-3);text-align:right;flex-shrink:0}.progress-step-text{overflow-wrap:anywhere;flex-grow:1;min-width:0}.progress-tick{flex-shrink:0;align-self:center;width:14px;height:14px}.pill[data-tone=accent]{background:var(--accent-tint);color:var(--accent)}.progress-done-toggle{margin-top:var(--space-8);padding:6px var(--space-8);color:var(--ink-2);font:inherit;font-size:var(--text-small);cursor:pointer;background:0 0;border:0}.progress-done-toggle:before{content:"▸ "}.progress-done-toggle[aria-expanded=true]:before{content:"▾ "}button.progress-step-main{cursor:pointer}button.progress-step-main:hover{background:var(--page)}.progress-step-main:focus-visible,.progress-instruction:focus-visible,.dispatch-retry:focus-visible,.modal-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dispatch-line{align-items:baseline;gap:var(--space-8);padding-left:calc(2ch + var(--space-16));font-size:var(--text-small);color:var(--ink-3);flex-wrap:wrap;margin:2px 0 0;display:flex}.dispatch-line[data-tone=alert]{color:var(--alert)}.dispatch-retry{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:500}.progress-instruction-status{align-items:baseline;gap:var(--space-8);margin-top:var(--space-8);display:flex}.progress-instruction-status .dispatch-line{margin:0;padding-left:0}.progress-instruction{padding:6px var(--space-12);border-radius:var(--radius-pill);background:var(--accent-tint);color:var(--accent);font:inherit;cursor:pointer;border:0;flex-shrink:0;font-weight:500}.modal{box-sizing:border-box;width:min(560px,100vw - 32px);max-height:calc(100dvh - 32px);padding:var(--space-24);border:1px solid var(--hairline);border-radius:var(--radius-card);background:var(--card);color:var(--ink);box-shadow:var(--drag-shadow)}.modal::backdrop{background:color-mix(in srgb, var(--ink) 40%, transparent)}.modal h2{font-size:var(--text-subtitle);margin:0;font-weight:500}.modal-form{gap:var(--space-16);flex-direction:column;display:flex}.modal-context{padding:var(--space-8) var(--space-12);border-radius:var(--radius-inner);background:var(--page);font-size:var(--text-small);color:var(--ink-2);margin:0}.modal-context code{font-family:var(--font-mono)}.modal-field{gap:var(--space-4);font-size:var(--text-small);color:var(--ink-2);flex-direction:column;display:flex}.modal-field input,.modal-field textarea{padding:var(--space-8) var(--space-12);border:1px solid var(--control-edge);border-radius:var(--radius-inner);background:var(--card);color:var(--ink);font:inherit;font-size:var(--text-body)}.modal-field textarea{resize:vertical;min-height:140px}.modal-error{color:var(--alert);margin:0}.modal-actions{justify-content:flex-end;gap:var(--space-8);display:flex}.modal-button{padding:var(--space-8) var(--space-16);border:1px solid var(--control-edge);border-radius:var(--radius-pill);color:var(--ink);font:inherit;cursor:pointer;background:0 0;font-weight:500}.modal-button[data-variant=primary]{background:var(--accent);color:var(--on-accent);border-color:#0000}.modal-button[data-variant=danger]{background:var(--alert-pill-bg);color:var(--alert-pill-fg);border-color:#0000}.modal-button:disabled{opacity:.6;cursor:default}.card-title-button{max-width:100%;color:inherit;font:inherit;text-align:left;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;background:0 0;border:0;padding:0;display:block;overflow:hidden}.card-title-button:hover{color:var(--ink)}.card-title-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.progress-body{cursor:pointer}.progress-body .progress-step[data-done=true]{cursor:default}.modal.project-view{width:100vw;max-width:none;height:100dvh;max-height:none;box-shadow:none;border:0;border-radius:0;margin:0;overflow-y:auto}.project-view-inner{gap:var(--space-24);flex-direction:column;max-width:880px;margin:0 auto;display:flex}.project-view-head{align-items:center;gap:var(--space-8);display:flex}.project-view-goal{font-size:var(--text-lead);color:var(--ink-2);margin:0}.project-view h3{margin:0 0 var(--space-8);font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-weight:400}.project-view-detail{margin:var(--space-4) 0 0;padding-left:calc(2ch + var(--space-16));white-space:pre-wrap;font-size:var(--text-small);color:var(--ink-2)}.project-view-empty{color:var(--ink-3);margin:0}.project-view-dispatches{gap:var(--space-8);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.project-view-dispatch-title{font-weight:500}.project-view-dispatches .dispatch-line{padding-left:0}.project-view-foot{align-items:center;gap:var(--space-8);padding-top:var(--space-16);border-top:1px solid var(--hairline);flex-wrap:wrap;display:flex}.project-view-confirm{color:var(--ink-2);flex-basis:100%;margin:0}.add-project{margin-top:var(--space-12);border:1px dashed var(--control-edge);border-radius:var(--radius-pill);color:var(--accent);font:inherit;cursor:pointer;background:0 0;padding:6px 12px}.add-menu-panel .add-project{width:100%}.add-menu-panel>.add-project:first-child{margin-top:0}.modal-field-hint{color:var(--ink-3)}.modal-field-error{color:var(--alert)}.modal-field input[aria-invalid=true]{border-color:var(--alert)}.board-note{margin:0 0 var(--space-16);color:var(--ink-2)}.progress-goal{color:var(--ink-2);font-size:var(--text-small);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.progress-empty{align-items:baseline;gap:var(--space-8);color:var(--ink-2);flex-wrap:wrap;margin:0;display:flex}
