/* ==========================================================================
   Tema chiaro/scuro del pannello (Bootstrap 5.3: data-bs-theme sull'<html>)
   I componenti Bootstrap si adattano da soli; qui solo le variabili del
   gestionale e le parti scritte a mano con colori fissi.
   ========================================================================== */

:root,
[data-bs-theme="light"] {
    --mw-bg: #f4f6f8;
    --mw-surface: #ffffff;
    --mw-surface-2: #f6f8fa;
    --mw-surface-3: #eef1f5;
    --mw-text: #1f2328;
    --mw-text-muted: #6b7280;
    --mw-border: #dde1e5;
    --mw-hover: #f3f7ff;
    --mw-printed: #fff6d6;
    --mw-input-bg: #ffffff;
}

[data-bs-theme="dark"] {
    color-scheme: dark;
    --mw-bg: #14171b;
    --mw-surface: #1c2026;
    --mw-surface-2: #22272e;
    --mw-surface-3: #2a3038;
    --mw-text: #e6e8eb;
    --mw-text-muted: #9aa4ae;
    --mw-border: #353c45;
    --mw-hover: #26303d;
    --mw-printed: #4a3f17;
    --mw-input-bg: #15191e;

    --bs-body-bg: var(--mw-bg);
    --bs-body-color: var(--mw-text);
    --bs-secondary-bg: var(--mw-surface-2);
    --bs-tertiary-bg: var(--mw-surface-3);
    --bs-border-color: var(--mw-border);
    --bs-emphasis-color: #f3f4f6;
    --bs-link-color: #f08a8f;
    --bs-link-hover-color: #f6b0b3;
    --bs-link-color-rgb: 240, 138, 143;
    --bs-link-hover-color-rgb: 246, 176, 179;
}

/* --- base ---------------------------------------------------------------- */
[data-bs-theme="dark"] body { background: var(--mw-bg); color: var(--mw-text); }
[data-bs-theme="dark"] .card,
[data-bs-theme="dark"] .modal-content,
[data-bs-theme="dark"] .dropdown-menu,
[data-bs-theme="dark"] .list-group-item,
[data-bs-theme="dark"] .popover,
[data-bs-theme="dark"] .offcanvas { background-color: var(--mw-surface); color: var(--mw-text); border-color: var(--mw-border); }
[data-bs-theme="dark"] .bg-white,
[data-bs-theme="dark"] .bg-light { background-color: var(--mw-surface) !important; color: var(--mw-text); }
[data-bs-theme="dark"] .text-dark { color: var(--mw-text) !important; }
[data-bs-theme="dark"] .text-muted { color: var(--mw-text-muted) !important; }
[data-bs-theme="dark"] .border,
[data-bs-theme="dark"] hr { border-color: var(--mw-border) !important; }

/* tabelle */
[data-bs-theme="dark"] .table { --bs-table-bg: transparent; --bs-table-color: var(--mw-text); --bs-table-border-color: var(--mw-border);
    --bs-table-striped-bg: rgba(255,255,255,.03); --bs-table-hover-bg: var(--mw-hover); color: var(--mw-text); }
[data-bs-theme="dark"] .table > thead,
[data-bs-theme="dark"] .table-light { --bs-table-bg: var(--mw-surface-3); --bs-table-color: var(--mw-text); }

