/* =====================================================================
   TEMA v3 di Ospitamente (caricato per ULTIMO, dopo tutti gli altri CSS)
   Sostituisce il vecchio "tema colori" di mobile.css e i colori dei moduli
   (viola, azzurro, blu) con quelli del menu nuovo. Nessun JS toccato.
   Per tornare a prima basta togliere da index.html la riga di tema-v2.css.
   ===================================================================== */
:root {
    --tv-navy: #0e2440;
    --tv-navy-2: #16325a;
    --tv-ink: #0f1b2d;
    --tv-muted: #5f6f86;
    --tv-line: #e2e8f0;
    --tv-bg: #f3f6fa;
    --tv-teal: #0aa5b8;
    --tv-teal-dark: #08808f;
    --tv-teal-soft: #e2f6f8;
    --tv-green: #14965a;
    --tv-red: #dc3545;
    --tv-amber: #d98a0b;
    --tv-font: 'Plus Jakarta Sans', 'Segoe UI', -apple-system, BlinkMacSystemFont, sans-serif;
}
#dashboard-container { font-family: var(--tv-font); }

/* =========================== BASE PAGINE =========================== */
#dashboard-container .main-content-area { background: var(--tv-bg); color: var(--tv-ink); padding: 24px 26px; }
#dashboard-container .main-content-area h2,
#dashboard-container .content-section h2 { color: var(--tv-ink); font-weight: 800; letter-spacing: -.02em; }
#dashboard-container .card {
    border-radius: 14px !important; border: 1px solid var(--tv-line) !important; box-shadow: none !important; background: #fff;
}
#dashboard-container .card-header { border-left-color: transparent !important; }

/* Link leggibili (il vecchio tema li rendeva quasi bianchi) */
#dashboard-container .main-content-area a:not(.btn):not(.nav-link):not(.nav-sublink):not([class*="btn"]) { color: var(--tv-teal-dark) !important; }

/* Testate dei moduli: blu notte al posto del blu e del viola */
#dashboard-container .main-content-area .module-header:not(.tableau-module > .module-header),
#dashboard-container .offers-header,
#dashboard-container .bulk-header {
    background: var(--tv-navy) !important; background-image: none !important; color: #fff !important;
    border-radius: 14px !important; border: 0 !important; box-shadow: none !important;
}
#dashboard-container .main-content-area .module-header:not(.tableau-module > .module-header) h2,
#dashboard-container .main-content-area .module-header:not(.tableau-module > .module-header) h1 { color: #fff !important; font-weight: 800; border-left: 0 !important; }
#dashboard-container .main-content-area .module-header:not(.tableau-module > .module-header) p { color: #a9bdd6 !important; }

