:root {
    --colore-sfondo-input: #333333; 
    --colore-testo-input: #adb5bd;
    --colore-testo-bottoni: #333333;
    --colore-testo-mid: #747474;
    --colore-testo-input-hover: #9ca2a8;
    --colore-sfondo-card: #303030; 
    --colore-sfondo-fake-field: #3f3f3f; 
    --colore-sfondo-drawer: #3f3f3f; 
    --colore-sfondo-pagina: #202529;
    --colore-sfondo-hightlight: #08090a;
    
    --colore-sfondo-card2-header: #29292c;
    --colore-linee: #555;

    /*bottoni*/
    --testo-scuro: #000;
    --bs-btn-color: #91b6ed;

    --purple:#ff89ff;
}



[data-bs-theme="dark"] .top-admin-bar {
    background-color: #333 !important;
    height: 60px;
}

[data-bs-theme="dark"]  .text-dark {
    color: var(--colore-testo-mid) !important;
}

[data-bs-theme="dark"]  .bg-warning .text-dark {
    color: var(--colore-testo-bottoni) !important;
}


[data-bs-theme="dark"] .form-control {
    color-scheme: dark; /* Suggerisce al browser di usare stili di sistema scuri */
}

[data-bs-theme="dark"] .adhesion-title {
  color: var(--testo-scuro) !important;
}

[data-bs-theme="dark"]  .nav-link {
    color: var(--colore-testo-input)  !important;
}

[data-bs-theme="dark"]  .nav-link:hover {
    color: var(--colore-testo-input-hover)  !important;
}

[data-bs-theme="dark"] .purple-color {
     color: var(--purple);
}

[data-bs-theme="dark"] .table { 
  background: var(--colore-sfondo-card);
  border-radius: 10px;
}
[data-bs-theme="dark"] .recap-table td, .recap-table th {
    border-bottom: 1px solid var(--colore-linee) !important;
}

[data-bs-theme="dark"] .btn-outline-primary {
  color: var(--bs-btn-color);
  border-color: var(--bs-btn-color);
}

[data-bs-theme="dark"] .btn-outline-primary:hover {
  color: var(--bs-btn-color);
  border-color: var(--bs-btn-color);
  background-color: var(--bs-btn-color);
  color: var(--testo-scuro);
}
[data-bs-theme="dark"] .language-form-chooser {
  background-color: var(--colore-sfondo-input);
}
[data-bs-theme="dark"] .language-form-chooser a {
  color:var(--colore-testo-input) !important;
}
[data-bs-theme="dark"] .content {
  background-image: none !important;
}

[data-bs-theme="dark"] .header-decorative-image {
  display: none;
}

[data-bs-theme="dark"] .btn-white-app {
  background-color: #202529;
  border-color: #202529;
}

[data-bs-theme="dark"] .btn-white-app a {
    color: #ccc;
}

[data-bs-theme="dark"]  .unselected {
    background-color: #333333 !important;
}

[data-bs-theme="dark"] .btn { 
  font-weight: 500 !important;
}

/* 1. Sfondo degli input: solo quando il tema è dark */
[data-bs-theme="dark"] .form-control, 
[data-bs-theme="dark"] .form-select {
    background-color: var(--colore-sfondo-input);
    color: var(--colore-testo-input);
}

/* 2. Floating Label: attenzione alla virgola! */
[data-bs-theme="dark"] .form-floating > .form-control:focus ~ label::after, 
[data-bs-theme="dark"] .form-floating > .form-control:not(:placeholder-shown) ~ label::after {
    background-color: var(--colore-sfondo-input);
    color: var(--colore-testo-input);
}

/* 3. Colore del testo della label (opzionale ma consigliato) */
[data-bs-theme="dark"] .form-floating > label {
    color: var(--colore-testo-input);
}


[data-bs-theme="dark"] .form-floating > label {
    background-color: transparent; /* Rimuove l'alone bianco */
    color: var(--colore-testo-input);
}

/* Impedisce al browser di cambiare lo sfondo quando compila l'email */
[data-bs-theme="dark"] input:-webkit-autofill,
[data-bs-theme="dark"] input:-webkit-autofill:hover, 
[data-bs-theme="dark"] input:-webkit-autofill:focus {
    -webkit-text-fill-color: #ffffff !important; /* Colore testo */
    -webkit-box-shadow: 0 0 0px 1000px #333333 inset !important; /* "Copre" il bianco con un'ombra interna del tuo colore (#333) */
    transition: background-color 5000s ease-in-out 0s; /* Un trucco per bloccare il cambio colore */
}

/* Gestione Focus in Dark Mode */
[data-bs-theme="dark"] .form-control:focus,
[data-bs-theme="dark"] .form-select:focus,
[data-bs-theme="dark"] .form-check-input:focus {
    background-color: #333333 !important; /* Mantiene lo sfondo scuro */
    color: #ffffff !important;           /* Testo bianco */
    border-color: #555555;               /* Bordo leggermente più chiaro */
    outline: 0;
    /* Cambiamo l'alone azzurro con uno più adatto al dark (opzionale) */
    box-shadow: 0 0 0 0.25rem rgba(255, 255, 255, 0.1); 
}


[data-bs-theme="dark"] .mediation-detail {
    font-size: 16px;
    border-bottom: 1px solid var(--colore-sfondo-fake-field);
    font-weight: 500;
    margin-bottom: 14px;
    background-color: var(--colore-sfondo-fake-field);
    padding: 6px 12px;
    border-radius: 10px;
}

