:root{--bg:#0a0b0d;--bg-elevated:#131418;--bg-inset:#0f1013;--line:#262931;--line-soft:#1b1d23;--amber:#f6c945;--amber-dim:#f6c94524;--cyan:#4de3d1;--cyan-dim:#4de3d124;--ink:#ececf0;--ink-dim:#8c93a1;--ink-faint:#565b66;--good:#5fb87a;--good-dim:#5fb87a24;--bad:#d9705f;--bad-dim:#d9705f24;--info:#6fa3e0;--info-dim:#6fa3e024;--s1:#3987e5;--s2:#d95926;--s3:#199e70;--s4:#c98500;--s5:#d55181;--s6:#008300;--s7:#9085e9;--s8:#e66767;--mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--radius:10px;--radius-sm:6px;--fs-tiny:10px;--fs-xs:11px;--fs-sm:12px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--page-x:40px;--page-y:28px;--tap:44px;--topbar-h:56px;--safe-t:env(safe-area-inset-top,0px);--safe-r:env(safe-area-inset-right,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (max-width:860px){:root{--fs-tiny:12px;--fs-xs:12px;--fs-sm:13px;--page-x:16px;--page-y:16px}}*{box-sizing:border-box}html,body,#root{height:100%;overflow-x:clip}html.scroll-locked{overflow:hidden}body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.5;position:relative}body:before{content:"";pointer-events:none;z-index:0;background-image:repeating-linear-gradient(#4de3d104 0 1px,#0000 1px 3px);position:fixed;inset:0}#root{z-index:1;position:relative}h1,h2,h3,h4{font-family:var(--mono);letter-spacing:-.01em;text-wrap:balance;margin:0;font-weight:700}a{color:inherit}button{font-family:inherit}::selection{background:var(--amber-dim);color:var(--ink)}.eyebrow{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}.pill{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-weight:500;display:inline-flex}.pill-active{background:var(--good-dim);color:var(--good)}.pill-planned{background:var(--info-dim);color:var(--info)}.pill-paused{background:var(--amber-dim);color:var(--amber)}.pill-archived{background:var(--line-soft);color:var(--ink-faint)}.card{background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .2s,box-shadow .2s;position:relative}@media (hover:hover){.card:hover{border-color:var(--line-soft);box-shadow:0 4px 24px -8px #0006}}.card:before,.card:after{content:"";pointer-events:none;opacity:.55;width:16px;height:16px;position:absolute}.card:before{border-top:2px solid var(--cyan);border-left:2px solid var(--cyan);border-top-left-radius:var(--radius);top:-1px;left:-1px}.card:after{border-bottom:2px solid var(--cyan);border-right:2px solid var(--cyan);border-bottom-right-radius:var(--radius);bottom:-1px;right:-1px}.hud-num{color:var(--cyan);text-shadow:0 0 18px var(--cyan-dim), 0 0 2px var(--cyan-dim)}.pulse-dot-cyan{background:var(--cyan);box-shadow:0 0 6px var(--cyan)}.btn{font-family:var(--mono);border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--bg-inset);color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:500;transition:border-color .15s,color .15s;display:inline-flex}@media (hover:hover){.btn:hover{border-color:var(--amber);color:var(--amber)}}.btn:active:not(:disabled){transform:translateY(1px)}.btn-danger{background:var(--bad);border-color:var(--bad);color:#1a0d0a}.btn-outline-danger{border-color:var(--bad);color:var(--bad)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--amber);border-color:var(--amber);color:#17140a}@media (hover:hover){.btn-primary:hover{color:#17140a;background:#ffd868}.btn-danger:hover{color:#1a0d0a;background:#e8826f}}input,textarea,select{font-family:var(--sans);background:var(--bg-inset);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);box-sizing:border-box;text-overflow:ellipsis;min-width:0;max-width:100%;padding:8px 10px;font-size:16px}.card{overflow-wrap:anywhere;min-width:0}.card pre{max-width:100%;overflow-x:auto}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%238c93a1' stroke-width='1.6' fill='none'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:30px}input:focus,textarea:focus,select:focus{border-color:var(--amber);outline:none}.tabular{font-variant-numeric:tabular-nums}.chip-row{flex-wrap:wrap;gap:6px;display:flex}.chip{font-family:var(--sans);border:1px solid var(--line);background:var(--bg-inset);color:var(--ink-dim);cursor:pointer;white-space:nowrap;border-radius:999px;padding:6px 12px;font-size:12.5px;transition:border-color .15s,color .15s,background .15s}@media (hover:hover){.chip:hover{border-color:var(--amber);color:var(--ink)}}.chip.active{background:var(--amber);border-color:var(--amber);color:#17140a;font-weight:500}.text-good{color:var(--good)}.text-bad{color:var(--bad)}.pulse-dot{background:var(--good);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite opsdesk-pulse}@keyframes opsdesk-pulse{0%,to{box-shadow:0 0 0 0 var(--good-dim)}50%{box-shadow:0 0 0 4px var(--good-dim)}}@media (prefers-reduced-motion:reduce){.card,.btn{transition:none}.pulse-dot{animation:none}}:root{--nav-fs:13px;--sidebar-w:220px}.panel-shell{min-height:100vh;min-height:100dvh;display:flex}.panel-sidebar{width:var(--sidebar-w);background:var(--bg-elevated);border-right:1px solid var(--line);height:100vh;height:100dvh;padding:max(20px, var(--safe-t)) 14px max(16px, var(--safe-b)) max(14px, var(--safe-l));flex-direction:column;flex:none;display:flex;position:sticky;top:0}.panel-sidebar-head{font-family:var(--mono);color:var(--cyan);flex:none;align-items:center;gap:7px;padding:0 10px 18px;font-size:15px;font-weight:700;display:flex}.panel-close{display:none}.panel-sidebar-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-direction:column;flex:auto;gap:4px;min-height:0;display:flex;overflow-y:auto}.panel-sidebar-scroll::-webkit-scrollbar{display:none}.panel-nav-group{flex:none;padding:16px 10px 6px}.panel-sidebar-foot{border-top:1px solid var(--line-soft);flex-direction:column;flex:none;gap:4px;margin-top:8px;padding-top:10px;display:flex}.panel-main{flex:1;min-width:0}.panel-topbar,.panel-backdrop{display:none}.panel-page{padding:var(--page-y) var(--page-x) calc(var(--page-y) + var(--safe-b));padding-left:max(var(--page-x), var(--safe-l));padding-right:max(var(--page-x), var(--safe-r))}@media (min-width:861px){body{padding-top:var(--safe-t)}.panel-sidebar{top:var(--safe-t);height:calc(100vh - var(--safe-t));height:calc(100dvh - var(--safe-t));padding-top:20px}}@media (max-width:860px){:root{--nav-fs:15px;--sidebar-w:min(300px, 84vw)}.panel-shell{display:block}.panel-topbar{z-index:30;min-height:calc(var(--topbar-h) + var(--safe-t));padding:var(--safe-t) max(12px, var(--safe-r)) 0 max(8px, var(--safe-l));-webkit-backdrop-filter:saturate(140%)blur(12px);backdrop-filter:saturate(140%)blur(12px);border-bottom:1px solid var(--line-soft);background:#0a0b0deb;align-items:center;gap:10px;display:flex;position:sticky;top:0}.panel-hamburger{width:var(--tap);height:var(--tap);border:1px solid var(--line);background:var(--bg-elevated);color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:10px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.panel-burger-icon,.panel-burger-icon:before,.panel-burger-icon:after{background:currentColor;border-radius:1px;width:18px;height:2px;display:block}.panel-burger-icon{position:relative}.panel-burger-icon:before,.panel-burger-icon:after{content:"";position:absolute;left:0}.panel-burger-icon:before{top:-6px}.panel-burger-icon:after{top:6px}.panel-topbar-title{min-width:0;font-family:var(--mono);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:16px;font-weight:700;overflow:hidden}.panel-topbar-brand{font-family:var(--mono);color:var(--cyan);flex:none;align-items:center;gap:6px;font-size:13px;font-weight:700;display:inline-flex}.panel-sidebar{z-index:50;border-right:1px solid var(--line);height:auto;padding:calc(var(--safe-t) + 10px) 12px max(14px, var(--safe-b)) max(12px, var(--safe-l));visibility:hidden;transition:transform .22s,visibility 0s linear .22s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.panel-sidebar.open{visibility:visible;transition:transform .22s,visibility;transform:none;box-shadow:8px 0 32px #00000080}.panel-sidebar-head{min-height:var(--tap);padding:0 0 10px 10px}.panel-close{width:var(--tap);height:var(--tap);border:1px solid var(--line);background:var(--bg-inset);color:var(--ink-dim);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:10px;justify-content:center;align-items:center;font-size:15px;display:inline-flex}.panel-nav-group{padding:12px 12px 4px}.panel-sidebar-foot .btn{font-size:14px!important}.panel-backdrop{z-index:45;opacity:0;pointer-events:none;touch-action:none;background:#0000008c;transition:opacity .2s;display:block;position:fixed;inset:0}.panel-backdrop.open{opacity:1;pointer-events:auto}input,select,textarea{font-size:16px!important}}@media (prefers-reduced-motion:reduce){.panel-sidebar,.panel-sidebar.open,.panel-backdrop{transition:none}}.task-board-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}@media (max-width:640px){.task-board-grid{grid-template-columns:1fr}}.panel-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:6px;display:flex;overflow-x:auto}.panel-tabs::-webkit-scrollbar{display:none}.panel-tab{font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;cursor:pointer;color:var(--ink-faint);background:0 0;border:1px solid #0000;border-radius:999px;flex-shrink:0;padding:8px 16px;font-size:12px;font-weight:500}.panel-tab.active{color:var(--cyan);background:var(--cyan-dim);border-color:var(--cyan)}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}a,button,input,select,textarea,label,summary,[role=button],.panel-tab,.chip{touch-action:manipulation}@media (pointer:coarse){input,select,textarea{font-size:16px!important}.btn,.chip,.panel-tab,select,input:not([type=checkbox]):not([type=radio]){min-height:44px}.btn{min-width:44px}.chip{align-items:center;display:inline-flex}.tap-link{align-items:center;min-height:44px;display:inline-flex}:is(label:has(>input[type=checkbox]),label:has(>input[type=radio])){min-height:44px;align-items:center!important}input[type=checkbox],input[type=radio]{flex:none;width:20px;height:20px}}.sheet-backdrop{z-index:2000;background:#0009;justify-content:center;align-items:flex-end;animation:.15s sheet-fade;display:flex;position:fixed;inset:0}.sheet{width:100%;max-width:520px;max-height:85vh;max-height:calc(100dvh - var(--safe-t) - 24px);overscroll-behavior:contain;background:var(--bg-elevated);border:1px solid var(--line);padding:18px 16px calc(16px + env(safe-area-inset-bottom));overflow-wrap:anywhere;border-bottom:none;border-radius:16px 16px 0 0;animation:.18s sheet-up;overflow-y:auto;box-shadow:0 -8px 40px #00000080}.sheet-title{margin-bottom:8px;font-size:16px}.sheet-message{color:var(--ink);white-space:pre-wrap;font-size:15px;line-height:1.5}.sheet-actions{gap:10px;margin-top:16px;display:flex}.sheet-actions .btn{flex:1;min-height:48px;font-size:15px}@media (min-width:700px){.sheet-backdrop{align-items:center}.sheet{border-bottom:1px solid var(--line);border-radius:14px}}@keyframes sheet-up{0%{opacity:.6;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes sheet-fade{0%{opacity:0}to{opacity:1}}.status-chip{font-size:var(--fs-sm);white-space:nowrap;border:1px solid;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;line-height:1.2;display:inline-flex}.status-chip.good{color:var(--good);background:var(--good-dim);border-color:#0000}.status-chip.bad{color:var(--bad);background:var(--bad-dim);border-color:#0000}.status-chip.warn{color:var(--amber);background:var(--amber-dim);border-color:#0000}.status-chip.info{color:var(--cyan);background:var(--cyan-dim);border-color:#0000}.status-chip.muted{color:var(--ink-dim);background:var(--line-soft);border-color:#0000}.skeleton{background:linear-gradient(90deg, var(--line-soft) 0%, var(--line) 50%, var(--line-soft) 100%);background-size:200% 100%;border-radius:6px;animation:1.3s ease-in-out infinite skeleton-shimmer;display:block}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.skeleton,.sheet,.sheet-backdrop{animation:none}}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.stat{background:var(--bg-inset);border:1px solid var(--line-soft);border-radius:8px;min-width:0;padding:8px 10px}.stat-label{font-size:var(--fs-sm);color:var(--ink-dim)}.stat-value{font-family:var(--mono);white-space:nowrap;text-overflow:ellipsis;color:var(--ink);margin-top:2px;font-size:16px;overflow:hidden}.stat-sub{font-size:var(--fs-sm);color:var(--ink-faint);margin-top:1px}.row-list>*+*{border-top:1px solid var(--line-soft)}.fold{border-top:1px solid var(--line-soft);margin-top:12px}.card>.fold:first-child{border-top:none;margin-top:0}.fold-head{width:100%;min-height:44px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items:center;gap:10px;padding:8px 0;font-size:14px;font-weight:600;display:flex}.fold-head .fold-hint{font-weight:400;font-size:var(--fs-sm);color:var(--ink-dim)}.fold-head .fold-caret{color:var(--ink-faint);flex:none;margin-left:auto;font-size:12px}.log-box{white-space:pre-wrap;word-break:break-word;font-size:var(--fs-sm);background:var(--bg-inset);max-height:280px;font-family:var(--mono);color:var(--ink-dim);border-radius:8px;margin:6px 0 0;padding:8px 10px;overflow:auto}.card-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.card-head h3{margin:0;font-size:15px}.muted-note{font-size:var(--fs-sm);color:var(--ink-faint)}@keyframes spin{to{transform:rotate(360deg)}}.form-row{gap:var(--sp-2);flex-wrap:wrap;align-items:center;display:flex}@media (max-width:640px){.form-row>input,.form-row>select,.form-row>textarea{flex:100%!important;width:100%!important;min-width:0!important}.form-row>.half{flex:1 1 calc(50% - var(--sp-2))!important;width:auto!important}.form-row>.btn{flex:auto}}.row-wrap{align-items:center;gap:var(--sp-2) var(--sp-3);flex-wrap:wrap;min-width:0;display:flex}.row-wrap>.grow{flex:160px;min-width:0}.row-wrap>.push{margin-left:auto}.table-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;background:linear-gradient(to right, var(--scroll-bg,var(--bg-elevated)) 30%, transparent) left / 24px 100% no-repeat local, linear-gradient(to left, var(--scroll-bg,var(--bg-elevated)) 30%, transparent) right / 24px 100% no-repeat local, radial-gradient(farthest-side at 0 50%, #0000008c, transparent) left / 12px 100% no-repeat scroll, radial-gradient(farthest-side at 100% 50%, #0000008c, transparent) right / 12px 100% no-repeat scroll;max-width:100%;overflow-x:auto}.table-scroll.on-inset{--scroll-bg:var(--bg-inset)}.stack-table{border-collapse:collapse;width:100%;font-size:var(--fs-sm)}.stack-table th{text-align:left;color:var(--ink-faint);font-size:var(--fs-xs);padding:4px 8px;font-weight:500}.stack-table td{vertical-align:top;padding:6px 8px}.stack-table tbody tr{border-top:1px solid var(--line)}@media (max-width:640px){.stack-table thead{display:none}.stack-table,.stack-table tbody,.stack-table tr,.stack-table td{width:100%;display:block}.stack-table tbody tr{background:var(--bg-inset);border-top:none;border:1px solid var(--line-soft);border-radius:8px;margin-bottom:8px;padding:8px 12px}.stack-table td{gap:10px;padding:4px 0;display:flex;min-width:0!important}.stack-table td:before{content:attr(data-label);color:var(--ink-faint);font-size:var(--fs-xs);flex:0 0 34%;padding-top:1px}.stack-table td>*{flex:1;min-width:0}.stack-table td:first-child{color:var(--ink);padding-bottom:6px;font-size:14px}.stack-table td:first-child:before{display:none}}@media (max-width:860px){.panel-tabs{margin-right:calc(-1 * var(--page-x));padding-right:28px;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000)}}.page-head{align-items:center;gap:var(--sp-2) var(--sp-3);flex-wrap:wrap;min-width:0;display:flex}.page-head h1{overflow-wrap:anywhere;min-width:0}@media (max-width:640px){.donut{justify-content:center}.donut>.donut-legend{flex-basis:100%!important;min-width:0!important}}