/* ============================ TASTI ============================ */
#dashboard-container .main-content-area .btn,
#dashboard-container .main-content-area button.btn { border-radius: 10px; font-family: var(--tv-font); box-shadow: none !important; font-weight: 700; }
#dashboard-container .main-content-area button:hover,
#dashboard-container .main-content-area .btn:hover { transform: none !important; }
#dashboard-container .btn-primary, #dashboard-container .btn.btn-primary, #dashboard-container button.btn-primary,
#dashboard-container .btn-mini.btn-primary, #dashboard-container .room-card-actions .btn-primary,
#dashboard-container .btn-new-offer, #dashboard-container .btn-save, #dashboard-container .btn-send,
#dashboard-container .btn-reply, #dashboard-container .btn-send-reply,
#dashboard-container .btn-refresh, #dashboard-container .btn-update, #dashboard-container .btn-load,
#dashboard-container .action-button.preview {
    background: var(--tv-teal) !important; background-image: none !important; color: #fff !important; border: 1px solid var(--tv-teal) !important;
}
#dashboard-container .btn-primary:hover, #dashboard-container .btn.btn-primary:hover, #dashboard-container button.btn-primary:hover,
#dashboard-container .btn-new-offer:hover, #dashboard-container .btn-save:hover, #dashboard-container .btn-send:hover,
#dashboard-container .btn-reply:hover, #dashboard-container .btn-send-reply:hover { background: var(--tv-teal-dark) !important; }
#dashboard-container .btn-secondary, #dashboard-container .room-card-actions .btn-secondary, #dashboard-container .btn-outline, #dashboard-container .btn-sync {
    background: #fff !important; background-image: none !important; color: var(--tv-ink) !important; border: 1px solid var(--tv-line) !important;
}
#dashboard-container .btn-secondary:hover, #dashboard-container .btn-outline:hover, #dashboard-container .btn-sync:hover { border-color: var(--tv-teal) !important; color: var(--tv-teal-dark) !important; background: #fff !important; }
#dashboard-container .btn-success, #dashboard-container .btn.btn-success, #dashboard-container button.btn-success,
#dashboard-container .btn-mini.btn-success, #dashboard-container .action-button.execute {
    background: var(--tv-green) !important; background-image: none !important; color: #fff !important; border: 1px solid var(--tv-green) !important;
}
#dashboard-container .btn-danger, #dashboard-container .room-card-actions .btn-danger, #dashboard-container .btn-mini.btn-danger {
    background: var(--tv-red) !important; background-image: none !important; color: #fff !important; border: 1px solid var(--tv-red) !important;
}
#dashboard-container .btn-warning { background: var(--tv-amber) !important; background-image: none !important; color: #fff !important; }
#dashboard-container .btn-info { background: #fff !important; color: var(--tv-teal-dark) !important; border: 1px solid var(--tv-line) !important; }
#dashboard-container .btn-icon:hover { background: var(--tv-teal) !important; }

/* ============================ CAMPI ============================ */
#dashboard-container .main-content-area input[type="text"], #dashboard-container .main-content-area input[type="number"],
#dashboard-container .main-content-area input[type="date"], #dashboard-container .main-content-area input[type="email"],
#dashboard-container .main-content-area input[type="tel"], #dashboard-container .main-content-area input[type="password"],
#dashboard-container .main-content-area select, #dashboard-container .main-content-area textarea,
#dashboard-container .form-control {
    border: 1px solid var(--tv-line) !important; border-radius: 10px; font-family: var(--tv-font); color: var(--tv-ink); background-color: #fff;
}
#dashboard-container input:focus, #dashboard-container select:focus, #dashboard-container textarea:focus, #dashboard-container .form-control:focus {
    border-color: var(--tv-teal) !important; box-shadow: 0 0 0 3px rgba(10,165,184,.15) !important; outline: none;
}
#dashboard-container input[type="checkbox"]:checked, #dashboard-container input[type="radio"]:checked { accent-color: var(--tv-teal) !important; }
#dashboard-container .toggle-switch input:checked + .toggle-slider,
#dashboard-container .toggle-label input:checked + .toggle-switch,
#dashboard-container input:checked + .slider { background: var(--tv-teal) !important; background-image: none !important; }

/* Sezioni dei moduli (es. Nuova prenotazione): bianche con bordo, non celesti */
#dashboard-container .form-section, #dashboard-container .filters-section, #dashboard-container .rooms-selector {
    background: #fff !important; background-image: none !important; border: 1px solid var(--tv-line) !important; border-radius: 14px !important; box-shadow: none !important;
}
#dashboard-container .form-section h3, #dashboard-container .form-section h4 { color: var(--tv-ink) !important; }

/* ============================ SCHEDE ============================ */
#dashboard-container .tab-btn, #dashboard-container .filter-tab, #dashboard-container .room-tabs .tab-btn, #dashboard-container .hk-tab {
    background: transparent !important; background-image: none !important; color: var(--tv-muted) !important;
    border: 0 !important; border-bottom: 2px solid transparent !important; border-radius: 0 !important; box-shadow: none !important; font-weight: 700;
}
#dashboard-container .tab-btn:hover, #dashboard-container .filter-tab:hover { color: var(--tv-ink) !important; background: transparent !important; }
#dashboard-container .tab-btn.active, #dashboard-container .filter-tab.active, #dashboard-container .rate-tab.active,
#dashboard-container .room-tabs .tab-btn.active, #dashboard-container .hk-tab.active {
    background: transparent !important; color: var(--tv-ink) !important; border-bottom-color: var(--tv-teal) !important;
}
#dashboard-container .tab-btn.active::after { background: var(--tv-teal) !important; }

