@import url('tailwind.css');
:root{--paper:#fcfcfd;--bg:#f6f7f9;--surface:#fcfcfd;--surface-muted:#eef1f5;--text:#242c3a;--muted:#748093;--border:#e1e5eb;--primary:#3365d8;--primary-hover:#2854b9;--primary-soft:#eaf0ff;--green:#267651;--green-soft:#eaf5ee;--amber:#946521;--amber-soft:#fbf1df;--red:#b14747;--red-soft:#fbeaea;--radius:12px;--control-radius:8px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px}
[data-theme=dark]{--bg:#161c26;--surface:#1d2532;--surface-muted:#263141;--text:#e0e6ef;--muted:#9daabf;--border:#334155;--primary:#7298f5;--primary-hover:#90acf7;--primary-soft:#25395e;--green:#86cba6;--green-soft:#203c31;--amber:#dfba7a;--amber-soft:#433a2a;--red:#efa1a1;--red-soft:#462d35;color-scheme:dark}
*{box-sizing:border-box}body{margin:0;font:14px/1.6 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:var(--bg);color:var(--text)}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button,input,textarea,select{font:inherit}button,a,input,select,textarea,summary{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--primary);outline-offset:3px}h1,h2,h3,p{margin:0}h1{font-size:32px;line-height:1.25;letter-spacing:-1px;font-weight:650}h2{font-size:18px;line-height:1.5;font-weight:650;letter-spacing:-.3px}h3{font-size:16px;line-height:1.5;font-weight:600}p{margin:var(--space-2) 0 var(--space-4)}small{font-size:12px}strong{font-weight:600}.muted{color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:1.6px;font-weight:700;color:var(--muted);margin:0 0 var(--space-3)}.sidebar{position:fixed;inset:0 auto 0 0;width:240px;background:var(--surface);border-right:1px solid var(--border);padding:var(--space-8) var(--space-4);display:flex;flex-direction:column;z-index:20}.brand{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap;font-size:26px;font-weight:700;letter-spacing:-1px;color:var(--text);padding:0 var(--space-3) var(--space-8)}.brand-mark{background:var(--primary);color:var(--surface);font-size:24px;width:32px;height:32px;border-radius:8px;text-align:center;line-height:32px}.brand-caption{font-size:8px;letter-spacing:2px;width:100%;padding-left:40px;color:var(--muted)}.nav-label{color:var(--muted);font-size:9px;letter-spacing:1.7px;font-weight:700;margin:var(--space-6) var(--space-3) var(--space-2)}.sidebar nav a{color:var(--muted);display:flex;gap:var(--space-3);padding:var(--space-3);border-radius:var(--control-radius);min-height:44px;margin-bottom:var(--space-1);font-size:13px}.sidebar nav a span{width:20px;text-align:center;font-size:18px;line-height:22px}.sidebar nav a.selected,.sidebar nav a:hover{background:var(--primary-soft);color:var(--primary);text-decoration:none}.sidebar-foot{margin-top:auto;border-top:1px solid var(--border);padding-top:var(--space-6);display:flex;gap:var(--space-3);align-items:center}.sidebar-foot strong,.sidebar-foot small{display:block}.sidebar-foot small{color:var(--muted)}.avatar,.workspace-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;background:var(--surface-muted);font-weight:600;color:var(--primary)}.sidebar-foot form{margin-left:auto}.shell{margin-left:240px}.shell.signed-out{margin-left:0}.topbar{height:80px;padding:0 var(--space-8);border-bottom:1px solid var(--border);background:var(--surface);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.workspace-picker,.topbar-actions{display:flex;align-items:center;gap:var(--space-3)}.topbar .badge{font-size:10px}.topbar-actions{font-size:11px}main{padding:var(--space-8);max-width:1600px;margin:0 auto;min-height:calc(100vh - 144px)}footer{color:var(--muted);font-size:10px;display:flex;justify-content:space-between;padding:var(--space-6) var(--space-8);border-top:1px solid var(--border)}.page-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);margin-bottom:var(--space-8)}.page-header p:not(.eyebrow){color:var(--muted);font-size:13px;margin-top:var(--space-3);margin-bottom:0}.button{display:inline-flex;justify-content:center;align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-3) var(--space-4);border:1px solid transparent;border-radius:var(--control-radius);font-size:12px;font-weight:600;text-decoration:none;white-space:nowrap;transition:background .18s}.button:hover{text-decoration:none}.primary{background:var(--primary);color:var(--surface)}.primary:hover{background:var(--primary-hover)}.secondary{background:var(--surface);border-color:var(--border);color:var(--text)}.secondary:hover{background:var(--surface-muted)}.danger{background:var(--red-soft);color:var(--red);border-color:var(--red-soft)}.icon-button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:transparent;color:var(--muted);width:44px;height:44px;font-size:20px}.icon-button:hover{background:var(--surface-muted)}.text-button{background:none;border:0;color:var(--primary);min-height:44px;font-size:11px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-8)}.metrics article{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:var(--space-6)}.metrics span,.metrics small{display:block;color:var(--muted);font-size:11px}.metrics strong{font-size:30px;line-height:1.3;display:block;margin:var(--space-3) 0}.metrics .metric-text{font-size:24px}.metrics small{font-size:10px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-6)}.section-heading p{font-size:12px;color:var(--muted);margin:var(--space-1) 0 0}.section-heading a{font-size:11px}.count{background:var(--surface-muted);color:var(--muted);font-size:11px;padding:var(--space-1) var(--space-2);border-radius:6px;margin-left:var(--space-2)}.bot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4);margin-bottom:var(--space-8)}.bot-card,.card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:var(--space-6)}.card{margin-bottom:var(--space-6)}.bot-card h3 a{color:var(--text)}.bot-card p{font-size:11px;margin-bottom:var(--space-6)}.card-top,.card-bottom{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}.card-top{margin-bottom:var(--space-6)}.bot-icon,.integration-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--border);background:var(--primary-soft);color:var(--primary);border-radius:10px;font-size:24px;flex-shrink:0}.card-divider{border-top:1px solid var(--border);margin:var(--space-4) 0}.card-bottom{font-size:10px}.badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-2);border-radius:6px;font-size:10px;font-weight:600;background:var(--surface-muted);color:var(--muted);white-space:nowrap}.status-published,.status-ready,.status-sent,.status-active{background:var(--green-soft);color:var(--green)}.status-training,.status-processing,.status-indexing,.status-queued,.status-open{background:var(--primary-soft);color:var(--primary)}.status-needs_retraining,.status-trial,.status-pending{background:var(--amber-soft);color:var(--amber)}.status-failed,.status-dead,.status-suspended{background:var(--red-soft);color:var(--red)}.two-columns{display:grid;grid-template-columns:1.3fr 1fr;gap:var(--space-6);align-items:start}.list-row{display:flex;align-items:center;gap:var(--space-3);min-height:44px;padding:var(--space-4) 0;border-bottom:1px solid var(--border);color:var(--text)}.list-row:last-child{border-bottom:0}.list-row>div:first-of-type{flex:1;min-width:0}.list-row strong,.list-row small{display:block;overflow-wrap:anywhere}.list-row small{color:var(--muted);font-size:10px}.small.avatar{width:32px;height:32px;font-size:11px}.getting-started p{font-size:12px;color:var(--muted)}.getting-started ol{padding-left:var(--space-6);color:var(--muted);font-size:11px}.getting-started li{padding:var(--space-2) 0}.empty-state,.compact-empty{text-align:center;padding:var(--space-8) var(--space-4);color:var(--muted)}.empty-state h3,.compact-empty h3{color:var(--text);margin-top:var(--space-3)}.empty-state p,.compact-empty p{max-width:420px;margin:var(--space-2) auto var(--space-6);font-size:12px}.empty-icon{font-size:32px;color:var(--primary)}.wide{grid-column:1/-1}.center{text-align:center}.breadcrumbs{display:flex;gap:var(--space-3);font-size:11px;color:var(--muted);margin-bottom:var(--space-6)}.header-actions{display:flex;gap:var(--space-4);align-items:center}.stepper{display:flex;justify-content:space-between;list-style:none;border:1px solid var(--border);padding:var(--space-4) var(--space-6);border-radius:var(--radius);background:var(--surface);font-size:12px;color:var(--primary);margin:0 0 var(--space-4)}.stepper li{display:flex;gap:var(--space-2);align-items:center;font-weight:600}.stepper span{color:var(--muted);font-weight:400}.publish-hint{font-size:11px;color:var(--amber);margin-bottom:var(--space-6)}.builder-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,1fr);gap:var(--space-6);align-items:start}.builder-settings .section-heading{align-items:start}.preview-column{position:sticky;top:var(--space-6)}.preview-label{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) 0}.preview-label small{display:block;color:var(--muted);font-size:10px;margin-left:var(--space-4)}.preview-label strong{font-size:12px}.live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--green);margin-right:var(--space-2)}.preview-note{color:var(--muted);font-size:10px;text-align:center;padding:var(--space-2)}.preview-tip{margin-top:var(--space-6)}.preview-tip p{font-size:12px;color:var(--muted)}input,select,textarea{width:100%;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--control-radius);background:var(--surface);color:var(--text);min-height:44px}textarea{resize:vertical}label{display:block;font-size:12px;font-weight:600;margin-bottom:var(--space-2)}form p{margin:0 0 var(--space-4)}form .helptext{display:block;color:var(--muted);font-size:10px;margin-top:var(--space-1)}form p:has(input[type=checkbox]){display:flex;align-items:center;gap:var(--space-3)}input[type=checkbox]{width:20px;min-height:20px}.errorlist,.error{color:var(--red);font-size:12px}.errorlist{list-style:none;padding:var(--space-2) var(--space-3);background:var(--red-soft);border-radius:8px}.source-row{display:flex;gap:var(--space-3);align-items:center;padding:var(--space-4) 0;border-bottom:1px solid var(--border)}.source-row>div{flex:1}.source-row strong,.source-row small{display:block}.source-row small{font-size:10px;color:var(--muted)}.file-icon{font-size:9px;font-weight:700;color:var(--primary);background:var(--primary-soft);padding:var(--space-3);border-radius:6px}.training-action{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-6);gap:var(--space-4)}.training-action p{font-size:11px;color:var(--muted);margin:0}.training-status{padding:var(--space-4);background:var(--surface-muted);border-radius:8px;margin-top:var(--space-4);font-size:12px}.training-status p{margin-bottom:var(--space-2);font-size:11px}.embed-code{background:var(--surface-muted);padding:var(--space-4);border-radius:8px;font-size:11px;overflow:auto;white-space:pre-wrap;word-break:break-all}.inline-form{display:inline-block;margin-top:var(--space-4)}.table-card{padding:0}.padded{padding:var(--space-6);margin:0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;font-size:10px;letter-spacing:.5px;font-weight:600;color:var(--muted);background:var(--surface-muted);position:sticky;top:0;padding:var(--space-4) var(--space-6)}td{padding:var(--space-4) var(--space-6);border-top:1px solid var(--border)}td small{display:block;font-size:10px;color:var(--muted)}.filters{display:flex;gap:var(--space-3);margin-bottom:var(--space-6)}.filters input{flex:1}.filters select{width:180px}.pagination{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-6);font-size:12px;border-top:1px solid var(--border)}.connection-banner{border:1px solid var(--border);background:var(--primary-soft);border-radius:var(--radius);padding:var(--space-6);display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6)}.connection-banner>div{flex:1}.connection-banner p{margin:var(--space-1) 0 0;font-size:11px;color:var(--muted)}.transcript{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-6)}.message{padding:var(--space-4);border-radius:10px;background:var(--surface-muted)}.message.user{background:var(--primary-soft);margin-left:var(--space-8)}.message small{color:var(--muted);font-size:10px}.message p{margin:var(--space-2) 0;font-size:13px}dl{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);font-size:12px;margin-top:var(--space-6);overflow-wrap:anywhere}dt{color:var(--muted)}dd{margin:0}.plan-card h2{font-size:36px;margin:var(--space-6) 0}.plan-card h2 small{font-size:12px;color:var(--muted)}.auth-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;max-width:960px;gap:var(--space-16);margin:var(--space-16) auto}.auth-intro h1{font-size:48px}.auth-intro p{color:var(--muted)}.auth-card{padding:var(--space-8)}.auth-card form{margin-top:var(--space-6)}.auth-card .button{width:100%}dialog{border:1px solid var(--border);border-radius:16px;background:var(--surface);color:var(--text);padding:var(--space-6);width:min(600px,calc(100% - 32px));max-height:90vh;box-shadow:0 24px 64px #17203333}dialog::backdrop{background:#17203380}.modal-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4);font-size:9px;letter-spacing:1.5px;color:var(--muted)}#modal-title{margin-bottom:var(--space-6)}.form-actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-6)}.htmx-indicator{display:none}.htmx-request .htmx-indicator{display:inline}.htmx-request .normal-label{display:none}.notice{padding:var(--space-4);border:1px solid var(--border);background:var(--primary-soft);border-radius:8px;margin-bottom:var(--space-6)}.notice.error{background:var(--red-soft)}.notice.success{background:var(--green-soft);color:var(--green)}.toast{position:fixed;right:var(--space-6);bottom:var(--space-6);padding:var(--space-4) var(--space-6);background:var(--text);color:var(--surface);border-radius:10px;z-index:100}.banner{display:flex;justify-content:center;gap:var(--space-6);align-items:center;background:var(--amber-soft);color:var(--amber);padding:var(--space-2) var(--space-4);font-size:12px}.banner button{background:none;border:0;color:inherit;text-decoration:underline;min-height:44px}.skeleton div{height:44px;background:var(--surface-muted);border-radius:8px;margin:var(--space-4) 0}.skeleton div:first-child{width:60%}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:var(--space-4);top:var(--space-4);z-index:200;background:var(--surface);padding:var(--space-3)}details{position:relative}summary{cursor:pointer;min-height:44px;display:flex;align-items:center}.dropdown{position:absolute;right:0;top:100%;min-width:180px;background:var(--surface);padding:var(--space-2);border:1px solid var(--border);border-radius:8px;z-index:15;box-shadow:0 8px 24px #17203320}.dropdown button{width:100%;border:0;min-height:44px;text-align:left;padding:var(--space-2);background:transparent;color:var(--text)}.dropdown button:hover{background:var(--surface-muted)}.mobile-menu,.mobile-tabs{display:none}
@media(min-width:1440px){main{padding:var(--space-12)}.topbar{padding:0 var(--space-12)}}@media(max-width:1100px){.bot-grid{grid-template-columns:repeat(2,1fr)}.sidebar{width:210px}.shell{margin-left:210px}.metrics{grid-template-columns:repeat(2,1fr)}.builder-grid{grid-template-columns:1fr 1fr}.stepper span{font-size:10px}.desktop-only{display:none}}@media(max-width:1023px){.sidebar{visibility:hidden;transform:translateX(-100%);transition:transform .2s,visibility .2s;width:240px}.sidebar.is-open{visibility:visible;transform:translateX(0)}.shell{margin-left:0}.mobile-menu{display:flex}.topbar{padding:0 var(--space-4);height:64px}.workspace-picker{gap:var(--space-2)}.workspace-picker strong{font-size:12px}.workspace-picker .badge{display:none}main{padding:var(--space-6) var(--space-4)}.page-header{align-items:flex-start;flex-direction:column;gap:var(--space-4)}h1{font-size:28px}.metrics{gap:var(--space-3)}.metrics article{padding:var(--space-4)}.metrics strong{font-size:26px}.bot-grid,.two-columns,.builder-grid,.auth-layout{grid-template-columns:1fr}.builder-grid{gap:var(--space-4)}.preview-column{position:static}.mobile-tabs{display:flex;grid-column:1/-1;gap:var(--space-2)}.mobile-tabs button{min-height:44px;flex:1;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text)}.mobile-hidden{display:none}.stepper{padding:var(--space-3);overflow:auto;gap:var(--space-6)}.stepper li{min-width:80px}.section-heading{gap:var(--space-3)}.section-heading h2{font-size:16px}.section-heading .button{font-size:10px;padding:var(--space-2)}.source-row{gap:var(--space-2)}.source-row .badge{font-size:9px}.filters{flex-wrap:wrap}.filters input{flex-basis:100%}.filters select{flex:1}.connection-banner{flex-wrap:wrap;padding:var(--space-4)}.connection-banner .button{width:100%}.auth-layout{gap:var(--space-6);margin:var(--space-8) auto}.auth-intro h1{font-size:36px}.auth-card{padding:var(--space-6)}footer{padding:var(--space-4)}footer span{display:none}dialog{width:100%;height:100%;max-height:100%;border-radius:0}.header-actions{flex-wrap:wrap}.preview-label{gap:var(--space-2)}.training-action{flex-wrap:wrap}.table-wrap table{min-width:600px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

@media(min-width:768px) and (max-width:1023px){.bot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card{padding:var(--space-6)}}
.card,.bot-card{min-width:0}.sidebar nav{overflow-y:auto;flex:1}.sidebar-foot{flex-shrink:0}
@media(max-width:767px){.table-wrap table{min-width:0}.table-wrap thead{display:none}.table-wrap tbody,.table-wrap tr{display:block}.table-wrap tr{padding:var(--space-4);border-bottom:1px solid var(--border)}.table-wrap td{display:grid;grid-template-columns:120px minmax(0,1fr);gap:var(--space-3);padding:var(--space-2) 0;border:0;overflow-wrap:anywhere}.table-wrap td:before{content:attr(data-label);color:var(--muted);font-size:10px;font-weight:600}.table-wrap td[colspan]{display:block}.table-wrap td[colspan]:before{display:none}}

.table-wrap{max-height:480px;overflow:auto;scroll-padding-top:var(--space-16)}
th{z-index:1}td{vertical-align:middle}td>strong{display:block}
.dropdown.action-menu{position:fixed;inset:auto;margin:0;max-width:calc(100vw - 32px);color:var(--text)}
@media(max-width:767px){.table-wrap{max-height:none}.table-wrap td>strong{grid-column:2}.table-wrap td>small{grid-column:2}}

[data-action-menu][hidden]{display:none!important}

/* ---------- Three levels: platform → partner → workspace ---------- */
.brand-name{line-height:32px}
.brand-logo{max-width:176px;max-height:40px;object-fit:contain}
.brand .brand-caption{padding-left:0;margin-top:var(--space-1)}
.brand-mark+.brand-name+.brand-caption{padding-left:40px}
.topbar-logo{max-height:28px;max-width:160px;object-fit:contain}
.logo-on-dark,[data-theme=dark] .logo-on-light{display:none}[data-theme=dark] .logo-on-dark{display:inline}
.context-picker{display:flex;align-items:center;gap:var(--space-3);min-width:0}
.context-picker>strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.level-chip{display:inline-flex;align-items:center;font-size:9px;letter-spacing:1.4px;font-weight:700;text-transform:uppercase;padding:var(--space-1) var(--space-2);border-radius:6px;white-space:nowrap}
.level-chip-platform{background:#17202f;color:#fcfcfd}
.level-chip-partner{background:color-mix(in srgb,var(--primary) 18%,var(--surface));color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 35%,var(--surface))}
.level-chip-workspace{background:var(--primary-soft);color:var(--primary)}
.context-switch summary{font-size:12px;color:var(--muted);padding:0 var(--space-2);border:1px solid var(--border);border-radius:8px;min-height:32px;list-style:none}
.context-switch summary::-webkit-details-marker{display:none}
.context-menu{left:0;right:auto;min-width:260px;max-height:70vh;overflow:auto}
.context-menu .menu-label{font-size:9px;letter-spacing:1.5px;font-weight:700;color:var(--muted);margin:var(--space-3) var(--space-2) var(--space-1)}
.context-menu .menu-label:first-child{margin-top:var(--space-1)}
.context-menu a{display:flex;align-items:center;min-height:44px;padding:var(--space-2);border-radius:6px;color:var(--text)}
.context-menu a:hover{background:var(--surface-muted);text-decoration:none}
.context-menu .current{font-weight:650;color:var(--primary)}
.help-link{display:flex;gap:var(--space-2);align-items:center;font-size:11px;color:var(--muted);padding:var(--space-3);margin-bottom:var(--space-3);border:1px dashed var(--border);border-radius:8px;overflow-wrap:anywhere}

/* Platform console: dark sidebar so operator mode never looks like a customer workspace. */
.level-platform .sidebar{background:#121a27;border-right-color:#121a27}
.level-platform .sidebar .brand,.level-platform .sidebar-foot strong{color:#f1f4f9}
.level-platform .sidebar .brand-mark{background:#f1f4f9;color:#121a27}
.level-platform .sidebar .brand-caption,.level-platform .sidebar .nav-label,.level-platform .sidebar-foot small{color:#8b97ab}
.level-platform .sidebar nav a{color:#b9c3d3}
.level-platform .sidebar nav a.selected,.level-platform .sidebar nav a:hover{background:#243146;color:#fcfcfd}
.level-platform .sidebar-foot{border-top-color:#243146}
.level-platform .sidebar .avatar{background:#243146;color:#fcfcfd}
.level-platform .sidebar .icon-button{color:#b9c3d3}
.level-platform .sidebar .icon-button:hover{background:#243146}
/* Partner portal: brand-tinted sidebar. */
.level-partner .sidebar{background:color-mix(in srgb,var(--primary) 5%,var(--surface))}

.support-banner{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-2) var(--space-8);font-size:12px;color:#fcfcfd}
.support-banner.is-view{background:#1e3a8a}
.support-banner.is-edit{background:#991b1b}
.support-banner .pill{padding:0 var(--space-2);border-radius:999px;background:#fcfcfd29;font-weight:600}
.support-banner .support-meta{opacity:.8}
.support-banner form,.support-banner .banner-link{margin-left:auto}
.support-banner button,.support-banner .banner-link{background:#fcfcfd;color:#111827;border:0;border-radius:6px;padding:var(--space-1) var(--space-3);font-weight:600;min-height:32px;display:inline-flex;align-items:center}
.support-banner .banner-link:hover{text-decoration:none}

.tabs{display:flex;gap:var(--space-1);border-bottom:1px solid var(--border);margin:0 0 var(--space-6);overflow-x:auto}
.tabs a{padding:var(--space-3) var(--space-4);color:var(--muted);font-size:13px;font-weight:600;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;min-height:44px;display:inline-flex;align-items:center}
.tabs a:hover{color:var(--text);text-decoration:none}
.tabs a.is-active{color:var(--primary);border-bottom-color:var(--primary)}
.metrics.five{grid-template-columns:repeat(5,1fr)}
.metrics.three{grid-template-columns:repeat(3,1fr)}
.metrics .metric-text{font-size:18px}
.title-row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}
.reason-list{display:flex;gap:var(--space-1);flex-wrap:wrap}
.checklist{list-style:none;padding:0;margin:0}
.checklist li{display:flex;gap:var(--space-3);align-items:center;padding:var(--space-3) 0;border-bottom:1px solid var(--border);font-size:13px}
.checklist li:last-child{border-bottom:0}
.check{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;border:1px solid var(--border);font-size:12px;flex-shrink:0}
.checklist .done .check{background:var(--green-soft);color:var(--green);border-color:var(--green-soft)}
.checklist .done span:not(.check){color:var(--muted);text-decoration:line-through}
.progress{height:6px;border-radius:99px;background:var(--surface-muted);overflow:hidden;margin:var(--space-3) 0 var(--space-4)}
.progress span{display:block;height:100%;background:var(--primary)}
.swatch{display:inline-block;width:14px;height:14px;border-radius:4px;border:1px solid var(--border);vertical-align:middle;margin-right:var(--space-2)}
.brand-preview{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
.brand-preview-bar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border);background:var(--surface)}
.brand-preview-body{padding:var(--space-6);background:var(--bg)}
.brand-preview-body .button{pointer-events:none}
.inline-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;align-items:center}
.inline-actions form{display:inline}
.addon-cell{display:flex;align-items:center;gap:var(--space-3)}.addon-cell strong,.addon-cell small{display:block}
.level-intro{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4);margin-bottom:var(--space-8)}
td .badge+small{margin-top:var(--space-1)}
@media(max-width:1100px){.metrics.five{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1023px){.metrics.five,.metrics.three{grid-template-columns:repeat(2,1fr)}.support-banner{padding:var(--space-2) var(--space-4)}.context-picker .level-chip{font-size:8px;letter-spacing:1px}.level-intro{grid-template-columns:1fr}}

.brand-name{font-size:20px;letter-spacing:-.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:156px}
.context-menu a,.context-menu button{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3)}
.two-columns .metrics{grid-template-columns:repeat(2,1fr)}

/* ---------- Builder steps, knowledge intake, onboarding ---------- */
[x-cloak]{display:none!important}
.step-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin-bottom:var(--space-6)}
.step-tabs button{display:flex;gap:var(--space-3);align-items:center;text-align:left;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:var(--radius);padding:var(--space-4);min-height:64px}
.step-tabs button:hover{border-color:var(--primary)}
.step-tabs button.is-active{border-color:var(--primary);box-shadow:inset 0 -3px 0 var(--primary);background:var(--primary-soft)}
.step-tabs strong,.step-tabs small{display:block}
.step-tabs small{color:var(--muted);font-size:11px}
.step-num{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--surface-muted);color:var(--muted);font-weight:700;font-size:12px;flex-shrink:0}
.step-tabs .is-active .step-num{background:var(--primary);color:var(--surface)}
.step-num.is-done{background:var(--green-soft);color:var(--green)}
.step-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;margin-top:var(--space-6)}
details.advanced{border:1px solid var(--border);border-radius:var(--radius);padding:0 var(--space-4);margin:var(--space-4) 0}
details.advanced summary{font-weight:600;gap:var(--space-3)}
details.advanced summary small{font-weight:400;color:var(--muted)}
details.advanced[open]{padding-bottom:var(--space-4)}
details.danger-zone summary{color:var(--red)}
.field .helptext{display:block;color:var(--muted);font-size:11px;margin-top:var(--space-1)}
.field.has-error input,.field.has-error textarea,.field.has-error select{border-color:var(--red)}
.publish-checklist ul{list-style:none;padding:0;margin:var(--space-2) 0 var(--space-6)}
.publish-checklist li{border-bottom:1px solid var(--border)}
.publish-checklist .text-button,.publish-checklist a{display:flex;align-items:center;min-height:44px;font-size:13px;padding:0}
.install-steps{padding-left:var(--space-6);color:var(--muted);font-size:13px}
.install-steps li{padding:var(--space-1) 0}
.segmented{display:flex;gap:var(--space-1);padding:var(--space-1);background:var(--surface-muted);border-radius:10px;margin:var(--space-4) 0 var(--space-6)}
.segmented button{flex:1;border:0;background:transparent;color:var(--muted);border-radius:8px;min-height:40px;font-weight:600}
.segmented button.is-active{background:var(--surface);color:var(--text);box-shadow:0 1px 3px #17203322}
.dropzone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);text-align:center;border:2px dashed var(--border);border-radius:var(--radius);padding:var(--space-8) var(--space-4);cursor:pointer;background:var(--surface);transition:border-color .15s,background .15s;font-weight:400}
.dropzone:hover,.dropzone.is-over{border-color:var(--primary);background:var(--primary-soft)}
.dropzone.has-files{border-style:solid;border-color:var(--primary)}
.dropzone input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;min-height:0}
.dropzone small{color:var(--muted);font-size:11px;max-width:420px}
.dropzone-icon{font-size:28px;color:var(--primary)}
.file-list{list-style:none;padding:0;margin:var(--space-3) 0 0;font-size:12px}
.file-list li{padding:var(--space-2) var(--space-3);background:var(--surface-muted);border-radius:6px;margin-bottom:var(--space-1);overflow-wrap:anywhere}
.file-list li.error{background:var(--red-soft);color:var(--red)}
.hint{color:var(--muted);font-size:11px;margin:var(--space-2) 0 var(--space-4)}
.intake-results ul{list-style:none;padding:0;margin:0 0 var(--space-4)}
.intake-results li{padding:var(--space-3);border-radius:8px;background:var(--red-soft);margin-bottom:var(--space-2);font-size:12px;overflow-wrap:anywhere}
.intake-results li strong{display:block}
.next-steps{padding-left:var(--space-6);font-size:15px;color:var(--text);margin:var(--space-6) 0}
.next-steps li{padding:var(--space-2) 0}
.next-steps strong{font-weight:650}
.explainer{border:1px solid var(--border);border-radius:var(--radius);padding:0 var(--space-4);background:var(--surface)}
.explainer[open]{padding-bottom:var(--space-4)}
.explainer summary{font-weight:600}
.explainer dl{grid-template-columns:110px 1fr;margin-top:var(--space-3)}
.explainer dd em{display:block;color:var(--muted);font-style:normal;margin-top:var(--space-1)}
.setup-layout .auth-intro h1{font-size:40px}
.auth-card .text-button{display:block;margin:0 0 var(--space-4);padding:0}
@media(max-width:1023px){.step-tabs{gap:var(--space-2)}.step-tabs button{min-height:52px;padding:var(--space-2);flex-direction:column;justify-content:center;text-align:center;gap:var(--space-1)}.step-tabs small{display:none}.step-tabs strong{font-size:12px}.setup-layout .auth-intro h1{font-size:30px}.explainer dl{grid-template-columns:1fr}}

/* ---------- Progress feedback: uploads, training, document status ---------- */
.training-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-3)}
.training-percent{font-variant-numeric:tabular-nums;font-weight:650;color:var(--primary)}
.training-status .progress,.upload-progress .progress{height:8px;margin:var(--space-3) 0}
.progress span{transition:width .4s ease}
.training-status.is-processing .progress span,.training-status.is-indexing .progress span{min-width:6%}
.training-status.is-ready{background:var(--green-soft)}
.training-status.is-ready .training-percent,.training-status.is-ready strong{color:var(--green)}
.training-status.is-ready .progress span{background:var(--green)}
.training-status.is-failed{background:var(--red-soft)}
.progress.is-indeterminate span,.upload-progress.is-saving .progress span{background-image:linear-gradient(90deg,var(--primary) 0%,color-mix(in srgb,var(--primary) 45%,var(--surface)) 50%,var(--primary) 100%);background-size:200% 100%;animation:progress-shimmer 1.2s linear infinite}
@keyframes progress-shimmer{from{background-position:200% 0}to{background-position:0 0}}
.upload-progress{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-muted);margin-top:var(--space-4)}
.upload-progress small{color:var(--muted);font-size:11px}
.state-pill{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:999px;font-size:11px;font-weight:600;white-space:nowrap;background:var(--surface-muted);color:var(--muted)}
.state-pill.is-ready{background:var(--green-soft);color:var(--green)}
.state-pill.is-working{background:var(--primary-soft);color:var(--primary)}
.state-pill.is-waiting{background:var(--surface-muted);color:var(--muted)}
.state-pill.is-todo{background:var(--amber-soft);color:var(--amber)}
.state-pill.is-failed{background:var(--red-soft);color:var(--red)}
.spinner{width:10px;height:10px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.source-row small strong{display:inline;color:var(--text)}
@media(prefers-reduced-motion:reduce){.spinner,.progress.is-indeterminate span,.upload-progress.is-saving .progress span{animation:none}}

/* Four builder steps (booking is optional) */
.step-tabs.four{grid-template-columns:repeat(4,minmax(0,1fr))}
/* Radio choices: keep the button small and next to its label (inputs are full-width by default) */
input[type=radio]{width:18px;min-height:18px;margin:0;flex-shrink:0;accent-color:var(--primary)}
label:has(> input[type=radio]){display:flex;align-items:center;gap:var(--space-2);font-weight:500;min-height:36px}
/* Five builder steps (branding and booking are optional) */
.step-tabs.five{grid-template-columns:repeat(5,minmax(0,1fr))}
@media(min-width:1024px){.builder-grid.wide-preview{grid-template-columns:minmax(0,1fr) minmax(320px,1.15fr)}}
/* Branding: layout picker cards with small drawings of each layout */
.layout-picker{border:0;padding:0;margin:0 0 var(--space-6)}
.layout-picker legend{font-size:12px;font-weight:600;margin-bottom:var(--space-3);padding:0}
.layout-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}
.layout-picker .layout-card{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:var(--space-1);margin:0;padding:var(--space-3);border:1.5px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;font-weight:400;transition:border-color .15s,background .15s}
.layout-picker .layout-card:hover{border-color:var(--primary)}
.layout-picker .layout-card:has(input:checked){border-color:var(--primary);background:var(--primary-soft);box-shadow:inset 0 0 0 1px var(--primary)}
.layout-picker .layout-card:has(input:focus-visible){outline:3px solid var(--primary);outline-offset:2px}
.layout-card input{position:absolute;opacity:0;pointer-events:none}
.layout-card strong{font-size:13px}
.layout-card small{font-size:11px;color:var(--muted);line-height:1.45}
.layout-thumb{position:relative;display:block;height:92px;margin-bottom:var(--space-2);border:1px solid var(--border);border-radius:8px;background:var(--surface-muted);overflow:hidden}
.layout-thumb i{position:absolute;display:block}
.layout-thumb .t-page{left:10px;right:10px;top:10px;height:8px;border-radius:4px;background:var(--border);box-shadow:0 16px 0 -1px var(--border),0 30px 0 -1px var(--border)}
.layout-thumb .t-panel{background:var(--surface);border:1px solid var(--border);box-shadow:0 4px 12px #17203322}
.layout-thumb .t-button{background:var(--primary)}
.thumb-bubble .t-panel{right:10px;bottom:26px;width:38%;height:56%;border-radius:6px}
.thumb-bubble .t-button{right:10px;bottom:6px;width:16px;height:16px;border-radius:50%}
.thumb-sidebar .t-panel{right:0;top:0;bottom:0;width:38%;border-width:0 0 0 1px}
.thumb-sidebar .t-button{left:10px;bottom:8px;width:34%;height:10px;border-radius:999px;opacity:.35}
.thumb-spotlight .t-panel{left:22%;right:22%;top:14%;bottom:30%;border-radius:6px}
.thumb-spotlight .t-button{left:28%;right:28%;bottom:8px;height:10px;border-radius:999px;background:var(--surface);border:1.5px solid var(--primary)}
.field-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}
/* Branding preview: a real page in a frame, scaled to fit */
.stage-frame{position:relative;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-muted)}
.stage-frame iframe{display:block;border:0;transform-origin:top left;background:var(--surface)}
.device-toggle{display:inline-flex;padding:2px;border:1px solid var(--border);border-radius:var(--control-radius);background:var(--surface)}
.device-toggle button{min-height:32px;padding:0 var(--space-3);border:0;border-radius:6px;background:none;color:var(--muted);font-size:11px;font-weight:600}
.device-toggle button.is-active{background:var(--primary-soft);color:var(--primary)}
@media(max-width:1023px){.layout-options{grid-template-columns:1fr}.layout-picker .layout-card{display:grid;grid-template-columns:96px 1fr;column-gap:var(--space-3);align-items:center}.layout-thumb{grid-row:span 2;height:64px;margin:0}.field-pair{grid-template-columns:1fr}.step-tabs.five{display:flex;overflow-x:auto}.step-tabs.five button{flex:1 0 76px}}
.auth-card .google-signin{margin-top:var(--space-6)}.auth-or{display:flex;align-items:center;gap:var(--space-3);color:var(--muted);font-size:11px;margin:var(--space-4) 0 0}.auth-or::before,.auth-or::after{content:"";flex:1;border-top:1px solid var(--border)}
.card .header-actions+h3{margin-top:var(--space-6)}
/* Line icons (core/icons.py) */
.icon{display:inline-block;vertical-align:-3px;flex-shrink:0}
.sidebar nav a span .icon,.bot-icon .icon,.integration-icon .icon,.empty-icon .icon,.dropzone-icon .icon{vertical-align:middle}
/* Logo and avatar fields: drag-and-drop upload with a preview (core/templates/widgets/image_drop.html) */
.image-drop{display:flex;flex-direction:column;gap:var(--space-2)}
.image-drop-row{display:grid;grid-template-columns:112px minmax(0,1fr);gap:var(--space-3)}
.image-drop-preview{display:grid;place-items:center;min-height:88px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-muted);color:var(--muted);overflow:hidden;padding:var(--space-2)}
.image-drop-preview img{max-width:100%;max-height:64px;object-fit:contain}
.image-drop.is-square .image-drop-preview img{width:64px;height:64px;object-fit:cover;border-radius:50%}
.dropzone.dropzone-compact{padding:var(--space-4) var(--space-3);gap:var(--space-1);margin:0}
.image-drop.is-over .dropzone{border-color:var(--primary);background:var(--primary-soft)}
.image-drop.is-uploading .dropzone{opacity:.6;pointer-events:none}
.image-drop-progress{margin:0}
.image-drop-status{font-size:11px;color:var(--muted)}
.image-drop-status:empty{display:none}
.image-drop-status.error{color:var(--red)}
.image-drop-link{display:flex;align-items:center;gap:var(--space-2)}
.image-drop-link small{white-space:nowrap;color:var(--muted);font-size:11px}
.image-drop-link input{flex:1;min-width:0}
[data-knowledge-drop]{transition:outline-color .15s,background .15s;outline:2px dashed transparent;outline-offset:-2px}
[data-knowledge-drop].is-over{outline-color:var(--primary);background:var(--primary-soft)}
.drop-hint{display:flex;align-items:center;gap:var(--space-2);font-size:11px;color:var(--muted);margin:var(--space-3) 0 0}
.follower-list{font-size:12px;color:var(--muted);margin:var(--space-1) 0 var(--space-4)}
@media(max-width:640px){.image-drop-row{grid-template-columns:1fr}.image-drop-link{flex-wrap:wrap}.image-drop-link small{width:100%}}
.image-drop [hidden],.brand-preview [hidden]{display:none!important}
.image-drop-progress{display:block}
.brand-preview [data-preview-mark]{display:inline-flex;align-items:center;gap:var(--space-2)}
.brand-preview .brand-mark{flex-shrink:0}
[data-brand-form] p:has(input[type=checkbox]){flex-wrap:wrap;row-gap:0}
[data-brand-form] p:has(input[type=checkbox]) label{margin:0}
[data-brand-form] p:has(input[type=checkbox]) .helptext{flex-basis:100%;margin-top:0}
/* Legal pages: footer links, public page, editors */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
footer{align-items:center;gap:var(--space-4);flex-wrap:wrap}
.footer-links{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-4)}
.footer-links a{color:var(--muted);font-size:11px}
.footer-links a:hover{color:var(--text)}
.legal-layout{display:grid;grid-template-columns:220px minmax(0,760px);gap:var(--space-12);justify-content:center;align-items:start}
.legal-nav{position:sticky;top:var(--space-6);display:flex;flex-direction:column;gap:var(--space-8)}
.legal-nav nav{display:flex;flex-direction:column;gap:var(--space-1)}
.legal-nav-title{font-size:15px;font-weight:650;color:var(--text);margin:0 0 var(--space-2)}
.legal-nav a{color:var(--muted);font-size:14px;padding:var(--space-1) 0}
.legal-nav a:hover,.legal-nav a.is-current{color:var(--text);text-decoration:none}
.legal-nav a.is-current{font-weight:600}
.legal-toc a{font-size:12px}
.legal-meta{color:var(--muted);font-size:13px;margin:var(--space-3) 0 var(--space-8)}
.legal-body{font-size:15px;line-height:1.75;overflow-wrap:anywhere}
.legal-body h2{font-size:20px;margin:var(--space-8) 0 var(--space-3);scroll-margin-top:var(--space-6)}
.legal-body h3{font-size:16px;margin:var(--space-6) 0 var(--space-2)}
.legal-body p{margin:0 0 var(--space-4)}
.legal-body ul{margin:0 0 var(--space-4);padding-left:var(--space-6)}
.legal-body li{margin-bottom:var(--space-2)}
.legal-body a{text-decoration:underline}
.legal-preview{font-size:13px;max-height:70vh;overflow:auto}
.legal-preview h2{font-size:16px}
.legal-edit{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);gap:var(--space-6);align-items:start}
.legal-editor{font:13px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace}
.legal-help ul{padding-left:var(--space-6);font-size:12px;color:var(--muted)}
.legal-help code,.placeholder-list code{font-size:11px;background:var(--surface-muted);padding:1px var(--space-1);border-radius:4px}
.placeholder-list{grid-template-columns:auto 1fr;margin-top:var(--space-3)}
.row-actions{white-space:nowrap;text-align:right}
@media(max-width:1023px){.legal-layout,.legal-edit{grid-template-columns:1fr;gap:var(--space-6)}.legal-nav{position:static}.legal-toc{display:none}.row-actions{white-space:normal}}
.legal-details{max-width:720px}
.footer-brand span{margin-left:var(--space-3);padding-left:var(--space-3);border-left:1px solid var(--border)}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:.8}
.password-field{position:relative;display:block}
.password-field input{padding-right:52px}
.password-toggle{position:absolute;top:50%;right:2px;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:44px;height:40px;border:0;border-radius:6px;background:transparent;color:var(--muted)}
.password-toggle:hover{color:var(--text)}
.orb-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:var(--space-3)}
.layout-picker .orb-card{align-items:center;text-align:center;padding:var(--space-3) var(--space-2)}
.orb-card .orb,.orb-classic{width:56px;height:56px;margin:0 auto var(--space-1)}
.orb-classic{display:grid;place-items:center;border-radius:50%;background:var(--primary);color:var(--surface)}
.legend-link{font-weight:400;font-size:11px;margin-left:var(--space-2)}
.orb-picker .hint{margin-top:var(--space-2)}
@media(max-width:1023px){.layout-picker .orb-card{display:flex}}
/* Chat orb gallery and orb pages. The orb stage is always dark, like a night sky, in both themes. */
.orb-grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.orb-tile{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden;transition:border-color .2s,transform .2s}
.orb-tile:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--c) 60%,var(--border))}
.orb-tile.is-active{border-color:var(--c);box-shadow:0 0 0 1px var(--c)}
.orb-stage{display:grid;place-items:center;padding:var(--space-8) var(--space-4);background:radial-gradient(120% 90% at 50% 0%,color-mix(in srgb,var(--c) 26%,#0b1020),#04060f 70%)}
.orb-stage.big{padding:var(--space-12) var(--space-4);border-radius:var(--radius)}
.orb-tile-body{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4) var(--space-4) var(--space-4);flex:1}
.orb-tile-body h2{font-size:17px}
.orb-tile-body h2 a{color:var(--text)}
.orb-tile-body p{margin:0;font-size:12px;color:var(--muted);flex:1}
.orb-tag{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:var(--space-2)}
.orb-actions{display:flex;gap:var(--space-2);margin-top:var(--space-3)}
.orb-actions .button{flex:1}
.orb-swatches{display:flex;gap:var(--space-2);align-items:center;font-size:11px;color:var(--muted)}
.orb-swatches i{width:18px;height:18px;border-radius:50%;display:inline-block;border:1px solid var(--border)}
.orb-hidden{opacity:.55}
.orb-code{font:12px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;min-height:220px}
/* demo chat in the corner */
.orb-demo{--od-accent:#ff7fc4;--od-accent-2:#d8a33e}
.od-launcher{position:fixed;right:28px;bottom:28px;z-index:80;width:76px;height:76px;border:0;padding:0;background:none;cursor:pointer}
.od-launcher .od-launcher-orb,.od-launcher .od-launcher-orb .orb{position:absolute;inset:0;width:100%;height:100%;transition:transform .5s cubic-bezier(.34,1.56,.5,1),opacity .3s}
.od-launcher .od-x{position:absolute;inset:10px;border-radius:50%;display:grid;place-items:center;color:var(--paper);background:linear-gradient(135deg,var(--od-accent),var(--od-accent-2));opacity:0;transform:rotate(-90deg) scale(.4);transition:transform .5s cubic-bezier(.34,1.56,.5,1),opacity .25s}
.od-label{position:absolute;right:calc(100% + 12px);top:50%;translate:0 -50%;padding:10px 16px;border-radius:999px;white-space:nowrap;background:var(--surface);border:1px solid var(--border);color:var(--text);font-weight:600;font-size:13px;box-shadow:0 8px 20px -12px #0b0e1f66;transition:opacity .25s}
.orb-demo.is-open .od-launcher-orb{transform:scale(.3) rotate(160deg);opacity:0}
.orb-demo.is-open .od-x{opacity:1;transform:none}
.orb-demo.is-open .od-label{opacity:0}
.od-chat{position:fixed;z-index:79;right:28px;bottom:116px;width:min(380px,calc(100vw - 32px));height:min(560px,calc(100vh - 150px));display:flex;flex-direction:column;overflow:hidden;border-radius:24px;background:var(--surface);border:1px solid var(--border);box-shadow:0 40px 90px -30px #0b0e1f88;transform-origin:calc(100% - 38px) calc(100% + 50px);transform:scale(.2) translateY(40px);opacity:0;visibility:hidden;transition:transform .55s cubic-bezier(.34,1.56,.5,1),opacity .3s,visibility 0s linear .55s}
.orb-demo.is-open .od-chat{transform:none;opacity:1;visibility:visible;transition:transform .55s cubic-bezier(.34,1.56,.5,1),opacity .25s,visibility 0s}
.od-head{display:flex;align-items:center;gap:var(--space-3);padding:14px 14px 14px 16px;border-bottom:1px solid var(--border);background:linear-gradient(135deg,color-mix(in srgb,var(--od-accent) 22%,transparent),color-mix(in srgb,var(--od-accent-2) 10%,transparent) 70%,transparent)}
.od-head-orb,.od-head-orb .orb{width:44px;height:44px;flex:none}
.od-head .who{flex:1;min-width:0}.od-head strong{display:block;font-size:15px}
.od-head small{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px}
.od-head small::before{content:"";width:7px;height:7px;border-radius:50%;background:#22c55e}
.od-body{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px}
.od-msg{max-width:84%;padding:10px 14px;border-radius:18px;font-size:14px;line-height:1.45;animation:odIn .45s cubic-bezier(.34,1.56,.5,1) both}
.od-msg.bot{align-self:flex-start;background:var(--surface-muted);border-bottom-left-radius:6px}
.od-msg.me{align-self:flex-end;background:linear-gradient(135deg,var(--od-accent),var(--od-accent-2));color:#140a12;font-weight:500;border-bottom-right-radius:6px}
.od-typing{display:inline-flex;gap:5px;padding:14px 16px}
.od-typing i{width:7px;height:7px;border-radius:50%;background:var(--muted);animation:odDot 1s ease-in-out infinite}
.od-typing i:nth-child(2){animation-delay:.15s}.od-typing i:nth-child(3){animation-delay:.3s}
.od-chips{display:flex;flex-wrap:wrap;gap:8px;padding:0 16px 12px}
.od-chip{padding:8px 13px;border-radius:999px;border:1px solid color-mix(in srgb,var(--od-accent) 45%,transparent);background:color-mix(in srgb,var(--od-accent) 10%,transparent);color:var(--text);font-size:12px;font-weight:600;min-height:36px;animation:odIn .45s cubic-bezier(.34,1.56,.5,1) both}
.od-foot{display:flex;gap:8px;padding:12px;border-top:1px solid var(--border);margin:0}
.od-foot input{border-radius:999px}
.od-send{width:44px;height:44px;flex:none;border-radius:50%;border:0;display:grid;place-items:center;color:var(--paper);background:linear-gradient(135deg,var(--od-accent),var(--od-accent-2))}
@keyframes odIn{from{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:none}}
@keyframes odDot{0%,100%{transform:translateY(0);opacity:.45}50%{transform:translateY(-4px);opacity:1}}
@media(max-width:480px){.od-label{display:none}.od-chat{right:16px;left:16px;width:auto;bottom:108px}.od-launcher{right:16px;bottom:16px}}

/* Guided tours (driver.js, static/js/tour.js): the partner's brand colour, light and dark. */
.driver-popover.kt-tour{font-family:inherit;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-6);min-width:260px;max-width:340px;box-shadow:0 24px 64px #0b122040}
.driver-popover.kt-tour .driver-popover-title{font-size:16px;font-weight:650;letter-spacing:-.2px;padding-right:var(--space-8)}
.driver-popover.kt-tour .driver-popover-description{font-size:13px;line-height:1.6;color:var(--muted)}
.driver-popover.kt-tour .driver-popover-close-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;top:4px;right:4px;color:var(--muted);border-radius:8px}
.driver-popover.kt-tour .driver-popover-close-btn:hover,.driver-popover.kt-tour .driver-popover-close-btn:focus-visible{color:var(--text);background:var(--surface-muted)}
.driver-popover.kt-tour .driver-popover-footer{margin-top:var(--space-6);gap:var(--space-3);padding:0;border:0;font-size:inherit;color:inherit}  /* driver.js uses <footer>; undo the page footer style */
.driver-popover.kt-tour .driver-popover-progress-text{color:var(--muted);font-size:11px}
.driver-popover.kt-tour .driver-popover-navigation-btns{gap:var(--space-2)}
.driver-popover.kt-tour .driver-popover-navigation-btns button+button{margin-left:0}
.driver-popover.kt-tour .driver-popover-footer-btn{display:inline-flex;align-items:center;min-height:40px;padding:0 var(--space-4);border-radius:var(--control-radius);font-size:12px;font-weight:600;text-shadow:none;border:1px solid var(--border);background:var(--surface);color:var(--text)}
.driver-popover.kt-tour .driver-popover-footer-btn:hover{background:var(--surface-muted)}
.driver-popover.kt-tour .driver-popover-prev-btn.driver-popover-btn-disabled{display:none!important}  /* driver.js sets display inline */
.driver-popover.kt-tour .driver-popover-next-btn{background:var(--primary);border-color:var(--primary);color:var(--surface)}
.driver-popover.kt-tour .driver-popover-next-btn:hover{background:var(--primary-hover)}
.driver-popover.kt-tour button:focus-visible{outline:3px solid var(--primary);outline-offset:2px}
.driver-popover.kt-tour .driver-popover-arrow{border-color:var(--surface)}
.driver-popover.kt-tour .driver-popover-arrow-side-left{border-top-color:transparent;border-bottom-color:transparent;border-right-color:transparent}
.driver-popover.kt-tour .driver-popover-arrow-side-right{border-top-color:transparent;border-bottom-color:transparent;border-left-color:transparent}
.driver-popover.kt-tour .driver-popover-arrow-side-top{border-bottom-color:transparent;border-left-color:transparent;border-right-color:transparent}
.driver-popover.kt-tour .driver-popover-arrow-side-bottom{border-top-color:transparent;border-left-color:transparent;border-right-color:transparent}
body.kt-touring .sidebar{transition:none}
@media(max-width:480px){.driver-popover.kt-tour{max-width:calc(100vw - 32px)}}
/* Phones: hide the topbar's status badge (what the stale .workspace-picker rule above meant to do) so the switch menu and the tour button fit. */
@media(max-width:767px){.context-picker .badge{display:none}.topbar-actions{gap:var(--space-1)}}

/* Sign-in and sign-up: form on the left, a product preview on the right. */
body:has(.auth-screen) .topbar,
body:has(.auth-screen) .shell > footer{display:none}
body:has(.auth-screen) .shell{min-height:100dvh;background:var(--surface)}
body:has(.auth-screen) main{max-width:none;margin:0;padding:0;min-height:100dvh}
.auth-screen{display:grid;grid-template-columns:minmax(340px,480px) 1fr;min-height:100dvh;background:var(--surface)}
.auth-form-pane{display:flex;flex-direction:column;min-height:100dvh;padding:28px 36px 20px}
.auth-bar{display:flex;align-items:center;justify-content:space-between;gap:16px}
.auth-logo{display:inline-flex;align-items:center;color:var(--text);font-weight:700;font-size:18px;letter-spacing:-.3px;text-decoration:none}
.auth-logo:hover{text-decoration:none}
.auth-logo-img{max-height:32px;max-width:148px;object-fit:contain}
.auth-switch{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border:1px solid var(--border);border-radius:999px;color:var(--text);background:var(--surface);font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap}
.auth-switch:hover{background:var(--surface-muted);text-decoration:none}
.auth-form-body{flex:1;display:flex;flex-direction:column;justify-content:safe center;width:min(380px,100%);margin-inline:auto;padding-block:28px}
.auth-screen h1{font-size:30px;letter-spacing:-.7px;margin:0 0 8px}
.auth-screen .lede{margin:0 0 28px;color:var(--muted);font-size:15px}
.auth-screen .eyebrow{margin-bottom:12px}
.auth-screen .google-signin{width:100%;margin-top:0}
.auth-screen .auth-or{margin:22px 0}
.auth-field{margin:0 0 16px}
.auth-field-label{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:8px}
.auth-field-label label{margin:0}
.auth-field-label a{font-size:12px;font-weight:600}
.auth-help{margin-top:8px;color:var(--muted);font-size:12px}
.auth-help ul{margin:6px 0 0;padding-left:18px}
.auth-screen .button{width:100%}
.auth-screen .button.primary{min-height:48px;margin-top:8px;font-size:14px}
.auth-legal{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:16px;color:var(--muted);font-size:12px}
.auth-legal nav{display:flex;gap:14px;flex-wrap:wrap}
.auth-legal a{color:var(--muted);font-weight:600}
.auth-legal a:hover{color:var(--text)}
.auth-visual{position:relative;margin:12px 12px 12px 0;border-radius:28px;display:flex;align-items:center;justify-content:center;padding:48px 40px;overflow:hidden;background:
  radial-gradient(circle at 18% 12%,rgba(255,255,255,.35),transparent 36%),
  radial-gradient(circle at 82% 88%,rgba(255,255,255,.16),transparent 32%),
  linear-gradient(165deg,color-mix(in srgb,var(--primary) 62%,#d5e4ff),color-mix(in srgb,var(--primary) 82%,#102044))}
.auth-orbs{position:absolute;inset:0;pointer-events:none}
.auth-float{position:absolute;bottom:22px;z-index:0;transform-origin:center bottom;animation:authJumpA 2.6s ease-in-out infinite}
.auth-float .orb{cursor:default;filter:drop-shadow(0 12px 16px rgba(11,18,32,.28))}
.auth-float.f1{left:4%;animation-name:authJumpA;animation-duration:2.5s}
.auth-float.f2{left:17%;animation-name:authSpinA;animation-duration:2.9s;animation-delay:-.6s;transform-origin:center center}
.auth-float.f3{left:31%;animation-name:authJumpC;animation-duration:2.3s;animation-delay:-1.1s}
.auth-float.f4{left:45%;animation-name:authSpinB;animation-duration:2.7s;animation-delay:-.3s;transform-origin:center center}
.auth-float.f5{left:59%;animation-name:authJumpB;animation-duration:2.4s;animation-delay:-1.6s}
.auth-float.f6{left:73%;animation-name:authJumpC;animation-duration:3.1s;animation-delay:-.9s}
.auth-float.f7{left:86%;animation-name:authSpinA;animation-duration:2.2s;animation-delay:-1.4s;transform-origin:center center}
.auth-float.f8,.auth-float.f9,.auth-float.f10{left:50%;animation-name:authJumpB}
.auth-float.top{bottom:auto;top:22px;transform-origin:center top}
.auth-float.top.f1{animation-name:authDropA;animation-delay:-.8s}
.auth-float.top.f2{animation-name:authDropSpinA;animation-delay:-1.7s;transform-origin:center center}
.auth-float.top.f3{animation-name:authDropC;animation-delay:-.4s}
.auth-float.top.f4{animation-name:authDropSpinB;animation-delay:-1.2s;transform-origin:center center}
.auth-float.top.f5{animation-name:authDropB;animation-delay:-2s}
.auth-float.top.f6{animation-name:authDropC;animation-delay:-.2s}
.auth-float.top.f7{animation-name:authDropSpinA;animation-delay:-1.5s;transform-origin:center center}
@keyframes authJumpA{0%,58%,100%{transform:translate3d(0,0,0) rotate(0)}14%{transform:translate3d(8px,-72px,0) rotate(-8deg)}28%{transform:translate3d(0,0,0) rotate(6deg)}40%{transform:translate3d(-6px,-24px,0) rotate(-3deg)}50%{transform:translate3d(0,0,0) rotate(0)}}
@keyframes authJumpB{0%,62%,100%{transform:translate3d(0,0,0) rotate(0)}12%{transform:translate3d(-12px,-52px,0) rotate(9deg)}26%{transform:translate3d(0,0,0) rotate(-5deg)}38%{transform:translate3d(8px,-16px,0) rotate(3deg)}48%{transform:translate3d(0,0,0) rotate(0)}}
@keyframes authJumpC{0%,54%,100%{transform:translate3d(0,0,0) rotate(0)}10%{transform:translate3d(0,-40px,0) rotate(-7deg)}20%{transform:translate3d(0,0,0) rotate(5deg)}30%{transform:translate3d(10px,-14px,0) rotate(-2deg)}40%{transform:translate3d(0,0,0) rotate(0)}}
@keyframes authSpinA{0%,58%,100%{transform:translate3d(0,0,0) rotate(0)}30%{transform:translate3d(8px,-70px,0) rotate(360deg)}46%{transform:translate3d(0,0,0) rotate(360deg)}}
@keyframes authSpinB{0%,60%,100%{transform:translate3d(0,0,0) rotate(0)}28%{transform:translate3d(-10px,-58px,0) rotate(-360deg)}44%{transform:translate3d(0,0,0) rotate(-360deg)}}
@keyframes authDropA{0%,58%,100%{transform:translate3d(0,0,0) rotate(0)}14%{transform:translate3d(8px,72px,0) rotate(8deg)}28%{transform:translate3d(0,0,0) rotate(-6deg)}40%{transform:translate3d(-6px,24px,0) rotate(3deg)}50%{transform:translate3d(0,0,0) rotate(0)}}
@keyframes authDropB{0%,62%,100%{transform:translate3d(0,0,0) rotate(0)}12%{transform:translate3d(-12px,52px,0) rotate(-9deg)}26%{transform:translate3d(0,0,0) rotate(5deg)}38%{transform:translate3d(8px,16px,0) rotate(-3deg)}48%{transform:translate3d(0,0,0) rotate(0)}}
@keyframes authDropC{0%,54%,100%{transform:translate3d(0,0,0) rotate(0)}10%{transform:translate3d(0,40px,0) rotate(7deg)}20%{transform:translate3d(0,0,0) rotate(-5deg)}30%{transform:translate3d(10px,14px,0) rotate(2deg)}40%{transform:translate3d(0,0,0) rotate(0)}}
@keyframes authDropSpinA{0%,58%,100%{transform:translate3d(0,0,0) rotate(0)}30%{transform:translate3d(8px,70px,0) rotate(-360deg)}46%{transform:translate3d(0,0,0) rotate(-360deg)}}
@keyframes authDropSpinB{0%,60%,100%{transform:translate3d(0,0,0) rotate(0)}28%{transform:translate3d(-10px,58px,0) rotate(360deg)}44%{transform:translate3d(0,0,0) rotate(360deg)}}
.auth-stage{position:relative;z-index:1;width:min(420px,100%);min-height:248px}
.auth-scene{position:absolute;left:0;right:0;top:0;opacity:0;transform:translateY(16px);transition:opacity .5s ease,transform .5s ease}
.auth-scene.is-on{opacity:1;transform:none}
.auth-scene.is-leaving{opacity:0;transform:translateY(-12px)}
.auth-chat{background:var(--paper);color:#242c3a;border-radius:22px;padding:22px 22px 36px;min-height:196px;box-shadow:0 30px 70px -36px #0b122088}
.auth-biz{margin:0 0 12px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8b95a7}
.auth-ask{margin:0 0 16px;margin-left:auto;width:fit-content;max-width:90%;padding:10px 14px;border-radius:16px 16px 4px 16px;background:#eef3fb;color:#243044;font-size:13px;font-weight:600}
.auth-who{display:block;margin-bottom:6px;font-size:12px;font-weight:700;color:var(--primary)}
.auth-reply p{margin:0;font-size:14px;line-height:1.5;color:#3c4656}
.auth-note{position:absolute;left:18px;bottom:-16px;display:inline-flex;align-items:center;gap:8px;margin:0;padding:10px 14px;border-radius:14px;background:#142033;color:#f7f9fc;font-size:13px;font-weight:650;box-shadow:0 16px 30px -16px #0b1220cc}
.auth-note .icon{color:#9ec5ff}
.auth-ask,.auth-reply,.auth-note{opacity:0;transform:translateY(8px);transition:opacity .4s ease,transform .4s ease}
.auth-scene.is-on .auth-ask{opacity:1;transform:none;transition-delay:.2s}
.auth-scene.is-on .auth-reply{opacity:1;transform:none;transition-delay:1.15s}
.auth-scene.is-on .auth-note{opacity:1;transform:none;transition-delay:2.15s}
.auth-scene.is-leaving .auth-ask,.auth-scene.is-leaving .auth-reply,.auth-scene.is-leaving .auth-note{opacity:0;transform:translateY(-6px);transition-delay:0s}
@media(prefers-reduced-motion:reduce){
  .auth-scene,.auth-ask,.auth-reply,.auth-note{transition:none}
  .auth-scene.is-on .auth-ask,.auth-scene.is-on .auth-reply,.auth-scene.is-on .auth-note{opacity:1;transform:none}
  .auth-float{animation:none}
}
@media(max-width:960px){
  .auth-screen{grid-template-columns:1fr}
  .auth-visual{display:none}
  .auth-form-pane{padding:20px 20px 16px}
}
.topbar-home{display:inline-flex;align-items:center;color:inherit;text-decoration:none}
.topbar-home:hover{text-decoration:none}
.booking-helper{margin-top:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-muted)}
.booking-helper .hint{margin-top:0}
.booking-helper .button{margin-bottom:0}
.booking-suggest{margin-top:var(--space-4)}
.booking-suggest .eyebrow{margin:var(--space-4) 0 var(--space-2)}
.booking-suggest p{margin:var(--space-2) 0}
.booking-questions{list-style:none;padding:0;margin:var(--space-2) 0}
.booking-questions button{display:block;width:100%;text-align:left;padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2);border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font-size:13px}
.booking-questions button:hover{border-color:var(--primary)}
.setup-scrim{position:fixed;inset:0;z-index:60;background:#17203359}
.setup-panel{position:fixed;top:0;right:0;bottom:0;z-index:61;width:min(420px,100%);display:flex;flex-direction:column;background:var(--surface);border-left:1px solid var(--border);box-shadow:-24px 0 60px #17203333}
.setup-panel-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border)}
.setup-panel-mark{flex:none;width:44px;height:44px}
.setup-panel-mark .orb{width:44px;height:44px}
.setup-panel-titles{flex:1;min-width:0}
.setup-panel-head .eyebrow{margin:0 0 2px}
.setup-panel-head h2{font-size:16px}
.setup-panel-head p{margin:2px 0 0;font-size:12px;color:var(--muted)}
.setup-panel-tools{display:flex;align-items:center;flex:none;margin:-6px -6px 0 0}
.setup-panel-tools .icon-button{width:36px;height:36px}
.setup-assistant{display:flex;flex-direction:column;flex:1;min-height:0;margin:0;padding:0;border:0}
.setup-log{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:var(--space-3);margin:0;padding:var(--space-4)}
.setup-log>.hint{margin:0}
.setup-msg{margin:0;padding:10px 14px;border-radius:16px;white-space:pre-wrap;max-width:88%;font-size:14px;line-height:1.45}
.setup-msg strong{font-weight:650}
.setup-msg-user{align-self:flex-end;background:var(--primary-soft);border-bottom-right-radius:6px}
.setup-msg-assistant{align-self:flex-start;background:var(--surface-muted);border-bottom-left-radius:6px}
.setup-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.setup-chips button{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;padding:8px 12px;min-height:36px;font-size:12px;font-weight:600}
.setup-chips button:hover{border-color:var(--primary);color:var(--primary)}
.setup-form{padding:0 var(--space-4) var(--space-4);background:var(--surface)}
.setup-form .notice{margin-bottom:var(--space-3)}
.setup-form .hint{margin:0 0 var(--space-2);text-align:center;font-size:12px;color:var(--muted)}
.setup-compose{position:relative;border:1px solid var(--border);border-radius:28px;background:var(--surface);box-shadow:0 1px 2px #1720330d,0 10px 28px #17203314;padding:4px 4px 4px 18px}
.setup-compose:focus-within{border-color:color-mix(in srgb,var(--primary) 45%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 16%,transparent),0 10px 28px #17203314}
.setup-compose textarea{display:block;width:100%;min-height:24px;max-height:180px;margin:0;padding:10px 46px 10px 0;border:0;border-radius:0;background:transparent;box-shadow:none;resize:none;line-height:1.45;overflow:hidden}
.setup-compose textarea:focus,.setup-compose textarea:focus-visible{outline:none}
.setup-compose.is-tall{border-radius:24px;padding:6px 6px 6px 16px}
.setup-compose.is-tall textarea{padding:8px 4px 42px 0}
.setup-send{position:absolute;right:6px;bottom:6px;display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:var(--text);color:var(--surface)}
.setup-send:hover{filter:brightness(1.08)}
.setup-send .icon{display:block;vertical-align:0}
.setup-send .htmx-indicator{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:setup-spin .7s linear infinite}
.setup-send.htmx-request .htmx-indicator{display:block}
@keyframes setup-spin{to{transform:rotate(360deg)}}
.setup-orb-btn{position:fixed;right:24px;bottom:24px;z-index:62;display:flex;align-items:center;gap:10px;padding:0;border:0;background:transparent}
.setup-orb-btn .orb{filter:drop-shadow(0 12px 18px #17203344)}
.setup-orb-label{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:999px;padding:8px 12px;font-size:12px;font-weight:650;box-shadow:0 8px 20px #17203322}
.setup-orb-fallback{display:block;width:76px;height:76px;border-radius:50%;background:radial-gradient(circle at 35% 30%,var(--paper),var(--primary) 45%,#1d4ed8);box-shadow:0 12px 24px #17203333}
@media(max-width:640px){.setup-orb-label{display:none}.setup-panel{width:100%}}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.addon-list{display:flex;flex-direction:column;gap:var(--space-4)}
.addon-card{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-4) var(--space-6);background:var(--bg)}
.addon-card-main{display:flex;gap:var(--space-3);align-items:flex-start;min-width:0}
.addon-card h3{font-size:16px}
.addon-price{margin:var(--space-1) 0 0;font-weight:650}
.addon-card .muted{margin:var(--space-3) 0 0}
.addon-card .badge,.addon-lock{margin-top:var(--space-3)}
.addon-lock{display:inline-flex;align-items:center;gap:6px;background:var(--amber-soft);color:var(--amber);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;text-decoration:none}
.addon-lock:hover{text-decoration:underline}
.addon-control{flex-shrink:0;padding-top:2px}
.addon-switch{position:relative;display:inline-flex;align-items:center;gap:var(--space-3);color:var(--muted);font-size:13px;font-weight:600;cursor:pointer}
.addon-switch:has(input:disabled){cursor:not-allowed}
.addon-switch input{position:absolute;opacity:0;width:1px;height:1px}
.addon-switch .track{width:36px;height:22px;border-radius:999px;background:var(--surface-muted);border:1px solid var(--border);position:relative;flex-shrink:0;transition:background .15s ease,border-color .15s ease}
.addon-switch .track::after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--surface);border:1px solid var(--border);transition:transform .15s ease}
.addon-switch input:checked + .track{background:var(--primary);border-color:var(--primary)}
.addon-switch input:checked + .track::after{transform:translateX(14px)}
.addon-switch input:focus-visible + .track{outline:3px solid var(--primary);outline-offset:3px}
.addon-switch input:disabled + .track{opacity:.55}
@media(max-width:640px){.addon-card{flex-direction:column}.addon-lock{white-space:normal}}
.pricing-form .pricing-section{margin:0 0 var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--border)}
.pricing-form .pricing-section:first-of-type{border-top:0;padding-top:0}
.pricing-form h3{font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);margin:0 0 var(--space-3)}
.pricing-form .hint{margin-top:0}
.pack-row{border:1px solid var(--border);border-radius:12px;padding:var(--space-3);margin:0 0 var(--space-3);background:var(--bg)}
.pack-row-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-2)}
.pack-row-head label{margin:0}
.pack-row-head .button{min-height:32px;padding:0 var(--space-3)}
.pack-fields{display:grid;grid-template-columns:1.3fr .8fr .8fr;gap:var(--space-2);margin-top:var(--space-3)}
.pack-row input[name$="-DELETE"]{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.choice-list ul{list-style:none;padding:0;margin:0 0 var(--space-4);display:grid;gap:var(--space-2)}
.choice-list label{display:flex;align-items:center;gap:var(--space-2);font-weight:500;margin:0}
.choice-list input{width:20px;min-height:20px}
.pricing-form p:has(input[type=checkbox]){flex-wrap:wrap}
.pricing-form p:has(input[type=checkbox]) .helptext{flex-basis:100%}
@media(max-width:640px){.pack-fields{grid-template-columns:1fr}}
.sidebar-foot .demo-flag{margin-top:var(--space-2)}
@media(max-width:767px){.context-picker .demo-flag{display:inline-flex}}

/* Shared settings surfaces: partner colors and light/dark palette come from the shell. */
[hidden] { display: none !important; }
.mono { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.form-field { margin-bottom: var(--space-4); min-width: 0; }
.form-field .hint { margin: var(--space-2) 0 0; }
.settings-form { max-width: 640px; }
.checkbox-row { display: flex; align-items: flex-start; gap: var(--space-3); margin: var(--space-4) 0; }
.checkbox-row input { flex-shrink: 0; }
.integration-grid { display: grid; gap: var(--space-6); }
.integration-card { margin: 0; padding: var(--space-8); }
.integration-heading { display: flex; align-items: flex-start; gap: var(--space-4); margin-bottom: var(--space-6); }
.integration-heading > div { flex: 1; min-width: 0; }
.integration-heading p { margin-bottom: 0; }
.integration-heading .integration-icon { margin: 0; flex-shrink: 0; }
.integration-heading .badge { flex-shrink: 0; }
.status-dot { width: 6px; height: 6px; display: inline-block; border-radius: 50%; background: currentColor; margin-right: var(--space-1); }
.integration-setup { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-12); border-top: 1px solid var(--border); padding-top: var(--space-6); }
.setup-steps { list-style: none; counter-reset: setup; padding: 0; margin: var(--space-6) 0 0; }
.setup-steps li { counter-increment: setup; position: relative; padding-left: var(--space-12); margin-bottom: var(--space-6); }
.setup-steps li::before { content: counter(setup); position: absolute; left: 0; top: 0; width: 28px; height: 28px; display: grid; place-items: center; border-radius: 50%; background: var(--primary-soft); color: var(--primary); font-weight: 650; }
.setup-steps p { font-size: 12px; color: var(--muted); margin: var(--space-1) 0 var(--space-2); }
.scope-chips { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.chip { display: inline-flex; align-items: center; gap: var(--space-1); background: var(--surface-muted); color: var(--muted); border: 1px solid var(--border); border-radius: 6px; padding: var(--space-1) var(--space-2); font-size: 11px; max-width: 100%; overflow-wrap: anywhere; }
.connection-summary { display: flex; flex-wrap: wrap; gap: var(--space-6) var(--space-12); padding: var(--space-4); background: var(--surface-muted); border-radius: var(--control-radius); margin-bottom: var(--space-4); }
.connection-summary strong, .connection-summary small { display: block; overflow-wrap: anywhere; }
.replace-token { display: inline-block; max-width: 100%; vertical-align: top; margin-right: var(--space-3); }
.replace-token[open] { display: block; }
.replace-token summary { width: fit-content; }
.replace-token form { margin-top: var(--space-6); }
.integration-card > .inline-form { margin-top: 0; }
.integration-footnote { margin-top: var(--space-6); }
.button.danger.ghost { background: transparent; color: var(--red); border-color: var(--border); }
.segmented-control { display: flex; width: fit-content; max-width: 100%; padding: var(--space-1); border: 1px solid var(--border); border-radius: 10px; background: var(--surface-muted); margin-bottom: var(--space-6); }
.segmented-control button { min-height: 40px; border: 0; border-radius: 7px; padding: var(--space-2) var(--space-4); background: transparent; color: var(--muted); font-weight: 600; font-size: 12px; }
.segmented-control button[aria-pressed=true] { background: var(--surface); color: var(--primary); box-shadow: 0 1px 3px color-mix(in srgb, var(--text) 12%, transparent); }
@media (max-width: 767px) {
  .integration-card { padding: var(--space-4); }
  .integration-heading { flex-wrap: wrap; }
  .integration-heading > div { flex-basis: calc(100% - 70px); }
  .integration-setup { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
}

/* Destination-aware route editor and delivery list. */
dialog:has([data-route-form]) { width: min(840px, calc(100% - 32px)); }
.route-section { min-width: 0; border: 0; border-bottom: 1px solid var(--border); padding: var(--space-6) 0; margin: 0; }
.route-section legend { padding: 0; font-size: 13px; font-weight: 650; }
.destination-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-3); }
.destination-option { position: relative; min-width: 0; }
.destination-option label { margin: 0; height: 100%; cursor: pointer; }
.destination-option input { position: absolute; opacity: 0; width: 1px; height: 1px; min-height: 0; }
.destination-choice { display: flex; width: 100%; height: 100%; flex-direction: column; align-items: flex-start; gap: var(--space-2); border: 1px solid var(--border); border-radius: var(--radius); padding: var(--space-4); background: var(--surface); }
.destination-choice small { color: var(--muted); font-size: 11px; font-weight: 400; }
.destination-choice > .icon { color: var(--primary); }
.destination-option input:checked + .destination-choice { border-color: var(--primary); background: var(--primary-soft); box-shadow: 0 0 0 1px var(--primary); }
.destination-option input:focus-visible + .destination-choice { outline: 3px solid var(--primary); outline-offset: 3px; }
.destination-option.is-locked .destination-choice { background: var(--surface-muted); padding-bottom: var(--space-12); }
.destination-unlock { position: absolute; bottom: var(--space-3); left: var(--space-4); font-size: 11px; }
.lock-note { display: flex; gap: var(--space-1); align-items: center; font-size: 10px; color: var(--muted); }
.field-pair { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-4); }
.secret-controls { display: flex; gap: var(--space-2); align-items: center; }
.secret-controls > input, .secret-controls > .password-field { min-width: 0; flex: 1; }
.secret-controls .button { flex-shrink: 0; }
input[type=range] { accent-color: var(--primary); padding: 0; border: 0; box-shadow: none; }
.mapping-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-3); align-items: center; margin-top: var(--space-4); }
.mapping-grid > * { min-width: 0; }
.mapping-grid label { overflow-wrap: anywhere; }
.mapping-heading { color: var(--muted); font-size: 11px; border-bottom: 1px solid var(--border); padding-bottom: var(--space-2); }
.tag-editor { display: grid; gap: var(--space-2); }
.tag-editor .chip { cursor: pointer; min-height: 32px; }
.routing-connection { padding: var(--space-4) var(--space-6); background: var(--surface); }
.routing-connection > .status-dot { color: var(--green); flex-shrink: 0; }
.routing-connection.is-disconnected { background: var(--amber-soft); }
.routing-connection.is-disconnected > .status-dot { color: var(--amber); }
.route-row { display: flex; align-items: center; gap: var(--space-4); padding: var(--space-6) 0; border-top: 1px solid var(--border); }
.route-description { flex: 1; min-width: 0; }
.route-title { display: flex; align-items: center; gap: var(--space-3); flex-wrap: wrap; margin-bottom: var(--space-2); }
.route-title h3 { font-size: 14px; overflow-wrap: anywhere; }
.route-flow, .route-actions { display: flex; align-items: center; gap: var(--space-2); flex-wrap: wrap; }
.route-row.is-disabled .route-description, .route-row.is-disabled > .bot-icon { opacity: .55; }
.delivery-error { display: block; max-width: 260px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.numeric { font-variant-numeric: tabular-nums; }
@media (max-width: 767px) {
  dialog:has([data-route-form]) { width: 100%; }
  .destination-options { grid-template-columns: minmax(0, 1fr); }
  .destination-choice { gap: var(--space-1); }
  .field-pair { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .route-row { flex-wrap: wrap; }
  .route-description { flex-basis: calc(100% - 64px); }
  .route-actions { width: 100%; }
  .delivery-error { max-width: 100%; }
}

/* Billing: account state first, followed by comparable plans and optional capacity. */
.billing-page { --billing-shadow: 0 3px 16px color-mix(in srgb, var(--text) 4%, transparent); }
.billing-page .card { box-shadow: var(--billing-shadow); }
.billing-section { margin: var(--space-8) 0; scroll-margin-top: var(--space-6); }
.billing-hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-12); padding: var(--space-8); background: linear-gradient(120deg, var(--primary-soft), var(--surface) 60%); border-color: color-mix(in srgb, var(--primary) 25%, var(--border)); }
.billing-current h2 { font-size: 32px; line-height: 1.25; letter-spacing: -.7px; margin: var(--space-3) 0; overflow-wrap: anywhere; }
.billing-current > p:not(.eyebrow) { max-width: 400px; }
.billing-current .hero-price { font-size: 24px; font-variant-numeric: tabular-nums; }
.hero-price small, .plan-price small { color: var(--muted); font-weight: 400; font-size: 12px; white-space: nowrap; }
.billing-meters { display: grid; align-content: center; gap: var(--space-6); }
.usage-meter > div:first-child { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); flex-wrap: wrap; font-size: 12px; }
.usage-meter span { display: inline-flex; align-items: center; gap: var(--space-2); color: var(--muted); }
.usage-meter strong { font-size: 14px; font-variant-numeric: tabular-nums; }
.usage-meter small { font-size: 10px; color: var(--muted); }
progress, .balance-bar { display: block; appearance: none; width: 100%; height: 6px; border: 0; border-radius: 999px; overflow: hidden; background: var(--surface-muted); margin: var(--space-2) 0; accent-color: var(--primary); }
progress::-webkit-progress-bar { background: var(--surface-muted); }
progress::-webkit-progress-value { background: var(--primary); border-radius: 999px; }
progress::-moz-progress-bar { background: var(--primary); border-radius: 999px; }
.balance-bar.has-balance { background: color-mix(in srgb, var(--green) 50%, var(--surface-muted)); }
.payment-alert { display: flex; justify-content: space-between; gap: var(--space-4); align-items: center; }
.payment-alert p { margin: 0; }
.pricing-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-4); align-items: stretch; }
.pricing-card { display: flex; flex-direction: column; margin: 0; position: relative; }
.pricing-card.is-popular { border: 1px solid var(--primary); box-shadow: 0 0 0 1px var(--primary), var(--billing-shadow); }
.pricing-card-heading { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); justify-content: space-between; min-height: 32px; }
.pricing-card h3 { font-size: 16px; }
.popular-badge { background: var(--primary-soft); color: var(--primary); }
.plan-price { margin: var(--space-6) 0 var(--space-2); font-size: clamp(24px, 2.8vw, 36px); line-height: 1.2; font-weight: 650; font-variant-numeric: tabular-nums; letter-spacing: -1px; }
.plan-pitch { font-size: 12px; min-height: 40px; }
.feature-checklist { list-style: none; padding: var(--space-6) 0; border-top: 1px solid var(--border); margin: 0 0 var(--space-4); flex: 1; }
.feature-checklist li { display: flex; align-items: flex-start; gap: var(--space-2); font-size: 12px; margin-bottom: var(--space-3); }
.feature-checklist .icon { color: var(--green); flex-shrink: 0; margin-top: 2px; }
.pricing-card .button { width: 100%; }
.topup-grid, .billing-addon-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
.topup-card { margin: 0; display: flex; flex-direction: column; }
.topup-card h3 { display: flex; align-items: center; gap: var(--space-2); }
.topup-card > p.muted { font-size: 12px; min-height: 40px; }
.topup-card > form { margin-top: auto; }
.pack-options { border: 0; padding: 0; margin: var(--space-4) 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(110px, 1fr)); gap: var(--space-2); }
.pack-option { position: relative; min-width: 0; margin: 0; cursor: pointer; }
.pack-option input { position: absolute; width: 1px; height: 1px; min-height: 0; opacity: 0; }
.pack-tile { display: flex; width: 100%; height: 100%; flex-direction: column; gap: var(--space-1); padding: var(--space-3); border: 1px solid var(--border); border-radius: var(--control-radius); }
.pack-tile > span, .pack-tile small { font-size: 10px; color: var(--muted); font-weight: 400; }
.pack-tile strong { font-size: 12px; }
.pack-tile b { font-size: 20px; font-variant-numeric: tabular-nums; margin-top: var(--space-2); }
.pack-option input:checked + .pack-tile { border-color: var(--primary); background: var(--primary-soft); }
.pack-option input:focus-visible + .pack-tile { outline: 3px solid var(--primary); outline-offset: 3px; }
.topup-footnote { margin: var(--space-4) 0 0; }
.automatic-topups { margin: var(--space-8) 0; }
.automatic-topups .section-heading { align-items: center; }
.auto-topup-footer { display: flex; justify-content: space-between; align-items: center; gap: var(--space-6); margin-top: var(--space-4); }
.auto-topup-footer .usage-meter { width: min(280px, 70%); }
.billing-addon-grid .addon-card { margin: 0; align-items: flex-start; }
.billing-footer { display: flex; flex-wrap: wrap; gap: var(--space-4); justify-content: space-between; padding: var(--space-4) 0; color: var(--muted); font-size: 11px; }
.text-button { display: inline-flex; align-items: center; gap: var(--space-2); border: 0; background: transparent; color: var(--primary); padding: 0; min-height: 44px; font-size: inherit; }
.billing-footer p { margin: 0; align-self: center; }
@media (max-width: 1100px) and (min-width: 768px) { .pricing-card { padding: var(--space-4); } }
@media (max-width: 767px) {
  .billing-hero, .pricing-grid, .topup-grid, .billing-addon-grid { grid-template-columns: minmax(0, 1fr); }
  .billing-hero { padding: var(--space-6); gap: var(--space-8); }
  .plan-price { font-size: 36px; }
  .plan-pitch { min-height: 0; }
  .payment-alert { align-items: flex-start; flex-direction: column; }
  .automatic-topups .section-heading { flex-wrap: wrap; }
  .pack-options { grid-template-columns: minmax(0, 1fr); }
  .pack-tile { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--space-1) var(--space-3); }
  .pack-tile b { grid-column: 2; grid-row: 1 / 3; align-self: center; margin: 0; }
  .pack-tile small { grid-column: 1 / -1; }
}

/* Usage: consistent meters, readable values and calendar-based charts. */
.usage-metrics .metric-label { display: flex; align-items: center; gap: var(--space-2); }
.usage-metrics strong { font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.usage-metrics progress { margin: var(--space-3) 0; }
.usage-metrics .metric-text { line-height: 1.4; }
.usage-chart { height: 260px; position: relative; }
.chart-range { display: inline-flex; gap: var(--space-1); padding: var(--space-1); border: 1px solid var(--border); border-radius: var(--control-radius); background: var(--surface-muted); flex-shrink: 0; }
.chart-range a { display: flex; align-items: center; min-height: 36px; padding: var(--space-1) var(--space-3); color: var(--muted); font-size: 12px; border-radius: 5px; }
.chart-range a[aria-current] { color: var(--primary); background: var(--surface); font-weight: 600; }
.chart-empty { min-height: 230px; display: flex; align-items: center; justify-content: center; flex-direction: column; text-align: center; color: var(--muted); gap: var(--space-3); padding: var(--space-6); border: 1px dashed var(--border); border-radius: var(--radius); }
.chart-empty h3 { color: var(--text); }
.chart-empty p { font-size: 12px; max-width: 380px; margin: 0; }
.usage-ledger .numeric { text-align: right; white-space: nowrap; }
.model-pill { margin-top: var(--space-1); font-size: 10px; }
.entitlement-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 var(--space-8); }
.entitlement-grid > div { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--space-4); padding: var(--space-4) 0; border-top: 1px solid var(--border); }
.entitlement-grid dd { text-align: right; }
.entitlement-grid dd span { display: inline-flex; align-items: center; gap: var(--space-1); }
.feature-enabled { color: var(--green); }
.included-features summary { gap: var(--space-2); font-weight: 600; }
@media (max-width: 767px) {
  .usage-chart-card .section-heading, .usage-ledger .section-heading { flex-wrap: wrap; }
  .entitlement-grid { grid-template-columns: minmax(0, 1fr); }
  .usage-ledger td.numeric { white-space: normal; }
  .usage-ledger td.numeric::before { text-align: left; }
}
@media (max-width: 420px) { .usage-metrics { grid-template-columns: minmax(0, 1fr); } }

/* Landing-page leads: even columns, labeled dropdowns, add sits with the table. */
.leads-toolbar{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-6);flex-wrap:wrap;position:relative;z-index:4}
.leads-toolbar .leads-filters{flex:1;margin-bottom:0;min-width:0;align-items:stretch}
.leads-toolbar .button.primary{flex-shrink:0;align-self:stretch}
.leads-filters input[name=q]{flex:1 1 220px;min-width:180px}
.lead-select{position:relative;margin:0;min-width:176px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}
.lead-select[open]{z-index:5}
.lead-select:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--border))}
.lead-select[open],.lead-select:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}
.lead-select > summary{display:flex;flex-direction:column;justify-content:center;gap:1px;min-height:44px;padding:6px 36px 6px 14px;list-style:none;cursor:pointer}
.lead-select > summary::-webkit-details-marker,.lead-select > summary::marker{display:none}
.lead-select-label{font-size:10px;letter-spacing:.6px;font-weight:700;color:var(--muted);text-transform:uppercase;line-height:1.2}
.lead-select-value{font-size:13px;font-weight:600;line-height:1.3;color:var(--text)}
.lead-select > summary .icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none;transition:transform .15s}
.lead-select[open] > summary .icon{transform:translateY(-50%) rotate(180deg)}
.lead-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:30;min-width:max(100%,200px);padding:var(--space-1);border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 16px 40px #17203324}
.lead-menu a{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:40px;padding:0 var(--space-3);border-radius:8px;color:var(--text);font-size:13px;font-weight:600;text-decoration:none}
.lead-menu a:hover{background:var(--surface-muted);text-decoration:none}
.lead-menu a.is-on{background:var(--primary-soft);color:var(--primary)}
.lead-menu a .icon{color:var(--primary);flex-shrink:0}
.leads-table{table-layout:fixed;width:100%}
.leads-table .col-name{width:22%}
.leads-table .col-business{width:20%}
.leads-table .col-added{width:16%}
.leads-table .col-status,.leads-table .col-crm{width:12%}
.leads-table .col-actions{width:18%}
.leads-table th,.leads-table td{padding:14px 16px;vertical-align:middle}
.leads-table th:first-child,.leads-table td:first-child{padding-left:24px}
.leads-table th:last-child,.leads-table td:last-child{padding-right:24px}
.leads-table td>strong,.leads-table .clip,.leads-table td>small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.leads-table .clip{display:block}
.leads-table th:last-child,.leads-table td:last-child{text-align:left}
.leads-table .inline-actions{justify-content:flex-start;align-items:center;flex-wrap:nowrap;gap:var(--space-2)}
.leads-table .inline-actions .button{min-height:36px;padding:var(--space-2) var(--space-3)}
@media(max-width:1023px){
  .leads-toolbar .button.primary{width:100%}
  .lead-select{flex:1 1 160px}
}
@media(max-width:767px){
  .leads-table{table-layout:auto}
  .leads-table td>strong,.leads-table .clip,.leads-table td>small{white-space:normal}
  .leads-table td[data-label="Actions"]{grid-template-columns:minmax(0,1fr)}
  .leads-table .inline-actions{justify-content:flex-start;flex-wrap:wrap}
}
.status-hot{background:var(--amber-soft);color:var(--amber)}.status-warm{background:var(--primary-soft);color:var(--primary)}
.nav-meter{height:10px;border-radius:6px;background:var(--surface-muted);overflow:hidden}
.nav-meter span{display:block;height:100%;background:var(--primary)}
.nav-meter-note{font-size:12px;margin:12px 0 0}
.nav-calls td .badge,.health-sessions td .badge{justify-self:start}
