:root{--font-display: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-body: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;--radius-sm: 8px;--radius: 12px;--radius-lg: 14px;--radius-xl: 18px;--ease: cubic-bezier(.2, .7, .2, 1);--speed: .15s;--bg: #f7f8fa;--bg-deep: #f1f3f6;--surface: #ffffff;--surface-strong: #f3f4f6;--surface-hover: #f3f4f6;--border: #e5e7eb;--border-strong: #d1d5db;--text: #111827;--text-dim: #6b7280;--text-mute: #9ca3af;--accent: #2563eb;--accent-hover: #1d4ed8;--accent-mint: #16a34a;--accent-peach: #e11d48;--accent-amber: #d97706;--accent-violet: #6d28d9;--accent-cyan: #0891b2;--danger: #dc2626;--success: #16a34a;--shadow-soft: 0 1px 2px rgba(16, 24, 40, .04), 0 1px 3px rgba(16, 24, 40, .06);--shadow-pop: 0 4px 12px rgba(16, 24, 40, .08), 0 2px 4px rgba(16, 24, 40, .06)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-body);font-weight:400;font-size:15.5px;line-height:1.55;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden}a{color:var(--accent);text-decoration:none;transition:color var(--speed) var(--ease)}a:hover{color:var(--accent-hover)}button{cursor:pointer;font:inherit;color:inherit}input,textarea,select{font:inherit;color:inherit}code,.mono{font-family:var(--font-mono);font-size:.9em}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;letter-spacing:-.01em}:root[data-theme=dark]{--bg: #1e1e2e;--bg-deep: #181825;--surface: #181825;--surface-strong: #313244;--surface-hover: #313244;--border: #313244;--border-strong: #45475a;--text: #cdd6f4;--text-dim: #a6adc8;--text-mute: #7f849c;--accent: #cba6f7;--accent-hover: #b4befe;--accent-mint: #a6e3a1;--accent-peach: #f38ba8;--accent-amber: #f9e2af;--accent-violet: #cba6f7;--accent-cyan: #89dceb;--danger: #f38ba8;--success: #a6e3a1;--shadow-soft: 0 1px 2px rgba(17, 17, 27, .5), 0 1px 3px rgba(17, 17, 27, .6);--shadow-pop: 0 4px 12px rgba(17, 17, 27, .6), 0 2px 4px rgba(17, 17, 27, .5)}:root[data-theme=dark] .btn:not(.secondary):not(.danger):not(.ghost),:root[data-theme=dark] .sidebar .sb-avatar{color:#11111b}:root[data-theme=dark] input,:root[data-theme=dark] textarea,:root[data-theme=dark] select{background:var(--surface);border-color:var(--border-strong);color:var(--text)}.theme-toggle{margin-left:auto;background:none;border:1px solid var(--border);color:var(--text-dim);width:32px;height:32px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;font-size:15px;line-height:1;transition:background var(--speed) var(--ease),color var(--speed) var(--ease)}.theme-toggle:hover{background:var(--surface-hover);color:var(--text)}.lang-toggle{background:none;border:1px solid var(--border);color:var(--text-dim);height:32px;padding:0 9px;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;gap:3px;font-size:12px;font-weight:600;letter-spacing:.02em;line-height:1;transition:background var(--speed) var(--ease),color var(--speed) var(--ease)}.lang-toggle:hover{background:var(--surface-hover);color:var(--text)}.lang-toggle .on{color:var(--accent)}.lang-toggle .sep{opacity:.45;font-weight:400}.lang-toggle.floating{position:fixed;top:18px;right:18px;z-index:20;background:var(--surface)}.layout{--sidebar-w: 352px;--pg-panel-w: 592px;display:grid;grid-template-columns:var(--sidebar-w) 1fr;height:100vh;overflow:hidden}.sidebar{position:relative;padding:18px 14px;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;gap:3px}.sidebar .brand{display:flex;align-items:baseline;gap:8px;margin:0 0 22px;font-family:var(--font-display);font-size:22px;font-weight:600;letter-spacing:-.02em}.sidebar .brand .dot{width:10px;height:10px;border-radius:50%;background:var(--accent-mint);box-shadow:0 0 14px var(--accent-mint);display:inline-block}.sidebar a{display:flex;align-items:center;gap:12px;padding:10px 12px;margin:1px 0;color:var(--text-dim);border-radius:var(--radius-sm);font-weight:500;font-size:14px;transition:all var(--speed) var(--ease);position:relative}.sidebar a:hover{color:var(--text);background:var(--surface-hover)}.sidebar a.active{color:var(--text);background:var(--surface-strong);box-shadow:inset 0 0 0 1px var(--border-strong)}.sidebar a.active:before{content:"";position:absolute;left:-6px;top:12px;bottom:12px;width:3px;border-radius:3px;background:var(--accent-mint);box-shadow:0 0 12px var(--accent-mint)}.sidebar .spacer{flex:1}.main{height:100vh;overflow-y:auto;padding:28px 32px 40px}.app-shell{display:flex;flex-direction:column;height:100vh}.app-shell>.layout{flex:1;min-height:0;height:auto}.app-shell .main{height:100%}.app-shell .sidebar{max-height:100%}.superadmin-banner{flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;padding:7px 16px;background:#b91c1c;color:#fff;font-size:13.5px;font-weight:600;letter-spacing:.01em;box-shadow:0 1px #00000026}.superadmin-banner svg{flex:0 0 auto}.superadmin-pending{color:#b91c1c;background:#fff;border-radius:999px;padding:2px 10px;font-size:12.5px;font-weight:700;text-decoration:none}.superadmin-pending:hover{background:#fee2e2}.playground{display:flex;flex-direction:column;height:100%;min-height:0}.playground .pg-head{flex:0 0 auto;margin-bottom:16px}.playground .pg-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,var(--pg-panel-w)) minmax(0,1fr);gap:20px;align-items:stretch}.playground .pg-panel{min-height:0;overflow-y:auto;padding-right:6px}.playground .pg-preview{min-height:0;height:100%}.page-shell{display:flex;flex-direction:column;height:100%;min-height:0}.page-head{flex:0 0 auto;display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--border)}.page-head .page{margin:0}.page-body{flex:1;min-height:0;overflow-y:auto;padding-right:4px}h1.page{font-family:var(--font-display);font-size:26px;font-weight:600;letter-spacing:-.02em;margin:2px 0 20px}.subtitle{color:var(--text-dim);font-size:14px;margin:-16px 0 22px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:20px 22px;margin-bottom:16px;transition:border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease)}.card:hover{border-color:var(--border-strong)}.card h3{font-family:var(--font-display);font-size:17px;font-weight:600;margin:0 0 14px;letter-spacing:-.01em}.card h3:not(:first-child){margin-top:22px}.btn{display:inline-flex;align-items:center;gap:8px;padding:9px 15px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-weight:500;font-size:15px;transition:all var(--speed) var(--ease);text-decoration:none}.btn:hover{background:var(--surface-hover);border-color:var(--text-mute)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:not(.secondary):not(.danger):not(.ghost){background:var(--accent);color:#fff;border-color:transparent}.btn:not(.secondary):not(.danger):not(.ghost):hover{background:var(--accent-hover)}.btn.secondary{background:var(--surface);border-color:var(--border-strong);color:var(--text)}.btn.secondary:hover{background:var(--surface-hover)}.btn.danger{background:color-mix(in srgb,var(--danger) 18%,transparent);border-color:color-mix(in srgb,var(--danger) 40%,transparent);color:var(--danger)}.btn.danger:hover{background:color-mix(in srgb,var(--danger) 28%,transparent);border-color:color-mix(in srgb,var(--danger) 60%,transparent)}.btn.ghost{background:transparent;border-color:transparent;color:var(--text-dim)}.btn.ghost:hover{color:var(--text);background:var(--surface-hover)}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field label{font-size:13px;color:var(--text-dim);font-weight:500}.field input,.field textarea,.field select,input[type=text],input[type=email],input[type=password],input[type=color],textarea,select{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;color:var(--text);font-size:15px;font-family:var(--font-body);transition:all var(--speed) var(--ease);outline:none}.field textarea,textarea{font-family:var(--font-body);line-height:1.55;resize:vertical;min-height:84px}.field input:focus,.field textarea:focus,.field select:focus,input:focus,textarea:focus,select:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.field input::placeholder,.field textarea::placeholder{color:var(--text-mute)}input[type=color]{padding:4px;height:40px;width:64px;cursor:pointer}.badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 9px;font-size:12px;font-weight:500;border-radius:999px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text-dim);white-space:nowrap}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;display:inline-block}.badge.bot{color:var(--accent-violet);border-color:color-mix(in srgb,var(--accent-violet) 35%,transparent);background:color-mix(in srgb,var(--accent-violet) 8%,var(--surface))}.badge.agent,.badge.live,.badge.ready,.badge.active{color:var(--accent-mint);border-color:color-mix(in srgb,var(--accent-mint) 40%,transparent);background:color-mix(in srgb,var(--accent-mint) 8%,var(--surface))}.badge.waiting,.badge.pending,.badge.processing{color:var(--accent-amber);border-color:color-mix(in srgb,var(--accent-amber) 40%,transparent);background:color-mix(in srgb,var(--accent-amber) 8%,var(--surface))}.badge.closed,.badge.disabled{color:var(--text-mute)}.badge.failed{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,transparent);background:color-mix(in srgb,var(--danger) 8%,var(--surface))}.badge.live:before,.badge.agent:before{animation:pulse 2.4s var(--ease) infinite}@keyframes pulse{0%,to{box-shadow:0 0 0 0 currentColor;opacity:1}50%{box-shadow:0 0 0 5px transparent;opacity:.55}}table{width:100%;border-collapse:separate;border-spacing:0}th,td{text-align:left;padding:11px 10px;border-bottom:1px solid var(--border);font-size:15px}th{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-mute);font-weight:500}tr:last-child td{border-bottom:0}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.err{color:var(--danger);background:color-mix(in srgb,var(--danger) 12%,transparent);border:1px solid color-mix(in srgb,var(--danger) 30%,transparent);border-radius:var(--radius-sm);padding:9px 12px;font-size:13.5px;margin-bottom:12px}.code{background:color-mix(in srgb,var(--bg-deep) 70%,var(--text) 5%);color:var(--text);padding:14px 16px;border-radius:var(--radius-sm);border:1px solid var(--border);font-family:var(--font-mono);font-size:12.5px;white-space:pre-wrap;word-break:break-all;line-height:1.55}.login{max-width:420px;margin:8vh auto;background:var(--surface-strong);backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);border:1px solid var(--border-strong);border-radius:var(--radius-xl);padding:38px 36px;box-shadow:var(--shadow-pop)}.login h1{font-family:var(--font-display);font-weight:500;font-size:30px;letter-spacing:-.02em;margin:0 0 6px;font-variation-settings:"opsz" 90}.login .lead{color:var(--text-dim);margin:0 0 22px;font-size:14px}.login .btn{width:100%;justify-content:center;padding:11px 14px}.login .links{display:flex;justify-content:space-between;margin-top:14px;font-size:13px;color:var(--text-mute)}.login .alt{margin:20px 0 0;padding-top:16px;border-top:1px solid var(--border);text-align:center;font-size:13.5px;color:var(--text-dim)}.inbox{display:grid;grid-template-columns:360px 1fr;gap:16px;height:calc(100vh - 120px)}.conv-list{background:var(--surface);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);border:1px solid var(--border);border-radius:var(--radius-lg);overflow-y:auto;box-shadow:var(--shadow-soft)}.conv-item{padding:14px 16px;border-bottom:1px solid var(--border);cursor:pointer;display:flex;flex-direction:column;gap:6px;transition:background var(--speed) var(--ease);position:relative}.conv-item:hover{background:var(--surface-hover)}.conv-item.active{background:var(--surface-strong)}.conv-item.active:before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:3px;background:var(--accent-mint);box-shadow:0 0 12px var(--accent-mint)}.conv-item .preview{color:var(--text-dim);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat{background:var(--surface);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);border:1px solid var(--border);border-radius:var(--radius-lg);display:flex;flex-direction:column;box-shadow:var(--shadow-soft);overflow:hidden}.chat-body{flex:1;overflow-y:auto;padding:22px;display:flex;flex-direction:column;gap:10px}.msg{max-width:78%;padding:10px 14px;border-radius:16px;font-size:14px;line-height:1.5;white-space:pre-wrap;word-wrap:break-word;animation:msg-in .28s var(--ease)}@keyframes msg-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.msg.visitor{align-self:flex-start;background:var(--surface-strong);border:1px solid var(--border);border-bottom-left-radius:4px}.msg.bot{align-self:flex-end;background:color-mix(in srgb,var(--accent-violet) 22%,transparent);border:1px solid color-mix(in srgb,var(--accent-violet) 30%,transparent);border-bottom-right-radius:4px}.msg.agent{align-self:flex-end;background:color-mix(in srgb,var(--accent-mint) 24%,transparent);border:1px solid color-mix(in srgb,var(--accent-mint) 32%,transparent);border-bottom-right-radius:4px}.chat-footer{display:flex;gap:10px;padding:14px;border-top:1px solid var(--border);background:var(--surface)}.chat-footer input{flex:1;border-radius:999px;padding:10px 16px}.onboarding{max-width:680px;margin:0 auto}.steps{display:flex;gap:8px;margin-bottom:24px}.steps .dot{flex:1;height:3px;background:var(--surface-strong);border-radius:3px;transition:background var(--speed) var(--ease)}.steps .dot.done{background:var(--accent-mint)}.steps .dot.current{background:var(--accent-mint);box-shadow:0 0 10px var(--accent-mint)}details{border-top:1px solid var(--border);margin-top:14px;padding-top:12px}details summary{cursor:pointer;font-size:13px;color:var(--text-dim);list-style:none;display:flex;align-items:center;gap:6px}details summary::-webkit-details-marker{display:none}details summary:before{content:"▸";transition:transform var(--speed) var(--ease);font-size:11px}details[open] summary:before{transform:rotate(90deg)}.main>*,.login>*{animation:page-in .38s var(--ease) backwards}.main>*:nth-child(1){animation-delay:30ms}.main>*:nth-child(2){animation-delay:80ms}.main>*:nth-child(3){animation-delay:.13s}.main>*:nth-child(4){animation-delay:.18s}.main>*:nth-child(n+5){animation-delay:.22s}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px}*::-webkit-scrollbar-thumb:hover{background:var(--text-mute)}.row{display:flex;align-items:center;gap:10px}.row.between{justify-content:space-between}.muted{color:var(--text-dim)}.tiny{font-size:12px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#10182873;display:flex;align-items:center;justify-content:center;padding:24px}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);width:100%;max-width:560px;max-height:88vh;display:flex;flex-direction:column;padding:20px 22px}.modal.modal-lg{max-width:900px;height:82vh}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.modal-head b{font-size:16px}.src-types{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.src-type-card{display:flex;flex-direction:column;gap:6px;align-items:flex-start;padding:16px 18px;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--speed) var(--ease)}.src-type-card:hover{border-color:var(--border-strong);background:var(--surface-hover)}.src-type-card.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.src-type-ico{font-size:22px}.src-type-label{font-weight:600;font-size:14px}.src-type-desc{font-size:12px;color:var(--text-dim)}.rollout{animation:rollout .18s var(--ease)}@keyframes rollout{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.dropzone{display:block;text-align:center;cursor:pointer;padding:30px 20px;border:2px dashed var(--border-strong);border-radius:var(--radius);color:var(--text-dim);transition:all var(--speed) var(--ease)}.dropzone:hover{border-color:var(--accent);color:var(--text);background:color-mix(in srgb,var(--accent) 4%,var(--surface))}.spinner{display:inline-block;width:14px;height:14px;border:2px solid color-mix(in srgb,var(--accent-amber) 35%,transparent);border-top-color:var(--accent-amber);border-radius:50%;animation:spin .7s linear infinite;vertical-align:-2px}@keyframes spin{to{transform:rotate(360deg)}}.progress{position:relative;height:4px;width:100%;margin-top:10px;border-radius:999px;background:color-mix(in srgb,var(--accent-amber) 15%,transparent);overflow:hidden}.progress:before{content:"";position:absolute;left:-40%;width:40%;height:100%;border-radius:999px;background:var(--accent-amber);animation:progress-slide 1.1s ease-in-out infinite}@keyframes progress-slide{0%{left:-40%}to{left:100%}}.card.busy{border-color:color-mix(in srgb,var(--accent-amber) 45%,var(--border))}.sidebar{overflow-y:auto;max-height:100vh}.sidebar .sb-logo{display:flex;align-items:center;gap:10px;padding:2px 4px 14px;font-family:var(--font-display);letter-spacing:-.02em;flex-wrap:wrap;row-gap:6px}.sidebar .sb-brand{font-size:27px;font-weight:800;line-height:1.1;color:var(--text)}.sidebar .sb-version{font-size:11px;font-weight:600;letter-spacing:0;color:var(--text-mute);align-self:flex-end;padding-bottom:5px}.sidebar .sb-tools{margin-left:auto;display:flex;align-items:center;gap:6px}.sidebar .sb-tools .theme-toggle{margin-left:0}.sidebar .sb-logo .dot{width:10px;height:10px;border-radius:50%;background:var(--accent)}.sidebar .sb-workspace{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:8px 10px;border-radius:10px;background:var(--surface);border:1px solid var(--border);cursor:pointer;color:var(--text)}.sidebar .sb-workspace:hover{background:var(--surface-hover)}.sidebar .sb-ws-text{flex:1;min-width:0}.sidebar .sb-ws-name{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar .sb-ws-sub{display:flex;align-items:center;gap:6px;margin-top:2px}.sidebar .sb-ws-email{font-size:11px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:118px}.sidebar .sb-badge{font-size:10px;font-weight:600;color:var(--text-dim);border:1px solid var(--border-strong);border-radius:5px;padding:1px 5px;flex:0 0 auto}.sidebar .sb-ws-chev{color:var(--text-dim);display:flex;flex:0 0 auto}.sidebar .sb-divider{height:1px;background:var(--border);margin:12px 0}.sidebar .sb-nav{display:flex;flex-direction:column;gap:1px}.sidebar .sb-item{display:flex;align-items:center;gap:11px;width:100%;padding:9px 11px;margin:0;border-radius:9px;color:var(--text-dim);font-size:15px;font-weight:500;background:none;border:none;cursor:pointer;text-align:left;position:relative;transition:all var(--speed) var(--ease)}.sidebar .sb-item:hover{color:var(--text);background:var(--surface-hover)}.sidebar .sb-item.active{color:var(--text);background:var(--surface-strong);box-shadow:inset 0 0 0 1px var(--border-strong)}.sidebar .sb-item.active:before{content:"";position:absolute;left:-4px;top:9px;bottom:9px;width:3px;border-radius:3px;background:var(--accent)}.sidebar .sb-item.inert{cursor:default;opacity:.5}.sidebar .sb-item.inert:hover{background:none;color:var(--text-dim)}.sidebar .sb-ico{display:flex;width:18px;justify-content:center;flex:0 0 auto}.sidebar .sb-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar .sb-ext{color:var(--text-dim);display:flex;flex:0 0 auto}.sidebar .sb-chev{color:var(--text-dim);display:flex;flex:0 0 auto;transition:transform .15s ease}.sidebar .sb-item.toggle.open .sb-chev{transform:rotate(90deg)}.sidebar .sb-sub{display:flex;flex-direction:column;gap:1px;margin:2px 0 4px;padding-left:29px}.sidebar .sb-subitem{display:block;padding:7px 10px;margin:0;border-radius:8px;color:var(--text-dim);font-size:14px;font-weight:500}.sidebar .sb-subitem:hover{color:var(--text);background:var(--surface-hover)}.sidebar .sb-subitem.active{color:var(--text);background:var(--surface-strong);box-shadow:inset 0 0 0 1px var(--border-strong)}.sidebar .sb-subitem.inert{cursor:default;opacity:.5}.sidebar .sb-subitem.inert:hover{background:none;color:var(--text-dim)}.sidebar .sb-spacer{flex:1;min-height:12px}.sidebar .sb-account{display:flex;align-items:center;gap:10px;padding:4px 4px 0}.sidebar .sb-avatar{width:28px;height:28px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex:0 0 auto}.sidebar .sb-acc-email{flex:1;font-size:12px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar .sb-logout{background:none;border:none;color:var(--text-dim);cursor:pointer;padding:6px;border-radius:8px;display:flex}.sidebar .sb-logout:hover{color:var(--text);background:var(--surface-hover)}.nav-group-toggle{display:flex;align-items:center;gap:8px;width:100%;background:none;border:none;cursor:pointer;padding:8px 10px;border-radius:8px;color:var(--text-dim);font:inherit;font-size:13px;text-align:left}.nav-group-toggle:hover{background:var(--surface-hover);color:var(--text)}.nav-group-toggle .caret{transition:transform .15s ease;font-size:10px}.nav-group-toggle.open .caret{transform:rotate(90deg)}.nav-group-items{display:flex;flex-direction:column;padding-left:12px}.upload-indicator{display:flex;align-items:center;gap:8px;margin-bottom:8px;padding:8px 10px;font-size:12px;border-radius:8px;text-decoration:none;color:var(--text);background:color-mix(in srgb,var(--accent-amber) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--accent-amber) 35%,transparent)}.upload-indicator:hover{background:color-mix(in srgb,var(--accent-amber) 20%,var(--surface))}.docs{max-width:1080px}.docs .doc-head{margin-bottom:18px}.docs .page{display:flex;align-items:baseline;gap:12px}.doc-version{font-family:var(--font-mono);font-size:12px;font-weight:600;color:var(--accent);background:var(--surface-strong);border-radius:999px;padding:2px 9px}.doc-standfirst{margin:6px 0 0;max-width:62ch;font-size:15px}.doc-access{padding:16px 18px}.doc-access h3{margin:0 0 10px;font-size:13px;color:var(--text-dim)}.doc-links{display:flex;flex-wrap:wrap;gap:8px}.doc-links a{font-family:var(--font-mono);font-size:13px;text-decoration:none;border:1px solid var(--border);border-radius:8px;padding:7px 12px;background:var(--surface-strong);color:var(--text)}.doc-links a:hover{border-color:var(--accent);color:var(--accent)}.doc-body{display:grid;grid-template-columns:210px minmax(0,1fr);gap:34px;align-items:start;margin-top:26px}.doc-toc{position:sticky;top:0}.doc-toc h3{margin:0 0 10px;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-mute)}.doc-toc ol{list-style:none;margin:0;padding:0;counter-reset:doc;display:flex;flex-direction:column;gap:1px}.doc-toc button{display:block;width:100%;text-align:left;border:none;background:none;padding:5px 9px;border-radius:7px;font-size:13.5px;line-height:1.35;color:var(--text-dim);cursor:pointer}.doc-toc button:before{counter-increment:doc;content:counter(doc,decimal-leading-zero);font-family:var(--font-mono);font-size:10.5px;color:var(--text-mute);margin-right:8px}.doc-toc button:hover{background:var(--surface-hover);color:var(--text)}.doc-toc button.on{background:var(--surface-strong);color:var(--text);font-weight:600}.doc-main{min-width:0;max-width:74ch}.doc-sec{scroll-margin-top:12px;margin-bottom:44px}.doc-sec:last-child{margin-bottom:0}.doc-sec-head{display:flex;align-items:baseline;gap:11px;flex-wrap:wrap;margin-bottom:5px}.doc-sec-head h2{margin:0;font-size:22px;letter-spacing:-.015em}.doc-where{font-family:var(--font-mono);font-size:11.5px;color:var(--text-mute);background:var(--surface-strong);border:1px solid var(--border);border-radius:5px;padding:1px 7px;white-space:nowrap}.doc-lede{color:var(--text-dim);margin:0 0 14px;max-width:66ch}.doc-sub{font-size:14px;font-weight:600;margin:22px 0 8px}.doc-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.doc-pts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}.doc-pts li{position:relative;padding-left:18px;color:var(--text-dim)}.doc-pts li:before{content:"";position:absolute;left:3px;top:.62em;width:5px;height:5px;border-radius:1px;background:var(--accent);opacity:.55}.doc-pts strong{color:var(--text);font-weight:600}.doc-pts code,.doc-lede code,.doc-note code{background:var(--surface-strong);border:1px solid var(--border);border-radius:4px;padding:.5px 5px;font-size:.87em}.doc-code{margin:14px 0 4px;padding:13px 15px;overflow-x:auto;background:var(--surface-strong);border:1px solid var(--border);border-radius:9px;font-family:var(--font-mono);font-size:12.5px;line-height:1.6;color:var(--text)}.doc-facts{margin:16px 0 4px;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface)}.doc-facts-row{display:grid;grid-template-columns:minmax(140px,36%) 1fr}.doc-facts-row+.doc-facts-row{border-top:1px solid var(--border)}.doc-facts dt{padding:8px 13px;font-size:13.5px;color:var(--text-dim);background:var(--surface-strong);border-right:1px solid var(--border)}.doc-facts dd{margin:0;padding:8px 13px;font-family:var(--font-mono);font-size:12.5px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.doc-note{border-top:1px solid var(--border);margin-top:14px;padding-top:11px;font-size:14px;color:var(--text-mute)}@media(max-width:900px){.doc-body{grid-template-columns:1fr;gap:22px}.doc-toc{position:static;border:1px solid var(--border);border-radius:10px;padding:14px 16px;background:var(--surface)}.doc-toc ol{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:2px}}@media(max-width:560px){.doc-facts-row{grid-template-columns:1fr}.doc-facts dt{border-right:none;border-bottom:1px solid var(--border)}}.sess-head{display:flex;align-items:center;gap:12px}.sess-head .page{margin:0}.sess-lede{margin:6px 0 18px;max-width:76ch;font-size:14.5px}.sess-top{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:16px;align-items:start}.sess-summary h3,.sess-usage h3{margin:0 0 14px;font-size:13px;color:var(--text-dim)}.sess-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:10px}.sess-tile.online b:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--accent-mint);margin-right:6px;vertical-align:middle}.sess-tile{border:1px solid var(--border);border-radius:10px;padding:12px 13px;display:flex;flex-direction:column;gap:2px;background:var(--surface)}.sess-tile b{font-size:24px;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}.sess-tile span{font-size:12.5px;color:var(--text-dim)}.sess-tile.warn{border-color:color-mix(in srgb,var(--accent-amber) 45%,transparent);background:color-mix(in srgb,var(--accent-amber) 7%,var(--surface))}.sess-tile.warn b{color:var(--accent-amber)}.budget{margin-top:14px}.budget-line{display:flex;justify-content:space-between;font-size:12.5px;color:var(--text-dim);margin-bottom:6px}.budget-bar{height:7px;border-radius:999px;background:var(--surface-strong);overflow:hidden}.budget-bar span{display:block;height:100%;background:var(--accent);border-radius:999px}.donut-wrap{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.donut{width:140px;height:140px;flex:0 0 auto;transform:rotate(-90deg)}.donut-track{fill:none;stroke:var(--surface-strong);stroke-width:16}.donut-slice{fill:none;stroke-width:16}.donut-total,.donut-unit{transform:rotate(90deg);transform-origin:70px 70px;text-anchor:middle;fill:var(--text);font-family:var(--font-mono)}.donut-total{font-size:19px;font-weight:600}.donut-unit{font-size:10px;fill:var(--text-mute)}.donut-legend{list-style:none;margin:0;padding:0;flex:1;min-width:160px;display:flex;flex-direction:column;gap:6px}.donut-legend li{display:flex;align-items:center;gap:8px;font-size:13px}.donut-legend .dot{width:9px;height:9px;border-radius:2px;flex:0 0 auto}.donut-legend .nm{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-dim)}.donut-legend .vl{font-family:var(--font-mono);font-size:12.5px;font-variant-numeric:tabular-nums}.sess-section{margin:26px 0 12px;font-size:13px;color:var(--text-dim)}.sess-section-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:26px 0 12px}.sess-section-row .sess-section{margin:0}.sess-sort{display:inline-flex;align-items:center;gap:8px}.sess-sort select{width:auto}.sess-filters{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.sess-search{width:220px;max-width:100%}.sess-more{display:flex;justify-content:center;margin-top:16px}.sess-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:14px}.sess-card{margin:0;display:flex;flex-direction:column;gap:9px;padding:15px 16px}.sess-card.requesting{border-color:color-mix(in srgb,var(--accent-amber) 55%,transparent)}.sess-request{display:flex;align-items:center;gap:8px;margin:-3px -4px 2px;padding:7px 10px;border-radius:8px;background:color-mix(in srgb,var(--accent-amber) 12%,var(--surface));color:var(--accent-amber);font-size:12.5px;font-weight:600}.sess-request .pulse{width:8px;height:8px;border-radius:50%;background:currentColor;flex:0 0 auto;animation:sess-pulse 1.6s ease-in-out infinite}@keyframes sess-pulse{0%,to{opacity:1}50%{opacity:.3}}@media(prefers-reduced-motion:reduce){.sess-request .pulse{animation:none}}.sess-card-head{display:flex;align-items:center;gap:8px}.sess-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sess-mail{margin-top:-6px}.sess-meta{display:grid;grid-template-columns:1fr 1fr;gap:7px 12px;margin:2px 0 0}.sess-meta>div{display:flex;flex-direction:column}.sess-meta dt{font-size:11.5px;color:var(--text-mute)}.sess-meta dd{margin:0;font-size:14px;font-variant-numeric:tabular-nums}.sess-page{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-top:1px solid var(--border);padding-top:7px}.sess-actions{margin-top:auto;padding-top:4px;display:flex;gap:6px;align-items:center}.sess-actions .btn{width:100%;justify-content:center}.sess-actions .btn.sess-delete{width:auto;flex:0 0 auto}.sess-chat{display:flex;flex-direction:column}.sess-chat .modal-head{display:flex;align-items:center;gap:10px}.sess-chat-body{flex:1;min-height:320px}.sess-ai-summary{margin:0 0 10px;padding:10px 14px;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:8px;background:var(--surface)}.sess-ai-summary summary{cursor:pointer;font-weight:600;font-size:13px;color:var(--text-dim)}.sess-ai-summary p{margin:8px 0 0;white-space:pre-wrap;line-height:1.5;font-size:14px}.sess-row{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.sess-row.visitor{align-items:flex-end}.sess-system{align-self:center;font-size:12.5px;color:var(--text-mute);background:var(--surface-strong);border-radius:999px;padding:4px 13px;margin:4px 0}.sess-sources{display:flex;flex-wrap:wrap;gap:5px;max-width:85%}.sess-sources span,.sess-sources a{font-size:11px;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-radius:999px;padding:2px 9px}.sess-sources a{text-decoration:none}.sess-sources a:hover{text-decoration:underline}@media(max-width:980px){.sess-top{grid-template-columns:1fr}}.push-banner{flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;padding:7px 16px;background:var(--surface-hover);border-bottom:1px solid var(--border);font-size:13.5px}.push-banner .btn{padding:4px 12px}.sess-focus{height:100%;display:flex;flex-direction:column}.sess-focus .sess-chat-focus{flex:1;min-height:0;width:100%;max-width:none;max-height:none;height:auto;margin:0}.sess-focus .sess-chat-focus .sess-chat-body{flex:1;min-height:0;overflow-y:auto}.sess-focus .sess-chat-focus .sess-ai-summary{max-height:25vh;overflow-y:auto}.msg a{color:inherit;text-decoration:underline;text-underline-offset:2px;word-break:break-all}.hours-table{margin-top:12px;width:auto}.hours-table td{padding:6px 12px 6px 0;border:none;vertical-align:middle}.hours-range{display:inline-flex;align-items:center;gap:8px}.hours-range input[type=time]{padding:6px 9px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font:inherit}
