/* ==========================================================================
   Recesso online della vetrina (G1-6b, art. 54-bis) — coerente con public.css (Liquid Glass)
   - barra «Recedere dal contratto qui» in testata (sempre visibile, anche a negozio chiuso)
   - pagine del recesso (modulo, riepilogo, ricevuta)
   ========================================================================== */

/* --- Barra in testata ---------------------------------------------------- */
.rb-recesso-barra {
    display: flex;
    justify-content: flex-end;
    padding: 0 1.5rem;
    background: rgba(var(--color-primario-rgb, 26, 26, 46), 0.06);
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.rb-recesso-barra__link {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 0 4px;
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--ec-color-primary, #1a1a2e);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.rb-recesso-barra__link:hover,
.rb-recesso-barra__link:focus-visible {
    color: var(--ec-color-accent, #c9a96e);
}

.rb-recesso-barra__link:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 2px;
}

@media (max-width: 600px) {
    .rb-recesso-barra {
        justify-content: center;
        padding: 0 1rem;
    }
}

/* --- Pagine del recesso -------------------------------------------------- */
/* La pagina legale (`.ec-page__legal p`) colora e spaziatura tutti i paragrafi con specificita' 0-1-1: qui si usa
   `.rb-recesso p.classe` (0-2-1) cosi' passo, aiuto ed errore mantengono il proprio aspetto. */
.rb-recesso p.rb-recesso__passo {
    margin: 0 0 1rem;
    font-size: 0.8rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--ec-color-accent, #c9a96e);
}

.rb-recesso__form {
    margin: 1.5rem 0;
}

.rb-recesso p.rb-recesso__aiuto {
    margin: 0;
    font-size: 0.85rem;
    line-height: 1.5;
    color: var(--ec-color-text-light, #5f6368);
}

.rb-recesso p.rb-recesso__errore {
    margin: 0.35rem 0 0;
    font-size: 0.9rem;
    font-weight: 600;
    line-height: 1.4;
    color: #b3261e;
}

.rb-recesso [aria-invalid="true"] {
    border-color: #b3261e;
}

.rb-recesso__testo {
    margin: 1rem 0 1.25rem;
    padding: 1rem 1.25rem;
    line-height: 1.7;
    overflow-wrap: anywhere;
    background: rgba(255, 255, 255, 0.6);
    border-left: 4px solid var(--ec-color-accent, #c9a96e);
    border-radius: 0 12px 12px 0;
}

.rb-recesso__azioni {
    margin: 0 0 0.75rem;
}

.rb-recesso__bottone {
    display: inline-block;
    min-height: 44px;
    text-decoration: none;
    text-align: center;
}

.rb-recesso a.rb-recesso__bottone {
    color: var(--ec-color-white, #fff);
}

.rb-recesso__bottone[disabled] {
    opacity: 0.6;
    cursor: wait;
}

.rb-recesso__secondario {
    appearance: none;
    -webkit-appearance: none;
    min-height: 44px;
    padding: 0.5rem 1rem;
    font: inherit;
    font-size: 0.9rem;
    color: var(--ec-color-primary, #1a1a2e);
    text-decoration: underline;
    background: none;
    border: 0;
    cursor: pointer;
}

/* Campo trappola per i programmi automatici: fuori dallo schermo, non display:none (alcuni lo riconoscono) */
.rb-recesso__trappola {
    position: absolute;
    left: -10000px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

/* Pagine di testo (termini, spedizioni): modulo tipo di recesso */
.rb-modulo-tipo {
    margin: 1rem 0 1.25rem;
    padding: 1rem 1.25rem;
    border: 1px dashed rgba(0, 0, 0, 0.25);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.5);
}

.rb-modulo-tipo p {
    margin-bottom: 0.4rem;
}

@media (max-width: 479px) {
    .rb-recesso__bottone {
        width: 100%;
    }
}
