/* ==========================================================================
   FREESPACE - DEFINITIVE CSS (PALETTE NAVY & AZZURRO)
   Versione: 1.6 - FIX BORDINO AZZURRO E COERENZA LINK/OBBLIGATORI
   ========================================================================== */

:root {
    --fs-navy: #001F3F;         /* Navy Profondo (Sfondi Header/Bottoni) */
    --fs-azzurro: #A0C4FF;      /* Azzurro Pastello (Sfondo Sito e Bordini) */
    --fs-perla: #EAE0D5;        /* Bianco Perla (Card e Elementi contrasto) */
    --white: #ffffff;
    --black: #000000;           /* Nero puro per icone e testi card */
    --fs-grigio-met: #D1D1D1;   /* Grigio metallico per Hover */

    --cassiopeia-color-primary: var(--fs-navy);
    --cassiopeia-color-hover: var(--fs-grigio-met);
    --cassiopeia-color-link: var(--fs-navy);
    --body-bg: var(--fs-azzurro);
}

body.site {
    font-family: "Roboto", sans-serif;
    font-weight: 500 !important;
    background-color: var(--fs-azzurro) !important;
    color: var(--fs-navy) !important;
    overflow-x: hidden;
}

/* 1. HEADER E NAVBAR (Fix Bordino Azzurro) */
header.header, .container-header, .navbar {
    background-color: var(--fs-navy) !important;
    background-image: none !important;
    border-bottom: 2px solid var(--fs-azzurro) !important; /* Bordino Azzurro richiesto */
}

/* 2. MENU DI NAVIGAZIONE */
.navbar-nav .nav-link, .navbar-brand, .nav-item a {
    color: var(--fs-perla) !important;
    font-weight: 700 !important;
    text-transform: uppercase;
}

/* 3. CARDS, MODULI E LINK (Coerenza con Escape Lab) */
.card, .module {
    background-color: var(--fs-perla) !important;
    border: 2px solid var(--fs-navy) !important;
    border-radius: 0px !important;
    color: var(--black) !important;
}

.card-header, .card-body {
    background-color: var(--fs-perla) !important;
    border: 1px solid var(--fs-navy) !important;
}

/* Fix Link e Campi Obbligatori (Privacy, Required, etc.) */
.card a, .module a, a.required, .required, .required label {
    color: var(--fs-navy) !important;
    font-weight: 700 !important;
    text-decoration: underline;
}

.card a:hover, a.required:hover {
    color: var(--black) !important;
    text-decoration: none;
}

/* 4. BOTTONI (Tutti Navy) */
.card .btn, .card button, .module .btn, .btn-primary {
    background-color: var(--fs-navy) !important;
    color: var(--fs-perla) !important;
    border: 1px solid var(--fs-navy) !important;
    border-radius: 0px !important;
    font-weight: 700 !important;
}

/* 5. ICONE (Nero Puro) */
[class^="icon-"], .icon-user, .icon-lock, .icon-eye, #icon-passkey path {
    color: var(--black) !important;
    fill: var(--black) !important;
}

/* 6. JOOMLA ALERTS (Invertiti per visibilità) */
joomla-alert, .alert-warning, .alert-message {
    background-color: var(--fs-navy) !important;
    color: var(--fs-perla) !important;
    border: 2px solid var(--fs-azzurro) !important;
    border-radius: 0 !important;
}

joomla-alert .alert-heading {
    color: var(--fs-azzurro) !important;
    font-weight: 900 !important;
}

/* 7. LOGICAL-ARTS CAPTCHA (Stile Navy) */
#captcha-box.captcha-box {
    background-color: var(--fs-perla);
    border: 2px solid var(--fs-navy);
    padding: 10px;
    margin: 15px 0;
}

.captcha-hdr {
    color: var(--fs-navy);
    font-weight: 800;
    border-bottom: 1px solid var(--fs-navy);
}

.captcha-txt-input {
    background-color: var(--white) !important;
    border: 1px solid var(--fs-navy) !important;
    color: var(--black) !important;
}

/* 8. PAGINAZIONE */
.pagination .page-link {
    background-color: var(--fs-perla) !important;
    border-color: var(--fs-navy) !important;
    color: var(--fs-navy) !important;
}

.pagination .page-item.active .page-link {
    background-color: var(--fs-navy) !important;
    border-color: var(--fs-navy) !important;
    color: var(--fs-perla) !important;
}

/* 9. FOOTER */
footer, .footer {
    background-color: var(--fs-navy) !important;
    border-top: 2px solid var(--fs-azzurro) !important;
    color: var(--fs-perla) !important;
}