:root {
  --ponto-font: "Segoe UI Variable Text", "Aptos", "Segoe UI", system-ui, -apple-system, sans-serif;
  --ponto-font-display: "Segoe UI Variable Display", "Aptos Display", "Segoe UI", system-ui, sans-serif;
}

html { font-size: 16px; }
body {
  font-family: var(--ponto-font) !important;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

button, input, select, textarea { font-family: inherit; font-size: 15px !important; }
input, select, textarea { line-height: 1.35; }
button, .button, .nav-link { font-weight: 650 !important; }

h1, h2, h3, h4, h5, h6,
.brand strong, .coding-brand strong, .app-header .brand strong {
  font-family: var(--ponto-font-display) !important;
  font-weight: 700 !important;
  letter-spacing: -.015em;
  line-height: 1.2;
}

p, li, td, dd, .muted { font-size: 15px; line-height: 1.55; }
strong, b { font-weight: 700; }
small { font-size: 13px !important; line-height: 1.5; }
label { font-size: 14px !important; font-weight: 650 !important; letter-spacing: 0 !important; }

.eyebrow, .service-code, .module-code, .order-kicker, .panel-kicker,
.operation-type, .operation-action, th, legend {
  font-family: var(--ponto-font) !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  letter-spacing: .045em !important;
}

.status-pill, .module-pill, .module-status, .count-badge,
.file-title em, .file-row-heading em, .dyno-identity-badge {
  font-size: 12.5px !important;
  font-weight: 700 !important;
}

.settings-grid label, .setting-switches label, .setting-channels label,
.make-choice, .file-tool-row strong, .file-tool-row select {
  font-size: 14px !important;
}

.make-choice { font-weight: 600 !important; line-height: 1.35; }
.favorite-makes-picker section > span,
.file-tool-default, .settings-grid legend { font-weight: 700 !important; }

.order-row, .admin-order-row, .order-card, .service-item,
.quick-service-row, .operation-row { font-size: 14.5px; }

.order-row strong, .admin-order-row strong, .order-card strong,
.service-item strong { font-weight: 700 !important; }

.detail-stat span, .order-detail-rows span, .summary-stat span,
.summary-total span, .operation-facts span, .operation-fields span {
  font-size: 12.5px !important;
  font-weight: 700 !important;
}

/* Override legacy component-level 9–11 px text throughout all commercial
   surfaces. These selectors intentionally come last in the shared stylesheet. */
.workspace-header .brand small, .app-header .brand small, .coding-brand small,
.header-greeting, .balance-pill, .user-control-link, .admin-workspace-link,
.account-details-head p, .file-preferences-head p, .settings-grid small,
.file-preferences-actions small, .security-row, .security-row small,
.wallet-row span, .wallet-row small, .module-card p, .module-card li,
.owner-queue-row small, .owner-queue-metric small, .stat span,
.form-help, .upload-slot span, .upload-slot em, .choice-card small,
.order-card small, .order-card span, .order-detail-head p, .message time,
.message p, .file-row small, .order-workbench-title p, .order-request-summary span,
.order-detail-rows span, .summary-stat span, .summary-total span,
.dyno-quality-gate, .dyno-quality-fixes, .admin-search,
.admin-order-row time, .admin-order-vehicle small, .admin-order-customer small,
.service-item span, .form-field label, .feature-options label small,
.ncd-scope-choice small, .ncd-ecu-grid label, .ncd-ecu-grid small,
.detail-stat span, .file-group-head small, .notification-item time {
  font-size: 13px !important;
  line-height: 1.45;
}

.workspace-header .brand strong, .app-header .brand strong, .coding-brand strong {
  font-size: 22px !important;
}

.account-details-head h2, .file-preferences-head h3, .customer-settings h3 {
  font-size: 21px !important;
}

.profile-grid .stat, .file-tool-row, .settings-grid fieldset,
.security-grid article {
  font-size: 15px;
}

.profile-grid .stat span { font-size: 12.5px !important; }
.profile-grid .stat strong { font-size: 16px !important; line-height: 1.4; }

.file-tool-row {
  min-height: 60px;
  padding: 11px 13px;
}
.file-tool-default { font-size: 11.5px !important; }
.file-tool-row select { min-height: 38px; }

.setting-switches label, .setting-channels label {
  min-height: 34px;
  line-height: 1.45;
}

.settings-grid select { min-height: 44px; }
.make-choice { min-height: 34px; padding: 7px 9px; }

th, .order-list-head, .admin-order-list-head {
  font-size: 12px !important;
}

.button, button { min-height: 42px; }

@media (max-width: 700px) {
  body { font-size: 14px; }
  button, input, select, textarea { font-size: 16px; }
}

html[data-ponto-theme="operations"] body {
  font-family: "Aptos", "Segoe UI Variable Text", "Segoe UI", system-ui, sans-serif !important;
}
html[data-ponto-theme="operations"] h1,
html[data-ponto-theme="operations"] h2,
html[data-ponto-theme="operations"] h3,
html[data-ponto-theme="operations"] h4,
html[data-ponto-theme="operations"] h5,
html[data-ponto-theme="operations"] h6,
html[data-ponto-theme="operations"] .brand strong,
html[data-ponto-theme="operations"] .coding-brand strong,
html[data-ponto-theme="operations"] .app-header .brand strong {
  font-family: "Segoe UI Variable Display", "Aptos Display", "Segoe UI", system-ui, sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: -.02em !important;
}
