:root{color-scheme:light dark;--bg:#f7f8fa;--surface:#ffffff;--fg:#111827;--muted:#6b7280;--line:#e5e7eb;--accent:#0f766e;--accent-fg:#ffffff;--ok:#15803d;--warn:#b45309;--error:#b91c1c;--note:#fef3c7;--in:#eef2f7;--out:#dcfce7;--radius:8px}@media (prefers-color-scheme:dark){:root{--bg:#0b0f19;--surface:#111827;--fg:#e5e7eb;--muted:#9ca3af;--line:#1f2937;--accent:#2dd4bf;--accent-fg:#052e2b;--ok:#4ade80;--warn:#fbbf24;--error:#f87171;--note:#3f2f0a;--in:#1f2937;--out:#14532d}}*{box-sizing:border-box}body,html{margin:0;min-height:100vh;background:var(--bg);color:var(--fg);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5;font-size:15px}a{color:inherit}h1{font-size:1.4rem}h1,h2{margin:0}h2{font-size:1.1rem}h3{font-size:1rem;margin:1rem 0 .5rem}.muted{color:var(--muted)}.mono,.small{font-size:.85rem}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.page{padding:2rem 1rem}.page--center{min-height:100vh;display:grid;place-items:center}.shell{display:grid;grid-template-columns:220px 1fr;min-height:100vh}.shell__nav{border-right:1px solid var(--line);background:var(--surface);padding:1rem;gap:1rem;position:-webkit-sticky;position:sticky;top:0;height:100vh}.shell__nav,.shell__nav nav{display:flex;flex-direction:column}.shell__nav nav{gap:.25rem}.nav__link{text-decoration:none;padding:.5rem .75rem;border-radius:var(--radius);color:var(--fg)}.nav__link:hover{background:var(--bg)}.nav__link--active{background:var(--accent);color:var(--accent-fg)}.brand{display:flex;flex-direction:column}.brand__name{font-weight:700;font-size:1.1rem}.brand__tenant{color:var(--muted);font-size:.85rem}.shell__user{margin-top:auto;display:flex;flex-direction:column;gap:.35rem;border-top:1px solid var(--line);padding-top:1rem}.shell__user-name{font-weight:600}.shell__main{padding:1.5rem 2rem;min-width:0}@media (max-width:800px){.shell{grid-template-columns:1fr}.shell__nav{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line)}.shell__main{padding:1rem}}.page__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem}.card--narrow{width:min(100%,380px);display:flex;flex-direction:column;gap:.75rem}.card__title{margin:0}.stack{display:flex;flex-direction:column;gap:.75rem}.columns{grid-template-columns:minmax(0,3fr) minmax(280px,2fr);grid-gap:1rem;align-items:start}.cards,.columns{display:grid;gap:1rem}.cards{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:1rem}.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:.75rem;gap:.75rem}@media (max-width:800px){.columns{grid-template-columns:1fr}}.toolbar{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.field,.toolbar--tight{gap:.25rem}.field{display:flex;flex-direction:column;font-size:.9rem}.field--inline{flex-direction:row;align-items:center;gap:.5rem}input,select,textarea{font:inherit;color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:.45rem .6rem;min-width:0}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px}textarea{resize:vertical;width:100%}.btn{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--surface);color:var(--fg);border-radius:var(--radius);padding:.45rem .9rem;text-decoration:none;display:inline-block}.btn:hover:not(:disabled){border-color:var(--accent)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--primary{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.btn--ghost{background:transparent}.btn--block,.table{width:100%}.table{border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.table td,.table th{text-align:left;padding:.6rem .75rem;border-bottom:1px solid var(--line);vertical-align:top}.table th{font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.row--selected{background:var(--in)}.list{list-style:none;margin:0;padding:0}.list__item{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem 0;border-bottom:1px solid var(--line)}.dl{display:grid;grid-template-columns:max-content 1fr;grid-gap:.35rem 1rem;gap:.35rem 1rem;margin:0}.dl dt{color:var(--muted)}.dl dd{margin:0}.badge{display:inline-block;font-size:.75rem;padding:.1rem .5rem;border-radius:999px;border:1px solid var(--line);margin-left:.25rem}.badge--ok{color:var(--ok);border-color:var(--ok)}.badge--wait{color:var(--warn);border-color:var(--warn)}.badge--error{color:var(--error);border-color:var(--error)}.state{padding:1.5rem;text-align:center;border:1px dashed var(--line);border-radius:var(--radius)}.state__title{margin:0 0 .25rem;font-weight:600}.state--error{border-color:var(--error)}.state--warn{border-color:var(--warn)}.notice{padding:.6rem .9rem;border-radius:var(--radius);border:1px solid var(--line);margin:0 0 1rem}.notice--ok{border-color:var(--ok)}.notice--error{border-color:var(--error);color:var(--error)}.conversation{display:flex;flex-direction:column;min-height:calc(100vh - 3rem)}.thread{flex:1 1;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem;padding:.5rem 0}.bubble{max-width:min(70ch,85%);padding:.5rem .75rem;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface)}.bubble--in{align-self:flex-start;background:var(--in)}.bubble--out{align-self:flex-end;background:var(--out)}.bubble--note{align-self:center;background:var(--note);max-width:90%}.bubble--system{align-self:center;background:transparent;border-style:dashed;color:var(--muted);font-size:.85rem}.bubble__meta{display:flex;justify-content:space-between;gap:1rem;font-size:.75rem;color:var(--muted)}.bubble__text{margin:.25rem 0 0;white-space:pre-wrap;word-break:break-word}.bubble__status{margin-top:.25rem;font-size:.75rem}.composer{position:-webkit-sticky;position:sticky;bottom:0;background:var(--bg);padding-top:.75rem;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:.5rem}.composer__mode{display:flex;gap:1rem;font-size:.9rem}