:root{--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--radius-pill:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--sidebar-width:240px;--sidebar-rail-width:56px;--topbar-height:48px;--actionbar-height:40px;--font-sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "SFMono-Regular", "JetBrains Mono", Menlo, Consolas, monospace;--text-xs:11px;--text-sm:12px;--text-base:13px;--text-md:14px;--text-lg:16px;--text-xl:22px;--transition-fast:.12s ease;--chroma-ground:1;--chroma-line:.62;--chroma-ink:.85;--surface-base:hsl(var(--hue-surface) calc(var(--sat-surface) * var(--tint-strength) * var(--chroma-ground)) var(--lum-base));--surface-raised:hsl(var(--hue-surface) calc(var(--sat-surface) * var(--tint-strength) * var(--chroma-ground)) var(--lum-raised));--surface-overlay:hsl(var(--hue-surface) calc(var(--sat-surface) * var(--tint-strength) * var(--chroma-ground)) var(--lum-overlay));--surface-hover:hsl(var(--hue-surface) calc(var(--sat-surface) * var(--tint-strength) * var(--chroma-ground)) var(--lum-hover));--surface-active:hsl(var(--hue-surface) calc(var(--sat-surface) * var(--tint-strength) * var(--chroma-ground)) var(--lum-active));--surface-input:hsl(var(--hue-surface) calc(var(--sat-surface) * var(--tint-strength) * var(--chroma-ground)) var(--lum-input));--border-subtle:hsl(var(--hue-surface) calc(var(--sat-surface) * var(--tint-strength) * var(--chroma-line)) var(--lum-border-subtle));--border-strong:hsl(var(--hue-surface) calc(var(--sat-surface) * var(--tint-strength) * var(--chroma-line)) var(--lum-border-strong));--text-primary:hsl(var(--hue-type) calc(var(--sat-type) * var(--tint-strength) * var(--chroma-ink)) var(--lum-text-primary));--text-secondary:hsl(var(--hue-type) calc(var(--sat-type) * var(--tint-strength) * var(--chroma-ink)) var(--lum-text-secondary));--text-muted:hsl(var(--hue-type) calc(var(--sat-type) * var(--tint-strength) * var(--chroma-ink)) var(--lum-text-muted));--code:hsl(var(--tint-ink-hue) calc(var(--tint-ink-sat) * var(--tint-strength) * var(--chroma-ground)) var(--lum-code));--code-text:hsl(var(--tint-ground-hue) calc(var(--tint-ground-sat) * var(--tint-strength) * var(--chroma-ink)) var(--lum-code-text));--status-ok:#3fb27f;--status-running:#5b9dd9;--status-stale:#8b6fc4;--status-idle:#869290;--code-warn:#d29a3a;--code-error:#ec837c;--status-warn:var(--code-warn);--status-error:var(--code-error);--danger:var(--status-error);--ring:var(--accent-text);--wash-strength:16%;--accent-wash-strength:18%;--accent-soft:color-mix(in srgb, var(--accent) var(--accent-wash-strength), transparent);--accent-text:hsl(var(--accent-hue) var(--accent-sat) var(--lum-accent-text));--status-ok-soft:color-mix(in srgb, var(--status-ok) var(--wash-strength), transparent);--status-running-soft:color-mix(in srgb, var(--status-running) var(--wash-strength), transparent);--status-warn-soft:color-mix(in srgb, var(--status-warn) var(--wash-strength), transparent);--status-error-soft:color-mix(in srgb, var(--status-error) var(--wash-strength), transparent);--status-stale-soft:color-mix(in srgb, var(--status-stale) var(--wash-strength), transparent);--status-idle-soft:color-mix(in srgb, var(--status-idle) var(--wash-strength), transparent);--danger-soft:var(--status-error-soft)}:root,:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--hue-surface:var(--tint-ink-hue);--sat-surface:var(--tint-ink-sat);--hue-type:var(--tint-ground-hue);--sat-type:var(--tint-ground-sat);--tint-strength:1;--lum-base:6%;--lum-raised:9.5%;--lum-overlay:12%;--lum-hover:13.5%;--lum-active:16.5%;--lum-input:7.5%;--lum-border-subtle:18%;--lum-border-strong:43%;--lum-text-primary:91%;--lum-text-secondary:73%;--lum-text-muted:62%;--lum-code:4%;--lum-code-text:88%;--lum-accent-text:66%;--shadow-menu:0 12px 32px #0000008c}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--hue-surface:var(--tint-ground-hue);--sat-surface:var(--tint-ground-sat);--hue-type:var(--tint-ink-hue);--sat-type:var(--tint-ink-sat);--tint-strength:1;--lum-base:91%;--lum-raised:98%;--lum-overlay:99%;--lum-hover:94.5%;--lum-active:92%;--lum-input:99%;--lum-border-subtle:83%;--lum-border-strong:49%;--lum-text-primary:11%;--lum-text-secondary:26%;--lum-text-muted:36%;--lum-code:9%;--lum-code-text:91%;--lum-accent-text:28%;--shadow-menu:0 12px 32px #14201c24;--wash-strength:12%;--accent-wash-strength:12%;--status-ok:#188052;--status-running:#2468a8;--status-warn:#915108;--status-error:#ba2b21;--status-stale:#5f429b;--status-idle:#55605d}@media (prefers-color-scheme:light){:root[data-theme=system]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--hue-surface:var(--tint-ground-hue);--sat-surface:var(--tint-ground-sat);--hue-type:var(--tint-ink-hue);--sat-type:var(--tint-ink-sat);--tint-strength:1;--lum-base:91%;--lum-raised:98%;--lum-overlay:99%;--lum-hover:94.5%;--lum-active:92%;--lum-input:99%;--lum-border-subtle:83%;--lum-border-strong:49%;--lum-text-primary:11%;--lum-text-secondary:26%;--lum-text-muted:36%;--lum-code:9%;--lum-code-text:91%;--lum-accent-text:28%;--shadow-menu:0 12px 32px #14201c24;--wash-strength:12%;--accent-wash-strength:12%;--status-ok:#188052;--status-running:#2468a8;--status-warn:#915108;--status-error:#ba2b21;--status-stale:#5f429b;--status-idle:#55605d}}:root[data-theme=contrast]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--hue-surface:var(--tint-ink-hue);--sat-surface:var(--tint-ink-sat);--hue-type:var(--tint-ground-hue);--sat-type:var(--tint-ground-sat);--tint-strength:0;--lum-base:0%;--lum-raised:0%;--lum-overlay:4%;--lum-hover:11%;--lum-active:15%;--lum-input:0%;--lum-border-subtle:42%;--lum-border-strong:100%;--lum-text-primary:100%;--lum-text-secondary:92%;--lum-text-muted:77%;--lum-code:0%;--lum-code-text:100%;--lum-accent-text:70%;--shadow-menu:0 0 0 1px #fff;--ring:var(--border-strong);--wash-strength:0%;--accent-wash-strength:0%;--status-ok:#5ff0a8;--status-running:#7cc4ff;--status-warn:#ffcf5c;--status-error:#ff8a80;--status-stale:#d0b3ff;--status-idle:#d9d9d9}:root,[data-colorway=nordic]{--tint-ground-hue:38;--tint-ground-sat:33%;--tint-ink-hue:220;--tint-ink-sat:14%;--accent-hue:19;--accent-sat:54%;--accent:#c4653a;--accent-hover:#d4754a;--accent-contrast:#12100f}[data-colorway=ocean]{--tint-ground-hue:213;--tint-ground-sat:26%;--tint-ink-hue:222;--tint-ink-sat:30%;--accent-hue:220;--accent-sat:72%;--accent:#2b66dd;--accent-hover:#2357c2;--accent-contrast:#fff}[data-colorway=dragon]{--tint-ground-hue:12;--tint-ground-sat:30%;--tint-ink-hue:0;--tint-ink-sat:32%;--accent-hue:0;--accent-sat:67%;--accent:#d62d2d;--accent-hover:#c22727;--accent-contrast:#fff}[data-colorway=solar]{--tint-ground-hue:44;--tint-ground-sat:38%;--tint-ink-hue:24;--tint-ink-sat:32%;--accent-hue:39;--accent-sat:88%;--accent:#f2b134;--accent-hover:#ffc14d;--accent-contrast:#1d1603}[data-colorway=vampire]{--tint-ground-hue:288;--tint-ground-sat:24%;--tint-ink-hue:290;--tint-ink-sat:26%;--accent-hue:286;--accent-sat:54%;--accent:#a641c6;--accent-hover:#9235b0;--accent-contrast:#fff}[data-colorway=clover]{--tint-ground-hue:142;--tint-ground-sat:22%;--tint-ink-hue:148;--tint-ink-sat:24%;--accent-hue:150;--accent-sat:59%;--accent:#2fb673;--accent-hover:#43c886;--accent-contrast:#04180e}[data-colorway=rose]{--tint-ground-hue:340;--tint-ground-sat:30%;--tint-ink-hue:338;--tint-ink-sat:26%;--accent-hue:336;--accent-sat:76%;--accent:#e8548f;--accent-hover:#f26da2;--accent-contrast:#24050f}[data-colorway=noir]{--tint-ground-hue:0;--tint-ground-sat:0%;--tint-ink-hue:0;--tint-ink-sat:0%;--accent-hue:0;--accent-sat:0%;--accent:#8f8f8f;--accent-hover:#a3a3a3;--accent-contrast:#0b0b0b}@media (prefers-reduced-motion:reduce){:root{--transition-fast:0s}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--actionbar-height);padding:0 var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-raised);color:var(--text-primary);font:inherit;cursor:pointer;transition:background var(--transition-fast);font-weight:500;display:inline-flex}.button:hover:not(:disabled){background:var(--surface-hover)}.button:disabled{opacity:.55;cursor:not-allowed}.button-primary{background:var(--accent);color:var(--accent-contrast);border-color:#0000}.button-primary:hover:not(:disabled){background:var(--accent-hover)}.button-danger{background:var(--danger);color:var(--accent-contrast);border-color:#0000}.button-danger:hover:not(:disabled){background:color-mix(in srgb, var(--danger) 85%, black)}.button-quiet{color:var(--text-secondary);background:0 0;border-color:#0000}.button-quiet:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.field{gap:var(--space-2);display:grid}.field-label{color:var(--text-secondary);font-size:var(--text-sm);font-weight:500}.field-input{min-height:var(--actionbar-height);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-input);color:var(--text-primary);font:inherit}.field-input:disabled{opacity:.55}.field-input::placeholder{color:var(--text-muted);opacity:1}.field-code{font-family:var(--font-mono);font-size:var(--text-lg);letter-spacing:.35em;text-transform:uppercase}.pill{align-items:center;gap:var(--space-2);padding:2px var(--space-3) 2px var(--space-2);border-radius:var(--radius-pill);background:var(--pill-wash);color:var(--text-primary);font-size:var(--text-sm);white-space:nowrap;font-weight:500;display:inline-flex}.pill-dot{background:var(--pill-colour);border-radius:50%;flex:none;width:7px;height:7px}.pill[data-tone=ok]{--pill-colour:var(--status-ok);--pill-wash:var(--status-ok-soft)}.pill[data-tone=running]{--pill-colour:var(--status-running);--pill-wash:var(--status-running-soft)}.pill[data-tone=warn]{--pill-colour:var(--status-warn);--pill-wash:var(--status-warn-soft)}.pill[data-tone=error]{--pill-colour:var(--status-error);--pill-wash:var(--status-error-soft)}.pill[data-tone=stale]{--pill-colour:var(--status-stale);--pill-wash:var(--status-stale-soft)}.pill[data-tone=idle]{--pill-colour:var(--status-idle);--pill-wash:var(--status-idle-soft)}.state{gap:var(--space-2);padding:var(--space-7) var(--space-5);text-align:center;justify-items:center;display:grid}.state-title{color:var(--text-primary);font-size:var(--text-md);margin:0;font-weight:600}.state-body{max-width:52ch;color:var(--text-secondary);margin:0}.state-reference{color:var(--text-muted);font-size:var(--text-sm);margin:0}.state-action{margin-top:var(--space-2)}.state[data-kind=error] .state-title{color:var(--status-error)}.state-spinner{border:2px solid var(--border-strong);border-top-color:var(--accent-text);opacity:0;border-radius:50%;width:18px;height:18px;animation:.8s linear .32s infinite forwards spin}@keyframes spin{0%{opacity:1;transform:rotate(0)}to{opacity:1;transform:rotate(360deg)}}.menu{position:relative}.menu-trigger{padding:var(--space-1);border-radius:var(--radius-md);color:inherit;cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.menu-trigger:hover,.menu-trigger[aria-expanded=true]{background:var(--surface-hover)}.menu-panel{top:calc(100% + var(--space-2));z-index:20;min-width:210px;padding:var(--space-2);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-overlay);box-shadow:var(--shadow-menu);position:absolute}.menu-panel[data-align=end]{right:0}.menu-panel[data-align=start]{left:0}.menu-heading{margin:var(--space-2) var(--space-2) var(--space-1);color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;font-weight:600}.menu-group{display:grid}.menu-item{width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;display:flex}.menu-item:hover{background:var(--surface-hover)}.menu-item[aria-checked=true]{background:var(--accent-soft);font-weight:600}.menu-item[aria-checked=true]:after{content:"✓";color:var(--accent-text)}.menu-identity{padding:var(--space-2) var(--space-3) var(--space-3);border-bottom:1px solid var(--border-subtle);margin-bottom:var(--space-2)}.menu-identity-email{overflow-wrap:anywhere;margin:0;font-weight:600}.menu-identity-role{color:var(--text-secondary);font-size:var(--text-sm);margin:0}.menu-colorways{gap:var(--space-2);padding:var(--space-2);grid-template-columns:repeat(4,1fr);display:grid}.swatch{border:1px solid var(--border-subtle);background:var(--surface-raised);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;padding:0;display:inline-flex}.swatch[data-selected=true]{border-color:var(--text-primary);border-width:2px}.swatch-fill{background:var(--accent);border-radius:50%;width:13px;height:13px}.avatar{background:var(--accent-soft);width:26px;height:26px;color:var(--text-primary);font-size:var(--text-sm);border-radius:50%;justify-content:center;align-items:center;font-weight:600;display:inline-flex}
.shell{grid-template-columns:var(--shell-sidebar) minmax(0, 1fr);--shell-sidebar:var(--sidebar-width);height:100%;transition:grid-template-columns var(--transition-fast);display:grid}.shell:has(.sidebar[data-collapsed=true]){--shell-sidebar:var(--sidebar-rail-width)}.shell-main{grid-template-rows:var(--topbar-height) minmax(0, 1fr) auto;grid-template-columns:minmax(0,1fr);min-width:0;height:100%;display:grid}.shell-content{padding:var(--space-5);min-width:0;overflow:auto}.shell-content:focus{outline:none}.skip-link{top:var(--space-2);left:var(--space-2);z-index:40;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--accent);color:var(--accent-contrast);transition:transform var(--transition-fast);font-weight:600;position:absolute;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.sidebar{grid-template-rows:var(--topbar-height) 1fr auto;border-right:1px solid var(--border-subtle);background:var(--surface-raised);min-width:0;display:grid;overflow:hidden}.sidebar-brand{align-items:center;gap:var(--space-3);padding:0 var(--space-4);border-bottom:1px solid var(--border-subtle);white-space:nowrap;font-weight:600;display:flex}.sidebar-mark{color:var(--accent-text);flex:none;justify-content:center;align-items:center;display:inline-flex}.sidebar[data-collapsed=true] .sidebar-wordmark,.sidebar[data-collapsed=true] .sidebar-item-label{display:none}.sidebar-items{padding:var(--space-3) var(--space-2);align-content:start;gap:2px;margin:0;list-style:none;display:grid}.sidebar-item{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--text-secondary);white-space:nowrap;display:flex}.sidebar-item:hover{background:var(--surface-hover);color:var(--text-primary)}.sidebar-item[data-active=true]{background:var(--accent-soft);color:var(--text-primary);font-weight:600}.sidebar-item-dot{opacity:.35;background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.sidebar-item[data-active=true] .sidebar-item-dot{background:var(--accent-text);opacity:1}.sidebar-toggle{margin:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;justify-self:start}.sidebar-toggle:hover{background:var(--surface-hover);color:var(--text-primary)}.topbar{align-items:center;gap:var(--space-4);padding:0 var(--space-5);border-bottom:1px solid var(--border-subtle);background:var(--surface-raised);display:flex}.topbar-title{font-size:var(--text-md);text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-weight:600;overflow:hidden}.topbar-actions{align-items:center;gap:var(--space-2);flex:none;margin-left:auto;display:flex}.shell-footer{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-5);border-top:1px solid var(--border-subtle);background:var(--surface-raised);color:var(--text-muted);font-size:var(--text-xs);white-space:nowrap;min-width:0;display:flex}.shell-footer-name{text-overflow:ellipsis;min-width:0;overflow:hidden}.shell-footer-version{font-family:var(--font-mono);color:var(--text-secondary);letter-spacing:.01em;flex:none;margin-left:auto}.panel{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-raised)}.boot{min-height:100%}.boot-failure{min-height:100%;padding:var(--space-5);place-content:center;display:grid}
.login{place-content:center;justify-items:center;gap:var(--space-4);min-height:100%;padding:var(--space-5);display:grid}.login-card{gap:var(--space-4);width:min(380px,100%);padding:var(--space-6);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-raised);display:grid}.login-brand{align-items:center;gap:var(--space-3);color:var(--accent-text);font-size:var(--text-sm);letter-spacing:.08em;text-transform:uppercase;margin:0;font-weight:600;display:flex}.login-mark{letter-spacing:normal;flex:none}.login-title{font-size:var(--text-xl);margin:0;font-weight:600}.login-form{gap:var(--space-4);display:grid}.login-banner,.login-notice{padding:var(--space-3);border-radius:var(--radius-md);background:var(--accent-soft);color:var(--text-primary);font-size:var(--text-sm);margin:0}.login-error{color:var(--status-error);font-size:var(--text-sm);margin:0}.login-divider{align-items:center;gap:var(--space-3);color:var(--text-muted);font-size:var(--text-sm);margin:0;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--border-subtle);flex:1;height:1px}.login-version{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-xs);margin:0}
.page{gap:var(--space-4);grid-template-columns:minmax(0,1fr);align-content:start;min-width:0;display:grid}.page-head{justify-content:space-between;align-items:baseline;gap:var(--space-4);flex-wrap:wrap;display:flex}.page-title{font-size:var(--text-xl);margin:0;font-weight:600}.page-note{padding:var(--space-3) var(--space-4);border:1px solid var(--border-subtle);border-left:3px solid var(--status-warn);border-radius:var(--radius-md);background:var(--status-warn-soft);color:var(--text-secondary);margin:0}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.summary{align-items:center;gap:var(--space-3) var(--space-6);flex-wrap:wrap;display:flex}.summary-figures{gap:var(--space-6);flex-wrap:wrap;margin:0;display:flex}.summary-figure{flex-direction:column-reverse;gap:0;display:flex}.summary-label{color:var(--text-secondary);font-size:var(--text-sm)}.summary-value{font-size:var(--text-lg);font-variant-numeric:tabular-nums;margin:0;font-weight:600}.summary-figure[data-tone=warn] .summary-value{color:var(--status-warn)}.summary-channel{color:var(--text-secondary);font-size:var(--text-sm);margin:0}.summary-channel[data-state=problem]{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-warn-soft);color:var(--text-primary)}.summary-channel code{font-family:var(--font-mono)}.toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.toolbar-group{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.toolbar-end{margin-left:auto}.toolbar-search{min-width:15rem}.toolbar-select{min-width:9rem}.toolbar-check{align-items:center;gap:var(--space-2);color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex}.toolbar-count{padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--surface-hover);color:var(--text-primary);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.toolbar-updated{color:var(--text-muted);font-size:var(--text-sm)}.table-scroll{max-height:calc(100vh - 22rem);overflow:auto}.fleet-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.fleet-table th,.fleet-table td{padding:var(--space-3) var(--space-4);text-align:left;vertical-align:top}.fleet-table thead th{z-index:1;background:var(--surface-raised);border-bottom:1px solid var(--border-strong);color:var(--text-secondary);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;padding:0;font-weight:600;position:sticky;top:0}.fleet-table thead th:last-child{padding:var(--space-3) var(--space-4)}.fleet-table tbody tr{border-top:1px solid var(--border-subtle)}.fleet-table tbody tr:hover{background:var(--surface-hover)}.fleet-table tbody tr[data-attention=true]{box-shadow:inset 3px 0 0 var(--status-warn)}.table-sort{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-3) var(--space-4);color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;text-align:left;cursor:pointer;background:0 0;border:0;font-weight:600;display:inline-flex}.table-sort:hover,.table-sort[data-active=true]{color:var(--text-primary)}.table-sort-mark{min-width:.75em;display:inline-block}.table-footnote{padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-subtle);color:var(--text-muted);font-size:var(--text-sm);margin:0}.fleet-device{flex-direction:column;gap:2px;font-weight:400;display:flex}.fleet-device-id{color:var(--accent-text);font-family:var(--font-mono);font-weight:600}.fleet-device-id:hover{text-decoration:underline}.fleet-device-meta{color:var(--text-muted);font-size:var(--text-xs)}.fleet-reason{margin:var(--space-2) 0 0;max-width:34ch;color:var(--text-secondary);font-size:var(--text-xs)}.fleet-heartbeat{white-space:nowrap;flex-direction:column;gap:2px;display:flex}.fleet-since{color:var(--text-muted);font-size:var(--text-xs)}.fleet-release{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.fleet-sha{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-xs)}.fleet-run{font-size:var(--text-xs)}.fleet-muted{color:var(--text-muted);font-size:var(--text-xs)}.detail-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(22rem,1fr));align-items:start;display:grid}.detail-panel{padding:var(--space-4) var(--space-5) var(--space-5)}.detail-head{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.detail-heading{margin:0 0 var(--space-3);font-size:var(--text-md);font-weight:600}.detail-subheading{margin:var(--space-5) 0 var(--space-2);color:var(--text-secondary);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;font-weight:600}.detail-muted{color:var(--text-muted);font-size:var(--text-sm);margin:0}.detail-alert{margin:var(--space-3) 0 0;padding:var(--space-2) var(--space-3);border-left:3px solid var(--status-warn);border-radius:var(--radius-sm);background:var(--status-warn-soft);font-size:var(--text-sm)}.detail-note{margin:var(--space-3) 0 0;color:var(--text-secondary);font-size:var(--text-sm)}.facts{gap:var(--space-3) var(--space-4);grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));margin:0;display:grid}.fact{flex-direction:column;gap:2px;min-width:0;display:flex}.fact-label{color:var(--text-muted);font-size:var(--text-xs)}.fact-value{overflow-wrap:anywhere;font-size:var(--text-sm);margin:0}.control-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.command-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.command{align-items:center;gap:var(--space-2);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.command-type{font-weight:500}.command-when{color:var(--text-muted);font-size:var(--text-xs)}.command-result{color:var(--text-secondary);font-size:var(--text-xs);flex-basis:100%;margin:0}.refused{gap:var(--space-2);flex-wrap:wrap;display:flex}.refused-commit{color:var(--text-muted)}.dispatch-form{align-items:end;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));display:grid}.dispatch-field{gap:var(--space-2);border:0;min-width:0;margin:0;padding:0;display:grid}.dispatch-label{color:var(--text-secondary);font-size:var(--text-sm);padding:0;font-weight:500}.dispatch-modes{gap:var(--space-2)}.dispatch-mode{gap:0 var(--space-2);font-size:var(--text-sm);grid-template-columns:auto 1fr;align-items:baseline;display:grid}.dispatch-mode-label{font-weight:500}.dispatch-mode-meaning{color:var(--text-muted);font-size:var(--text-xs);grid-column:2}.dispatch-queue{gap:var(--space-2);counter-reset:none;margin:0;padding:0;list-style:none;display:grid}.dispatch-queued{align-items:center;gap:var(--space-2);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.dispatch-position{border-radius:var(--radius-sm);background:var(--surface-hover);min-width:1.5rem;height:1.5rem;color:var(--text-secondary);font-size:var(--text-xs);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;display:inline-flex}.dispatch-routine{font-weight:500}.dispatch-when{color:var(--text-muted);font-size:var(--text-xs)}.dispatch-reason{color:var(--text-secondary);font-size:var(--text-xs);flex-basis:100%;margin:0}.log-pane{max-height:26rem;margin-top:var(--space-3);padding:var(--space-2);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--code);color:var(--code-text);--status-warn:var(--code-warn);--status-error:var(--code-error);font-family:var(--font-mono);font-size:var(--text-xs);line-height:1.6;overflow:auto}.log-pane:focus-visible{outline:2px solid var(--ring)}.log-line{gap:var(--space-2);grid-template-columns:6.5rem 4.5rem 1fr;padding:1px 0;display:grid}.log-at,.log-level{color:var(--code-text);opacity:.62}.log-line[data-level=ERROR] .log-level,.log-line[data-level=CRITICAL] .log-level{color:var(--status-error)}.log-line[data-level=WARNING] .log-level{color:var(--status-warn)}.log-message{overflow-wrap:anywhere;white-space:pre-wrap}.log-spooled{margin-left:var(--space-2);padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--status-stale-soft);color:var(--code-text)}.log-exception{margin:var(--space-1) 0 var(--space-2);padding:var(--space-2);border-radius:var(--radius-sm);color:var(--code-text);background:#ffffff12;overflow-x:auto}.run-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.run{padding:var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.run[data-current=true]{box-shadow:inset 3px 0 0 var(--status-running)}.run-head{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.run-routine{font-family:var(--font-mono);font-weight:600}.run-when{color:var(--text-muted);font-size:var(--text-xs)}.run-error{margin:var(--space-2) 0 0;color:var(--status-error);font-size:var(--text-xs)}.run-confirm{align-items:center;gap:var(--space-2);font-size:var(--text-sm);flex-wrap:wrap;display:inline-flex}.evidence{gap:var(--space-3);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.artifact{gap:var(--space-1);flex-direction:column;width:11rem;margin:0;display:flex}.artifact-preview,.artifact-blank{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-hover);object-fit:cover;object-position:top;width:100%;height:7rem}.artifact-blank{color:var(--text-muted);font-size:var(--text-xs);justify-content:center;align-items:center;display:flex}.artifact-caption{flex-direction:column;gap:2px;min-width:0;display:flex}.artifact-open{min-height:auto;font-size:var(--text-xs);text-align:left;text-overflow:ellipsis;white-space:nowrap;justify-content:flex-start;padding:0;overflow:hidden}.artifact-size{color:var(--text-muted);font-size:var(--text-xs)}.fact-reason{color:var(--text-secondary);font-size:var(--text-xs);margin-top:2px;display:block}.fleet-sha-commit{color:var(--text-muted);font-size:var(--text-xs);font-weight:400;display:block}
.detail-count{color:var(--text-muted);font-size:var(--text-xs)}.run-device{font-weight:600}.run[data-liveness=orphaned]{box-shadow:inset 3px 0 0 var(--status-warn)}.run-note{margin:var(--space-2) 0 0;color:var(--text-secondary);font-size:var(--text-xs)}.run-alert{margin:var(--space-2) 0 0;color:var(--status-warn);font-size:var(--text-xs)}.table-muted{color:var(--text-muted)}.table-flag{color:var(--status-warn);font-weight:600}.table tbody tr[data-overdue=true] td:first-child{box-shadow:inset 3px 0 0 var(--status-warn)}.table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.table th,.table td{padding:var(--space-2) var(--space-4);text-align:left;vertical-align:top}.table thead th{z-index:1;background:var(--surface-raised);border-bottom:1px solid var(--border-strong);color:var(--text-secondary);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;font-weight:600;position:sticky;top:0}.table tbody tr{border-top:1px solid var(--border-subtle)}.table tbody tr.table-detail{border-top:0}.table tbody tr.table-detail td{border-top:0;padding-top:0}.table tbody tr.table-detail p{margin:0}.table tbody tr.table-detail p+p{margin-top:var(--space-1)}
.release-channel{border-left:3px solid var(--status-idle)}.release-channel[data-state=promoted]{border-left-color:var(--status-ok)}.release-channel[data-state=unset],.release-channel[data-state=missing]{border-left-color:var(--status-warn)}.release-channel[data-state=invalid]{border-left-color:var(--status-error)}.release-channel-head{align-items:center;gap:var(--space-3);margin:0 0 var(--space-2);flex-wrap:wrap;display:flex}.release-channel-head .pill{white-space:normal;max-width:100%}.release-channel-sha{font-family:var(--font-mono);font-size:var(--text-sm)}a.release-channel-sha:hover{text-decoration:underline}.release-channel-sha[data-raw=true]{padding:0 var(--space-2);border:1px solid var(--status-error);border-radius:var(--radius-sm);color:var(--text-primary)}.release-channel-detail{margin:0 0 var(--space-2);color:var(--text-secondary)}.release-channel-consequence{margin:0 0 var(--space-3);color:var(--text-primary)}.release-channel[data-state=unset] .release-channel-consequence,.release-channel[data-state=missing] .release-channel-consequence,.release-channel[data-state=invalid] .release-channel-consequence{font-weight:600}.release-channel-parameter{color:var(--text-muted);font-size:var(--text-sm);overflow-wrap:anywhere;margin:0}.release-channel-parameter-label{text-transform:uppercase;font-size:var(--text-xs);letter-spacing:.06em}.release-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.release-table th,.release-table td{padding:var(--space-3) var(--space-4);text-align:left;vertical-align:top}.release-table thead th{z-index:1;background:var(--surface-raised);border-bottom:1px solid var(--border-strong);color:var(--text-secondary);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;font-weight:600;position:sticky;top:0}.release-table tbody tr{border-top:1px solid var(--border-subtle)}.release-table tbody tr[data-attention=true]{box-shadow:inset 3px 0 0 var(--status-warn)}.release-table tbody tr[data-promoted=true]{box-shadow:inset 3px 0 0 var(--status-ok)}.release-commit,.release-device{max-width:40rem;font-weight:400}.release-commit-title{color:var(--text-primary);font-weight:600;display:block}.release-commit-meta{align-items:center;gap:var(--space-2);margin-top:var(--space-1);color:var(--text-muted);font-size:var(--text-xs);flex-wrap:wrap;display:flex}.release-commit-author{color:var(--text-secondary)}.release-commit-promoted{padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--status-ok-soft);color:var(--text-primary);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.release-commit-failed{margin-top:var(--space-1);color:var(--status-error);font-size:var(--text-xs);display:block}.release-device-detail{margin-top:var(--space-1);color:var(--text-secondary);font-size:var(--text-xs);display:block}.release-unreported{color:var(--text-muted)}.release-action{white-space:nowrap;text-align:right}.release-action-none{color:var(--text-muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em}.release-commit-confirm{padding:var(--space-4);border-top:1px solid var(--border-subtle)}.release-device-pin{margin-top:var(--space-3);white-space:normal;font-weight:400}.release-table tbody tr[data-open=true]{background:var(--surface-active);box-shadow:inset 3px 0 0 var(--accent-text)}.release-confirm{border:1px solid var(--border-strong)}.release-confirm[data-state=blocked]{border-left:3px solid var(--status-error)}.release-confirm[data-state=ready]{border-left:3px solid var(--accent-text)}.release-confirm-title{margin:0 0 var(--space-3);font-size:var(--text-md);font-weight:600}.release-confirm-body{margin:0 0 var(--space-3);color:var(--text-secondary)}.release-confirm-changed{margin:0 0 var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border-subtle);border-left:3px solid var(--status-warn);border-radius:var(--radius-md);background:var(--status-warn-soft)}.release-confirm-changed p{margin:0 0 var(--space-2)}.release-confirm-changed p:last-child{margin-bottom:0}.release-confirm-changed-title{font-weight:600}.release-confirm-facts{gap:var(--space-2);margin:0 0 var(--space-4);display:grid}.release-confirm-facts>div{gap:var(--space-3);grid-template-columns:9rem minmax(0,1fr);display:grid}.release-confirm-facts dt{color:var(--text-muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em}.release-confirm-facts dd{margin:0}.release-confirm-devices{padding-left:var(--space-4);margin:0}.release-confirm-blocked{margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--danger-soft);color:var(--text-primary);font-weight:600}.release-confirm-clear{margin:0 0 var(--space-4);color:var(--text-secondary)}.release-confirm-hazards{gap:var(--space-3);margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--status-warn);border-radius:var(--radius-md);display:grid}.release-confirm-hazards legend{padding:0 var(--space-2);font-weight:600}.release-confirm-hazard{gap:var(--space-3);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.release-confirm-hazard-label{font-weight:600;display:block}.release-confirm-hazard-detail{margin-top:var(--space-1);color:var(--text-secondary);font-size:var(--text-sm);display:block}.release-confirm-actions,.release-pin-actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.release-confirm-outstanding{color:var(--text-secondary);font-size:var(--text-sm)}.release-pin{gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border-strong);border-left:3px solid var(--accent-text);border-radius:var(--radius-md);background:var(--surface-raised);display:grid}.release-pin p{margin:0}.release-pin-field{gap:var(--space-2);display:grid}.release-pin-select{padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-input);color:var(--text-primary);font:inherit;max-width:100%}.release-pin-warning{color:var(--text-primary);font-weight:600}.release-pin-refusal{color:var(--status-error)}.release-pin-note{color:var(--text-muted);font-size:var(--text-sm)}.release-commit-version{margin-right:var(--space-2);padding:1px var(--space-2);border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--text-primary);font-family:var(--font-mono);font-size:var(--text-xs);white-space:nowrap;vertical-align:baseline;font-weight:600;display:inline-block}.release-channel-commit{margin-left:var(--space-2);color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-xs)}
.reauth{box-shadow:inset 3px 0 0 var(--status-running)}.invite{align-items:center;gap:var(--space-2);margin:var(--space-3) 0;flex-wrap:wrap;display:flex}.invite>p{flex-basis:100%;margin:0}.invite .field-input[type=email]{flex:18rem;min-width:0}.table tbody tr[data-me=true] td:first-child{box-shadow:inset 3px 0 0 var(--accent-text)}.passkey-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.passkey{padding:var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.passkey-head{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.passkey-head .field-input{flex:14rem;min-width:0}.passkey-when{margin:var(--space-2) 0 0;color:var(--text-muted);font-size:var(--text-xs)}.audit-detail{color:var(--text-secondary);font-size:var(--text-xs);margin:0}
*,:before,:after{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}body{background:var(--surface-base);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-base);-webkit-font-smoothing:antialiased;line-height:1.5}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--ring);outline-offset:2px}code,pre,.mono{font-family:var(--font-mono);font-size:var(--text-sm)}