[data-bs-theme="dark"] .tab-content {
  background-color: #464646 !important;
  border-top: 5px solid #303030;
} 

[data-bs-theme="dark"] .my-tabs .tab-item {
    background: #303030;
    color: #adb5bd;
    font-weight: bold;
}

[data-bs-theme="dark"] .my-tabs .tab-item.active {
    background: #464646;
    color: #adb5bd;
    font-weight: bold;
}

[data-bs-theme="dark"] .my-tabs {
    border-bottom: none !important;
}

[data-bs-theme="dark"] .docs-block { 
  background: var(--colore-sfondo-card);
}

[data-bs-theme="dark"] .card { 
  background: var(--colore-sfondo-card);
}



[data-bs-theme="dark"] .party-box { 
  background: var(--colore-sfondo-card);
  border-top-color: var(--colore-sfondo-card);
}

[data-bs-theme="dark"] .card2-header {
  background-color:  var(--colore-sfondo-card2-header);
}

[data-bs-theme="dark"] .party-detail {
  background-color: var(--colore-sfondo-fake-field);
  border-bottom: none;
}

[data-bs-theme="dark"] .party-box-actions {
  background-color: var(--colore-sfondo-input);
}

[data-bs-theme="dark"] .custom-modal {
  background-color: var(--colore-sfondo-card);

}

[data-bs-theme="dark"] .participation-drawer { 
  background-color: var(--colore-sfondo-drawer);
}

[data-bs-theme="dark"] .custom-modal-header {
  border-bottom: 1px solid var(--colore-linee);
}



[data-bs-theme="dark"] .drawer-panel {
  background-color: var(--colore-sfondo-drawer);
}

[data-bs-theme="dark"] .meeting-drawer {
  background-color: var(--colore-sfondo-drawer);
}

[data-bs-theme="dark"] .payment-drawer{
  background-color: var(--colore-sfondo-drawer);
}

[data-bs-theme="dark"] .legal-recap {
  background: none;
}

[data-bs-theme="dark"] .recap-table th {
    background: none;
}

[data-bs-theme="dark"] .title-mediation-section {
    border-bottom: 2px solid #666;
}

[data-bs-theme="dark"] .custom-modal-footer {
  border-top: 1px solid var(--colore-linee);
}

[data-bs-theme="dark"] .procedure-date { 
  border-bottom: 1px solid var(--colore-linee);
}

[data-bs-theme="dark"] .partRecap {
  border-bottom: 1px solid var(--colore-linee);
}

[data-bs-theme="dark"] .partySummary h6 { 
  border-bottom: 1px solid var(--colore-linee);
}

[data-bs-theme="dark"] .breadcrumb {
    border-top: 1px solid var(--colore-linee);
}

[data-bs-theme="dark"] .step-25 { 
  border-left: 1px solid var(--colore-linee);
}

[data-bs-theme="dark"] .party-box-actions { 
 border-top: 1px solid var(--colore-linee); 
}

[data-bs-theme="dark"] .card2 {
  background-color: var(--colore-sfondo-card);
}

[data-bs-theme="dark"] .dash-row-column {
    border-right: 1px solid var(--colore-linee);
}

[data-bs-theme="dark"] .card2-footer {
    border-top: 1px solid #555;
}

[data-bs-theme="dark"] .procedure-progress-25 {
    width: 100%;
    padding: 5px 30px;
    background: #232526;  /* fallback for old browsers */
    background: -webkit-linear-gradient(to right, #414345, #232526);  /* Chrome 10-25, Safari 5.1-6 */
    background: linear-gradient(to right, #414345, #232526); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */

    border-radius: 25px;
    padding-top: 7px;
}

[data-bs-theme="dark"] .doc-meta {
    border-top: 1px solid var(--colore-linee);
}

[data-bs-theme="dark"] .party-lawyers-list li {
    padding: 10px 0;
    border-top: 1px solid var(--colore-linee);
}

[data-bs-theme="dark"] .ai-summary-text {
  background: var(--colore-sfondo-card) ;
}

[data-bs-theme="dark"] .ai-coming-box {
  border: none;
  background: #cc2b5e;  /* fallback for old browsers */
  background: -webkit-linear-gradient(to right, #753a88, #cc2b5e);  /* Chrome 10-25, Safari 5.1-6 */
  background: linear-gradient(to right, #753a88, #cc2b5e); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
}

[data-bs-theme="dark"] .payment-card {
    border: 1px solid var(--colore-linee);
    border-radius: 14px;
    background: var(--colore-sfondo-card2-header);
    transition: all .15s ease;
}

[data-bs-theme="dark"] .payment-card.open .payment-expand {
    display: block;
    background-color: var(--colore-sfondo-card);
}

[data-bs-theme="dark"] .payment-card .text-dark {
  color: var(--testo-scuro) !important;
}

[data-bs-theme="dark"] .question-footer {
  background-color: var(--colore-sfondo-pagina)
} 
[data-bs-theme="dark"] .question-footer a {
  color: var(--colore-testo-input-hover)
} 

[data-bs-theme="dark"] .dt-paging-button { 
    background-color: var(--colore-sfondo-card2-header) !important;
    color: var(--colore-testo-input) !important;
}

[data-bs-theme="dark"] .highlight {
  background-color: var(--colore-sfondo-hightlight) !important;
}

[data-bs-theme="dark"] .dropdown-menu {
  background-color: var(--colore-sfondo-card) !important;
}