/* Combined date field + guests field (new design). */
.bk-fields{display:flex;flex-direction:column;gap:10px;margin:14px 0}
.bk-field{display:flex;align-items:center;gap:10px;width:100%;box-sizing:border-box;padding:14px 16px;border:1px solid rgba(0,0,0,.15)!important;border-radius:12px!important;background:#fff!important;cursor:pointer;font:inherit;text-align:left;position:relative;color:#111!important;box-shadow:none!important}
.bk-field:hover{border-color:rgba(0,0,0,.4)!important}
.bk-ico{width:18px;height:18px;flex:0 0 auto;opacity:.55}
.bk-field-text{flex:1;font-size:15px;line-height:1.2}
.bk-caret{width:16px;height:16px;flex:0 0 auto;opacity:.45}
.bk-guests{position:relative}

/* Calendar internals (JS-generated inside #calendarPanel). Prefixed .bk- and
   forced with !important so the theme's global button styles can't bleed in. */
.bk-cal{max-width:660px;margin:6px auto 4px}
.bk-cal-months{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.bk-cal-mhead{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;min-height:36px}
.bk-cal-title{flex:1;text-align:center;font-weight:600;font-size:15px}
.bk-cal-navspace{width:36px;flex:0 0 auto}
.bk-cal-nav{width:36px!important;height:36px!important;min-width:0!important;padding:0!important;border:1px solid rgba(0,0,0,.15)!important;background:#fff!important;color:#111!important;border-radius:8px!important;font-size:18px!important;line-height:1!important;cursor:pointer;box-shadow:none!important}
.bk-cal-nav:hover:not(:disabled){background:#f3f4f6!important}
.bk-cal-nav:disabled{opacity:.3;cursor:default}
.bk-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center}
.bk-dow{font-size:11px;opacity:.5;padding-bottom:6px}
.bk-day{width:100%!important;height:38px!important;min-width:0!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;color:#111!important;border-radius:8px!important;font-size:14px!important;font-weight:400!important;line-height:38px!important;cursor:pointer;box-shadow:none!important;text-shadow:none!important}
.bk-day:hover:not(.is-off):not(.is-empty){background:#eef2f7!important}
.bk-day.is-empty{cursor:default}
.bk-day.is-off{color:#c7c7c7!important;text-decoration:line-through;cursor:not-allowed}
.bk-day.is-between{background:#eef2f7!important;border-radius:0!important}
.bk-day.is-start,.bk-day.is-end{background:#111!important;color:#fff!important}
@media(max-width:600px){.bk-cal-months{grid-template-columns:1fr;gap:18px}.bk-cal{max-width:340px}}

/* Ledger rows (JS-generated inside #ledger). */
.ledger-row{display:flex;justify-content:space-between;padding:6px 0;font-size:15px}
.ledger-total{font-weight:700;border-top:1px solid rgba(0,0,0,.12);margin-top:6px;padding-top:10px}

/* Confirmation page card (unchanged). */
.bs-confirm-wrap{display:flex;justify-content:center;padding:40px 16px}
.bs-confirm-card{width:100%;max-width:480px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:20px;padding:40px 32px;text-align:center;box-shadow:0 18px 50px rgba(0,0,0,.10)}
.bs-check{display:flex;justify-content:center;margin-bottom:14px}
.bs-check-ring{stroke:#16a34a;stroke-width:3;stroke-dasharray:151;stroke-dashoffset:151;animation:bsRing .6s ease forwards}
.bs-check-tick{stroke:#16a34a;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;animation:bsTick .35s .55s ease forwards}
@keyframes bsRing{to{stroke-dashoffset:0}}
@keyframes bsTick{to{stroke-dashoffset:0}}
.bs-confirm-title{margin:6px 0 4px;font-size:26px;font-weight:700}
.bs-confirm-sub{margin:0 0 18px;opacity:.65;font-size:15px}
.bs-ref-chip{display:inline-block;background:#f1f5f9;color:#0f172a;font-weight:600;letter-spacing:.02em;padding:8px 16px;border-radius:999px;font-size:14px;margin-bottom:22px}
.bs-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;text-align:left;margin-bottom:20px}
.bs-detail{background:#f8fafc;border:1px solid rgba(0,0,0,.05);border-radius:12px;padding:12px 14px}
.bs-detail span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.05em;opacity:.55;margin-bottom:3px}
.bs-detail strong{font-size:16px}
.bs-confirm-email{font-size:14px;opacity:.75;margin:0 0 22px}
.bs-home-btn{display:inline-block;width:100%;box-sizing:border-box;padding:14px;background:#111;color:#fff;text-decoration:none;font-weight:600;font-size:15px;border-radius:12px;transition:opacity .2s}
.bs-home-btn:hover{opacity:.85;color:#fff}
@media(max-width:420px){.bs-detail-grid{grid-template-columns:1fr}.bs-confirm-card{padding:32px 22px}}
