/* Tonos carbón, sin brillos. Solo pantalla: los recibos conservan su impresión. */
:root {
  color-scheme: dark;
  --ink: #d7dbe2;
  --muted: #a4acb8;
  --paper: #121417;
  --panel: #1c1f24;
  --line: #363c46;
  --gold: #92a6c6;
  --gold-dark: #acbbd2;
  --green: #8ac1a4;
  --red: #e4a0a7;
  --cream: #1c1f24;
  --shadow: 0 3px 12px rgb(0 0 0 / 10%);
}
body, .auth-page { color: var(--ink); background: var(--paper); }
.sidebar { color: var(--ink); background: #17191d; }
.brand img { background: #25292f; }
.brand strong, .topbar h1, .auth-form h1 { color: var(--ink); }
.brand span, .session-card small, .source-card small, .auth-footer,
.eyebrow, .auth-eyebrow { color: var(--muted); }
.brand { border-bottom-color: var(--line); }
.nav-item { color: #b6bdc8; }
.nav-item:hover, .developer-access:hover { color: #d7dfec; background: #252b34; }
.nav-item.active { color: #d3deef; background: #2b3544; box-shadow: none; }
.nav-item.active::before { background: #92a6c6; }
.topbar, .filters, .kpi, .panel, .center-card, .auth-card,
.modal-dialog, .day-sales-dialog, .sale-receipt-dialog, .count-confirm {
  color: var(--ink); background: var(--panel); border-color: var(--line);
}
.session-card, .source-card, .compare-period, .compare-intro,
.developer-steps li, .schedule-form, .calendar-area, .calendar-day,
.activity-card, .user-form, .user-form fieldset, .user-switches,
.marketing-form, .receipt-account, .cash-sale-products, .ie-review,
.product-list-wrap, .daily-grid-wrap { color: var(--ink); background: #20242a; border-color: var(--line); }
.sales-goal-summary > div, .cash-system-summary > div, .cash-close-totals > div,
.compare-kpi, .sales-goal-day { background: #242930; border-color: var(--line); }
.kpi { border-top-color: #70809b; }
.kpi:nth-child(2) { border-top-color: #6a8e81; }
.kpi:nth-child(3) { border-top-color: #8c7e9b; }
.kpi:nth-child(4) { border-top-color: #a08d6b; }
.primary, .auth-form button { color: #e2e7ee; background: #3c506e; border-color: #536887; }
.primary:hover, .auth-form button:hover { color: #e9edf3; background: #485f81; border-color: #7185a1; }
.secondary, .print-button, .user-edit-button, .session-card button,
.sidebar-toggle, .modal-x { color: #cbd2df; background: #272d36; border-color: #414955; box-shadow: none; }
.secondary:hover, .print-button:hover, .user-edit-button:hover,
.session-card button:hover, .sidebar-toggle:hover { color: #e0e5ed; background: #343d4a; border-color: #626f83; }
:root body input, :root body select, :root body textarea,
#inventoryEditor input, #inventoryEditor select { color: var(--ink); background-color: #16191e; border-color: #424a57; accent-color: #8fa7cb; }
input::placeholder, textarea::placeholder { color: #919aa8; }
select option { color: var(--ink); background: #1c1f24; }
.user-form select { background-image: none; appearance: auto; }
input[type="file"]::file-selector-button { color: #d7dbe2; background: #303846; border: 1px solid #526075; border-radius: 4px; padding: 7px 10px; margin-right: 12px; }
:is(body) :is(button, input, select, textarea, a):focus-visible { outline-color: #96aacb; box-shadow: none; }
.auth-form input:focus { border-color: #92a6c6; box-shadow: 0 0 0 2px #92a6c620; }
.status-dot { background: #8ac1a4; box-shadow: 0 0 0 3px #8ac1a416; }
.chart-note, .developer-pending, .developer-tag, .rank-number,
.center-card .token, .receipt-account-avatar { color: #bdcce1; background: #293343; border-color: #566b88; }
.chart-note i { color: #bdcce1; }
.sales-goal-progress, .sales-goal-day > div, .progress { background: #343b46; }
.sales-goal-progress > div, .sales-bar-fill, .sales-goal-day > div i, .progress i { color: #e4e9f1; background: #687fa3; box-shadow: none; }
.sales-goal-day.behind, .calendar-day.outside { background: #1d2026; }
.calendar-day.selected, .calendar-day:hover { background: #2d3848; }
.calendar-day.outside { color: #949dab; }
.calendar-day.today > b, .day-count { color: #e3e8f0; background: #495e80; }
.calendar-event, .user-badge { color: #bdcce1; background: #2c384b; }
.calendar-weekdays, .cash-sales-preview-head, .compare-tabs { background: #272e38; }
.compare-tabs button.active { color: #d7e0ee; background: #3a4658; box-shadow: none; }
.sales-bar-track { border-color: var(--line); background: repeating-linear-gradient(90deg,#232933 0,#232933 calc(25% - 1px),#3a4351 25%); }
.sales-bar-data { color: #dce3ee; background: #263142; border-color: #4a5970; }
thead th, .product-list-wrap thead th, .daily-product-grid thead th,
.daily-product-grid thead .product-cell, .daily-product-grid tfoot th,
.daily-product-grid tfoot td, .daily-product-grid tfoot .product-cell,
.daily-product-grid .column-total { color: #c0c9d8; background: #2b323d; }
tbody tr:hover, .product-list-wrap tbody tr:hover td { background: #272e38; }
.daily-product-grid .product-cell, .daily-product-grid .day-cell.zero { color: #adb6c4; background: #20252d; }
.daily-product-grid .row-total, .daily-product-grid .grand-total { color: #dfe6ef; background: #394b65; }
.badge.c, .decision.good, .user-badge.active, .seller-goal-badge.reached,
.compare-badge.good, .calendar-event.status-completada, .sales-goal-day.reached,
.auth-message, .daily-product-grid .day-cell.sold { color: #a2cdb7; background: #253b32; border-color: #426450; }
.badge.p, .decision.reorder, .decision.warning, .user-badge.admin,
.seller-goal-badge.pending, .compare-badge.alert, .cash-sale-payment,
.message { color: #d8c293; background: #3d3526; }
.badge.a, .decision.urgent, .user-badge.inactive, .compare-badge.review,
.message.error, .auth-message.error, .calendar-event.status-cancelada { color: #e1afb6; background: #432c32; }
.seller-goal-excess { color: #a2cdb7; }
.modal-backdrop, .day-sales-dialog::backdrop, .sale-receipt-dialog::backdrop,
.count-confirm::backdrop { background: #080a0dcc; }
.sale-receipt-paper { color: #222; background: #deded8; }
.loading { color: var(--ink); background: #121417ed; }
.loading span { border-color: #414955; border-top-color: #92a6c6; }
::-webkit-scrollbar { width: 12px; height: 12px; }
::-webkit-scrollbar-track { background: #191c21; }
::-webkit-scrollbar-thumb { background: #4a515e; border: 3px solid #191c21; border-radius: 8px; }
