/* Shared Biddy operations-console design. Page scripts and API contracts are unchanged. */
:root {
  color-scheme: dark;
  --ink:#111916; --surface:#17211d; --surface-raised:#1c2822;
  --line:#354139; --line-soft:#2a352e; --paper:#f0f1e7;
  --muted:#a4b0a8; --dim:#819087; --signal:#d5eda5; --signal-ink:#1c291a;
  --warning:#e9b18c; --danger:#ef9a8e; --success:#d5eda5;
  --primary:var(--signal); --primary-dark:var(--signal); --primary-light:#e2f5ba;
  --accent:#7fbaac; --secondary:var(--warning); --secondary-dark:var(--warning);
  --light:var(--surface); --dark:var(--ink); --darker:var(--ink);
  --text:var(--paper); --text-color:var(--paper); --text-muted:var(--muted);
  --gray:var(--muted); --gray-light:var(--line); --gray-dark:var(--muted);
  --border:var(--line); --border-color:var(--line); --body-bg:var(--ink); --card:var(--surface);
  --grad-primary:var(--signal); --grad-primary-soft:#293624;
  --shadow-sm:none; --shadow:none; --shadow-lg:none; --shadow-xl:none; --radius:0;
  --mono:'IBM Plex Mono','SFMono-Regular',Consolas,monospace;
  --body:'IBM Plex Sans',-apple-system,BlinkMacSystemFont,sans-serif;
  --display:'Barlow Condensed','Arial Narrow',sans-serif;
}
* { box-sizing:border-box; }
body { margin:0; background:var(--ink); color:var(--paper); font:14px/1.55 var(--body); -webkit-font-smoothing:antialiased; }
button,input,textarea,select { font:inherit; }
a { color:inherit; text-decoration:none; }
button { cursor:pointer; }
button:disabled { cursor:not-allowed; opacity:.5; }
button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible { outline:2px solid var(--signal); outline-offset:4px; }
input,textarea,select { accent-color:var(--signal); }
.container { width:100%; max-width:1500px; margin-inline:auto; padding-inline:42px; }
.navbar { height:76px; position:sticky; top:0; z-index:1000; background:#111916f5; border-bottom:1px solid var(--line); backdrop-filter:blur(12px); }
.navbar .container { height:100%; display:flex; align-items:center; justify-content:space-between; gap:35px; }
.navbar-brand { display:inline-flex; align-items:center; flex-shrink:0; }
/* Frame the approved raster artwork without changing or redrawing its pixels. */
.biddy-logo { position:relative; display:block; width:180px; max-width:100%; aspect-ratio:1404 / 365; overflow:hidden; flex-shrink:0; mix-blend-mode:lighten; }
.biddy-logo-image { position:absolute; display:block; width:119.088319%; max-width:none; height:auto; left:-9.971510%; top:-79.452055%; }
.navbar-nav { display:flex; align-items:center; gap:29px; list-style:none; margin:0; padding:0; }
.nav-link { display:inline-flex; position:relative; padding:27px 0; font:400 12px/20px var(--mono); color:var(--muted); }
.nav-link:hover,.nav-link.active { color:var(--signal); }
.nav-link.active::after { content:''; position:absolute; height:3px; left:0; right:0; bottom:0; background:var(--signal); }
.profile-btn { display:flex; align-items:center; gap:9px; padding:8px 12px; border:1px solid var(--line); color:var(--paper); font:400 11px var(--mono); }
.profile-btn i { font-size:10px; color:var(--dim); }
.profile-btn:hover,.profile-btn.active { border-color:var(--signal); color:var(--signal); }
[hidden] { display:none!important; }
/* Shared page shell, panels and form controls. */
.console-page:not(.dashboard-page) main { padding:35px 0 40px; min-height:calc(100vh - 76px); }
.page-header { position:relative; margin-bottom:31px; }
.page-header .container { padding:0; }
.page-header::before { content:'BIDDY / OPERATOR WORKSPACE'; display:block; color:var(--muted); font:400 10px/1.5 var(--mono); letter-spacing:1.2px; margin-bottom:13px; border-left:7px solid var(--signal); padding-left:10px; }
.clients-page .page-header::before { content:'BIDDY / CONVERSATIONS'; }
.statistics-page .page-header::before { content:'BIDDY / PERFORMANCE & AUDIT'; }
.categories-page .page-header::before,.add-category-page .page-header::before { content:'BIDDY / TARGETING CONFIGURATION'; }
.freelancers-page .page-header::before { content:'BIDDY / PROFILE INVENTORY'; }
.profile-page .page-header::before { content:'BIDDY / OPERATOR ACCOUNT'; }
.page-title { margin:0 0 12px; font:600 clamp(50px,5.1vw,76px)/.98 var(--display); letter-spacing:-.6px; text-transform:uppercase; }
.page-title::after { content:'.'; color:var(--signal); }
.page-title i { display:none; }
.page-subtitle { margin:0; max-width:80ch; font-size:14px; color:var(--muted); }
.card,.details-container { min-width:0; background:var(--surface); border:1px solid var(--line); padding:26px 28px; margin-bottom:22px; }
.card-title,.details-title { margin:0 0 24px; font-size:20px; line-height:1.35; font-weight:500; letter-spacing:-.3px; display:flex; align-items:center; gap:12px; }
.card-title i,.details-title i { color:var(--signal); font-size:15px; }
.card-title .btn i { color:inherit; }
.small,.muted { color:var(--muted); font-size:12px; }
.mono { font-family:var(--mono); font-variant-numeric:tabular-nums; }
.btn,.btn-sm,.audit-button { display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:11px 15px; border:1px solid var(--line); border-radius:0; background:transparent; color:var(--paper); font:500 12px/1.3 var(--body); text-decoration:none; cursor:pointer; }
.btn:hover,.btn-sm:hover,.audit-button:hover:not(:disabled) { border-color:var(--signal); color:var(--signal); }
.btn-primary,.btn-sm.primary,.audit-button { background:var(--signal); color:var(--signal-ink); border-color:var(--signal); }
.btn-primary:hover,.btn-sm.primary:hover,.audit-button:hover:not(:disabled) { background:#e2f5ba; color:var(--signal-ink); }
.btn-danger,.btn-sm.danger { border-color:#715044; color:#efbaa1; background:#32261f; }
.btn-danger:hover,.btn-sm.danger:hover { border-color:var(--warning); color:var(--warning); }
.btn-sm.warn { color:var(--warning); border-color:#725c43; background:#2b281d; }
.btn-sm { padding:8px 11px; font-size:12px; }
.form-control,.filter-field input,.filter-field select,.filters-row select,.filters-row input { width:100%; min-width:0; padding:11px 12px; border:1px solid #5b695e; border-radius:0; background:#101813; color:var(--paper); font:400 14px/1.45 var(--body); }
.form-control:focus,.filter-field input:focus,.filter-field select:focus,.filters-row select:focus,.filters-row input:focus { outline:2px solid var(--signal); outline-offset:1px; border-color:var(--signal); }
input::placeholder,textarea::placeholder { color:var(--dim); opacity:1; }
input:disabled,select:disabled { opacity:.5; cursor:not-allowed; }
option { background:var(--surface); color:var(--paper); }
textarea.form-control { min-height:120px; resize:vertical; }
.form-group { min-width:0; margin-bottom:20px; }
.form-group label,.filter-group label { display:block; margin-bottom:9px; color:var(--muted); font:400 11px/1.5 var(--mono); }
.form-group label i,.filter-group label i { color:var(--dim); margin-right:7px; font-size:11px; }
.button-container { display:flex; flex-wrap:wrap; gap:12px; padding-top:20px; border-top:1px solid var(--line-soft); }
.helper-text,.price-note,.price-label { display:flex; gap:7px; align-items:baseline; color:var(--dim); font-size:12px; margin-top:8px; line-height:1.6; }
.helper-text i,.price-note i,.price-label i { flex-shrink:0; color:var(--accent); font-size:11px; }
.error,.message-error { border:1px solid #715044; color:var(--warning); background:#2b221b; }
.success-banner,.message-success { border:1px solid #657a4e; color:var(--signal); background:#202c1e; }
.error,.success-banner,.message { padding:13px 16px; margin-bottom:20px; font-size:13px; }
.error,.success-banner { display:flex; align-items:center; gap:10px; }
.empty-state,.empty,.empty-pane { color:var(--muted); text-align:center; padding:40px 20px; font-size:14px; }
.empty-state i,.empty i,.empty-pane>i { display:block; font-size:30px; color:var(--dim); margin-bottom:16px; }
.empty-state h3 { margin:0 0 10px; color:var(--paper); font-size:20px; font-weight:500; }
.empty-state p { margin:0 auto 22px; max-width:65ch; }
/* Clients: stable split inbox, scrollable threads and conversations. */
.subtabs { display:flex; gap:0; border:1px solid var(--line); background:var(--surface); margin-bottom:20px; overflow-x:auto; }
.subtab { padding:13px 20px; border-right:1px solid var(--line); color:var(--muted); font:400 12px var(--mono); white-space:nowrap; cursor:pointer; }
.subtab.active { color:var(--signal-ink); background:var(--signal); }
.subtab:hover:not(.active) { background:var(--surface-raised); color:var(--paper); }
.clients-page .layout { display:grid; grid-template-columns:360px minmax(0,1fr); gap:20px; height:calc(100vh - 335px); min-height:550px; }
.clients-page .layout>.card { display:flex; flex-direction:column; padding:0; margin:0; min-height:0; overflow:hidden; }
.clients-page .filters { padding:16px; border-bottom:1px solid var(--line); }
.filters-row { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:8px; }
.filters-row:last-child { margin-bottom:0; }
.filters-row select,.filters-row input { flex:1; min-width:130px; font-size:12px; padding:9px 10px; }
.filters-row input[readonly] { cursor:pointer; }
.avg-bar { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:14px 16px; background:var(--surface-raised); border-bottom:1px solid var(--line); }
.avg-bar .label { color:var(--dim); font:400 10px var(--mono); text-transform:uppercase; letter-spacing:.5px; }
.avg-bar .value { display:inline-block; margin-top:5px; font:400 23px/1.3 var(--mono); color:var(--paper); }
.avg-bar .meta { font:400 10px var(--mono); color:var(--dim); margin-left:7px; }
.good { color:var(--success); } .warn { color:var(--warning); } .bad { color:var(--danger); }
.avg-bar .value.good { color:var(--success); }.avg-bar .value.warn { color:var(--warning); }.avg-bar .value.bad { color:var(--danger); }
.bulk-bar { display:none; align-items:center; gap:8px; flex-wrap:wrap; padding:12px 16px; background:#293624; border-bottom:1px solid var(--line); }
.bulk-bar.active { display:flex; }
.bulk-count { color:var(--signal); font:400 11px var(--mono); }
.thread-list { flex:1; min-height:0; overflow-y:auto; }
.thread-item { display:flex; gap:11px; padding:16px; border-bottom:1px solid var(--line-soft); cursor:pointer; border-left:3px solid transparent; }
.thread-item:hover { background:var(--surface-raised); }
.thread-item.selected { border-left-color:var(--signal); background:#293624; }
.thread-checkbox { width:17px; height:17px; margin-top:3px; flex-shrink:0; cursor:pointer; }
.thread-meta { flex:1; min-width:0; }
.thread-name { color:var(--paper); font-size:14px; font-weight:500; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.thread-username { color:var(--muted); font:400 11px var(--mono); margin-top:3px; overflow-wrap:anywhere; }
.thread-time { color:var(--dim); font:400 10px var(--mono); margin-top:7px; }
.thread-labels { display:flex; flex-wrap:wrap; gap:5px; margin-top:8px; }
.label-pill,.badge,.model-pill,.default-pill,.err-pill,.efficiency-pill,.issue-cat { display:inline-block; border:1px solid var(--line); padding:3px 7px; color:var(--muted); font:400 10px/1.5 var(--mono); border-radius:0; }
.label-pill.hot,.badge.failure,.err-pill,.issue-cat.rej { color:var(--danger); background:#362721; border-color:#6b4942; }
.label-pill.prog,.default-pill.some,.efficiency-pill.warn,.issue-cat.gpt { color:var(--warning); background:#302a20; border-color:#6b583e; }
.label-pill.manual,.model-pill { color:var(--signal); border-color:#58664c; background:#263121; }
.badge.live,.default-pill.zero,.efficiency-pill.good { color:var(--success); background:#263121; border-color:#58664c; }
.efficiency-pill.bad { color:var(--danger); border-color:#6b4942; }
.chat-header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 22px; border-bottom:1px solid var(--line); background:var(--surface-raised); }
.chat-header h3 { margin:0 0 4px; font-size:17px; font-weight:500; }
.chat-header .muted { font-size:11px; }
.chat-body { flex:1; min-height:0; overflow-y:auto; padding:24px; background:#111a15; }
.message-bubble { max-width:80%; margin-bottom:18px; padding:13px 16px; font-size:14px; white-space:pre-wrap; overflow-wrap:anywhere; border:1px solid var(--line); }
.message-bubble.them { background:var(--surface-raised); color:var(--paper); }
.message-bubble.me { background:#2d3b24; color:var(--paper); border-color:#596d41; margin-left:auto; }
.message-time { font:400 10px var(--mono); color:var(--dim); margin-top:9px; }
.message-bubble.me .message-time { color:#aaba9b; }
.empty-pane { display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:250px; height:100%; }
.chat-avg-pill,.ap-thread-toggle { display:inline-flex; align-items:center; gap:7px; padding:7px 9px; border:1px solid var(--line); color:var(--signal); font:400 11px var(--mono); }
.chat-avg-pill.good { color:var(--success); }.chat-avg-pill.warn { color:var(--warning); }.chat-avg-pill.bad { color:var(--danger); }
.ap-thread-toggle { cursor:pointer; }
.ap-thread-toggle input { margin:0; cursor:pointer; }
.ap-panel-head { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.ap-panel-head h3 { display:flex; align-items:center; gap:10px; font:500 20px var(--body); }
.ap-panel-head h3>i { font-size:16px; color:var(--signal); }
.ap-badge { padding:3px 7px; background:var(--signal); color:var(--signal-ink); font:400 11px var(--mono); }
/* Date picker: keep the existing Flatpickr behavior, restyle only its surfaces. */
.flatpickr-calendar { background:var(--surface-raised); color:var(--paper); border:1px solid #69775c; border-radius:0; box-shadow:0 14px 45px #0008; font-family:var(--body); }
.flatpickr-months .flatpickr-month,.flatpickr-current-month .flatpickr-monthDropdown-months,.flatpickr-weekday,.flatpickr-time input { color:var(--paper); fill:var(--paper); background:var(--surface-raised); }
.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month { color:var(--paper); fill:var(--paper); }
.flatpickr-day { color:var(--paper); border-radius:0; }
.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.flatpickr-disabled { color:var(--dim); }
.flatpickr-day:hover,.flatpickr-day.inRange { color:var(--paper); background:#35432d; border-color:#35432d; box-shadow:none; }
.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange { background:var(--signal); border-color:var(--signal); color:var(--signal-ink); }
/* Statistics: preserve table geometry, overflow, sticky headers and pagination. */
.row-flex,.history-heading,.data-table-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; flex-wrap:wrap; }
.history-heading,.data-table-heading { margin-bottom:20px; }
.history-heading .card-title,.data-table-heading .card-title { margin-bottom:7px; }
.history-heading p,.data-table-heading p { margin:0; max-width:90ch; }
.history-count,.table-count { flex:0 0 auto; color:var(--signal); font:400 11px var(--mono); padding-top:4px; }
.stat-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); border:1px solid var(--line); }
.stat-box { min-width:0; padding:23px 18px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.stat-box:nth-child(5n) { border-right:0; }.stat-box:nth-last-child(-n+5) { border-bottom:0; }
.stat-value { color:var(--paper); font:400 clamp(23px,2.1vw,32px)/1.2 var(--mono); letter-spacing:-1px; overflow-wrap:anywhere; }
.stat-label { margin-top:10px; color:var(--dim); font:400 10px/1.5 var(--mono); text-transform:uppercase; letter-spacing:.3px; }
.audit-filters { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:13px; margin-bottom:20px; padding:17px; background:#131d17; border:1px solid var(--line); }
.filter-field { display:flex; min-width:0; flex-direction:column; gap:7px; }
.filter-field>span { color:var(--muted); font:400 10px var(--mono); text-transform:uppercase; letter-spacing:.3px; }
.filter-field input,.filter-field select { height:41px; padding:9px 10px; font-size:12px; }
.filter-action { display:flex; align-items:flex-end; }.filter-action .audit-button { width:100%; min-height:41px; }
.audit-pagination { display:flex; align-items:center; justify-content:flex-end; gap:12px; margin-top:18px; flex-wrap:wrap; }
.history-table-wrap,.data-table-wrap { width:100%; overflow:auto; border:1px solid var(--line); scrollbar-width:thin; scrollbar-color:#617155 #17211d; }
.history-table-wrap { max-height:min(560px,62vh); }.api-usage-wrap { max-height:min(480px,56vh); }.model-table-wrap { max-height:min(420px,50vh); }.issues-table-wrap { max-height:min(500px,58vh); }
.breakdown-table { width:100%; border-collapse:collapse; margin:0; }
.breakdown-table th,.breakdown-table td { text-align:left; padding:13px 14px; border-bottom:1px solid var(--line-soft); vertical-align:top; }
.breakdown-table th { color:var(--muted); background:#202d24; font:400 10px/1.5 var(--mono); text-transform:uppercase; letter-spacing:.4px; }
.breakdown-table td { color:var(--paper); font-size:13px; line-height:1.55; overflow-wrap:anywhere; }
.breakdown-table tbody tr:nth-child(even) { background:#19251e; }.breakdown-table tbody tr:hover { background:#233025; }
.breakdown-table a { color:var(--signal); }.breakdown-table .small { font-size:11px; line-height:1.6; }
.breakdown-table .empty { text-align:center; padding:30px; }
.history-table,.data-table { table-layout:fixed; }.history-table { min-width:1120px; }.api-usage-table { min-width:1190px; }.model-table { min-width:820px; }.issues-table { min-width:1100px; }
.history-table-wrap:not(.has-data),.data-table-wrap:not(.has-data) { max-height:none; }
.history-table-wrap:not(.has-data) .history-table,.data-table-wrap:not(.has-data) .data-table { width:100%; min-width:100%; table-layout:auto; }
.statistics-page #rejectedTable td:nth-child(5) { color:var(--warning)!important; }
.history-table thead,.data-table thead { position:sticky; top:0; z-index:3; }.history-table th,.data-table th { white-space:nowrap; box-shadow:0 1px 0 var(--line); }
.history-table details { margin-top:8px; }.history-table summary { color:var(--signal); cursor:pointer; }
.history-table .model-pill,.data-table .model-pill { max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.history-col-time { width:145px; }.history-col-project { width:205px; }.history-col-status { width:95px; }.history-col-failure { width:225px; }.history-col-credits { width:105px; }.history-col-model { width:215px; }.history-col-cost { width:130px; }
.usage-col-provider { width:125px; }.usage-col-operation { width:165px; }.usage-col-model { width:220px; }.usage-col-calls { width:80px; }.usage-col-failures { width:90px; }.usage-col-tokens { width:110px; }.usage-col-cost { width:125px; }.usage-col-quality { width:170px; }.usage-col-latency { width:105px; }
.model-col-name { width:300px; }.model-col-bids,.model-col-percent { width:100px; }.model-col-input,.model-col-output { width:125px; }.model-col-cost { width:130px; }
.issues-col-issue { width:225px; }.issues-col-type { width:120px; }.issues-col-times { width:175px; }.issues-col-cost { width:135px; }.issues-col-seen { width:170px; }.issues-col-detail { width:275px; }
.table-loading { min-height:112px; display:flex; align-items:center; justify-content:center; gap:10px; color:var(--muted); font-size:13px; }
.issue-count { font:400 13px var(--mono); margin-right:8px; }.issue-bar { display:inline-block; vertical-align:middle; width:84px; height:4px; background:var(--line); overflow:hidden; }.issue-bar>span { display:block; height:100%; background:var(--signal); }
.cycle-row { cursor:pointer; }.cycle-row.expanded,.cycle-detail { background:var(--surface-raised); }.cycle-detail { padding:18px; }
.err-list .err-item { padding:12px; margin:8px 0; border-left:2px solid var(--danger); background:#2b221b; }.err-type { color:var(--danger); font-family:var(--mono); }.err-pid { color:var(--muted); }.err-msg { overflow-wrap:anywhere; }
/* Categories: the server-rendered and dynamically inserted forms share these classes. */
.categories-page .filters { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; margin-bottom:22px; }
.categories-page main>.container:has(.details-container:not([style*="display: none"]))>.empty-state { display:none; }
.categories-page .details-title { border-bottom:1px solid var(--line); padding-bottom:20px; }
#categoryForm,.details-container>form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 24px; }
#categoryForm>.form-group:has(textarea),.details-container>form>.form-group:has(textarea),#categoryForm>.form-group:has(select[multiple]),.details-container>form>.form-group:has(select[multiple]),#categoryForm>.button-container,.details-container>form>.button-container { grid-column:1/-1; }
.price-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; grid-column:1/-1; }
.price-input-wrapper { position:relative; }.price-input-wrapper .currency-symbol { position:absolute; top:50%; left:13px; transform:translateY(-50%); color:var(--dim); pointer-events:none; }.price-input-wrapper input { padding-left:32px; }
.choices { margin:0; }.console-page .choices__inner { min-height:47px; padding:8px 10px; border:1px solid #5b695e; border-radius:0; background:#101813; color:var(--paper); font:400 14px var(--body); }
.console-page .choices.is-focused .choices__inner,.console-page .choices.is-open .choices__inner { border-color:var(--signal); box-shadow:none; }
.console-page .choices__input { background:transparent; color:var(--paper); font:400 13px var(--body); margin:0; }
.console-page .choices__list--multiple .choices__item { background:#2d3b24; color:var(--signal); border:1px solid #697d51; border-radius:0; font:400 12px var(--body); padding:5px 9px; margin-block:3px; }
.console-page .choices__list--dropdown,.console-page .choices__list[aria-expanded] { background:var(--surface-raised); color:var(--paper); border:1px solid #69775c; border-radius:0; z-index:10; }
.console-page .choices__list--dropdown .choices__item--selectable.is-highlighted { background:#35432d; color:var(--paper); }
.console-page .choices__button { border-left-color:#697d51!important; }
/* Freelancer management: inventory rows and the same square switch geometry. */
.freelancers-page .card-title { justify-content:space-between; flex-wrap:wrap; }
.freelancer-list { display:flex; flex-direction:column; }
.freelancer-item { display:flex; align-items:center; justify-content:space-between; gap:22px; border-top:1px solid var(--line); padding:23px 0; }
.freelancer-item:last-child { padding-bottom:0; }.freelancer-info { display:flex; align-items:center; gap:15px; min-width:0; }
.freelancer-avatar { width:42px; height:46px; border:1px solid #687954; display:grid; place-items:center; font:400 17px var(--mono); color:var(--signal); background:#253120; flex-shrink:0; }
.freelancer-details h4 { margin:0 0 5px; color:var(--paper); font-size:16px; font-weight:500; overflow-wrap:anywhere; }.freelancer-details p { margin:0; color:var(--dim); font:400 11px var(--mono); }
.freelancer-actions,.bidding-toggle-wrap { display:flex; align-items:center; gap:22px; }.bidding-toggle-wrap { gap:10px; }
.freelancers-page .switch { position:relative; display:inline-flex; width:64px; height:34px; flex-shrink:0; }
.freelancers-page .switch input { position:absolute; inset:0; width:100%; height:100%; opacity:0; margin:0; z-index:1; cursor:pointer; }
.switch-slider { position:absolute; inset:0; border:1px solid #68736b; background:#101813; }
.switch-slider::before { content:''; position:absolute; width:24px; height:24px; top:4px; left:4px; background:#758276; transition:transform .18s,background .18s; }
.switch input:checked+.switch-slider { border-color:#a7bd7e; }.switch input:checked+.switch-slider::before { transform:translateX(30px); background:var(--signal); }
.switch input:focus-visible+.switch-slider { outline:2px solid var(--signal); outline-offset:4px; }.switch input:disabled+.switch-slider { opacity:.4; }
.bidding-label { min-width:82px; color:var(--dim); font:400 11px var(--mono); }.bidding-label.on { color:var(--signal); }
/* Auto-Pilot approval surfaces across every themed page: presentation only. */
body.console-page #ap-alert-tray { border:1px solid #6d7f53; border-radius:0; color:var(--paper); background:var(--surface); font-family:var(--body); box-shadow:0 15px 50px #0008; }
body.console-page #ap-alert-tray .ap-tray-toggle { border-radius:0; color:var(--ink); background:var(--signal); font:500 12px var(--body); }
body.console-page #ap-alert-tray:has(.ap-tray-toggle[aria-expanded=false]) { width:auto; max-width:calc(100vw - 24px); }
body.console-page #ap-alert-tray .ap-tray-toggle[aria-expanded=false] { padding:11px 14px; }
body.console-page #ap-alert-tray:has(.ap-tray-toggle[aria-expanded=false]) #ap-notification-status { display:none; }
body.console-page .ap-card { border:1px solid var(--line); border-radius:0; background:var(--surface-raised); padding:16px; margin-bottom:12px; }
body.console-page .ap-meta { color:var(--paper); font-size:14px; font-weight:500; margin-bottom:7px; }
body.console-page .ap-trigger { color:var(--muted); font-size:13px; margin-bottom:10px; }
body.console-page .ap-draft { display:block; width:100%; min-height:120px; padding:12px; border:1px solid #687463; border-radius:0; background:#101813; color:var(--paper); font:400 14px/1.6 var(--body); resize:vertical; }
body.console-page .ap-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
body.console-page .ap-btn { border:1px solid var(--line); border-radius:0; padding:9px 12px; font:500 12px var(--body); }
body.console-page .ap-send { background:var(--signal); color:var(--ink); }
body.console-page .ap-regen,body.console-page .ap-view,body.console-page .ap-cancel { background:#3a473d; color:var(--paper); }
body.console-page .ap-discard { background:#50362e; color:#f0c6b4; }
body.console-page .ap-muted,body.console-page .ap-empty { color:var(--muted); font-size:13px; }
body.console-page .ap-empty { text-align:center; padding:24px; }
body.console-page .ap-error,body.console-page .ap-card-status { color:var(--warning); }
body.console-page .ap-regen-dialog { border:1px solid #768856; border-radius:0; background:var(--surface); color:var(--paper); font-family:var(--body); }
body.console-page .ap-regen-dialog::backdrop { background:#020a06bb; }
body.console-page .ap-regen-dialog h3 { font:500 30px var(--display); }
body.console-page .ap-regen-context { color:var(--muted); }
body.console-page .ap-regen-dialog textarea { background:#101813; color:var(--paper); border:1px solid #687463; border-radius:0; }
/* Read-only operator profile. */
.operator-grid { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr); gap:22px; }
.operator-identity { display:flex; align-items:center; gap:20px; padding-bottom:26px; border-bottom:1px solid var(--line); }
.operator-avatar { display:grid; place-items:center; width:70px; height:78px; flex-shrink:0; background:var(--signal); color:var(--signal-ink); font:600 42px var(--display); clip-path:polygon(0 0,78% 0,100% 20%,100% 100%,0 100%); }
.operator-identity h2 { margin:0 0 7px; font-size:25px; font-weight:500; overflow-wrap:anywhere; }.operator-identity p { margin:0; color:var(--dim); font:400 11px var(--mono); }
.account-facts { margin:0; }.account-facts>div { display:grid; grid-template-columns:160px minmax(0,1fr); gap:18px; padding:19px 0; border-bottom:1px solid var(--line-soft); }.account-facts dt { color:var(--dim); font:400 11px var(--mono); }.account-facts dd { margin:0; overflow-wrap:anywhere; }
.profile-note { color:var(--muted); font-size:13px; line-height:1.7; }.profile-side-actions { display:flex; flex-direction:column; align-items:flex-start; gap:13px; margin-top:22px; }
@media (max-width:1150px) { .container { padding-inline:28px; }.navbar-nav { gap:20px; }.clients-page .layout { grid-template-columns:320px minmax(0,1fr); }.stat-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }.stat-box:nth-child(5n) { border-right:1px solid var(--line); }.stat-box:nth-child(3n) { border-right:0; }.stat-box:nth-last-child(-n+5) { border-bottom:1px solid var(--line); }.stat-box:last-child { border-bottom:0; }.audit-filters { grid-template-columns:repeat(3,minmax(0,1fr))!important; } }
@media (max-width:920px) { .navbar-nav { gap:15px; }.nav-link { font-size:11px; }.clients-page .layout { grid-template-columns:1fr; height:auto; min-height:0; }.clients-page .layout>.card:first-child { max-height:530px; }.clients-page .layout>.card:last-child { height:580px; }.operator-grid { grid-template-columns:1fr; } }
@media (max-width:700px) {
  .container { padding-inline:20px; }.navbar { position:relative; height:auto; }.navbar .container { align-items:flex-start; flex-direction:column; gap:12px; padding-top:16px; }.biddy-logo { width:152px; }
  .navbar-nav { width:100%; overflow-x:auto; gap:23px; scrollbar-width:none; }.navbar-nav::-webkit-scrollbar { display:none; }.navbar-nav li { flex-shrink:0; }.nav-link { padding:10px 0 14px; font-size:11px; }.profile-btn { margin-bottom:3px; padding:6px 9px; }
  .console-page:not(.dashboard-page) main { padding-top:28px; }.page-title { font-size:clamp(45px,10vw,64px); }.page-subtitle { font-size:13px; }.page-header { margin-bottom:25px; }.card,.details-container { padding:22px 20px; }.card-title,.details-title { font-size:19px; }
  .subtab { padding:12px 15px; font-size:11px; }.clients-page .layout { gap:18px; }.chat-header { align-items:flex-start; flex-direction:column; padding:16px; }.chat-body { padding:18px; }.message-bubble { max-width:92%; }.ap-panel-head { align-items:flex-start; }.ap-panel-head h3 { font-size:17px; flex-wrap:wrap; }
  .stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.stat-box { padding:19px 14px; }.stat-box:nth-child(3n) { border-right:1px solid var(--line); }.stat-box:nth-child(2n) { border-right:0; }.stat-box:nth-last-child(-n+2) { border-bottom:0; }.stat-value { font-size:24px; }.stat-label { font-size:10px; }
  .history-heading,.data-table-heading { flex-direction:column; gap:12px; }.audit-filters { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:12px; padding:13px; }.audit-pagination { justify-content:flex-start; }.history-table-wrap,.data-table-wrap { max-width:100%; }
  .categories-page .filters,#categoryForm,.details-container>form,.price-grid { grid-template-columns:1fr; }.button-container { align-items:stretch; }.button-container>.btn { flex:1; }.form-group { margin-bottom:19px; }
  .freelancer-item { align-items:flex-start; flex-direction:column; gap:20px; }.freelancer-actions { width:100%; justify-content:space-between; gap:12px; }.freelancers-page .card-title { align-items:flex-start; flex-direction:column; gap:17px; }
  .account-facts>div { grid-template-columns:1fr; gap:8px; }.operator-identity { align-items:flex-start; gap:14px; }.operator-avatar { width:52px; height:60px; font-size:32px; }.operator-identity h2 { font-size:22px; }
  body.console-page #ap-alert-tray { right:12px; bottom:12px; width:calc(100vw - 24px); }
}
@media (max-width:420px) { .audit-filters { grid-template-columns:1fr!important; }.freelancer-actions { align-items:flex-start; flex-direction:column; }.page-title { font-size:44px; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
