/* V4.1.6 form compaction (U2, 2026-10-27): one-screen forms on desktop.
   Loaded only on pages containing a <form>, after elc-v413 (and after
   elc-v414/elc-v415 where a page carries them). Tightens control size,
   label size and spacing on desktop; caps textarea height at 124px
   (resize handle kept). Mobile only shrinks gaps: input font-size and
   touch-target heights from v320/v404 stay untouched. */
@media (min-width:768px){
  html body.v26-app .form{gap:6px}
  html body.v26-app .form-row{gap:8px}
  html body.v26-app .form .field{margin-bottom:4px}
  html body.v26-app .form label,html body.v26-app .field>label{font-size:12.5px!important;line-height:1.35!important}
  html body.v26-app .field label{margin-bottom:3px}
  html body.v26-app .form input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),
  html body.v26-app .form select,
  html body.v26-app .v26-auth input:not([type=checkbox]):not([type=radio]){
    font-size:14px!important;line-height:1.4!important;padding:5px 10px!important;
    min-height:34px!important;height:34px;box-sizing:border-box}
  html body.v26-app .form textarea{max-height:124px;padding:7px 10px!important;font-size:14px!important;line-height:1.45!important}
  html body.v26-app .form .checkline{font-size:12.5px;line-height:1.45}
  html body.v26-app .form button{min-height:36px!important;padding:7px 14px!important}
  html body.v26-app .v330-step-two{margin-top:6px}
  html body.v26-app .form .field small{margin-top:3px}
}
@media (max-width:767px){
  html body.v26-app .form{gap:6px}
  html body.v26-app .form .field{margin-bottom:6px}
  html body.v26-app .form textarea{max-height:130px}
}
/* Book pages (all locales): date & preference textareas become compact
   single-line-height fields (resizable up to ~2 lines); the zh book
   panel's decorative hero image is height-capped with cover-cropping;
   book panels shed a little top/bottom padding so the whole panel
   fits one desktop screen. */
@media (min-width:768px){
  html body.v26-app .form textarea[name="requested_dates"],
  html body.v26-app .elc403-booking-grid .field textarea[name="requested_dates"]{
    height:44px!important;min-height:44px!important;max-height:64px!important}
  html body.v26-app .form textarea[name="guest_message"],
  html body.v26-app .elc403-booking-grid .field textarea[name="guest_message"]{
    height:46px!important;min-height:46px!important;max-height:64px!important}
  html body.v26-app img.elc-book-hero{width:100%;max-height:104px;object-fit:cover}
  html body.v26-app .panel:has(>form.v330-progressive){padding-top:12px;padding-bottom:12px}
  html body.v26-app .panel:has(>form.v330-progressive) .v300-sectiontitle{margin-top:6px;margin-bottom:4px}
}
/* V4.2.1 (2026-10-28) book lead form, all locales: the reply-method radio
   group flowed inline after the question <span>, so on phones the first
   option landed at the top-right of the question line and the second
   wrapped loose below it; the generic .field input min-height (42px)
   also stretched the radio box (measured 16x42) off the text midline.
   Scoped to .elc-lead-form, which exists only on /book/ pages. */
.elc-lead-form .field>span{display:block;margin-bottom:10px}
.elc-lead-form .field>label:has(>input[type=radio]){
  display:inline-flex!important;align-items:center;gap:9px;
  margin:0 22px 8px 0!important;line-height:1.4;vertical-align:top}
.elc-lead-form input[type=radio]{
  width:21px;height:21px;min-height:0;padding:0;margin:0;flex:none}
/* Book pages only: enough bottom room for every lead-form field and the
   submit button to scroll fully clear of the fixed ask-widget. */
main.v300-guest-booking:has(.elc-lead-form){padding-bottom:120px}
