/* Sonder Foglalási Rendszer – frontend stílusok (egyoszlopos, robusztus) */
.sbk{
  --cream:#f1ece4; --ink:#13110f; --brick:#8c2d2b; --muted:#56504a;
  --border:#d8d2ca; --line:#e7e1d9; --white:#fff;
  font-family:'Jost',Helvetica,Arial,sans-serif;color:var(--ink);
  max-width:760px;margin:0 auto;line-height:1.5;
}
.sbk *{box-sizing:border-box}
.sbk .sbk-form{display:block;width:100%}

.sbk-eyebrow{display:block;color:var(--brick);font-size:12px;letter-spacing:3px;
  text-transform:uppercase;margin:0 0 16px}
.sbk-step{margin:0 0 36px;clear:both}
.sbk-grid2{display:grid;grid-template-columns:1fr 1fr;gap:30px}
@media(max-width:560px){.sbk-grid2{grid-template-columns:1fr;gap:30px}}

/* termek – egymás alatt, teljes szélességű sorok */
.sbk-rooms{display:grid;grid-template-columns:1fr;gap:12px}
.sbk-room{display:block;margin:0}
.sbk-room input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}
.sbk-room-box{position:relative;display:flex;flex-direction:row;align-items:center;gap:22px;
  padding:22px 26px;border:1px solid var(--border);background:var(--white);cursor:pointer;
  transition:border-color .15s,box-shadow .15s}
.sbk-room-box:hover{border-color:var(--ink)}
.sbk-room input:checked + .sbk-room-box{border-color:var(--brick);box-shadow:inset 0 0 0 1px var(--brick)}
.sbk-room-name{flex:1 1 auto;font-size:17px;letter-spacing:.05em;text-transform:uppercase;
  font-weight:400;line-height:1.3}
.sbk-room-price{flex:0 0 auto;text-align:right;font-size:17px;color:var(--ink);white-space:nowrap}
.sbk-room-price span{display:block;font-size:12px;color:var(--muted);letter-spacing:.04em}
.sbk-room-check{flex:0 0 auto;position:relative;width:20px;height:20px;border-radius:50%;
  border:1px solid var(--border)}
.sbk-room input:checked + .sbk-room-box .sbk-room-check{background:var(--brick);border-color:var(--brick)}
.sbk-room input:checked + .sbk-room-box .sbk-room-check::after{content:"";position:absolute;
  left:6px;top:8px;width:8px;height:4px;border-left:2px solid #fff;border-bottom:2px solid #fff;
  transform:rotate(-45deg)}
@media(max-width:480px){
  .sbk-room-box{flex-wrap:wrap;gap:12px}
  .sbk-room-name{flex:1 1 100%}
  .sbk-room-price{text-align:left}
}

/* saját dátumválasztó */
.sbk-dp{position:relative}
.sbk-dp-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;
  padding:14px 16px;border:1px solid var(--border);background:var(--white);cursor:pointer;
  font-family:inherit;font-size:15px;color:var(--muted);text-align:left;transition:border-color .15s}
.sbk-dp-trigger.has-value{color:var(--ink)}
.sbk-dp-trigger:hover,.sbk-dp-trigger.is-open{border-color:var(--brick)}
.sbk-dp-ico{flex:0 0 auto;width:18px;height:18px;border:1.5px solid currentColor;border-radius:2px;position:relative}
.sbk-dp-ico::before{content:"";position:absolute;left:-1.5px;right:-1.5px;top:4px;height:1.5px;background:currentColor}
.sbk-dp-pop{position:absolute;z-index:50;top:calc(100% + 8px);left:0;width:min(340px,92vw);
  background:var(--white);border:1px solid var(--border);box-shadow:0 18px 50px rgba(19,17,15,.16);
  padding:18px}
.sbk-cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.sbk-cal-mtitle{font-size:15px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.sbk-cal-prev,.sbk-cal-next{width:34px;height:34px;border:1px solid var(--border);background:var(--white);
  cursor:pointer;color:var(--ink);font-size:18px;line-height:1;transition:all .12s}
.sbk-cal-prev:hover:not(:disabled),.sbk-cal-next:hover:not(:disabled){background:var(--ink);color:var(--cream);border-color:var(--ink)}
.sbk-cal-prev:disabled,.sbk-cal-next:disabled{opacity:.3;cursor:default}
.sbk-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}
.sbk-cal-dow{text-align:center;font-size:10px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--muted);padding:6px 0 8px}
.sbk-cal-pad{aspect-ratio:1}
.sbk-cal-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border:0;
  background:transparent;cursor:pointer;font-family:inherit;font-size:14px;color:var(--ink);
  border-radius:2px;transition:all .1s}
