/* Booking.com Affiliate Suchwidget */

.booking-aff-widget{
  --baw-btn-bg:#0071c2;
  --baw-btn-color:#fff;
  --baw-radius:6px;
  --baw-border:#ccc;
  width:100%;
}

/* Layout: Desktop = eine Zeile */
.booking-aff-widget form{
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  margin:0;
}

/* Felder-Container nimmt restliche Breite */
.booking-aff-widget .fields{
  display:flex;
  align-items:center;
  gap:10px;
  flex:1 1 auto;
  min-width:0;
}

/* Inputs/Selects */
.booking-aff-widget input,
.booking-aff-widget select{
  height:44px;
  padding:8px 10px;
  font-size:15px;
  border:1px solid var(--baw-border);
  border-radius:var(--baw-radius);
  box-sizing:border-box;
  max-width:100%;
  line-height:normal;
  background:#fff;
  color:#000;
  -webkit-text-fill-color:#000; /* Safari/iOS färbt Date-Felder sonst grau */
  opacity:1;
}

/* Platzhalter etwas heller als der eingegebene Text */
.booking-aff-widget input::placeholder{
  color:#666;
  opacity:1;
}

/* Gesperrtes Reiseziel-Feld (readonly="yes") bleibt gut lesbar */
.booking-aff-widget input[readonly]{
  color:#000;
  -webkit-text-fill-color:#000;
  background:#fff;
}

.booking-aff-widget input:focus-visible,
.booking-aff-widget select:focus-visible,
.booking-aff-widget button:focus-visible{
  outline:2px solid var(--baw-btn-bg);
  outline-offset:2px;
}

/* Button */
.booking-aff-widget button.submitBtn{
  height:44px;
  padding:0 16px;
  font-size:15px;
  border-radius:var(--baw-radius);
  border:none;
  cursor:pointer;
  white-space:nowrap;
  background:var(--baw-btn-bg);
  color:var(--baw-btn-color);
  font-weight:600;
}

.booking-aff-widget button.submitBtn:hover{
  filter:brightness(0.92);
}

/* Flexible Breiten: Desktop */
.booking-aff-widget .dest{
  flex:2 1 240px;
  min-width:160px;
}
.booking-aff-widget .checkin,
.booking-aff-widget .checkout{
  flex:1 1 160px;
  min-width:140px;
}
.booking-aff-widget .adults,
.booking-aff-widget .children{
  flex:0 0 110px;
  min-width:100px;
}

/* Labels nur für Screenreader */
.booking-aff-widget .baw-sr-only{
  position:absolute;
  width:1px;height:1px;
  padding:0;margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;border:0;
}

/* ===== Responsive: Inputs stapeln, Button eigene Zeile voll ===== */
@media (max-width: 900px){
  .booking-aff-widget form{
    flex-wrap:wrap;
  }

  .booking-aff-widget .fields{
    flex:1 1 100%;
    flex-wrap:wrap;
  }

  .booking-aff-widget .dest{
    flex:1 1 100%;
    width:100%;
    height:32px;
    padding:0 16px;
  }

  .booking-aff-widget .checkin,
  .booking-aff-widget .checkout,
  .booking-aff-widget .adults,
  .booking-aff-widget .children{
    flex:1 1 calc(50% - 16px);
    width:100%;
    height:32px;
    padding:0 16px;
  }

  .booking-aff-widget button.submitBtn{
    flex:1 1 100%;
    width:100%;
  }
}