/* Shared Wix Bookings panel, included by every landing page: <link rel="stylesheet" href="/booking.css"> */
.bk{border:0;padding:0;margin:auto;width:min(560px,calc(100% - 32px));max-height:min(720px,calc(100dvh - 32px));border-radius:var(--radius);background:var(--cream);color:var(--ink);box-shadow:0 30px 80px -20px rgba(11,42,33,.55)}
.bk::backdrop{background:rgba(11,42,33,.62)}
.bk-in{display:flex;flex-direction:column;max-height:inherit}
.bk-head{background:var(--green);color:#fff;padding:18px 22px;display:flex;align-items:center;gap:14px}
.bk-head .t{flex:1;font-weight:800;font-size:17px;line-height:1.25}
.bk-head .t small{display:block;font-weight:600;font-size:13px;color:#C9D6D0}
.bk-x{background:none;border:0;color:#fff;font-size:26px;line-height:1;cursor:pointer;padding:4px 8px;border-radius:8px}
.bk-x:focus-visible,.bk-day:focus-visible,.bk-slot:focus-visible,.bk-link:focus-visible{outline:3px solid var(--red);outline-offset:2px}
.bk-steps{display:flex;gap:6px;padding:14px 22px 0}
.bk-steps span{flex:1;height:4px;border-radius:4px;background:var(--line)}
.bk-steps span.on{background:var(--red)}
.bk-body{padding:18px 22px 22px;overflow:auto}
.bk-body h3{font-size:19px;font-weight:800;margin-bottom:4px}
.bk-body .note{font-size:14px;color:var(--muted);margin-bottom:14px}
.bk-days{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin-bottom:14px}
.bk-day{flex:none;min-width:68px;border:2px solid var(--line);background:#fff;border-radius:12px;padding:8px 10px;text-align:center;cursor:pointer;font:inherit;color:inherit}
.bk-day b{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.bk-day span{display:block;font-weight:800;font-size:18px}
.bk-day[aria-pressed="true"]{border-color:var(--green);background:var(--green);color:#fff}
.bk-day[aria-pressed="true"] b{color:#C9D6D0}
.bk-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px}
.bk-slot{border:2px solid var(--line);background:#fff;border-radius:10px;padding:10px 6px;font:inherit;font-weight:700;font-size:15px;cursor:pointer;color:inherit}
.bk-slot:hover{border-color:var(--green)}
.bk-form{display:grid;gap:12px}
.bk-form label{display:grid;gap:5px;font-size:14px;font-weight:700}
.bk-form input,.bk-form select{font:inherit;font-weight:500;padding:12px 14px;border:2px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}
.bk-form input:focus,.bk-form select:focus{outline:none;border-color:var(--green)}
.bk-pick{display:flex;justify-content:space-between;align-items:center;gap:10px;background:var(--peach);border-radius:12px;padding:12px 14px;font-weight:700;font-size:15px;margin-bottom:14px}
.bk-link{background:none;border:0;font:inherit;font-weight:700;color:var(--red);text-decoration:underline;cursor:pointer;padding:0}
.bk .btn{width:100%;justify-content:center;border:0;cursor:pointer;font-family:inherit}
.bk .btn[disabled]{opacity:.6;cursor:progress}
.bk-msg{text-align:center;padding:26px 6px}
.bk-msg .ic{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;margin:0 auto 14px;font-size:28px;font-weight:900;color:#fff;background:var(--check)}
.bk-msg.warn .ic{background:var(--red)}
.bk-msg p{color:var(--muted);margin:6px 0 18px}
.bk-err{background:#FBE3DD;color:var(--red-dark);border-radius:10px;padding:10px 12px;font-size:14px;font-weight:600;margin-bottom:12px}
.bk-load{padding:36px 0;text-align:center;color:var(--muted);font-weight:600}
.bk-load::before{content:"";display:block;width:28px;height:28px;margin:0 auto 12px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--red);animation:bkspin .8s linear infinite}
@keyframes bkspin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.bk-load::before{animation:none}}
@media (max-width:560px){
  .bk{margin:auto 0 0;width:100%;max-width:100%;max-height:92dvh;border-radius:var(--radius) var(--radius) 0 0}
  .bk-head,.bk-body{padding-left:16px;padding-right:16px}
  .bk-steps{padding-left:16px;padding-right:16px}
}
