/**
 * Глобальные правки читаемости тёмной темы.
 * Подключается последним в app.html.
 */

body.dark-theme {
    color: var(--text-main);
}

/* ── Формы ── */
body.dark-theme .modern-input,
body.dark-theme .modern-textarea,
body.dark-theme select.modern-input {
    background-color: var(--input-bg);
    border-color: var(--glass-border);
    color: var(--text-main);
}

body.dark-theme .modern-input:focus,
body.dark-theme .modern-textarea:focus,
body.dark-theme select.modern-input:focus {
    border-color: var(--primary);
    background-color: var(--bg-elevated);
}

body.dark-theme .modern-input::placeholder,
body.dark-theme .modern-textarea::placeholder {
    color: var(--text-subtle);
}

body.dark-theme select.modern-input option,
body.dark-theme select.modern-input optgroup {
    background: var(--bg-secondary);
    color: var(--text-main);
}

body.dark-theme input:-webkit-autofill,
body.dark-theme input:-webkit-autofill:hover,
body.dark-theme input:-webkit-autofill:focus,
body.dark-theme textarea:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px var(--bg-secondary) inset !important;
    -webkit-text-fill-color: var(--text-main) !important;
    caret-color: var(--text-main);
}

body.dark-theme .field-group label {
    color: var(--text-muted);
}

/* ── Кнопки ── */
body.dark-theme .btn-secondary {
    background: var(--surface-muted);
    border-color: var(--glass-border);
    color: var(--text-main);
}

body.dark-theme .btn-secondary:hover {
    background: var(--glass-bg-hover);
    border-color: rgba(148, 163, 184, 0.22);
    color: var(--text-main);
}

body.dark-theme .pos-btn-debt,
body.dark-theme .pos-btn-return,
body.dark-theme .pos-btn-print-receipt {
    background: var(--surface-muted);
    border-color: var(--glass-border);
    color: var(--text-main);
}

body.dark-theme .pos-btn-debt:hover,
body.dark-theme .pos-btn-return:hover,
body.dark-theme .pos-btn-print-receipt:hover {
    background: var(--glass-bg-hover);
    color: var(--text-main);
}

/* ── Вкладки / переключатели ── */
body.dark-theme .tab-btn,
body.dark-theme .p-btn,
body.dark-theme .settings-tab-btn,
body.dark-theme .reports-sidebar-item,
body.dark-theme .kiosk-category-btn,
body.dark-theme .pos-segment-btn {
    background: var(--surface-muted);
    border-color: var(--glass-border);
    color: var(--text-muted);
}

body.dark-theme .tab-btn:hover,
body.dark-theme .p-btn:hover,
body.dark-theme .settings-tab-btn:hover,
body.dark-theme .reports-sidebar-item:hover,
body.dark-theme .kiosk-category-btn:hover,
body.dark-theme .pos-segment-btn:hover {
    background: var(--glass-bg-hover);
    color: var(--text-main);
}

/* ── Карточки и панели ── */
body.dark-theme .stat-card,
body.dark-theme .warehouse-stat-card,
body.dark-theme .task-stat-card,
body.dark-theme .settings-card,
body.dark-theme .chart-container,
body.dark-theme .glass-table-container,
body.dark-theme .client-card,
body.dark-theme .task-card,
body.dark-theme .order-card,
body.dark-theme .reports-catalog-card,
body.dark-theme .reports-finance-summary-card,
body.dark-theme .pos-shift-widget,
body.dark-theme .pos-segment,
body.dark-theme .pos-product-card,
body.dark-theme .kiosk-product-card {
    background: var(--glass-bg);
    border-color: var(--glass-border);
}

body.dark-theme .client-card:hover,
body.dark-theme .pos-product-card:hover,
body.dark-theme .kiosk-product-card:hover {
    background: var(--glass-bg-hover);
    border-color: rgba(129, 140, 248, 0.28);
}

/* ── Таблицы ── */
body.dark-theme .glass-table th {
    background: var(--surface-muted);
    color: var(--text-muted);
}

body.dark-theme .glass-table td {
    color: var(--text-main);
    border-bottom-color: var(--glass-border);
}

body.dark-theme .glass-table tr:hover td {
    background: var(--glass-bg-hover);
}

body.dark-theme .reports-table th {
    background: var(--surface-muted);
    color: var(--text-muted);
}

body.dark-theme .reports-table td {
    color: var(--text-main);
}

body.dark-theme .reports-table tr:hover td {
    background: var(--surface-subtle);
}

body.dark-theme .reports-finance-total-row td,
body.dark-theme .reports-goods-total-row td {
    background: rgba(129, 140, 248, 0.1);
    color: var(--text-main);
}

/* ── Модалки (дополнения к modals.css) ── */
body.dark-theme .modal,
body.dark-theme .simple-modal {
    background: var(--modal-bg);
}

body.dark-theme .modal-head h2,
body.dark-theme .app-dialog-message {
    color: var(--text-main);
}

/* ── Сайдбар ── */
body.dark-theme .sidebar,
body.dark-theme .mobile-top-bar {
    background: rgba(19, 22, 31, 0.96);
    border-color: var(--glass-border);
}

body.dark-theme .menu-group-title {
    color: var(--text-subtle);
}

body.dark-theme .nav-item {
    color: var(--text-muted);
}