/* Selettori a pulsante (piani, trattamenti) */
#dashboard-container .plan-tab, #dashboard-container .meal-btn, #dashboard-container .meal-plan-btn,
#dashboard-container .filter-btn, #dashboard-container .plan-btn, #dashboard-container .treatment-btn, #dashboard-container .rate-plan-btn {
    background: #fff !important; background-image: none !important; color: var(--tv-ink) !important;
    border: 1px solid var(--tv-line) !important; border-radius: 10px !important; box-shadow: none !important; transform: none !important;
}
#dashboard-container .plan-tab:hover, #dashboard-container .meal-btn:hover, #dashboard-container .meal-plan-btn:hover,
#dashboard-container .filter-btn:hover, #dashboard-container .plan-btn:hover, #dashboard-container .treatment-btn:hover { border-color: var(--tv-teal) !important; background: #fff !important; }
#dashboard-container .plan-tab.active, #dashboard-container .meal-btn.active, #dashboard-container .meal-plan-btn.active,
#dashboard-container .filter-btn.active, #dashboard-container .plan-btn.active, #dashboard-container .treatment-btn.active, #dashboard-container .rate-plan-btn.active {
    background: var(--tv-teal) !important; border-color: var(--tv-teal) !important; color: #fff !important;
}

/* ===================== CARD STATISTICHE (tutti i moduli) ===================== */
#dashboard-container .stat-card, #dashboard-container .stat-card:nth-child(odd), #dashboard-container .stat-card:nth-child(even),
#dashboard-container .offer-stat-card, #dashboard-container .offers-stats .stat-card,
#dashboard-container .imposte-container .stat-card {
    background: #fff !important; background-image: none !important; color: var(--tv-ink) !important;
    border: 1px solid var(--tv-line) !important; border-left: 1px solid var(--tv-line) !important;
    border-radius: 14px !important; box-shadow: none !important; transform: none !important;
}
#dashboard-container .stat-card * { color: inherit; }
#dashboard-container .stat-card .stat-value, #dashboard-container .stat-card .stat-number, #dashboard-container .stat-card h3 {
    color: var(--tv-ink) !important; font-weight: 800 !important;
}
#dashboard-container .stat-card .stat-label, #dashboard-container .stat-card p, #dashboard-container .stat-card small { color: var(--tv-muted) !important; }
#dashboard-container .stat-card .stat-icon { background: var(--tv-teal-soft) !important; background-image: none !important; color: var(--tv-teal-dark) !important; border-radius: 12px; box-shadow: none !important; }

