@import url('tailwind.css');
:root{--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);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}.list-row strong,.list-row small{display:block}.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}
.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}
.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}}
