/* Light theme: an override layer on the dark default, active with <html data-theme="light"> (top bar switch).
   Only what the dark CSS hard-codes is restated here; the dark files stay as they are. */

html[data-theme="light"] {
    --wb-bg: #f3f5f8;
    --wb-card: #ffffff;
    --wb-muted: #5b6475;
    --wb-text: #111827;
    --wb-ring: #2563eb;
    --wb-chip-bg: #dbeafe;
    --wb-line: rgba(15, 23, 42, .12);
    --wb-line-soft: rgba(15, 23, 42, .07);
    --wb-surface: #ffffff;
    --wb-surface-2: #f8fafc;
    --wb-input: #ffffff;
    --wb-grid: rgba(15, 23, 42, .08);
    color-scheme: light;
}

/* --- page frame --- */
html[data-theme="light"] .topbar {
    background: rgba(255, 255, 255, .92);
    border-bottom-color: var(--wb-line);
}

html[data-theme="light"] .card {
    background: var(--wb-surface);
    border-color: var(--wb-line);
    box-shadow: 0 1px 2px rgba(15, 23, 42, .05);
}

html[data-theme="light"] .tab-link { color: var(--wb-muted); }
html[data-theme="light"] .tab-link:hover { color: var(--wb-text); background: rgba(15, 23, 42, .05); }
html[data-theme="light"] .tab-link.active { color: var(--wb-text); }

html[data-theme="light"] .flag-select,
html[data-theme="light"] .menu-toggle,
html[data-theme="light"] .menu-close,
html[data-theme="light"] .topnav .logout-btn {
    border-color: var(--wb-line);
    background: var(--wb-surface);
    color: var(--wb-text);
}

html[data-theme="light"] .burger-icon span { background: var(--wb-text); }
html[data-theme="light"] .language-menu-panel,
html[data-theme="light"] .topnav {
    background: var(--wb-surface);
    border-color: var(--wb-line);
}

