/* SN GROUP — DEMANDE SUR LA FICHE D'UN BIEN (envoi 18, David 16.10.2026 ; includes/demande-bien.php).
   GLASSMORPHISM (règle permanente de David, 16.10.2026 08:01) : verre fumé dépoli, flou de la page derrière, bord fin clair,
   ombre douce ; teinte et accent = couleurs de l'agence (--sn-db-teinte, --sn-db-accent, réglables dans le panel).
   Repli sans flou (@supports) : verre OPAQUE, même teinte, même lisibilité. Même design sur ordinateur et sur téléphone (§5.27) :
   seule la largeur change. Boutons sur une ligne, ≥ 14 px, ≥ 44 px (§5.26). */
.sn-db{--sn-db-teinte:#19130B;--sn-db-accent:#C4A87C;--sn-db-texte:#F5F0E8;--sn-db-doux:rgba(245,240,232,.88);
  width:min(640px,calc(100vw - 24px));max-height:calc(100dvh - 24px);margin:auto;padding:0;border:0;background:transparent;color:var(--sn-db-texte);overflow:visible}
.sn-db::backdrop{background:rgba(10,8,5,.42);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.sn-db-in{position:relative;max-height:calc(100dvh - 24px);overflow:auto;overscroll-behavior:contain;padding:26px 26px 22px;border-radius:22px;box-sizing:border-box;
  background:linear-gradient(155deg,color-mix(in srgb,var(--sn-db-teinte) 92%,transparent),color-mix(in srgb,var(--sn-db-teinte) 84%,transparent));
  -webkit-backdrop-filter:blur(22px) saturate(140%);backdrop-filter:blur(22px) saturate(140%);
  border:1px solid rgba(255,255,255,.22);box-shadow:0 24px 70px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.18)}
/* Repli : pas de flou (ou pas de color-mix) → verre opaque de la même teinte */
@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.sn-db-in{background:var(--sn-db-teinte)}.sn-db::backdrop{background:rgba(10,8,5,.7)}}
@supports not (background:color-mix(in srgb,red 50%,transparent)){.sn-db-in{background:rgba(25,19,11,.9)}}
.sn-db[open]{animation:sn-db-ouvrir .22s ease-out}
@keyframes sn-db-ouvrir{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.sn-db[open]{animation:none}}
.sn-db-fermer{position:absolute;top:12px;right:12px;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;
  border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.08);color:var(--sn-db-texte);font-size:24px;line-height:1;cursor:pointer}