/* Dashboard: icone disegnate al posto delle PNG */
#dashboard-stats { grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 14px; }
#dashboard-stats .stat-card { padding: 18px; display: flex; align-items: center; gap: 14px; }
#dashboard-stats .stat-icon {
    width: 46px; height: 46px; flex: none; display: flex; align-items: center; justify-content: center; font-size: 0;
}
#dashboard-stats .stat-icon img { display: none !important; }
#dashboard-stats .stat-icon::before {
    content: ''; width: 24px; height: 24px; background: currentColor;
    -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain;
}
#dashboard-stats .stat-value { font-size: 28px !important; letter-spacing: -.02em; line-height: 1.1; font-variant-numeric: tabular-nums; }
#dashboard-stats .stat-label { font-size: 11.5px !important; font-weight: 700; letter-spacing: .06em; margin: 2px 0 0 !important; text-transform: uppercase; }
#dashboard-stats .stat-detail { color: var(--tv-muted) !important; opacity: 1 !important; }
#dashboard-stats .stat-card:nth-child(1) .stat-icon { background: #e2f6f8; color: #08808f; }
#dashboard-stats .stat-card:nth-child(1) .stat-icon::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 20V11M11 20V5M17 20v-6M3 20h18'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 20V11M11 20V5M17 20v-6M3 20h18'/%3E%3C/svg%3E"); }
#dashboard-stats .stat-card:nth-child(2) .stat-icon { background: #e7f6ee; color: #0f7a48; }
#dashboard-stats .stat-card:nth-child(2) .stat-icon::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 7a6.5 6.5 0 1 0 0 10'/%3E%3Cpath d='M4 10h9M4 14h9'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 7a6.5 6.5 0 1 0 0 10'/%3E%3Cpath d='M4 10h9M4 14h9'/%3E%3C/svg%3E"); }
#dashboard-stats .stat-card:nth-child(3) .stat-icon { background: #e8f0fe; color: #1e55b8; }
#dashboard-stats .stat-card:nth-child(3) .stat-icon::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4.5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 9.5h18M8 3v3M16 3v3'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4.5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 9.5h18M8 3v3M16 3v3'/%3E%3C/svg%3E"); }
#dashboard-stats .stat-card:nth-child(4) .stat-icon { background: #e8f0fe; color: #2f6fdc; }
#dashboard-stats .stat-card:nth-child(4) .stat-icon::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4'/%3E%3Cpath d='m10 17 5-5-5-5M15 12H3'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4'/%3E%3Cpath d='m10 17 5-5-5-5M15 12H3'/%3E%3C/svg%3E"); }
#dashboard-stats .stat-card:nth-child(5) .stat-icon { background: #f1ebfe; color: #7c3aed; }
#dashboard-stats .stat-card:nth-child(5) .stat-icon::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpath d='m16 17 5-5-5-5M21 12H9'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpath d='m16 17 5-5-5-5M21 12H9'/%3E%3C/svg%3E"); }

/* Arrivi di oggi (Dashboard) */
#arrivals-list { padding: 0 !important; overflow: hidden; }
#arrivals-list .card-header { padding: 16px 20px; border-bottom: 1px solid var(--tv-line); background: #fff; }
#arrivals-list .card-header h3 { margin: 0; font-size: 16px; font-weight: 800; }
#arrivals-list .arrival-item { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 20px; border-bottom: 1px solid var(--tv-line); }
#arrivals-list .arrival-item:last-child { border-bottom: 0; }
#arrivals-list .guest-info { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
#arrivals-list .guest-info strong { font-weight: 800; }
#arrivals-list .room-number { font-weight: 700; color: var(--tv-teal-dark); }
#arrivals-list .arrival-status { font-size: 12px; font-weight: 700; padding: 3px 10px; border-radius: 12px; background: #eef2f7 !important; color: var(--tv-muted) !important; white-space: nowrap; }
#arrivals-list .arrival-status.status-checkedin { background: #e7f6ee !important; color: #0f7a48 !important; }
#arrivals-list .arrival-status.status-confirmed { background: #e8f0fe !important; color: #1e55b8 !important; }
#arrivals-list .arrival-status.status-pending { background: #fff6e0 !important; color: #9a5d00 !important; }

/* Stati e badge (il vecchio tema li faceva pieni e accesi) */
#dashboard-container .badge-success, #dashboard-container .status-confirmed, #dashboard-container .status-success { background-color: #e7f6ee !important; color: #0f7a48 !important; }
#dashboard-container .badge-danger, #dashboard-container .status-cancelled { background-color: #fdecec !important; color: #b4232c !important; }
#dashboard-container .badge-info, #dashboard-container .status-checked_in { background-color: #e8f0fe !important; color: #1e55b8 !important; }
#dashboard-container .badge-warning, #dashboard-container .status-pending { background-color: #fff6e0 !important; color: #9a5d00 !important; }
#dashboard-container .badge-primary { background: var(--tv-teal-soft) !important; color: var(--tv-teal-dark) !important; }
#dashboard-container .text-info { color: var(--tv-teal-dark) !important; }
#dashboard-container .text-danger { color: var(--tv-red) !important; }
#dashboard-container .text-success { color: var(--tv-green) !important; }
#dashboard-container .progress-bar { background: var(--tv-teal) !important; }

