/* ============================================================
   RESET COMPLETO HOUZEZ PER I POPUP
============================================================ */
#hoja-popup *,
#visit-popup * {
    box-sizing: border-box !important;
    max-width: none !important;
}

/* ============================================================
   OVERLAY POPUP — SCROLL ABILITATO
============================================================ */
#hoja-popup,
#visit-popup {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: rgba(0,0,0,0.55) !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
    z-index: 999999 !important;
    backdrop-filter: blur(3px) !important;
    overflow-y: auto !important;
    padding-top: 40px !important;
    padding-bottom: 40px !important;
}

/* ============================================================
   BLOCCA LO SCROLL DELLA PAGINA SOTTO
============================================================ */
body.domus-popup-open {
    overflow: hidden !important;
}

/* ============================================================
   CONTENITORE POPUP — DIMENSIONI REALI
============================================================ */
#hoja-popup > div,
#visit-popup > div {
    background: #fff !important;
    padding: 25px !important;
    width: 420px !important;
    max-width: 420px !important;
    border-radius: 14px !important;
    box-shadow: 0 10px 35px rgba(0,0,0,0.25) !important;
    font-family: 'Inter', sans-serif !important;
    border-top: 6px solid #d4af37 !important;
}

/* ============================================================
   TITOLI
============================================================ */
#hoja-popup h2,
#visit-popup h2 {
    text-align: center !important;
    margin-bottom: 20px !important;
    color: #d4af37 !important;
    font-weight: 700 !important;
    font-size: 22px !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
}

/* ============================================================
   LABEL + INPUT
============================================================ */
#hoja-popup label,
#visit-popup label {
    display: block !important;
    font-weight: 600 !important;
    margin-bottom: 6px !important;
    margin-top: 14px !important;
    color: #333 !important;
}

.hv-input {
    width: 100% !important;
    padding: 12px !important;
    border: 2px solid #e5e5e5 !important;
    border-radius: 8px !important;
    margin-bottom: 14px !important;
    font-size: 15px !important;
    background: #fff !important;
}

/* ============================================================
   SEPARATORE EMAIL
============================================================ */
#hoja-popup hr,
#visit-popup hr {
    border: none !important;
    border-top: 1px solid #e5e5e5 !important;
    margin: 14px 0 !important;
    display: block !important;
    width: 100% !important;
}

/* ============================================================
   SELECT AGENTE PREMIUM
============================================================ */
#hv-agente,
#sv-agente {
    font-weight: bold !important;
    border: 2px solid #d4af37 !important;
    background: #fff !important;
}

/* Oro per Ariosto */
#hv-agente option[value="Ariosto Guacci"],
#sv-agente option[value="Ariosto Guacci"] {
    color: #d4af37 !important;
    font-weight: bold !important;
}

/* Blu per Alejandro */
#hv-agente option[value="Alejandro Dario Tognini"],
#sv-agente option[value="Alejandro Dario Tognini"] {
    color: #007bff !important;
    font-weight: bold !important;
}

/* ============================================================
   CANVAS FIRMA — FIX ALTEZZA
============================================================ */
#hv-firma {
    width: 100% !important;
    height: 140px !important;
    border: 2px solid #d4af37 !important;
    background: #fafafa !important;
    border-radius: 10px !important;
    margin-top: 10px !important;
    margin-bottom: 18px !important;
    display: block !important;
}

/* ============================================================
   BOTTONI PREMIUM
============================================================ */
#hv-clear,
#hv-digital,
#hv-send-otp,
#hv-confirm,
#sv-confirm {
    width: 100% !important;
    padding: 14px !important;
    border: none !important;
    border-radius: 10px !important;
    cursor: pointer !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    margin-top: 10px !important;
    margin-bottom: 14px !important;
}

/* Blu */
#hv-digital,
#sv-confirm {
    background: #007bff !important;
    color: #fff !important;
}

/* Verde */
#hv-send-otp {
    background: #28a745 !important;
    color: #fff !important;
}

/* Oro */
#hv-confirm {
    background: #d4af37 !important;
    color: #000 !important;
}

/* Grigio */
#hv-clear {
    background: #ccc !important;
    color: #000 !important;
}

/* ============================================================
   SEZIONI (OTP, Firma, ecc.)
============================================================ */
#hoja-popup h3 {
    margin-top: 24px !important;
    margin-bottom: 12px !important;
    color: #d4af37 !important;
    font-size: 18px !important;
    font-weight: 700 !important;
}

/* ============================================================
   FIX DIMENSIONE CAMPO OTP
============================================================ */
#hv-otp {
    flex: 2 !important;              /* più spazio al campo */
    min-width: 150px !important;     /* evita schiacciamento */
    font-size: 16px !important;      /* più leggibile */
    height: 48px !important;         /* altezza uniforme */
}

#hv-send-otp {
    flex: 1 !important;              /* pulsante leggermente più stretto */
    white-space: nowrap !important;  /* evita che vada a capo */
    height: 48px !important;         /* stessa altezza del campo OTP */
    font-size: 14px !important;
}
