/*
 * Dark Mode Hotfixes for Tringo
 * Questo file contiene regole specifiche per migliorare la leggibilità in modalità dark.
 * Viene caricato per ultimo per garantire la massima priorità.
 */

/* ==========================================================================
   Correzioni per i Modal - TUTTE LE TIPOLOGIE
   ========================================================================== */

/* Colore del testo di base per il contenuto del modal */
[data-theme="dark"] .modal-content {
    background-color: var(--card-bg) !important;
    color: var(--text-primary) !important;
}

/* Header del Modal - Mantiene i colori specifici ma assicura leggibilità */
[data-theme="dark"] .modal-header {
    border-bottom: 1px solid var(--border-color) !important;
}

[data-theme="dark"] .modal-header.bg-success {
    background-color: #198754 !important;
    color: #ffffff !important;
}

[data-theme="dark"] .modal-header.bg-primary {
    background-color: #0d6efd !important;
    color: #ffffff !important;
}

[data-theme="dark"] .modal-header.bg-info {
    background-color: #0dcaf0 !important;
    color: #000000 !important;
}

[data-theme="dark"] .modal-header.bg-warning {
    background-color: #ffc107 !important;
    color: #000000 !important;
}

[data-theme="dark"] .modal-header.bg-light {
    background-color: var(--bg-secondary) !important;
    color: var(--text-primary) !important;
}

/* Footer del Modal */
[data-theme="dark"] .modal-footer {
    background-color: var(--bg-secondary) !important;
    border-top: 1px solid var(--border-color) !important;
    color: var(--text-primary) !important;
}

/* Titoli del Modal */
[data-theme="dark"] .modal-title {
    color: inherit !important;
}

/* Elementi di testo specifici nel corpo del modal */
[data-theme="dark"] .modal-body {
    color: var(--text-primary) !important;
}

[data-theme="dark"] .modal-body p {
    color: var(--text-primary) !important;
}

[data-theme="dark"] .modal-body li {
    color: var(--text-primary) !important;
}

[data-theme="dark"] .modal-body h1,
[data-theme="dark"] .modal-body h2,
[data-theme="dark"] .modal-body h3,
[data-theme="dark"] .modal-body h4,
[data-theme="dark"] .modal-body h5,
[data-theme="dark"] .modal-body h6 {
    color: var(--text-primary) !important;
}

[data-theme="dark"] .modal-body strong {
    color: var(--text-primary) !important;
}

[data-theme="dark"] .modal-body small {
    color: var(--text-secondary) !important;
}

/* Override per le classi di colore di Bootstrap all'interno dei modal */
[data-theme="dark"] .modal-body .text-primary {
    color: #80bfff !important;
}

[data-theme="dark"] .modal-body .text-success {
    color: #20c997 !important;
}

[data-theme="dark"] .modal-body .text-warning {
    color: #ffc107 !important;
}

[data-theme="dark"] .modal-body .text-danger {
    color: #dc3545 !important;
}

[data-theme="dark"] .modal-body .text-info {
    color: #0dcaf0 !important;
}

[data-theme="dark"] .modal-body .text-muted {
    color: var(--text-muted) !important;
}

[data-theme="dark"] .modal-body .text-dark {
    color: var(--text-primary) !important;
}

[data-theme="dark"] .modal-body .text-secondary {
    color: var(--text-secondary) !important;
}

/* Liste non ordinate nei modal */
[data-theme="dark"] .modal-body ul.list-unstyled li {
    color: var(--text-primary) !important;
}

/* Card all'interno dei modal */
[data-theme="dark"] .modal-body .card {
    background-color: var(--bg-secondary) !important;
    border: 1px solid var(--border-color) !important;
    color: var(--text-primary) !important;
}

[data-theme="dark"] .modal-body .card-header {
    background-color: var(--bg-tertiary) !important;
    border-bottom: 1px solid var(--border-color) !important;
    color: var(--text-primary) !important;
}

[data-theme="dark"] .modal-body .card-body {
    color: var(--text-primary) !important;
}

[data-theme="dark"] .modal-body .card-title {
    color: var(--text-primary) !important;
}

[data-theme="dark"] .modal-body .card-text {
    color: var(--text-primary) !important;
}

/* Alert all'interno dei modal */
[data-theme="dark"] .modal-body .alert {
    border: 1px solid var(--border-color) !important;
}

[data-theme="dark"] .modal-body .alert-info {
    background-color: rgba(13, 202, 240, 0.1) !important;
    color: #0dcaf0 !important;
    border-color: rgba(13, 202, 240, 0.3) !important;
}

