:root{color-scheme:light;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--bg:#eef2f7;--panel:#f3f6fb;--text:#0f172a;--text-subtle:#4b5563;--border:#d1dae5;--accent:#2563eb;--gobee-orange:#f37021;--gobee-green:#4daf4e;--gobee-black:#231f20;--ui-gap:0.9rem;--ui-gap-tight:0.65rem;--ui-radius:12px;--ui-radius-sm:10px;--z-popover:40;--z-modal:420;--z-drawer:360;--input-bg:#edf1f7;--nm-bg:#eef2f7;--nm-surface:#f3f6fb;--nm-shadow-outer:12px 12px 24px rgba(163,177,198,0.45),-12px -12px 24px rgba(255,255,255,0.9);--nm-shadow-inner:inset 3px 3px 6px rgba(163,177,198,0.45),inset -3px -3px 6px rgba(255,255,255,0.85);--nm-shadow-soft:8px 8px 16px rgba(163,177,198,0.3),-8px -8px 16px rgba(255,255,255,0.7);--gold-border:color-mix(in srgb,var(--gobee-orange) 38%,var(--border));--gold-bg:color-mix(in srgb,var(--gobee-orange) 10%,var(--nm-surface));background-color:var(--bg);color:var(--text)}:root[data-theme=dark]{color-scheme:dark;--bg:#050816;--panel:#0f172a;--text:#e5e7eb;--text-subtle:#94a3b8;--border:#64748b;--accent:#38bdf8;--input-bg:rgba(255,255,255,0.06);--nm-bg:#050816;--nm-surface:#0f172a;--nm-shadow-outer:12px 12px 24px rgba(0,0,0,0.45),-10px -10px 20px rgba(255,255,255,0.04);--nm-shadow-inner:inset 2px 2px 6px rgba(0,0,0,0.55),inset -2px -2px 6px rgba(255,255,255,0.06);--nm-shadow-soft:6px 6px 12px rgba(0,0,0,0.25),-6px -6px 12px rgba(255,255,255,0.05);--gold-border:color-mix(in srgb,var(--gobee-orange) 28%,var(--border));--gold-bg:color-mix(in srgb,var(--gobee-orange) 8%,var(--nm-surface))}:root[data-theme=light]{color-scheme:light;--bg:#eef2f7;--panel:#f3f6fb;--text:#0f172a;--text-subtle:#4b5563;--border:#d1dae5;--accent:#2563eb;--input-bg:#edf1f7;--nm-bg:#eef2f7;--nm-surface:#f3f6fb;--nm-shadow-outer:12px 12px 24px rgba(163,177,198,0.45),-12px -12px 24px rgba(255,255,255,0.9);--nm-shadow-inner:inset 3px 3px 6px rgba(163,177,198,0.45),inset -3px -3px 6px rgba(255,255,255,0.85);--nm-shadow-soft:8px 8px 16px rgba(163,177,198,0.3),-8px -8px 16px rgba(255,255,255,0.7);--gold-border:color-mix(in srgb,var(--gobee-orange) 38%,var(--border));--gold-bg:color-mix(in srgb,var(--gobee-orange) 10%,var(--nm-surface))}*{box-sizing:border-box}:focus-visible{outline:2px solid color-mix(in srgb,var(--gobee-green) 70%,var(--text));outline-offset:2px;box-shadow:0 0 0 4px color-mix(in srgb,var(--gobee-green) 25%,transparent)}body{margin:0;background:radial-gradient(circle at 18% 12%,rgba(243,112,33,.06),transparent 55%),radial-gradient(circle at 20% 20%,color-mix(in srgb,var(--accent) 22%,var(--bg)),var(--bg) 40%),radial-gradient(circle at 80% 0,color-mix(in srgb,var(--accent) 12%,transparent),transparent 35%),var(--bg);color:var(--text)}.app-shell{max-width:1200px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;gap:1rem;padding:1.5rem 1.25rem 2rem}.app-header{display:none}.app-main{flex:1 1}.app-footer{margin-top:1.5rem;font-size:.85rem;color:var(--text-subtle);text-align:center}a{color:inherit;text-decoration:none}input:not([type=checkbox]):not([type=radio]),select,textarea{background:var(--input-bg);border:1px solid color-mix(in srgb,var(--border) 35%,transparent);border-radius:var(--ui-radius-sm);color:inherit;padding:.5rem .6rem;font-size:.9rem;box-shadow:var(--nm-shadow-inner)}textarea{resize:vertical}.field{display:grid;grid-gap:var(--ui-gap-tight);gap:var(--ui-gap-tight)}.field>.field-label,.field>label{font-size:.8rem;color:var(--text-subtle)}.field>span{font-size:.8rem;color:#94a3b8}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.m0{margin:0}.mt-tight{margin-top:.5rem}.mt{margin-top:.75rem}.row-wrap{display:flex;gap:var(--ui-gap-tight);flex-wrap:wrap;align-items:center}.min-width-160{min-width:160px}.contents{display:contents}.grid-span-full{grid-column:1/-1}.centered-cell{display:flex;justify-content:center}.ai-plan-grid{display:grid;grid-gap:.5rem;gap:.5rem;grid-template-columns:minmax(120px,1fr) minmax(120px,1fr) minmax(120px,1fr) 90px;align-items:center}button{font:inherit}.ops-columns-popover{position:relative}.ops-actions-popover{position:relative;z-index:0}.ops-actions-popover[open]{z-index:var(--z-drawer)}.ops-actions-popover[open] .ops-columns-panel{z-index:var(--z-modal)}.ops-actions-popover .ops-columns-panel{min-width:180px}.ops-actions-popover .ops-columns-panel button.ghost{width:100%;justify-content:flex-start}.ops-actions-popover .ops-columns-panel button.ghost+button.ghost{margin-top:.25rem}.ops-columns-popover>summary{list-style:none;cursor:pointer}.ops-columns-popover>summary::-webkit-details-marker{display:none}.ops-columns-panel{position:absolute;top:calc(100% + .4rem);right:0;display:grid;grid-gap:.35rem;gap:.35rem;padding:.55rem .65rem;border-radius:12px;border:1px solid var(--gold-border);background:var(--gold-bg);box-shadow:var(--nm-shadow-inner),var(--nm-shadow-outer);z-index:var(--z-popover)}.ops-role-option{display:flex;align-items:center;justify-content:flex-start;width:100%;white-space:nowrap;border:1px solid color-mix(in srgb,var(--border) 6%,transparent);background:color-mix(in srgb,var(--nm-surface) 92%,var(--border));box-shadow:var(--nm-shadow-inner);padding:.4rem .55rem;border-radius:10px;color:var(--text);cursor:pointer}.ops-role-option:active:not(:disabled),.ops-role-option:hover:not(:disabled){background:color-mix(in srgb,var(--gobee-orange) 10%,var(--nm-surface));border-color:color-mix(in srgb,var(--gobee-orange) 32%,transparent);box-shadow:var(--nm-shadow-soft)}.ops-actions-popover{z-index:45}.ops-select-pill{display:inline-flex;align-items:center;justify-content:space-between;gap:.35rem;min-height:2rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--gobee-orange) 28%,var(--border));background:color-mix(in srgb,var(--gobee-orange) 8%,var(--nm-surface));color:var(--text);padding:.35rem .75rem;box-shadow:var(--nm-shadow-inner);transition:border-color .12s ease,background-color .12s ease}summary.ops-select-pill{list-style:none}.ops-select-pill:hover{border-color:color-mix(in srgb,var(--gobee-orange) 40%,var(--border));background:color-mix(in srgb,var(--gobee-orange) 14%,var(--nm-surface))}.ops-select-measure{position:absolute;visibility:hidden;pointer-events:none;inset:0;width:0;height:0;overflow:hidden;white-space:nowrap}.ops-measured-select>summary.ops-select-pill{min-width:var(--ops-select-min-width,auto)}.ops-measured-select .ops-columns-panel{min-width:var(--ops-select-min-width,0)}.primary,a.pill,button.pill{cursor:pointer}.primary{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.45rem .85rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--gobee-green) 70%,transparent);background:color-mix(in srgb,var(--gobee-green) 22%,transparent);color:var(--text)}.primary:hover{background:color-mix(in srgb,var(--gobee-green) 28%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--gobee-green) 55%,transparent)}.primary:disabled{cursor:not-allowed;opacity:1;color:color-mix(in srgb,var(--text) 70%,var(--text-subtle));background:color-mix(in srgb,var(--gobee-green) 14%,transparent);border-color:color-mix(in srgb,var(--gobee-green) 35%,transparent)}.page-shell{display:grid;grid-template-columns:340px 1fr;grid-gap:1rem;gap:1rem;width:100%}.page-shell.ai-ops{grid-template-columns:340px minmax(0,1fr) 320px}@media (max-width:960px){.page-shell{grid-template-columns:1fr}}.ops-brief-panel{display:flex;flex-direction:column;gap:.75rem}.panel{background:var(--nm-surface);border:1px solid color-mix(in srgb,var(--border) 22%,transparent);border-radius:16px;padding:var(--ui-panel-pad,1rem);box-shadow:var(--nm-shadow-outer)}.list-panel{max-height:calc(100vh - 200px);overflow:hidden;display:flex;flex-direction:column;gap:.75rem}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.panel-header .panel-title{margin:0}.detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.nav-stack{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.panel-title{margin:0;color:var(--text)}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--text-subtle);margin:0 0 .2rem}.eyebrow,.pill{font-size:.75rem}.pill{display:inline-flex;align-items:center;padding:.25rem .6rem;border-radius:999px;background:color-mix(in srgb,var(--border) 20%,transparent);color:var(--text);border:1px solid color-mix(in srgb,var(--border) 40%,transparent)}a.pill,button.pill,summary.pill{padding:.35rem .75rem;font-size:.85rem;border-radius:999px;background:rgba(148,163,184,.06);border-color:rgba(148,163,184,.25);transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}a.pill:hover,button.pill:hover,summary.pill:hover{background:rgba(148,163,184,.12);border-color:rgba(148,163,184,.4)}.pill.active,.pill.enabled,.pill.good,.pill.healthy,.pill.ok,.pill.online{background:color-mix(in srgb,var(--gobee-green) 72%,var(--panel));border-color:color-mix(in srgb,var(--gobee-green) 55%,var(--border));color:#f8fafc;box-shadow:var(--nm-shadow-inner);text-shadow:0 1px 2px rgba(0,0,0,.22)}.pill.stale,.pill.warning{background:color-mix(in srgb,var(--gobee-orange) 74%,var(--panel));border-color:color-mix(in srgb,var(--gobee-orange) 55%,var(--border))}.pill.critical,.pill.offline,.pill.stale,.pill.warning{color:#f8fafc;box-shadow:var(--nm-shadow-inner);text-shadow:0 1px 2px rgba(0,0,0,.22)}.pill.critical,.pill.offline{background:color-mix(in srgb,#ef4444 72%,var(--panel));border-color:color-mix(in srgb,#ef4444 55%,var(--border))}.pill.unknown{background:color-mix(in srgb,var(--border) 22%,transparent);color:color-mix(in srgb,var(--text-subtle) 70%,var(--text))}span.pill{box-shadow:var(--nm-shadow-inner);text-shadow:none}span.pill.enabled,span.pill.good,span.pill.ok,span.pill.online{background:color-mix(in srgb,var(--gobee-green) 14%,var(--nm-surface));border-color:color-mix(in srgb,var(--gobee-green) 30%,transparent);color:var(--text)}span.pill.stale,span.pill.warning{background:color-mix(in srgb,var(--gobee-orange) 14%,var(--nm-surface));border-color:color-mix(in srgb,var(--gobee-orange) 30%,transparent);color:var(--text)}span.pill.critical,span.pill.offline{background:color-mix(in srgb,#ef4444 12%,var(--nm-surface));border-color:color-mix(in srgb,#ef4444 28%,transparent);color:var(--text)}span.pill.unknown{background:color-mix(in srgb,var(--border) 10%,transparent);border-color:color-mix(in srgb,var(--border) 22%,transparent)}.device-list{display:flex;flex-direction:column;gap:.5rem;overflow:auto;padding-right:.25rem}.device-button{width:100%;text-align:left;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 20%,transparent),color-mix(in srgb,var(--accent) 8%,transparent));border:1px solid color-mix(in srgb,var(--border) 40%,transparent);color:var(--text);border-radius:12px;padding:.75rem .85rem;cursor:pointer;transition:border-color .2s ease,transform .2s ease}.device-button:hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));transform:translateY(-1px)}.device-button.active{border-color:color-mix(in srgb,var(--accent) 80%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 60%,transparent)}.device-line{display:flex;justify-content:space-between;align-items:center;gap:.6rem}.device-name{font-weight:700}.status-dot{width:12px;height:12px;border-radius:50%;background:var(--text-subtle);box-shadow:0 0 0 4px color-mix(in srgb,var(--border) 25%,transparent)}.status-dot.online{background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.2)}.status-dot.offline{background:#f87171;box-shadow:0 0 0 4px rgba(248,113,113,.2)}.device-id{margin:.2rem 0;font-size:.85rem;color:color-mix(in srgb,var(--text-subtle) 75%,var(--text));word-break:break-all}.tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.4rem}.tag{font-size:.75rem;padding:.15rem .5rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--border) 40%,transparent);color:color-mix(in srgb,var(--text-subtle) 75%,var(--text))}.detail-panel{display:flex;flex-direction:column;gap:.75rem}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:.75rem;gap:.75rem}.card{background:var(--nm-surface);border:1px solid color-mix(in srgb,var(--border) 22%,transparent);border-radius:var(--ui-radius);padding:var(--ui-card-pad,.85rem);min-height:120px;box-shadow:var(--nm-shadow-soft)}.card.inset{box-shadow:var(--nm-shadow-inner);background:color-mix(in srgb,var(--nm-surface) 88%,var(--nm-bg))}.card-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.card-header h3{margin:0}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));grid-gap:.5rem;gap:.5rem;margin-top:.6rem}.metric-chip{background:color-mix(in srgb,var(--nm-surface) 88%,var(--nm-bg));border:1px solid color-mix(in srgb,var(--border) 22%,transparent);border-radius:var(--ui-radius-sm);padding:.35rem .5rem;box-shadow:var(--nm-shadow-inner)}.metric-label{margin:0;font-size:.8rem;color:color-mix(in srgb,var(--accent) 70%,var(--text))}.metric-value{margin:.1rem 0 0;font-weight:700;color:var(--text)}.history-table{display:flex;flex-direction:column;gap:.35rem;margin-top:.5rem}.history-row{display:grid;grid-template-columns:var(--ops-history-columns,180px 1fr);grid-gap:.5rem;gap:.5rem;padding:.5rem;border:1px solid color-mix(in srgb,var(--border) 25%,transparent);border-radius:8px;background:color-mix(in srgb,var(--panel) 55%,transparent)}.history-row.header{background:color-mix(in srgb,var(--panel) 75%,transparent);border-color:color-mix(in srgb,var(--border) 45%,transparent);font-weight:700}.cell,.history-row>:not(.cell){font-size:.9rem;color:var(--text);min-width:0;word-break:break-word}.metric-line{font-size:.9rem}.metric-key{color:color-mix(in srgb,var(--accent) 70%,var(--text))}.metric-val{color:var(--text)}.ai-card .ai-summary{margin-top:.4rem;white-space:pre-line;line-height:1.45}.empty-card{padding:1rem;border:1px dashed color-mix(in srgb,var(--border) 50%,transparent);border-radius:12px;color:color-mix(in srgb,var(--text-subtle) 75%,var(--text));text-align:center}.muted{color:var(--text-subtle);margin:.2rem 0;font-size:.9rem}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center}.auth-panel{width:100%;max-width:420px}.auth-links{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.75rem}.error-text{color:#fca5a5;margin:0}.header-actions{display:flex;align-items:flex-end;gap:.75rem}.range-text{margin:0}.ai-summary{background:color-mix(in srgb,var(--accent) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:10px;padding:.75rem}.ai-command-card{display:flex;flex-direction:column;gap:.35rem}.ai-command-bar-overlay{position:fixed;inset:0;background:color-mix(in srgb,var(--bg) 75%,transparent);display:flex;align-items:center;justify-content:center;padding:1.25rem;z-index:40}.ai-command-bar{width:min(720px,100%);max-height:calc(100vh - 2.5rem);overflow:auto;background:color-mix(in srgb,var(--panel) 92%,transparent);border:1px solid color-mix(in srgb,var(--border) 45%,transparent);border-radius:16px;padding:1rem;box-shadow:0 18px 40px color-mix(in srgb,var(--bg) 60%,transparent);display:flex;flex-direction:column;gap:.75rem}.ai-command-bar-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.ai-command-bar-body{display:flex;flex-direction:column;gap:.75rem}.ai-command-field{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem}.ai-command-field input,.ai-command-field select,.ai-command-field textarea{background:var(--input-bg);border:1px solid rgba(148,163,184,.25);border-radius:var(--ui-radius-sm);color:inherit;box-shadow:inset 0 1px 8px rgba(0,0,0,.18)}.ai-command-field textarea{resize:vertical}.ai-command-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:.75rem;gap:.75rem}.ai-command-checkbox{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.ai-command-actions{display:flex;justify-content:flex-end}.ai-command-summary{background:color-mix(in srgb,var(--accent) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:10px;padding:.65rem .75rem;display:flex;flex-direction:column;gap:.35rem}.ai-command-details{border:1px solid color-mix(in srgb,var(--border) 40%,transparent);border-radius:10px;padding:.65rem .75rem}.ai-command-details,.ghost{background:color-mix(in srgb,var(--panel) 70%,transparent)}.ghost{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;border:1px solid color-mix(in srgb,var(--border) 40%,transparent);color:var(--text);border-radius:999px;padding:.35rem .75rem;font-size:.85rem;cursor:pointer;transition:border-color .2s ease,background .2s ease,color .2s ease;box-shadow:inset 0 1px 10px rgba(0,0,0,.18)}.ghost:hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--panel))}.ghost:disabled{opacity:.6;cursor:not-allowed}.nav-item.active{border-color:rgba(243,112,33,.55);box-shadow:0 0 0 2px rgba(243,112,33,.12)}.ai-command-details summary{cursor:pointer;font-weight:600;margin-bottom:.4rem}.ai-command-details pre{margin:0;font-size:.85rem;white-space:pre-wrap;word-break:break-word}.ops-shell-drawer{box-shadow:var(--nm-shadow-outer);border-radius:18px}.ops-shell-drawer .metric-value{font-weight:500;font-size:.92rem;color:color-mix(in srgb,var(--text) 72%,var(--text-subtle))}.ops-shell-drawer .metric-label{color:color-mix(in srgb,var(--gobee-green) 70%,var(--text));font-weight:600;font-size:.76rem}.ops-shell-drawer strong{font-weight:600}.ops-shell-drawer-md{width:min(520px,100%)}.ops-shell-drawer-lg{width:min(720px,100%)}.ops-shell-drawer-overlay{background:color-mix(in srgb,var(--bg) 70%,transparent)}.ops-drawer-content{padding-top:.5rem}.portal-header-actions{justify-content:flex-end;margin-bottom:var(--ui-gap)}.portal-inline-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.portal-inline-actions-center{align-items:center}.portal-history-row-top{align-items:start}.portal-binding-meta{display:grid;grid-gap:.2rem;gap:.2rem}.portal-mono{font-family:var(--font-mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace)}