/* NordSur - varauskalenteri (booker propio) */
.bk{max-width:760px;margin-inline:auto}
.bk-status{min-height:1.2em;margin:0 0 1rem;color:var(--muted,#5a627a);font-size:.95rem}
.bk-status.err{color:#c0392b}

.bk-step{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--accent,#001fcc);margin:0 0 .5rem}

.bk-days{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1.3rem}
.bk-day{appearance:none;cursor:pointer;border:1px solid rgba(20,30,60,.16);background:#fff;color:inherit;
  padding:.55rem .85rem;border-radius:12px;font:inherit;font-size:.9rem;line-height:1.15;text-transform:capitalize;
  transition:border-color .15s ease,background .15s ease,transform .15s ease}
.bk-day:hover{border-color:var(--accent,#001fcc);transform:translateY(-1px)}
.bk-day.is-active{background:var(--accent,#001fcc);border-color:var(--accent,#001fcc);color:#fff}

.bk-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:.55rem;margin:0 0 1.6rem}
.bk-slot{appearance:none;cursor:pointer;border:1px solid rgba(20,30,60,.16);background:#fff;color:inherit;
  padding:.6rem .4rem;border-radius:10px;font:inherit;font-weight:600;font-size:.95rem;
  transition:border-color .15s ease,background .15s ease,transform .15s ease}
.bk-slot:hover{border-color:var(--accent,#001fcc);transform:translateY(-1px)}
.bk-slot.is-active{background:var(--accent,#001fcc);border-color:var(--accent,#001fcc);color:#fff}

.bk-form{border-top:1px solid rgba(20,30,60,.12);padding-top:1.4rem;margin-top:.4rem}
.bk-chosen-wrap{display:flex;align-items:center;gap:.6rem;background:rgba(0,31,204,.06);
  border:1px solid rgba(0,31,204,.16);border-radius:12px;padding:.7rem .95rem;margin:0 0 1.2rem;font-weight:600}
.bk-chosen-wrap svg{width:20px;height:20px;flex-shrink:0;color:var(--accent,#001fcc)}
.bk-chosen{text-transform:capitalize}

.bk-channel{display:flex;flex-wrap:wrap;gap:.5rem;margin:.2rem 0 1.1rem}
.bk-channel input{position:absolute;opacity:0;pointer-events:none}
.bk-channel label{cursor:pointer;border:1px solid rgba(20,30,60,.16);border-radius:999px;padding:.45rem .95rem;
  font-size:.9rem;transition:border-color .15s ease,background .15s ease}
.bk-channel input:checked+label{border-color:var(--accent,#001fcc);background:rgba(0,31,204,.08);font-weight:600}
.bk-channel input:focus-visible+label{outline:2px solid var(--accent,#001fcc);outline-offset:2px}

.bk-done{text-align:center;background:#fff;border:1px solid rgba(20,30,60,.12);border-radius:16px;
  padding:2.2rem 1.4rem;box-shadow:0 16px 40px rgba(20,30,60,.08)}
.bk-done__check{width:56px;height:56px;border-radius:50%;background:rgba(46,157,95,.14);color:#2b9d5f;
  display:inline-flex;align-items:center;justify-content:center;margin:0 0 1rem}
.bk-done__check svg{width:30px;height:30px}
.bk-done h2{margin:0 0 .5rem}
.bk-when{display:inline-block;font-weight:700;color:var(--accent,#001fcc);margin:.3rem 0 .2rem;text-transform:capitalize}

@media(max-width:520px){
  .bk-slots{grid-template-columns:repeat(auto-fill,minmax(72px,1fr))}
}
