/* 0.6.6 - veste nuova di contatti e cassa. Usa i token di lsi.css (:root e blocco 0.6.0) e va caricato
   dopo lsi.css e, nella cassa, dopo ldd-checkout.css. Ogni regola sta sotto body.lsi-pag-contatti o
   body.lsi-pag-cassa: nessun effetto sulle altre pagine. Il markup e il JS di ldd-guesty-sync non cambiano. */

/* ==================================================================================================
   0.6.6 - CONTATTI: modulo [ldd_form type="general"] (ldd-forms.css qui non si carica)
   ================================================================================================== */

/* 0.6.6 - colonna di sinistra: le altre vie (preventivo, Il mio soggiorno) */
body.lsi-pag-contatti .lsi-ct-vie{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;max-width:460px}
body.lsi-pag-contatti .lsi-ct-vie li{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border:1px solid var(--riga);border-radius:var(--r-l);background:var(--superficie)}
body.lsi-pag-contatti .lsi-ct-vie b{font-size:14px;font-weight:600;color:var(--scuro)}
body.lsi-pag-contatti .lsi-ct-vie a{display:inline-flex;align-items:center;min-height:32px;font-size:14px;font-weight:600;color:var(--sabbia-t);text-underline-offset:3px}

/* 0.6.6 - il riquadro del modulo */
body.lsi-pag-contatti .ldd-form-wrap{background:var(--superficie);border:1px solid var(--riga);border-radius:var(--r-xl);padding:28px;box-shadow:var(--ombra-bassa)}
body.lsi-pag-contatti .ldd-form{display:flex;flex-direction:column;gap:16px;margin:0}
body.lsi-pag-contatti .ldd-form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
body.lsi-pag-contatti .ldd-form-field{display:flex;flex-direction:column;gap:6px;min-width:0}
body.lsi-pag-contatti .ldd-form-field-full{grid-column:1/-1}
body.lsi-pag-contatti .ldd-form-field label{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--grigio2)}