/* ============================ TARIFFE ============================ */
#dashboard-container .controls-row { background: #fff !important; border: 1px solid var(--tv-line); color: var(--tv-ink) !important; border-radius: 14px; }
#dashboard-container .controls-row .control-group label, #dashboard-container .control-group .date-range-separator { color: var(--tv-muted) !important; }
#dashboard-container .control-group { background: #f8fafc; border: 1px solid var(--tv-line); }
#dashboard-container .advanced-rates-table thead th, #dashboard-container .calendar-navigation, #dashboard-container .week-navigation,
#dashboard-container .calendar-header-row, #dashboard-container .rates-calendar thead, #dashboard-container .rates-calendar th,
#dashboard-container [class*="calendar"] th {
    background: var(--tv-navy) !important; background-image: none !important; color: #fff !important;
}
#dashboard-container .date-cell-header, #dashboard-container .calendar-date, #dashboard-container th.date-header { background: var(--tv-navy-2) !important; color: #fff !important; }
#dashboard-container .rate-cell.selected, #dashboard-container .price-row td.selected, #dashboard-container .price-row td.weekend-col.selected {
    background: var(--tv-teal) !important; background-image: none !important; border-color: var(--tv-teal-dark) !important; animation: none !important;
}
#dashboard-container .rate-cell:hover { transform: none !important; }
#dashboard-container .min-nights-control, #dashboard-container .min-nights-container, #dashboard-container [class*="min-nights"] {
    background: var(--tv-navy) !important; background-image: none !important; border-color: var(--tv-navy) !important;
}
#dashboard-container .min-nights-popup .popup-header, #dashboard-container .quick-edit-popup .header { background: var(--tv-navy) !important; color: #fff !important; }
#dashboard-container #quick-edit-form { border-color: var(--tv-teal) !important; }
#dashboard-container #quick-edit-form h3 { color: var(--tv-teal-dark) !important; }

/* ===================== FINESTRE E TESTATE DEI MODULI ===================== */
#dashboard-container .offer-modal-header, #roomModal .modal-header, #plan-modal .modal-header,
#dashboard-container .min-nights-popup .popup-header { background: var(--tv-navy) !important; background-image: none !important; color: #fff !important; }
.offer-modal .btn-primary, #roomModal .btn-primary, #plan-modal .btn-primary { background: var(--tv-teal) !important; background-image: none !important; border-color: var(--tv-teal) !important; }

/* Offerte */
#dashboard-container .offer-header, #dashboard-container .offer-card-image, #dashboard-container .offer-card .offer-image,
#dashboard-container .offer-card-header, #dashboard-container .offer-card .card-top {
    background: linear-gradient(135deg, var(--tv-navy) 0%, #16507a 100%) !important;
}
#dashboard-container .offer-card { border: 1px solid var(--tv-line); box-shadow: none; }
#dashboard-container .offer-card:hover { transform: none; box-shadow: none; border-color: #c4cfdd; }
#dashboard-container .offer-card-code, #dashboard-container .o-stat.active .o-stat-value, #dashboard-container .form-section h4 { color: var(--tv-teal-dark) !important; }

/* Camere */
#dashboard-container .room-card, #dashboard-container .room-select-card { border-color: var(--tv-line) !important; }
#dashboard-container .room-card:hover { transform: none; box-shadow: none; border-color: #c4cfdd !important; }
#dashboard-container .amenity-tag { background: var(--tv-teal-soft) !important; background-image: none !important; color: var(--tv-teal-dark) !important; }
#dashboard-container .room-description { border-left-color: var(--tv-teal) !important; }
#dashboard-container .room-capacity { background: var(--tv-teal) !important; }
#dashboard-container .planning-room-card.available { background: #f0fbf5 !important; }
#dashboard-container .planning-room-card.occupied { background: #fdf1f1 !important; }
#dashboard-container .planning-room-card.maintenance { background: #fff8e6 !important; }
#dashboard-container .planning-room-card.blocked { background: #f3f6fa !important; }
#dashboard-container .type-editor-header, #dashboard-container .modal-header { background-image: none !important; }

