:root {
  --ink: #111827;
  --ink-soft: #344054;
  --muted: #667085;
  --line: #d7deea;
  --line-strong: #bac6d8;
  --canvas: #edf2f7;
  --surface: #ffffff;
  --surface-soft: #f7f9fc;
  --accent: #f97316;
  --accent-deep: #c2410c;
  --accent-soft: #fff4e8;
  --ponto-price: #b8470d;
  --good: #087443;
  --danger: #b42318;
  --navy: #101a2e;
  --orange: var(--accent);
  --green-soft: #edf9f1;
  --blue: #2563eb;
  --teal: #15803d;
}

/* Administrators review customer balance requests instead of topping up themselves. */
.wallet-grid.admin-wallet-grid { grid-template-columns:1fr; }
.admin-wallet-request { padding:12px 0; }
.admin-wallet-request-side { display:flex; align-items:center; gap:18px; }
.admin-wallet-request-side > b { min-width:100px; color:var(--good); font-size:18px; text-align:right; }
.admin-wallet-request-side > span { display:flex; gap:6px; }
.admin-wallet-request-side .button { min-height:34px; padding:7px 10px; font-size:11px; }
.working-days { display:flex; flex-wrap:wrap; gap:7px; margin:0; padding:10px; border:1px solid var(--line); border-radius:7px; }
.working-days legend { padding:0 5px; color:var(--muted); font-size:11px; font-weight:900; text-transform:uppercase; }
.working-days label { display:flex; align-items:center; gap:5px; min-width:70px; padding:7px 9px; border:1px solid var(--line); border-radius:6px; background:#fff; font-size:12px; font-weight:800; }
.working-days input { width:16px; height:16px; margin:0; }
.file-preferences-panel { margin-top:14px; padding:14px; border:1px solid #bcd2ee; border-top:4px solid var(--blue); border-radius:8px; background:#f8fbff; }
.file-preferences-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; }.file-preferences-head h3 { margin:2px 0 4px; color:var(--navy); font-size:19px; }.file-preferences-head p { margin:0; color:var(--muted); font-size:12px; }
.file-preferences-tools { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; margin-top:11px; }
.file-tool-row { display:grid; grid-template-columns:16px minmax(0,1fr) 82px auto; align-items:center; gap:6px; min-width:0; min-height:43px; padding:6px 8px; border:1px solid var(--line); border-radius:7px; background:#fff; }.file-tool-row:has(.file-tool-enabled:not(:checked)) { opacity:.58; background:#f1f4f8; }
.file-tool-row > strong { overflow:hidden; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }.file-tool-row select { min-width:0; min-height:29px; padding:4px 5px; font-size:10px; }.file-tool-row input[type="checkbox"],.file-tool-row input[type="radio"] { width:15px; height:15px; margin:0; }
.file-tool-default { display:flex; align-items:center; gap:3px; color:var(--muted); font-size:8px; font-weight:900; text-transform:uppercase; }
.file-preferences-actions { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:12px; }.file-preferences-actions small { max-width:670px; color:var(--muted); font-size:10px; line-height:1.4; }
.user-control-link { display:inline-flex; align-items:center; min-height:38px; padding:0 13px; border:1px solid #bcd2ee; border-radius:7px; color:var(--navy); background:#f8fbff; font-size:12px; font-weight:850; text-decoration:none; white-space:nowrap; }
.user-control-link:hover, .user-control-link.active { border-color:var(--blue); color:var(--blue); background:#eef5ff; }
.account-details-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; }
body:has(.user-control-link.active) .account-details { margin-top:18px; }
.customer-settings { margin-top:18px; padding:20px; border:1px solid #bcd2ee; border-top:4px solid #13a58f; border-radius:8px; background:#fff; }
.settings-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:16px; }
.settings-grid fieldset { min-width:0; margin:0; padding:16px; border:1px solid var(--line); border-radius:8px; background:#f8fbff; }
.settings-grid legend { padding:0 7px; color:var(--navy); font-size:14px; font-weight:850; }
.settings-grid fieldset > label { display:grid; gap:5px; margin-bottom:10px; color:var(--ink); font-size:12px; font-weight:750; }
.settings-grid select { width:100%; min-height:38px; }
.settings-grid select[multiple] { min-height:120px; }
.settings-grid small { color:var(--muted); font-weight:500; }
.setting-switches { display:grid; gap:8px; }
.setting-switches label, .setting-channels label { display:flex; align-items:center; justify-content:flex-start; gap:9px; min-height:30px; color:var(--ink); font-size:12px; font-weight:700; line-height:1.35; }
.setting-switches input[type="checkbox"], .setting-channels input[type="checkbox"] { flex:0 0 17px; width:17px; height:17px; min-height:17px; margin:0; padding:0; border-radius:3px; accent-color:var(--blue); }
.setting-channels { display:flex; flex-wrap:wrap; gap:8px 18px; margin-top:10px; }
.notification-device-control { display:flex; align-items:center; gap:12px; margin-top:12px; }
.notification-device-control small { color:var(--muted); line-height:1.4; }
.favorite-makes-field { display:grid; gap:6px; margin-bottom:10px; color:var(--ink); font-size:12px; }
.favorite-makes-picker { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:10px; }
.favorite-makes-picker section { min-width:0; padding:9px; border:1px solid var(--line); border-radius:7px; background:#fff; }
.favorite-makes-picker section > span { display:block; margin-bottom:7px; color:var(--muted); font-size:10px; font-weight:900; letter-spacing:.045em; text-transform:uppercase; }
.make-choice-list { display:grid; align-content:start; gap:4px; height:174px; overflow:auto; padding-right:3px; }
.make-choice { display:flex; align-items:center; justify-content:space-between; gap:8px; width:100%; min-height:32px; padding:5px 8px; border:1px solid transparent; border-radius:5px; color:var(--ink); background:#f6f9fd; font-size:11px; font-weight:750; text-align:left; cursor:pointer; }
.make-choice:hover, .make-choice:focus-visible { border-color:#9fc4ff; background:#eef5ff; outline:none; }
.make-choice.selected { color:#66728a; background:#edf2f7; }
.make-choice input[type="checkbox"] { flex:0 0 16px; width:16px; height:16px; min-height:16px; margin:0; padding:0; accent-color:var(--good); }
.make-choice-name { min-width:0; flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.make-choice-state { color:var(--muted); font-size:8px; font-weight:900; text-transform:uppercase; }
.make-choice.selected .make-choice-state { color:#087966; }
.make-choice.favourite { border-color:#b7e2d8; color:#076d5b; background:#effaf7; }
.make-choice.favourite b { font-size:17px; font-weight:500; }
.empty-favourites { margin:auto 8px; color:var(--muted); font-size:11px; text-align:center; }
.security-settings { margin-top:18px; padding-top:17px; border-top:1px solid var(--line); }
.security-settings > .account-section-heading { margin-bottom:12px; }
.security-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.security-grid article { min-width:0; padding:15px; border:1px solid var(--line); border-radius:8px; background:#f8fbff; }
.security-grid article.activity-card { grid-column:1/-1; }
.security-grid p { margin:6px 0 12px; color:var(--muted); font-size:12px; }
.security-actions { display:flex; gap:8px; margin-top:10px; }
.totp-initial-setup,.totp-setup,.totp-reauth,.totp-recovery { display:grid; gap:10px; margin:12px 0 0; padding:12px; border:1px solid var(--line); border-radius:var(--ui-radius-sm,8px); background:var(--surface,#fff); }
.totp-initial-setup.hidden,.totp-setup.hidden,.totp-reauth.hidden,.totp-recovery.hidden { display:none; }
.totp-initial-setup label,.totp-setup label,.totp-reauth label { display:grid; gap:5px; color:var(--ink-soft); font-size:11px; font-weight:850; }
.totp-setup code { min-width:0; overflow-wrap:anywhere; padding:10px; border-radius:6px; background:#152642; color:#fff; font-size:14px; letter-spacing:1px; }
.totp-setup input { max-width:220px; }
.totp-secret-row { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:8px; }
.totp-verification-options { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:end; gap:8px; }
.totp-verification-options > span { padding-bottom:12px; color:var(--muted); font-size:10px; font-weight:900; text-transform:uppercase; }
.totp-recovery { border-color:#d6a84f; background:#fff9e9; }
.totp-recovery ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; margin:0; padding:0; list-style:none; }
.totp-recovery li { padding:7px 9px; border:1px solid #e1c47e; border-radius:6px; background:#fff; font:800 12px/1.35 ui-monospace,SFMono-Regular,Consolas,monospace; letter-spacing:.04em; }
.totp-recovery-ack { display:flex; align-items:flex-start; gap:8px; color:var(--ink); font-size:11px; font-weight:800; }
.totp-recovery-ack input { flex:0 0 auto; width:17px; height:17px; min-height:17px; margin:0; }
.security-row { display:flex; justify-content:space-between; gap:12px; padding:8px 0; border-bottom:1px solid var(--line); font-size:11px; }
.security-row small { color:var(--muted); text-align:right; }
html[data-customer-theme="dark"] body { background:#101827; color:#e8eef8; }
html[data-customer-theme="dark"] .customer-settings, html[data-customer-theme="dark"] .settings-grid fieldset, html[data-customer-theme="dark"] .security-grid article { background:#17243a; border-color:#40516c; }
html[data-customer-theme="dark"] .totp-initial-setup,html[data-customer-theme="dark"] .totp-setup,html[data-customer-theme="dark"] .totp-reauth { background:#101827; border-color:#40516c; }
html[data-customer-theme="dark"] .totp-recovery { background:#2f2817; border-color:#8c743a; }
html[data-customer-theme="dark"] .totp-recovery li { background:#17243a; border-color:#6d5c36; }
@media (max-width:620px) {
  .totp-verification-options,.totp-recovery ul { grid-template-columns:1fr; }
  .totp-verification-options > span { padding:0; text-align:center; }
  .totp-secret-row { grid-template-columns:1fr; }
  .totp-secret-row .button { width:100%; }
}
html[data-customer-theme="dark"] .favorite-makes-picker section { background:#101827; border-color:#40516c; }
html[data-customer-theme="dark"] .customer-settings label, html[data-customer-theme="dark"] .customer-settings strong, html[data-customer-theme="dark"] .customer-settings legend { color:#eef4ff; }

.wallet-credit-summary {
  display:flex;
  flex-wrap:wrap;
  gap:8px 18px;
  margin-top:12px;
  color:var(--muted);
  font-size:13px;
}
.wallet-credit-summary strong { color:var(--ink); }
.wallet-amount small { display:block; margin-top:5px; font-size:12px; color:var(--muted); }
.paypal-button {
  background:#ffc439 !important;
  border-color:#ffc439 !important;
  color:#111827 !important;
  font-weight:800;
}
.paypal-button:hover { background:#f2ba36 !important; border-color:#f2ba36 !important; }
.paypal-recipient {
  display:grid;
  grid-template-columns:max-content minmax(0, 1fr);
  align-items:center;
  gap:5px 12px;
  padding:9px 12px;
  border:1px solid var(--line);
  border-left:4px solid var(--accent);
  border-radius:7px;
  background:var(--surface);
  line-height:1.4;
  color:var(--muted);
}
.paypal-recipient > span:not(.paypal-recipient-value) { font-size:11px; font-weight:800; color:var(--muted); }
.paypal-recipient > a,
.paypal-recipient-value > a { width:auto; max-width:100%; color:var(--accent); font-size:14px; font-weight:900; overflow-wrap:anywhere; text-decoration:underline; text-underline-offset:2px; }
.paypal-recipient-value { display:flex; min-width:0; align-items:center; flex-wrap:wrap; gap:7px; }
.paypal-copy-button { min-height:28px; padding:4px 9px; border:1px solid var(--line-strong); border-radius:6px; color:var(--ink); background:var(--surface-soft); font-size:11px; font-weight:900; }
.paypal-copy-button:hover { border-color:var(--accent); color:var(--accent); }
.paypal-copy-button.is-copied { color:var(--good); border-color:var(--good); }
.paypal-recipient > small { grid-column:1 / -1; margin-top:3px; color:var(--muted); font-size:11px; }
.paypal-followup-reminder {
  display:grid;
  gap:3px;
  padding:11px 12px;
  border:1px solid #f5b27d;
  border-left:4px solid var(--accent);
  border-radius:7px;
  color:#7c2d12;
  background:#fff7ed;
  font-size:12px;
  line-height:1.45;
}
.paypal-followup-reminder strong { color:#9a3412; font-size:13px; }
.paypal-followup-reminder.hidden { display:none; }
html[data-ponto-theme="operations"] .wallet-credit-summary strong,
html[data-ponto-theme="operations"] .wallet-amount small,
html[data-ponto-theme="operations"] .paypal-recipient { color:#c7d2e3; }
html[data-ponto-theme="operations"] .paypal-recipient { background:#101a2a; border-color:#33465f; border-left-color:#ff7438; }
html[data-ponto-theme="operations"] .paypal-recipient > a,
html[data-ponto-theme="operations"] .paypal-recipient-value > a { color:#ff9b70; }
html[data-ponto-theme="operations"] .paypal-copy-button { color:#e6edf7; border-color:#43536b; background:#172235; }
html[data-ponto-theme="operations"] .paypal-copy-button:hover { color:#fff; border-color:#ff9b70; background:#202d41; }
html[data-ponto-theme="operations"] .paypal-copy-button.is-copied { color:#7ee4c3; border-color:#48d597; }
html[data-ponto-theme="operations"] .paypal-followup-reminder {
  color:#ffd8c2;
  border-color:#7e4933;
  border-left-color:#ff7438;
  background:#2a1b18;
}
html[data-ponto-theme="operations"] .paypal-followup-reminder strong { color:#ffad76; }
html[data-order-density="comfortable"] .owner-queue-row { padding-top:16px; padding-bottom:16px; }

.customer-active-orders {
  margin-top:18px;
  padding:20px 22px;
  border:1px solid var(--line);
  border-top:4px solid var(--accent);
  border-radius:10px;
  background:var(--surface);
  box-shadow:0 12px 26px rgba(15,23,42,.04);
}
.customer-active-orders-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding-bottom:13px;
  border-bottom:1px solid var(--line);
}
.customer-active-orders-head h2 { margin:1px 0 0; color:var(--navy); font-size:21px; }
.customer-active-orders-head p { margin:5px 0 0; color:var(--muted); font-size:13px; }
.customer-active-orders-head-actions { display:flex; align-items:center; gap:9px; }
.customer-active-orders-head-actions .button { min-height:38px; white-space:nowrap; }
.customer-active-order-rows { display:grid; gap:7px; margin-top:13px; }
.customer-active-order-row {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(150px,.22fr) minmax(150px,.22fr) auto;
  align-items:center;
  gap:14px;
  min-width:0;
  padding:11px 12px;
  border:1px solid var(--line);
  border-left:3px solid var(--teal);
  border-radius:7px;
  background:var(--surface-soft);
  color:var(--ink);
  text-decoration:none;
}
.customer-active-order-row:hover { border-color:#fdba74; background:var(--accent-soft); }
.customer-active-order-row.confirm { border-left-color:var(--good); }
.customer-active-order-row.reply { border-left-color:var(--blue); }
.customer-active-order-row.review { border-left-color:var(--accent); }
.customer-active-order-row.closed { border-left-color:var(--good); }
.customer-active-order-main { display:grid; grid-template-columns:auto auto minmax(0,1fr); align-items:center; gap:6px 8px; min-width:0; }
.customer-active-order-main b { color:var(--navy); font-size:13px; }
.customer-active-order-main i { padding:2px 6px; border-radius:999px; background:var(--surface); color:var(--ink-soft); font-size:9px; font-style:normal; font-weight:900; }
.customer-active-order-main strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; }
.customer-active-order-main small { grid-column:1/-1; overflow:hidden; color:var(--muted); font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.customer-active-order-status,.customer-active-order-updated { display:grid; gap:2px; }
.customer-active-order-status em { color:var(--accent-deep); font-size:12px; font-style:normal; font-weight:900; }
.customer-active-order-status small,.customer-active-order-updated small,.customer-active-order-updated time { color:var(--muted); font-size:10px; }
.customer-active-order-updated strong { color:var(--ink); font-size:13px; }
.customer-active-order-open { display:inline-flex; align-items:center; gap:7px; min-height:34px; padding:0 11px; border:1px solid var(--line-strong); border-radius:6px; background:var(--surface); color:var(--navy); font-size:12px; font-weight:900; white-space:nowrap; }
.customer-active-order-loading,
.customer-active-order-empty { min-height:58px; grid-template-columns:minmax(0,1fr) auto; pointer-events:none; }
.customer-active-order-loading { opacity:.78; }
.customer-order-history-dialog .workspace-dialog-card { display:flex; min-height:min(700px,86vh); flex-direction:column; }
.customer-order-history-tools { display:grid; grid-template-columns:minmax(240px,1fr) auto; align-items:end; gap:12px; padding-top:14px; }
.customer-order-history-search { display:grid; gap:6px; color:var(--muted); font-size:10px; font-weight:900; letter-spacing:.04em; text-transform:uppercase; }
.customer-order-history-search input { min-height:42px; width:100%; padding:0 13px; border:1px solid var(--line-strong); border-radius:8px; color:var(--ink); background:var(--surface-soft); font:inherit; }
.customer-order-history-search input:focus { border-color:var(--good); outline:3px solid color-mix(in srgb,var(--good) 18%,transparent); }
.customer-order-history-filters { display:flex; flex-wrap:wrap; gap:6px; }
.customer-order-history-filters button { min-height:42px; padding:0 13px; border:1px solid var(--line-strong); border-radius:8px; color:var(--muted); background:var(--surface-soft); font:inherit; font-size:12px; font-weight:900; cursor:pointer; }
.customer-order-history-filters button:hover { border-color:color-mix(in srgb,var(--good) 55%,var(--line)); color:var(--ink); }
.customer-order-history-filters button.active { border-color:var(--good); color:var(--good); background:color-mix(in srgb,var(--good) 12%,var(--surface)); }
.customer-order-history-meta { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:13px 2px 0; color:var(--muted); font-size:12px; }
.customer-order-history-meta strong { color:var(--ink); }
.customer-order-history-rows { min-height:120px; max-height:calc(86vh - 275px); padding-right:4px; overflow:auto; overscroll-behavior:contain; }
.customer-order-history-more { align-self:center; min-width:210px; margin-top:12px; }

.dyno-branding-settings { grid-column:1/-1; }
.dyno-branding-settings > p { margin:0 0 12px; color:var(--muted); font-size:12px; line-height:1.5; }
.dyno-branding-preview {
  display:grid;
  place-items:center;
  min-height:128px;
  padding:14px;
  border:1px dashed var(--line-strong);
  border-radius:8px;
  background:var(--surface);
}
.dyno-branding-preview img { width:min(300px,100%); height:96px; object-fit:contain; }
.dyno-branding-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }

html[data-customer-theme="dark"] .customer-active-orders,
html[data-customer-theme="dark"] .customer-active-order-row,
html[data-customer-theme="dark"] .customer-active-order-open,
html[data-customer-theme="dark"] .dyno-branding-preview {
  background:#121d2e;
  border-color:#40516c;
}
html[data-customer-theme="dark"] .customer-active-orders-head h2,
html[data-customer-theme="dark"] .customer-active-order-main b,
html[data-customer-theme="dark"] .customer-active-order-updated strong,
html[data-customer-theme="dark"] .customer-active-order-open { color:#eef4ff; }
html[data-customer-theme="dark"] .customer-active-order-main i { background:#1b2a42; color:#c8d4e6; }

@media (max-width:900px) {
  .customer-active-order-row { grid-template-columns:minmax(0,1fr) auto; }
  .customer-active-order-updated { grid-column:1/-1; grid-row:2; padding-top:8px; border-top:1px solid var(--line); }
  .customer-active-order-status { text-align:right; }
}
@media (max-width:640px) {
  .customer-active-orders { padding:17px; }
  .customer-active-orders-head { align-items:stretch; flex-direction:column; }
  .customer-active-orders-head-actions { justify-content:space-between; }
  .customer-active-orders-head-actions .button { flex:1; }
  .customer-active-order-row { grid-template-columns:1fr; }
  .customer-active-order-status { text-align:left; }
  .customer-active-order-updated { grid-column:auto; grid-row:auto; }
  .customer-active-order-open { justify-content:center; }
  .customer-order-history-meta { align-items:flex-start; flex-direction:column; gap:3px; }
  .customer-order-history-tools { grid-template-columns:1fr; }
  .customer-order-history-filters { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
  .customer-order-history-filters button { padding:0 8px; }
  .customer-order-history-rows { max-height:calc(86vh - 340px); }
}
@media (max-width:650px) {
  .file-preferences-tools { grid-template-columns:1fr; }
  .file-preferences-actions { align-items:stretch; flex-direction:column; }
  .file-preferences-actions .button { width:100%; }
  .settings-grid, .security-grid { grid-template-columns:1fr; }
  .security-grid article.activity-card { grid-column:auto; }
  .favorite-makes-picker { grid-template-columns:1fr; }
  .admin-wallet-request { align-items:flex-start; flex-direction:column; }
  .admin-wallet-request-side { width:100%; justify-content:space-between; }
  .admin-wallet-request-side > b { text-align:left; }
}
@media (max-width:1350px) and (min-width:981px) {
  .file-preferences-tools { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:980px) and (min-width:651px) {
  .file-preferences-tools { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

.status-pill.danger { color:var(--danger); background:#fff0ee; }
.wallet-in { color:var(--good); }
.wallet-out { color:var(--danger); }

* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; background: var(--canvas); color: var(--ink); font: 15px/1.45 Inter, "Segoe UI", Arial, sans-serif; }
body::before { position: fixed; inset: 0 0 auto; height: 4px; background: var(--accent); content: ""; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
.shell { width: min(1180px, calc(100vw - 40px)); margin: 0 auto; padding: 42px 0 64px; }
.top { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 24px 28px; border: 1px solid var(--line); border-left: 5px solid var(--accent); border-radius: 10px; background: var(--surface); box-shadow: 0 18px 38px rgba(15, 23, 42, .08); }
.brand { display: flex; min-width: 0; align-items: center; gap: 20px; }
.brand img { width: 128px; height: 64px; flex: 0 0 auto; object-fit: contain; }
.brand h1 { margin: 0; color: var(--navy); font-size: 29px; line-height: 1.1; letter-spacing: 0; }
.brand p, .muted { margin: 6px 0 0; color: var(--muted); }
.eyebrow { display: block; margin-bottom: 6px; color: var(--accent-deep); font-size: 11px; font-weight: 900; letter-spacing: .08em; }
.top a, .button { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: 9px 14px; border: 1px solid var(--line-strong); border-radius: 7px; color: var(--ink); background: var(--surface); text-decoration: none; font-weight: 850; transition: border-color .15s ease, background .15s ease, color .15s ease; }
.top-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 9px; }
.page-refresh-button { gap: 8px; cursor: pointer; }
.page-refresh-button .ui-icon { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.workspace-switcher { position:relative; }
.workspace-switcher > summary { display:inline-flex; align-items:center; gap:8px; min-height:42px; padding:9px 12px; border:1px solid var(--line-strong); border-radius:7px; color:var(--ink); background:var(--surface); font-size:12px; font-weight:900; list-style:none; cursor:pointer; }
.workspace-switcher > summary::-webkit-details-marker { display:none; }
.workspace-switcher[open] > summary { border-color:var(--accent); color:var(--accent-deep); background:var(--accent-soft); }
.workspace-switcher > summary .ui-icon { width:15px; height:15px; transition:transform .16s ease; }
.workspace-switcher[open] > summary .ui-icon { transform:rotate(180deg); }
.workspace-switcher > nav { position:absolute; z-index:120; top:calc(100% + 8px); right:0; display:grid; width:min(310px,calc(100vw - 32px)); padding:7px; border:1px solid var(--line-strong); border-radius:9px; background:var(--surface); box-shadow:0 18px 45px rgba(15,23,42,.22); }
.top .workspace-switcher > nav a { display:grid; justify-content:stretch; min-height:0; padding:10px 11px; border:0; border-radius:6px; text-align:left; }
.workspace-switcher > nav a:hover { background:var(--accent-soft); }
.workspace-switcher > nav strong,.workspace-switcher > nav small { display:block; }
.workspace-switcher > nav strong { color:var(--ink); font-size:12px; }
.workspace-switcher > nav small { margin-top:2px; color:var(--muted); font-size:10px; font-weight:650; }
.top a:hover, .button:hover { border-color: var(--accent); color: var(--accent-deep); }
.top-link { white-space: nowrap; }
.button.primary { border-color: var(--accent); background: var(--accent); color: #fff; box-shadow: 0 9px 18px rgba(249, 115, 22, .20); }
.button.primary:hover { border-color: var(--accent-deep); background: var(--accent-deep); color: #fff; }
.button.danger { color: var(--danger); }
.button.danger:hover { border-color: #fda29b; background: #fff5f4; }
.grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 20px; }
.card { padding: 22px; border: 1px solid var(--line); border-radius: 9px; background: var(--surface); box-shadow: 0 10px 22px rgba(15, 23, 42, .035); }
.card h2 { margin: 0 0 6px; font-size: 21px; letter-spacing: 0; }
.card p { color: var(--muted); }
.stack { display: grid; gap: 12px; margin-top: 18px; }
label { display: grid; gap: 6px; color: #475467; font-size: 12px; font-weight: 850; letter-spacing: .01em; }
input, select, textarea { width: 100%; min-height: 43px; padding: 9px 11px; border: 1px solid var(--line-strong); border-radius: 7px; outline: none; background: #fff; color: var(--ink); }
textarea { min-height: 78px; resize: vertical; line-height: 1.45; }
input:focus, select:focus, textarea:focus { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(249, 115, 22, .12); }
.notice { margin-top: 18px; padding: 12px 14px; border: 1px solid #bfdbfe; border-left: 4px solid #2563eb; border-radius: 7px; background: #eff6ff; color: #1d4ed8; font-weight: 750; }
.notice.error { border-color: #fecaca; border-left-color: var(--danger); background: #fef2f2; color: var(--danger); }
.notice.good { border-color: #bbf7d0; border-left-color: var(--good); background: #f0fdf4; color: var(--good); }
.invite-message { display: grid; gap: 10px; }
.invite-message-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.invite-message p { margin: 0; }
.invite-message pre { margin: 0; max-width: 100%; overflow: auto; white-space: pre-wrap; border: 1px solid currentColor; border-radius: 6px; padding: 12px; background: rgba(255,255,255,.58); color: inherit; font: 600 13px/1.5 var(--font-mono, ui-monospace, SFMono-Regular, Menlo, monospace); }
.profile { margin-top: 20px; }
.modules { margin-top: 18px; border-top: 3px solid var(--navy); }
.modules-head h2 { margin-bottom: 4px; }
.modules-head p { margin: 0; }
.module-status { width: fit-content; padding: 4px 7px; border-radius: 999px; background: #dcfce7; color: var(--good); font-size: 10px; font-weight: 900; letter-spacing: .05em; }
.module-status.planned { background: #eaf0f8; color: #667085; }
.profile-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 16px; }
.stat { padding: 13px 14px; border: 1px solid var(--line); border-radius: 7px; background: var(--surface-soft); }
.stat span { display: block; color: var(--muted); font-size: 11px; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.stat strong { display: block; margin-top: 4px; font-size: 18px; }
.account-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.admin-summary { margin-top: 18px; border-top: 3px solid var(--accent); }
.admin-summary-head, .summary-block-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.admin-summary-head h2 { margin-bottom: 4px; }
.admin-summary-head p { margin: 0; }
.admin-summary-grid, .admin-overview-details { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 16px; }
.summary-block { min-width: 0; padding: 15px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface-soft); }
.summary-block h3 { margin: 0; color: var(--navy); font-size: 15px; }
.summary-block-head > a { color: var(--accent-deep); font-size: 12px; font-weight: 850; text-decoration: none; }
.summary-block-head .button { min-height: 31px; padding: 4px 8px; font-size: 12px; }
.plan-list { display: grid; gap: 7px; margin-top: 12px; }
.plan-row { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 10px; align-items: center; padding: 9px 10px; border: 1px solid var(--line); border-radius: 6px; background: #fff; font-size: 12px; }
.plan-row span { color: var(--muted); }
.capability-list { display: grid; gap: 9px; margin: 12px 0 0; padding: 0; list-style: none; }
.capability-list li { display: grid; grid-template-columns: minmax(130px, .8fr) minmax(0, 1.4fr); gap: 10px; padding: 8px 0; border-top: 1px solid var(--line); font-size: 12px; }
.capability-list li:first-child { padding-top: 0; border-top: 0; }
.capability-list span { color: var(--muted); }

.admin-shell { width: min(1360px, calc(100vw - 40px)); }
.admin-grid { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 18px; margin-top: 20px; }
.admin-nav { position: sticky; top: 14px; align-self: start; padding: 18px; border-top: 3px solid var(--accent); }
.admin-nav h2 { margin-bottom: 15px; }
.admin-nav button { display: flex; width: 100%; align-items: center; gap: 10px; margin-top: 7px; min-height: 42px; padding: 9px 10px; border: 1px solid transparent; border-radius: 6px; background: transparent; color: var(--ink-soft); font-weight: 850; text-align: left; }
.admin-nav button span { width: 22px; color: #98a2b3; font-size: 11px; font-weight: 900; }
.admin-nav button:hover { background: var(--surface-soft); }
.admin-nav button.active { border-color: #fed7aa; background: var(--accent-soft); color: var(--accent-deep); }
.admin-nav button.active span { color: var(--accent-deep); }
.admin-panel { min-width: 0; min-height: 430px; }
.admin-subnav { display:flex; align-items:center; gap:7px; margin:-4px 0 20px; padding:0 0 14px; overflow-x:auto; border-bottom:1px solid var(--line); scrollbar-width:thin; }
.admin-subnav button { flex:0 0 auto; min-height:39px; padding:8px 13px; border:1px solid var(--line); border-radius:7px; color:var(--ink-soft); background:var(--surface-soft); font:inherit; font-size:12px; font-weight:850; white-space:nowrap; cursor:pointer; }
.admin-subnav button:hover { border-color:color-mix(in srgb,var(--accent) 58%,var(--line)); color:var(--accent-deep); background:var(--accent-soft); }
.admin-subnav button.active { border-color:var(--accent); color:var(--accent-deep); background:var(--accent-soft); box-shadow:inset 0 -2px 0 var(--accent); }
.admin-panel > div > h2 { padding-bottom: 12px; border-bottom: 1px solid var(--line); }
.overview { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; margin-top: 18px; }
.overview .stat { position: relative; min-height: 100px; padding: 16px; border-top: 3px solid var(--navy); background: #fff; }
.overview .stat:nth-child(2) { border-top-color: var(--good); }
.overview .stat:nth-child(3) { border-top-color: var(--accent); }
.overview .stat:nth-child(4) { border-top-color: #2563eb; }
.overview .stat:nth-child(5) { border-top-color: #dc2626; }
.overview .stat strong { margin-top: 9px; color: var(--navy); font-size: 28px; }
.overview .stat-action { width:100%; appearance:none; color:inherit; font:inherit; text-align:left; cursor:pointer; transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease; }
.overview .stat-action:hover,.overview .stat-action:focus-visible { transform:translateY(-2px); border-color:var(--accent); box-shadow:0 12px 24px rgba(15,23,42,.12); outline:none; }
.overview .stat-action small { display:block; margin-top:5px; color:var(--accent-deep); font-size:10px; font-weight:900; letter-spacing:.02em; }
.admin-overview-details { grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr); }
.admin-overview-details .capability-block { grid-column: 1 / -1; }
.compact-table { margin-top: 13px; }
.table-wrap { overflow: auto; margin-top: 16px; border: 1px solid var(--line); border-radius: 7px; }
table { width: 100%; border-collapse: collapse; background: #fff; }
th, td { padding: 11px 12px; border-bottom: 1px solid #e8edf4; text-align: left; vertical-align: top; font-size: 13px; }
tbody tr:last-child td { border-bottom: 0; }
tbody tr:hover { background: #fffaf5; }
th { color: var(--muted); background: var(--surface-soft); font-size: 10px; font-weight: 900; letter-spacing: .055em; text-transform: uppercase; }
td .button { min-height: 31px; padding: 4px 8px; font-size: 12px; }
.schema-review { margin-top: 18px; padding: 17px; border: 1px solid #fed7aa; border-top: 3px solid var(--accent); border-radius: 8px; background: #fffaf5; }
.schema-review-head { display: flex; justify-content: space-between; gap: 16px; align-items: flex-start; }
.schema-review h3, .schema-review h4 { margin: 0; }
.schema-review h4 { color: #475467; font-size: 13px; }
.schema-samples { margin-top: 14px; }
.schema-samples pre { max-height: 220px; margin: 8px 0 0; overflow: auto; padding: 12px; border: 1px solid var(--line); border-radius: 7px; background: #fff; color: #344054; font: 12px/1.4 Consolas, "Courier New", monospace; white-space: pre-wrap; }
.schema-review-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.check-label { grid-column: 1 / -1; display: flex; align-items: center; gap: 8px; }
.check-label input { width: auto; min-height: auto; }
.panel-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding-bottom: 15px; border-bottom: 1px solid var(--line); }
.panel-heading h2 { margin: 0; font-size: 22px; }
.panel-heading p { margin: 5px 0 0; }
.panel-heading .button { flex: 0 0 auto; }
.admin-toolbar { display: flex; align-items: center; gap: 10px; margin-top: 17px; }
.admin-toolbar input { max-width: 600px; }
.admin-toolbar select { max-width: 270px; }
.csv-log-summary { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; margin:16px 0; }
.csv-log-summary article { display:grid; gap:5px; padding:13px 14px; border:1px solid var(--line); border-top:3px solid var(--blue); border-radius:9px; background:var(--surface-soft); }
.csv-log-summary span { color:var(--muted); font-size:11px; font-weight:800; text-transform:uppercase; }
.csv-log-summary strong { color:var(--ink); font-size:25px; font-variant-numeric:tabular-nums; }
.csv-log-toolbar { display:grid; grid-template-columns:minmax(260px,1fr) repeat(3,minmax(150px,220px)); }
.csv-log-toolbar input,.csv-log-toolbar select { max-width:none; }
.csv-log-download-toolbar { display:flex; align-items:center; flex-wrap:wrap; gap:9px; margin-top:10px; }
.csv-log-download-toolbar .muted { margin-left:auto; font-size:12px; font-weight:700; }
.csv-log-rows { display:grid; gap:9px; margin-top:13px; }
.csv-log-card { overflow:hidden; border:1px solid var(--line); border-left:4px solid #f59e0b; border-radius:9px; background:var(--surface-soft); }
.csv-log-card.full { border-left-color:var(--good); }
.csv-log-card.insufficient { border-left-color:var(--danger); }
.csv-log-card summary { display:grid; grid-template-columns:26px minmax(220px,1.55fr) minmax(150px,1fr) minmax(170px,1.15fr) 95px 125px 122px; align-items:center; gap:10px; min-height:74px; padding:10px 14px; cursor:pointer; list-style:none; }
.csv-log-card summary::-webkit-details-marker { display:none; }
.csv-log-card summary:hover { background:color-mix(in srgb,var(--blue) 6%,transparent); }
.csv-log-card summary > span { display:grid; min-width:0; gap:3px; }
.csv-log-card summary strong { overflow:hidden; color:var(--ink); text-overflow:ellipsis; white-space:nowrap; }
.csv-log-card summary small { overflow:hidden; color:var(--muted); font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.csv-log-select { display:grid; width:24px; height:30px; place-items:center; cursor:pointer; }
.csv-log-select input { width:17px; height:17px; margin:0; accent-color:var(--blue); }
.csv-log-download { justify-self:end; white-space:nowrap; }
.csv-log-download-frame { position:fixed; width:1px; height:1px; border:0; opacity:0; pointer-events:none; }
.csv-log-score,.csv-log-parser { justify-items:center; padding:7px; border-radius:7px; background:color-mix(in srgb,#f59e0b 13%,transparent); text-align:center; }
.csv-log-score.passed,.csv-log-parser.full { background:color-mix(in srgb,var(--good) 14%,transparent); }
.csv-log-score.failed,.csv-log-parser.insufficient { background:color-mix(in srgb,var(--danger) 13%,transparent); }
.csv-log-detail { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding:14px; border-top:1px solid var(--line); background:color-mix(in srgb,var(--surface-soft) 82%,var(--page)); }
.csv-log-detail section { min-width:0; padding:12px; border:1px solid var(--line); border-radius:8px; }
.csv-log-detail h4 { margin:0 0 7px; color:var(--ink); }
.csv-log-detail p,.csv-log-detail ul { margin:0; color:var(--muted); font-size:12px; line-height:1.5; }
.csv-signal-list,.csv-unknown-list { display:flex; flex-wrap:wrap; gap:5px; margin-top:8px; }
.csv-signal-list span,.csv-unknown-list code { padding:4px 7px; border:1px solid var(--line); border-radius:5px; color:var(--ink); background:var(--surface); font-size:11px; }
.csv-log-actions { display:flex; align-items:center; gap:10px; }
.csv-log-empty { display:grid; gap:4px; min-height:130px; place-content:center; color:var(--muted); text-align:center; }
.count-badge { display: inline-grid; min-width: 30px; height: 30px; place-items: center; padding: 0 9px; border-radius: 999px; background: var(--navy); color: #fff; font-size: 12px; font-weight: 900; }
.editor-card, .service-editor { margin-top: 18px; padding: 18px; border: 1px solid #fed7aa; border-top: 3px solid var(--accent); border-radius: 8px; background: #fffaf5; }
.editor-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding-bottom: 14px; border-bottom: 1px solid #f3dcc9; }
.editor-head h3 { margin: 0; color: var(--navy); font-size: 18px; }
.editor-head p { margin: 5px 0 0; }
.icon-button { display: inline-grid; width: 34px; height: 34px; flex: 0 0 auto; place-items: center; padding: 0; border: 1px solid var(--line-strong); border-radius: 7px; background: #fff; color: var(--ink); font-size: 20px; line-height: 1; }
.editor-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; margin-top: 16px; }
.editor-grid .full { grid-column: 1 / -1; }
.editor-grid small { color: var(--muted); font-size: 11px; font-weight: 650; letter-spacing: 0; }
.editor-actions { display: flex; flex-wrap: wrap; gap: 9px; padding-top: 5px; }
.switch-label { display: flex; align-items: center; align-self: end; gap: 9px; min-height: 43px; padding: 10px 11px; border: 1px solid var(--line-strong); border-radius: 7px; background: #fff; color: var(--ink); font-size: 13px; letter-spacing: 0; }
.switch-label input { width: 16px; min-height: 16px; accent-color: var(--accent); }
.module-access { display: grid; gap: 9px; margin: 0; padding: 13px; border: 1px solid var(--line); border-radius: 7px; background: var(--surface-soft); }
.module-access legend { padding: 0 5px; color: var(--ink-soft); font-size: 12px; font-weight: 900; }
.module-access p { margin: 0; color: var(--muted); font-size: 12px; }
.module-access-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; }
.module-access-options .switch-label { align-self: stretch; min-height: 39px; padding: 8px 10px; }
.service-visibility-editor { border-color: #bdd4f6; background: #f7faff; }
.service-visibility-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.platform-settings-form { display: grid; gap: 16px; margin-top: 18px; }
.platform-settings-card, .quick-catalogue-card { padding: 17px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface-soft); }
.settings-card-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 14px; }
.settings-card-head h3 { margin: 2px 0 4px; color: var(--navy); font-size: 18px; }
.settings-card-head p { max-width: 780px; margin: 0; color: var(--muted); font-size: 12px; line-height: 1.45; }
.global-module-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.global-module-card { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; min-width: 0; margin: 0; padding: 13px; border: 1px solid var(--line-strong); border-top: 4px solid var(--blue); border-radius: 8px; background: #fff; }
.global-module-card.teal { border-top-color: var(--teal); }.global-module-card.orange { border-top-color: var(--accent); }
.global-module-card legend { padding: 0 5px; color: var(--ink); font-size: 14px; font-weight: 900; }.global-module-card .module-live-switch { grid-column: 1 / -1; border-color: #b9e6ca; background: #f0fdf4; }.global-module-card small { color: var(--muted); font-size: 11px; line-height: 1.4; }
.quick-catalogue-card { display: grid; gap: 14px; margin-top: 18px; }.quick-catalogue-card .settings-card-head { margin-bottom: 0; }.quick-catalogue-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }.quick-catalogue-grid > section { padding: 12px; border: 1px solid var(--line); border-radius: 7px; background: #fff; }.quick-catalogue-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-bottom: 9px; border-bottom: 1px solid var(--line); }.quick-catalogue-head h3 { margin: 0; color: var(--navy); font-size: 15px; }.quick-catalogue-head a { color: var(--blue); font-size: 12px; font-weight: 800; text-decoration: none; }.quick-service-list { display: grid; gap: 6px; margin-top: 9px; }.quick-service-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 38px; padding: 6px 8px; border: 1px solid var(--line); border-radius: 6px; background: var(--surface-soft); color: var(--ink); font-size: 12px; }.quick-service-row > span { display: flex; align-items: center; gap: 6px; min-width: 0; }.quick-service-row > span:first-child { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }.quick-service-row input[type="checkbox"] { width: 15px; min-height: 15px; accent-color: var(--accent); }.quick-service-row input[type="number"] { width: 76px; min-height: 28px; padding: 4px 6px; text-align: right; font-size: 12px; }.quick-service-row b { color: var(--muted); font-size: 10px; }
.module-chip { display: inline-flex; margin: 0 4px 4px 0; padding: 3px 6px; border: 1px solid var(--line); border-radius: 999px; color: var(--muted); background: var(--surface-soft); font-size: 10px; font-weight: 850; white-space: nowrap; }
.module-chip.enabled { border-color: #86efac; color: var(--good); background: #f0fdf4; }
.customer-toolbar { flex-wrap:wrap; }
.presence-legend { display:inline-flex; align-items:center; gap:7px; margin-left:auto; color:var(--muted); font-size:12px; font-weight:800; }
.presence-legend i,.customer-presence i { width:8px; height:8px; flex:0 0 8px; border-radius:50%; background:#10b981; box-shadow:0 0 0 4px rgba(16,185,129,.13); }
.customer-card-list { display:grid; gap:13px; margin-top:16px; }
.customer-card { min-width:0; overflow:hidden; border:1px solid var(--line); border-left:4px solid #94a3b8; border-radius:9px; background:var(--surface); box-shadow:0 7px 20px rgba(15,23,42,.045); transition:border-color .16s ease,box-shadow .16s ease; }
.customer-card:hover { border-color:var(--line-strong); border-left-color:#64748b; box-shadow:0 10px 24px rgba(15,23,42,.075); }
.customer-card.selected { border-color:#fb923c; border-left-color:var(--accent); box-shadow:0 0 0 2px rgba(249,115,22,.1),0 14px 30px rgba(15,23,42,.1); }
.customer-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:15px 16px 12px; }
.customer-identity { display:flex; align-items:center; min-width:0; gap:12px; }
.customer-avatar { display:grid; width:44px; height:44px; flex:0 0 44px; place-items:center; border:1px solid #bcd0eb; border-radius:10px; color:#164e8b; background:#edf5ff; font-size:14px; font-weight:950; letter-spacing:.03em; }
.customer-identity > div { min-width:0; }
.customer-identity h3 { overflow:hidden; margin:2px 0 1px; color:var(--ink); font-size:17px; text-overflow:ellipsis; white-space:nowrap; }
.customer-identity a { display:block; overflow:hidden; color:var(--blue); font-size:12px; font-weight:750; text-decoration:none; text-overflow:ellipsis; white-space:nowrap; }
.customer-card-status { display:flex; align-items:center; flex-wrap:wrap; justify-content:flex-end; gap:9px; }
.customer-risk-warning { display:grid; grid-template-columns:auto minmax(0,1fr); gap:7px 12px; margin:0 16px 13px; padding:11px 12px; border:1px solid color-mix(in srgb,var(--danger) 58%,var(--line)); border-left:4px solid var(--danger); border-radius:7px; background:color-mix(in srgb,var(--danger) 9%,var(--surface)); }
.customer-risk-warning > b { grid-row:1 / span 3; align-self:start; padding:4px 6px; border-radius:5px; color:#fff; background:var(--danger); font-size:8px; letter-spacing:.055em; }
.customer-risk-warning > div { display:grid; gap:2px; }
.customer-risk-warning strong { color:var(--danger); font-size:11px; }
.customer-risk-warning span { color:var(--ink-soft); font-size:10px; line-height:1.45; }
.customer-risk-warning.detailed { margin:14px 0 0; padding:13px 14px; }
.customer-risk-warning.detailed strong { font-size:12px; }
.customer-risk-warning.detailed span { font-size:11px; }
.customer-risk-warning.is-loading { border-color:var(--line-strong); border-left-color:var(--muted); background:var(--surface-soft); }
.customer-risk-warning.is-loading > b { background:var(--muted); }
.customer-risk-warning.is-loading strong { color:var(--ink-soft); }
.customer-referral-admin { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:14px 0 0; padding:13px 14px; border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line)); border-left:4px solid var(--accent); border-radius:7px; background:color-mix(in srgb,var(--accent) 7%,var(--surface)); }
.customer-referral-admin > div:first-child { display:grid; gap:3px; }
.customer-referral-admin .eyebrow { margin:0; }
.customer-referral-admin strong { color:var(--ink); font-size:12px; }
.customer-referral-admin small { color:var(--ink-soft); font-size:10px; }
.customer-referral-admin-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; }
.customer-presence { display:inline-flex; align-items:center; gap:7px; padding:6px 9px; border:1px solid #a7e5c8; border-radius:999px; color:#057a55; background:#edfdf5; font-size:11px; font-weight:900; white-space:nowrap; }
.customer-presence.offline { color:var(--muted); border-color:var(--line); background:var(--surface-soft); }
.customer-presence.offline i { background:#94a3b8; box-shadow:none; }
.customer-card-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:var(--surface-soft); }
.customer-card-metrics > span { min-width:0; padding:12px 15px; border-right:1px solid var(--line); }
.customer-card-metrics > span:last-child { border-right:0; }
.customer-card-metrics small,.customer-card-metrics strong,.customer-card-metrics em { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.customer-card-metrics small,.customer-card-detail-row small { color:var(--muted); font-size:9px; font-weight:900; letter-spacing:.055em; text-transform:uppercase; }
.customer-card-metrics strong { margin-top:4px; color:var(--ink); font-size:14px; font-variant-numeric:tabular-nums; }
.customer-card-metrics em { margin-top:3px; color:var(--muted); font-size:10px; font-style:normal; }
.customer-balance-metric { position:relative; }
.customer-balance-metric strong { font-weight:950; letter-spacing:.015em; }
.customer-balance-metric.is-positive { border-left:3px solid #20a96f!important; background:color-mix(in srgb,#20a96f 10%,var(--surface-soft))!important; }
.customer-balance-metric.is-positive strong { color:#08794e!important; }
.customer-balance-metric.is-negative { border-left:3px solid #df3d4f!important; background:color-mix(in srgb,#df3d4f 10%,var(--surface-soft))!important; }
.customer-balance-metric.is-negative strong { color:#c22538!important; }
.customer-card-detail-row { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; padding:12px 16px; }
.customer-card-detail-row > div { min-width:0; }
.customer-card-detail-row > div > small { display:block; margin-bottom:6px; }
.customer-plan strong,.customer-plan span { display:block; }
.customer-plan strong { color:var(--ink); font-size:13px; }
.customer-plan span { margin-top:2px; color:var(--muted); font-size:10px; }
.customer-card-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; padding:11px 16px; border-top:1px solid var(--line); background:var(--surface-soft); }
.customer-card-actions .button { min-height:34px; padding:6px 10px; font-size:11px; }
.customer-card-actions > span { margin-left:auto; color:var(--muted); font-size:10px; }
.customer-whatsapp-number { display:block; margin-top:4px; color:var(--muted); font-size:11px; }
.button.whatsapp-action { border-color:#25d366; background:#128c4a; color:#fff; }
.button.whatsapp-action:hover { border-color:#5aee91; background:#0f7b40; color:#fff; }
.button.whatsapp-action:disabled { border-color:var(--line); background:var(--surface-soft); color:var(--muted); opacity:.72; }
.customer-control-link { color:var(--blue); cursor:pointer; font-weight:850; text-decoration:underline; text-decoration-color:transparent; text-underline-offset:3px; }
.customer-control-link:hover,.customer-control-link:focus-visible { color:var(--accent); outline:0; text-decoration-color:currentColor; }
.customer-control-link-block { display:inline-block; }
.operation-customer-link { overflow:hidden; max-width:100%; text-overflow:ellipsis; white-space:nowrap; }
.operation-customer-inline { display:flex; align-items:center; flex-wrap:wrap; gap:5px; margin-top:5px; font-size:10px; }
.operation-customer-inline b { color:var(--ink); }
.operation-customer-inline i,.operation-customer-inline em { padding:2px 6px; border-radius:999px; font-style:normal; font-weight:800; }
.operation-customer-inline i[role="button"] { color:#fff; background:#128c4a; cursor:pointer; }
.operation-customer-inline em { color:var(--muted); background:var(--surface-soft); }
.operation-customer-contact { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-top:12px; }
.operation-customer-balance { display:grid; gap:1px; min-width:110px; padding:6px 10px; border:1px solid var(--line); border-radius:8px; background:var(--surface-soft); }
.operation-customer-balance small { color:var(--muted); font-size:9px; font-weight:900; text-transform:uppercase; }
.operation-customer-balance strong { color:var(--ink); font-size:14px; }
.owner-queue-customer-contact { display:flex; align-items:center; flex-wrap:wrap; gap:7px; margin-top:5px; }
.owner-queue-customer-contact a:first-child { color:var(--link); font-weight:900; }
.owner-queue-customer-contact em { color:var(--ink); font-style:normal; font-weight:900; }
.owner-queue-customer-contact .whatsapp-action { padding:2px 7px; border-radius:999px; color:#fff; background:#128c4a; font-size:10px; font-weight:900; }
.owner-queue-customer-contact i { color:var(--muted); font-size:10px; font-style:normal; }
.customer-card-expansion:empty { display:none; }
.customer-card-expansion:not(:empty) { padding:0 16px 16px; border-top:1px solid var(--line); }
.customer-card-editor { margin:16px 0 0; box-shadow:none; }
.customer-editor-tabs { display:flex; flex-wrap:wrap; gap:7px; margin-top:15px; padding:7px; border:1px solid var(--line); border-radius:8px; background:var(--surface-soft); }
.customer-editor-tabs button { flex:1 1 0; min-width:118px; min-height:42px; padding:8px 14px; border:1px solid transparent; border-radius:6px; background:transparent; color:var(--muted); font-size:12px; font-weight:850; }
.customer-editor-tabs button:hover { color:var(--ink); background:var(--surface); }
.customer-editor-tabs button.active { border-color:var(--accent); color:var(--ink); background:var(--surface); box-shadow:inset 0 -2px var(--accent); }
.customer-tab-panel { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; margin:0; }
.customer-tab-panel.hidden { display:none; }
.customer-tab-panel .full { grid-column:1 / -1; }
.customer-tab-panel.customer-pricing { display:grid; grid-template-columns:1fr; }
.customer-tab-panel.editor-actions { display:flex; }
.customer-control-panel { gap:16px; padding:17px; background:linear-gradient(145deg,var(--surface-soft),color-mix(in srgb,var(--surface) 84%,var(--accent) 3%)); }
.customer-control-panel > legend { padding:0 8px; color:var(--ink); font-size:13px; }
.customer-control-intro { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; min-width:0; padding:4px 2px 2px; }
.customer-control-intro > div:first-child { min-width:0; }
.customer-control-intro h4,.customer-control-card-head h4 { margin:4px 0 6px; color:var(--ink); font-size:18px; line-height:1.2; }
.customer-control-intro p,.customer-control-card-head p { max-width:760px; margin:0; color:var(--muted); font-size:11px; line-height:1.55; }
.customer-control-badge { flex:0 0 auto; padding:7px 11px; border:1px solid var(--line-strong); border-radius:999px; color:var(--ink-soft); background:var(--surface); font-size:10px; font-weight:900; text-transform:uppercase; }
.customer-control-badge.is-accent { border-color:color-mix(in srgb,var(--accent) 52%,var(--line)); color:var(--accent); background:color-mix(in srgb,var(--accent) 8%,var(--surface)); }
.customer-access-options { grid-template-columns:repeat(4,minmax(0,1fr)); gap:11px; }
.customer-access-option { align-items:flex-start; min-height:104px!important; padding:16px!important; }
.customer-access-option input,.customer-feature-switch input { flex:0 0 auto; margin-top:2px; }
.customer-access-option span,.customer-feature-switch span { display:grid; min-width:0; gap:5px; }
.customer-access-option strong,.customer-feature-switch strong { color:var(--ink); font-size:13px; line-height:1.35; }
.customer-access-option small,.customer-feature-switch small { color:var(--muted); font-size:10px; line-height:1.5; }
.customer-feature-switch { align-items:flex-start; align-self:stretch; min-height:72px; padding:14px 16px; }
.customer-control-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
.referral-control-fields { padding:15px; border:1px solid var(--line); border-radius:8px; background:var(--surface); }
.customer-balance-intro { align-items:stretch; }
.customer-balance-current { display:grid; flex:0 0 min(310px,34%); align-content:center; min-width:230px; padding:15px 18px; border:1px solid color-mix(in srgb,var(--good) 48%,var(--line)); border-left:4px solid var(--good); border-radius:9px; background:color-mix(in srgb,var(--good) 7%,var(--surface)); }
.customer-balance-current small,.customer-balance-current span { color:var(--muted); font-size:9px; font-weight:850; text-transform:uppercase; }
.customer-balance-current strong { margin:4px 0 3px; color:var(--good); font-size:26px; font-variant-numeric:tabular-nums; line-height:1; }
.customer-control-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.customer-control-card { display:flex; min-width:0; min-height:330px; flex-direction:column; gap:15px; padding:17px; border:1px solid var(--line); border-top:3px solid var(--line-strong); border-radius:9px; background:var(--surface); }
.customer-adjustment-card { border-top-color:var(--accent); }
.customer-control-card-head { min-height:78px; }
.customer-control-card .customer-control-fields { margin-top:0; }
.customer-control-action { width:100%; min-height:48px; margin-top:auto; }
.customer-name-history { min-width:0; margin-top:3px; border:1px solid var(--line); border-radius:8px; background:var(--surface); }
.customer-name-history > summary { display:flex; min-height:46px; align-items:center; justify-content:space-between; gap:12px; padding:10px 12px; color:var(--ink); cursor:pointer; font-size:12px; font-weight:900; list-style:none; }
.customer-name-history > summary::-webkit-details-marker { display:none; }
.customer-name-history > summary::before { color:var(--accent); content:"+"; font-size:18px; line-height:1; }
.customer-name-history[open] > summary::before { content:"−"; }
.customer-name-history-list { display:grid; max-height:300px; gap:7px; padding:0 12px 12px; overflow:auto; overscroll-behavior:contain; }
.customer-name-history-list > p { margin:0; padding:12px; border:1px dashed var(--line); border-radius:7px; color:var(--muted); background:var(--surface-soft); text-align:center; }
.customer-name-history-item { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:10px 11px; border:1px solid var(--line); border-left:3px solid var(--accent); border-radius:7px; background:var(--surface-soft); }
.customer-name-history-item div { min-width:0; }
.customer-name-history-item strong,.customer-name-history-item small { display:block; overflow-wrap:anywhere; }
.customer-name-history-item strong { color:var(--ink); font-size:12px; }
.customer-name-history-item small,.customer-name-history-item time { margin-top:3px; color:var(--muted); font-size:9px; }
.customer-name-history-item time { flex:0 0 auto; margin:0; text-align:right; }
.customer-wallet-history { min-width:0; margin-top:4px; padding-top:16px; border-top:1px solid var(--line); }
.customer-wallet-history-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; }
.customer-wallet-history-head h4 { margin:4px 0 5px; color:var(--ink); font-size:17px; }
.customer-wallet-history-head p { max-width:720px; margin:0; color:var(--muted); font-size:11px; line-height:1.5; }
.customer-wallet-history-actions { display:flex; align-items:center; gap:8px; }
.customer-wallet-history-list { display:grid; max-height:430px; gap:8px; margin-top:13px; padding-right:4px; overflow:auto; overscroll-behavior:contain; }
.customer-wallet-history-item { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:14px; padding:12px 13px; border:1px solid var(--line); border-left:4px solid var(--line-strong); border-radius:7px; background:var(--surface); }
.customer-wallet-history-main { min-width:0; }
.customer-wallet-history-main > div { display:flex; align-items:center; flex-wrap:wrap; gap:7px; }
.customer-wallet-history-type { color:var(--muted); font-size:9px; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.customer-wallet-history-main > strong { display:block; margin-top:7px; color:var(--ink); font-size:13px; }
.customer-wallet-history-main p { margin:3px 0 0; overflow-wrap:anywhere; color:var(--ink-soft); font-size:11px; line-height:1.45; }
.customer-wallet-history-main > small { display:flex; flex-wrap:wrap; gap:6px 14px; margin-top:7px; color:var(--muted); font-size:9px; }
.customer-wallet-history-main code { color:var(--link); font:inherit; font-weight:800; }
.customer-wallet-history-amount { min-width:126px; text-align:right; }
.customer-wallet-history-amount > strong { display:block; font-size:17px; }
.customer-wallet-history-amount small,.customer-wallet-history-amount b { display:block; }
.customer-wallet-history-amount small { margin-top:8px; color:var(--muted); font-size:9px; font-weight:800; text-transform:uppercase; }
.customer-wallet-history-amount b { margin-top:2px; color:var(--ink); font-size:12px; }
.customer-wallet-history-empty { display:flex; min-height:92px; align-items:center; justify-content:center; gap:9px; padding:18px; border:1px dashed var(--line-strong); border-radius:7px; color:var(--muted); background:var(--surface-soft); font-size:11px; text-align:center; }
.customer-wallet-history-empty .status-spinner { display:inline-block; width:15px; height:15px; border:2px solid var(--line-strong); border-top-color:var(--good); border-radius:50%; animation:customer-wallet-spin .75s linear infinite; }
@keyframes customer-wallet-spin { to { transform:rotate(360deg); } }
.customer-security-panel { grid-template-columns:1fr; padding:16px; border:1px solid var(--line); border-radius:8px; background:var(--surface-soft); }
.customer-security-panel h4 { margin:4px 0 6px; color:var(--ink); font-size:16px; }
.customer-security-panel p { max-width:720px; margin:0; color:var(--muted); font-size:12px; line-height:1.5; }
.customer-password-reset { display:grid; gap:13px; margin-top:2px; padding-top:16px; border-top:1px solid var(--line); }
.customer-password-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
.customer-password-reset .editor-actions { justify-content:flex-start; margin:0; }
.customer-account-deletion { display:grid; gap:13px; margin-top:2px; padding:16px; border:1px solid color-mix(in srgb, var(--danger) 48%, var(--line)); border-radius:8px; background:color-mix(in srgb, var(--danger) 7%, var(--surface-soft)); }
.customer-account-deletion .editor-actions { justify-content:flex-start; margin:0; }
.customer-editor-actions { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:9px; margin-top:16px; padding-top:15px; border-top:1px solid var(--line); }
.customer-editor-actions .button { min-height:40px; }
.user-editor-mount:empty { display:none; }
.customer-card-empty { display:grid; min-height:190px; place-content:center; border:1px dashed var(--line-strong); border-radius:8px; color:var(--muted); background:var(--surface-soft); text-align:center; }
.customer-editor-overview { display:grid; grid-template-columns:minmax(205px,.72fr) minmax(330px,1.25fr) minmax(250px,1fr); gap:12px; margin-top:14px; }
.customer-editor-overview > div { min-width:0; padding:13px; border:1px solid var(--line); border-radius:7px; background:var(--surface); }
.customer-overview-presence .customer-presence { margin-top:7px; }
.customer-overview-presence p { margin:10px 0 0; color:var(--muted); font-size:10px; line-height:1.55; }
.customer-overview-presence p strong { color:var(--ink-soft); }
.customer-overview-metrics { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; }
.customer-overview-metrics span { min-width:0; padding:8px; border:1px solid var(--line); border-radius:6px; background:var(--surface-soft); }
.customer-overview-metrics small,.customer-overview-metrics strong { display:block; }
.customer-overview-metrics small { color:var(--muted); font-size:9px; font-weight:850; }
.customer-overview-metrics strong { margin-top:4px; color:var(--ink); font-size:16px; font-variant-numeric:tabular-nums; }
.customer-overview-metrics .customer-balance-metric { border-width:1px 1px 1px 4px!important; }
.customer-overview-metrics .customer-balance-metric strong { font-size:18px; }
html[data-ponto-theme="operations"] .customer-balance-metric.is-positive { border-left-color:#48d597!important; background:#102d27!important; }
html[data-ponto-theme="operations"] .customer-balance-metric.is-positive strong { color:#7ee4c3!important; }
html[data-ponto-theme="operations"] .customer-balance-metric.is-negative { border-left-color:#ff6f7c!important; background:#321b25!important; }
html[data-ponto-theme="operations"] .customer-balance-metric.is-negative strong { color:#ff9da6!important; }
.customer-session-panel > div { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.customer-session-panel > div > strong { color:var(--ink); font-size:12px; }
.customer-session-panel ul { display:grid; max-height:142px; gap:6px; margin:9px 0 0; padding:0; overflow:auto; list-style:none; }
.customer-session-panel li { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; padding:7px 8px; border:1px solid var(--line); border-radius:6px; background:var(--surface-soft); }
.customer-session-panel li > span { min-width:0; }
.customer-session-panel li > span:last-child { text-align:right; }
.customer-session-panel strong,.customer-session-panel small,.customer-session-panel b { display:block; }
.customer-session-panel li strong { overflow:hidden; color:var(--ink); font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.customer-session-panel small { margin-top:2px; color:var(--muted); font-size:9px; font-weight:600; }
.customer-session-panel b { color:var(--good); font-size:9px; }
.customer-pricing { gap:16px; }
.customer-pricing-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:14px; }
.customer-pricing-module { min-width:0; padding:13px; border:1px solid var(--line); border-radius:7px; background:var(--surface); }
.customer-pricing-module.custom-mode { border-color:#7dd3fc; box-shadow:inset 0 3px 0 #2563eb; }
.customer-pricing-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding-bottom:11px; border-bottom:1px solid var(--line); }
.customer-pricing-head h4 { margin:2px 0 0; color:var(--ink); font-size:15px; }
.customer-pricing-head label { flex:0 0 150px; font-size:10px; }
.customer-pricing-head select { min-height:36px; padding:7px 9px; }
.customer-pricing-module > .module-discount-control { margin-top:12px; }
.customer-specific-price-editor { min-width:0; margin:16px 0 20px; padding:16px; overflow:hidden; border:1px solid #15803d; border-left:4px solid #22c55e; border-radius:8px; background:var(--surface); box-shadow:0 12px 30px rgba(15,23,42,.08); }
.customer-specific-price-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding-bottom:13px; border-bottom:1px solid var(--line); }
.customer-specific-price-head h3 { margin:3px 0 5px; color:var(--ink); font-size:19px; }
.customer-specific-price-head p { margin:0; color:var(--muted); line-height:1.5; }
.customer-specific-price-controls { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(150px,.75fr); gap:12px; align-items:stretch; padding-top:14px; }
.customer-specific-price-controls > * { min-width:0; }
.customer-specific-price-controls label { min-width:0; margin:0; }
.customer-specific-price-controls select, .customer-specific-price-controls input { width:100%; min-width:0; }
.customer-specific-price-current { display:flex; flex-direction:column; justify-content:center; gap:4px; min-height:58px; padding:10px 12px; border:1px solid var(--line); border-radius:6px; background:var(--soft); }
.customer-specific-price-current { grid-column:1 / -1; }
.customer-specific-price-current strong { color:var(--ink); }
.customer-specific-price-current span { color:var(--muted); font-size:12px; line-height:1.4; }
.customer-specific-price-actions { display:flex; align-items:center; flex-wrap:wrap; gap:9px; padding-top:12px; }
.customer-specific-price-actions small { flex:1 1 330px; color:var(--muted); line-height:1.45; }
.custom-price-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:8px; max-height:430px; margin-top:12px; padding-right:4px; overflow-x:hidden; overflow-y:auto; }
.custom-price-row { display:flex; align-items:center; justify-content:space-between; gap:10px; width:100%; min-width:0; min-height:54px; padding:8px 9px; border:1px solid var(--line); border-radius:6px; background:var(--surface-soft); }
.custom-price-row > span:first-child { min-width:0; }
.custom-price-row strong,.custom-price-row small { display:block; }
.custom-price-row strong { overflow:hidden; color:var(--ink); font-size:12px; line-height:1.25; text-overflow:ellipsis; white-space:normal; }
.custom-price-row small { margin-top:2px; color:var(--muted); font-size:10px; }
.custom-price-row.nested-price-row { margin-left:12px; width:calc(100% - 12px); border-left:3px solid #22c55e; background:var(--surface); }
.custom-price-row.nested-price-row strong { font-size:11px; }
.custom-price-list:has(.feature-customer-pricing) { grid-template-columns:1fr; max-height:760px; }
.customer-price-catalogue-grid { display:grid; grid-column:1 / -1; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.customer-price-product { display:flex; align-items:center; justify-content:space-between; gap:12px; min-width:0; min-height:64px; padding:10px 11px; border:1px solid var(--line); border-radius:7px; background:var(--surface-soft); }
.customer-price-product.nested-price-row { border-left:3px solid #22c55e; }
.customer-price-product-copy { display:grid; min-width:0; gap:3px; }
.customer-price-product-copy strong { overflow:hidden; color:var(--ink); font-size:12px; line-height:1.3; text-overflow:ellipsis; }
.customer-price-product-copy small { color:var(--muted); font-size:10px; font-weight:750; }
.inline-customer-price { flex:0 0 auto; }
.customer-price-value { display:grid; min-width:124px; gap:2px; padding:7px 9px; border:1px solid var(--line-strong); border-radius:7px; color:var(--ink); background:var(--surface); text-align:right; cursor:default; }
.customer-price-value:hover { border-color:#fb923c; }
.customer-price-value.overridden { border-color:#22c55e; background:rgba(34,197,94,.08); }
.customer-price-value span { color:var(--ponto-price,#f97316); font-size:14px; font-weight:950; font-variant-numeric:tabular-nums; }
.customer-price-value small { color:var(--muted); font-size:9px; font-weight:800; white-space:nowrap; }
.customer-price-edit-box { display:flex; align-items:center; gap:5px; padding:5px; border:1px solid #fb923c; border-radius:7px; background:var(--surface); box-shadow:0 8px 24px rgba(15,23,42,.14); }
.customer-price-edit-box b { color:var(--muted); font-size:9px; }
.customer-price-edit-box input { width:92px; min-height:34px; padding:5px 7px; }
.feature-customer-pricing { display:grid; grid-column:1 / -1; gap:12px; margin-top:14px; padding:13px; border:1px solid #22c55e; border-radius:8px; background:var(--surface-soft); }
.feature-customer-pricing-head { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; padding-bottom:12px; border-bottom:1px solid var(--line); }
.feature-customer-pricing-head h4 { margin:2px 0 3px; color:var(--ink); font-size:17px; }
.feature-customer-pricing-head p { max-width:680px; margin:0; color:var(--muted); font-size:11px; line-height:1.45; }
.feature-customer-pricing-head label { flex:0 0 min(320px,38%); }
.feature-pricing-unit { display:grid; gap:10px; }
.feature-pricing-unit-summary { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; padding:10px 12px; border:1px solid var(--line); border-radius:7px; background:var(--surface); }
.feature-pricing-unit-summary div { display:grid; gap:3px; }
.feature-pricing-unit-summary strong { color:var(--ink); font-size:14px; }
.feature-pricing-unit-summary small,.feature-pricing-unit-summary > span { color:var(--muted); font-size:10px; line-height:1.4; }
.feature-pricing-unit-summary > span { max-width:42%; text-align:right; }
.feature-pricing-workflows { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.feature-pricing-workflow { min-width:0; overflow:hidden; border:1px solid var(--line); border-radius:8px; background:var(--surface); }
.feature-pricing-workflow.patch-workflow { border-top:3px solid #f97316; }
.feature-pricing-workflow.options-workflow { border-top:3px solid #22c55e; }
.feature-pricing-workflow > header { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:11px; border-bottom:1px solid var(--line); }
.feature-pricing-workflow > header > div:first-child { display:grid; grid-template-columns:24px minmax(0,1fr); align-items:center; gap:2px 8px; min-width:0; }
.feature-pricing-workflow > header > div:first-child > span { display:grid; grid-row:1 / 3; width:23px; height:23px; place-items:center; border-radius:50%; color:#fff; background:#f97316; font-size:10px; font-weight:950; }
.feature-pricing-workflow.options-workflow > header > div:first-child > span { background:#0f9f91; }
.feature-pricing-workflow header strong { color:var(--ink); font-size:12px; }
.feature-pricing-workflow header small { color:var(--muted); font-size:9px; }
.feature-pricing-workflow > ul { margin:0; padding:9px 14px 9px 30px; border-bottom:1px solid var(--line); color:var(--muted); font-size:10px; line-height:1.45; }
.feature-pricing-options { display:grid; gap:0; }
.feature-pricing-option { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:54px; padding:8px 10px; border-bottom:1px solid var(--line); }
.feature-pricing-option:last-child { border-bottom:0; }
.feature-pricing-option > span { display:grid; min-width:0; gap:2px; }
.feature-pricing-option > span strong { color:var(--ink); font-size:11px; }
.feature-pricing-option > span small { color:var(--muted); font-size:9px; line-height:1.35; }
.operation-file-receipt { display:block; width:max-content; max-width:100%; margin-top:4px; padding:3px 7px; border-radius:999px; font-weight:900; }
.operation-file-receipt.is-downloaded { color:#6ee7b7; background:rgba(5,150,105,.18); }
.operation-file-receipt.is-pending { color:#fbbf24; background:rgba(217,119,6,.17); }
.custom-price-input { display:flex; align-items:center; flex:0 0 105px; gap:5px; }
.custom-price-input b { color:var(--muted); font-size:10px; }
.custom-price-input input { width:82px; min-height:34px; padding:6px 7px; text-align:right; }
.customer-price-value { min-width:132px; }
.customer-price-value small { color:var(--accent-deep); font-weight:900; }
.service-admin-layout { display: grid; grid-template-columns: minmax(250px, .32fr) minmax(0, 1fr); gap: 17px; margin-top: 18px; }
.service-admin-layout-wide { grid-template-columns:minmax(0,1fr); }
.service-admin-layout-wide .service-admin-rows { grid-template-columns:repeat(2,minmax(0,1fr)); max-height:none; }
.queue-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 18px; }
.queue-card { min-width: 0; padding: 14px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface-soft); }
.queue-card-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
.queue-card-head h3 { margin: 2px 0 0; font-size: 18px; }
.operations-summary { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; margin-top:18px; }
.operation-metric { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:72px; padding:13px 14px; border:1px solid var(--line); border-top:3px solid #94a3b8; border-radius:8px; background:var(--surface); color:var(--ink-soft); text-align:left; transition:border-color .15s ease,background .15s ease; }
.operation-metric:hover,.operation-metric.active { border-color:#fdba74; background:var(--accent-soft); }.operation-metric.review { border-top-color:var(--accent); }.operation-metric.waiting { border-top-color:#c2410c; }.operation-metric.progress { border-top-color:var(--blue); }.operation-metric.ready { border-top-color:var(--good); }
.operation-metric span { font-size:12px; font-weight:850; }.operation-metric strong { color:var(--navy); font-size:26px; line-height:1; }
.operations-workspace { display:block; margin-top:16px; }
.operations-workspace.detail-open .operations-list-panel { display:none; }
.operations-workspace:not(.detail-open) .operation-detail { display:none; }
.operations-list-panel,.operation-detail { min-width:0; border:1px solid var(--line); border-radius:8px; background:var(--surface); }
.operations-list-panel { overflow:hidden; }.operations-filters { display:grid; grid-template-columns:minmax(0,1fr) repeat(3,minmax(118px,.48fr)); gap:8px; padding:12px; border-bottom:1px solid var(--line); background:var(--surface-soft); }.operations-filters input,.operations-filters select { min-height:38px; padding:7px 9px; font-size:12px; }
.operations-list { display:grid; max-height:740px; overflow:auto; }.operation-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; width:100%; padding:13px; border:0; border-bottom:1px solid var(--line); border-left:4px solid #cbd5e1; background:#fff; color:var(--ink); text-align:left; }.operation-row:last-child { border-bottom:0; }.operation-row:hover { background:#fffaf5; }.operation-row.selected { background:var(--accent-soft); border-left-color:var(--accent); }.operation-row.review { border-left-color:var(--accent); }.operation-row.customer { border-left-color:#c2410c; }.operation-row.work { border-left-color:var(--blue); }.operation-row.ready { border-left-color:var(--good); }.operation-row.closed { border-left-color:#98a2b3; opacity:.72; }
.operation-row-main { min-width:0; }.operation-row-line { display:flex; align-items:center; gap:6px; min-width:0; }.operation-row-line b { overflow:hidden; color:var(--navy); font-size:13px; text-overflow:ellipsis; white-space:nowrap; }.operation-type,.operation-action { display:inline-flex; align-items:center; flex:0 0 auto; padding:3px 6px; border-radius:999px; font-size:9px; font-style:normal; font-weight:900; letter-spacing:.04em; text-transform:uppercase; }.operation-type { color:#1d4ed8; background:#eff6ff; }.operation-type.files { color:#a8430a; background:#fff2e8; }.operation-action.review { color:#9a3412; background:#ffedd5; }.operation-action.customer { color:#9f1239; background:#ffe4e6; }.operation-action.waiting { color:#9a3412; background:#fff7ed; }.operation-action.work { color:#1d4ed8; background:#dbeafe; }.operation-action.ready { color:#067647; background:#dcfae6; }.operation-action.closed { color:#667085; background:#eef2f6; }
.operation-service,.operation-customer { display:block; overflow:hidden; margin-top:4px; text-overflow:ellipsis; white-space:nowrap; }.operation-service { color:var(--ink-soft); font-size:12px; font-weight:800; }.operation-customer { color:var(--muted); font-size:11px; }.operation-row-meta { display:grid; align-content:center; min-width:100px; gap:4px; text-align:right; }.operation-row-meta strong { color:var(--navy); font-size:12px; }.operation-row-meta small { max-width:130px; color:var(--muted); font-size:10px; line-height:1.25; }.empty-operation-list { display:grid; min-height:220px; place-content:center; gap:5px; padding:20px; color:var(--muted); text-align:center; }.empty-operation-list strong { color:var(--ink); }
.operation-table-head,.operation-table-row { display:grid; grid-template-columns:88px minmax(170px,1.2fr) 102px 102px minmax(170px,1fr) minmax(165px,.95fr) 126px 76px 12px; gap:6px; align-items:center; min-width:1120px; }
.operation-table-entry { min-width:1120px; }
.operation-table-entry.operation-table-row { min-width:1120px; }
.operation-pagination { min-width:0; margin:12px; width:auto; }
.operation-table-head { position:sticky; top:0; z-index:2; padding:8px 10px; border-bottom:1px solid var(--line); color:var(--muted); background:var(--surface-soft); font-size:9px; font-weight:900; letter-spacing:.045em; text-transform:uppercase; }
.operation-table-row { width:100%; min-height:54px; padding:7px 10px; border:0; border-bottom:1px solid var(--line); border-left:4px solid #94a3b8; color:var(--ink); background:var(--surface); font:inherit; text-align:left; cursor:pointer; }
.operation-table-row:hover { background:var(--surface-soft); }.operation-table-row.selected { background:var(--accent-soft); border-left-color:var(--accent); }.operation-table-row.review { border-left-color:var(--accent); }.operation-table-row.automation-failed { border-left-color:#d92d20; background:color-mix(in srgb,#d92d20 5%,var(--surface)); }.operation-table-row.customer,.operation-table-row.waiting { border-left-color:#c2410c; }.operation-table-row.work { border-left-color:var(--blue); }.operation-table-row.ready { border-left-color:var(--good); }.operation-table-row.closed { border-left-color:#98a2b3; opacity:.75; }
.operation-table-row strong,.operation-table-row small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.operation-table-row strong { color:var(--ink); font-size:11px; }.operation-table-row small { margin-top:2px; }.operation-table-row small,.operation-table-row time { color:var(--muted); font-size:9px; }.operation-table-row time { display:block; margin:0; white-space:nowrap; font-variant-numeric:tabular-nums; }.operation-table-service { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:6px; min-width:0; }.operation-table-service strong { min-width:0; }.operation-table-vehicle { min-width:0; }.operation-table-vehicle .operation-vin-primary { color:var(--ponto-selected,var(--ink)); font-variant-numeric:tabular-nums; letter-spacing:.015em; }.operation-table-vehicle .operation-vehicle-pending { color:var(--muted); font-size:10px; }.operation-table-status { display:grid; justify-items:start; gap:3px; }.operation-table-status .operation-automation-error-summary { max-width:122px; color:#d92d20; font-weight:800; }.operation-table-status .operation-result-duration { color:var(--good); font-weight:900; }.operation-table-total { color:var(--ponto-price); font-size:13px; font-weight:900; font-variant-numeric:tabular-nums; text-align:right; }.operation-table-open { display:grid; place-items:center; min-width:28px; min-height:36px; padding:0; border:0; color:var(--accent); background:transparent; font:inherit; font-size:21px; line-height:1; cursor:pointer; }
.operation-unread { display:inline-flex!important; padding:3px 6px; border-radius:999px; color:#fff!important; background:#c2415a; font-size:9px!important; font-weight:900; line-height:1.2; text-transform:uppercase; }
.operation-detail { padding:16px; max-height:740px; overflow:auto; }.empty-operation-detail { display:grid; min-height:360px; place-items:center; border-style:dashed; border-color:var(--line-strong); background:var(--surface-soft); color:var(--muted); text-align:center; }.empty-operation-detail strong { display:block; color:var(--ink); font-size:17px; }.empty-operation-detail p { margin:5px 0 0; }.operation-detail-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; padding-bottom:13px; border-bottom:1px solid var(--line); }.operation-detail-head h3 { margin:1px 0 0; color:var(--navy); font-size:18px; }.operation-detail-head p { margin:5px 0 0; color:var(--muted); font-size:12px; }.operation-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-top:12px; }.operation-facts > div { min-width:0; padding:8px 9px; border:1px solid var(--line); border-radius:6px; background:var(--surface-soft); }.operation-facts span,.operation-facts b { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.operation-facts span { color:var(--muted); font-size:9px; font-weight:900; letter-spacing:.05em; text-transform:uppercase; }.operation-facts b { margin-top:2px; color:var(--ink); font-size:12px; }
.operation-section { padding:13px 0; border-bottom:1px solid var(--line); }.operation-section:last-child { border-bottom:0; padding-bottom:0; }.operation-section-head { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom:9px; }.operation-section-head h4 { margin:0; color:var(--navy); font-size:14px; }.operation-section-head small { color:var(--muted); font-size:10px; text-align:right; }.operation-status-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }.operation-status-form label,.operation-message-form label { color:var(--ink-soft); font-size:10px; font-weight:900; letter-spacing:.04em; text-transform:uppercase; }.operation-status-form select,.operation-status-form textarea,.operation-message-form textarea,.operation-delivery-form textarea { min-height:35px; margin-top:4px; padding:7px 8px; font-size:12px; }.operation-status-form textarea,.operation-message-form textarea,.operation-delivery-form textarea { min-height:62px; resize:vertical; }.operation-status-form .full { grid-column:1 / -1; }.operation-status-form .button { justify-self:start; min-height:36px; font-size:12px; }
.operation-action.automation-failed { color:#b42318; background:#fee4e2; }
.operation-automation-panel { display:grid; gap:12px; margin:16px 0 0; padding:16px!important; border:1px solid color-mix(in srgb,var(--blue) 45%,var(--line))!important; border-radius:9px; background:color-mix(in srgb,var(--blue) 5%,var(--surface)); }
.operation-automation-panel.is-failed { border-color:color-mix(in srgb,#d92d20 72%,var(--line))!important; background:color-mix(in srgb,#d92d20 7%,var(--surface)); }
.operation-automation-panel.is-completed { border-color:color-mix(in srgb,var(--good) 62%,var(--line))!important; background:color-mix(in srgb,var(--good) 6%,var(--surface)); }
.operation-automation-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.operation-automation-head > div { display:grid; gap:3px; min-width:0; }
.operation-automation-head span,.operation-automation-error > small,.operation-automation-history > summary { color:var(--muted); font-size:9px; font-weight:950; letter-spacing:.065em; text-transform:uppercase; }
.operation-automation-head h4 { margin:0; color:var(--ink); font-size:18px; }
.operation-automation-head p { margin:0; color:var(--muted); font-size:11px; line-height:1.4; }
.operation-automation-head > strong { flex:0 0 auto; padding:6px 9px; border:1px solid var(--line-strong); border-radius:999px; color:var(--blue); background:var(--surface); font-size:10px; letter-spacing:.05em; }
.operation-automation-panel.is-failed .operation-automation-head > strong { color:#b42318; border-color:#fda29b; background:#fee4e2; }
.operation-automation-panel.is-completed .operation-automation-head > strong { color:#067647; border-color:#6ce9a6; background:#dcfae6; }
.operation-automation-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.operation-automation-facts > span { min-width:0; padding:9px 10px; border:1px solid var(--line); border-radius:7px; background:var(--surface); }
.operation-automation-facts small,.operation-automation-facts b { display:block; }
.operation-automation-facts small { color:var(--muted); font-size:9px; font-weight:900; letter-spacing:.045em; text-transform:uppercase; }
.operation-automation-facts b { margin-top:3px; overflow:hidden; color:var(--ink); font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
.operation-automation-error { display:grid; gap:5px; padding:11px 12px; border:1px solid #fda29b; border-left:4px solid #d92d20; border-radius:7px; background:color-mix(in srgb,#d92d20 8%,var(--surface)); }
.operation-automation-error > small { color:#b42318; }
.operation-automation-error pre { max-height:190px; margin:0; overflow:auto; color:var(--ink); font-family:Consolas,"Courier New",monospace; font-size:11px; line-height:1.5; overflow-wrap:anywhere; white-space:pre-wrap; }
.operation-automation-history { border:1px solid var(--line); border-radius:7px; background:var(--surface); }
.operation-automation-history > summary { padding:10px 11px; color:var(--ink-soft); cursor:pointer; }
.operation-automation-history ol { display:grid; gap:0; margin:0; padding:0; border-top:1px solid var(--line); list-style:none; }
.operation-automation-history li { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; padding:9px 11px; border-bottom:1px solid var(--line); }
.operation-automation-history li:last-child { border-bottom:0; }
.operation-automation-history li > div { display:grid; gap:2px; min-width:0; }
.operation-automation-history li b { color:var(--ink); font-size:11px; }
.operation-automation-history li span,.operation-automation-history time { color:var(--muted); font-size:10px; line-height:1.4; }
.operation-automation-history li span { overflow-wrap:anywhere; }
.operation-automation-history time { white-space:nowrap; }
.operation-automation-repeat { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-top:2px; }
.operation-automation-repeat p { margin:0; color:var(--ink-soft); font-size:11px; line-height:1.45; }
.operation-automation-repeat .button { flex:0 0 auto; min-width:164px; }
.operation-automation-screenshot { display:grid; grid-template-columns:160px minmax(0,1fr); align-items:center; gap:12px; overflow:hidden; padding:8px; border:1px solid var(--line); border-radius:8px; color:var(--ink); background:var(--surface); text-decoration:none; }
.operation-automation-screenshot img { display:block; width:160px; height:90px; object-fit:cover; border:1px solid var(--line); border-radius:6px; background:#05070b; }
.operation-automation-screenshot span,.operation-automation-screenshot small { display:block; }
.operation-automation-screenshot span { font-size:12px; font-weight:850; }
.operation-automation-screenshot small { margin-top:4px; color:var(--muted); font-size:10px; font-weight:600; }
.feature-priority-panel { padding:15px 0 14px; border-bottom:1px solid var(--line); }
.feature-priority-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.feature-priority-item { min-width:0; padding:11px 12px; border:1px solid color-mix(in srgb,var(--accent) 44%,var(--line)); border-radius:7px; background:color-mix(in srgb,var(--accent) 7%,var(--surface)); }
.feature-priority-item span,.feature-priority-item b { display:block; }
.feature-priority-item span { color:var(--muted); font-size:9px; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.feature-priority-item b { margin-top:4px; overflow-wrap:anywhere; color:var(--ink); font-size:13px; line-height:1.35; }
.feature-vin-priority { grid-column:span 2; border-color:color-mix(in srgb,var(--orange) 70%,var(--line)); background:color-mix(in srgb,var(--orange) 10%,var(--surface)); }
.feature-vin-priority > div { display:flex; align-items:center; gap:8px; }
.feature-vin-priority b { margin:4px 0 0; color:var(--ponto-price); font-family:Consolas,"Courier New",monospace; font-size:16px; letter-spacing:.045em; }
.operation-vin-copy { display:grid; flex:0 0 auto; place-items:center; width:30px; height:30px; padding:0; border:1px solid color-mix(in srgb,var(--orange) 60%,var(--line)); border-radius:6px; color:var(--orange); background:var(--surface); cursor:pointer; font-size:17px; line-height:1; }
.operation-vin-copy:hover,.operation-vin-copy.copied { color:#fff; border-color:var(--orange); background:var(--orange); }
.feature-options-priority { grid-column:span 2; }
.feature-option-list { display:flex; flex-wrap:wrap; gap:7px; margin:8px 0 0; padding:0; list-style:none; }
.feature-option-list li { padding:6px 9px; border:1px solid color-mix(in srgb,var(--accent) 50%,var(--line)); border-radius:999px; color:var(--ink); background:var(--surface); font-size:11px; font-weight:850; line-height:1.25; overflow-wrap:anywhere; }
.order-price-adjustment { margin-top:18px; padding:18px!important; border:1px solid color-mix(in srgb,var(--orange) 55%,var(--line))!important; border-radius:10px; background:color-mix(in srgb,var(--orange) 5%,var(--surface)); }
.order-price-adjustment .operation-section-head { align-items:flex-start; }
.order-price-adjustment .operation-section-head h4 { margin-top:3px; font-size:18px; }
.order-price-adjustment fieldset { min-width:0; margin:0; padding:12px; border:1px solid var(--line); border-radius:8px; }
.order-price-adjustment legend { padding:0 7px; color:var(--ink); font-size:12px; font-weight:850; }
.order-pricing-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
.order-pricing-option { display:grid!important; grid-template-columns:18px minmax(0,1fr) auto!important; align-items:center; gap:10px; min-width:0; padding:10px 11px; border:1px solid var(--line); border-radius:7px; background:var(--surface-soft); cursor:pointer; }
.order-pricing-option:has(input:checked) { border-color:var(--orange); background:color-mix(in srgb,var(--orange) 10%,var(--surface)); }
.order-pricing-option input[type="checkbox"] { position:static!important; width:18px!important; min-width:18px!important; height:18px!important; margin:0!important; opacity:1!important; appearance:auto!important; }
.order-pricing-option-copy { display:grid!important; gap:2px; min-width:0; width:auto!important; }
.order-pricing-option b { overflow:hidden; color:var(--ink); font-size:13px; line-height:1.3; text-overflow:ellipsis; white-space:nowrap; }
.order-pricing-option em { overflow:hidden; color:var(--muted); font-size:10px; font-style:normal; line-height:1.2; text-overflow:ellipsis; white-space:nowrap; }
.order-pricing-option-price { justify-self:end; color:var(--orange); font-size:12px; font-weight:900; white-space:nowrap; }
.order-pricing-controls { display:grid; grid-template-columns:repeat(2,minmax(180px,1fr)); gap:9px; margin-top:10px; }
.order-pricing-controls label { color:var(--ink-soft); font-size:10px; font-weight:850; letter-spacing:.04em; text-transform:uppercase; }
.order-pricing-controls input,.order-pricing-controls select { min-height:39px; margin-top:5px; }
.order-pricing-controls [hidden] { display:none!important; }
.order-price-quote { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:10px; }
.order-price-quote span { padding:10px 12px; border:1px solid var(--line); border-radius:8px; background:var(--surface); }
.order-price-quote small,.order-price-quote strong { display:block; }
.order-price-quote small { color:var(--muted); font-size:9px; font-weight:900; letter-spacing:.05em; text-transform:uppercase; }
.order-price-quote strong { margin-top:2px; color:var(--ink); font-size:18px; }
.order-price-quote .is-charge { border-color:color-mix(in srgb,var(--orange) 70%,var(--line)); }.order-price-quote .is-charge strong { color:var(--orange); }
.order-price-quote .is-refund { border-color:color-mix(in srgb,var(--green) 70%,var(--line)); }.order-price-quote .is-refund strong { color:var(--green); }
.order-pricing-actions { display:flex; align-items:center; gap:12px; margin-top:12px; }
.order-pricing-actions .operation-form-status { margin:0; }
.order-price-adjustment { padding:0!important; overflow:hidden; }
.order-price-adjustment-summary { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 18px; cursor:pointer; list-style:none; }
.order-price-adjustment-summary::-webkit-details-marker { display:none; }
.order-price-adjustment-summary > div { display:grid; gap:3px; min-width:0; }
.order-price-adjustment-summary h4 { margin:0!important; color:var(--ink); }
.order-price-adjustment-summary small { color:var(--muted); font-size:11px; line-height:1.35; }
.order-price-adjustment-toggle { flex:0 0 auto; padding:8px 11px; border:1px solid color-mix(in srgb,var(--orange) 65%,var(--line)); border-radius:6px; color:var(--orange); background:var(--accent-soft); font-size:11px; font-weight:900; }
.order-price-adjustment[open] .order-price-adjustment-summary { border-bottom:1px solid var(--line); background:color-mix(in srgb,var(--orange) 7%,var(--surface)); }
.order-price-adjustment .open-label { display:none; }
.order-price-adjustment[open] .closed-label { display:none; }
.order-price-adjustment[open] .open-label { display:inline; }
.order-price-adjustment form { padding:14px 18px 18px; }
.order-price-adjustment-intro { margin:0 0 12px; color:var(--ink-soft); font-size:12px; line-height:1.45; }
html[data-ponto-theme="operations"] .order-price-adjustment { border-color:#a94c2b!important; background:#171b25!important; }
html[data-ponto-theme="operations"] .order-price-adjustment-summary h4,
html[data-ponto-theme="operations"] .order-pricing-option b,
html[data-ponto-theme="operations"] .order-price-adjustment legend { color:#f2f6fb!important; }
html[data-ponto-theme="operations"] .order-price-adjustment-summary small,
html[data-ponto-theme="operations"] .order-price-adjustment-intro,
html[data-ponto-theme="operations"] .order-pricing-controls label { color:#b6c3d3!important; }
html[data-ponto-theme="operations"] .order-price-adjustment fieldset,
html[data-ponto-theme="operations"] .order-pricing-option { border-color:#35465e!important; background:#111b29!important; }
html[data-ponto-theme="operations"] .order-pricing-option:has(input:checked) { border-color:#ff7438!important; background:#2b1d19!important; }
html[data-ponto-theme="operations"] .order-pricing-option em { color:#9fb0c5!important; }
html[data-ponto-theme="operations"] .order-pricing-option-price { color:#ffb37b!important; }
html[data-ponto-theme="operations"] .order-pricing-option input { accent-color:#ff7438; }
html[data-ponto-theme="operations"] .order-price-adjustment input,
html[data-ponto-theme="operations"] .order-price-adjustment select { color:#f2f6fb!important; border-color:#49617e!important; background:#0d1521!important; }
.operation-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }.operation-fields > div { min-width:0; padding:7px 8px; border:1px solid var(--line); border-radius:6px; background:var(--surface-soft); }.operation-fields span,.operation-fields b { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.operation-fields span { color:var(--muted); font-size:9px; font-weight:900; letter-spacing:.04em; text-transform:uppercase; }.operation-fields b { margin-top:2px; color:var(--ink-soft); font-size:11px; }.operation-file-groups { display:grid; gap:12px; }.operation-file-group { padding:10px; border:1px solid var(--line); border-radius:8px; background:var(--surface-soft); }.operation-file-group.customer-upload-group { border-left:4px solid #4e9bff; }.operation-file-group.ponto-delivery-group { border-left:4px solid #23b47e; background:linear-gradient(90deg,#effcf5,transparent); }.operation-file-group-head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:8px; }.operation-file-group-head > div { display:grid; gap:2px; }.operation-file-group-head b { color:var(--ink); font-size:12px; }.operation-file-group-head small { color:var(--muted); font-size:10px; }.operation-file-group-head > strong { display:grid; min-width:24px; height:24px; place-items:center; border-radius:999px; color:#155eaf; background:#e8f1ff; font-size:11px; }.ponto-delivery-group .operation-file-group-head > strong { color:#08734d; background:#d6f4e5; }.operation-files { display:grid; gap:6px; margin:0; padding:0; list-style:none; }.operation-files li { display:flex; align-items:baseline; justify-content:space-between; gap:10px; padding:7px 8px; border:1px solid var(--line); border-radius:6px; background:var(--surface-soft); }.operation-files a { overflow:hidden; color:var(--blue); font-size:12px; font-weight:850; text-decoration:none; text-overflow:ellipsis; white-space:nowrap; }.operation-files span { flex:0 0 auto; color:var(--muted); font-size:10px; }
.operation-files .operation-file-row { display:grid; grid-template-columns:minmax(190px,.7fr) minmax(240px,1.3fr) auto; align-items:center; gap:14px; min-height:68px; padding:10px 12px; border-left:4px solid #94a3b8; white-space:normal; }
.operation-files .operation-file-download-row { color:inherit; text-decoration:none; cursor:pointer; transition:border-color .16s ease,background .16s ease,transform .16s ease; }
.operation-files .operation-file-download-row:hover { transform:translateY(-1px); border-color:#2f78d0; }
.operation-file-kind,.operation-file-copy { display:grid; min-width:0; gap:3px; }
.operation-files .operation-file-kind b { justify-self:start; max-width:100%; padding:4px 7px; border-radius:5px; color:#344054; background:#e8edf3; font-size:10px; font-weight:950; letter-spacing:.035em; line-height:1.25; overflow-wrap:anywhere; white-space:normal; }
.operation-files .operation-file-kind small,.operation-files .operation-file-copy small { color:var(--muted); font-size:9px; line-height:1.3; overflow-wrap:anywhere; white-space:normal; }
.operation-files .operation-file-copy strong { overflow:hidden; color:var(--ink); font-size:12px; line-height:1.35; overflow-wrap:anywhere; text-overflow:ellipsis; white-space:normal; }
.operation-files .is-fa { border-left-color:#2f78d0; }.operation-files .is-fa .operation-file-kind b { color:#155fae; background:#dcecff; }
.operation-files .is-svt { border-left-color:#0f9e9a; }.operation-files .is-svt .operation-file-kind b { color:#087671; background:#d9f5f2; }
.operation-files .is-second-fa { border-left-color:#ed6d2d; }.operation-files .is-second-fa .operation-file-kind b { color:#a73e0b; background:#ffeadc; }
.operation-files .is-delivery,.operation-files .is-delivery-original-fa,.operation-files .is-delivery-second-fa { border-left-color:#159966; }.operation-files .is-delivery .operation-file-kind b,.operation-files .is-delivery-original-fa .operation-file-kind b,.operation-files .is-delivery-second-fa .operation-file-kind b { color:#08734d; background:#d6f4e5; }
.operation-files .is-revision { border-left-color:#8b5cf6; }.operation-files .is-revision .operation-file-kind b { color:#6941c6; background:#eee8ff; }
.operation-files .operation-file-download { display:inline-flex; align-items:center; justify-content:center; gap:6px; min-width:104px; padding:8px 11px; overflow:visible; border:1px solid #a9caf3; border-radius:6px; color:#155eaf; background:#edf5ff; font-size:11px; font-weight:900; text-decoration:none; text-overflow:clip; }
.operation-files .operation-file-download-row:hover .operation-file-download { border-color:#2f78d0; color:#fff; background:#2f78d0; }
.operation-messages { display:grid; gap:7px; max-height:240px; overflow:auto; }.operation-message { padding:8px 9px; border:1px solid var(--line); border-radius:6px; background:var(--surface-soft); }.operation-message.admin { border-color:#bfdbfe; background:#eff6ff; }.operation-message > div { display:flex; align-items:baseline; justify-content:space-between; gap:8px; }.operation-message b { color:var(--ink-soft); font-size:11px; }.operation-message small { color:var(--muted); font-size:10px; }.operation-message p { margin:4px 0 0; color:#475467; font-size:12px; line-height:1.4; }.operation-message-form { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; margin-top:8px; align-items:end; }.operation-message-form textarea { margin:0; }.operation-message-form .button { min-height:36px; font-size:12px; }.delivery-section { background:linear-gradient(90deg,#f0fdf4,transparent); }.operation-delivery-form { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; align-items:end; }.operation-delivery-form input { min-height:38px; padding:5px; font-size:11px; }.operation-delivery-form textarea { grid-column:1 / -1; margin:0; }.operation-delivery-form .button { min-height:36px; font-size:12px; }
.feature-code-delivery-form { grid-template-columns:repeat(2,minmax(0,1fr)); }
.feature-code-delivery-form label { display:grid; gap:4px; color:var(--ink-soft); font-size:11px; }
.feature-code-delivery-form label span { display:grid; gap:2px; }
.feature-code-delivery-form label small { color:var(--muted); font-size:10px; }
.feature-code-result { border-left:3px solid #23c58b; padding-left:12px; }
.operation-code-sequence { display:grid; gap:3px; margin-bottom:10px; padding:11px 12px; border:1px solid rgba(255,122,63,.62); border-radius:7px; color:var(--ink); background:rgba(255,122,63,.09); }
.operation-code-sequence span { color:var(--muted); font-size:11px; }
.operation-code-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.operation-code-card { display:grid; align-content:start; gap:9px; min-width:0; padding:13px; border:1px solid rgba(35,197,139,.48); border-top:3px solid #23c58b; border-radius:8px; background:rgba(35,197,139,.06); }
.operation-code-card.is-vo-fix { border-top-color:#ff7a3f; }
.operation-code-card-head { display:flex; align-items:flex-start; gap:10px; }
.operation-code-card-head > span { display:grid; place-items:center; flex:0 0 28px; width:28px; height:28px; border-radius:50%; color:#071a14; background:#45d3a2; font-size:12px; font-weight:950; }
.operation-code-card.is-vo-fix .operation-code-card-head > span { color:#231006; background:#ff9a69; }
.operation-code-card-head > div { display:grid; gap:3px; min-width:0; }
.operation-code-card-head b { color:var(--ink); font-size:14px; }
.operation-code-card-head small,.operation-code-card p { margin:0; color:var(--muted); font-size:11px; line-height:1.45; }
.operation-code-result { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px; border:1px solid rgba(35,197,139,.55); border-radius:7px; background:rgba(35,197,139,.08); }
.operation-code-result strong { color:#23c58b; font-family:Consolas,"Courier New",monospace; font-size:25px; letter-spacing:.07em; }
.operation-code-download { display:flex; justify-content:flex-end; margin-top:10px; }
.feature-code-delivery-form label.full { grid-column:1 / -1; }
@media (max-width:720px) {
  .admin-operation-view-switch,.admin-operation-preview-notice { align-items:stretch; flex-direction:column; }
  .admin-operation-view-buttons { width:100%; }
  .admin-operation-view-buttons .button { flex:1; }
  .admin-operation-preview-notice > b { align-self:flex-start; }
  .admin-operation-preview-content { padding:12px; }
  .feature-code-delivery-form { grid-template-columns:1fr; }
  .operation-code-result { align-items:stretch; flex-direction:column; }
  .operation-code-list { grid-template-columns:1fr; }
  .operation-code-download .button { width:100%; }
  .feature-priority-grid { grid-template-columns:1fr; }
  .feature-vin-priority,.feature-options-priority { grid-column:auto; }
  .operation-automation-head,.operation-automation-repeat { align-items:stretch; flex-direction:column; }
  .operation-automation-head > strong,.operation-automation-repeat .button { align-self:flex-start; }
  .operation-automation-facts { grid-template-columns:1fr; }
  .operation-automation-history li { grid-template-columns:1fr; }
}
.operation-revision-list { display:grid; gap:7px; }
.operation-revision { padding:9px 10px; border:1px solid var(--line); border-left:4px solid #8b5cf6; border-radius:6px; background:var(--surface-soft); }
.operation-revision.open { border-left-color:var(--orange); }
.operation-revision.accepted { border-left-color:#159966; }
.operation-revision > div { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.operation-revision b { color:var(--ink); font-size:11px; }
.operation-revision span { color:var(--muted); font-size:9px; font-weight:900; text-transform:uppercase; }
.operation-revision p { margin:5px 0 4px; color:var(--ink-soft); font-size:11px; line-height:1.4; }
.operation-revision small { color:var(--muted); font-size:9px; }
.operation-delivery-file-grid { display:grid; grid-column:1 / -1; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.operation-file-picker { display:grid; grid-column:1 / -1; grid-template-columns:minmax(190px,.35fr) minmax(0,1fr); align-items:center; gap:14px; padding:10px; border:1px dashed #aab8c9; border-radius:7px; background:rgba(255,255,255,.55); cursor:pointer; }
.operation-file-picker > span { display:grid; gap:3px; }
.operation-file-picker > span b { color:var(--ink); font-size:12px; }
.operation-file-picker > span small { color:var(--muted); font-size:10px; line-height:1.3; }
.operation-file-picker input[type="file"] { width:100%; min-height:44px; padding:5px 7px; border:1px solid var(--line-strong); border-radius:6px; color:var(--ink-soft); background:var(--surface); cursor:pointer; }
.operation-file-picker input[type="file"]::file-selector-button { min-height:32px; margin-right:11px; padding:6px 12px; border:1px solid #9fc3ef; border-radius:5px; color:#155eaf; background:#eaf3ff; font:inherit; font-weight:900; cursor:pointer; }
.operation-file-picker:hover input[type="file"]::file-selector-button { color:#fff; border-color:#2f78d0; background:#2f78d0; }
.operation-delivery-actions { display:grid; grid-column:1 / -1; gap:7px; }
.operation-delivery-actions .button { width:100%; }
.operation-form-status { min-height:18px; margin:0; color:var(--muted); font-size:12px; font-weight:750; }
.operation-form-status.error { color:#b42318; }
.operation-form-status.good { color:var(--good); }
.operation-form-status.working { color:var(--blue); }
.operation-row { padding:15px 16px; cursor:pointer; }
.operations-workspace.detail-open .operation-detail { max-height:none; padding:24px; overflow:visible; }
.operation-detail-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:18px; padding-bottom:14px; border-bottom:1px solid var(--line); }
.operation-detail-toolbar span { color:var(--muted); font-size:11px; font-weight:850; letter-spacing:.06em; text-transform:uppercase; }
.operation-back { min-height:38px; }
.admin-operation-view-switch { display:flex; align-items:center; justify-content:space-between; gap:18px; margin:0 0 18px; padding:13px 14px; border:1px solid var(--line); border-radius:9px; background:var(--surface-soft); }
.admin-operation-view-switch > div:first-child { display:grid; gap:2px; min-width:0; }
.admin-operation-view-switch span { color:var(--muted); font-size:9px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.admin-operation-view-switch strong { color:var(--ink); font-size:15px; }
.admin-operation-view-switch small { color:var(--muted); font-size:11px; overflow-wrap:anywhere; }
.admin-operation-view-buttons { display:flex; flex:0 0 auto; gap:7px; }
.admin-operation-view-buttons .button { min-height:36px; padding:8px 12px; }
.admin-operation-view-buttons .is-active { border-color:#1b9b6a; color:#dffbef; background:#08734d; box-shadow:0 0 0 2px rgba(27,155,106,.13); }
.admin-operation-customer-preview { overflow:hidden; border:1px solid #43ba8c; border-radius:10px; background:var(--surface); }
.admin-operation-preview-notice { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 15px; border-bottom:1px solid #43ba8c; background:color-mix(in srgb,var(--green) 12%,var(--surface)); }
.admin-operation-preview-notice > div { display:grid; gap:2px; }
.admin-operation-preview-notice span { color:#38d996; font-size:9px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.admin-operation-preview-notice strong { color:var(--ink); font-size:13px; }
.admin-operation-preview-notice p { margin:0; color:var(--muted); font-size:11px; }
.admin-operation-preview-notice > b { flex:0 0 auto; padding:5px 8px; border-radius:999px; color:#fff; background:#08734d; font-size:9px; letter-spacing:.06em; text-transform:uppercase; }
.admin-operation-preview-content { padding:18px; }
.admin-operation-preview-content[inert] { cursor:default; }
.admin-operation-preview-frame { display:block; width:100%; min-height:520px; border:0; background:var(--surface); }
.operations-workspace.detail-open .operation-detail-head { padding-bottom:17px; }
.operations-workspace.detail-open .operation-detail-head h3 { margin-top:3px; font-size:24px; }
.operations-workspace.detail-open .operation-detail-head p { font-size:13px; }
.operations-workspace.detail-open .operation-facts { grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-top:16px; }
.operations-workspace.detail-open .operation-facts > div { padding:11px 12px; }
.operations-workspace.detail-open .operation-fields { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.operations-workspace.detail-open .operation-fields > div,.operations-workspace.detail-open .operation-files li { padding:9px 10px; }
.panel-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.feature-catalogue-editor { display: grid; gap: 12px; }
.feature-catalogue-editor > .editor-head { margin: 0; }
.file-service-options-editor { padding:14px; border:1px solid var(--line); border-radius:8px; background:var(--surface-soft); }
.file-service-options-editor > small { color:var(--muted); font-size:11px; }
.file-service-option-list { display:grid; gap:8px; }
.file-service-option-card { display:grid; gap:9px; padding:10px; border:1px solid var(--line); border-radius:7px; background:#fff; transition:border-color .15s ease,opacity .15s ease,box-shadow .15s ease; }
.file-service-option-card:hover { border-color:#fdba74; }.file-service-option-card.dragging { opacity:.5; border-style:dashed; box-shadow:0 8px 18px rgba(15,23,42,.12); }
.file-service-option-card header { display:flex; align-items:center; gap:8px; }.file-service-option-card header strong { flex:1; color:var(--ink-soft); font-size:11px; font-weight:900; letter-spacing:.045em; text-transform:uppercase; }
.option-drag-handle { display:grid; width:30px; height:30px; place-items:center; flex:0 0 auto; padding:0; border:1px solid var(--line-strong); border-radius:6px; background:var(--surface-soft); color:var(--muted); cursor:grab; font-size:17px; line-height:1; }.option-drag-handle:active { cursor:grabbing; }.option-drag-handle:hover { border-color:#fdba74; color:var(--accent-deep); }
.option-reorder-actions { display:flex; align-items:center; gap:4px; }
.option-reorder-actions button { min-height:30px; padding:5px 8px; border:1px solid var(--line-strong); border-radius:6px; color:var(--ink-soft); background:var(--surface); font-size:10px; font-weight:850; cursor:pointer; }
.option-reorder-actions button:hover:not(:disabled) { border-color:var(--accent); color:var(--accent-deep); background:var(--accent-soft); }
.option-reorder-actions button:disabled { opacity:.4; cursor:not-allowed; }
.file-service-option-fields { display:grid; grid-template-columns:150px minmax(180px,1fr) 115px minmax(220px,1.2fr); gap:8px; }.file-service-option-fields label { min-width:0; }.file-service-option-fields input { min-width:0; }
.empty-file-service-options { margin:0; padding:11px; border:1px dashed #b9c9dc; border-radius:6px; color:var(--muted); background:#fff; font-size:12px; }
.head-unit-admin-list { display:grid; gap:10px; }
.head-unit-admin-card { display: grid; gap: 10px; padding: 13px; border: 1px solid var(--line); border-radius: 7px; background: var(--surface-soft); }
.head-unit-admin-card legend { padding: 0 5px; color: var(--ink); font-size: 13px; font-weight: 900; }
.head-unit-card-head,.head-unit-options-head { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.head-unit-card-head { padding-bottom:8px; border-bottom:1px solid var(--line); font-size:12px; }
.head-unit-options { display: grid; gap: 7px; }
.head-unit-options > strong { color: var(--ink-soft); font-size: 12px; }
.head-unit-card-head > div { display:grid; gap:3px; }
.head-unit-card-head > div small { color:var(--muted); font-size:10px; }
.head-unit-workflow-editor { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.head-unit-workflow-panel { display:grid; gap:10px; min-width:0; padding:12px; border:1px solid var(--line); border-radius:8px; background:var(--surface); }
.head-unit-workflow-panel.patch-workflow { border-top:3px solid #f97316; }
.head-unit-workflow-panel.options-workflow { border-top:3px solid #22c55e; }
.workflow-panel-head { display:grid; grid-template-columns:28px minmax(0,1fr) auto; align-items:center; gap:8px; padding-bottom:9px; border-bottom:1px solid var(--line); }
.workflow-number { display:grid; width:27px; height:27px; place-items:center; border-radius:50%; color:#fff; background:#f97316; font-size:11px; font-weight:950; }
.options-workflow .workflow-number { background:#0f9f91; }
.workflow-panel-head > div { display:grid; gap:2px; }
.workflow-panel-head strong { color:var(--ink); font-size:12px; }
.workflow-panel-head small { color:var(--muted); font-size:9px; }
.workflow-enabled { display:flex; align-items:center; flex-direction:row !important; gap:5px; margin:0; color:var(--ink); font-size:10px !important; }
.workflow-enabled input { width:16px; height:16px; }
.head-unit-option { display: grid; grid-template-columns: minmax(180px, 1fr) 120px 120px minmax(180px,1fr) auto; gap: 8px; align-items:end; padding: 8px; border: 1px solid var(--line); border-radius: 6px; background: var(--surface); }
.compact-action { min-height:33px; padding:6px 9px; font-size:11px; }
.empty-head-unit-catalogue,.empty-head-unit-options { margin:0; padding:11px; border:1px dashed #b9c9dc; border-radius:6px; color:var(--muted); background:#fff; font-size:12px; }
.service-admin-list { align-self: start; overflow: hidden; border: 1px solid var(--line); border-radius: 8px; background: var(--surface-soft); }
.service-list-head { display: flex; align-items: center; justify-content: space-between; padding: 13px; border-bottom: 1px solid var(--line); }
.service-admin-rows { display: grid; max-height: 640px; overflow: auto; padding: 7px; gap: 6px; }
.admin-service-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 6px; width: 100%; padding: 3px; border: 1px solid transparent; border-radius: 7px; background: transparent; color: var(--ink); text-align: left; }
.admin-service-row:hover { background: #fff; }
.admin-service-row.active { border-color: #fdba74; background: var(--accent-soft); }
.admin-service-select { display:grid; grid-template-columns:34px minmax(0,1fr) auto; align-items:center; gap:9px; min-width:0; padding:7px; border:0; background:transparent; color:inherit; text-align:left; cursor:pointer; }
.admin-service-row strong, .admin-service-row small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-service-row strong { font-size: 13px; }
.admin-service-row small { margin-top: 3px; color: var(--muted); font-size: 11px; font-weight: 650; }
.admin-service-order-controls { display:flex; align-items:center; gap:3px; padding-right:4px; }
.admin-service-order-controls button { display:grid; width:28px; height:28px; place-items:center; padding:0; border:1px solid var(--line-strong); border-radius:6px; background:var(--surface); color:var(--accent-deep); font-weight:900; cursor:pointer; }
.admin-service-order-controls .admin-service-settings { width:auto; min-width:74px; padding:0 10px; }
.admin-service-order-controls button:hover:not(:disabled) { border-color:var(--accent); background:var(--selected-bg); color:var(--selected-ink); }
.admin-service-order-controls button:disabled { opacity:.3; cursor:not-allowed; }
.admin-service-drag-handle { display:grid; width:20px; place-items:center; color:var(--muted); font-size:15px; cursor:grab; }
.admin-service-row.dragging { opacity:.45; border-style:dashed; }
.service-row-code { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 5px; background: var(--navy); color: #fff; font-size: 10px; font-weight: 900; }
.status-pill { display: inline-flex; align-items: center; width: fit-content; padding: 4px 7px; border-radius: 999px; background: #eaf0f8; color: var(--muted); font-size: 10px; font-style: normal; font-weight: 900; letter-spacing: .035em; text-transform: uppercase; }
.status-pill.good { background: #dcfce7; color: var(--good); }
.empty-editor { display: grid; min-height: 310px; place-items: center; border-style: dashed; border-color: var(--line-strong); border-top-width: 1px; background: var(--surface-soft); color: var(--muted); text-align: center; }
.empty-editor strong { display: block; color: var(--ink); font-size: 17px; }
.empty-editor p { margin: 5px 0 0; }
.service-editor { margin-top: 0; min-width: 0; }
.service-editor-form label { font-size: 11px; }
.admin-service-dialog { width:min(1180px,calc(100% - 32px)); }
.admin-service-dialog-card { max-height:90vh; padding:20px 22px 24px; }
.admin-service-dialog .service-editor { margin-top:16px; }
.service-admin-layout-wide .admin-service-row { min-height:66px; padding:6px 7px; border-color:var(--line); background:var(--surface); }
.service-admin-layout-wide .admin-service-row:hover { border-color:color-mix(in srgb,var(--accent) 45%,var(--line)); background:var(--surface-soft); }
.service-admin-layout-wide .admin-service-row strong,
.service-admin-layout-wide .admin-service-row small { overflow:visible; text-overflow:clip; white-space:normal; }
.service-admin-layout-wide .admin-service-row strong { line-height:1.3; }
.service-admin-layout-wide .admin-service-row small { line-height:1.35; }
.vehicle-catalogue-editor { display:grid; gap:12px; margin-top:13px; }
.vehicle-catalogue-entry { padding:14px; border:1px solid var(--line); border-radius:8px; background:var(--surface-soft); }
.vehicle-type-entry { padding:14px; border:1px solid var(--line-strong); border-left:4px solid var(--accent); border-radius:9px; background:var(--surface-soft); }
.vehicle-manufacturer-list { display:grid; gap:10px; margin-top:12px; }
.vehicle-manufacturer-entry { padding:12px; border:1px solid var(--line); border-radius:8px; background:#fff; }
.vehicle-type-entry,.vehicle-manufacturer-entry,.vehicle-model-entry { padding:0; overflow:hidden; }
.vehicle-collapse-summary { display:flex; align-items:center; gap:11px; padding:11px 12px; cursor:pointer; list-style:none; user-select:none; }
.vehicle-collapse-summary::-webkit-details-marker { display:none; }
.vehicle-collapse-summary::before { display:grid; width:19px; height:19px; flex:0 0 19px; place-items:center; border:1px solid var(--line-strong); border-radius:5px; color:var(--accent-deep); content:"+"; font-size:15px; font-weight:900; line-height:1; }
details[open] > .vehicle-collapse-summary::before { content:"-"; }
.vehicle-collapse-summary > span { display:grid; min-width:0; gap:2px; margin-right:auto; }
.vehicle-collapse-summary small { color:var(--muted); font-size:9px; font-weight:900; letter-spacing:.06em; }
.vehicle-collapse-summary strong { overflow:hidden; color:var(--ink); font-size:14px; text-overflow:ellipsis; white-space:nowrap; }
.vehicle-collapse-summary em { flex:0 0 auto; color:var(--muted); font-size:11px; font-style:normal; font-weight:850; }
.catalogue-visibility { display:inline-flex; align-items:center; gap:6px; min-height:28px; padding:5px 8px; border:1px solid; border-radius:999px; font-size:10px; font-weight:900; cursor:pointer; }
.catalogue-visibility span { width:8px; height:8px; border-radius:50%; background:currentColor; }
.catalogue-visibility.enabled { border-color:#9bd9b8; color:#08704c; background:#edf9f2; }
.catalogue-visibility.disabled { border-color:#d4dbe5; color:#66758a; background:#f1f4f8; }
.catalogue-disabled > .vehicle-collapse-summary { opacity:.62; filter:saturate(.35); }
.vehicle-engine-card.catalogue-disabled { opacity:.68; background:#f1f3f6; }
.vehicle-collapse-body { padding:0 12px 12px; border-top:1px solid var(--line); }
.vehicle-type-entry > .vehicle-collapse-summary { background:#f8fbff; }
.vehicle-manufacturer-entry > .vehicle-collapse-summary { background:#fff; }
.vehicle-model-entry > .vehicle-collapse-summary { background:var(--surface-soft); }
.vehicle-level-head { display:flex; align-items:center; justify-content:space-between; gap:10px; padding-bottom:9px; border-bottom:1px solid var(--line); }
.vehicle-level-head > div:first-child { display:grid; gap:2px; }.vehicle-level-head strong { color:var(--ink); font-size:15px; }
.vehicle-level-field { display:grid; max-width:440px; margin-top:10px; color:var(--ink-soft); font-size:10px; font-weight:900; letter-spacing:.045em; text-transform:uppercase; }
.vehicle-level-field input { margin-top:4px; font-size:12px; }
.vehicle-model-list { display:grid; gap:9px; margin-top:11px; }.vehicle-model-entry { margin:0; background:var(--surface-soft); }
.vehicle-catalogue-head,.vehicle-engine-section-head,.vehicle-engine-head { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.vehicle-catalogue-head { padding-bottom:10px; border-bottom:1px solid var(--line); }.vehicle-catalogue-head > div { display:grid; gap:2px; }.vehicle-catalogue-head strong { color:var(--ink); font-size:16px; }
.vehicle-catalogue-fields { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; margin-top:11px; }.vehicle-catalogue-fields label,.vehicle-engine-card label { min-width:0; color:var(--ink-soft); font-size:10px; font-weight:900; letter-spacing:.045em; text-transform:uppercase; }.vehicle-catalogue-fields input,.vehicle-engine-card input,.vehicle-engine-card select { min-width:0; margin-top:4px; font-size:12px; }
.vehicle-catalogue-fields .full,.vehicle-engine-card .full { grid-column:1 / -1; }
.vehicle-engine-section { margin-top:13px; padding-top:12px; border-top:1px solid var(--line); }.vehicle-engine-section-head > div { display:grid; gap:2px; }.vehicle-engine-section-head strong { color:var(--ink); font-size:13px; }.vehicle-engine-section-head small { color:var(--muted); font-size:11px; }
.vehicle-engine-list { display:grid; gap:8px; margin-top:9px; }.vehicle-engine-card { display:grid; grid-template-columns:minmax(180px,1.3fr) 100px 130px minmax(180px,1fr); gap:8px; padding:10px; border:1px solid var(--line); border-radius:7px; background:#fff; }.vehicle-engine-head { grid-column:1 / -1; padding-bottom:7px; border-bottom:1px solid var(--line); }.vehicle-engine-head strong { color:var(--ink-soft); font-size:11px; font-weight:900; letter-spacing:.045em; text-transform:uppercase; }
.empty-vehicle-catalogue { margin:0; padding:17px; border:1px dashed var(--line-strong); border-radius:8px; background:var(--surface-soft); color:var(--muted); font-size:13px; text-align:center; }
.read-catalogue-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:13px; }
.read-catalogue-panel { padding:14px; border:1px solid var(--line); border-radius:8px; background:var(--surface-soft); }
.read-catalogue-head { display:flex; align-items:center; justify-content:space-between; gap:10px; padding-bottom:10px; border-bottom:1px solid var(--line); }.read-catalogue-head > div { display:grid; gap:2px; }.read-catalogue-head strong { color:var(--ink); font-size:15px; }.read-catalogue-head small { color:var(--muted); font-size:11px; }
.read-catalogue-list { display:grid; gap:7px; margin-top:10px; }.read-catalogue-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:7px; align-items:center; }.read-catalogue-row input { min-width:0; margin:0; font-size:13px; }.empty-read-catalogue { margin:0; padding:16px; border:1px dashed var(--line-strong); border-radius:7px; background:#fff; color:var(--muted); font-size:12px; text-align:center; }
.addon-editor { display: grid; gap: 11px; padding: 14px; border: 1px solid var(--line); border-radius: 7px; background: rgba(255, 255, 255, .7); }
.addon-editor legend { padding: 0 5px; color: var(--ink-soft); font-size: 12px; font-weight: 900; }
.addon-editor .editor-grid { margin-top: 0; }
.subtle-field { opacity: .78; }
.hidden { display: none !important; }

/* Customer Workspace home: modules are the primary decision, account data is secondary. */
.workspace-header { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:22px 26px; border:1px solid var(--line); border-left:5px solid var(--accent); border-radius:10px; background:var(--surface); box-shadow:0 18px 38px rgba(15,23,42,.08); }
.portal-boot { position:relative; display:grid; place-items:center; align-content:center; gap:16px; min-height:320px; margin-top:20px; padding:38px 24px; overflow:hidden; border:1px solid var(--line); border-left:5px solid var(--accent); border-radius:10px; background:var(--surface); text-align:center; box-shadow:0 18px 38px rgba(15,23,42,.06); }
.portal-boot-mark { display:flex; align-items:flex-end; justify-content:center; gap:5px; width:58px; height:42px; padding:8px 10px; border:1px solid color-mix(in srgb,var(--good) 45%,var(--line)); border-radius:9px; background:color-mix(in srgb,var(--good) 10%,var(--surface)); }
.portal-boot-mark i { display:block; width:6px; border-radius:5px; background:var(--good); animation:portal-boot-bars .9s ease-in-out infinite alternate; }
.portal-boot-mark i:nth-child(1) { height:12px; animation-delay:-.45s; }.portal-boot-mark i:nth-child(2) { height:24px; animation-delay:-.2s; }.portal-boot-mark i:nth-child(3) { height:17px; }
.portal-boot-copy { display:grid; gap:4px; }.portal-boot-copy span { color:var(--accent); font-size:10px; font-weight:950; letter-spacing:.08em; }.portal-boot-copy strong { color:var(--navy); font-size:22px; }.portal-boot-copy small { color:var(--muted); font-size:13px; }
.portal-boot-progress { position:relative; width:min(260px,72vw); height:3px; overflow:hidden; border-radius:99px; background:color-mix(in srgb,var(--line) 80%,transparent); }.portal-boot-progress i { position:absolute; inset:0 auto 0 0; width:42%; border-radius:inherit; background:linear-gradient(90deg,var(--accent),var(--good)); animation:portal-boot-progress 1s ease-in-out infinite; }
@keyframes portal-boot-bars { to { height:30px; opacity:.7; } }
@keyframes portal-boot-progress { 0% { transform:translateX(-110%); } 100% { transform:translateX(340%); } }
@media (prefers-reduced-motion: reduce) { .portal-boot-mark i,.portal-boot-progress i { animation:none; } .portal-boot-progress i { width:100%; opacity:.65; } }
.brand-logo-link { display:inline-flex; flex:0 0 auto; border-radius:7px; outline-offset:4px; }
.brand-logo-link:hover { opacity:.82; }
.brand-logo-link:focus-visible { outline:2px solid var(--accent); }
.workspace-header .brand { color:inherit; text-decoration:none; }.workspace-header .brand img { width:112px; height:54px; }.workspace-header .brand strong,.workspace-header .brand small { display:block; }.workspace-header .brand strong { color:var(--navy); font-size:26px; line-height:1.05; letter-spacing:0; }.workspace-header .brand small { margin-top:5px; color:var(--muted); font-size:13px; }.workspace-header .top-actions { align-items:center; }
.admin-workspace-link { display:inline-flex; align-items:center; gap:7px; min-height:40px; padding:7px 11px; border:1px solid #c5d3e5; border-radius:7px; color:var(--navy); background:#f8fbff; font-size:12px; font-weight:850; text-decoration:none; }
.admin-workspace-link:hover { border-color:var(--accent); color:var(--accent-deep); background:#fff7f0; }
.admin-workspace-icon { display:grid; place-items:center; width:22px; height:22px; border-radius:6px; color:#fff; background:var(--navy); font-size:10px; font-weight:950; line-height:1; }
body.auth-mode-open .workspace-header { min-height:68px; padding:12px 18px; box-shadow:0 10px 26px rgba(15,23,42,.06); }
body.auth-mode-open .workspace-header .brand img { width:88px; height:42px; }
body.auth-mode-open .workspace-header .brand strong { font-size:20px; }
.auth-grid { margin-top:14px; }
.auth-grid:not([data-auth-mode="request"]) { width:min(620px,100%); margin-right:auto; margin-left:auto; }
.auth-card { grid-column:1 / -1; width:100%; max-width:560px; min-height:0; justify-self:center; padding:22px 24px; }
.auth-card h2 { margin:0 0 7px; color:var(--navy); font-size:24px; }
.auth-card p { max-width:520px; margin:0; color:var(--muted); font-size:13px; line-height:1.45; }
.auth-mode-tabs { grid-column:1 / -1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px; width:min(680px,100%); margin:0 auto; padding:4px; border:1px solid var(--line); border-radius:10px; background:var(--surface-soft,var(--surface)); }
.auth-mode-tabs button { min-height:42px; padding:7px 10px; border:1px solid transparent; border-radius:7px; color:var(--muted); background:transparent; font:inherit; font-size:12px; font-weight:900; cursor:pointer; }
.auth-mode-tabs button.active { border-color:color-mix(in srgb,var(--good,#22a85a) 64%,var(--line)); color:var(--ink); background:color-mix(in srgb,var(--good,#22a85a) 13%,var(--surface)); box-shadow:0 4px 12px rgba(0,0,0,.12); }
.auth-card[hidden] { display:none !important; }
.auth-grid[data-auth-mode="login"] :is(#activateForm,#accessRequestForm),
.auth-grid[data-auth-mode="activate"] :is(#loginForm,#accessRequestForm),
.auth-grid[data-auth-mode="request"] :is(#loginForm,#activateForm) { display:none; }
.access-request-card { max-width:none; min-height:0; display:grid; gap:24px; border-top:4px solid var(--good); }
.access-request-intro { display:flex; align-items:flex-start; justify-content:space-between; gap:26px; padding-bottom:20px; border-bottom:1px solid var(--line); }
.access-request-intro h2 { font-size:clamp(27px,4vw,40px); }
.access-response-note { flex:0 0 280px; display:grid; gap:4px; padding:16px; border:1px solid color-mix(in srgb,var(--good) 38%,var(--line)); border-radius:9px; background:color-mix(in srgb,var(--good) 9%,var(--surface)); }
.access-response-note strong { color:var(--good); font-size:17px; }
.access-response-note span { color:var(--muted); font-size:12px; line-height:1.45; }
.access-welcome-offer { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:3px 14px; padding:16px 18px; border:1px solid color-mix(in srgb,var(--accent) 48%,var(--line)); border-left:4px solid var(--accent); border-radius:9px; background:color-mix(in srgb,var(--accent) 8%,var(--surface)); }
.access-welcome-offer span { grid-row:1 / 3; align-self:stretch; display:grid; place-items:center; padding:8px 11px; border-radius:7px; color:#fff; background:var(--accent); font-size:9px; font-weight:950; letter-spacing:.06em; text-align:center; }
.access-welcome-offer strong { color:var(--navy); font-size:15px; }
.access-welcome-offer small { color:var(--muted); }
.access-inviter { display:grid; gap:3px; padding:15px 18px; border:1px solid color-mix(in srgb,var(--good) 48%,var(--line)); border-left:4px solid var(--good); border-radius:9px; background:color-mix(in srgb,var(--good) 8%,var(--surface)); }
.access-inviter span { color:var(--good); font-size:10px; font-weight:950; letter-spacing:.065em; }
.access-inviter strong { color:var(--navy); font-size:17px; }
.access-inviter small { color:var(--muted); }
.access-inviter.error { border-color:var(--danger); border-left-color:var(--danger); }
.access-inviter.error span,.access-inviter.error strong { color:var(--danger); }
.access-choice { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:0; padding:0; border:0; }
.access-choice legend { grid-column:1 / -1; margin-bottom:8px; color:var(--navy); font-size:13px; font-weight:900; }
.access-choice label { position:relative; display:block; cursor:pointer; }
.access-choice input { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
.access-choice label > span { display:grid; gap:3px; min-height:76px; padding:15px 16px 15px 48px; border:1px solid var(--line-strong); border-radius:9px; background:var(--surface); transition:border-color .15s ease,background .15s ease,box-shadow .15s ease; }
.access-choice label > span::before { position:absolute; top:25px; left:18px; display:grid; place-items:center; width:20px; height:20px; border:2px solid var(--line-strong); border-radius:50%; color:#fff; content:""; }
.access-choice input:checked + span { border-color:var(--good); background:color-mix(in srgb,var(--good) 8%,var(--surface)); box-shadow:0 0 0 2px color-mix(in srgb,var(--good) 18%,transparent); }
.access-choice input:checked + span::before { border-color:var(--good); background:var(--good); box-shadow:inset 0 0 0 4px var(--surface); }
.access-choice input:focus-visible + span { outline:3px solid color-mix(in srgb,var(--good) 28%,transparent); outline-offset:2px; }
.access-choice strong { color:var(--ink); font-size:14px; }
.access-choice small { color:var(--muted); font-weight:600; }
.access-services-choice label > span::before { border-radius:5px; }
.access-services-choice input:checked + span::before { content:"✓"; box-shadow:none; font-size:13px; font-weight:950; }
.access-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.access-form-grid label { align-content:start; }
.access-form-grid label > small { color:var(--muted); font-weight:600; }
.access-phone-input { display:flex; align-items:stretch; overflow:hidden; border:1px solid var(--line-strong); border-radius:8px; background:var(--surface); }
.access-phone-input:focus-within { border-color:var(--good); box-shadow:0 0 0 2px color-mix(in srgb,var(--good) 18%,transparent); }
.access-phone-input > span { display:flex; align-items:center; min-width:62px; padding:0 12px; border-right:1px solid var(--line); color:var(--navy); background:var(--surface-soft); font-weight:900; }
.access-phone-input input { border:0; border-radius:0; box-shadow:none!important; }
.access-form-notes textarea { min-height:122px; }
.access-form-notes label:last-child { grid-column:1 / -1; }
.access-consent { display:flex; align-items:flex-start; gap:11px; padding:14px; border:1px solid var(--line); border-radius:8px; background:var(--surface-soft); line-height:1.5; }
.access-consent input { width:19px; height:19px; min-height:0; margin:1px 0 0; flex:0 0 auto; }
.access-consent a { color:var(--accent-deep); font-weight:900; }
.access-honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.access-request-actions { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-top:2px; }
.access-request-actions .button { min-width:210px; }
.access-request-actions p { color:var(--muted); font-size:12px; }
.access-request-actions p button { padding:0; border:0; color:var(--accent-deep); background:transparent; font:inherit; font-weight:900; text-decoration:underline; }
.access-request-status { padding:17px; border:1px solid #bbf7d0; border-left:4px solid var(--good); border-radius:8px; background:#f0fdf4; color:#166534; line-height:1.55; }
.access-request-status strong { display:block; margin-bottom:3px; font-size:16px; }
.access-request-status.error { border-color:#fecaca; border-left-color:var(--danger); background:#fef2f2; color:var(--danger); }
.access-admin-list { display:grid; gap:13px; margin-top:18px; }
.access-admin-empty { padding:28px; border:1px dashed var(--line-strong); border-radius:9px; color:var(--muted); background:var(--surface-soft); text-align:center; }
.access-admin-card { display:grid; gap:15px; padding:18px; border:1px solid var(--line); border-left:4px solid var(--line-strong); border-radius:9px; background:var(--surface); }
.access-admin-card.pending { border-left-color:var(--accent); }
.access-admin-card.approved { border-left-color:var(--good); }
.access-admin-card.rejected { border-left-color:var(--danger); opacity:.82; }
.access-admin-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.access-admin-head h3 { margin:0; color:var(--navy); font-size:18px; }
.access-admin-head p { margin:3px 0 0; color:var(--muted); font-size:12px; }
.access-admin-status { display:inline-flex; padding:5px 8px; border-radius:999px; color:var(--accent-deep); background:color-mix(in srgb,var(--accent) 12%,var(--surface)); font-size:10px; font-weight:950; letter-spacing:.045em; text-transform:uppercase; }
.access-admin-card.approved .access-admin-status { color:var(--good); background:color-mix(in srgb,var(--good) 12%,var(--surface)); }
.access-admin-card.rejected .access-admin-status { color:var(--danger); background:color-mix(in srgb,var(--danger) 10%,var(--surface)); }
.access-admin-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.access-admin-facts div { display:grid; gap:2px; min-width:0; padding:10px; border:1px solid var(--line); border-radius:7px; background:var(--surface-soft); }
.access-admin-facts small { color:var(--muted); font-size:9px; font-weight:900; letter-spacing:.045em; text-transform:uppercase; }
.access-admin-facts strong,.access-admin-facts a { overflow-wrap:anywhere; color:var(--ink); font-size:12px; }
.access-admin-facts a { color:var(--accent-deep); }
.access-admin-services { display:flex; flex-wrap:wrap; gap:6px; }
.access-admin-services span { padding:4px 7px; border:1px solid color-mix(in srgb,var(--navy) 24%,var(--line)); border-radius:999px; color:var(--navy); background:color-mix(in srgb,var(--navy) 5%,var(--surface)); font-size:10px; font-weight:900; }
.access-admin-copy { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.access-admin-copy div { padding:11px 12px; border:1px solid var(--line); border-radius:7px; background:var(--surface-soft); }
.access-admin-copy strong { display:block; margin-bottom:4px; color:var(--navy); font-size:11px; }
.access-admin-copy p { margin:0; color:var(--ink-soft); font-size:12px; line-height:1.5; white-space:pre-wrap; }
.access-admin-review { display:flex; align-items:end; flex-wrap:wrap; gap:9px; padding-top:13px; border-top:1px solid var(--line); }
.access-admin-review label { width:150px; }
.access-admin-review label.days { width:100px; }
.access-admin-review label.balance { width:170px; }
.access-admin-review label.access-credit-toggle { width:255px; }
.access-admin-review label.access-credit-toggle > span { display:flex; align-items:center; gap:8px; min-height:42px; padding:8px 10px; border:1px solid var(--line); border-radius:7px; background:var(--surface-soft); color:var(--ink); font-size:12px; font-weight:800; text-transform:none; }
.access-admin-review label.access-credit-toggle input { width:18px; min-width:18px; height:18px; margin:0; }
.access-admin-review label.access-credit-limit { width:195px; }
.access-admin-review label.discount { width:155px; }
.access-admin-review .button { min-height:42px; }
.access-pricing-editor { overflow:hidden; border:1px solid var(--line); border-radius:9px; background:var(--surface-soft); }
.access-pricing-editor > summary { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px 16px; cursor:pointer; list-style:none; }
.access-pricing-editor > summary::-webkit-details-marker { display:none; }
.access-pricing-editor > summary span { display:grid; gap:2px; }
.access-pricing-editor > summary strong { color:var(--navy); }
.access-pricing-editor > summary small { color:var(--muted); }
.access-pricing-editor > summary b { color:var(--accent-deep); font-size:12px; }
.access-pricing-editor[open] > summary { border-bottom:1px solid var(--line); }
.access-pricing-modules { display:grid; gap:12px; padding:14px; }
.access-pricing-module { overflow:hidden; border:1px solid var(--line); border-radius:8px; background:var(--surface); }
.access-pricing-module > header { display:flex; align-items:end; justify-content:space-between; gap:18px; padding:13px; border-bottom:1px solid var(--line); }
.access-pricing-module > header > div { display:grid; gap:2px; }
.access-pricing-module > header small { color:var(--muted); }
.access-pricing-module > header label { width:220px; }
.access-pricing-products { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:var(--line); }
.access-price-row { display:flex; align-items:center; justify-content:space-between; gap:12px; min-width:0; padding:10px 12px; background:var(--surface); }
.access-price-row > span:first-child { display:grid; min-width:0; gap:2px; }
.access-price-row strong,.access-price-row small { overflow-wrap:anywhere; }
.access-price-row small { color:var(--muted); font-weight:600; }
.access-price-input { display:flex; align-items:center; flex:0 0 120px; border:1px solid var(--line-strong); border-radius:7px; background:var(--surface-soft); }
.access-price-input b { padding-left:9px; color:var(--muted); font-size:11px; }
.access-price-input input { min-width:0; border:0; background:transparent; }
.manual-invite-panel { display:grid; gap:12px; margin-top:28px; padding:18px; border:1px solid var(--line); border-radius:9px; background:var(--surface-soft); }
.manual-invite-panel h3 { margin:0; color:var(--navy); }
.manual-invite-panel p { margin:4px 0 0; }
.manual-invite-panel .grid { margin-top:0; }
@media (max-width:780px) {
  .access-admin-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .access-admin-copy { grid-template-columns:1fr; }
  .access-admin-review { align-items:stretch; flex-direction:column; }
  .access-admin-review label,.access-admin-review label.days,.access-admin-review .button { width:100%; }
  .access-pricing-module > header { align-items:stretch; flex-direction:column; }
  .access-pricing-module > header label { width:100%; }
  .access-pricing-products { grid-template-columns:1fr; }
  .access-price-row { align-items:stretch; flex-direction:column; }
  .access-price-input { width:100%; flex-basis:auto; }
}
.whatsapp-confirm { display:flex; align-items:flex-start; gap:10px; font-weight:700; line-height:1.45; }
.whatsapp-confirm input { width:18px; height:18px; margin:2px 0 0; flex:0 0 auto; }
.whatsapp-gate { position:fixed; inset:0; z-index:10000; display:grid; place-items:center; padding:24px; overflow:auto; background:rgba(3,10,20,.82); backdrop-filter:blur(10px); }
.whatsapp-gate.hidden { display:none; }
.whatsapp-gate-card { width:min(600px,100%); display:grid; gap:18px; padding:32px; border:1px solid var(--line); border-top:4px solid #25d366; border-radius:20px; background:var(--surface); box-shadow:0 28px 80px rgba(0,0,0,.42); }
.whatsapp-gate-card h2 { margin:0; color:var(--navy); font-size:clamp(26px,4vw,38px); }
.whatsapp-gate-card p { margin:0; color:var(--muted); line-height:1.6; }
.whatsapp-gate-card label:not(.whatsapp-confirm) { display:grid; gap:7px; font-weight:800; }
.whatsapp-gate-card input[type="tel"] { min-height:50px; }
.whatsapp-gate-actions { display:flex; flex-wrap:wrap; gap:10px; }
.workspace-welcome { display:grid; grid-template-columns:minmax(0,1fr) minmax(270px,.42fr); gap:18px; align-items:stretch; margin-top:20px; padding:28px; border:1px solid var(--line); border-left:5px solid var(--orange); border-radius:10px; background:var(--surface); box-shadow:0 12px 26px rgba(15,23,42,.045); }.welcome-copy { display:flex; flex-direction:column; justify-content:center; }.welcome-copy h1 { max-width:650px; margin:0; color:var(--navy); font-size:32px; line-height:1.1; letter-spacing:0; }.welcome-copy p { display:flex; flex-wrap:wrap; gap:7px; margin:11px 0 0; color:var(--muted); font-size:14px; }.welcome-copy p strong { color:var(--ink); }.account-snapshot { display:grid; align-content:center; gap:5px; padding:18px; border:1px solid #b9e6ca; border-radius:8px; background:var(--green-soft); }.account-snapshot span { color:#367458; font-size:11px; font-weight:900; letter-spacing:.05em; text-transform:uppercase; }.account-snapshot strong { color:var(--good); font-size:23px; }.account-snapshot small { color:#42705a; font-size:12px; line-height:1.4; }
.owner-queue { margin-top:18px; padding:22px 24px; border:1px solid var(--line); border-top:4px solid var(--accent); border-radius:10px; background:var(--surface); box-shadow:0 12px 26px rgba(15,23,42,.04); }.owner-queue-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding-bottom:14px; border-bottom:1px solid var(--line); }.owner-queue-head h2 { margin:0; color:var(--navy); font-size:21px; }.owner-queue-head p { margin:5px 0 0; color:var(--muted); font-size:13px; }.owner-queue-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-top:14px; }.owner-queue-metric { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 12px; border:1px solid var(--line); border-top:3px solid #94a3b8; border-radius:7px; background:var(--surface-soft); }.owner-queue-metric small { color:var(--muted); font-size:11px; font-weight:850; }.owner-queue-metric strong { color:var(--navy); font-size:22px; }.owner-queue-metric.review { border-top-color:var(--accent); }.owner-queue-metric.reply { border-top-color:#2563eb; }.owner-queue-metric.progress { border-top-color:var(--teal); }.owner-queue-rows { display:grid; gap:7px; margin-top:13px; }.owner-queue-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(132px,.18fr) minmax(150px,.24fr) auto; align-items:center; gap:15px; padding:11px 12px; border:1px solid var(--line); border-left:3px solid #94a3b8; border-radius:7px; background:#fff; color:var(--ink); text-decoration:none; }.owner-queue-row.without-age { grid-template-columns:minmax(0,1fr) minmax(150px,.24fr) auto; }.owner-queue-row:hover { border-color:#fdba74; background:#fffaf5; }.owner-queue-row.review { border-left-color:var(--accent); }.owner-queue-row.reply { border-left-color:#2563eb; }.owner-queue-row.progress { border-left-color:var(--teal); }.owner-queue-row.ready { border-left-color:var(--good); }.owner-queue-row-main { display:grid; grid-template-columns:auto auto minmax(0,1fr); align-items:center; gap:7px 9px; min-width:0; }.owner-queue-row-main b { color:var(--navy); font-size:13px; }.owner-queue-row-main i { padding:2px 5px; border-radius:999px; background:var(--surface-soft); color:var(--ink-soft); font-size:10px; font-style:normal; font-weight:850; }.owner-queue-row-main strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; }.owner-queue-row-main small { grid-column:1 / -1; overflow:hidden; color:var(--muted); font-size:11px; text-overflow:ellipsis; white-space:nowrap; }.owner-queue-age { display:grid; justify-items:start; gap:1px; padding-left:12px; border-left:1px solid var(--line); }.owner-queue-age small { color:var(--muted); font-size:9px; font-weight:900; letter-spacing:.045em; text-transform:uppercase; }.owner-queue-age strong { color:var(--accent-deep); font-size:16px; line-height:1.15; }.owner-queue-age time { color:var(--muted); font-size:9px; white-space:nowrap; }.owner-queue-age.waiting strong { color:#64748b; }.owner-queue-age.reply strong { color:#2563eb; }.owner-queue-age.progress strong { color:#087b72; }.owner-queue-row-action { display:grid; justify-items:end; gap:2px; text-align:right; }.owner-queue-row-action em { color:var(--accent-deep); font-size:12px; font-style:normal; font-weight:900; }.owner-queue-row-action small { color:var(--muted); font-size:10px; }.owner-queue-empty { display:grid; gap:3px; padding:14px; border:1px dashed var(--line-strong); border-radius:7px; color:var(--muted); text-align:center; }.owner-queue-empty strong { color:var(--ink); }
.section-title { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; padding-bottom:17px; border-bottom:1px solid var(--line); }
.section-title h2 { margin:0; color:var(--navy); font-size:23px; }
.section-title p { max-width:680px; margin:5px 0 0; color:var(--muted); font-size:13px; line-height:1.45; }

/* Customer workspace module widgets */
.module-area {
  margin-top: 18px;
  padding: 26px;
  border-color: #d8e3f0;
  border-radius: 12px;
  background: linear-gradient(180deg, #fff 0%, #f8fafc 100%);
}
.module-area .module-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 18px;
}
.module-card-shell {
  --module-accent: #2563eb;
  --module-soft: #eff6ff;
  --module-faint: #f8fbff;
  position: relative;
  min-width: 0;
}
.module-area .module-card {
  position: relative;
  display: flex;
  height: 100%;
  min-height: 286px;
  flex-direction: column;
  padding: 0;
  overflow: hidden;
  border: 1px solid #d4dce8;
  border-top: 0;
  border-radius: 14px;
  background: linear-gradient(180deg, #fff 0%, var(--module-faint) 100%);
  color: var(--ink);
  text-decoration: none;
  box-shadow: 0 16px 32px rgba(15, 23, 42, .07);
  transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}
.module-area .module-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 5px;
  background: var(--module-accent);
}
.module-card-shell:hover .module-card,
.module-card-shell:focus-within .module-card {
  transform: translateY(-3px);
  border-color: #b7c8dc;
  box-shadow: 0 18px 34px rgba(15, 23, 42, .11);
}
.module-area .files-module {
  --module-accent: #f97316;
  --module-soft: #fff7ed;
  --module-faint: #fffaf5;
}
.module-area .coding-module {
  --module-accent: #0f9b8e;
  --module-soft: #ecfdfa;
  --module-faint: #f3fffd;
}
.module-card-top {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 20px 20px 0;
}
.module-card-art {
  position: absolute;
  z-index: 0;
  inset: 8px -24px 34px;
  display: grid;
  place-items: center;
  overflow: hidden;
  color: var(--module-accent);
  opacity: .78;
  pointer-events: none;
}
.module-card-art::after {
  position: absolute;
  inset: auto 0 0;
  height: 24%;
  background: linear-gradient(180deg, transparent, color-mix(in srgb, var(--surface) 58%, transparent));
  content: "";
}

html[data-ponto-theme="operations"] .module-card-art::after,
html[data-ponto-theme="midnight"] .module-card-art::after {
  background: linear-gradient(180deg, transparent, rgba(18, 26, 39, .58));
}
.module-card-art svg {
  width: 112%;
  height: 112%;
  min-height: 178px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.55;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}
.module-area .map-module .module-card-art {
  inset: 5px -42px 0;
}
.module-area .map-module .module-card-art svg {
  width: 132%;
  height: 128%;
  min-height: 100%;
}
.module-card-art .module-art-frame { stroke-width: 2.1; }
.module-card-art .module-art-muted { opacity: .34; }
.module-card-art .module-art-focus { fill: color-mix(in srgb, var(--module-accent) 8%, transparent); stroke-width: 2; }
.module-card-art .module-art-road { stroke-width: 3; opacity: .75; }
.module-card-art .module-art-circuit { stroke-dasharray: 3 4; opacity: .68; }
.module-icon {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  flex: 0 0 auto;
  border-radius: 12px;
  background: var(--module-soft);
  color: var(--module-accent);
  font-size: 14px;
  font-weight: 950;
  box-shadow: inset 0 0 0 1px rgba(15, 23, 42, .06);
}
.module-icon-graphic {
  width: 72px;
  height: 62px;
  border: 1px solid color-mix(in srgb, var(--module-accent) 38%, transparent);
  border-radius: 16px;
}
.module-icon-graphic svg {
  width: 53px;
  height: 44px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.module-icon-graphic .module-icon-fill { fill: currentColor; stroke: none; }
.module-area .module-card h3 {
  position: relative;
  z-index: 2;
  max-width: 94%;
  padding: 0 20px;
  margin: 27px 0 8px;
  font-size: 21px;
  line-height: 1.08;
}
.module-area .module-card strong,
.module-area .files-module strong,
.module-area .coding-module strong {
  position: relative;
  z-index: 2;
  margin: auto 14px 14px;
  padding: 13px 14px;
  border-radius: 10px;
  border: 1px solid color-mix(in srgb, var(--module-accent) 88%, #fff);
  background: color-mix(in srgb, var(--module-accent) 54%, transparent);
  color: #fff;
  box-shadow: 0 12px 22px rgba(15, 23, 42, .1), inset 0 1px 0 rgba(255,255,255,.18);
  backdrop-filter: blur(3px);
}
.module-area .module-card strong b {
  color: #fff;
  font-size: 17px;
}
.module-card-shell:hover,
.module-card-shell:focus-within,
.module-card-shell.details-open { z-index: 30; }
.module-info-trigger {
  position: absolute;
  z-index: 8;
  top: 16px;
  right: 16px;
  display: none;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 1px solid color-mix(in srgb, var(--module-accent) 42%, var(--line));
  border-radius: 50%;
  color: var(--module-accent);
  background: var(--surface);
  font: 950 16px/1 inherit;
  cursor: pointer;
  box-shadow: 0 7px 16px rgba(15,23,42,.12);
}
.module-info-trigger:focus-visible { outline: 3px solid color-mix(in srgb,var(--module-accent) 32%,transparent); outline-offset: 2px; }
.module-details-popover {
  position: absolute;
  z-index: 5;
  top: calc(100% - 8px);
  right: 0;
  left: auto;
  display: grid;
  gap: 9px;
  width: min(340px, calc(100vw - 32px));
  max-height: min(420px, calc(100vh - 40px));
  padding: 16px;
  overflow-y: auto;
  visibility: hidden;
  border: 1px solid color-mix(in srgb, var(--module-accent) 38%, var(--line));
  border-top: 4px solid var(--module-accent);
  border-radius: 12px;
  background: var(--surface);
  box-shadow: 0 22px 48px rgba(15, 23, 42, .22);
  opacity: 0;
  pointer-events: none;
  transform: translateY(8px);
  transition: opacity .16s ease, transform .16s ease, visibility 0s linear .16s;
}
.module-card-shell.details-above .module-details-popover {
  top: auto;
  bottom: calc(100% - 12px);
  transform: translateY(-8px);
}
.module-card-shell:hover .module-details-popover,
.module-card-shell:focus-within .module-details-popover,
.module-card-shell.details-open .module-details-popover {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
  transition-delay: 1.5s;
}
.module-card-shell:focus-within .module-details-popover,
.module-card-shell.details-open .module-details-popover { transition-delay: 0s; }
.module-details-title { color: var(--module-accent); font-size: 12px; font-weight: 950; letter-spacing: .04em; text-transform: uppercase; }
.module-area .module-details-popover p { min-height: 0; margin: 0; padding: 0; color: var(--muted); font-size: 12px; line-height: 1.45; }
.module-area .module-details-popover ul { display: grid; gap: 5px; margin: 0; padding: 0; color: var(--ink); font-size: 11px; list-style: none; }
.module-area .module-details-popover li { display: flex; gap: 8px; align-items: flex-start; padding: 5px 0; border: 0; border-top: 1px solid var(--line); border-radius: 0; background: transparent; color: var(--ink); }
.module-area .module-details-popover li::before { width: 6px; height: 6px; flex: 0 0 6px; margin-top: 5px; border-radius: 50%; background: var(--module-accent)!important; color: transparent!important; content: ""; }
.module-card-shell.hidden { display: none!important; }
@media (hover:none), (pointer:coarse) {
  .module-info-trigger { display: grid; place-items: center; }
  .module-card-shell:not(.details-open) .module-details-popover { visibility: hidden; opacity: 0; pointer-events: none; }
}
.account-details { margin-top:18px; padding:22px 24px; border:1px solid var(--line); border-radius:9px; background:var(--surface); }.account-details-head { padding-bottom:14px; border-bottom:1px solid var(--line); }.account-details-head h2 { margin:0; color:var(--navy); font-size:20px; }.account-details-head p { margin:4px 0 0; color:var(--muted); font-size:13px; }.account-details .profile-grid { grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:14px; }.account-details .stat { min-height:89px; padding:12px; }.account-details .stat strong { font-size:16px; overflow-wrap:anywhere; }
.account-control-layout { display:grid; grid-template-columns:220px minmax(0,1fr); align-items:start; gap:20px; margin-top:18px; }
.account-control-sidebar { position:sticky; top:18px; padding:13px; border:1px solid var(--line); border-radius:10px; background:var(--surface-soft); }
.account-control-sidebar-label { display:block; padding:2px 6px 10px; color:var(--muted); font-size:9px; font-weight:950; letter-spacing:.08em; }
.account-control-nav { display:grid; gap:5px; }
.account-control-nav a { display:grid; grid-template-columns:34px minmax(0,1fr); gap:1px 9px; min-height:55px; padding:8px; border:1px solid transparent; border-radius:8px; color:var(--ink); text-decoration:none; transition:border-color .16s ease,background .16s ease,transform .16s ease; }
.account-control-nav a > span { grid-row:1 / span 2; display:grid; width:34px; height:34px; place-items:center; border:1px solid var(--line); border-radius:8px; color:var(--blue); background:var(--surface); }
.account-control-nav a .ui-icon { width:17px; height:17px; }
.account-control-nav a b { align-self:end; color:var(--navy); font-size:12px; }
.account-control-nav a small { align-self:start; overflow:hidden; color:var(--muted); font-size:9px; text-overflow:ellipsis; white-space:nowrap; }
.account-control-nav a:hover { border-color:color-mix(in srgb,var(--accent) 45%,var(--line)); background:var(--accent-soft); transform:translateX(2px); }
.account-control-nav a:hover b { color:var(--accent-deep); }
.account-control-content { display:grid; gap:16px; min-width:0; }
.account-overview-panel { padding:18px; border:1px solid var(--line); border-radius:10px; background:var(--surface-soft); scroll-margin-top:20px; }
.account-section-heading { display:flex; align-items:center; gap:11px; }
.account-section-heading h3 { margin:0; color:var(--navy); font-size:16px; }
.account-section-heading p { margin:3px 0 0; color:var(--muted); font-size:11px; }
.account-display-name-form { display:grid; grid-template-columns:minmax(180px,.55fr) minmax(220px,1fr) auto; align-items:end; gap:12px; margin-top:16px; padding:14px; border:1px solid var(--line); border-radius:8px; background:var(--surface); }
.account-display-name-form label { display:grid; gap:3px; color:var(--ink); font-size:12px; font-weight:850; }
.account-display-name-form label small { color:var(--muted); font-size:10px; font-weight:600; line-height:1.4; }
.account-display-name-form input { min-width:0; }
.account-display-name-form .button { min-height:42px; white-space:nowrap; }
.account-section-icon { display:grid; width:38px; height:38px; flex:0 0 38px; place-items:center; border:1px solid color-mix(in srgb,var(--blue) 34%,var(--line)); border-radius:9px; color:var(--blue); background:color-mix(in srgb,var(--blue) 8%,var(--surface)); }
.account-section-icon .ui-icon { width:19px; height:19px; }
.account-control-content :is(#filePreferencesPanel,#customerSettingsPanel,#securitySettings,#accountDataControls) { scroll-margin-top:20px; }
.password-panel { margin-top:16px; border-top:1px solid var(--line); padding-top:14px; }
.password-panel summary { display:inline-grid; grid-template-columns:auto 1fr; column-gap:10px; align-items:center; min-height:46px; padding:8px 14px; border:1px solid var(--line-strong); border-radius:7px; color:var(--navy); background:var(--surface); box-shadow:0 4px 12px rgba(15,23,42,.05); cursor:pointer; font-size:14px; font-weight:900; list-style:none; }
.password-panel summary::-webkit-details-marker { display:none; }
.password-panel summary::before { content:"PW"; grid-row:1 / span 2; display:grid; width:30px; height:30px; place-items:center; border-radius:7px; color:#fff; background:var(--accent); font-size:10px; font-weight:950; letter-spacing:.04em; line-height:1; }
.password-panel summary span { line-height:1.15; }
.password-panel summary small { color:var(--muted); font-size:10px; font-weight:700; line-height:1.2; }
.password-panel summary:hover { border-color:var(--accent); color:var(--accent-deep); }
.password-panel[open] summary { border-color:var(--accent); background:var(--accent-soft); }
.password-form { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:end; gap:12px; margin-top:14px; }.password-form label { display:grid; gap:6px; color:var(--ink); font-size:12px; font-weight:750; }.password-form input { min-width:0; }.password-form small { color:var(--muted); font-weight:500; }.password-form .button { justify-self:start; }
.account-data-controls { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-top:16px; padding-top:14px; border-top:1px solid var(--line); }.account-data-controls strong,.account-data-controls span,.account-data-controls small { display:block; }.account-data-controls span,.account-data-controls small { margin-top:3px; color:var(--muted); font-size:12px; }.account-data-actions { display:flex; align-items:center; flex-wrap:wrap; justify-content:flex-end; gap:8px; }.account-data-actions a,.workspace-footer a { color:var(--navy); font-size:12px; font-weight:750; }.workspace-footer { display:flex; justify-content:space-between; gap:16px; padding:20px 2px 4px; color:var(--muted); font-size:12px; }.privacy-page { max-width:980px; }.privacy-card { margin-top:22px; padding:34px; }.privacy-card h1 { margin:8px 0 16px; color:var(--navy); }.privacy-card h2 { margin:24px 0 8px; color:var(--navy); font-size:18px; }.privacy-card p,.privacy-card li { color:var(--muted); line-height:1.65; }
.wallet-card { margin-top:18px; padding:22px 24px; border:1px solid #b9e6ca; border-top:4px solid var(--good); border-radius:9px; background:var(--surface); box-shadow:0 12px 26px rgba(15,23,42,.04); }.wallet-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; padding-bottom:16px; border-bottom:1px solid var(--line); }.wallet-card-head h2 { margin:0; color:var(--navy); font-size:21px; }.wallet-card-head p { max-width:620px; margin:5px 0 0; color:var(--muted); font-size:13px; }.wallet-amount { display:grid; min-width:210px; gap:3px; padding:13px 15px; border:1px solid #b9e6ca; border-radius:8px; background:#f0fdf4; text-align:right; }.wallet-amount span { color:#367458; font-size:10px; font-weight:900; letter-spacing:.06em; }.wallet-amount strong { color:var(--good); font-size:26px; }.wallet-grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:16px; margin-top:16px; }.topup-form,.wallet-history { padding:15px; border:1px solid var(--line); border-radius:8px; background:var(--surface-soft); }.topup-form { display:grid; align-content:start; gap:10px; }.topup-form h3,.wallet-history h3 { margin:0; color:var(--navy); font-size:16px; }.topup-form p { margin:0 0 4px; color:var(--muted); font-size:12px; line-height:1.45; }.topup-form .button { justify-self:start; margin-top:3px; }.wallet-history-rows { display:grid; gap:0; margin-top:11px; }.wallet-row { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:10px 0; border-top:1px solid var(--line); }.wallet-row:first-child { border-top:0; padding-top:0; }.wallet-row strong,.wallet-row span,.wallet-row small { display:block; }.wallet-row strong { color:var(--ink); font-size:13px; }.wallet-row span,.wallet-row small { margin-top:2px; color:var(--muted); font-size:11px; }.wallet-row-amount { flex:0 0 auto; color:var(--danger); font-weight:900; text-align:right; }.wallet-row-amount.in { color:var(--good); }.wallet-row-amount small { color:var(--muted); font-weight:650; }
.wallet-card.admin-wallet-empty-only { padding:0; border:0; background:transparent; box-shadow:none; }
.admin-wallet-empty-only .wallet-card-head,.admin-wallet-empty-only .wallet-history .summary-block-head { display:none; }
.admin-wallet-empty-only .wallet-grid { display:block; margin-top:0; }
.admin-wallet-empty-only .wallet-history { padding:0; border:0; background:transparent; }
.admin-wallet-empty-only .wallet-history-rows { margin-top:0; }
.admin-wallet-empty-only .owner-queue-empty { padding:18px 14px; background:var(--surface-soft); }
.referral-card { margin-top:18px; padding:22px 24px; border:1px solid color-mix(in srgb,var(--accent) 58%,var(--line)); border-top:4px solid var(--accent); border-radius:9px; background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 7%,var(--surface)),var(--surface) 58%); box-shadow:0 12px 26px rgba(15,23,42,.05); }
.referral-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; padding-bottom:17px; border-bottom:1px solid var(--line); }
.referral-card-head h2 { margin:0; color:var(--navy); font-size:22px; }
.referral-card-head p { max-width:680px; margin:5px 0 0; color:var(--muted); font-size:13px; }
.referral-reward-badge { display:grid; min-width:150px; gap:2px; padding:12px 15px; border:1px solid color-mix(in srgb,var(--accent) 55%,var(--line)); border-radius:8px; background:var(--accent); color:#fff; text-align:right; }
.referral-reward-badge small { font-size:9px; font-weight:900; letter-spacing:.07em; }
.referral-reward-badge strong { font-size:25px; }
.referral-program-grid { display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:16px; margin-top:16px; }
.referral-share,.referral-terms { padding:16px; border:1px solid var(--line); border-radius:8px; background:var(--surface-soft); }
.referral-share h3,.referral-terms h3 { margin:0; color:var(--navy); font-size:15px; }
.referral-link-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; margin-top:12px; }
.referral-link-row input { min-width:0; font-family:var(--font-mono,ui-monospace,SFMono-Regular,Menlo,monospace); font-size:11px; }
.referral-share > small { display:block; margin-top:9px; color:var(--muted); font-size:10px; line-height:1.5; }
.referral-terms ol { display:grid; gap:10px; margin:12px 0 0; padding:0; list-style:none; counter-reset:referral-step; }
.referral-terms li { display:grid; grid-template-columns:24px minmax(0,1fr); gap:1px 10px; counter-increment:referral-step; }
.referral-terms li::before { grid-row:1 / span 2; display:grid; width:24px; height:24px; place-items:center; border-radius:50%; background:var(--accent); color:#fff; content:counter(referral-step); font-size:10px; font-weight:900; }
.referral-terms li b { color:var(--ink); font-size:12px; }
.referral-terms li span { color:var(--muted); font-size:11px; line-height:1.45; }
.referral-progress { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-top:14px; }
.referral-progress > span { padding:11px 12px; border:1px solid var(--line); border-radius:7px; background:var(--surface); }
.referral-progress small,.referral-progress strong { display:block; }
.referral-progress small { color:var(--muted); font-size:9px; font-weight:900; letter-spacing:.04em; text-transform:uppercase; }
.referral-progress strong { margin-top:4px; color:var(--navy); font-size:17px; }
.wallet-history-head-actions { display:flex; align-items:center; gap:8px; }
.wallet-history-head-actions .button { min-height:34px; padding:6px 10px; white-space:nowrap; }
.wallet-history-dialog .workspace-dialog-card { display:flex; min-height:min(700px,86vh); flex-direction:column; }
.wallet-full-history-meta { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px 0 2px; color:var(--muted); font-size:12px; }
.wallet-full-history-meta strong { color:var(--ink); font-size:13px; }
.wallet-full-history-rows { min-height:180px; max-height:calc(86vh - 180px); padding-right:8px; overflow:auto; overscroll-behavior:contain; }

/* Dyno access is granted by a paid File Service order or a time pass. */
.dyno-access-panel { margin-top:18px; padding:20px 24px; border:1px solid #bfd3ff; border-top:4px solid var(--blue); border-radius:9px; background:var(--surface); box-shadow:0 12px 26px rgba(15,23,42,.04); }
.dyno-access-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; }
.dyno-access-heading h2 { margin:3px 0 6px; color:var(--navy); font-size:21px; }
.dyno-access-heading p { max-width:700px; margin:0; color:var(--muted); font-size:13px; line-height:1.45; }
.dyno-access-status { flex:0 0 auto; padding:8px 11px; border:1px solid #ffbd88; border-radius:6px; background:#fff3e8; color:#a83d09; font-size:12px; font-weight:900; }
.dyno-access-offers { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-top:18px; }
.dyno-access-offer { display:grid; grid-template-columns:1fr auto; gap:5px 10px; align-items:center; padding:14px; border:1px solid var(--line); border-radius:7px; background:#f8fbff; }
.dyno-access-offer strong,.dyno-access-offer span { display:block; }
.dyno-access-offer strong { color:var(--navy); font-size:15px; }
.dyno-access-offer span { margin-top:2px; color:var(--muted); font-size:11px; }
.dyno-access-offer b { color:var(--accent-deep); font-size:17px; }
.dyno-access-offer .button { grid-column:1 / -1; width:100%; margin-top:4px; }
.module-card-locked { border-color:#ffb16a !important; box-shadow:inset 0 0 0 1px rgba(249,115,22,.12); }
.module-card-locked .module-pill { background:#fff0e5; color:#a83d09; }

/* Owner queue needs explicit controls, not one large ambiguous link. */
.owner-queue-age.review small,.owner-queue-age.review strong { color:#d92d20; }
.owner-queue-age.ready small,.owner-queue-age.ready strong { color:#067647; }
.owner-queue-open { display:inline-flex; align-items:center; justify-content:center; gap:6px; min-height:34px; padding:0 10px; border:1px solid #cbd5e1; border-radius:6px; background:#fff; color:var(--navy); font-size:12px; font-weight:850; text-decoration:none; white-space:nowrap; }
.owner-queue-open:hover { border-color:var(--accent); background:#fff7ed; color:var(--accent-deep); }

@media (max-width: 820px) {
  .shell, .admin-shell { width: min(100% - 24px, 1360px); padding-top: 22px; }
  .top, .brand, .workspace-header { align-items: flex-start; flex-direction: column; }
  .top-actions { justify-content: flex-start; }
  .admin-body .page-refresh-button { min-height: 48px; padding-inline: 16px; }
  .top { padding: 20px; }
  .brand img { width: 112px; }
  .brand h1 { font-size: 25px; }
  .grid, .admin-grid, .service-admin-layout, .queue-grid, .operations-workspace { grid-template-columns: 1fr; }
  .service-admin-layout-wide .service-admin-rows { grid-template-columns:1fr; }
  .operations-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .operations-list { max-height:440px; }
  .operations-workspace.detail-open .operation-detail { padding:15px; }
  .order-pricing-options,.order-pricing-controls,.order-price-quote { grid-template-columns:1fr; }
  .order-pricing-actions { align-items:stretch; flex-direction:column; }
  .wallet-history .summary-block-head,.wallet-full-history-meta { align-items:flex-start; flex-direction:column; }
  .wallet-history-head-actions { width:100%; justify-content:space-between; }
  .wallet-full-history-rows .wallet-row { align-items:flex-start; flex-direction:column; }
  .wallet-full-history-rows .wallet-row-amount { width:100%; text-align:left; }
  .operations-workspace.detail-open .operation-facts,.operations-workspace.detail-open .operation-fields { grid-template-columns:1fr; }
  .operation-delivery-file-grid { grid-template-columns:1fr; }
  .operation-file-picker { grid-template-columns:1fr; }
  .module-access-options, .global-module-grid, .quick-catalogue-grid, .customer-pricing-grid, .custom-price-list, .customer-specific-price-controls, .customer-password-fields { grid-template-columns: 1fr; }
  .customer-access-options { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .customer-control-columns { grid-template-columns:1fr; }
  .customer-control-card { min-height:0; }
  .customer-control-intro { align-items:stretch; flex-direction:column; gap:13px; }
  .customer-balance-current { flex-basis:auto; width:100%; min-width:0; }
  .customer-card-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .customer-card-metrics > span:nth-child(2) { border-right:0; }
  .customer-card-metrics > span:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .customer-card-detail-row,.customer-editor-overview { grid-template-columns:1fr; }
  .customer-wallet-history-head,.customer-wallet-history-item { grid-template-columns:1fr; }
  .customer-wallet-history-head { align-items:stretch; flex-direction:column; }
  .customer-wallet-history-actions { justify-content:space-between; }
  .customer-wallet-history-amount { min-width:0; padding-top:9px; border-top:1px solid var(--line); text-align:left; }
  .account-display-name-form { grid-template-columns:1fr auto; }
  .account-display-name-form label { grid-column:1 / -1; }
  .customer-specific-price-head { flex-direction:column; }
  .profile-grid, .overview, .admin-summary-grid, .admin-overview-details, .module-grid, .module-area .module-grid, .account-details .profile-grid, .password-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .workspace-welcome { grid-template-columns:1fr; }.account-snapshot { min-height:130px; }
  .owner-queue-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }.owner-queue-row { grid-template-columns:minmax(0,1fr) auto auto; }.owner-queue-row.without-age { grid-template-columns:minmax(0,1fr) auto; }.owner-queue-row-action { display:none; }.owner-queue-age { min-width:120px; }
  .wallet-grid { grid-template-columns:1fr; }.wallet-card-head { align-items:stretch; flex-direction:column; }.wallet-amount { text-align:left; }
  .referral-program-grid { grid-template-columns:1fr; }
  .dyno-access-offers { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .admin-nav { position: static; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
  .admin-nav .eyebrow, .admin-nav h2 { grid-column: 1 / -1; }
  .admin-nav button { margin-top: 0; }
}

@media (max-width: 520px) {
  .auth-grid { display:block; }
  body.auth-mode-open .workspace-header { align-items:center; flex-direction:row; gap:12px; padding:11px 13px; }
  body.auth-mode-open .workspace-header .brand { align-items:center; flex-direction:row; gap:9px; }
  body.auth-mode-open .workspace-header .brand img { width:78px; height:auto; }
  body.auth-mode-open .workspace-header .brand strong { font-size:17px; }
  body.auth-mode-open .workspace-header .top-actions { margin-left:auto; }
  .auth-mode-tabs { grid-template-columns:repeat(3,minmax(0,1fr)); gap:3px; margin-bottom:10px; padding:3px; }
  .auth-mode-tabs button { min-height:42px; padding:6px 4px; font-size:11px; line-height:1.2; }
  .auth-card { min-height:0; padding:22px 18px; }
  .access-request-card { gap:19px; }
  .access-request-intro { display:grid; gap:16px; }
  .access-response-note { width:100%; }
  .access-choice,.access-form-grid { grid-template-columns:1fr; }
  .access-welcome-offer { grid-template-columns:1fr; }
  .access-welcome-offer span { grid-row:auto; justify-self:start; }
  .access-form-notes label:last-child { grid-column:auto; }
  .access-request-actions { align-items:stretch; flex-direction:column; }
  .access-request-actions .button { width:100%; }
  .paypal-recipient { grid-template-columns:minmax(0,1fr); }
  .paypal-recipient > small { grid-column:auto; }
  .profile-grid, .overview, .schema-review-form, .admin-summary-grid, .admin-overview-details, .module-grid, .module-area .module-grid, .account-details .profile-grid, .password-form, .editor-grid { grid-template-columns: 1fr; }
  .customer-control-panel { padding:13px; }
  .customer-access-options,.customer-control-fields { grid-template-columns:1fr; }
  .customer-editor-tabs button { flex:1 1 42%; min-width:0; }
  .customer-access-option { min-height:84px!important; }
  .account-display-name-form { grid-template-columns:1fr; }
  .account-display-name-form .button { width:100%; }
  .customer-name-history-item { align-items:flex-start; flex-direction:column; }
  .customer-name-history-item time { text-align:left; }
  .workspace-header,.workspace-welcome,.owner-queue,.module-area,.account-details,.wallet-card,.referral-card { padding:18px; }.workspace-header .brand strong { font-size:22px; }.workspace-welcome h1 { font-size:27px; }.module-area .module-card { min-height:270px; }
  .referral-card-head { align-items:stretch; flex-direction:column; }
  .referral-reward-badge { text-align:left; }
  .referral-link-row { grid-template-columns:1fr; }
  .referral-progress { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .account-data-controls,.workspace-footer { align-items:flex-start; flex-direction:column; }.account-data-actions { justify-content:flex-start; }
  .dyno-access-panel { padding:18px; }.dyno-access-heading { display:block; }.dyno-access-status { display:inline-block; margin-top:12px; }.dyno-access-offers { grid-template-columns:1fr; }
  .owner-queue-head { align-items:stretch; flex-direction:column; }.owner-queue-head .button { width:100%; }
  .owner-queue-row { grid-template-columns:minmax(0,1fr) auto; }.owner-queue-row.without-age { grid-template-columns:minmax(0,1fr) auto; }.owner-queue-age { grid-column:1 / -1; grid-row:2; min-width:0; padding:8px 0 0; border-top:1px solid var(--line); border-left:0; }.owner-queue-age time { white-space:normal; }
  .admin-summary-head, .summary-block-head { align-items: stretch; flex-direction: column; }
  .capability-list li { grid-template-columns: 1fr; gap: 2px; }
  .admin-nav { display:flex; align-items:center; gap:8px; overflow-x:auto; padding:10px; scrollbar-width:thin; }
  .admin-nav .eyebrow, .admin-nav h2 { display:none; }
  .admin-nav button { flex:0 0 auto; width:auto; min-height:40px; margin:0; padding:8px 12px; white-space:nowrap; }
  .admin-subnav { margin-top:-2px; padding-bottom:11px; }
  .workspace-switcher { width:100%; }
  .workspace-switcher > summary { width:100%; justify-content:space-between; }
  .workspace-switcher > nav { right:auto; left:0; width:100%; }
  .inline-customer-price,.customer-price-edit-box { width:100%; }
  .customer-price-value { width:100%; min-height:48px; }
  .customer-price-edit-box { flex-wrap:wrap; }
  .customer-price-edit-box input { flex:1 1 120px; }
  .panel-heading { align-items: stretch; flex-direction: column; }
  .customer-card-head { flex-direction:column; }
  .customer-referral-admin { align-items:stretch; flex-direction:column; }
  .customer-referral-admin-actions { justify-content:flex-start; }
  .customer-card-status { justify-content:flex-start; }
  .customer-card-metrics { grid-template-columns:1fr; }
  .customer-card-metrics > span { border-right:0; border-bottom:1px solid var(--line); }
  .customer-card-metrics > span:last-child { border-bottom:0; }
  .customer-card-detail-row { gap:10px; }
  .customer-card-actions > span { width:100%; margin-left:0; }
  .customer-overview-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .vehicle-level-head { align-items:stretch; flex-direction:column; }
  .operation-files .operation-file-row { grid-template-columns:minmax(0,1fr) auto; }
  .operation-file-kind { grid-column:1 / -1; }
  .head-unit-option, .file-service-option-fields, .global-module-card, .vehicle-catalogue-fields, .vehicle-engine-card, .read-catalogue-grid { grid-template-columns: 1fr; }
}

/* Administrator-only server monitoring. */
.system-health-content { display:grid; gap:14px; }
.system-health-loading { display:grid; gap:5px; min-height:150px; place-content:center; padding:24px; border:1px solid var(--line); border-radius:9px; background:var(--surface-soft); color:var(--ink); text-align:center; }
.system-health-loading span { color:var(--muted); font-size:13px; }
.system-health-banner { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:14px; padding:17px 18px; border:1px solid var(--line); border-left:4px solid var(--good); border-radius:9px; background:var(--surface-soft); }
.system-health-banner.warning { border-left-color:#f59e0b; }
.system-health-banner.critical { border-left-color:var(--danger); }
.system-health-banner h3 { margin:2px 0 3px; color:var(--ink); font-size:21px; }
.system-health-banner p { margin:0; color:var(--muted); font-size:12px; }
.system-health-banner > strong { padding:7px 10px; border:1px solid #9ed9bd; border-radius:999px; color:var(--good); background:#e9f9f1; font-size:11px; letter-spacing:.05em; }
.system-health-banner.warning > strong { border-color:#f6cf85; color:#9a5b00; background:#fff8e7; }
.system-health-banner.critical > strong { border-color:#f1ada7; color:var(--danger); background:#fff0ef; }
.system-health-signal { width:13px; height:13px; border:4px solid color-mix(in srgb,var(--good) 25%,transparent); border-radius:50%; background:var(--good); background-clip:padding-box; }
.system-health-banner.warning .system-health-signal { border-color:color-mix(in srgb,#f59e0b 25%,transparent); background:#f59e0b; }
.system-health-banner.critical .system-health-signal { border-color:color-mix(in srgb,var(--danger) 25%,transparent); background:var(--danger); }
.system-health-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.system-health-card { display:grid; align-content:start; min-width:0; min-height:176px; padding:15px; border:1px solid var(--line); border-top:3px solid var(--good); border-radius:9px; background:var(--surface-soft); }
.system-health-card.warning { border-top-color:#f59e0b; }
.system-health-card.critical { border-top-color:var(--danger); }
.system-health-card header { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.system-health-card header span { color:var(--muted); font-size:10px; font-weight:900; letter-spacing:.06em; }
.system-health-card header i { color:var(--good); font-size:10px; font-style:normal; font-weight:850; }
.system-health-card.warning header i { color:#d18700; }
.system-health-card.critical header i { color:var(--danger); }
.system-health-card > strong { overflow-wrap:anywhere; margin-top:17px; color:var(--ink); font-size:27px; font-variant-numeric:tabular-nums; }
.system-health-card p { margin:7px 0 0; color:var(--muted); font-size:12px; line-height:1.45; }
.system-health-card > small { margin-top:auto; padding-top:8px; color:var(--muted); font-size:10px; }
.application-version-card > strong { color:var(--good); }
.system-health-card progress { width:100%; height:8px; margin-top:auto; overflow:hidden; border:0; border-radius:20px; background:var(--line); accent-color:var(--good); }
.system-health-card.warning progress { accent-color:#f59e0b; }
.system-health-card.critical progress { accent-color:var(--danger); }
.system-health-card progress::-webkit-progress-bar { border-radius:20px; background:var(--line); }
.system-health-card progress::-webkit-progress-value { border-radius:20px; background:var(--good); }
.system-health-card.warning progress::-webkit-progress-value { background:#f59e0b; }
.system-health-card.critical progress::-webkit-progress-value { background:var(--danger); }
.system-health-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.system-health-panel { min-width:0; padding:16px; border:1px solid var(--line); border-radius:9px; background:var(--surface-soft); }
.system-health-panel > header { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; padding-bottom:12px; border-bottom:1px solid var(--line); }
.system-health-panel > header h3 { margin:2px 0 0; color:var(--ink); font-size:18px; }
.system-health-panel > header p { margin:5px 0 0; color:var(--muted); font-size:11px; line-height:1.45; }
.system-health-panel > header > strong { color:var(--ink); font-size:16px; font-variant-numeric:tabular-nums; text-transform:capitalize; }
.worker-health-panel { grid-column:1 / -1; }
.worker-health-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:14px; }
.worker-health-card { display:grid; gap:12px; min-width:0; padding:14px; border:1px solid var(--line); border-top:3px solid var(--danger); border-radius:8px; background:var(--surface); }
.worker-health-card.online { border-top-color:var(--good); }
.worker-health-card > header { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.worker-health-card > header strong,.worker-health-card > header span,.worker-health-card > header small { display:block; }
.worker-health-card > header strong { color:var(--ink); font-size:14px; overflow-wrap:anywhere; }
.worker-health-card > header small { margin-top:3px; color:var(--muted); font-size:10px; }
.worker-health-card > header span { flex:0 0 auto; padding:5px 8px; border-radius:999px; color:var(--danger); background:color-mix(in srgb,var(--danger) 10%,var(--surface)); font-size:9px; font-weight:950; letter-spacing:.05em; text-transform:uppercase; }
.worker-health-card.online > header span { color:var(--good); background:color-mix(in srgb,var(--good) 10%,var(--surface)); }
.worker-tool-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.worker-tool { display:grid; gap:4px; padding:10px; border:1px solid var(--line); border-left:3px solid var(--danger); border-radius:7px; background:var(--surface-soft); }
.worker-tool.ready { border-left-color:var(--good); }
.worker-tool strong { color:var(--ink); font-size:12px; }
.worker-tool span { color:var(--ink-soft); font-size:10px; font-weight:800; text-transform:capitalize; }
.worker-tool small { color:var(--muted); font-size:9px; line-height:1.4; }
.worker-health-card > p { margin:0; color:var(--ink-soft); font-size:11px; line-height:1.5; }
@media (max-width:1100px) {
  .csv-log-summary { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .csv-log-toolbar { grid-template-columns:1fr 1fr; }
  .csv-log-card summary { grid-template-columns:26px minmax(200px,1.5fr) minmax(140px,1fr) 90px 115px 118px; }
  .csv-log-source { display:none !important; }
}
@media (max-width:720px) {
  .csv-log-summary,.csv-log-toolbar,.csv-log-detail { grid-template-columns:1fr; }
  .csv-log-download-toolbar { align-items:stretch; }
  .csv-log-download-toolbar .muted { width:100%; margin-left:0; }
  .csv-log-card summary { grid-template-columns:26px minmax(0,1fr) auto; }
  .csv-log-customer,.csv-log-source { display:none !important; }
  .csv-log-score,.csv-log-parser { display:none !important; }
  .worker-health-grid,.worker-tool-grid { grid-template-columns:1fr; }
  .operation-automation-screenshot { grid-template-columns:1fr; }
  .operation-automation-screenshot img { width:100%; height:auto; max-height:220px; }
}
.health-storage-list { display:grid; gap:0; margin:0; padding:0; list-style:none; }
.health-storage-list li { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:11px 0; border-bottom:1px solid var(--line); }
.health-storage-list li:last-child { border-bottom:0; padding-bottom:0; }
.health-storage-list span,.health-storage-list small { display:block; }
.health-storage-list span { color:var(--ink); font-size:12px; font-weight:750; }
.health-storage-list small { margin-top:2px; color:var(--muted); font-size:10px; font-weight:600; }
.health-storage-list strong { flex:0 0 auto; color:var(--ink); font-size:13px; font-variant-numeric:tabular-nums; }
.health-process-list { display:grid; gap:0; margin:0; }
.health-process-list > div { display:grid; grid-template-columns:110px minmax(0,1fr); gap:12px; padding:11px 0; border-bottom:1px solid var(--line); }
.health-process-list > div:last-child { border-bottom:0; padding-bottom:0; }
.health-process-list dt { color:var(--muted); font-size:11px; font-weight:850; }
.health-process-list dd { margin:0; color:var(--ink); font-size:12px; font-weight:700; text-align:right; overflow-wrap:anywhere; }
.health-events-panel { padding-bottom:8px; }
.health-event-list { display:grid; }
.health-event-row { display:grid; grid-template-columns:165px minmax(0,1fr); gap:14px; padding:12px 2px; border-bottom:1px solid var(--line); }
.health-event-row:last-child { border-bottom:0; }
.health-event-row time,.health-event-row time small { display:block; }
.health-event-row time { color:var(--ink); font-size:12px; font-weight:800; }
.health-event-row time small { margin-top:3px; color:var(--muted); font-size:10px; font-weight:600; }
.health-event-row > div > strong { display:block; color:var(--ink); font-size:12px; line-height:1.45; }
.health-event-row.push > div > strong { color:#d47a00; }
.health-event-context { display:flex; flex-wrap:wrap; gap:5px 12px; margin-top:5px; }
.health-event-context span { color:var(--muted); font-size:10px; }
.health-event-context b { margin-right:3px; color:var(--ink-soft); }
.health-empty { display:grid; gap:4px; place-items:center; min-height:100px; padding:18px; color:var(--ink); text-align:center; }
.health-empty span { color:var(--muted); font-size:11px; }
.application-version-history { padding-bottom:8px; }
.application-version-list { display:grid; }
.application-version-entry { border-bottom:1px solid var(--line); }
.application-version-entry:last-child { border-bottom:0; }
.application-version-entry summary { display:grid; grid-template-columns:minmax(150px,.55fr) minmax(220px,1.45fr) auto; align-items:center; gap:14px; padding:14px 2px; color:var(--ink); cursor:pointer; list-style:none; }
.application-version-entry summary::-webkit-details-marker { display:none; }
.application-version-entry summary::after { content:"+"; grid-column:4; width:24px; color:var(--muted); font-size:20px; font-weight:700; text-align:center; }
.application-version-entry[open] summary::after { content:"\2212"; color:var(--good); }
.application-version-entry summary > span { display:grid; grid-template-columns:auto 1fr; align-items:center; justify-content:start; gap:5px 8px; }
.application-version-entry summary strong { color:var(--ink); font-size:17px; font-variant-numeric:tabular-nums; }
.application-version-entry summary i { justify-self:start; padding:3px 7px; border-radius:999px; color:var(--good); background:color-mix(in srgb,var(--good) 13%,transparent); font-size:9px; font-style:normal; font-weight:900; letter-spacing:.05em; text-transform:uppercase; }
.application-version-entry summary small { grid-column:1 / -1; color:var(--muted); font-size:10px; }
.application-version-entry summary b { color:var(--ink-soft); font-size:12px; line-height:1.4; }
.application-version-entry summary em { color:var(--muted); font-size:10px; font-style:normal; font-weight:800; white-space:nowrap; }
.application-version-entry[open] summary em { color:var(--good); }
.application-version-entry ul { display:grid; gap:8px; margin:0 0 14px; padding:13px 17px 13px 34px; border-left:3px solid var(--good); border-radius:0 7px 7px 0; background:color-mix(in srgb,var(--good) 6%,var(--surface)); }
.application-version-entry li { color:var(--ink-soft); font-size:12px; line-height:1.5; }

@media (max-width: 980px) {
  .customer-price-catalogue-grid,.feature-pricing-workflows,.head-unit-workflow-editor { grid-template-columns:1fr; }
  .head-unit-option { grid-template-columns:1fr 1fr; }
  .head-unit-option .option-description { grid-column:1 / -1; }
  .head-unit-option .button { justify-self:start; }
  .feature-customer-pricing-head { align-items:stretch; flex-direction:column; }
  .feature-customer-pricing-head label { flex-basis:auto; }
  .system-health-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width: 620px) {
  .system-health-banner { grid-template-columns:auto minmax(0,1fr); }
  .system-health-banner > strong { grid-column:2; justify-self:start; }
  .system-health-metrics,.system-health-detail-grid { grid-template-columns:1fr; }
  .health-event-row { grid-template-columns:1fr; gap:7px; }
  .application-version-entry summary { grid-template-columns:minmax(0,1fr) auto; gap:8px; }
  .application-version-entry summary > b,.application-version-entry summary > em { grid-column:1; }
  .application-version-entry summary::after { grid-column:2; grid-row:1 / span 3; }
}

/* Customer dashboard: compact orders, visual theme picker and account menus. */
.header-user-menu-trigger {
  appearance:none;
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:46px;
  padding:5px 10px 5px 6px;
  border:1px solid var(--line-strong);
  border-radius:10px;
  color:var(--navy);
  background:var(--surface-soft);
  font:inherit;
  cursor:pointer;
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease;
}
.header-user-menu-trigger::after { content:none; }
.header-user-menu-trigger:hover,.header-user-menu-trigger[aria-expanded="true"] { border-color:var(--accent); color:var(--accent-deep); background:var(--accent-soft); box-shadow:0 8px 22px rgba(15,23,42,.1); transform:translateY(-1px); }
.header-user-avatar { display:grid; flex:0 0 34px; width:34px; height:34px; place-items:center; border-radius:8px; color:var(--accent-deep); background:var(--accent-soft); }
.header-user-avatar .ui-icon { width:18px; height:18px; }
.header-user-copy { display:grid; gap:1px; min-width:0; text-align:left; }
.header-user-copy small { color:var(--muted); font-size:9px; font-weight:850; letter-spacing:.055em; line-height:1.1; text-transform:uppercase; }
.header-user-copy strong { max-width:150px; overflow:hidden; color:var(--navy); font-size:13px; font-weight:950; text-overflow:ellipsis; white-space:nowrap; }
.header-user-chevron { width:15px; height:15px; color:var(--muted); transition:transform .16s ease; }
.header-user-menu-trigger[aria-expanded="true"] .header-user-chevron { transform:rotate(180deg); }
.module-area .module-grid { margin-top:0; }

.workspace-dialog { width:min(920px,calc(100% - 28px)); max-height:min(86vh,900px); padding:0; overflow:visible; border:0; border-radius:12px; color:var(--ink); background:transparent; }
.workspace-dialog::backdrop { background:rgba(3,8,13,.72); backdrop-filter:blur(5px); }
.workspace-dialog-card { max-height:86vh; padding:22px; overflow:auto; border:1px solid var(--line-strong); border-top:4px solid var(--accent); border-radius:12px; background:var(--surface); box-shadow:0 28px 80px rgba(0,0,0,.36); }
.workspace-dialog-head { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; padding-bottom:15px; border-bottom:1px solid var(--line); }
.workspace-dialog-head h2 { margin:0; color:var(--navy); font-size:24px; }
.workspace-dialog-head p { margin:5px 0 0; color:var(--muted); font-size:12px; }
.workspace-dialog-head .icon-button { flex:0 0 auto; }
.workspace-dialog-actions { display:flex; justify-content:flex-end; gap:9px; margin-top:16px; padding-top:14px; border-top:1px solid var(--line); }
.admin-recent-auth-dialog { width:min(560px,calc(100% - 28px)); }
.admin-recent-auth-form { margin-top:18px; }
.admin-recent-auth-form .notice { margin:0; }
.admin-recent-auth-form .workspace-dialog-actions { margin-top:2px; }
.customer-debt-dialog { width:min(760px,calc(100% - 28px)); }
.customer-debt-summary { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-top:16px; padding:13px 14px; border:1px solid color-mix(in srgb,var(--danger) 28%,var(--line)); border-radius:8px; background:color-mix(in srgb,var(--danger) 7%,var(--surface-soft)); }
.customer-debt-summary span { color:var(--muted); font-size:11px; font-weight:900; letter-spacing:.045em; text-transform:uppercase; }
.customer-debt-summary strong { color:var(--danger); font-size:24px; }
.customer-debt-rows { display:grid; gap:8px; max-height:min(58vh,620px); margin-top:13px; overflow:auto; overscroll-behavior:contain; }
.customer-debt-row { display:grid; grid-template-columns:34px minmax(0,1fr) auto auto; align-items:center; gap:12px; padding:11px 12px; border:1px solid var(--line); border-left:3px solid var(--danger); border-radius:8px; background:var(--surface-soft); }
.customer-debt-rank { display:grid; width:28px; height:28px; place-items:center; border-radius:999px; color:var(--danger); background:color-mix(in srgb,var(--danger) 11%,var(--surface)); font-size:11px; font-weight:950; }
.customer-debt-identity { min-width:0; }
.customer-debt-identity strong,.customer-debt-identity span { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.customer-debt-identity strong { color:var(--ink); font-size:13px; }
.customer-debt-identity span { margin-top:2px; color:var(--muted); font-size:11px; }
.customer-debt-amount { min-width:112px; text-align:right; }
.customer-debt-amount small,.customer-debt-amount strong { display:block; }
.customer-debt-amount small { color:var(--muted); font-size:9px; font-weight:900; letter-spacing:.045em; text-transform:uppercase; }
.customer-debt-amount strong { margin-top:2px; color:var(--danger); font-size:17px; }
.customer-debt-empty { display:grid; min-height:110px; place-content:center; gap:4px; padding:18px; border:1px dashed var(--line-strong); border-radius:8px; color:var(--muted); background:var(--surface-soft); text-align:center; }
.customer-debt-empty strong { color:var(--ink); }
.money-added-summary { border-color:color-mix(in srgb,var(--good) 34%,var(--line)); background:color-mix(in srgb,var(--good) 8%,var(--surface-soft)); }
.money-added-summary strong { color:var(--good); }
.money-added-row { border-left-color:var(--good); }
.money-added-row .customer-debt-rank { color:var(--good); background:color-mix(in srgb,var(--good) 12%,var(--surface)); }
.money-added-row .customer-debt-amount { min-width:210px; }
.money-added-row .customer-debt-amount strong { color:var(--good); }
.user-menu-dialog { width:min(470px,calc(100% - 28px)); }
.user-menu-dialog .workspace-dialog-card { padding:20px; }
.user-menu-head { display:grid; grid-template-columns:46px minmax(0,1fr) auto; align-items:center; }
.user-menu-head > div { min-width:0; }
.user-menu-head .icon-button { width:38px; height:38px; padding:9px; }
.user-menu-avatar { display:grid; width:44px; height:44px; place-items:center; border:1px solid color-mix(in srgb,var(--accent) 36%,var(--line)); border-radius:12px; color:var(--accent-deep); background:var(--accent-soft); }
.user-menu-avatar .ui-icon { width:22px; height:22px; }
.user-menu-list { display:grid; gap:8px; margin-top:14px; }
.user-menu-row { display:grid; grid-template-columns:42px minmax(0,1fr) auto; align-items:center; gap:12px; width:100%; min-height:72px; padding:11px 12px; border:1px solid var(--line); border-radius:9px; color:var(--ink); background:var(--surface-soft); font:inherit; text-align:left; text-decoration:none; cursor:pointer; transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease; }
.user-menu-row:hover { border-color:color-mix(in srgb,var(--accent) 55%,var(--line)); color:var(--accent-deep); background:var(--accent-soft); box-shadow:0 7px 18px rgba(15,23,42,.07); transform:translateY(-1px); }
.user-menu-row:disabled { opacity:.64; cursor:wait; transform:none; }
.user-menu-icon { display:grid; width:40px; height:40px; place-items:center; border:1px solid var(--line); border-radius:9px; color:var(--blue); background:var(--surface); }
.user-menu-icon .ui-icon { width:19px; height:19px; }
.user-menu-copy { display:grid; gap:3px; min-width:0; }
.user-menu-copy strong { color:var(--navy); font-size:14px; font-weight:900; }
.user-menu-copy small { color:var(--muted); font-size:11px; line-height:1.35; }
.user-menu-chevron { width:18px; height:18px; color:var(--muted); }
.user-menu-row:hover :is(.user-menu-copy strong,.user-menu-chevron) { color:var(--accent-deep); }
.user-menu-row.danger .user-menu-icon,.user-menu-row.danger .user-menu-copy strong { color:var(--danger); }
.user-menu-switch { position:relative; display:block; width:46px; height:26px; flex:0 0 46px; border:1px solid var(--line-strong); border-radius:999px; background:var(--surface); box-shadow:inset 0 1px 2px rgba(15,23,42,.09); transition:border-color .18s ease,background .18s ease; }
.user-menu-switch i { position:absolute; top:3px; left:3px; width:18px; height:18px; border-radius:50%; background:var(--muted); box-shadow:0 2px 5px rgba(15,23,42,.25); transition:transform .18s ease,background .18s ease; }
.user-menu-row.is-active .user-menu-switch { border-color:var(--good); background:color-mix(in srgb,var(--good) 78%,#fff); }
.user-menu-row.is-active .user-menu-switch i { background:#fff; transform:translateX(20px); }

.workspace-skin-field { display:grid; gap:8px; margin-bottom:10px; }
.workspace-skin-field > strong { color:var(--ink); font-size:12px; }
.user-appearance-preset-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.user-appearance-preset-grid .appearance-preset { grid-template-columns:30px minmax(0,1fr); min-height:112px; padding:10px; }
.user-appearance-preset-grid .appearance-swatch { width:28px; height:58px; }
.user-appearance-preset-grid .appearance-preset strong { font-size:12px; }
.user-appearance-preset-grid .appearance-preset small { font-size:10px; }

html[data-ponto-theme="operations"] .workspace-dialog-card,
html[data-ponto-theme="operations"] .user-menu-row { border-color:#35465e; background:#111824; }
html[data-ponto-theme="operations"] .user-menu-row:hover { border-color:#ff7438; background:#1b2637; }
html[data-ponto-theme="operations"] :is(.workspace-dialog-head h2,.user-menu-copy strong,.header-user-copy strong) { color:#eef3f9; }
html[data-ponto-theme="operations"] .user-menu-icon { border-color:#35465e; background:#172235; }
html[data-ponto-theme="operations"] .header-user-menu-trigger { color:#eef3f9; border-color:#43536b; background:#172235; }
html[data-ponto-theme="operations"] :is(.account-control-sidebar,.account-overview-panel) { border-color:#35465e; background:#111824; }
html[data-ponto-theme="operations"] .account-control-nav a > span { border-color:#35465e; background:#172235; }
html[data-ponto-theme="operations"] :is(.account-control-nav a b,.account-section-heading h3) { color:#eef3f9; }

@media (max-width:980px) {
  .user-appearance-preset-grid { grid-template-columns:1fr; }
  .user-appearance-preset-grid .appearance-preset { min-height:86px; }
  .account-control-layout { grid-template-columns:1fr; }
  .account-control-sidebar { position:static; overflow-x:auto; }
  .account-control-sidebar-label { display:none; }
  .account-control-nav { grid-template-columns:repeat(5,minmax(145px,1fr)); }
  .account-control-nav a:hover { transform:translateY(-1px); }
}
@media (max-width:640px) {
  .customer-debt-row { grid-template-columns:30px minmax(0,1fr) auto; gap:9px; }
  .customer-debt-row .button { grid-column:2 / -1; justify-self:stretch; }
  .customer-debt-amount { min-width:90px; }
  .money-added-row .customer-debt-amount { min-width:115px; }
  .workspace-dialog-card { padding:17px; }
  .header-user-copy small { display:none; }
  .header-user-copy strong { max-width:95px; }
  .user-menu-dialog .workspace-dialog-card { padding:15px; }
  .user-menu-row { min-height:68px; padding:9px; }
  .account-control-layout { gap:13px; }
  .account-control-sidebar { margin:0 -3px; padding:8px; }
  .account-control-nav { grid-template-columns:repeat(5,minmax(132px,1fr)); }
  .account-control-content { gap:12px; }
  .account-overview-panel { padding:14px; }
}

/* Green is the active coding/progress accent in every portal theme. */
.owner-queue-age.progress strong { color:#15803d; }
.module-area .coding-module:hover { border-color:#86efac; }
.coding-module .module-code { color:#08766c; }
.module-area .coding-module .module-card > strong,
.module-area .coding-module .module-card > strong span,
.module-area .coding-module .module-card > strong b { color:#fff; }
