/* Runtime token owner. DESIGN.md mirrors these values. */
:root{--bg:#f5f7fb;--sidebar:#ffffff;--panel:#ffffff;--panel2:#edf2fa;--border:#d7e0ed;--text:#182b49;--muted:#526581;--red:#2563eb;--blue:var(--red);--green:#167c60;--orange:#965600;--danger:#c12f49;--font-display:Bahnschrift,'Segoe UI',sans-serif;--font-body:'Segoe UI',Arial,sans-serif;--font-data:Consolas,ui-monospace,monospace;--radius:8px;--radius-panel:12px;--scroll-thumb:var(--border);--scroll-track:var(--bg);--scroll-hover:var(--muted);--scroll-active:var(--red);--z-dropdown:200;--z-toast:900;color-scheme:light;scrollbar-color:var(--scroll-thumb) var(--scroll-track);scrollbar-width:thin;scrollbar-gutter:stable}
*{scrollbar-color:var(--scroll-thumb) var(--scroll-track);scrollbar-width:thin}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:var(--scroll-track)}*::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border:2px solid var(--scroll-track);border-radius:5px}*::-webkit-scrollbar-thumb:hover{background:var(--scroll-hover)}*::-webkit-scrollbar-thumb:active{background:var(--scroll-active)}
body{background:var(--bg);font-family:var(--font-body);font-size:14px;line-height:1.5;color:var(--text)}[hidden]{display:none!important}h1,h2,h3,.brand-name{font-family:var(--font-display);font-weight:600}h1{letter-spacing:-.6px}h2{font-size:20px;letter-spacing:-.3px}h3{font-size:16px}a{color:var(--blue)}button,a.button-link{cursor:pointer}
button,.button-link{min-height:40px;border-radius:var(--radius);background:var(--red);color:var(--bg);border:1px solid transparent;font-weight:600;padding:9px 16px;transition:background .12s,border-color .12s,opacity .12s}button:hover:not(:disabled),.button-link:hover{background:color-mix(in srgb,var(--red),white 15%);filter:none}button:active:not(:disabled){background:color-mix(in srgb,var(--red),black 15%);transform:none}button.secondary{background:var(--panel2);border-color:var(--border);color:var(--text)}button.secondary:hover:not(:disabled){background:var(--border)}button.small{font-size:12px;min-height:34px;padding:6px 12px}button.text-link{background:transparent;border:0;color:var(--blue);padding:4px 0;min-height:32px}button.text-link:hover{background:transparent;text-decoration:underline}button.danger{color:var(--danger);background:transparent;border-color:var(--danger)}button.danger:hover{background:var(--danger);color:var(--bg)}button:disabled{opacity:.45;cursor:not-allowed;transform:none;filter:none}button[aria-busy=true]{opacity:.65;cursor:wait}
:is(button,a,input,select,textarea):focus-visible{outline:2px solid var(--blue);outline-offset:3px}input,select,textarea{font:inherit;min-height:40px;padding:9px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text)}input::placeholder{color:var(--muted);opacity:.8}input[type=checkbox]{min-height:0;accent-color:var(--blue)}label{color:var(--muted);font-size:12px}textarea{resize:none;min-height:100px;max-height:280px;overflow-y:auto}input[aria-invalid=true],select[aria-invalid=true]{border-color:var(--danger)}
.sidebar{width:224px;min-width:224px;height:100vh;min-height:0;padding:22px 14px;overflow-y:auto;background:var(--sidebar);border-color:var(--border)}.brand{gap:10px;padding:0 10px 18px}.brand-icon{width:34px;height:34px;border-radius:8px;background:var(--blue);color:var(--bg);font-family:var(--font-display);box-shadow:none}.brand-name{font-size:17px}.brand-sub{font-size:11px;color:var(--muted)}.nav-section{font-size:10px;letter-spacing:1.4px;color:var(--muted);margin:16px 12px 6px}.nav-item{display:flex;align-items:center;gap:10px;min-height:38px;margin:2px 0;padding:8px 12px;color:var(--muted);background:transparent;border-radius:8px;font-size:13px;font-weight:500}.nav-item:hover:not(:disabled){background:var(--panel2);color:var(--text)}.nav-item.active{background:var(--panel2);color:var(--text);box-shadow:inset 2px 0 var(--blue)}.nav-icon{width:17px;height:17px;flex:none;stroke:currentColor;fill:none;stroke-width:1.6}.nav-item.active .nav-icon{color:var(--blue)}
main.main,main{margin-left:224px;width:calc(100% - 224px);padding:28px 30px 50px;min-width:0}.topbar{gap:18px;flex-wrap:wrap;align-items:center;margin:0 0 16px}.topbar h1{font-size:27px}.topbar>div:last-child{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:12px}.topbar .server-status{margin-left:auto;font-size:11px;border-radius:6px;padding:7px 10px;background:var(--panel);border-color:var(--border)}.status-dot{background:var(--green);box-shadow:none}.subtitle,.muted{color:var(--muted);font-size:13px}#syncSummary{min-height:36px;padding:9px 12px;border:1px solid var(--border);border-left:2px solid var(--green);border-radius:6px;margin:16px 0;font:11px/1.6 var(--font-data)}
.workspace-tools{display:flex;gap:10px;align-items:center;margin:18px 0 24px;flex-wrap:wrap}.workspace-tools>.field-control{flex:1;min-width:200px}.search-results{background:var(--panel2);border:1px solid var(--border);padding:8px;border-radius:8px;position:relative;z-index:var(--z-dropdown);margin-top:-16px;margin-bottom:20px;box-shadow:0 14px 30px #0004}.search-results button{display:block;text-align:left;width:100%;background:transparent;color:var(--text);border-radius:4px}.search-results button:hover{background:var(--border)}
.cards,.portal-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;border:1px solid var(--border);border-radius:var(--radius-panel);background:var(--panel);margin:0 0 24px;overflow:hidden}.card,.portal-card{background:transparent;border:0;border-right:1px solid var(--border);border-radius:0;padding:20px;box-shadow:none;min-width:0}.card:last-child,.portal-card:last-child{border-right:0}.card-label,.portal-card>p:first-child{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.7px}.card-value,.portal-card>strong{font:600 29px/1.4 var(--font-display);display:block;margin:9px 0 0;font-variant-numeric:tabular-nums}.portal-card>p{margin:8px 0 0;color:var(--muted);font-size:11px}.portal-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.panel,.stat-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);box-shadow:none}.dashboard-grid{gap:20px}.balance-box{background:var(--bg);border-color:var(--border);border-radius:8px}.balance-box strong{font-family:var(--font-data);font-size:23px}.inventory-row{border-color:var(--border)}.page-actions,.filters-inline{gap:10px;flex-wrap:wrap;align-items:center}.page-actions{margin:18px 0}
.table-panel,.portal-shell .panel{overflow-x:auto;scrollbar-gutter:stable}.table-panel{padding:0}table{font-size:13px;width:100%;border-collapse:collapse}th{color:var(--muted);font:600 10px/1.5 var(--font-body);letter-spacing:.7px;padding:13px 16px;text-transform:uppercase;background:var(--panel2);white-space:nowrap}td{padding:14px 16px;border-color:var(--border);vertical-align:middle;max-width:420px;overflow-wrap:anywhere}tbody tr:hover{background:color-mix(in srgb,var(--panel2),transparent 40%)}.empty-state{height:140px;padding:30px;text-align:center;color:var(--muted)}td.money,td.numeric{font-family:var(--font-data);text-align:right;font-variant-numeric:tabular-nums}.panel.table-panel{min-height:160px}.ui-pager,.portal-pager{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;color:var(--muted);font-size:12px;background:var(--panel);border-top:1px solid var(--border)}.ui-pager{min-width:260px}.ui-pager button{min-height:32px}.ui-pager span{margin-right:auto}.table-scroll-hint{font-size:11px;color:var(--muted);display:none}.balance-line{padding:16px;background:var(--panel);border:1px solid var(--border);border-radius:8px;display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:10px 0}.balance-line span{flex:1;min-width:180px}.alert-card{border-radius:8px}.alert-card.critical{border-left-color:var(--danger)}.pill{font-size:11px;padding:3px 8px;border-radius:5px;color:var(--green);background:color-mix(in srgb,var(--green),transparent 90%)}
.portal-hero{padding:0 0 18px;background:transparent;border:0;border-radius:0;margin:8px 0}.portal-hero h2{font-size:23px;margin:4px 0}.portal-hero p{margin:4px 0;color:var(--muted);font-size:13px}.eyebrow{color:var(--blue);font:11px/1.5 var(--font-data);letter-spacing:1px;text-transform:uppercase}.portal-section{display:none}.portal-section.active{display:block}.portal-toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:18px 0}.portal-toolbar label{display:flex;flex-direction:column;gap:5px}.portal-toolbar h2{margin-right:auto}.portal-shell .panel{padding:0}.portal-shell .sidebar footer{font-size:11px;color:var(--muted);border-top:1px solid var(--border);padding-top:16px;margin:28px 12px}.portal-shell .topbar p{margin:4px 0}.portal-table td,.portal-table th{text-align:left}.portal-table td{white-space:normal}.portal-notice{color:var(--muted);background:var(--panel);border:1px solid var(--border);border-left:2px solid var(--blue);border-radius:6px;padding:14px 16px;font-size:12px;margin:18px 0}.portal-error{color:var(--danger)}#portalMessage{min-height:24px;margin:12px 0}#portalUpdated{font-size:11px}.portal-card:has(form){background:var(--panel);border:1px solid var(--border);border-radius:12px;max-width:560px}.portal-card form label{display:block;margin:18px 0}.portal-card form input{display:block;width:100%;margin-top:6px}
.auth-gate{background:var(--bg);padding:24px}.auth-form{width:min(430px,100%);padding:32px;border-radius:12px;border-top:3px solid var(--blue);box-shadow:0 16px 60px #0003}.auth-form h1{font-size:28px;margin:10px 0}.auth-form input{width:100%;margin:6px 0 0}.auth-form label{display:block;margin-top:16px}.auth-form button[type=submit],#signInButton{width:100%;margin-top:18px}.auth-form p{font-size:13px}.auth-form #authError{color:var(--danger);min-height:22px}.auth-brand{display:flex;align-items:center;gap:9px;color:var(--muted);font:12px var(--font-data);margin-bottom:24px}#portalLogin{min-height:100vh;display:flex;align-items:center;justify-content:center}
 dialog,.portal-dialog{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:12px;width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto;padding:28px;box-shadow:0 24px 80px #0007}dialog::backdrop{background:#080f1bcc;backdrop-filter:none}dialog h2{font-size:22px;margin:0 0 16px}dialog label{display:block;margin:16px 0 6px}dialog input:not([type=checkbox]),dialog textarea,dialog select{width:100%}dialog footer{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}dialog .dialog-actions{position:sticky;bottom:-28px;background:var(--panel);padding:16px 0 6px}.field-control{position:relative;display:inline-flex;align-items:center;min-width:0}.field-control>input{width:100%;padding-right:68px}.field-control>button{position:absolute;right:6px;min-height:28px;padding:3px 8px;font-size:11px;background:var(--panel2);color:var(--muted);border:0}.field-control>button:hover{background:var(--border);color:var(--text)}label>.field-control,.auth-form .field-control,dialog .field-control{display:flex;width:100%}.field-error{color:var(--danger);font-size:12px;display:block;min-height:18px;margin-top:4px}.ui-dialog-error{min-height:22px;color:var(--danger);font-size:13px}.ui-dialog-description{color:var(--muted);font-size:13px}.ui-status{position:fixed;bottom:22px;right:22px;z-index:var(--z-toast);max-width:calc(100vw - 44px);background:var(--panel2);color:var(--text);border:1px solid var(--border);border-left:3px solid var(--green);border-radius:8px;padding:14px 16px;display:flex;gap:20px;align-items:center;box-shadow:0 10px 30px #0005}.ui-status.error{border-left-color:var(--danger)}.ui-status button{min-height:28px;background:transparent;color:var(--muted);padding:2px 6px}.ui-busy-region{min-height:22px;color:var(--muted);font-size:12px}.ui-section-label{display:flex;gap:12px;align-items:center;margin:6px 0 12px;font-size:11px;color:var(--muted);letter-spacing:1px;text-transform:uppercase}.ui-section-label::after{content:'';height:1px;background:var(--border);flex:1}.allocation-bar{display:flex;height:8px;background:var(--border);border-radius:3px;overflow:hidden;margin:20px 0}.allocation-bar span{background:var(--blue)}.allocation-bar span:nth-child(2){background:var(--green)}.quick-destinations{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}.quick-destinations button{text-align:left;padding:18px;background:var(--panel);border-color:var(--border);color:var(--text)}.quick-destinations button:hover{background:var(--panel2)}.quick-destinations small{display:block;color:var(--muted);font-weight:400;margin-top:6px}.back-link{margin:12px 0;background:transparent;color:var(--blue);padding-left:0}.ui-loading{opacity:.65}
@media(max-width:1100px){main.main,main{padding:24px}.cards{grid-template-columns:repeat(3,minmax(0,1fr))}.card:nth-child(3){border-right:0}.card:nth-child(n+4){border-top:1px solid var(--border)}.portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-card:nth-child(2){border-right:0}.portal-grid .portal-card:nth-child(n+3){border-top:1px solid var(--border)}}
@media(max-width:760px){.app{display:block}.sidebar{position:static;width:100%;min-width:0;height:auto;padding:16px}.brand{padding-bottom:12px}.sidebar nav{display:flex;gap:4px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}.nav-item{width:auto;flex:none;white-space:nowrap}.nav-section,.sidebar footer{display:none}main.main,main{margin-left:0;width:100%;padding:20px 16px}.topbar h1{font-size:24px}.topbar .server-status{display:none}.workspace-tools{gap:8px}.workspace-tools>.field-control{flex-basis:100%}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.card{padding:16px}.card:nth-child(3){border-right:1px solid var(--border)}.card:nth-child(2n){border-right:0}.card:nth-child(n+3){border-top:1px solid var(--border)}.portal-card{padding:16px}.portal-card>strong{font-size:23px}.quick-destinations{grid-template-columns:1fr}.table-scroll-hint{display:block}.portal-toolbar>*{max-width:100%}.portal-toolbar .field-control{width:100%}.portal-toolbar label{flex:1;min-width:140px}dialog{padding:22px}.auth-form{padding:25px}.ui-status{bottom:12px;right:12px;max-width:calc(100vw - 24px)}.form-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(forced-colors:active){*{scrollbar-color:auto}button,.nav-item.active,dialog{border:1px solid ButtonText}.nav-item.active{outline:1px solid Highlight}}

.agent-entry-mode{min-width:0}.agent-entry-mode select,.agent-entry-mode textarea{width:100%}.agent-batch-fields{margin-top:16px}.agent-batch-fields p{font-size:12px;line-height:1.6;margin:8px 0}.agent-batch-fields [role="status"]{color:var(--brand);font-weight:600}

.agent-row-actions{display:flex;gap:6px;flex-wrap:wrap;min-width:160px}.agent-entry-mode>label{display:block;margin-top:12px}

/* Dark variant retains token roles, including accessible semantic status colors. */
:root[data-theme=dark]{--bg:#181d21;--sidebar:#20272c;--panel:#242c32;--panel2:#303b42;--border:#46565f;--text:#eef6f2;--muted:#b2c3bc;--red:#5dd6a7;--green:#5dd6a7;--orange:#edba76;--danger:#ffa5ad;color-scheme:dark}
.theme-toggle{white-space:nowrap}.nav-label,.topbar-title{color:var(--text)}
.join-shell{margin:0 auto;width:min(1100px,100%);padding:64px 30px;display:grid;grid-template-columns:1fr 1.15fr;gap:64px;align-items:start}.join-intro .brand{padding:0;margin-bottom:55px}.join-intro h1{font-size:44px;line-height:1.15;margin:18px 0}.join-intro>p{max-width:330px;color:var(--muted)}.join-intro ol{padding-left:20px;color:var(--muted);line-height:2.5;margin-top:30px}.join-panel{padding:30px}.join-panel h2{margin:10px 0}.join-panel label,.onboarding-layout label{display:block;margin-top:14px}.join-panel input,.join-panel select,.onboarding-layout input,.onboarding-layout select{width:100%;margin-top:6px}.join-panel button[type=submit]{width:100%;margin-top:20px}.join-panel .form-grid{gap:12px}.onboarding-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:22px;align-items:start}.onboarding-layout progress{width:100%;height:8px;accent-color:var(--blue);margin:5px 0 22px}.onboarding-step{display:flex;width:100%;align-items:center;gap:12px;text-align:left;margin:8px 0;padding:14px!important}.onboarding-step strong{display:block;font-size:13px}.onboarding-step small{display:block;color:var(--muted);font-weight:400;margin-top:3px}.onboarding-step>span:last-child{margin-left:auto}.onboarding-check{font-size:22px;color:var(--green);width:24px;flex:none}.onboarding-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border:1px solid var(--border);border-left:3px solid var(--blue);border-radius:var(--radius);background:var(--panel);margin:18px 0}#companyProfileForm button{margin-top:16px}
@media(max-width:760px){.join-shell{grid-template-columns:1fr;gap:25px;padding:28px 16px}.join-intro .brand{margin-bottom:25px}.join-intro h1{font-size:32px}.join-intro ol{display:none}.join-panel{padding:22px}.onboarding-layout{grid-template-columns:1fr}.onboarding-banner{align-items:start;flex-wrap:wrap}}
/* Shared operations dashboard: company and admin consume the same panels. */
.operations-dashboard{margin:24px 0 28px}.ops-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.ops-heading h2{font-size:24px;margin:5px 0}.ops-badge{color:var(--green);font-size:11px;border:1px solid var(--border);border-radius:6px;padding:7px 10px;white-space:nowrap}.ops-badge::before{content:'●';margin-right:7px}.ops-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.ops-kpis>div{padding:20px 22px;border:1px solid var(--border);border-radius:var(--radius-panel);background:var(--panel);border-top:2px solid var(--blue)}.ops-kpis>div:nth-child(2){border-top-color:var(--green)}.ops-kpis>div:nth-child(4){border-top-color:var(--orange)}.ops-kpis span{font-size:12px;color:var(--muted)}.ops-kpis strong{display:block;font:600 32px/1.4 var(--font-display);margin:9px 0;font-variant-numeric:tabular-nums}.ops-kpis em{font:14px var(--font-body);color:var(--muted)}.ops-kpis small{font-size:11px;color:var(--muted)}.ops-charts{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);gap:18px}.ops-panel{border:1px solid var(--border);border-radius:var(--radius-panel);background:var(--panel);padding:22px;min-width:0}.ops-panel header{display:flex;justify-content:space-between;align-items:start;gap:12px}.ops-panel h3{font-size:17px;margin:0}.ops-panel header p{color:var(--muted);font-size:12px;margin:5px 0 20px}.ops-panel header>span{font:12px var(--font-data);color:var(--blue)}.activity-chart{height:190px;display:flex;gap:5px;align-items:end;border-bottom:1px solid var(--border);padding-top:15px;background:repeating-linear-gradient(to top,transparent 0,transparent 47px,var(--border) 48px,transparent 49px)}.activity-column{height:100%;flex:1;display:flex;justify-content:end;flex-direction:column;position:relative;min-width:0;padding-bottom:20px}.activity-bar{display:block;background:var(--blue);border-radius:3px 3px 0 0;min-height:0;max-height:100%}.activity-column small{position:absolute;bottom:0;width:100%;text-align:center;color:var(--muted);font-size:10px}.outcomes{max-height:230px;overflow:auto}.outcomes>div{display:grid;grid-template-columns:1fr auto;gap:6px;margin-bottom:15px;text-transform:capitalize;font-size:12px}.outcomes strong{font-family:var(--font-data)}.outcomes progress{width:100%;height:5px;grid-column:1/-1;accent-color:var(--green);border:0;background:var(--panel2)}.outcomes progress::-webkit-progress-bar{background:var(--panel2);border-radius:3px}.outcomes progress::-webkit-progress-value{background:var(--green);border-radius:3px}.ops-empty{color:var(--muted);font-size:12px}.ops-team{margin-top:18px}.ops-team-list>div{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--border)}.ops-avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:8px;background:var(--panel2);color:var(--blue);flex:none}.ops-team-list strong{font-size:13px;font-weight:600}.ops-team-list small{display:block;font-size:11px;color:var(--muted)}.ops-agent-calls{margin-left:auto;white-space:nowrap;font-family:var(--font-data);text-align:right}.ops-agent-charge{min-width:125px;text-align:right;font:12px var(--font-data);color:var(--green)}
@media(max-width:1100px){.ops-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.ops-charts{grid-template-columns:1fr}.activity-chart{height:170px}}@media(max-width:760px){.ops-panel{padding:16px}.ops-heading{align-items:start}.ops-heading h2{font-size:21px}.ops-badge{white-space:normal;max-width:105px}.ops-kpis{gap:10px}.ops-kpis>div{padding:16px}.ops-kpis strong{font-size:26px}.ops-agent-charge{min-width:0;max-width:110px;overflow-wrap:anywhere}.ops-team-list>div{gap:8px}.activity-chart{gap:3px}}
#view-overview .portal-hero{display:none}#view-overview #portalMetrics .portal-card{padding:14px 20px}#view-overview #portalMetrics .portal-card>strong{font-size:23px}#view-overview #portalMetrics{margin-top:22px}.operations-dashboard .ops-heading{margin-bottom:12px}.operations-dashboard .ops-kpis>div{padding:15px 20px}.operations-dashboard .ops-kpis strong{margin:6px 0;font-size:29px}

.billing-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px}.wallet-address{display:block;overflow-wrap:anywhere;font:14px/1.8 var(--font-data);padding:16px 0}.billing-layout input,.deposit-invoice input{display:block;width:100%;margin:8px 0 14px}.deposit-invoice{margin-top:20px}.deposit-invoice h2{font-family:var(--font-data);color:var(--blue)}@media(max-width:760px){.billing-layout{grid-template-columns:1fr}}
.dial-toggle{display:flex!important;align-items:center;gap:10px;margin:18px 0}.dial-toggle input{width:18px!important;min-height:18px;accent-color:var(--blue)}

.join-panel .field-control{width:100%}.join-panel .field-control input{width:100%}
