/* =====================================================================
   Compact booking form, shared by every campaign page (/rsvp/*).
   Loaded last, after the page's own theme, so each campaign keeps its
   colours and fonts but the form itself is short and quick to fill:
   - short labels, no step numbers, no help line under every field
     (the placeholder says it; a hint appears only when it's needed)
   - Followers and WhatsApp share a row
   - smaller inputs, day cards, time chips and +1 buttons
   - no cassette / ruler progress strip above the form
   ===================================================================== */

/* the progress strip is decoration; the form is one screen now */
.rv-deck.is-one .rv-cassette,
.rv-deck.is-one #rvCassette{display:none!important}
.rv-deck.is-one #rvIntro{margin-bottom:16px}

/* layout: one column, Followers + WhatsApp side by side */
html body .rv-form.is-one{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);column-gap:12px}
html body .rv-form.is-one > *{grid-column:1/-1}
html body .rv-form.is-one > .rv-step[data-step="2"],
html body .rv-form.is-one > .rv-step[data-step="3"]{grid-column:auto}

/* each field */
html body .rv-form.is-one .rv-step{margin:0 0 14px}
html body .rv-form.is-one .rv-step legend{margin:0 0 6px;font-size:.98rem;line-height:1.2;letter-spacing:.01em}
html body .rv-form.is-one .rv-no{display:none}
html body .rv-form.is-one input[type=text],
html body .rv-form.is-one input[type=tel],
html body .rv-form.is-one input[type=email]{min-height:48px;padding-top:8px;padding-bottom:8px;font-size:1.06rem}
html body .rv-form.is-one .rv-prefix span{padding-bottom:12px;font-size:1.06rem}
html body .rv-form.is-one .qp-prefix span,
html body .rv-form.is-one .rv-prefix > span{flex:none}

/* help lines only when they say something new (JS adds .is-warn) */
html body .rv-form.is-one .rv-step .rv-help:not(.cbt-picked):not(.is-warn){display:none}
html body .rv-form.is-one .rv-help.is-warn{display:block;margin-top:5px;font-size:.8rem;color:var(--red,#C8202A)}
html body .rv-form.is-one .rv-igchip{margin-top:6px;min-height:32px;padding:5px 12px;font-size:.8rem}

/* day and time */
html body .rv-form.is-one .cbt-days{gap:6px;padding:2px 2px 6px}
html body .rv-form.is-one .cbt-dayb{flex:1 0 46px;width:auto;max-width:72px;padding:6px 0 5px}
html body .rv-form.is-one .cbt-dayb b{font-size:1.3rem}
html body .rv-form.is-one .cbt-dayb-w,
html body .rv-form.is-one .cbt-dayb-m{font-size:.62rem}
html body .rv-form.is-one .cbt-day.is-covered{display:none!important}
html body .rv-form.is-one .cbt-day.is-enhanced{margin:2px 0 0!important}
html body .rv-form.is-one .cbt-day.is-enhanced input{min-height:40px}
html body .rv-form.is-one .cbt-pick-h{margin:10px 0 6px}
html body .rv-form.is-one .cbt-times{gap:6px}
html body .rv-form.is-one .cbt-timeb{min-height:40px;padding:6px 8px;font-size:.92rem}
html body .rv-form.is-one .cbt-picked{margin-top:8px;font-size:.8rem}
html body .rv-form.is-one .yk-special-note{margin:0 0 8px;padding:7px 10px;font-size:.84rem}

/* +1 and WhatsApp tick */
html body .rv-form.is-one .rv-choices{gap:8px}
html body .rv-form.is-one .rv-choice span{min-height:46px;padding:6px 10px;gap:6px;font-size:.92rem}
html body .rv-form.is-one .rv-choice b{font-size:1.15rem}
html body .rv-form.is-one .rv-tick{margin-top:10px;font-size:.86rem;gap:10px}
html body .rv-form.is-one .rv-tick input{width:20px;height:20px}

/* send */
html body .rv-form.is-one .rv-nav{margin-top:6px}
html body .rv-form.is-one .rv-nav #rvNext{min-height:52px}

/* very narrow phones: everything in one column */
@media (max-width:340px){
  html body .rv-form.is-one > .rv-step[data-step="2"],
  html body .rv-form.is-one > .rv-step[data-step="3"]{grid-column:1/-1}
}
html body .rv-form.is-one .yk-special-note ~ .cbt-picked:not(.is-set){display:none}