[data-theme="dark"] .modal-body .alert-warning {
    background-color: rgba(255, 193, 7, 0.1) !important;
    color: #ffc107 !important;
    border-color: rgba(255, 193, 7, 0.3) !important;
}

[data-theme="dark"] .modal-body .alert-success {
    background-color: rgba(25, 135, 84, 0.1) !important;
    color: #20c997 !important;
    border-color: rgba(25, 135, 84, 0.3) !important;
}

[data-theme="dark"] .modal-body .alert-danger {
    background-color: rgba(220, 53, 69, 0.1) !important;
    color: #dc3545 !important;
    border-color: rgba(220, 53, 69, 0.3) !important;
}

/* Bottoni di chiusura */
[data-theme="dark"] .modal-header .btn-close {
    filter: invert(1) grayscale(100%) brightness(200%);
}

[data-theme="dark"] .modal-header .btn-close-white {
    filter: none;
}

/* ==========================================================================
   Correzioni specifiche per le Vetrine
   ========================================================================== */

/* Card delle vetrine nella homepage */
[data-theme="dark"] .showcase-card {
    background-color: var(--card-bg) !important;
    border: 1px solid var(--border-color) !important;
    color: var(--text-primary) !important;
}

[data-theme="dark"] .showcase-card .card-title {
    color: var(--text-primary) !important;
}

[data-theme="dark"] .showcase-card .card-text {
    color: var(--text-secondary) !important;
}

[data-theme="dark"] .showcase-card .card-body {
    color: var(--text-primary) !important;
}

[data-theme="dark"] .showcase-card .card-footer {
    background-color: var(--bg-secondary) !important;
    border-top: 1px solid var(--border-color) !important;
    color: var(--text-primary) !important;
}

[data-theme="dark"] .showcase-card .contact-info {
    color: var(--text-primary) !important;
}

[data-theme="dark"] .showcase-card .contact-info small {
    color: var(--text-secondary) !important;
}

/* ==========================================================================
   Correzioni per la Card del Chatbot AI nella Homepage
   ========================================================================== */

/* Assicura che il testo in questa sezione specifica rimanga bianco */
[data-theme="dark"] .chatbot-promo h2.text-white,
[data-theme="dark"] .chatbot-promo h6.text-white {
    color: #ffffff !important;
}

[data-theme="dark"] .chatbot-promo p.text-white-50 {
    color: rgba(255, 255, 255, 0.75) !important;
}

/* ==========================================================================
   Correzioni per Form nei Modal
   ========================================================================== */

[data-theme="dark"] .modal-body .form-label {
    color: var(--text-primary) !important;
}

[data-theme="dark"] .modal-body .form-control {
    background-color: var(--input-bg) !important;
    border: 1px solid var(--border-color) !important;
    color: var(--text-primary) !important;
}

[data-theme="dark"] .modal-body .form-control:focus {
    background-color: var(--input-bg) !important;
    border-color: var(--button-bg) !important;
    color: var(--text-primary) !important;
    box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25) !important;
}

[data-theme="dark"] .modal-body .form-control::placeholder {
    color: var(--text-muted) !important;
}

[data-theme="dark"] .modal-body .form-select {
    background-color: var(--input-bg) !important;
    border: 1px solid var(--border-color) !important;
    color: var(--text-primary) !important;
}

/* ==========================================================================
   Correzioni per Row e Column nei Modal
   ========================================================================== */

[data-theme="dark"] .modal-body .row {
    color: var(--text-primary) !important;
}

[data-theme="dark"] .modal-body .col-md-6,
[data-theme="dark"] .modal-body .col-md-12,
[data-theme="dark"] .modal-body .col-lg-6,
[data-theme="dark"] .modal-body .col-lg-12 {
    color: var(--text-primary) !important;
}

/* ==========================================================================
   CORREZIONI CONTRASTO DASHBOARD - "Il tuo piano attuale"
   ========================================================================== */

/* Miglioramento contrasto per alert-info in modalità dark */
[data-theme="dark"] .alert-info {
    background-color: rgba(13, 110, 253, 0.15) !important;
    color: #ffffff !important;
    border-color: rgba(13, 110, 253, 0.4) !important;
}

[data-theme="dark"] .alert-info .alert-heading {
    color: #ffffff !important;
}

[data-theme="dark"] .alert-info strong {
    color: #ffffff !important;
}

[data-theme="dark"] .alert-info .fas {
    color: #80bfff !important;
}

/* ==========================================================================
   CORREZIONI PULSANTI SU SFONDO BLU - Visibilità migliorata
   ========================================================================== */

/* Pulsanti primari - Miglior contrasto in modalità dark */
[data-theme="dark"] .btn-primary {
    background-color: #0d6efd !important;
    border-color: #0d6efd !important;
    color: #ffffff !important;
    font-weight: 500 !important;
    transition: all 0.3s ease !important;
}

