  /* ---------- Mini booking widget ----------
     Podklad = původní návrh formuláře bez textů (images/rezervace-formular-podklad-v2.webp).
     Texty, čísla a tlačítka leží přes obrázek; pozice jsou v % obrázku, písmo škáluje s šířkou (cqw). */
  .booking-widget{
    position:relative; width:94%; max-width:328px; margin:0 auto 20px;
    aspect-ratio:1064 / 1186; container-type:inline-size; line-height:1;
    color:#0f3346;
    background:url('images/rezervace-formular-podklad-v2.webp') center / 100% 100% no-repeat;
    filter:drop-shadow(0 8px 18px rgba(15,51,70,.10));
  }
  .bw-abs{position:absolute; margin:0; white-space:nowrap;}
  .bw-date{
    position:absolute; top:7.6%; width:42.3%; height:40.1%; padding:0; border:0; background:transparent;
    cursor:pointer; color:inherit; font:inherit; border-radius:3cqw; -webkit-tap-highlight-color:transparent;
  }
  .bw-date--from{left:5.55%;}
  .bw-date--to{left:52.07%;}
  .bw-date:focus-visible{outline:3px solid rgba(62,140,134,.55); outline-offset:2px;}
  .bw-date > span{position:absolute; left:0; right:0; text-align:center; transform:translateY(-50%); white-space:nowrap;}
  /* svislé středy v % výšky pole kalendáře */
  .bw-date-label{top:16.3%; font-family:'Marcellus SC', Georgia, serif; font-size:4.4cqw; letter-spacing:.16em; padding-left:.16em; font-weight:400;}
  .bw-date::before{content:""; position:absolute; top:0; left:0; right:0; height:26%; background:rgba(130,184,180,.3); border-radius:3cqw 3cqw 0 0; pointer-events:none; mix-blend-mode:multiply; z-index:1;}
  .bw-date::after{content:""; position:absolute; inset:0; background:url('images/rezervace-formular-podklad-v2.webp') -5.55cqw -9.1564cqw / 100cqw 120.4796cqw no-repeat; pointer-events:none; border-radius:3cqw;}
  .bw-date--to::after{background-position:-52.07cqw -9.1564cqw; filter:url(#bw-departure-pink);}
  .bw-date--to::before{background:rgba(211,149,176,.3);}
  .bw-date > span{z-index:2;}
  .bw-date-weekday{display:none;}
  .bw-date-day{top:45%; font-family:'Baloo 2', sans-serif; font-size:13cqw; font-weight:800; letter-spacing:-.01em; margin-top:.8cqw;}
  .bw-date-month{top:64%; font-family:'Baloo 2', sans-serif; font-size:4.4cqw; font-weight:500;}
  .bw-date-day.is-flipping{animation:bwFlip .45s ease;}
  @keyframes bwFlip{0%{transform:translateY(-50%) rotateX(0);opacity:1}45%{transform:translateY(-50%) rotateX(90deg);opacity:.2}100%{transform:translateY(-50%) rotateX(0);opacity:1}}
  .bw-date-input{
    position:absolute; inset:0; width:100%; height:100%; opacity:0; border:0; padding:0 8px; margin:0;
    pointer-events:none; font-family:'Baloo 2', sans-serif; font-size:max(16px, 4.4cqw); font-weight:600; color:#0f3346; text-align:center;
  }
  .bw-date-input.is-active{opacity:1; pointer-events:auto; z-index:5; background:#fbf9f3; border:2px solid #3E8C86; border-radius:3cqw; cursor:pointer;}
  .bw-guests-title{left:5.83%; top:50.6%; transform:translateY(-50%); font-family:'Marcellus SC', Georgia, serif; font-size:4.2cqw; letter-spacing:.06em;}
  .bw-guest-name{top:58.77%; transform:translateY(-50%); font-family:'Baloo 2', sans-serif; font-size:4cqw; font-weight:500;}
  .bw-guest-count{top:65.6%; transform:translateY(-50%); font-family:'Baloo 2', sans-serif; font-size:10.5cqw; font-weight:600;}
  .bw-guest-name--adults{left:10.43%;} .bw-guest-count--adults{left:11.18%;}
  .bw-guest-name--children{left:55.45%;} .bw-guest-count--children{left:55.8%;}
  .bw-step{
    position:absolute; width:7.8%; height:5.73%; padding:0; border:0; border-radius:1.6cqw;
    background:transparent; cursor:pointer; -webkit-tap-highlight-color:transparent; transition:background .15s ease;
  }
  .bw-step:hover{background:rgba(62,140,134,.14);}
  .bw-step:focus-visible{outline:3px solid rgba(62,140,134,.55); outline-offset:1px;}
  .bw-step:disabled{cursor:default; background:rgba(252,250,244,.55);}
  .bw-step--up{top:56.5%;} .bw-step--down{top:63.8%;}
  .bw-step--adults{left:37.5%;} .bw-step--children{left:83.9%;}
  .bw-submit{
    position:absolute; left:5.55%; top:74.9%; width:89%; height:9.6%; padding:0; border:0; border-radius:1.2cqw;
    background:transparent; color:#fff; cursor:pointer; font-family:'Baloo 2', sans-serif; font-size:5.2cqw; font-weight:400;
    transition:background .15s ease;
  }
  .bw-submit:hover{background:rgba(255,255,255,.07);}
  .bw-submit:focus-visible{outline:3px solid rgba(62,140,134,.7); outline-offset:2px;}
  .bw-direct{left:0; right:0; top:89.4%; transform:translateY(-50%); text-align:center; padding-left:10%; font-family:'Baloo 2', sans-serif; font-weight:400; font-size:4cqw;}
  .bw-direct2{left:0; right:0; top:93.7%; transform:translateY(-50%); text-align:center; font-family:'Baloo 2', sans-serif; font-size:3.6cqw; color:#2F5A6B;}
  html:not([lang="cs"]) .bw-guest-name{font-size:3.5cqw;}
  html:not([lang="cs"]) .bw-direct{font-size:3.2cqw;}
  html:not([lang="cs"]) .bw-direct2{font-size:3.2cqw;}

/* Schválený formulář 6. 10. 2026 – všechny jazykové verze. */

  /* Vnější rámeček zůstává; jednotlivé vnitřní karty jsou menší. */
  #bookingWidget::before{content:""; position:absolute; inset:2.8% 3% 27%; background:radial-gradient(ellipse at 50% 20%,#fcfaf4,#f9f7ed);}
  #bookingWidget .bw-calendar-art{position:absolute; inset:0; pointer-events:none; background:url('images/rezervace-formular-podklad-v2.webp') center / 100% 100% no-repeat; transform:scale(.88);}
  #bookingWidget .bw-calendar-art--from{clip-path:polygon(3% 3%,50% 3%,50% 49%,3% 49%); transform-origin:26.7% 27.65%;}
  #bookingWidget .bw-calendar-art--to{clip-path:polygon(50% 3%,97% 3%,97% 49%,50% 49%); transform-origin:73.22% 27.65%; filter:url(#bw-departure-pink);}
  #bookingWidget .bw-date{transform:scale(.88);}
  #bookingWidget .bw-date::after{display:none;}
  #bookingWidget .bw-date-label{top:16%;}
  #bookingWidget .bw-date-day{top:60%; margin-top:0; font-weight:600; transform:translateY(-50%) scaleX(.92);}
  #bookingWidget .bw-date-day.is-flipping{animation-name:bwNarrowFlip;}
  @keyframes bwNarrowFlip{0%{transform:translateY(-50%) scaleX(.92) rotateX(0);opacity:1}45%{transform:translateY(-50%) scaleX(.92) rotateX(90deg);opacity:.2}100%{transform:translateY(-50%) scaleX(.92) rotateX(0);opacity:1}}
  #bookingWidget .bw-date-month{top:37%;}
  #bookingWidget .bw-guest-group{position:absolute; inset:0; pointer-events:none; transform:scale(.88);}
  #bookingWidget .bw-guest-group::before{content:""; position:absolute; inset:0; background:url('images/rezervace-formular-podklad-v2.webp') center / 100% 100% no-repeat;}
  #bookingWidget .bw-guest-group--adults{transform-origin:26.7% 63%;}
  #bookingWidget .bw-guest-group--adults::before{clip-path:polygon(4.5% 53%,49.5% 53%,49.5% 73%,4.5% 73%);}
  #bookingWidget .bw-guest-group--children{transform-origin:73.22% 63%;}
  #bookingWidget .bw-guest-group--children::before{clip-path:polygon(50% 53%,96% 53%,96% 73%,50% 73%);}
  #bookingWidget .bw-guest-group .bw-step{pointer-events:auto;}
  #bookingWidget::after{content:""; position:absolute; inset:72% 3% 13%; background:#faf8ef; pointer-events:none;}
  #bookingWidget .bw-submit{left:30.7%; top:75.7%; width:38.6%; height:8%; background:#164659; border-radius:1.6cqw; font-size:4.4cqw; box-shadow:none; filter:none; z-index:1;}
  #bookingWidget .bw-submit:hover{background:#1e5869;}
  #bookingWidget .bw-nights{left:50%; top:48.84%; transform:translate(-50%,-50%); display:flex; align-items:center; justify-content:center; gap:1.9cqw; padding:1.4cqw 4.5cqw; border:1px solid #bdd9d5; border-radius:6cqw; background:#eaf4f1; color:#385962; font-family:'Baloo 2',sans-serif; font-size:4cqw; font-weight:400; line-height:1.2;}
  #bookingWidget .bw-nights svg{width:4.3cqw; height:4.3cqw; color:#75aaa6; flex-shrink:0;}
  #bookingWidget .bw-calendar-art--from{mask-image:linear-gradient(to right,transparent 3%,#000 5%,#000 48%,transparent 50%),linear-gradient(to bottom,transparent 3%,#000 4%,#000 46%,transparent 49%); mask-composite:intersect;}
  #bookingWidget .bw-calendar-art--to{mask-image:linear-gradient(to right,transparent 50%,#000 52%,#000 95%,transparent 97%),linear-gradient(to bottom,transparent 3%,#000 4%,#000 46%,transparent 49%); mask-composite:intersect;}
  #bookingWidget .bw-guest-group--adults::before{mask-image:linear-gradient(to right,transparent 4.5%,#000 5.2%,#000 49%,transparent 49.5%),linear-gradient(to bottom,transparent 53%,#000 53.6%,#000 72%,transparent 73%); mask-composite:intersect;}
  #bookingWidget .bw-guest-group--children::before{mask-image:linear-gradient(to right,transparent 50%,#000 50.6%,#000 95.4%,transparent 96%),linear-gradient(to bottom,transparent 53%,#000 53.6%,#000 72%,transparent 73%); mask-composite:intersect;}