.sbk-cal-day:hover:not(:disabled){background:var(--cream)}
.sbk-cal-day.is-today{box-shadow:inset 0 0 0 1px var(--border)}
.sbk-cal-day.is-selected{background:var(--brick);color:#fff}
.sbk-cal-day.is-disabled{color:#c9c3bb;cursor:default}

/* időtartam */
.sbk-durations{display:flex;gap:10px;flex-wrap:wrap}
.sbk-dur{margin:0}
.sbk-dur input{position:absolute;opacity:0;width:0;height:0}
.sbk-dur span{display:inline-flex;align-items:center;justify-content:center;min-width:78px;
  padding:14px 18px;border:1px solid var(--border);background:var(--white);cursor:pointer;
  font-size:15px;transition:all .12s}
.sbk-dur span:hover{border-color:var(--ink)}
.sbk-dur input:checked + span{background:var(--ink);color:var(--cream);border-color:var(--ink)}

/* mezők */
.sbk input[type=date],.sbk input[type=text],.sbk input[type=email],
.sbk input[type=tel],.sbk textarea{
  width:100%;padding:14px 15px;border:1px solid var(--border);background:var(--white);
  font-family:inherit;font-size:15px;color:var(--ink);border-radius:0;line-height:1.3;
  transition:border-color .15s;box-shadow:none;margin:0}
.sbk input:focus,.sbk textarea:focus{outline:none;border-color:var(--brick);box-shadow:none}
.sbk-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media(max-width:560px){.sbk-fields{grid-template-columns:1fr}}
.sbk-fields label{display:flex;flex-direction:column;gap:8px;font-size:13px;
  letter-spacing:.04em;color:var(--muted);margin:0}
.sbk-fields .sbk-full{grid-column:1/-1}

/* idősávok */
.sbk-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(86px,1fr));gap:10px;min-height:48px}
.sbk-hint{grid-column:1/-1;color:var(--muted);font-size:14px;margin:4px 0}
.sbk-slot{padding:13px 8px;border:1px solid var(--border);background:var(--white);cursor:pointer;
  font-family:inherit;font-size:15px;letter-spacing:.04em;color:var(--ink);transition:all .12s}
.sbk-slot:hover{border-color:var(--ink)}
.sbk-slot.is-active{background:var(--brick);color:var(--cream);border-color:var(--brick)}

/* összegző – teljes szélességű, statikus */
.sbk-summary{border:1px solid var(--border);background:#faf7f2;padding:8px 26px;margin:0 0 18px}
.sbk-summary-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;
  padding:15px 0;border-bottom:1px solid var(--line);font-size:16px}
.sbk-summary-row span{color:var(--muted);font-size:11px;letter-spacing:2px;text-transform:uppercase;flex:0 0 auto}
.sbk-summary-row strong{text-align:right;font-weight:400}
.sbk-summary-total{border-bottom:0;align-items:center}
.sbk-summary-total span{color:var(--ink)}
.sbk-summary-total strong{font-size:24px;color:var(--brick)}

.sbk-error{background:#fbeae8;border:1px solid var(--brick);color:#7a2422;
  padding:14px 18px;margin:0 0 18px;font-size:14px;line-height:1.5}

/* ÁSZF / adatvédelem elfogadás */
.sbk-consent{margin:0 0 20px}
.sbk-check{display:flex;align-items:flex-start;gap:12px;cursor:pointer;font-size:14px;
  line-height:1.6;color:var(--muted)}
.sbk-check input{position:absolute;opacity:0;width:0;height:0}
.sbk-check-box{flex:0 0 auto;width:20px;height:20px;margin-top:1px;border:1px solid var(--border);
  background:var(--white);position:relative;transition:all .15s}
.sbk-check:hover .sbk-check-box{border-color:var(--ink)}
.sbk-check input:checked + .sbk-check-box{background:var(--brick);border-color:var(--brick)}
.sbk-check input:checked + .sbk-check-box::after{content:"";position:absolute;left:6px;top:2px;
  width:6px;height:11px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(45deg)}
.sbk-check input:focus-visible + .sbk-check-box{outline:2px solid var(--brick);outline-offset:2px}
.sbk-check-text a{color:var(--brick);text-decoration:underline}

.sbk-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.sbk-submit{background:var(--brick);color:var(--cream);border:0;padding:17px 38px;
  font-family:inherit;font-size:13px;letter-spacing:.22em;text-transform:uppercase;
  cursor:pointer;transition:opacity .15s;flex:0 0 auto}
.sbk-submit:hover{opacity:.92}
.sbk-submit:disabled{opacity:.5;cursor:default}
.sbk-note{color:var(--muted);font-size:12.5px;line-height:1.6;margin:0;flex:1 1 300px;min-width:240px}

/* köszönőoldal */
.sbk-thanks{text-align:center;max-width:620px;margin:0 auto;padding:20px 0}
.sbk-thanks-title{font-size:36px;font-weight:300;letter-spacing:1px;margin:8px 0 16px;line-height:1.1}
.sbk-thanks-lead{color:var(--muted);font-size:16px;line-height:1.7;margin-bottom:32px}
.sbk-ticket{border:1px solid var(--border);background:var(--white);padding:32px 36px;text-align:left}
.sbk-ticket-row{display:flex;justify-content:space-between;gap:16px;padding:13px 0;
  border-bottom:1px solid var(--line);font-size:15px}
.sbk-ticket-row:last-child{border-bottom:0}
.sbk-ticket-row span{color:var(--brick);font-size:11px;letter-spacing:2px;text-transform:uppercase;align-self:center}
.sbk-cancel-link{display:inline-block;margin-top:24px;color:var(--muted);font-size:13px;
  letter-spacing:.05em;text-decoration:underline}
.sbk-cancel-link:hover{color:var(--brick)}
