: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}.server h2 a{color:inherit;text-decoration:none}.server h2 a:hover{text-decoration:underline}.list li>button.left.grow{align-items:center;gap:8px;min-width:0;display:flex}.list li>button.left.grow .mono{flex:none}.list li>button.left.grow .muted{text-overflow:ellipsis;overflow:hidden}.list li>pre.log{min-width:0;margin:0}textarea{width:100%;color:inherit;border:1px solid var(--border);background:var(--raised);resize:vertical;border-radius:6px;outline:none;padding:8px 10px;font:12px/1.5 ui-monospace,monospace}textarea:focus{border-color:var(--accent)}.newbot .form{max-width:560px}.newbot .form h2,.newbot .form p{margin:0}.newbot pre.log{overflow-wrap:anywhere;white-space:pre-wrap;margin:0}.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-bottom:1px solid var(--border);align-items:center;gap:8px;padding-right:12px;display:flex}.palette-input input{border:0;border-radius:0;flex:1;padding:14px 16px;font-size:15px}.palette-input .error{max-width:40%}.palette-tool.agent form{align-items:center;gap:8px;display:flex}.palette-tool.agent form input{flex:1}button.mic{opacity:.6;background:0 0;border:0;padding:4px 6px;font-size:15px;line-height:1}button.mic:hover,button.mic.rec{opacity:1}button.mic.rec{color:var(--danger)}.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)}}.list li.detail{padding-left:22px}.list li.detail p{margin:0 0 6px}ul.events{flex-direction:column;gap:2px;margin:6px 0 0;padding:0;list-style:none;display:flex}.study-new{max-width:560px;margin-top:8px}.tabs{border-bottom:1px solid var(--border);gap:4px;margin:8px 0 12px;display:flex}.tabs button{background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;padding:6px 10px}.tabs button.active{border-bottom-color:var(--text,currentColor);font-weight:500}input.search{width:100%;max-width:420px;margin-bottom:10px}input.narrow{width:72px}.circles{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.circles button{text-align:center;width:100%;color:inherit;flex-direction:column;align-items:center;gap:4px;display:flex}.circles img{object-fit:cover;background:var(--panel);border-radius:50%;width:96px;height:96px}.circles li.open img{outline:2px solid var(--accent)}.circles span:not(.muted){text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.video-editor{max-width:560px;margin:16px 0}video.round{object-fit:cover;background:var(--panel);border-radius:50%;width:200px;height:200px}label.button{border:1px solid var(--border);background:var(--raised);cursor:pointer;border-radius:6px;padding:5px 12px}label.button:hover{background:var(--hover)}.prose{white-space:pre-wrap;margin:4px 0 12px;line-height:1.55}.group h3{margin:18px 0 6px;font-size:13px;font-weight:500}.nights{align-items:flex-end;gap:3px;max-width:720px;height:120px;margin:12px 0 20px;display:flex}.night{background:0 0;border:0;border-radius:3px;flex:1;align-items:flex-end;height:100%;padding:0;display:flex;position:relative}.night .bar{background:var(--ok);border-radius:3px 3px 0 0;width:100%;min-height:2px}.night.missed .bar{background:var(--warn)}.night.active .bar{outline:2px solid var(--accent)}.night .goal{border-top:1px dashed var(--muted);position:absolute;left:0;right:0}.pairing img{background:#fff;border-radius:8px}
