html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
    position: relative;
    min-height: 100%;
}

body {
  margin-bottom: 60px; 
}
    main {
        background-image: url('/img/logo-brand.svg');
    }
:root {
    /* --- Palette Colori Principale --- */
    /*--bs-primary: #1e7e34;*/ /* Verde foresta moderno */
    --bs-primary: rgb(5 150 105 / var(--tw-bg-opacity, 1));
    --bs-primary-rgb: 30, 126, 52;
    --bs-secondary: rgb(77 228 180); /* Arancione vibrante ma bilanciato */
    --bs-info: #f39c12; /* Arancione vibrante ma bilanciato */
    --bs-secondary-rgb: 77, 228, 180;
    /* --- Stati e Utility (Allineati alla palette) --- */
    --bs-success: #2ecc71; /* Verde chiaro/positivo */
    --bs-success-rgb: 46, 204, 113;
    --bs-warning: #e67e22; /* Arancione scuro/attenzione */
    --bs-warning-rgb: 230, 126, 34;
    --bs-danger: #e74c3c; /* Rosso (mantenuto per l'accessibilità degli errori) */
    --bs-info: #f39c12; /* Blu info */
    /* --- Sfondi e Neutri (Focus sul Bianco) --- */
    --bs-white: #ffffff;
    --bs-body-bg: #ffffff; /* Sfondo principale rigorosamente bianco */
    --bs-body-color: #2c3e50; /* Testo scuro desaturato (più moderno del nero puro) */
    /* Sfondi alternativi sfumati sul verde/arancione chiarissimi */
    --bs-light: #f4f9f4; /* Grigio-verde chiarissimo per card/sfondi */
    --bs-light-rgb: 244, 249, 244;
    --bs-dark: #1c2833; /* Antracite per contrasti forti */
    --bs-dark-rgb: 28, 40, 51;
    /* --- Elementi di Interfaccia Moderni --- */
    --bs-border-color: #eaeded;
    --bs-link-color: var(--bs-primary);
    --bs-link-hover-color: #155d26;
    /* --- Tipografia e Bordi Smussati (Modern Look) --- */
    --bs-font-sans-serif: 'Inter', system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    --bs-border-radius: 1.0rem; /* Bordi più arrotondati e moderni */
    --bs-border-radius-lg: 0.75rem;
    --bs-border-radius-sm: 0.25rem;
    /* --- Ombreggiature Soft --- */
    --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.04);
    --bs-box-shadow: 0 0.5rem 1rem rgba(30, 126, 52, 0.08); /* Ombra con un pizzico di verde */
    --bs-btn-box-shadow: 5px 5px 15px #aaa; /* Ombra con un pizzico di verde */
    --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.1);
}


.card {
    border-radius:15px;
}

.card-header:first-child {
    border-radius: 15px 15px 0  0;
}
 

/* ==========================================================================
   1. STILE BASE GLOBALE
   ========================================================================== */
