/* Shared interaction palette. Do not override profile gradients, business tags,
   gender avatars, calendar event colors, or semantic success/error colors. */
:root { --brand:#c66b2b; --brand-soft:#f8e7d8; --brand-ink:#773f1c;
 --brand-action:#e8a064; --brand-action-hover:#df9253; --brand-border:#eacdb4; }
body .btn:not(.secondary):not(.danger):not(.success),
body .header-filter-footer .btn.primary,
body .settings-dialog-footer .btn,
body .table-modal .table-setting-submit,
body .profit-workspace .fixed-expense-row button.primary {
 background:var(--brand-action); border-color:#cc874e; color:#482b17; box-shadow:none;
}
body .btn:not(.secondary):not(.danger):not(.success):hover,
body .header-filter-footer .btn.primary:hover,
body .settings-dialog-footer .btn:hover {
 background:var(--brand-action-hover); border-color:#b87743; box-shadow:0 3px 10px #73513b12;
}
body .btn.secondary:hover { background:#fff6ed; border-color:var(--brand-border); color:var(--brand-ink); box-shadow:none; }
body .app-shell .sidebar .nav button.active {
 background:var(--brand-soft); border-color:var(--brand-border); color:var(--brand-ink); box-shadow:none;
}
body .app-shell .sidebar .nav button.active svg { color:var(--brand); }
body .app-shell .sidebar .nav button.active::after { background:var(--brand); }
body .app-shell .sidebar .nav button:hover { background:#faf4ee; color:#73513b; border-color:#f0e5da; }
body :is(.customer-tabs,.profile-sections,.schedule-tabs,.dashboard-trend-tabs,.pay-rule-nav,.pay-rule-categories,.pay-group-counts,.memo-filters,.calendar-mobile-menu) button.active,
body :is(.section-tab.active,.preset-btn.active,.record-date-preset.active,.month-check-chip.active,.month-mini-action.active,.filter-choice.active,.chart-type-option.active,.pay-profile-person.active,.th-button.is-active),
body .table-modal-tabs button.is-active,
body .memo-quick-tabs button[aria-selected=true] {
 background:var(--brand-soft); color:var(--brand-ink); border-color:var(--brand-border); box-shadow:none;
}
body .mobile-bottom-nav button.active { color:var(--brand-ink); }
body :is(.dashboard-trend-tabs) button:not(.active) { background:#f4f5f7; color:#637083; }
body .inline-metric-link { color:#3f5065; font-weight:500; }
body .inline-metric-link:hover { color:var(--brand-ink); text-decoration:underline; }
body .analytics-metric-icon.tone-blue { background:#eef3f8; color:#6382a5; border-color:#dde6f0; }
body .analytics-metric-icon.tone-cyan { background:#edf5f3; color:#5b8c83; border-color:#dcebe6; }
body .analytics-metric-icon.tone-amber { background:#fff3e8; color:#bd844e; border-color:#f3e1ce; }
body .analytics-metric-icon.tone-violet { background:#f2f0f6; color:#8b7e9e; border-color:#e7e2ee; }
body .people-analysis-page .metric:nth-child(n) .metric-value,
body .pay-metric>strong, body .pay-group-counts b { color:#283548; }
body :is(.input,.select,.textarea):focus,
body .custom-select.is-open .custom-select-button {
 border-color:#cc874e; box-shadow:0 0 0 3px #c66b2b18; outline:none;
}
body :is(button,a):focus-visible { outline:2px solid #c66b2b; outline-offset:2px; }
body input:is([type=checkbox],[type=radio]) { accent-color:#c66b2b; }
body .custom-select-popover button.selected,
body :is(.date-picker-grid,.month-picker-grid) button.selected {
 background:var(--brand-soft); color:var(--brand-ink); border-color:var(--brand-border);
}
body .custom-select-popover button.selected b { color:currentColor; }
body .custom-select-popover button:hover:not(:disabled):not(.selected),
body :is(.date-picker-grid,.month-picker-grid) button:hover:not(.selected):not(:disabled) { background:#f3f5f4; color:#3f5065; }
body .table-text-button { color:#73513b; }
body .table-text-button:disabled { color:#a3afbf; }
body .field-eye:not(.is-hidden) { color:#73513b; background:#f8eee4; }
/* Keep document figures readable without repainting each chart series. */
body .trend-value-label { fill:#687587; font-weight:500; }
body :is(.lead-convert-drawer,.lead-centered-editor) :is(.input,.textarea):focus,
body :is(.lead-convert-drawer,.lead-centered-editor) .custom-select-button:focus-visible,
body .settings-row .input:focus { border-color:#cc874e; box-shadow:0 0 0 3px #c66b2b18; }
body .lead-convert-payment .check-option:has(input:checked) { color:var(--brand-ink); border-color:var(--brand-border); background:var(--brand-soft); }

/* Match the dashboard selectors' specificity so legacy solid orange cannot win. */
body .dashboard-page .dashboard-trend-tabs button.active,
body .dashboard-page .preset-btn.active {
 background:var(--brand-soft); border-color:var(--brand-border);
 color:var(--brand-ink); font-weight:600; box-shadow:none;
}