body.dark-theme .nav-item:hover {
    color: var(--text-main);
    background: var(--glass-bg-hover);
}

body.dark-theme .user-name {
    color: var(--text-main);
}

/* ── POS / киоск ── */
body.dark-theme .pos-cart-area {
    background: var(--glass-bg);
}

body.dark-theme .pos-cart-row,
body.dark-theme .kiosk-cart-line {
    border-bottom-color: var(--glass-border);
}

body.dark-theme .pos-cart-row-name,
body.dark-theme .kiosk-cart-line-name,
body.dark-theme .pos-product-name {
    color: var(--text-main);
}

body.dark-theme .pos-numpad-key {
    background: var(--surface-muted);
    border-color: var(--glass-border);
    color: var(--text-main);
}

body.dark-theme .pos-numpad-key:hover {
    background: var(--glass-bg-hover);
}

body.dark-theme .pos-acc-section {
    background: var(--surface-subtle);
}

body.dark-theme .pos-shift-btn--journal {
    background: var(--surface-muted);
    border-color: var(--glass-border);
    color: var(--text-muted);
}

body.dark-theme .pos-shift-btn--journal:hover {
    background: var(--glass-bg-hover);
    color: var(--text-main);
}

body.dark-theme .pos-return-product-list {
    background: var(--input-bg);
    border-color: var(--glass-border);
}

body.dark-theme .pos-return-product-row {
    border-bottom-color: var(--glass-border);
    color: var(--text-main);
}

body.dark-theme .pos-return-product-price,
body.dark-theme .pos-return-product-sku {
    color: var(--text-muted);
}

body.dark-theme .pos-return-account-select,
body.dark-theme #pos-return-account.pos-return-account-select {
    background-color: var(--input-bg);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    border-color: var(--glass-border);
    color: var(--text-main);
}

body.dark-theme .wh-kit-picker-results,
body.dark-theme .wh-kit-component-row {
    border-color: var(--glass-border);
    background: var(--glass-bg);
}

body.dark-theme .wh-kit-picker-row:hover {
    background: var(--glass-bg-hover);
}

/* ── Настройки ── */
body.dark-theme #settings .settings-card,
body.dark-theme .manager-card,
body.dark-theme .settings-tab-row,
body.dark-theme .manager-tab-row {
    background: var(--glass-bg);
    border-color: var(--glass-border);
}

body.dark-theme .manager-tab-row:nth-child(odd) {
    background: var(--surface-subtle);
}

body.dark-theme .settings-input-locked .modern-input {
    background: var(--surface-subtle);
    color: var(--text-muted);
}

/* ── Расходы ── */
body.dark-theme .expenses-table th,
body.dark-theme .expenses-table td {
    color: var(--text-main);
    border-color: var(--glass-border);
}

body.dark-theme .expenses-table th {
    color: var(--text-muted);
    background: var(--surface-muted);
}

/* ── Пикеры (заказы, задачи) ── */
body.dark-theme .order-item-picker-panel,
body.dark-theme .task-item-picker-panel {
    background: var(--modal-bg);
    border-color: var(--glass-border);
}

body.dark-theme .order-item-picker-row,
body.dark-theme .task-item-picker-row {
    color: var(--text-main);
    border-color: var(--glass-border);
}

body.dark-theme .order-item-picker-row:hover,
body.dark-theme .task-item-picker-row:hover {
    background: var(--glass-bg-hover);
}

/* ── Статистика ── */
body.dark-theme .dash-stat-card {
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.02) 55%, transparent 100%),
        var(--glass-bg);
    border-color: var(--glass-border);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.35);
}

body.dark-theme .dash-stat-card__value {
    color: var(--text-main);
}

body.dark-theme #statistics .legend-item {
    color: var(--text-muted);
}

/* ── Отчёты ── */
body.dark-theme .reports-general-card,
body.dark-theme .reports-general-total,
body.dark-theme .reports-goods-summary {
    background: var(--glass-bg);
    border-color: var(--glass-border);
}

body.dark-theme .reports-sidebar {
    background: var(--glass-bg);
    border-color: var(--glass-border);
}

/* ── Бейджи ── */
body.dark-theme .badge-new {
    background: rgba(129, 140, 248, 0.2);
    color: #c7d2fe;
}

body.dark-theme .badge-success {
    background: rgba(52, 211, 153, 0.18);
    color: #6ee7b7;
}

body.dark-theme .badge-warning {
    background: rgba(251, 191, 36, 0.18);
    color: #fcd34d;
}

body.dark-theme .badge-danger {
    background: rgba(248, 113, 113, 0.18);
    color: #fca5a5;
}

/* ── Прочее ── */
body.dark-theme .page-title,
body.dark-theme h1,
body.dark-theme h2,
body.dark-theme h3,
body.dark-theme h4,
body.dark-theme h5 {
    color: var(--text-main);
}

body.dark-theme .tag {
    color: var(--primary);
}

body.dark-theme .empty-state,
body.dark-theme .api-error {
    color: var(--text-muted);
}

body.dark-theme .orb-1,
body.dark-theme .orb-2 {
    opacity: 0.28;
}

body.dark-theme a:not(.btn-primary):not(.btn-secondary):not(.nav-item) {
    color: var(--primary);
}

body.dark-theme ::selection {
    background: rgba(129, 140, 248, 0.35);
    color: #fff;
}