/* Piani tariffari: sezioni del modulo senza arcobaleno */
#dashboard-container .form-section.names, #dashboard-container .form-section.descriptions, #dashboard-container .form-section.policies,
#dashboard-container .form-section.terms, #dashboard-container .form-section.image { background: #fff !important; background-image: none !important; }
#dashboard-container .plan-card .plan-group { color: var(--tv-teal-dark) !important; }

/* CRM */
#dashboard-container .contact-avatar, #dashboard-container .contact-detail-avatar { background: var(--tv-navy) !important; background-image: none !important; color: #fff !important; }
#dashboard-container .contact-stat-value { color: var(--tv-teal-dark) !important; }
#dashboard-container .automation-card { border-left-color: var(--tv-teal) !important; }
#dashboard-container .crm-pagination button.active { background: var(--tv-teal) !important; border-color: var(--tv-teal) !important; color: #fff !important; }
#dashboard-container .crm-pagination button:hover:not(:disabled) { border-color: var(--tv-teal) !important; color: var(--tv-teal-dark) !important; }
#dashboard-container .spinner { border-top-color: var(--tv-teal) !important; }

/* Moduli web e imposte */
#dashboard-container .calc-result { background: var(--tv-navy) !important; background-image: none !important; color: #fff !important; }
#dashboard-container .calc-section h4, #dashboard-container .result-row.total .value { color: var(--tv-teal-dark) !important; }
#dashboard-container .esenzione-item { border-left-color: var(--tv-teal) !important; }
#dashboard-container .iva-result-box { background: #f8fafc !important; background-image: none !important; }

/* Messaggi e recensioni */
#dashboard-container .conversation-item.active { background: var(--tv-teal-soft) !important; border-left-color: var(--tv-teal) !important; }
#dashboard-container .conv-avatar.direct, #dashboard-container .chat-source-badge.direct { background: var(--tv-navy) !important; }
#dashboard-container .msg-bubble.outgoing { background: var(--tv-teal) !important; }
#dashboard-container .review-reply { border-left-color: var(--tv-teal) !important; }
#dashboard-container .review-reply-label, #dashboard-container .reviews-module .stat-value { color: var(--tv-teal-dark) !important; }

/* Housekeeping */
#dashboard-container .hk-stat-number, #dashboard-container .hk-room-number, #dashboard-container .hk-schedule-date .day-name, #dashboard-container .hk-stats-table th { color: var(--tv-ink) !important; }
#dashboard-container .hk-schedule-day.today { border-left-color: var(--tv-teal) !important; }
#dashboard-container .hk-schedule-badge.hours { background: var(--tv-teal) !important; }
#dashboard-container .hk-stats-bar-fill { background: var(--tv-teal) !important; background-image: none !important; }
#dashboard-container .hk-day-card.today .hk-day-header { background: var(--tv-teal-soft) !important; background-image: none !important; }

/* Ospiti */
#dashboard-container .gst-avatar, .gst-modal-avatar { background: var(--tv-navy) !important; background-image: none !important; }

/* ============ COLORI SCRITTI DIRETTAMENTE NEL CODICE DELLE PAGINE ============ */
/* Riquadri con gradiente blu o viola.
   - Se il testo era bianco sono testate vere: blu notte con testo bianco.
   - Altrimenti (es. "Camera 1" nei preventivi): turchese chiaro con testo scuro, sempre leggibile. */
