:root {
    --toast-error-background: #FFA3A3;
    --toast-error-text: white;
    --color-secondary: #7e048c;
    --color-primary: #048C4FFF;
    --color-primary-dark: #097942;
    --color-primary-hover: #0a7342;
    --color-primary-shadow: #048C4F38;
    --color-primary-light: #63efae;
    --color-primary-lighter: #e0fff0;
    --color-primary-light-opaque: #98e5bf;
    --color-primary-light-hover: #d3eee1;
    
    --color-error: #dc3545;
    --color-error-light: #ffd1db;
    --color-success: #28a745;
    --bs-primary-rgb: 4, 140, 79;

    --blue-50:#f5f9ff;
    --blue-100:#d0e1fd;
    --blue-200:#abc9fb;
    --blue-300:#85b2f9;
    --blue-400:#609af8;
    --blue-500:#3b82f6;
    --blue-600:#326fd1;
    --blue-700:#295bac;
    --blue-800:#204887;
    --blue-900:#183462;
    --green-50:#f4fcf7;
    --green-100:#caf1d8;
    --green-200:#a0e6ba;
    --green-300:#76db9b;
    --green-400:#4cd07d;
    --green-500:#22c55e;
    --green-600:#1da750;
    --green-700:#188a42;
    --green-800:#136c34;
    --green-900:#0e4f26;
    --yellow-50:#fefbf3;
    --yellow-100:#faedc4;
    --yellow-200:#f6de95;
    --yellow-300:#f2d066;
    --yellow-400:#eec137;
    --yellow-500:#eab308;
    --yellow-600:#c79807;
    --yellow-700:#a47d06;
    --yellow-800:#816204;
    --yellow-900:#5e4803;
    --cyan-50:#f3fbfd;
    --cyan-100:#c3edf5;
    --cyan-200:#94e0ed;
    --cyan-300:#65d2e4;
    --cyan-400:#35c4dc;
    --cyan-500:#06b6d4;
    --cyan-600:#059bb4;
    --cyan-700:#047f94;
    --cyan-800:#036475;
    --cyan-900:#024955;
    --pink-50:#fef6fa;
    --pink-100:#fad3e7;
    --pink-200:#f7b0d3;
    --pink-300:#f38ec0;
    --pink-400:#f06bac;
    --pink-500:#ec4899;
    --pink-600:#c93d82;
    --pink-700:#a5326b;
    --pink-800:#822854;
    --pink-900:#5e1d3d;
    --indigo-50:#f7f7fe;
    --indigo-100:#dadafc;
    --indigo-200:#bcbdf9;
    --indigo-300:#9ea0f6;
    --indigo-400:#8183f4;
    --indigo-500:#6366f1;
    --indigo-600:#5457cd;
    --indigo-700:#4547a9;
    --indigo-800:#363885;
    --indigo-900:#282960;
    --teal-50:#f3fbfb;
    --teal-100:#c7eeea;
    --teal-200:#9ae0d9;
    --teal-300:#6dd3c8;
    --teal-400:#41c5b7;
    --teal-500:#14b8a6;
    --teal-600:#119c8d;
    --teal-700:#0e8174;
    --teal-800:#0b655b;
    --teal-900:#084a42;
    --orange-50:#fff8f3;
    --orange-100:#feddc7;
    --orange-200:#fcc39b;
    --orange-300:#fba86f;
    --orange-400:#fa8e42;
    --orange-500:#f97316;
    --orange-600:#d46213;
    --orange-700:#ae510f;
    --orange-800:#893f0c;
    --orange-900:#642e09;
    --bluegray-50:#f7f8f9;
    --bluegray-100:#dadee3;
    --bluegray-200:#bcc3cd;
    --bluegray-300:#9fa9b7;
    --bluegray-400:#818ea1;
    --bluegray-500:#64748b;
    --bluegray-600:#556376;
    --bluegray-700:#465161;
    --bluegray-800:#37404c;
    --bluegray-900:#282e38;
    --purple-50:#fbf7ff;
    --purple-100:#ead6fd;
    --purple-200:#dab6fc;
    --purple-300:#c996fa;
    --purple-400:#b975f9;
    --purple-500:#a855f7;
    --purple-600:#8f48d2;
    --purple-700:#763cad;
    --purple-800:#5c2f88;
    --purple-900:#432263;
    --red-50:#fff5f5;
    --red-100:#ffd0ce;
    --red-200:#ffaca7;
    --red-300:#ff8780;
    --red-400:#ff6259;
    --red-500:#ff3d32;
    --red-600:#d9342b;
    --red-700:#b32b23;
    --red-800:#8c221c;
    --red-900:#661814;
    --primary-50:#f3fcf9;
    --primary-100:#c6eee1;
    --primary-200:#98e1c9;
    --primary-300:#6bd4b1;
    --primary-400:#3dc699;
    --primary-500:#10b981;
    --primary-600:#0e9d6e;
    --primary-700:#0b825a;
    --primary-800:#096647;
    --primary-900:#064a34;


    --clickable-table-hover: var(--color-primary-light-opaque);

    /* Override Bootstrap info color (celeste più scuro) */
    --bs-info: #039fb1;
    --bs-info-rgb: 3, 159, 177;
}