.sn-db-fermer:hover,.sn-db-fermer:focus-visible{background:rgba(255,255,255,.18);outline:2px solid var(--sn-db-accent);outline-offset:2px}
/* Le bien (non modifiable) */
.sn-db-bien{display:flex;gap:14px;align-items:center;margin:0 52px 18px 0;padding:12px;border-radius:14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16)}
.sn-db-photo{width:96px;height:72px;object-fit:cover;border-radius:10px;flex:0 0 auto}
.sn-db-bien-texte{min-width:0}
.sn-db-bien-texte p{margin:0}
.sn-db-ref{font-family:var(--font-heading);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--sn-db-accent)}
.sn-db-titre{font-family:var(--font-heading);font-size:18px;line-height:1.3;color:var(--sn-db-texte);margin-top:2px!important}
.sn-db-prix{font-size:15px;color:var(--sn-db-doux);margin-top:4px!important}
/* Onglets : visite | question */
.sn-db-onglets{display:flex;gap:6px;padding:4px;margin:0 0 16px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16)}
.sn-db-onglet{flex:1 1 0;min-height:44px;padding:0 12px;border:0;border-radius:999px;background:transparent;color:var(--sn-db-doux);font:inherit;font-size:14px;font-weight:600;white-space:nowrap;cursor:pointer}
.sn-db-onglet[aria-selected="true"]{background:var(--sn-db-accent);color:#19130B}
.sn-db-onglet:focus-visible{outline:2px solid var(--sn-db-texte);outline-offset:2px}
/* Formulaire sur verre */
.sn-db-form{display:flex;flex-direction:column;gap:14px}
.sn-db [data-sn-db-seul][hidden]{display:none!important}
.sn-db-texte{margin:0;font-size:15px;line-height:1.55;color:var(--sn-db-doux)}
.sn-db .sn2-champ label,.sn-db legend{color:var(--sn-db-texte);font-family:var(--font-heading);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.sn-db .sn2-champ input,.sn-db .sn2-champ textarea,.sn-db-creneau input,.sn-db-creneau select{background:rgba(255,255,255,.94);color:#2A2A2A;border:1px solid rgba(255,255,255,.5);border-radius:10px;min-height:48px;font-size:16px}
.sn-db .sn2-champ input:focus,.sn-db .sn2-champ textarea:focus,.sn-db-creneau input:focus,.sn-db-creneau select:focus{outline:2px solid var(--sn-db-accent);outline-offset:1px}
.sn-db .sn2-form-ligne{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:560px){.sn-db .sn2-form-ligne{grid-template-columns:1fr}}
.sn-db-facultatif{text-transform:none;letter-spacing:0;font-weight:400;color:var(--sn-db-doux)}
.sn-db-creneaux{margin:0;padding:0;border:0;display:flex;flex-direction:column;gap:8px}
.sn-db-creneaux legend{margin-bottom:8px}
.sn-db-creneau{display:grid;grid-template-columns:28px minmax(0,1.3fr) minmax(0,1fr);gap:8px;align-items:center}
.sn-db-creneau .sn-db-facultatif{grid-column:2/-1;font-size:13px;margin-top:-4px}
.sn-db-creneau input,.sn-db-creneau select{width:100%;padding:.6rem .7rem;box-sizing:border-box;font:inherit;font-size:16px}
.sn-db-creneau-n{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgba(255,255,255,.3);font-size:13px;color:var(--sn-db-texte)}
.sn-db .sn2-concerne{margin:0;padding:0;border:0}
.sn-db .sn2-pastille span{color:var(--sn-db-texte);background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.35)}
.sn-db .sn2-pastille input:checked+span{background:var(--sn-db-accent);color:#19130B;border-color:var(--sn-db-accent)}
.sn-db .sn2-accord,.sn-db .sn2-accord a{color:var(--sn-db-texte)}
.sn-db .sn2-erreur{border-radius:10px}
.sn-db-envoyer{min-height:50px;padding:0 22px;border:0;border-radius:999px;background:var(--sn-db-accent);color:#19130B;font:inherit;font-size:15px;font-weight:700;white-space:nowrap;cursor:pointer;
  box-shadow:0 8px 24px rgba(0,0,0,.22)}
.sn-db-envoyer:hover{filter:brightness(1.06)}
.sn-db-envoyer:focus-visible{outline:2px solid var(--sn-db-texte);outline-offset:3px}
.sn-db-envoyer[disabled]{opacity:.7;cursor:progress}
.sn-db-note{margin:0;font-size:13px;color:var(--sn-db-doux)}
/* Merci */
.sn-db-merci{padding:8px 0 4px;text-align:center}
.sn-db-merci-titre{margin:0 0 8px;font-family:var(--font-heading);font-size:22px;line-height:1.3;color:var(--sn-db-texte)}
.sn-db-merci p{margin:0 0 18px;color:var(--sn-db-doux)}
.sn-db-merci .sn-db-envoyer{display:inline-flex;align-items:center}
/* Téléphone : même verre, plein écran en largeur, coins conservés */
@media (max-width:560px){.sn-db{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.sn-db-in{padding:20px 16px 18px;border-radius:18px;max-height:calc(100dvh - 16px)}
  .sn-db-photo{width:72px;height:56px}.sn-db-titre{font-size:16px}}
/* Les boutons de la fiche : « Nous contacter » à côté de « Demander une visite » */
.sng-carac .sng-btn{white-space:nowrap}
/* Créneaux : la liste « Moment » a la MÊME hauteur que le jour sur iPhone (WebKit ignore la hauteur d'un <select> natif) */
.sn-db-creneau select{-webkit-appearance:none;appearance:none;min-height:48px;padding-right:2.2rem;
  background:rgba(255,255,255,.94) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%232A2A2A' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right .8rem center}
.sn-db-creneau input[type="date"]{min-height:48px}
