:root{--brand-50:#f3ecff;--brand-100:#e3d5ff;--brand-300:#b78dff;--brand-500:#863bff;--brand-600:#7414ff;--brand-700:#5a0fca;--bg:#f5f4fa;--surface:#fff;--surface-2:#faf9fd;--surface-3:#f2f0fa;--line:#e5e3ef;--line-strong:#d2cfe0;--ink:#171526;--ink-2:#3e3c51;--muted:#6a6880;--faint:#9a98ad;--ok:#0a6c2e;--ok-bg:#e6f4ec;--warn:#7d6200;--warn-bg:#faf0d6;--danger:#b42318;--danger-bg:#fdeceb;--info:#1257a8;--info-bg:#e8f1fc;--neutral:#55536b;--neutral-bg:#eceaf3;--nav-bg:#17132a;--nav-bg-2:#221c3c;--nav-fg:#c9c4de;--nav-muted:#837da3;--radius-sm:6px;--radius:10px;--radius-lg:14px;--shadow-sm:0 1px 2px #1410280f;--shadow:0 2px 10px #14102812, 0 1px 2px #1410280a;--sidebar-w:244px;--sidebar-w-collapsed:68px;color:var(--ink);background-color:var(--bg);-webkit-font-smoothing:antialiased;font-family:system-ui,-apple-system,Segoe UI,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.5}*{box-sizing:border-box}body{margin:0}h1,h2,h3,h4{letter-spacing:-.01em;color:var(--ink);line-height:1.25}h1{margin:0;font-size:1.4rem}h2{margin:0 0 .75rem;font-size:1.15rem}h3{margin:0 0 .5rem;font-size:1rem}h4{margin:0 0 .5rem;font-size:.9rem}p{margin:0 0 .75rem}a{color:var(--brand-700);text-decoration:none}a:hover{text-decoration:underline}code{background:var(--surface-3);border-radius:var(--radius-sm);padding:.1em .35em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.875em}small{font-size:.8rem}:focus-visible{outline:2px solid var(--brand-500);outline-offset:2px}button,.btn{font:inherit;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-2);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:.4rem;padding:.45rem .85rem;font-weight:500;transition:background .12s,border-color .12s,color .12s;display:inline-flex}button:hover:not(:disabled),.btn:hover:not(:disabled){background:var(--surface-3)}button:disabled,.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--brand-600);border-color:var(--brand-600);color:#fff}.btn-primary:hover:not(:disabled){background:var(--brand-700);border-color:var(--brand-700);color:#fff}.btn-danger{color:var(--danger);background:var(--surface);border-color:#f0c9c5}.btn-danger:hover:not(:disabled){background:var(--danger-bg)}.btn-ghost{color:var(--muted);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--surface-3);color:var(--ink)}.btn-sm{padding:.25rem .55rem;font-size:.85rem}.app-shell{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);min-height:100vh;display:grid}.app-shell.is-collapsed{grid-template-columns:var(--sidebar-w-collapsed) minmax(0, 1fr)}.app-sidebar{background:var(--nav-bg);height:100vh;color:var(--nav-fg);flex-direction:column;align-self:start;display:flex;position:sticky;top:0;overflow:hidden}.sidebar-brand{border-bottom:1px solid #ffffff12;align-items:center;gap:.6rem;padding:1rem .85rem;display:flex}.sidebar-brand img{flex:none;width:26px;height:26px}.sidebar-brand-name{letter-spacing:.08em;text-transform:uppercase;color:#fff;white-space:nowrap;font-size:.8rem;font-weight:700;overflow:hidden}.sidebar-brand-name small{letter-spacing:.04em;text-transform:none;color:var(--nav-muted);font-weight:500;display:block}.sidebar-collapse{color:var(--nav-muted);background:0 0;border:none;margin-left:auto;padding:.25rem}.sidebar-collapse:hover:not(:disabled){background:var(--nav-bg-2);color:#fff}.sidebar-nav{flex-direction:column;flex:1;gap:.15rem;padding:.75rem .5rem;display:flex;overflow-y:auto}.nav-section{letter-spacing:.1em;text-transform:uppercase;color:var(--nav-muted);margin:.9rem 0 .25rem;padding:0 .6rem;font-size:.68rem;font-weight:600}.nav-link,.nav-parent{border-radius:var(--radius-sm);width:100%;color:var(--nav-fg);cursor:pointer;background:0 0;border:none;align-items:center;gap:.65rem;padding:.5rem .6rem;font-size:.9rem;font-weight:500;text-decoration:none;display:flex}.nav-link:hover,.nav-parent:hover{background:var(--nav-bg-2);color:#fff;text-decoration:none}.nav-link.is-active{background:var(--brand-600);color:#fff}.nav-link svg,.nav-parent svg{color:var(--nav-muted);flex:none}.nav-link.is-active svg{color:#fff}.nav-label{text-overflow:ellipsis;white-space:nowrap;text-align:left;flex:1;overflow:hidden}.nav-children{border-left:1px solid #ffffff17;flex-direction:column;gap:.1rem;margin:.1rem 0 .25rem 1.35rem;padding-left:.6rem;display:flex}.nav-children .nav-link{padding:.35rem .55rem;font-size:.86rem}.nav-dot{background:var(--nav-muted);border-radius:50%;flex:none;width:5px;height:5px}.nav-link.is-active .nav-dot{background:#fff}.sidebar-user{border-top:1px solid #ffffff12;padding:.6rem}.user-button{border-radius:var(--radius-sm);color:#fff;text-align:left;background:0 0;border:none;align-items:center;gap:.6rem;width:100%;padding:.4rem;display:flex}.user-button:hover:not(:disabled){background:var(--nav-bg-2)}.avatar{background:var(--brand-600);color:#fff;letter-spacing:.03em;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-size:.78rem;font-weight:700;display:grid}.user-meta{flex:1;min-width:0}.user-name{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;font-weight:600;display:block;overflow:hidden}.user-email{color:var(--nav-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;display:block;overflow:hidden}.user-menu{flex-direction:column;gap:.15rem;margin-top:.35rem;display:flex}.user-menu button{background:var(--nav-bg-2);color:var(--nav-fg);border-color:#0000;justify-content:flex-start}.user-menu button:hover:not(:disabled){background:var(--brand-600);color:#fff}.is-collapsed .nav-label,.is-collapsed .sidebar-brand-name,.is-collapsed .user-meta,.is-collapsed .nav-section,.is-collapsed .nav-caret,.is-collapsed .nav-children{display:none}.is-collapsed .nav-link,.is-collapsed .nav-parent,.is-collapsed .user-button{justify-content:center;padding:.5rem}.is-collapsed .sidebar-brand{justify-content:center;padding:1rem .5rem}.is-collapsed .sidebar-collapse{margin-left:0}.app-content{flex-direction:column;min-width:0;display:flex}.app-topbar{background:var(--surface);border-bottom:1px solid var(--line);align-items:center;gap:.5rem;padding:.5rem .75rem;display:none}.app-topbar-title{font-size:.9rem;font-weight:600}.app-main{width:100%;max-width:1180px;margin:0 auto;padding:1.75rem 2rem 3rem}.page-head{margin-bottom:1.5rem}.page-head-top{flex-wrap:wrap;align-items:flex-start;gap:1rem;display:flex}.page-head h1{margin:0}.page-subtitle{color:var(--muted);max-width:68ch;margin:.35rem 0 0}.page-actions{flex-wrap:wrap;gap:.5rem;margin-left:auto;display:flex}.page-back{color:var(--muted);align-items:center;gap:.3rem;margin-bottom:.6rem;font-size:.85rem;display:inline-flex}.page-back:hover{color:var(--brand-700)}.page-banner{background:linear-gradient(120deg, var(--brand-700), var(--brand-500));color:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow);flex-wrap:wrap;align-items:flex-start;gap:1.5rem;padding:1.25rem 1.5rem;display:flex}.page-banner h1,.page-banner .page-subtitle{color:#fff}.page-banner .page-subtitle{opacity:.85}.page-banner .page-actions .btn,.page-banner .page-actions button{color:#fff;background:#ffffff29;border-color:#ffffff4d}.page-banner .page-actions button:hover:not(:disabled){background:#ffffff47}.page-eyebrow{letter-spacing:.08em;text-transform:uppercase;background:#ffffff2e;border-radius:999px;align-items:center;gap:.4rem;margin-bottom:.5rem;padding:.15rem .6rem;font-size:.72rem;font-weight:600;display:inline-flex}.page-banner-main{flex:1;min-width:16rem}.page-banner-meta{grid-template-columns:max-content max-content;gap:.2rem .9rem;margin:0;font-size:.85rem;display:grid}.page-banner-meta dt{opacity:.75}.page-banner-meta dd{text-align:right;margin:0;font-weight:600}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:1.25rem;overflow:hidden}.card-head{background:var(--surface-2);border-bottom:1px solid var(--line);align-items:center;gap:.6rem;padding:.7rem 1rem;display:flex}.card-head svg{color:var(--brand-600);flex:none}.card-title{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);margin:0;font-size:.78rem;font-weight:700}.card-head-actions{gap:.4rem;margin-left:auto;display:flex}.card-body{padding:1rem}.card-body>:last-child{margin-bottom:0}.card-description{color:var(--muted);max-width:74ch;margin:0 0 1rem}.card-body h3:not(:first-child),.card-body h4:not(:first-child){margin-top:1.25rem}.card-body>form+.table-wrap,.card-body>form+.empty{margin-top:1rem}.card-body.is-flush{padding:0}.card-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));align-items:start;gap:1.25rem;display:grid}.card-grid>.card{margin-bottom:0}.table-wrap{overflow-x:auto}table.table{border-collapse:collapse;width:100%;font-size:.9rem}table.table th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:var(--surface-2);border-bottom:1px solid var(--line);white-space:nowrap;padding:.55rem 1rem;font-size:.72rem;font-weight:700}table.table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:.6rem 1rem}table.table tbody tr:last-child td{border-bottom:none}table.table tbody tr:hover td{background:var(--surface-2)}.cell-actions{text-align:right;white-space:nowrap}.cell-actions>*+*{margin-left:.4rem}.badge{background:var(--neutral-bg);color:var(--neutral);white-space:nowrap;border-radius:999px;align-items:center;gap:.3rem;padding:.1rem .55rem;font-size:.78rem;font-weight:600;display:inline-flex}.badge-ok{background:var(--ok-bg);color:var(--ok)}.badge-warn{background:var(--warn-bg);color:var(--warn)}.badge-danger{background:var(--danger-bg);color:var(--danger)}.badge-info{background:var(--info-bg);color:var(--info)}.badge-neutral{background:var(--neutral-bg);color:var(--neutral)}.notice,.form-error{border:1px solid var(--line);border-left:3px solid var(--neutral);border-radius:var(--radius-sm);background:var(--neutral-bg);color:var(--neutral);margin:0 0 1rem;padding:.6rem .85rem;display:block}.notice>:last-child{margin-bottom:0}.form-error,.notice-error{background:var(--danger-bg);border-color:#f3d2ce;border-left-color:var(--danger);color:var(--danger)}.notice-success{background:var(--ok-bg);border-color:#cbe7d5;border-left-color:var(--ok);color:var(--ok)}.notice-warn{background:var(--warn-bg);border-color:#ecdcae;border-left-color:var(--warn);color:var(--warn)}.notice-info{background:var(--info-bg);border-color:#cfe0f5;border-left-color:var(--info);color:var(--info)}.empty{border:1px dashed var(--line-strong);border-radius:var(--radius);background:var(--surface-2);color:var(--muted);text-align:center;margin:0;padding:1.5rem 1rem}.muted{color:var(--muted)}.form-field{flex-direction:column;gap:.3rem;margin-bottom:1rem;display:flex}.form-field>label{color:var(--ink-2);font-size:.85rem;font-weight:600}.form-field small,.field-hint{color:var(--muted);font-size:.8rem;line-height:1.45}input,select,textarea{border:1px solid var(--line-strong);border-radius:var(--radius-sm);font:inherit;color:inherit;background-color:var(--surface);width:100%;padding:.45rem .6rem}input[type=checkbox]{width:auto}input:focus,select:focus,textarea:focus{border-color:var(--brand-500);box-shadow:0 0 0 3px var(--brand-50);outline:none}input::placeholder{color:var(--faint)}.form-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.form-row input,.form-row select{flex:11rem;width:auto;min-width:11rem}.form-row button{flex:none}.form-narrow{max-width:30rem}.form-actions{flex-wrap:wrap;gap:.5rem;display:flex}fieldset.fieldset{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);margin:0 0 1rem;padding:.85rem 1rem}.repeat-row{margin-bottom:.5rem}.repeat-row input[aria-label$=image],.repeat-row input[aria-label$=URL]{flex:3 14rem}.checkbox-label{align-items:center;gap:.4rem;font-weight:500;display:inline-flex}.checkbox-label.is-stacked{margin-bottom:.2rem;font-weight:400;display:flex}.hint-warn{color:var(--warn);font-size:.8rem;line-height:1.45}.picker-details{margin-bottom:.75rem}.picker-details>summary{cursor:pointer;color:var(--brand-700);font-size:.9rem}fieldset.fieldset>legend{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:0 .4rem;font-size:.78rem;font-weight:700}dl.detail-list{grid-template-columns:max-content minmax(0,1fr);gap:.4rem 1.25rem;margin:0;font-size:.9rem;display:grid}dl.detail-list dt{color:var(--muted)}dl.detail-list dd{overflow-wrap:anywhere;min-width:0;margin:0}.code-block{background:var(--surface-3);border:1px solid var(--line);border-radius:var(--radius-sm);margin:0 0 1rem;padding:.75rem;font-size:.82rem;overflow-x:auto}.code-block.is-wrapped{white-space:pre-wrap;word-break:break-word}.stack{flex-direction:column;gap:.75rem;display:flex}.row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.list-plain{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.util-bar{align-items:center;gap:.5rem;margin-bottom:.3rem;display:flex}.util-bar-label{width:4rem;color:var(--muted);font-size:.82rem}.util-bar-track{background:var(--surface-3);border-radius:999px;flex:1;height:.55rem;overflow:hidden}.util-bar-fill{height:100%}.util-bar-value{text-align:right;font-variant-numeric:tabular-nums;width:3rem;font-size:.82rem}.agent-summary+.agent-summary{border-top:1px solid var(--line);margin-top:1rem;padding-top:1rem}.agent-summary-name{margin-bottom:.35rem;font-weight:600}.agent-summary-metrics{flex-wrap:wrap;align-items:flex-start;gap:1.5rem;display:flex}.agent-summary-bars{flex:1;min-width:15rem;max-width:22rem}.trend-grid{flex-wrap:wrap;gap:2rem;margin-bottom:1rem;display:flex}.trend-grid p{margin:0 0 .2rem}.stat-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:.78rem;font-weight:600}.stat-value{font-size:1.5rem;font-weight:700}.quick-link{border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);background:var(--surface);align-items:center;gap:.65rem;padding:.6rem .7rem;display:flex}.quick-link:hover{border-color:var(--brand-300);background:var(--brand-50);text-decoration:none}.quick-link svg{color:var(--brand-600);flex:none}.quick-link span{font-size:.9rem;font-weight:600}.quick-link small{color:var(--muted);font-weight:400;display:block}.notfound{text-align:center;padding:4rem 1.5rem}.notfound .btn{margin-top:.5rem}.login-page{background:linear-gradient(140deg, #17132a, var(--brand-700));place-items:center;min-height:100vh;padding:1.5rem;display:grid}.login-card{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:22rem;padding:1.75rem;box-shadow:0 20px 50px #0c061e59}.login-brand{align-items:center;gap:.6rem;margin-bottom:1.25rem;display:flex}.login-brand img{width:32px;height:32px}.login-card h1{margin:0;font-size:1.05rem}.login-card h1 small{color:var(--muted);font-weight:500;display:block}.login-card button[type=submit]{width:100%}@media (width<=900px){.app-shell,.app-shell.is-collapsed{grid-template-columns:minmax(0,1fr)}.app-sidebar{z-index:20;width:var(--sidebar-w);transition:transform .18s;position:fixed;transform:translate(-100%)}.app-shell.is-open .app-sidebar{transform:translate(0)}.app-shell.is-collapsed .nav-label,.app-shell.is-collapsed .sidebar-brand-name,.app-shell.is-collapsed .user-meta,.app-shell.is-collapsed .nav-section,.app-shell.is-collapsed .nav-caret{display:revert}.app-shell.is-collapsed .nav-children{display:flex}.app-shell.is-collapsed .nav-link,.app-shell.is-collapsed .nav-parent,.app-shell.is-collapsed .user-button{justify-content:flex-start;padding:.5rem .6rem}.app-topbar{z-index:10;display:flex;position:sticky;top:0}.app-main{padding:1.25rem 1rem 2.5rem}.scrim{z-index:15;background:#0f0a1e73;border:none;border-radius:0;padding:0;position:fixed;inset:0}}
