/* ============================================================
   CDM Login page — Accedi ai servizi
   Stile fedele ai Figma docs/figma/Login*.png
   Caricato DOPO bootstrap-italia.min.css + bootstrap-italia-cdm.css
   Consuma solo token --cdm-* definiti in bootstrap-italia-cdm.css
   ============================================================ */

/* ── Hero / titolo pagina ──────────────────────────────────── */
.cdm-login-main {
    background-color: var(--cdm-bg-white);
}

.cdm-login-hero {
    margin-bottom: 2.5rem;
}

.cdm-login-main-row {
    border-top: 1px solid var(--cdm-grey-slate-200);
}

/* ── Sidebar filtri ─────────────────────────────────────────── */
.cdm-filters-sidebar {
    border-right: 1px solid var(--cdm-border-separator-medium);
    padding: var(--cdm-spacing-s);
}

.cdm-filters-accordion .accordion-button .icon {
    fill: var(--cdm-text-title);
}

.cdm-filters-accordion .accordion-header .accordion-button,
.accordion-header .accordion-button:after {
    color: var(--cdm-text-title);
}

.cdm-filters-accordion .accordion-header .accordion-button:after {
    content: var(--cdm-accordion-btn-icon);
}

@media (max-width: 991px) {
    .cdm-filters-sidebar {
        border: 0;
        padding: 0;
        margin-bottom: 1.5rem;
    }

    .cdm-filters-accordion .accordion-header .accordion-button {
        border-top: none;
    }
}

@media (min-width: 991px) {
    .cdm-filters-accordion .accordion-button {
        border: none;
    }
}

.cdm-active-filters {
    font-weight: var(--cdm-font-weight-regular);
    color: var(--cdm-text-paragraph);
    margin-bottom: 0.5rem;
}

.cdm-remove-filters {
    display: inline-block;
    font-size: var(--cdm-font-size-1);
    font-weight: var(--cdm-font-weight-semibold);
    color: var(--cdm-text-title);
    text-decoration: underline;
    margin-bottom: 1rem;
}

.cdm-remove-filters:hover {
    color: var(--cdm-brand-primary-accent);
}

.cdm-filters-title {
    font-weight: var(--cdm-font-weight-bold);
    font-size: var(--cdm-font-size-2);
    color: var(--cdm-brand-primary-accent);
    margin-bottom: 1rem;
    text-transform: uppercase;
}

.cdm-filter-item {
    margin-bottom: 0.75rem;
}

.cdm-filter-item .form-check-input {
    border-color: var(--cdm-border-input);
    border-radius: 4px;
    width: 1.125rem;
    height: 1.125rem;
}

.cdm-filter-item .form-check-input:checked {
    background-color: var(--cdm-brand-primary-accent);
    border-color: var(--cdm-brand-primary-accent);
}

.cdm-filters-sidebar .cdm-filter-item .form-check-label {
    font-weight: var(--cdm-font-weight-regular);
}

/* ── Accordion filtri (mobile) ─ smontato su desktop (≥ 992px) ── */
@media (min-width: 992px) {
    .cdm-filters-accordion,
    .cdm-filters-accordion .accordion-item,
    .cdm-filters-accordion .accordion-body {
        border: 0;
        padding: 0;
        background: transparent;
    }

    .cdm-filters-accordion .accordion-header {
        margin-bottom: 1.25rem;
    }

    .cdm-filters-accordion .accordion-button {
        pointer-events: none;
        background: transparent;
        box-shadow: none;
        padding: 0;
        gap: 0.5rem;
        font-weight: var(--cdm-font-weight-semibold);
        font-size: var(--cdm-font-size-1);
        color: var(--cdm-text-title);
    }

    .cdm-filters-accordion .accordion-button::after {
        display: none;
    }

    .cdm-filters-accordion .accordion-collapse {
        display: block !important;
        height: auto !important;
        visibility: visible !important;
    }
}

.cdm-login-main .card-wrapper.is-hidden {
    display: none;
}

/* ── Card di accesso ───────────────────────────────────────── */

.cdm-cards-row {
    padding: var(--cdm-spacing-m) var(--cdm-spacing-l);
}

.cdm-login-main .card-wrapper form {
    display: flex;
}

.cdm-login-main .card {
    border: 1px solid var(--bs-light);
    box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.15);
    --bs-card-border-radius: 0.25rem;
}

.cdm-login-main .card-body {
    display: flex;
    flex-direction: column;
}

.cdm-card-category {
    align-self: start;
    display: block;
    text-align: left;
    font-weight: var(--cdm-font-weight-semibold);
    font-size: var(--cdm-font-size-1);
    letter-spacing: 0.05em;
    color: var(--cdm-brand-primary-accent);
    text-transform: uppercase;
    margin-bottom: var(--cdm-spacing-s);
}

.cdm-card-title {
    font-weight: var(--cdm-font-weight-semibold);
    font-size: var(--cdm-font-size-4);
    line-height: 1.5rem;
    color: var(--cdm-text-title);
    margin-bottom: var(--cdm-spacing-s);
}

.cdm-card-text {
    font-weight: var(--cdm-font-weight-regular);
    font-size: var(--cdm-font-size-form);
    line-height: 1.4rem;
    color: var(--cdm-text-paragraph);
    margin-bottom: var(--cdm-spacing-s);
    flex-grow: 1;
}

/* ── Pulsante generico CDM (rosso primary) ─────────────────── */
.cdm-card-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    font-weight: var(--cdm-font-weight-semibold);
    font-size: var(--cdm-font-size-2);
    line-height: 1;
    padding: 0.75rem 1.25rem;
    border-radius: 4px;
    text-decoration: none;
    transition: background-color 0.15s ease, color 0.15s ease;
}

.cdm-card-btn-primary {
    background-color: var(--cdm-button-primary);
    color: var(--cdm-text-inverse);
    border: 1px solid var(--cdm-button-primary);
}

.cdm-card-btn-primary:hover {
    background-color: var(--cdm-button-primary-hover);
    border-color: var(--cdm-button-primary-hover);
    color: var(--cdm-text-inverse);
}

/* ── Pulsante IdP (SPID/CIE/eIDAS) blu ─────────────────────── */
.cdm-card-btn-idp {
    background-color: var(--cdm-idp-blue);
    color: var(--cdm-text-inverse);
    border: 1px solid var(--cdm-idp-blue);
}

.cdm-card-btn-idp:hover {
    background-color: var(--cdm-idp-blue-hover);
    border-color: var(--cdm-idp-blue-hover);
    color: var(--cdm-text-inverse);
}

.cdm-card-btn-idp .cdm-card-btn-icon {
    width: 20px;
    height: 20px;
    fill: var(--cdm-text-inverse);
}

/* ── Link sotto bottone card (es. "Richiedila ad uno dei gestori") ── */
.cdm-card-link {
    display: inline-block;
    margin-top: 0.75rem;
    font-size: var(--cdm-font-size-1);
    font-weight: var(--cdm-font-weight-semibold);
    color: var(--cdm-brand-primary-accent);
    text-decoration: underline;
}

.cdm-card-link:hover {
    color: var(--cdm-brand-primary-hover);
    background: var(--cdm-bg-white);
}

/* Adeguiamo il tasto SPID Azienda prendendo la stessa larghezza del bottone SPID Cittadino */
#spid-idp-azienda-button-medium-get {
    width: 230px;
}

/* I logo degli IdP SPID hanno box-sizing content-box per non comprimersi nel layout flex
   del pulsante spid-sp-access-button (terza parte). Non ottenibile tramite classe BI. */
.cdm-spid-idp-logo {
    box-sizing: content-box;
}

