:root{color-scheme:dark;--bg: #0b0f1a;--bg-raised: #131929;--bg-sunken: #080b14;--line: #232b40;--text: #e9edf6;--muted: #8e98b0;--lamp: #ffb547;--lamp-hot: #fff3d6;--ember: #ff7a59;--on-lamp: #1a1204;--danger: #ff6b6b;--ok: #56d39b;--radius: 18px;--font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace}@media(prefers-color-scheme:light){:root{color-scheme:light;--bg: #f7f5f0;--bg-raised: #ffffff;--bg-sunken: #efece4;--line: #e1dccf;--text: #1b1f2b;--muted: #677086;--lamp: #e8890c;--lamp-hot: #fff1cf;--ember: #e2553a;--on-lamp: #ffffff;--danger: #c93a3a;--ok: #1f9d68}}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.55 var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}h1,h2,h3,p{margin:0}h1{font-size:clamp(1.5rem,4.5vw,2rem);font-weight:650;letter-spacing:-.02em;line-height:1.2}h2{font-size:1.15rem}h3{font-size:.78rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}:focus-visible{outline:2px solid var(--lamp);outline-offset:2px}.muted{color:var(--muted)}.small{font-size:.82rem}.beacon{position:relative;flex:none;border-radius:50%;isolation:isolate}.beacon-large{width:132px;height:132px}.beacon-small{width:34px;height:34px}.beacon-core{position:absolute;inset:34%;border-radius:50%;background:radial-gradient(circle at 40% 35%,var(--lamp-hot),var(--lamp) 70%);box-shadow:0 0 22px 2px color-mix(in srgb,var(--lamp) 70%,transparent)}.beacon-halo{position:absolute;inset:8%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--lamp) 38%,transparent),transparent 68%);animation:breathe 5s ease-in-out infinite}.beacon-sweep{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,transparent 0 62%,color-mix(in srgb,var(--lamp) 55%,transparent) 86%,var(--ember) 99%,transparent);mask:radial-gradient(circle,transparent 30%,#000 32%,#000 66%,transparent 70%);opacity:0;transition:opacity .4s}.beacon-preparing .beacon-sweep,.beacon-model .beacon-sweep{opacity:1;animation:sweep 1.6s linear infinite}.beacon-model .beacon-sweep{animation-duration:1s}.beacon-answering .beacon-halo{animation:breathe 1.1s ease-in-out infinite}@keyframes sweep{to{transform:rotate(360deg)}}@keyframes breathe{0%,to{transform:scale(.9);opacity:.7}50%{transform:scale(1.12);opacity:1}}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border:1px solid var(--line);border-radius:999px;background:var(--bg-raised);font-weight:600;transition:transform .08s,border-color .15s,background .15s}.button:not(:disabled):hover{border-color:var(--lamp)}.button:not(:disabled):active{transform:scale(.98)}.button.primary{border-color:transparent;background:linear-gradient(135deg,var(--lamp),var(--ember));color:var(--on-lamp)}.button.quiet{background:transparent;color:var(--muted)}.link{padding:6px 2px;border:0;background:none;color:var(--lamp);font-weight:600}.link.danger{color:var(--danger)}.icon-button{display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:50%;background:transparent}.icon-button:not(:disabled):hover{background:var(--bg-raised)}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}label{display:grid;gap:6px;text-align:left}label>span{font-size:.82rem;font-weight:600;color:var(--muted)}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:12px;background:var(--bg-sunken);padding:12px 14px}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--lamp)}.form-error{min-height:1.5em;color:var(--danger);font-size:.9rem;text-align:center}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-raised)}.center-screen{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:max(24px,env(safe-area-inset-top)) 20px max(24px,env(safe-area-inset-bottom));background:radial-gradient(ellipse 80% 50% at 50% 0%,color-mix(in srgb,var(--lamp) 10%,transparent),transparent)}.auth-card{display:grid;gap:16px;width:min(100%,400px);padding:28px 24px;text-align:center}.code-input{font-family:var(--mono);font-size:1.05rem;letter-spacing:.06em;text-align:center}.app{height:100dvh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:max(10px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) 10px max(16px,env(safe-area-inset-left))}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand>div:last-child{display:grid;line-height:1.25}.status{font-size:.78rem;color:var(--muted)}.status-online{color:var(--ok)}.topbar-actions{display:flex;gap:2px}.conversation{flex:1;overflow-y:auto;padding:8px 16px 24px;scrollbar-width:thin}.empty{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center}.suggestions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:560px;margin-top:10px}.chip{padding:9px 15px;border:1px solid var(--line);border-radius:999px;background:var(--bg-raised);font-size:.92rem;transition:border-color .15s}.chip:not(:disabled):hover{border-color:var(--lamp)}.thread{display:flex;flex-direction:column;gap:18px;width:min(100%,760px);margin:0 auto}.message{max-width:100%;overflow-wrap:anywhere}.message.user{align-self:flex-end;max-width:85%;padding:10px 16px;border-radius:var(--radius) var(--radius) 6px var(--radius);background:var(--bg-raised);border:1px solid var(--line);white-space:pre-wrap}.message.notice{align-self:center;padding:8px 14px;border-radius:12px;background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger);font-size:.9rem;text-align:center}.message.pending{display:flex;align-items:center;gap:10px}.message.has-error{border-left:2px solid var(--danger);padding-left:12px}.caret{display:inline-block;width:9px;height:9px;margin-left:2px;border-radius:50%;background:var(--lamp);animation:breathe .9s ease-in-out infinite}.markdown>:first-child{margin-top:0}.markdown>:last-child{margin-bottom:0}.markdown p,.markdown ul,.markdown ol,.markdown pre,.markdown table,.markdown blockquote{margin:0 0 .8em}.markdown h1,.markdown h2,.markdown h3{margin:1.1em 0 .5em;font-size:1.08rem;letter-spacing:0;text-transform:none;color:var(--text)}.markdown ul,.markdown ol{padding-left:1.3em}.markdown a{color:var(--lamp)}.markdown code{font-family:var(--mono);font-size:.88em;padding:.12em .38em;border-radius:6px;background:var(--bg-raised)}.markdown pre{overflow-x:auto;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--bg-sunken)}.markdown pre code{padding:0;background:none}.markdown table{display:block;overflow-x:auto;border-collapse:collapse}.markdown th,.markdown td{padding:6px 12px;border:1px solid var(--line);text-align:left}.markdown blockquote{padding-left:12px;border-left:3px solid var(--line);color:var(--muted)}.markdown img{max-width:100%;border-radius:12px}.composer{display:flex;align-items:flex-end;gap:8px;width:min(100% - 24px,784px);margin:0 auto max(12px,env(safe-area-inset-bottom));padding:6px 6px 6px 16px;border:1px solid var(--line);border-radius:26px;background:var(--bg-raised);transition:border-color .15s}.composer:focus-within{border-color:var(--lamp)}.composer textarea{flex:1;resize:none;border:0;border-radius:0;background:none;padding:9px 0;max-height:180px}.send{flex:none;display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:50%;background:linear-gradient(135deg,var(--lamp),var(--ember));color:var(--on-lamp)}.send.stop{background:var(--text);color:var(--bg)}.send.stop svg{fill:currentColor;stroke:none}.scrim{position:fixed;inset:0;z-index:10;display:flex;justify-content:flex-end;background:#00000080;animation:fade .15s}.panel{display:flex;flex-direction:column;gap:26px;width:min(100%,420px);height:100%;overflow-y:auto;padding:max(16px,env(safe-area-inset-top)) 20px max(20px,env(safe-area-inset-bottom));background:var(--bg);border-left:1px solid var(--line);animation:slide .2s ease-out}.panel-head{display:flex;align-items:center;justify-content:space-between}.panel section{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.devices{display:grid;gap:8px;margin:0;padding:0;list-style:none}.devices li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--bg-raised)}.badge{margin-left:8px;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--lamp) 18%,transparent);color:var(--lamp);font-size:.72rem;font-weight:600;white-space:nowrap}.invite{display:grid;grid-template-columns:132px 1fr;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--bg-raised)}.qr{padding:6px;border-radius:10px;background:#fff;line-height:0}.qr svg{width:100%;height:auto;stroke:none}.invite-code{display:block;font-family:var(--mono);font-size:.95rem;letter-spacing:.04em}.settings{display:grid;gap:12px}h4{margin:6px 0 0;font-size:.82rem;font-weight:600;color:var(--muted)}.warning{padding:10px 12px;border-radius:12px;background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger)}.segmented{display:grid;gap:6px}.segmented button{min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:12px;background:var(--bg-raised);text-align:left;font-weight:600}.segmented button[aria-checked=true]{border-color:var(--lamp);background:color-mix(in srgb,var(--lamp) 14%,var(--bg-raised))}.commands{display:grid;gap:6px;margin:0;padding:0;list-style:none}.commands li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--bg-raised);min-width:0}.commands li>div{min-width:0}.commands code,.command{font-family:var(--mono);font-size:.86rem;overflow-wrap:anywhere;white-space:pre-wrap}.decision-denied,.decision-expired{color:var(--danger)}.decision-approved,.decision-rule,.decision-trusted{color:var(--ok)}.approval-scrim{z-index:20;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(6px)}.approval{display:grid;gap:14px;width:min(100%,460px);max-height:100%;overflow-y:auto;padding:24px;text-align:center;border-color:var(--lamp);box-shadow:0 0 60px color-mix(in srgb,var(--lamp) 25%,transparent);animation:slide .2s ease-out}.approval-mark{justify-self:center;display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,var(--lamp),var(--ember));color:var(--on-lamp);font:700 1.4rem var(--mono)}.command{margin:0;max-height:40vh;overflow-y:auto;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--bg-sunken);text-align:left}.approval-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.panel.wide{width:min(100%,520px)}.nav-button{justify-content:space-between;border-radius:14px}a.button{text-decoration:none}.row-actions{display:flex;flex:none}.row-actions .icon-button{width:36px;height:36px}.priority{padding:0}.wizard{text-align:left}.wizard h2{text-align:center}.wizard-message{white-space:pre-wrap;overflow-wrap:anywhere}.wizard-form,.signin{display:grid;gap:10px}.signin{padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--bg-sunken);text-align:center}.device-code{font:700 1.6rem var(--mono);letter-spacing:.12em;user-select:all}.wizard-ok{color:var(--ok);text-align:center;font-weight:600}.send.mic{background:transparent;border:1px solid var(--line);color:var(--text)}.voice-stage{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 20px max(16px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:radial-gradient(ellipse 70% 100% at 50% 100%,color-mix(in srgb,var(--lamp) 10%,transparent),transparent);text-align:center}.voice-orb{padding:0;border:0;border-radius:50%;background:none}.voice-orb:disabled{opacity:1}.voice-label{font-weight:600}.voice-interim{min-height:1.6em;max-width:640px;color:var(--muted)}.beacon-listening .beacon-halo{animation:receive 1.6s ease-out infinite;background:none;border:2px solid color-mix(in srgb,var(--ok) 70%,transparent)}.beacon-listening .beacon-core{box-shadow:0 0 22px 2px color-mix(in srgb,var(--ok) 55%,transparent)}@keyframes receive{0%{transform:scale(.45);opacity:1}to{transform:scale(1.15);opacity:0}}@keyframes fade{0%{opacity:0}}@keyframes slide{0%{transform:translate(24px);opacity:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