html[data-theme="light"] .language-option.active { background: rgba(15, 23, 42, .06); border-color: var(--wb-line); }
html[data-theme="light"] .topnav .logout-form { border-top-color: var(--wb-line); }
html[data-theme="light"] .menu-backdrop { background: rgba(15, 23, 42, .35); }
html[data-theme="light"] .org-switch-btn { border-color: var(--wb-line); color: var(--wb-text); }
html[data-theme="light"] .org-switch-btn.active { color: #fff; }
html[data-theme="light"] .org-chip { background: var(--wb-chip-bg); color: #1e3a8a; }

/* --- form controls --- */
html[data-theme="light"] input,
html[data-theme="light"] select,
html[data-theme="light"] textarea {
    background: var(--wb-input);
    color: var(--wb-text);
    border-color: rgba(15, 23, 42, .18);
}

html[data-theme="light"] input::placeholder,
html[data-theme="light"] textarea::placeholder { color: #8a93a3; }
html[data-theme="light"] input:disabled,
html[data-theme="light"] select:disabled { background: var(--wb-surface-2); color: var(--wb-muted); }

html[data-theme="light"] .btn {
    background: #e7ebf1;
    color: var(--wb-text);
    border-color: transparent;
}

html[data-theme="light"] .btn:hover { background: #dce2ea; }
html[data-theme="light"] .btn.primary { background: var(--wb-primary); color: #fff; }
html[data-theme="light"] .btn.primary:hover { background: var(--wb-primary-600); }
html[data-theme="light"] .btn.primary.is-done { background: #059669; color: #fff; }
html[data-theme="light"] .btn.danger { color: #fff; }
html[data-theme="light"] .btn-group .btn { background: #e7ebf1; }

html[data-theme="light"] .icon-action-btn {
    color: #475569;
    border-color: var(--wb-line);
    background: var(--wb-surface);
}

html[data-theme="light"] .icon-action-btn:hover { color: var(--wb-text); background: var(--wb-surface-2); }
html[data-theme="light"] .icon-action-btn.weighing-advanced-filters-toggle,
html[data-theme="light"] .weighing-advanced-filters-toggle { color: #334155; }

html[data-theme="light"] .radio-group,
html[data-theme="light"] .radio { background: rgba(15, 23, 42, .04); }
html[data-theme="light"] .segmented-choice { background: #eef1f5; }
html[data-theme="light"] .segmented-choice label { border-color: var(--wb-line); color: var(--wb-muted); }
html[data-theme="light"] .filter-input-clear { color: #64748b; }
html[data-theme="light"] .sort-btn { color: var(--wb-muted); }
html[data-theme="light"] .sort-btn.active { color: var(--wb-text); }

/* --- tables, lists, cards --- */
html[data-theme="light"] .weighing-table-wrap,
html[data-theme="light"] .weighing-master-table-wrap,
html[data-theme="light"] .weighing-history-table-wrap { border-color: var(--wb-line); }

html[data-theme="light"] .weighing-table,
html[data-theme="light"] .weighing-history-table { background: var(--wb-surface); }

html[data-theme="light"] .weighing-table th,
html[data-theme="light"] .weighing-master-table th,
html[data-theme="light"] .weighing-history-table th {
    background: var(--wb-surface-2);
    color: var(--wb-muted);
}

html[data-theme="light"] .weighing-table td,
html[data-theme="light"] .weighing-master-table td,
html[data-theme="light"] .weighing-history-table td { border-bottom-color: var(--wb-line-soft); }

html[data-theme="light"] .weighing-master-card,
html[data-theme="light"] .weighing-entry,
html[data-theme="light"] .weighing-history-context,
html[data-theme="light"] .device-event-log,
html[data-theme="light"] .light-control-group {
    background: var(--wb-surface);
    border-color: var(--wb-line);
}

html[data-theme="light"] .device-event-item { background: var(--wb-surface-2); border-color: var(--wb-line-soft); }
html[data-theme="light"] .device-event-side,
html[data-theme="light"] .device-event-data,
html[data-theme="light"] .operation-toggle-count { color: var(--wb-text); }
html[data-theme="light"] .operation-details-row > td { background: var(--wb-surface-2); border-bottom-color: var(--wb-line-soft); }
html[data-theme="light"] .weighing-history-context-item { border-right-color: var(--wb-line-soft); }

html[data-theme="light"] .weighing-filter-date-fields { background: var(--wb-surface); border-color: var(--wb-line); }
html[data-theme="light"] .weighing-filter-presets .btn.active { background: #0f766e; color: #fff; }

html[data-theme="light"] .debug-id-badge { color: #475569; }
html[data-theme="light"] .debug-id-tooltip,
html[data-theme="light"] .copy-toast-btn::after {
    background: #1f2937;
    color: #f9fafb;
    border-color: transparent;
}

html[data-theme="light"] .status-pill { color: #1f2937; }
html[data-theme="light"] .customer-waybiller-block { border-color: var(--wb-line); }
html[data-theme="light"] img { border-color: var(--wb-line-soft); }
html[data-theme="light"] .header-banner,
html[data-theme="light"] .topbar img,
html[data-theme="light"] .theme-toggle img { border: 0; }

/* --- menus --- */
html[data-theme="light"] .master-autocomplete-menu,
html[data-theme="light"] .weighing-row-menu-panel {
    background: var(--wb-surface);
    border: 1px solid var(--wb-line);
    box-shadow: 0 10px 30px rgba(15, 23, 42, .15);
}

html[data-theme="light"] .master-autocomplete-option,
html[data-theme="light"] .weighing-row-menu-item { color: var(--wb-text); }
html[data-theme="light"] .master-autocomplete-option:hover,
html[data-theme="light"] .master-autocomplete-option[aria-selected="true"],
html[data-theme="light"] .weighing-row-menu-item:hover { background: rgba(15, 23, 42, .06); }
html[data-theme="light"] .master-autocomplete-option.add-new { border-top-color: var(--wb-line-soft); }
html[data-theme="light"] .weighing-row-menu-item.danger { color: #b91c1c; }
html[data-theme="light"] .weighing-row-menu-item.danger:hover { background: #fee2e2; color: #991b1b; }

/* --- dialogs --- */
html[data-theme="light"] .modal { background: rgba(15, 23, 42, .45); }

html[data-theme="light"] .modal-content,
html[data-theme="light"] .weighing-modal-content,
html[data-theme="light"] .weighing-progress-content {
    background: var(--wb-surface);
    color: var(--wb-text);
    border-color: var(--wb-line);
    box-shadow: 0 20px 50px rgba(15, 23, 42, .25);
}

html[data-theme="light"] .weighing-datetime-native-picker { background: var(--wb-input); border-color: var(--wb-line); }

/* weighing form: scale card, weights, net, quality */
html[data-theme="light"] .compact-weighing-section-divider { background: var(--wb-line); }
html[data-theme="light"] .compact-weighing-scale-inner { border-color: var(--wb-line); }
html[data-theme="light"] .compact-weighing-scale-tab { border-color: var(--wb-line); background: var(--wb-surface-2); color: #334155; }
html[data-theme="light"] .compact-weighing-scale-display .unit { color: #475569; }
html[data-theme="light"] .compact-weighing-mass-stack { border-color: var(--wb-line); background: var(--wb-surface-2); }
html[data-theme="light"] .compact-weighing-mass-field { border-bottom-color: var(--wb-line-soft); }
html[data-theme="light"] .compact-weighing-net-panel,
html[data-theme="light"] .compact-weighing-mass-row-net { background: #eaf1fe; }
html[data-theme="light"] .compact-weighing-datetime-edit:hover { color: var(--wb-text); }
html[data-theme="light"] .weighing-quality { background: var(--wb-surface-2); border-color: var(--wb-line); }
html[data-theme="light"] .frame,
html[data-theme="light"] .camera-image-shell,
html[data-theme="light"] .weight-camera-image-button { background: #e9edf3; border-color: var(--wb-line); }
html[data-theme="light"] .weight-error-overlay { background: rgba(255, 255, 255, .9); color: #b91c1c; }
html[data-theme="light"] .slider,
html[data-theme="light"] .stability-dot { background: #cbd5e1; }

/* calendars (flatpickr) */
html[data-theme="light"] .flatpickr-calendar,
html[data-theme="light"] .weighing-datetime-picker-wrap .flatpickr-calendar,
html[data-theme="light"] .whitelist-date-picker-calendar.flatpickr-calendar {
    background: var(--wb-surface);
    border-color: var(--wb-line);
    color: var(--wb-text);
}

html[data-theme="light"] .weighing-filter-date-fields .flatpickr-calendar,
html[data-theme="light"] .weighing-filter-date-fields span.flatpickr-weekday,
html[data-theme="light"] .weighing-filter-date-fields .flatpickr-day,
html[data-theme="light"] .weighing-filter-date-fields .flatpickr-current-month input.cur-year,
html[data-theme="light"] .weighing-datetime-picker-wrap span.flatpickr-weekday,
html[data-theme="light"] .weighing-datetime-picker-wrap .flatpickr-day,
html[data-theme="light"] .weighing-datetime-picker-wrap .flatpickr-current-month input.cur-year,
html[data-theme="light"] .weighing-datetime-picker-wrap .flatpickr-time,
html[data-theme="light"] .weighing-datetime-picker-wrap .flatpickr-time input,
html[data-theme="light"] .weighing-datetime-picker-wrap .flatpickr-time .flatpickr-am-pm { color: var(--wb-text); }
html[data-theme="light"] .weighing-datetime-picker-wrap .flatpickr-time { border-top-color: var(--wb-line); }

/* toasts */
html[data-theme="light"] .operation-toast { box-shadow: 0 10px 30px rgba(15, 23, 42, .18); }

/* --- stock page --- */
html[data-theme="light"] .stock-kpi,
html[data-theme="light"] .stock-chart-card,
html[data-theme="light"] .stock-silo,
html[data-theme="light"] .stock-product-card,
html[data-theme="light"] .stock-unassigned-bar {
    background: var(--wb-surface);
    border-color: var(--wb-line);
    box-shadow: 0 1px 2px rgba(15, 23, 42, .05);
}

html[data-theme="light"] .stock-silo-tank { background: #eef2f7; border-color: #cbd5e1; }
html[data-theme="light"] .stock-kpi-bar,
html[data-theme="light"] .stock-product-bar { background: #e5e9f0; }
html[data-theme="light"] .stock-table tr.stock-warehouse-total td { border-bottom-color: var(--wb-line); }
html[data-theme="light"] .stock-table tr.stock-total td { border-top-color: rgba(15, 23, 42, .35); }
html[data-theme="light"] .stock-ledger-table thead th { background: var(--wb-surface-2); }
html[data-theme="light"] .stock-ledger-table tr.stock-ledger-day td { border-top-color: #334155; }
html[data-theme="light"] .stock-ledger-filters input[type="date"] { color-scheme: light; }
html[data-theme="light"] .stock-summary-center strong { color: var(--wb-text); }
html[data-theme="light"] .quality-assortment.active { background: #e0ecff; border-color: #93c5fd; }
html[data-theme="light"] .quality-count { background: #e5e9f0; }
html[data-theme="light"] .weighing-previous-load { background: #e8edf4; color: var(--wb-text); }

/* status colours made for a dark page are too pale on white: the same meaning, darker shades */
html[data-theme="light"] .stock-silo-pct { color: #15803d; }
html[data-theme="light"] .stock-silo.is-warn .stock-silo-pct { color: #c2410c; }
html[data-theme="light"] .stock-silo.is-over .stock-silo-pct,
html[data-theme="light"] .stock-silo-flag,
html[data-theme="light"] .stock-negative,
html[data-theme="light"] .manual-weight-error,
html[data-theme="light"] .weighing-quality-required { color: #dc2626; }
html[data-theme="light"] .stock-warning { color: #b45309; }