/* Buttons */
.btn-primary{
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}

.btn-primary.disabled,
.btn-primary:disabled {
    background-color: var(--bs-gray-600);
    border-color: var(--bs-gray-600);
}

.btn-primary:hover {
    background-color: var(--color-primary-hover);
    border-color: var(--color-primary-hover);
}

.btn-primary.active:focus, .btn-primary:active:focus, .show > .btn-primary.dropdown-toggle:focus {
    box-shadow: 0 0 0 .25rem var(--color-primary-shadow);
}

.btn-primary.active, .btn-primary:active, .show > .btn-primary.dropdown-toggle {
    background-color: var(--color-primary-hover);
    border-color: var(--color-primary-hover);
}

.btn-check:focus + .btn-primary, .btn-primary:focus {
    background-color: var(--color-primary-hover);
    border-color: var(--color-primary-hover);
    box-shadow: 0 0 0 .25rem var(--color-primary-shadow);
}

.btn-outline-primary, .btn-outline-primary:hover, .btn-outline-primary:focus {
    color: var(--color-primary);
    border-color: var(--color-primary);
}
.btn-outline-primary:hover {
    background-color: var(--color-primary-hover);
    color: white;
}
/*End Buttons*/

/* Checkboxes */
.form-check-input:checked,
/* Stato misto del "seleziona tutti": Bootstrap lo colora di blu con un selettore più specifico */
.form-check-input[type=checkbox]:indeterminate {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}

.form-check-input:focus {
    box-shadow: 0 0 0 .25rem var(--color-primary-shadow);
}

/* End Checkboxes */

/* Links */
.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
    /*background-color: var(--color-primary);*/
    background: linear-gradient(45deg, var(--color-primary) 0%, #3a8876 100%);
    border-radius: .3rem !important;
}

.nav-link, a {
    color: var(--color-primary);
}
.main-nav a:not(.active) {
    color: var(--color-primary-dark) !important;
}

a:hover,
.nav-link:focus, .nav-link:hover {
    color: var(--color-primary-hover);
}

.main-nav .nav-link {
    border-radius: 0 !important;
}

/* End Links */

/* Selects */

.form-select:focus {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 .25rem var(--color-primary-shadow);
}

/*.form-switch .form-check-input:not(:checked):focus,*/
/*.form-switch .form-check-input:not(:checked) {*/
/*    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%284, 140, 79%29'/%3e%3c/svg%3e");*/
/*}*/

.bg-primary-light {
    background-color: var(--color-primary-light) !important;
}
.bg-primary-light-opaque {
    background-color: var(--color-primary-light-opaque) !important;
}
.bg-primary-lighter {
    background-color: var(--color-primary-lighter) !important;
}
.bg-revoked {
    background-color: var(--color-error-light) !important;
}

.text-blue-500 {
    color: var(--blue-500);
}
.text-yellow-500 {
    color: var(--yellow-500);
}
.text-yellow-600 {
    color: var(--yellow-600);
}
.text-orange-500 {
    color: var(--orange-500);
}
.text-red-500 {
    color: var(--red-500) !important;
}
.text-red-600 {
    color: var(--red-600) !important;
}
.text-red-700 {
    color: var(--red-700) !important;
}
.text-green-500 {
    color: var(--green-500) !important;
}
.text-green-600 {
    color: var(--green-600) !important;
}
.text-indigo-500 {
    color: var(--indigo-500);
}
.text-blue-600 {
    color: var(--blue-600) !important;
}
.text-purple-500 {
    color: var(--purple-500);
}
.text-cyan-500 {
    color: var(--cyan-500);
}

.bg-green-100 {
    background-color: var(--green-100) !important;
}
.bg-green-200 {
    background-color: var(--green-200) !important;
}
.bg-green-300 {
    background-color: var(--green-300) !important;
}