:is(#dashboard-container, .offer-modal, #roomModal) :is(div, header, section):is([style*="linear-gradient(135deg, #0050b3"], [style*="linear-gradient(135deg,#0050b3"], [style*="linear-gradient(135deg, #0066cc"], [style*="linear-gradient(135deg,#0066cc"], [style*="linear-gradient(135deg, #667eea"], [style*="linear-gradient(135deg,#667eea"], [style*="background: #0050b3"], [style*="background:#0050b3"], [style*="background: #0066cc"], [style*="background:#0066cc"]) {
    background: var(--tv-teal-soft) !important; background-image: none !important;
    color: var(--tv-ink) !important; border-color: #bfe6eb !important;
}
:is(#dashboard-container, .offer-modal, #roomModal) :is(div, header, section):is([style*="linear-gradient(135deg, #0050b3"], [style*="linear-gradient(135deg,#0050b3"], [style*="linear-gradient(135deg, #0066cc"], [style*="linear-gradient(135deg,#0066cc"], [style*="linear-gradient(135deg, #667eea"], [style*="linear-gradient(135deg,#667eea"], [style*="background: #0050b3"], [style*="background:#0050b3"], [style*="background: #0066cc"], [style*="background:#0066cc"]) :is(h1, h2, h3, h4, h5, h6, strong, b, label, span:not(.ti-wrap)) { color: var(--tv-ink) !important; }
:is(#dashboard-container, .offer-modal, #roomModal) :is(div, header, section):is([style*="linear-gradient(135deg, #0050b3"], [style*="linear-gradient(135deg,#0050b3"], [style*="linear-gradient(135deg, #0066cc"], [style*="linear-gradient(135deg,#0066cc"], [style*="linear-gradient(135deg, #667eea"], [style*="linear-gradient(135deg,#667eea"], [style*="background: #0050b3"], [style*="background:#0050b3"], [style*="background: #0066cc"], [style*="background:#0066cc"]):is([style*="color: white"], [style*="color:white"], [style*="color: #fff"], [style*="color:#fff"], [style*="color: #ffffff"], [style*="color:#ffffff"]) {
    background: var(--tv-navy) !important; background-image: none !important; color: #fff !important;
}
:is(#dashboard-container, .offer-modal, #roomModal) :is(div, header, section):is([style*="linear-gradient(135deg, #0050b3"], [style*="linear-gradient(135deg,#0050b3"], [style*="linear-gradient(135deg, #0066cc"], [style*="linear-gradient(135deg,#0066cc"], [style*="linear-gradient(135deg, #667eea"], [style*="linear-gradient(135deg,#667eea"], [style*="background: #0050b3"], [style*="background:#0050b3"], [style*="background: #0066cc"], [style*="background:#0066cc"]):is([style*="color: white"], [style*="color:white"], [style*="color: #fff"], [style*="color:#fff"], [style*="color: #ffffff"], [style*="color:#ffffff"]) :is(h1, h2, h3, h4, h5, h6, p, span, strong, b, small, label, em, i, div, a) { color: #fff !important; }
/* Riquadri bianchi dentro una testata blu notte: testo di nuovo scuro */
:is(#dashboard-container, .offer-modal, #roomModal) :is(div, header, section):is([style*="linear-gradient(135deg, #0050b3"], [style*="linear-gradient(135deg,#0050b3"], [style*="linear-gradient(135deg, #0066cc"], [style*="linear-gradient(135deg,#0066cc"], [style*="linear-gradient(135deg, #667eea"], [style*="linear-gradient(135deg,#667eea"], [style*="background: #0050b3"], [style*="background:#0050b3"], [style*="background: #0066cc"], [style*="background:#0066cc"]):is([style*="color: white"], [style*="color:white"], [style*="color: #fff"], [style*="color:#fff"], [style*="color: #ffffff"], [style*="color:#ffffff"]) :is([style*="background: white"], [style*="background:white"], [style*="background: #fff"], [style*="background:#fff"], [style*="background: #ffffff"], [style*="background:#ffffff"]), :is(#dashboard-container, .offer-modal, #roomModal) :is(div, header, section):is([style*="linear-gradient(135deg, #0050b3"], [style*="linear-gradient(135deg,#0050b3"], [style*="linear-gradient(135deg, #0066cc"], [style*="linear-gradient(135deg,#0066cc"], [style*="linear-gradient(135deg, #667eea"], [style*="linear-gradient(135deg,#667eea"], [style*="background: #0050b3"], [style*="background:#0050b3"], [style*="background: #0066cc"], [style*="background:#0066cc"]):is([style*="color: white"], [style*="color:white"], [style*="color: #fff"], [style*="color:#fff"], [style*="color: #ffffff"], [style*="color:#ffffff"]) :is([style*="background: white"], [style*="background:white"], [style*="background: #fff"], [style*="background:#fff"], [style*="background: #ffffff"], [style*="background:#ffffff"]) :is(h1, h2, h3, h4, h5, h6, p, span, strong, b, small, label, em, i, div, a) { color: var(--tv-ink) !important; }
/* Tasti con gradiente o blu pieno → turchese */
#dashboard-container button[style*="#0050b3"], #dashboard-container button[style*="#0066cc"],
#dashboard-container button[style*="#667eea"], #dashboard-container a[style*="background: #0050b3"],
#dashboard-container a[style*="background:#0050b3"], body button[style*="linear-gradient(135deg, #0050b3"] {
    background: var(--tv-teal) !important; background-image: none !important; color: #fff !important; border: 0 !important;
}
/* Riquadri informativi chiari con bordo blu → bordo turchese */
#dashboard-container div[style*="border-left: 4px solid #0050b3"], #dashboard-container div[style*="border-left: 4px solid #0066cc"],
#dashboard-container div[style*="border-left:3px solid #0066cc"], #dashboard-container div[style*="border-left: 3px solid #0066cc"] {
    background: var(--tv-teal-soft) !important; background-image: none !important; border-left-color: var(--tv-teal) !important;
}
/* Numeri e testi blu → turchese scuro */
#dashboard-container [style*="color: #0050b3"], #dashboard-container [style*="color:#0050b3"],
#dashboard-container [style*="color: #0066cc"] { color: var(--tv-teal-dark) !important; }
/* Barre di avanzamento */
#dashboard-container [style*="linear-gradient(90deg, #0050b3"] { background: var(--tv-teal) !important; background-image: none !important; }

/* Notifiche */
.notification-toast { border-radius: 12px; font-family: var(--tv-font); }

/* ============ ICONE AL POSTO DELLE EMOJI (tema-icone.js) ============ */
.ti-wrap { display: inline-flex; align-items: center; justify-content: center; vertical-align: -0.16em; line-height: 1; }
.ti-ic { width: 1.05em; height: 1.05em; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; flex: none; }
.ti-ok { color: #0f9f5a; } .ti-ko { color: #d43c3c; } .ti-warn { color: #d98a00; }
.ti-dot { display: inline-block; width: .62em; height: .62em; border-radius: 50%; background: #94a3b8; }
.ti-dot.ti-ok { background: #16a34a; } .ti-dot.ti-ko { background: #dc2626; } .ti-dot.ti-warn { background: #f59e0b; }
.ti-dot.ti-blue { background: #0aa5b8; } .ti-dot.ti-grey { background: #94a3b8; }
/* Icone grandi nei riquadri statistici e nelle testate */
#dashboard-container .stat-icon .ti-wrap, #dashboard-container .stat-icon .ti-ic { width: 24px; height: 24px; }
#dashboard-container .stat-icon .ti-ic { stroke-width: 1.8; }
#dashboard-container h1 > .ti-wrap:first-child, #dashboard-container h2 > .ti-wrap:first-child {
    width: 1.5em; height: 1.5em; margin-right: .45em; border-radius: 10px; background: rgba(255,255,255,.14);
}
#dashboard-container h1 > .ti-wrap:first-child .ti-ic, #dashboard-container h2 > .ti-wrap:first-child .ti-ic { width: .9em; height: .9em; }
#dashboard-container h3 > .ti-wrap:first-child, #dashboard-container h4 > .ti-wrap:first-child,
#dashboard-container button > .ti-wrap:first-child, #dashboard-container .tab-btn > .ti-wrap:first-child { margin-right: .4em; }
#dashboard-container h3 > .ti-wrap:first-child .ti-ic, #dashboard-container h4 > .ti-wrap:first-child .ti-ic { color: var(--tv-teal); }