.btn {
    font-weight: 550;
    padding: 0.6rem 1.25rem;
    box-shadow:var(--bs-btn-box-shadow);
    border-radius: var(--bs-border-radius)!important;
    z-index:100;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (max-width:768px){
    .btn span{
        display:none;
    }
    .btn i{
        margin:0!important;
    }
}
.btn-group {
    gap:10px;   
}

/* ==========================================================================
   2. BOTTONI PIENI (Solid Buttons)
   ========================================================================== */

/* --- Primary (Verde) --- */
.btn-primary {
    --bs-btn-color: var(--bs-white);
    background: var(--bs-primary);
    border-color: var(--bs-primary);
    --bs-btn-hover-color: var(--bs-white);
    --bs-btn-hover-bg: var(--bs-primary-hover);
    --bs-btn-hover-border-color: var(--bs-primary-hover);
    --bs-btn-active-bg: var(--bs-primary-active);
    --bs-btn-active-border-color: var(--bs-primary-active);
}

    .btn-primary:focus, .btn-check:focus + .btn-primary {
        box-shadow: 0 0 0 0.25rem rgba(var(--bs-primary-rgb), 0.25);
        background: var(--bs-primary-hover);
        border-color: var(--bs-primary-hover);
    }

/* --- Secondary (Arancione) --- */
.btn-secondary {
    color: var(--bs-dark);
    background: var(--bs-secondary);
    border-color: var(--bs-secondary);
    --bs-btn-border-color: var(--bs-secondary);
    --bs-btn-hover-color: var(--bs-white);
    --bs-btn-hover-bg: var(--bs-secondary-hover);
    --bs-btn-hover-border-color: var(--bs-secondary-hover);
    --bs-btn-active-bg: var(--bs-secondary-active);
    --bs-btn-active-border-color: var(--bs-secondary-active);
}

    .btn-secondary:focus, .btn-check:focus + .btn-secondary {
        box-shadow: 0 0 0 0.25rem rgba(var(--bs-secondary-rgb), 0.25);
    }

/* --- Success (Verde Chiaro/Positivo) --- */
.btn-success {
    --bs-btn-color: var(--bs-white);
    background: var(--bs-success);
    --bs-btn-border-color: var(--bs-success);
    --bs-btn-hover-bg: #27ae60;
    --bs-btn-hover-border-color: #27ae60;
    --bs-btn-active-bg: #219653;
    --bs-btn-active-border-color: #219653;
}

    .btn-success:focus, .btn-check:focus + .btn-success {
        box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
    }

/* --- Warning (Arancione Scuro/Allerta) --- */
.btn-warning {
    --bs-btn-color: var(--bs-white); /* Forzato a bianco per estetica della palette */
    background: var(--bs-warning);
    --bs-btn-border-color: var(--bs-warning);
    --bs-btn-hover-color: var(--bs-white);
    --bs-btn-hover-bg: #d35400;
    --bs-btn-hover-border-color: #d35400;
    --bs-btn-active-bg: #ba4a00;
    --bs-btn-active-border-color: #ba4a00;
}

    .btn-warning:focus, .btn-check:focus + .btn-warning {
        box-shadow: 0 0 0 0.25rem rgba(var(--bs-warning-rgb), 0.25);
    }

/* --- Danger (Rosso Errore) --- */
.btn-danger {
    --bs-btn-color: var(--bs-white);
    background: var(--bs-danger);
    --bs-btn-border-color: var(--bs-danger);
    --bs-btn-hover-bg: #c0392b;
    --bs-btn-hover-border-color: #c0392b;
    --bs-btn-active-bg: #a62c2b;
}

/* --- Info (Azzurro) --- */
.btn-info {
    --bs-btn-color: var(--bs-white);
    background: var(--bs-info);
    --bs-btn-border-color: var(--bs-info);
    --bs-btn-hover-bg: #2980b9;
}

/* --- Light (Il tuo Bianco/Grigio Chiaro) --- */
.btn-light {
    --bs-btn-color: var(--bs-body-color);
    background: var(--bs-light);
    --bs-btn-border-color: var(--bs-border-color);
    --bs-btn-hover-color: var(--bs-primary); /* L'hover si colora del brand principale */
    --bs-btn-hover-bg: var(--bs-light-hover);
    --bs-btn-hover-border-color: var(--bs-border-color);
    --bs-btn-active-bg: var(--bs-light-hover);
}

/* --- Dark (Antracite) --- */
.btn-dark {
    --bs-btn-color: var(--bs-white);
    background: var(--bs-dark);
    --bs-btn-border-color: var(--bs-dark);
    --bs-btn-hover-bg: var(--bs-dark-hover);
    --bs-btn-active-bg: #11171d;
}


/* ==========================================================================
   3. BOTTONI TRASPARENTI (Outline Buttons)
   ========================================================================== */
.btn-outline-primary {
    --bs-btn-color: var(--bs-primary);
    border: 1px solid var(--bs-primary);
    --bs-btn-hover-bg: var(--bs-primary);
    --bs-btn-hover-border-color: var(--bs-primary);
    --bs-btn-active-bg: var(--bs-primary);
}

.btn-outline-secondary {
    --bs-btn-color: var(--bs-secondary);
    border: 1px solid var(--bs-secondary);
    --bs-btn-hover-bg: var(--bs-secondary);
    --bs-btn-hover-border-color: var(--bs-secondary);
    --bs-btn-active-bg: var(--bs-secondary);
}

.btn-outline-success {
    --bs-btn-color: var(--bs-success);
    border: 1px solid var(--bs-success);
    --bs-btn-hover-bg: var(--bs-success);
    --bs-btn-hover-border-color: var(--bs-success);
    --bs-btn-active-bg: var(--bs-success);
}

.btn-outline-warning {
    --bs-btn-color: var(--bs-warning);
    border: 1px solid var(--bs-warning);
    --bs-btn-hover-color: var(--bs-white);
    --bs-btn-hover-bg: var(--bs-warning);
    --bs-btn-hover-border-color: var(--bs-warning);
    --bs-btn-active-bg: var(--bs-warning);
}

.btn-outline-danger {
    --bs-btn-color: var(--bs-danger);
    border: 1px solid var(--bs-danger);
    --bs-btn-hover-bg: var(--bs-danger);
}

.btn-outline-dark {
    --bs-btn-color: var(--bs-dark);
    border: 1px solid var(--bs-dark);
    --bs-btn-hover-bg: var(--bs-dark);
}
.btn-outline-info {
    --bs-btn-color: var(--bs-dark);
    border: 1px solid var(--bs-info);
    --bs-btn-hover-bg: var(--bs-dark);
}


/* ==========================================================================
   4. BOTTONI SFUMATI (Modern Soft Buttons)
   ========================================================================== */
.btn-soft-primary {
    --bs-btn-color: var(--bs-primary);
    background-color: rgba(var(--bs-primary-rgb), 0.08);
    border: 1px solid transparent;
}

    .btn-soft-primary:hover, .btn-soft-primary:active {
        background-color: rgba(var(--bs-primary-rgb), 0.18);
        color: var(--bs-primary);
    }

.btn-soft-secondary {
    --bs-btn-color: var(--bs-secondary);
    background-color: rgba(var(--bs-secondary-rgb), 0.08);
    border: 1px solid transparent;
}

    .btn-soft-secondary:hover, .btn-soft-secondary:active {
        background-color: rgba(var(--bs-secondary-rgb), 0.18);
        color: var(--bs-secondary);
    }

.btn-soft-success {
    --bs-btn-color: var(--bs-success);
    background-color: rgba(var(--bs-success-rgb), 0.08);
    border: 1px solid transparent;
}

    .btn-soft-success:hover {
        background-color: rgba(var(--bs-success-rgb), 0.18);
        color: var(--bs-success);
    }

.btn-soft-warning {
    --bs-btn-color: var(--bs-warning);
    background-color: rgba(var(--bs-warning-rgb), 0.08);
    border: 1px solid transparent;
}

    .btn-soft-warning:hover {
        background-color: rgba(var(--bs-warning-rgb), 0.18);
        color: var(--bs-warning);
    }

.btn-soft-dark {
    --bs-btn-color: var(--bs-dark);
    background-color: rgba(var(--bs-dark-rgb), 0.08);
    border: 1px solid transparent;
}

    .btn-soft-dark:hover {
        background-color: rgba(var(--bs-dark-rgb), 0.15);
        color: var(--bs-dark);
    }