/* form */
[data-bs-theme="dark"] .form-control,
[data-bs-theme="dark"] .form-select,
[data-bs-theme="dark"] .input-group-text,
[data-bs-theme="dark"] textarea,
[data-bs-theme="dark"] select,
[data-bs-theme="dark"] input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not(.btn) {
    background-color: var(--mw-input-bg); color: var(--mw-text); border-color: var(--mw-border);
}
[data-bs-theme="dark"] .form-control::placeholder,
[data-bs-theme="dark"] input::placeholder,
[data-bs-theme="dark"] textarea::placeholder { color: #6f7a85; }
[data-bs-theme="dark"] .form-control:disabled,
[data-bs-theme="dark"] .form-control[readonly] { background-color: var(--mw-surface-2); }

/* bottoni "chiari" */
[data-bs-theme="dark"] .btn-light,
[data-bs-theme="dark"] .btn-default,
[data-bs-theme="dark"] .btn-white { background: var(--mw-surface-2); color: var(--mw-text); border-color: var(--mw-border); }
[data-bs-theme="dark"] .btn-outline-secondary { --bs-btn-color: #c3cad1; --bs-btn-border-color: #4a525c; --bs-btn-hover-bg: #3a414a; --bs-btn-hover-border-color: #4a525c; --bs-btn-active-bg: #4a525c; --bs-btn-active-color: #fff; }
[data-bs-theme="dark"] .btn-outline-dark { --bs-btn-color: var(--mw-text); --bs-btn-border-color: #5a636e; }

/* select2 */
[data-bs-theme="dark"] .select2-container--default .select2-selection--single,
[data-bs-theme="dark"] .select2-container--default .select2-selection--multiple,
[data-bs-theme="dark"] .select2-dropdown { background-color: var(--mw-input-bg); border-color: var(--mw-border); color: var(--mw-text); }
[data-bs-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__rendered { color: var(--mw-text); }
[data-bs-theme="dark"] .select2-container--default .select2-results__option[aria-selected=true] { background-color: var(--mw-surface-3); }
[data-bs-theme="dark"] .select2-search__field { background: var(--mw-input-bg); color: var(--mw-text); }

/* selettore del tema nel menu utente */
.mw-theme-picker .btn { font-size: 12px; padding: 3px 6px; white-space: nowrap; }
.mw-theme-picker .btn.active { background: var(--brand-primary, #960c13); border-color: var(--brand-primary, #960c13); color: #fff; }

/* --- parti del layout con colori fissi -------------------------------------- */
[data-bs-theme="dark"] .app-layout-title-col .page-title { color: var(--bs-emphasis-color); }
[data-bs-theme="dark"] .app-layout-title-col .page-subtitle strong { color: var(--mw-text-muted); }
[data-bs-theme="dark"] .admin-topbar-module-nav { background: var(--mw-surface) !important; border-color: var(--mw-border) !important; }
[data-bs-theme="dark"] .admin-topbar-module-nav .nav-link:not(.active) { background: var(--mw-surface-2) !important; color: var(--mw-text) !important; border-color: var(--mw-border) !important; }
[data-bs-theme="dark"] .app-statusbar { background: rgba(20, 23, 27, .94); border-top-color: var(--mw-border); color: var(--mw-text-muted); }
[data-bs-theme="dark"] .app-statusbar-value { color: var(--mw-text); }
[data-bs-theme="dark"] .app-statusbar-label { color: var(--mw-text-muted); }
[data-bs-theme="dark"] .app-page-main .card.card-default,
[data-bs-theme="dark"] .app-page-main .card { background: var(--mw-surface); border-color: var(--mw-border); }
[data-bs-theme="dark"] .breadcrumb-item a { color: var(--mw-text-muted); }
/* rosso del marchio usato come testo: più chiaro sul fondo scuro */
[data-bs-theme="dark"] .text-danger,
[data-bs-theme="dark"] a.text-danger { color: #f0848a !important; }

/* --- editor preventivi v2 ----------------------------------------------------- */
[data-bs-theme="dark"] .qe2-printed { background: var(--mw-printed) !important; }
[data-bs-theme="dark"] .qe2-printed,
[data-bs-theme="dark"] .qe2-printed .qe2-inl,
[data-bs-theme="dark"] .qe2-printed s,
[data-bs-theme="dark"] .qe2-cat td.qe2-printed { color: #fff3c4 !important; }
[data-bs-theme="dark"] .qe2-cat td.qe2-printed .qe2-ed:hover { background: #5c4d1c; }
[data-bs-theme="dark"] .qe2-ed:hover { background: var(--mw-hover); }
[data-bs-theme="dark"] .qe2-target { background: #3a3218 !important; color: #f3e3a6 !important; border-color: #5c4d1c !important; }
[data-bs-theme="dark"] .qe2-subtot-pill { background: var(--mw-surface-3) !important; border-color: #5a6470 !important; color: var(--mw-text) !important; }
[data-bs-theme="dark"] .qe2-cell-input { background: var(--mw-input-bg) !important; color: var(--mw-text) !important; }
[data-bs-theme="dark"] .qe2-qbtn { background: var(--mw-surface-2) !important; color: var(--mw-text) !important; border-color: var(--mw-border) !important; }
[data-bs-theme="dark"] .qe2-more-menu { background: var(--mw-surface) !important; border-color: var(--mw-border) !important; }
[data-bs-theme="dark"] .qe2-more-menu button, [data-bs-theme="dark"] .qe2-more-menu a { color: var(--mw-text) !important; }
[data-bs-theme="dark"] .qe2-more-menu button:hover, [data-bs-theme="dark"] .qe2-more-menu a:hover { background: var(--mw-hover) !important; }
[data-bs-theme="dark"] .qe2-drag-ghost { background: var(--mw-surface-2); color: var(--mw-text); border-color: var(--mw-border); }
@keyframes qe2bumpdark { 0% { background: #1f5130; } 100% { background: transparent; } }
[data-bs-theme="dark"] .qe2-bump td { animation-name: qe2bumpdark; }
/* catalogo dell'editor v2 (anche l'hover, che lo script non può adattare) */
[data-bs-theme="dark"] .qe2-catalog { background: var(--mw-surface) !important; border-color: var(--mw-border) !important; }
[data-bs-theme="dark"] .qe2-ci { background: transparent !important; border-bottom-color: var(--mw-border) !important; color: var(--mw-text) !important; }
[data-bs-theme="dark"] .qe2-ci:hover { background: var(--mw-hover) !important; }
[data-bs-theme="dark"] .qe2-ci:hover * { color: var(--mw-text) !important; }
[data-bs-theme="dark"] .qe2-ci-q { background: var(--mw-input-bg) !important; color: var(--mw-text) !important; border-color: var(--mw-border) !important; }
[data-bs-theme="dark"] .qe2-cg { background: var(--mw-surface-2) !important; color: var(--mw-text-muted) !important; border-top-color: var(--mw-border) !important; border-bottom-color: var(--mw-border) !important; }
[data-bs-theme="dark"] .qe2-csg { background: var(--mw-surface-3) !important; color: var(--mw-text) !important; border-color: var(--mw-border) !important; }
[data-bs-theme="dark"] .qe2-chips button:not(.on) { background: var(--mw-surface-2) !important; color: var(--mw-text) !important; border-color: var(--mw-border) !important; }
/* righe della tabella dell'editor: hover scuro */
[data-bs-theme="dark"] .qe2-grid tr:hover td { background-color: var(--mw-hover); }
[data-bs-theme="dark"] .qe2-grid td { border-color: var(--mw-border) !important; }
[data-bs-theme="dark"] .qe2 { --qe2-line: #353c45; }
/* intestazioni dei riquadri (Home e altre pagine) e sottocategorie del vecchio editor */
[data-bs-theme="dark"] { --admin-surface-header-bg: #2c333c; --admin-surface-header-color: #e6e8eb; }
[data-bs-theme="dark"] table.responsive.quotation-form tr.doc-subcategory,
[data-bs-theme="dark"] table.responsive.quotation-form tr.doc-subcategory > td { background-color: var(--mw-surface-3) !important; color: var(--mw-text) !important; }

/* Editor v2 · riga prodotto nascosta in modalità scura: stesso fondo delle altre righe, testo attenuato ma leggibile,
   totali che contano (quantità, importi stampati) in colore normale */
[data-bs-theme="dark"] .qe2-hidden td { background: var(--mw-surface) !important; color: #8a94a0 !important; }
[data-bs-theme="dark"] .qe2-hidden td.qe2-printed { background: var(--mw-printed) !important; }
[data-bs-theme="dark"] .qe2-hidden td.qe2-qty,
[data-bs-theme="dark"] .qe2-hidden td.qe2-counted,
[data-bs-theme="dark"] .qe2-hidden td.qe2-counted .qe2-inl,
[data-bs-theme="dark"] .qe2-hidden td.qe2-counted s,
[data-bs-theme="dark"] .qe2-hidden td.qe2-printed,
[data-bs-theme="dark"] .qe2-hidden td.qe2-printed .qe2-inl,
[data-bs-theme="dark"] .qe2-hidden td.qe2-printed s { color: var(--mw-text) !important; }
[data-bs-theme="dark"] .qe2-hidden td.qe2-printed,
[data-bs-theme="dark"] .qe2-hidden td.qe2-printed .qe2-inl,
[data-bs-theme="dark"] .qe2-hidden td.qe2-printed s { color: #fff3c4 !important; }


/* editor v2: catalogo laterale con i colori della categoria anche in tema scuro */
[data-bs-theme="dark"] .qe2-catalog-list .qe2-ccat { background: var(--cc) !important; color: var(--cf) !important; border-left: 5px solid var(--cc) !important; border-top-color: transparent !important; border-bottom-color: rgba(0,0,0,.35) !important; }
[data-bs-theme="dark"] .qe2-catalog-list .qe2-ccat span { color: var(--cf) !important; }
[data-bs-theme="dark"] .qe2-catalog-list .qe2-csub,
[data-bs-theme="dark"] .qe2-catalog-list .qe2-cprod { border-left: 5px solid var(--cc) !important; }
[data-bs-theme="dark"] .qe2-always, [data-bs-theme="dark"] .qe2-always:hover { background: transparent !important; color: inherit !important; border-color: transparent !important; }
[data-bs-theme="dark"] .qe2-always:focus { background: rgba(120,160,255,.14) !important; }
[data-bs-theme="dark"] .qe2-grid tbody tr:not(.qe2-cat):hover td:not(.qe2-printed) { background-color: var(--mw-hover) !important; }