[data-theme="dark"] .btn-primary:hover {
    background-color: #0b5ed7 !important;
    border-color: #0a58ca !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 8px rgba(13, 110, 253, 0.3) !important;
}

[data-theme="dark"] .btn-primary:focus {
    background-color: #0b5ed7 !important;
    border-color: #0a58ca !important;
    color: #ffffff !important;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5) !important;
}

/* Pulsanti outline-primary - Sempre visibili */
[data-theme="dark"] .btn-outline-primary {
    color: #80bfff !important;
    border-color: #80bfff !important;
    background-color: transparent !important;
    font-weight: 500 !important;
    transition: all 0.3s ease !important;
}

[data-theme="dark"] .btn-outline-primary:hover {
    background-color: #80bfff !important;
    border-color: #80bfff !important;
    color: #000000 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 8px rgba(128, 191, 255, 0.3) !important;
}

[data-theme="dark"] .btn-outline-primary:focus {
    background-color: #80bfff !important;
    border-color: #80bfff !important;
    color: #000000 !important;
    box-shadow: 0 0 0 0.25rem rgba(128, 191, 255, 0.5) !important;
}

/* Pulsanti outline-info - Miglior visibilità */
[data-theme="dark"] .btn-outline-info {
    color: #0dcaf0 !important;
    border-color: #0dcaf0 !important;
    background-color: transparent !important;
    font-weight: 500 !important;
}

[data-theme="dark"] .btn-outline-info:hover {
    background-color: #0dcaf0 !important;
    border-color: #0dcaf0 !important;
    color: #000000 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 8px rgba(13, 202, 240, 0.3) !important;
}

/* ==========================================================================
   CORREZIONI SPECIFICHE DASHBOARD - Sezioni servizi
   ========================================================================== */

/* Miglioramento contrasto per le card dei servizi */
[data-theme="dark"] .service-card {
    background-color: var(--card-bg) !important;
    border: 1px solid var(--border-color) !important;
    transition: all 0.3s ease !important;
}

[data-theme="dark"] .service-card:hover {
    border-color: var(--button-bg) !important;
    box-shadow: 0 4px 15px rgba(13, 110, 253, 0.2) !important;
}

/* Testo nelle card dei servizi */
[data-theme="dark"] .service-card h6 {
    color: var(--text-primary) !important;
}

[data-theme="dark"] .service-card .text-primary {
    color: #80bfff !important;
}

[data-theme="dark"] .service-card .text-success {
    color: #20c997 !important;
}

[data-theme="dark"] .service-card .text-warning {
    color: #ffc107 !important;
}

[data-theme="dark"] .service-card .text-muted {
    color: var(--text-secondary) !important;
}

/* Liste nelle card dei servizi */
[data-theme="dark"] .service-card ul.list-unstyled li {
    color: var(--text-secondary) !important;
}

[data-theme="dark"] .service-card ul.list-unstyled li strong {
    color: var(--text-primary) !important;
}

/* Icone nelle liste */
[data-theme="dark"] .service-card .fas {
    opacity: 0.9 !important;
}

/* ==========================================================================
   CORREZIONI ACCESSIBILITÀ - Focus e stati attivi
   ========================================================================== */

/* Miglioramento focus per tutti i pulsanti in modalità dark */
[data-theme="dark"] .btn:focus {
    outline: 2px solid #80bfff !important;
    outline-offset: 2px !important;
}

/* Stati attivi più visibili */
[data-theme="dark"] .btn:active {
    transform: translateY(0) !important;
}

/* Correzione per pulsanti disabilitati */
[data-theme="dark"] .btn:disabled,
[data-theme="dark"] .btn.disabled {
    opacity: 0.5 !important;
    cursor: not-allowed !important;
}
/* Stili per la sezione Shop Aziendale */
.shop-preview {
    border: 1px solid #e9ecef;
    border-radius: 8px;
    background: #f8f9fa;
}

.feature-item {
    display: flex;
    align-items: center;
    margin-bottom: 8px;
    font-size: 0.9rem;
}

.feature-item i {
    flex-shrink: 0;
}

/* Dark mode per la sezione shop */
[data-theme="dark"] .shop-preview {
    background: var(--bs-dark);
    border-color: var(--bs-border-color);
}

[data-theme="dark"] .feature-item {
    color: var(--text-primary);
}

[data-theme="dark"] .alert-info {
    background-color: rgba(13, 110, 253, 0.15) !important;
    color: #ffffff !important;
    border-color: rgba(13, 110, 253, 0.4) !important;
}
