/* «Proponi una convenzione»: mappa, sedi e anteprime del modulo (il resto della grafica è in ffui.css, come /associati).
   I colori seguono il rosso del sito (prima erano il blu e il verde del template Joomla). */
.asso-proposta .section-title {
    font-size: 1.05rem; font-weight: 700;
    border-left: 4px solid #c8102e; padding-left: .65rem;
    margin: 1.6rem 0 .9rem;
}
.asso-proposta .required-mark { color: #dc3545; }

/* Mappa */
#asso-map {
    height: 320px;
    border-radius: 16px;
    border: 1px solid #ececec;
    background: #faf6f6;
}
#asso-map-fallback {
    display: none;
    height: 80px;
    background: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 10px;
    align-items: center;
    justify-content: center;
    color: #6c757d;
    font-size: .85rem;
    text-align: center;
    padding: 1rem;
}
/* segnaposti sulla mappa: arancio = trovato, verde = sede aggiunta */
.asso-pin { width: 20px; height: 20px; border-radius: 50%; border: 3px solid #fff; box-shadow: 0 2px 6px rgba(0,0,0,.35); }
.asso-pin-trovato { background: #f39c12; }
.asso-pin-sede { width: 18px; height: 18px; background: #2ecc71; }

/* Lista sedi */
#asso-sedi-list { list-style: none; padding: 0; margin-top: .75rem; }
#asso-sedi-list .sede-item {
    background: #faf6f6;
    border: 1px solid #ececec;
    border-radius: 14px;
    padding: .75rem 1rem;
    margin-bottom: .6rem;
}
#asso-sedi-list .sede-header {
    display: flex; align-items: center; gap: .5rem;
    margin-bottom: .6rem;
}
#asso-sedi-list .sede-num {
    width: 24px; height: 24px; border-radius: 50%;
    background: #c8102e; color: #fff; font-weight: 700;
    font-size: .72rem; display: flex; align-items: center;
    justify-content: center; flex-shrink: 0;
}
#asso-sedi-list .sede-addr {
    flex: 1; font-size: .88rem; font-weight: 600; color: #333;
}
#asso-sedi-list .sede-rm {
    background: none; border: 1px solid #dc3545; border-radius: 4px;
    cursor: pointer; color: #dc3545; font-size: .85rem; line-height: 1;
    padding: .15rem .45rem; flex-shrink: 0;
}
#asso-sedi-list .sede-rm:hover { background: #dc3545; color: #fff; }
#asso-sedi-list .sede-contacts label {
    font-size: .78rem; color: #666; font-weight: 600; margin-bottom: .15rem;
}

/* Stato geocoding e altri risultati della ricerca */
#asso-geo-status { font-size: .8rem; min-height: 1.4em; }
.geo-ok   { color: #198754; }
.geo-err  { color: #dc3545; }
.geo-wait { color: #6c757d; }
#asso-geo-risultati button {
    background: none; border: 0; padding: .1rem 0; color: #c8102e; text-align: left; font-size: .8rem;
}
#asso-geo-risultati button:hover { text-decoration: underline; }

/* Anteprime (logo e screenshot) */
#asso-img-preview-src { max-height: 140px; border-radius: 8px; border: 1px solid #dee2e6; object-fit: cover; }
#prop-screenshot-img { max-width: 100%; max-height: 250px; border: 1px solid #dee2e6; border-radius: 8px; }

/* Card successo */
.asso-success-card {
    text-align: center; padding: 3rem 2rem;
    border: 2px dashed #198754; border-radius: 16px;
}
.asso-success-card .asso-check-icon {
    font-size: 3.5rem; color: #198754; display: block; margin-bottom: 1rem;
}

/* box «solo online» e pulsanti generati dallo script, nello stile del sito */
.ffu-proposta .prop-box { background: #faf6f6; border-radius: 16px; padding: 16px; }
.ffu-proposta .btn-outline-primary { border-color: #c8102e; color: #c8102e; border-radius: 0 12px 12px 0; font-weight: 700; display: inline-flex; align-items: center; gap: 6px; }
.ffu-proposta .btn-outline-primary:hover, .ffu-proposta .btn-outline-primary:focus { background: #c8102e; border-color: #c8102e; color: #fff; }
.ffu-proposta .btn-outline-primary svg { width: 16px; height: 16px; }
.ffu-proposta .input-group .form-control { border-top-right-radius: 0; border-bottom-right-radius: 0; }
.ffu-proposta #asso-add-sede { background: #c8102e; border-color: #c8102e; border-radius: 999px; font-weight: 700; padding: 7px 16px; }
.ffu-proposta #asso-add-sede:disabled { background: #e2dcdc; border-color: #e2dcdc; color: #6b6b6b; }
.ffu-proposta .progress-bar { background-color: #c8102e; }
.ffu-proposta .is-invalid { border-color: #dc3545 !important; }
