:root{--bg:#fcfcfc;--panel:#f4f4f5;--raised:#fff;--text:#18181b;--muted:#71717a;--border:#e4e4e7;--hover:#ececee;--accent:#5e6ad2;--accent-text:#fff;--danger:#dc2626;--ok:#16a34a;--warn:#d97706;--shadow:0 16px 48px #00000029;--radius:8px;color:var(--text);background:var(--bg);font:14px/1.45 Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root{--bg:#101012;--panel:#151517;--raised:#1c1c1f;--text:#ececef;--muted:#8a8f98;--border:#26262a;--hover:#222226;--accent:#7c84e8;--accent-text:#0b0b0d;--danger:#f87171;--ok:#4ade80;--warn:#fbbf24;--shadow:0 16px 48px #00000080}}*{box-sizing:border-box}body{background:var(--bg);margin:0}button,input,select{font:inherit;color:inherit}button{border:1px solid var(--border);background:var(--raised);cursor:pointer;border-radius:6px;padding:5px 12px}button:hover:not(:disabled){background:var(--hover)}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}button.primary:hover:not(:disabled){background:var(--accent);filter:brightness(1.08)}button.link{color:var(--muted);background:0 0;border:0;padding:0}button.link:hover:not(:disabled){color:var(--text);background:0 0}input,select{border:1px solid var(--border);background:var(--raised);border-radius:6px;outline:none;width:100%;padding:7px 10px}input:focus,select:focus{border-color:var(--accent)}input[type=checkbox]{width:auto}kbd{color:var(--muted);border:1px solid var(--border);border-radius:4px;padding:0 4px;font:11px ui-monospace,monospace}h1{margin:0 0 16px;font-size:15px;font-weight:600}.muted{color:var(--muted)}h1.title{align-items:baseline;gap:8px;display:flex}h1.title a{text-decoration:none}h1.title a:hover{color:var(--text)}.small{font-size:12px}.mono{font-family:ui-monospace,monospace;font-size:12px}.error{color:var(--danger);margin:0}.empty{text-align:center;margin:48px 0}.shell{grid-template-columns:220px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--panel);border-right:1px solid var(--border);flex-direction:column;gap:12px;height:100vh;padding:12px;display:flex;position:sticky;top:0}.sidebar .command{color:var(--muted);text-align:left;justify-content:space-between;align-items:center;display:flex}.sidebar nav{flex-direction:column;gap:1px;display:flex}.sidebar nav a{color:var(--text);border-radius:6px;justify-content:space-between;align-items:center;padding:5px 8px;text-decoration:none;display:flex}.sidebar nav a:hover{background:var(--hover)}.sidebar nav a.active{background:var(--hover);font-weight:500}.badge{text-align:center;background:var(--accent);min-width:18px;color:var(--accent-text);border-radius:9px;padding:0 5px;font-size:11px}.sidebar footer{justify-content:space-between;margin-top:auto;padding:0 8px;font-size:13px;display:flex}main{width:100%;max-width:880px;padding:24px 32px}.list{margin:0;padding:0;list-style:none}.list li{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:9px 4px;display:flex}.list .grow{flex:1;min-width:0}.list .grow>div{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.time{text-align:right;width:110px}.dot{background:var(--muted);border-radius:50%;flex:none;width:8px;height:8px}.dot.done{background:var(--ok)}.dot.pending,.dot.warning{background:var(--warn)}.dot.error,.dot.critical{background:var(--danger)}.dot.info{background:var(--accent)}.list li>a{min-width:0;color:inherit;flex:1;align-items:center;gap:12px;text-decoration:none;display:flex}.list li:has(>a):hover{background:var(--hover)}h2{color:var(--muted);margin:0 0 4px;font-size:12px;font-weight:500}.group{margin-bottom:28px}button.left{text-align:left;text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}button.hidden{visibility:hidden}input.inline{margin-top:2px;padding:2px 6px;font-size:12px}.add{margin:4px 0}.add input{background:0 0;border-color:#0000;padding-left:4px}.add input:focus{border-color:var(--border);background:var(--raised)}a.button{border:1px solid var(--border);background:var(--raised);color:inherit;border-radius:6px;padding:5px 12px;text-decoration:none}a.button:hover{background:var(--hover)}.list li>a.button{flex:none}a.button.hidden{visibility:hidden}.warn{color:var(--warn)}h1.title a.muted:hover{color:var(--text)}h1.title .dot{align-self:center}h2.row{align-items:baseline;gap:12px;display:flex}button.link.on{color:var(--text)}.actions{align-items:center;gap:8px;margin-bottom:24px;display:flex}.actions a{margin-left:auto;text-decoration:none}.push{margin-left:auto}.on-hover{visibility:hidden}li:hover .on-hover,li:focus-within .on-hover{visibility:visible}@media (hover:none){.on-hover{visibility:visible}}input.invalid{color:var(--danger)}.env .key{text-overflow:ellipsis;white-space:nowrap;flex:none;width:38%;overflow:hidden}.env button.value{color:var(--text)}.env li{padding:5px 4px}.server{margin-bottom:8px}.server h2{align-items:center;gap:8px;display:flex}.meters{border:1px solid var(--border);border-radius:var(--radius);background:var(--border);grid-template-columns:repeat(4,1fr);gap:1px;margin:8px 0 6px;display:grid;overflow:hidden}.meter{background:var(--raised);min-width:0;padding:8px 10px}.meter .value{font-variant-numeric:tabular-nums;font-size:18px;font-weight:500}.spark{width:100%;height:24px;margin-top:4px;display:block}.spark polyline{fill:none;stroke:var(--accent);stroke-width:1.5px}.log{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);white-space:pre-wrap;word-break:break-all;max-height:420px;margin:4px 0 0;padding:10px 12px;font:12px/1.5 ui-monospace,monospace;overflow:auto}.log .error{color:var(--danger)}.log .warn{color:var(--warn)}details summary{cursor:pointer;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overlay{z-index:10;background:#00000040;justify-content:center;align-items:flex-start;padding-top:14vh;display:flex;position:fixed;inset:0}.palette{background:var(--raised);border:1px solid var(--border);width:min(620px,100vw - 32px);max-height:64vh;box-shadow:var(--shadow);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.palette>input{border:0;border-bottom:1px solid var(--border);border-radius:0;padding:14px 16px;font-size:15px}.palette ul{margin:0;padding:6px;list-style:none;overflow-y:auto}.palette li{cursor:pointer;border-radius:6px;justify-content:space-between;gap:12px;padding:8px 10px;display:flex}.palette li[aria-selected=true]{background:var(--hover)}.palette-tool{flex-direction:column;gap:14px;padding:14px 16px;display:flex;overflow-y:auto}.palette-tool header{align-items:center;gap:10px;display:flex}.palette:has(.agent){max-height:80vh}.palette-tool.agent{min-height:0;overflow:hidden}.chat{flex-direction:column;flex:1;gap:16px;min-height:0;display:flex;overflow-y:auto}.turn{flex-direction:column;gap:6px;display:flex}.turn .question{font-weight:500}.turn .reply{white-space:pre-wrap;line-height:1.55}.turn .reply code{background:var(--panel);border-radius:4px;padding:0 4px;font:12px ui-monospace,monospace}.step{align-items:center;gap:8px;font-size:12px;display:flex}.step .grow{overflow-wrap:anywhere;flex:1;min-width:0}.step button{padding:2px 10px}.form{flex-direction:column;gap:10px;display:flex}.form label{color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.form label.check{flex-direction:row-reverse;justify-content:flex-end;align-items:center;gap:8px}.form button{align-self:flex-start}.result table{border-collapse:collapse;width:100%;font-size:12px}.result th,.result td{text-align:left;border-bottom:1px solid var(--border);text-overflow:ellipsis;white-space:nowrap;max-width:220px;padding:5px 8px;overflow:hidden}.result th{color:var(--muted);font-weight:500}.result dl{gap:4px;margin:0;display:grid}.result dl div{gap:12px;display:flex}.result dt{color:var(--muted);min-width:120px}.result dd{margin:0}.login{justify-content:center;align-items:center;min-height:100vh;display:flex}.login form{flex-direction:column;gap:8px;width:280px;display:flex}.login button{margin-top:4px;padding:7px}@media (width<=720px){.shell{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr)}.sidebar{border-right:0;border-bottom:1px solid var(--border);flex-flow:wrap;align-items:center;height:auto;position:static}.sidebar nav{flex-direction:row}.sidebar footer{gap:12px;margin:0 0 0 auto}.sidebar .command kbd{display:none}main{padding:16px}.time{width:auto}.meters{grid-template-columns:repeat(2,1fr)}}
