/* Availability picker styles */
.availability-wrap {
  background: white; border: 1px solid var(--border2);
  border-radius: 20px; padding: 40px;
  margin-bottom: 24px;
}
.availability-title {
  font-size: 14px; font-weight: 700;
  letter-spacing: .08em; text-transform: uppercase;
  color: var(--muted2); margin-bottom: 20px;
}
.booking-picker {
  display: flex; gap: 16px; align-items: center;
  flex-wrap: wrap; margin-bottom: 16px;
}
.booking-pick-card {
  display: flex; align-items: center; gap: 12px;
  background: var(--cream); border: 1px solid var(--border);
  border-radius: 12px; padding: 14px 20px;
  cursor: pointer; transition: .2s; font-family: var(--ff);
  font-size: 14px; font-weight: 600;
}
.booking-pick-card:hover { background: var(--beige2); border-color: rgba(0,0,0,.15); }
.booking-pick-card img { height: 24px; width: auto; }
.booking-pick-controls label {
  font-size: 12px; font-weight: 600;
  letter-spacing: .08em; text-transform: uppercase;
  color: var(--muted2); display: block; margin-bottom: 8px;
}
.booking-pick-row { display: flex; gap: 12px; align-items: center; }
.booking-pick-row select {
  font-family: var(--ff); font-size: 15px;
  background: var(--cream); border: 1px solid var(--border);
  border-radius: 10px; padding: 10px 14px; outline: none;
  transition: border-color .2s;
}
.booking-pick-row select:focus { border-color: var(--green); }
.badge { padding: 3px 10px; border-radius: 999px; font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.badge.free { background: rgba(58,107,81,.12); color: var(--green); }
.badge.busy { background: rgba(200,60,60,.1); color: #b03030; }
.badge.req  { background: rgba(168,123,90,.12); color: var(--warm); }
.help { font-size: 12px; color: var(--muted2); margin-top: 8px; }
details summary { cursor: pointer; font-size: 14px; font-weight: 600; color: var(--green); padding: 8px 0; }

/* Hut selector */
.sw-hut-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 10px; }
.sw-hut-card { background: var(--cream); border: 1px solid var(--border); border-radius: 14px; padding: 18px 16px; transition: .2s; }
.sw-hut-card:focus-within { border-color: var(--green); background: white; }
.sw-hut-title { font-weight: 700; font-size: 14px; margin-bottom: 4px; }
.sw-hut-meta { font-size: 12px; color: var(--muted2); margin-bottom: 12px; }
.sw-hut-controls { display: flex; align-items: center; gap: 10px; }
.sw-hut-controls input[type=number] { max-width: 90px; font-family: var(--ff); font-size: 15px; background: white; border: 1px solid var(--border); border-radius: 8px; padding: 8px 10px; }
.sw-hut-unit { font-size: 13px; color: var(--muted2); }

@media(max-width:600px) { .sw-hut-grid { grid-template-columns: 1fr; } }

/* Extracted inline styles (auto-generated) */

.sw-inline-319826c79b{background:var(--beige);}

.sw-inline-803f05aac3{max-width:860px; margin:0 auto;}

.sw-inline-1da9facb4d{margin:0;}

.sw-inline-217833eda3{margin:12px 0; display:flex; gap:8px; flex-wrap:wrap;}

.sw-inline-a6f31fef75{font-size:14px; color:var(--muted);}

.sw-inline-b1ecc496e0{margin-top:8px;}

.sw-inline-54723857f7{display:none; background:rgba(200,60,60,.08); border:1px solid rgba(200,60,60,.2); border-radius:10px; padding:12px 16px; margin-bottom:16px; font-size:14px; color:#b03030;}