/* 0.6.6 - campi: 48 px, bordo caldo, fuoco sabbia scuro (contrasto del bordo 3:1 sul bianco) */
body.lsi-pag-contatti .ldd-form-field input,
body.lsi-pag-contatti .ldd-form-field select,
body.lsi-pag-contatti .ldd-form-field textarea{width:100%;min-height:48px;margin:0;padding:12px 14px;border:1px solid var(--bordo);border-radius:var(--r-m);background:var(--superficie);font:500 15px/1.4 var(--sans);color:var(--scuro);-webkit-appearance:none;appearance:none;transition:border-color .15s,box-shadow .15s}
body.lsi-pag-contatti .ldd-form-field select{padding-right:40px;background:var(--superficie) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%234F4740' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 14px center}
body.lsi-pag-contatti .ldd-form-field textarea{min-height:140px;resize:vertical;line-height:1.6}
body.lsi-pag-contatti .ldd-form-field input::placeholder,
body.lsi-pag-contatti .ldd-form-field textarea::placeholder{color:var(--grigio);opacity:1;font-weight:400}
body.lsi-pag-contatti .ldd-form-field input:hover,
body.lsi-pag-contatti .ldd-form-field select:hover,
body.lsi-pag-contatti .ldd-form-field textarea:hover{border-color:var(--grigio)}
body.lsi-pag-contatti .ldd-form-field input:focus,
body.lsi-pag-contatti .ldd-form-field select:focus,
body.lsi-pag-contatti .ldd-form-field textarea:focus{outline:none;border-color:var(--sabbia-t);box-shadow:0 0 0 3px rgba(203,156,115,.25)}
body.lsi-pag-contatti .ldd-form-field input[readonly]{background:var(--crema);color:var(--grigio2);border-style:dashed}

/* 0.6.6 - privacy: casella grande, testo leggibile */
body.lsi-pag-contatti .ldd-form-privacy{padding:14px 16px;border-radius:var(--r-m);background:var(--crema);border:1px solid var(--riga)}
body.lsi-pag-contatti .ldd-form-privacy label{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;line-height:1.5;color:var(--grigio2);cursor:pointer}
body.lsi-pag-contatti .ldd-form-privacy input[type="checkbox"]{flex:none;width:20px;height:20px;margin:0;accent-color:var(--scuro);cursor:pointer}
body.lsi-pag-contatti .ldd-form-privacy a{color:var(--sabbia-t);font-weight:600;text-underline-offset:3px}

/* 0.6.6 - messaggi: vuoto non occupa spazio; errore e conferma con colori AA */
body.lsi-pag-contatti .ldd-form-msg:empty{display:none}
body.lsi-pag-contatti .ldd-form-msg{padding:12px 14px;border-radius:var(--r-m);font-size:14px;line-height:1.5}
body.lsi-pag-contatti .ldd-form-msg-error{background:#FBEDEA;color:#8E1616;border:1px solid #F0C9C2}
body.lsi-pag-contatti .ldd-form-msg-success{background:#E6EFE7;color:#2F5A36;border:1px solid #C9DCCB}

/* 0.6.6 - invio: come .lsi-btn.sabbia; la rotella (mostrata dal JS con display inline-block) sta al centro */
body.lsi-pag-contatti .ldd-form-actions{display:flex;margin:0}
body.lsi-pag-contatti .ldd-form-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 28px;border:0;border-radius:var(--r-m);background:var(--sabbia);color:var(--scuro);font:600 15px var(--sans);letter-spacing:.01em;cursor:pointer;transition:background-color .15s}
body.lsi-pag-contatti .ldd-form-btn:hover{background:#BF8C61}
body.lsi-pag-contatti .ldd-form-btn:focus-visible{outline:2px solid var(--sabbia-t);outline-offset:2px}
body.lsi-pag-contatti .ldd-form-btn:disabled{cursor:progress;background:#E3D2C1}
body.lsi-pag-contatti .ldd-form-btn-text{transition:opacity .15s}
body.lsi-pag-contatti .ldd-form-spinner{display:none;position:absolute;left:50%;top:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid rgba(26,24,23,.2);border-top-color:var(--scuro);border-radius:50%;animation:lsiModGira .7s linear infinite}
@keyframes lsiModGira{to{transform:rotate(360deg)}}

/* 0.6.6 - conferma dopo l'invio (creata dal JS al posto del modulo) */
body.lsi-pag-contatti .ldd-form-success{text-align:center;padding:24px 8px}
body.lsi-pag-contatti .ldd-form-success-icon{width:56px;height:56px;margin:0 auto 16px;border-radius:50%;background:var(--salvia-t);color:#FFF;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:600}
body.lsi-pag-contatti .ldd-form-success-title{font-family:var(--serif);font-size:30px;font-weight:500;line-height:1.15;color:var(--scuro);margin:0 0 8px}
body.lsi-pag-contatti .ldd-form-success-text{font-size:15px;line-height:1.6;color:var(--grigio2)}
body.lsi-pag-contatti .ldd-form-success-text strong{color:var(--scuro);font-weight:600;word-break:break-all}

@media (max-width:860px){
  body.lsi-pag-contatti .ldd-form-wrap{padding:20px;border-radius:var(--r-l);box-shadow:none}
  body.lsi-pag-contatti .ldd-form-btn{width:100%}
}

/* ==================================================================================================
   0.6.6 - CASSA: [ldd_checkout] sopra ldd-checkout.css (che resta padrone di stati e passi)
   ================================================================================================== */

/* 0.6.6 - variabili della cassa riportate sui token del sito: tutto cio' che le usa si allinea */
body.lsi-pag-cassa #ldd-checkout-wrap{--sand:var(--sabbia);--sand-d:#BF8C61;--sand-l:#F3EDE5;--sage:var(--salvia-t);--dark:var(--scuro);--mid:var(--grigio2);--light:var(--grigio);--line:var(--riga);--cream:var(--crema);--white:#FFF;--red:#A8382B;
  max-width:none;margin:0;padding:0 0 88px;font-family:var(--sans);color:var(--scuro)}
body.lsi-pag-cassa .lsi-cassa-pag{padding-top:16px}

/* 0.6.6 - testata della cassa: resta (Indietro torna ai risultati con le date; "Vedi dettagli" apre la scheda)
   ma come briciole sottili, senza doppione dell'intestazione del sito */
body.lsi-pag-cassa .ldd-co-topbar{display:flex;flex-wrap:wrap;align-items:center;gap:2px 10px;margin:0 0 8px;padding:0;font:500 13px var(--sans)}
body.lsi-pag-cassa .ldd-co-topbar-back,
body.lsi-pag-cassa .ldd-co-topbar-detail{display:inline-flex;align-items:center;gap:6px;min-height:40px;font-weight:600;letter-spacing:0;text-decoration:none}
body.lsi-pag-cassa .ldd-co-topbar-back{color:var(--grigio2)}
body.lsi-pag-cassa .ldd-co-topbar-detail{color:var(--sabbia-t)}
body.lsi-pag-cassa .ldd-co-topbar-back:hover,
body.lsi-pag-cassa .ldd-co-topbar-detail:hover{color:var(--scuro);text-decoration:underline;text-underline-offset:3px}
body.lsi-pag-cassa .ldd-co-topbar-sep{color:var(--bordo)}

/* 0.6.6 - titolo e passi */
body.lsi-pag-cassa .ldd-co-header{margin:0 0 20px}
body.lsi-pag-cassa .ldd-co-header h1{font-family:var(--serif);font-size:var(--f-h1);font-weight:500;line-height:1.05;letter-spacing:-.005em;margin:0}
body.lsi-pag-cassa .ldd-co-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 28px;border:0;counter-reset:none}
body.lsi-pag-cassa .ldd-co-step{padding:10px 0 0;margin:0;border:0;border-top:3px solid var(--riga);text-align:left;font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--grigio)}
body.lsi-pag-cassa .ldd-co-step.active{color:var(--scuro);border-top-color:var(--sabbia)}
body.lsi-pag-cassa .ldd-co-step.done{color:var(--salvia-t);border-top-color:var(--salvia-t)}

/* 0.6.6 - due colonne: modulo e riepilogo */
body.lsi-pag-cassa .ldd-co-grid{grid-template-columns:minmax(0,1fr) 380px;gap:40px}

/* 0.6.6 - riquadri */
body.lsi-pag-cassa .ldd-co-card{background:var(--superficie);border:1px solid var(--riga);border-radius:var(--r-l);padding:24px;margin:0 0 16px}
body.lsi-pag-cassa .ldd-co-card h2{font-family:var(--serif);font-size:26px;font-weight:500;line-height:1.15;color:var(--scuro);margin:0 0 16px;padding:0;border:0}
body.lsi-pag-cassa .ldd-co-card>p{color:var(--grigio2)!important}

/* 0.6.6 - campi (stessa veste dei contatti) */
body.lsi-pag-cassa .ldd-co-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}
body.lsi-pag-cassa .ldd-co-row.full{grid-template-columns:minmax(0,1fr)}
body.lsi-pag-cassa .ldd-co-field{gap:6px;min-width:0}
body.lsi-pag-cassa .ldd-co-field label{margin:0;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--grigio2)}
body.lsi-pag-cassa .ldd-opt{font-size:11px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--grigio)}
body.lsi-pag-cassa .ldd-co-field input,
body.lsi-pag-cassa .ldd-co-field select,
body.lsi-pag-cassa .ldd-co-field textarea{width:100%;min-height:48px;padding:12px 14px;border:1px solid var(--bordo);border-radius:var(--r-m);background:var(--superficie);font:500 15px/1.4 var(--sans);color:var(--scuro);transition:border-color .15s,box-shadow .15s}
body.lsi-pag-cassa .ldd-co-field textarea{min-height:96px;line-height:1.6}
body.lsi-pag-cassa .ldd-co-field input::placeholder,
body.lsi-pag-cassa .ldd-co-field textarea::placeholder{color:var(--grigio);opacity:1;font-weight:400}
body.lsi-pag-cassa .ldd-co-field input:focus,
body.lsi-pag-cassa .ldd-co-field select:focus,
body.lsi-pag-cassa .ldd-co-field textarea:focus{outline:none;border-color:var(--sabbia-t);box-shadow:0 0 0 3px rgba(203,156,115,.25)}
body.lsi-pag-cassa .ldd-co-field input.error{border-color:#A8382B;box-shadow:0 0 0 3px rgba(168,56,43,.14);background:#FFF8F6}

/* 0.6.6 - motivo del soggiorno: le bolle del sito */
body.lsi-pag-cassa .ldd-chip-row{gap:8px;flex-wrap:wrap;margin:0}
body.lsi-pag-cassa .ldd-chip{min-height:40px;padding:0 18px;border:1px solid var(--bordo);border-radius:var(--r-pill);background:var(--superficie);font:500 13px var(--sans);color:var(--scuro);cursor:pointer}
body.lsi-pag-cassa .ldd-chip:hover{border-color:var(--scuro)}
body.lsi-pag-cassa .ldd-chip.on{background:var(--scuro);border-color:var(--scuro);color:var(--crema);font-weight:600}
body.lsi-pag-cassa .ldd-time-notice{border-radius:var(--r-m);background:#F3E6D8;border:1px solid #E3CDB5;color:var(--scuro);font-size:13px;line-height:1.5}
body.lsi-pag-cassa .ldd-time-notice strong{color:var(--sabbia-scura)}

/* 0.6.6 - termini e privacy: accettati in salvia, non accettati con la scossa (colore AA) */
body.lsi-pag-cassa .ldd-tc-wrap{margin:0 0 16px;padding:14px 16px;border-radius:var(--r-m);border:1px solid var(--riga);background:var(--superficie)}
body.lsi-pag-cassa .ldd-tc-label{font-size:13.5px;line-height:1.5;color:var(--grigio2);gap:10px}
body.lsi-pag-cassa .ldd-tc-label input[type="checkbox"]{width:20px;height:20px;margin:0;accent-color:var(--scuro)}
body.lsi-pag-cassa .ldd-tc-label a{color:var(--sabbia-t);font-weight:600;text-underline-offset:3px}
body.lsi-pag-cassa .ldd-tc-label.accepted{color:var(--salvia-t)}
body.lsi-pag-cassa .ldd-tc-label.shake{color:#A8382B}

/* 0.6.6 - pulsanti: primario come .lsi-btn.sabbia (testo scuro, 7:1), secondario a bordo */
body.lsi-pag-cassa .ldd-co-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
body.lsi-pag-cassa .ldd-co-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 24px;border-radius:var(--r-m);font:600 15px var(--sans);letter-spacing:.01em;text-decoration:none;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}
body.lsi-pag-cassa .ldd-co-btn-primary{background:var(--sabbia);color:var(--scuro);border:0}
body.lsi-pag-cassa .ldd-co-btn-primary:hover{background:#BF8C61}
body.lsi-pag-cassa .ldd-co-btn-ghost{background:transparent;color:var(--scuro);border:1px solid var(--bordo)}
body.lsi-pag-cassa .ldd-co-btn-ghost:hover{border-color:var(--scuro);color:var(--scuro)}
body.lsi-pag-cassa .ldd-co-btn:focus-visible{outline:2px solid var(--sabbia-t);outline-offset:2px}
body.lsi-pag-cassa .ldd-co-btn:disabled{opacity:1;cursor:not-allowed;background:#EFE8DF;color:var(--grigio);border-color:transparent}
body.lsi-pag-cassa .ldd-co-btn-primary .ldd-co-spinner{border-color:rgba(26,24,23,.2);border-top-color:var(--scuro)}
body.lsi-pag-cassa .ldd-co-btn.loading{cursor:progress;background:#E3D2C1;color:var(--scuro)}
body.lsi-pag-cassa .ldd-co-btn.loading .ldd-co-btn-text{opacity:.75}
body.lsi-pag-cassa #ldd-co-btn-to-guest,
body.lsi-pag-cassa #ldd-co-btn-to-payment,
body.lsi-pag-cassa #ldd-co-btn-confirm{flex:1 1 220px}

/* 0.6.6 - tariffe: griglia (pallino, nome, prezzo; condizioni sotto) invece della riga che strabordava a 390 px.
   Il pallino e' il radio vero, quindi la scelta si fa anche da tastiera. */
body.lsi-pag-cassa .ldd-rate-plans{gap:10px;margin:0}
body.lsi-pag-cassa .ldd-rate-plan{display:grid;grid-template-columns:20px minmax(0,1fr) auto;column-gap:12px;row-gap:0;align-items:start;padding:16px;border:1px solid var(--riga);border-radius:var(--r-m);background:var(--superficie);cursor:pointer;transition:border-color .15s,background-color .15s}
body.lsi-pag-cassa .ldd-rate-plan:hover{border-color:var(--grigio)}
body.lsi-pag-cassa .ldd-rate-plan.selected{border-color:var(--scuro);background:#FBF7F2;box-shadow:inset 0 0 0 1px var(--scuro)}
body.lsi-pag-cassa .ldd-rate-plan input[type="radio"]{display:block;-webkit-appearance:none;appearance:none;width:20px;height:20px;margin:1px 0 0;border:1.5px solid var(--bordo);border-radius:50%;background:#FFF;cursor:pointer}
body.lsi-pag-cassa .ldd-rate-plan.selected input[type="radio"]{border-color:var(--scuro);background:var(--scuro);box-shadow:inset 0 0 0 4px #FFF}
body.lsi-pag-cassa .ldd-rate-plan input[type="radio"]:focus-visible{outline:2px solid var(--sabbia-t);outline-offset:2px}
body.lsi-pag-cassa .ldd-rate-plan-info{min-width:0}
body.lsi-pag-cassa .ldd-rate-plan-name{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:0;font-size:15px;font-weight:600;line-height:1.35;color:var(--scuro)}
body.lsi-pag-cassa .ldd-rp-best-badge{margin:0;padding:0 8px;min-height:22px;display:inline-flex;align-items:center;border-radius:var(--r-pill);background:#E4ECE5;color:var(--salvia-t);font-size:10.5px;font-weight:600;letter-spacing:.06em;line-height:1}
body.lsi-pag-cassa .ldd-rate-plan-promo{margin-top:4px;font-size:12.5px;font-weight:600;color:var(--salvia-t)}
body.lsi-pag-cassa .ldd-rate-plan-price{text-align:right;white-space:nowrap}
body.lsi-pag-cassa .ldd-rate-plan-price .price-main{font-size:16px;font-weight:600;color:var(--scuro);font-variant-numeric:tabular-nums}
body.lsi-pag-cassa .ldd-rate-plan-price .price-orig{font-size:12.5px;color:var(--grigio)}
body.lsi-pag-cassa .ldd-rate-plan .ldd-rp-conditions,
body.lsi-pag-cassa .ldd-rp-conditions{grid-column:2/-1;margin-top:12px;padding-top:10px;border-top:1px solid var(--riga);font-family:var(--sans)}
body.lsi-pag-cassa .ldd-rate-plan .ldd-rp-conditions{display:none}
body.lsi-pag-cassa .ldd-rate-plan.selected .ldd-rp-conditions{display:block}

/* 0.6.6 - condizioni di cancellazione: interruttore leggibile (prima 11 px grigio chiaro) */
body.lsi-pag-cassa .ldd-rp-cond-toggle{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0;font:600 13px var(--sans);color:var(--scuro);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
body.lsi-pag-cassa .ldd-rp-cond-toggle:hover{color:var(--sabbia-t)}
body.lsi-pag-cassa .ldd-rp-cond-body{margin-top:6px}
body.lsi-pag-cassa .ldd-rp-cond-title{font-size:13px;font-weight:600;color:var(--scuro);margin-bottom:2px}
body.lsi-pag-cassa .ldd-rp-cond-tiers,
body.lsi-pag-cassa .ldd-rp-cond-desc{font-size:13px;line-height:1.55;color:var(--grigio2)}
body.lsi-pag-cassa .ldd-rp-cond-fee{font-size:13px;font-weight:600;color:#A8382B;margin-top:4px}

/* 0.6.6 - tariffa unica: la scheda informativa del JS ha stili in linea, si sistemano i colori */
body.lsi-pag-cassa #ldd-rate-plans-wrap .ldd-co-card[style]{padding:18px 20px!important}
body.lsi-pag-cassa #ldd-rate-plans-wrap div[style*="#8A8A8A"]{color:var(--grigio)!important}

/* 0.6.6 - codice sconto */
body.lsi-pag-cassa .ldd-coupon-card{padding:16px!important}
body.lsi-pag-cassa .ldd-coupon-row{gap:8px}
body.lsi-pag-cassa .ldd-coupon-row input{min-width:0;height:48px;padding:0 14px;border:1px solid var(--bordo);border-radius:var(--r-m);background:var(--superficie);font:600 14px var(--sans);letter-spacing:.06em;color:var(--scuro)}
body.lsi-pag-cassa .ldd-coupon-row input::placeholder{color:var(--grigio);font-weight:400;letter-spacing:0;text-transform:none}
body.lsi-pag-cassa .ldd-coupon-row input:focus{outline:none;border-color:var(--sabbia-t);box-shadow:0 0 0 3px rgba(203,156,115,.25)}
body.lsi-pag-cassa .ldd-co-btn-ghost-sm{height:48px;padding:0 18px;border:1px solid var(--scuro);border-radius:var(--r-m);background:transparent;color:var(--scuro);font:600 14px var(--sans)}
body.lsi-pag-cassa .ldd-co-btn-ghost-sm:hover{background:var(--scuro);color:var(--crema)}
body.lsi-pag-cassa .ldd-co-btn-ghost-sm:disabled{opacity:1;border-color:var(--bordo);color:var(--grigio);background:transparent}
body.lsi-pag-cassa .ldd-coupon-msg{font-size:13px;margin-top:8px;min-height:0}
body.lsi-pag-cassa .ldd-coupon-msg:empty{display:none}
body.lsi-pag-cassa .ldd-coupon-msg--success{color:var(--salvia-t)}
body.lsi-pag-cassa .ldd-coupon-msg--error{color:#A8382B;font-weight:600}
body.lsi-pag-cassa .ldd-s1-coupon-badge{border-radius:var(--r-m);background:#E6EFE7;border-color:#C9DCCB;color:#2F5A36}

/* 0.6.6 - "Il tuo soggiorno": prezzo e promo (stili in linea del JS: si correggono i grigi sotto AA) */
body.lsi-pag-cassa #ldd-s1-price{font-size:15px!important;color:var(--grigio2)}
body.lsi-pag-cassa #ldd-s1-price strong{font-size:26px!important;font-weight:600;color:var(--scuro);letter-spacing:-.015em;font-variant-numeric:tabular-nums}
body.lsi-pag-cassa #ldd-s1-price s{color:var(--grigio)!important;font-size:14px!important}
body.lsi-pag-cassa #ldd-s1-price span{color:var(--grigio)!important;font-size:13px!important}
body.lsi-pag-cassa .ldd-co-card>p[style*="background"]{color:#2F5A36!important;background:#E6EFE7!important;border-color:#C9DCCB!important;border-radius:var(--r-m)!important;font-size:13.5px!important;line-height:1.5}

/* 0.6.6 - come accedere all'alloggio */

/* 0.6.6 - pagamento: Stripe dentro un riquadro del sito, icone carte piene, nota leggibile */
body.lsi-pag-cassa #ldd-card-element{border:1px solid var(--bordo);border-radius:var(--r-m);padding:14px;background:var(--superficie)}
body.lsi-pag-cassa #ldd-card-element.StripeElement--focus{border-color:var(--sabbia-t)}
body.lsi-pag-cassa #ldd-card-element.StripeElement--invalid{border-color:#A8382B}
body.lsi-pag-cassa #ldd-card-errors{font-size:13px;color:#A8382B;min-height:0;margin-top:8px}
body.lsi-pag-cassa .ldd-card-icons{gap:8px;margin-bottom:14px}
body.lsi-pag-cassa .ldd-card-icons svg{height:24px;opacity:1}
body.lsi-pag-cassa .ldd-co-privacy{font-size:12.5px;line-height:1.6;color:var(--grigio);margin-top:16px}
body.lsi-pag-cassa .ldd-co-privacy a{color:var(--sabbia-t);font-weight:600}

/* 0.6.6 - riepilogo: superficie bianca con ombra bassa (e' il riquadro che accompagna, come in scheda) */
body.lsi-pag-cassa .ldd-co-summary{background:var(--superficie);border:1px solid var(--riga);border-radius:var(--r-xl);padding:24px;box-shadow:var(--ombra-bassa);top:96px;max-height:calc(100vh - 120px)}
body.lsi-pag-cassa .ldd-co-summary h3{font:600 11.5px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--sabbia-t);margin:0 0 14px}
body.lsi-pag-cassa .ldd-sum-photo{border-radius:var(--r-l);aspect-ratio:3/2;margin-bottom:16px;background:#E7DCCF}
body.lsi-pag-cassa .ldd-sum-listing-name{display:block;font-family:var(--serif);font-size:24px;font-weight:500;line-height:1.15;color:var(--scuro);margin:0 0 4px;text-decoration:none}
body.lsi-pag-cassa a.ldd-sum-listing-name:hover{color:var(--sabbia-t);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
body.lsi-pag-cassa .ldd-sum-listing-sub{font-size:14px;font-weight:400;letter-spacing:0;color:var(--grigio2);margin:0 0 16px}
body.lsi-pag-cassa .ldd-sum-promo{border-radius:var(--r-pill);background:var(--salvia-t);color:#FFF;font-size:11px;font-weight:600;padding:4px 10px}
body.lsi-pag-cassa .ldd-sum-dates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:0;margin:0 0 16px;border:1px solid var(--riga);border-radius:var(--r-m);font-size:14px;color:var(--scuro)}
body.lsi-pag-cassa .ldd-sum-dates>span{display:flex;flex-direction:column;justify-content:flex-start;gap:2px;padding:10px 12px;border-left:1px solid var(--riga);min-width:0}
body.lsi-pag-cassa .ldd-sum-dates>span:first-child{border-left:0}
body.lsi-pag-cassa .ldd-sum-dates>span>span{font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--grigio2)}
body.lsi-pag-cassa .ldd-sum-dates strong{font-size:14px;font-weight:600;color:var(--scuro)}
body.lsi-pag-cassa .ldd-sum-row{gap:12px;font-size:14px;color:var(--grigio2);margin-bottom:10px;font-variant-numeric:tabular-nums}
body.lsi-pag-cassa .ldd-sum-row span:last-child{color:var(--scuro);white-space:nowrap}
body.lsi-pag-cassa .ldd-sum-row.discount,
body.lsi-pag-cassa .ldd-sum-row.discount span:last-child,
body.lsi-pag-cassa .ldd-sum-row.coupon-row span{color:var(--salvia-t);font-size:14px;font-weight:600}
body.lsi-pag-cassa .ldd-sum-row.total{margin-top:6px;padding-top:14px;border-top:1px solid var(--riga);font-size:17px;font-weight:600;color:var(--scuro)}
body.lsi-pag-cassa .ldd-sum-row.total span:last-child{font-size:20px;letter-spacing:-.01em}
body.lsi-pag-cassa .ldd-sum-loading{font-size:14px;color:var(--grigio2)}
body.lsi-pag-cassa .ldd-sum-loading::before{border-color:var(--riga);border-top-color:var(--sabbia-t)}

/* 0.6.6 - errori della cassa (date non libere, soggiorno minimo, pagamento): fascia ben visibile */
body.lsi-pag-cassa .ldd-co-error-box{margin:0 0 20px;padding:14px 16px;border:1px solid #F0C9C2;border-left:4px solid #A8382B;border-radius:var(--r-m);background:#FBEDEA;color:#8E1616;font:500 14px/1.55 var(--sans)}
body.lsi-pag-cassa .ldd-co-error-box a{color:#8E1616!important;font-weight:600}

/* 0.6.6 - scheletri del caricamento: la stessa luce calda delle card del sito */
body.lsi-pag-cassa .ldd-skel{background:linear-gradient(90deg,#EFE8DF 0,#F7F2EC 40%,#EFE8DF 80%);background-size:600px 100%;border-radius:var(--r-s)}
body.lsi-pag-cassa .ldd-skel-btn{border-radius:var(--r-m);height:52px}

/* 0.13.4 - conferma rifatta in ldd-guesty-sync 10.75.0 (stili in ldd-checkout.css): qui solo i caratteri del sito */
body.lsi-pag-cassa .ldd-co-success{font-family:var(--sans)}
body.lsi-pag-cassa .ldd-co-success .ldd-ok-titolo,body.lsi-pag-cassa .ldd-co-success .ldd-ok-app h3,body.lsi-pag-cassa .ldd-ok-nomecasa,body.lsi-pag-cassa .ldd-ok-tagline{font-family:var(--serif)}

/* 0.6.6 - servizi aggiuntivi (finestra): bordi e pulsanti del sito */
body.lsi-pag-cassa .ldd-upsell-box{border-radius:var(--r-xl);box-shadow:var(--ombra-pop);font-family:var(--sans)}
body.lsi-pag-cassa .ldd-upsell-header h3{font-family:var(--serif);font-size:24px;font-weight:500}
body.lsi-pag-cassa .ldd-upsell-footer .ldd-co-btn{min-height:48px;border-radius:var(--r-m)}
body.lsi-pag-cassa .ldd-upsell-footer .ldd-co-btn-primary{background:var(--sabbia);color:var(--scuro)}
body.lsi-pag-cassa .ldd-upsell-btn-add{border-radius:var(--r-m);color:var(--scuro);border-color:var(--scuro)}
body.lsi-pag-cassa .ldd-upsell-btn-add.added{background:var(--scuro);border-color:var(--scuro);color:var(--crema)}

/* 0.6.6 - telefono: una colonna, pulsanti a tutta larghezza, passi compatti */
@media (max-width:860px){
  body.lsi-pag-cassa .ldd-co-grid{grid-template-columns:minmax(0,1fr);gap:20px}
  body.lsi-pag-cassa .ldd-co-summary{border-radius:var(--r-l);box-shadow:none;padding:20px;max-height:none;overflow:visible}
  body.lsi-pag-cassa .ldd-co-card{padding:20px 16px}
  body.lsi-pag-cassa .ldd-co-card h2{font-size:24px}
  body.lsi-pag-cassa .ldd-co-steps{margin-bottom:20px}
  body.lsi-pag-cassa .ldd-co-step{font-size:10.5px;letter-spacing:.06em}
  body.lsi-pag-cassa .ldd-co-actions .ldd-co-btn{flex:1 1 100%}
  body.lsi-pag-cassa .ldd-co-actions .ldd-co-btn-ghost{order:2}
  body.lsi-pag-cassa .ldd-rate-plan{padding:14px 12px;column-gap:10px}
}
@media (max-width:480px){
  body.lsi-pag-cassa .ldd-co-row{grid-template-columns:minmax(0,1fr)}
}
@media (prefers-reduced-motion:reduce){
  body.lsi-pag-contatti .ldd-form-spinner{animation-duration:1.6s}
  body.lsi-pag-cassa .ldd-tc-label.shake{animation:none}
}

/* 0.6.7 - Tony 28/10: tolto "Come accedere all'alloggio" dalla cassa. Il JS di ldd-guesty-sync lo apre
   con style.display='block' quando il listing ha houseManual: serve !important. Le istruzioni d'accesso
   arrivano all'ospite dopo la verifica dei documenti (app ospiti), non prima del pagamento. */
body.lsi-pag-cassa #ldd-house-manual-wrap{display:none!important}
