/* 02/10/26: bookings and inductions (member area box #mBook + staff tab #staffBookings). Uses the site's tokens. */
#mBook,#staffBookings{min-width:0}
#mBook h3,#staffBookings h3{font-family:'NeverMind',sans-serif;font-weight:700}
.bk-link{background:none;border:0;padding:0;color:var(--red);text-decoration:underline;cursor:pointer;font:inherit}
.bk-wait{opacity:.55;cursor:progress}
.btn[disabled]{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}

/* rows shared by both screens: text on the left, actions on the right, wrap on small screens */
.bk-slot,.bk-b,.bk-it,.bk-mem{display:flex;gap:8px 14px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:12px;min-width:0}
.bk-slot .tx,.bk-b .tx,.bk-it .tx,.bk-mem .tx{flex:1 1 200px;min-width:0;display:grid;gap:2px}
.bk-slot .tx b,.bk-b .tx b,.bk-it .tx b,.bk-mem .tx b{font-family:'NeverMind',sans-serif;overflow-wrap:anywhere}
.bk-slot .tx span,.bk-b .tx span,.bk-it .tx>span,.bk-mem .tx span{font-size:13px;color:var(--muted);overflow-wrap:anywhere}
.bk-slot .tx .nt,.bk-it .tx .nt{color:var(--ink2);font-style:italic}
.bk-slot .ac,.bk-b .ac,.bk-it .ac{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.bk-b.dim,.bk-it.dim{opacity:.6}
#mBook .tag,#staffBookings .tag{white-space:nowrap}
.bk-b .tx a{color:inherit}

/* ---------- member ---------- */
.bk-ind{background:var(--moss-lt);border-radius:14px;padding:16px;display:grid;gap:10px}
.bk-ind h3{font-size:18px;color:var(--moss)}
.bk-ind>p{font-size:15px;color:var(--carbon)}
.bk-ind .bk-slot{border-color:rgba(76,91,74,.25)}
.bk-ind .bk-slot.mine .tx b{color:var(--moss)}
.bk-form{display:grid;gap:12px;min-width:0}
.bk-form h3{font-size:18px}
#mBook .bk-form{border-top:1px solid var(--line);padding-top:16px}
#mBook .bk-ind+.bk-form,#mBook .bk-just+.bk-form{border-top:0;padding-top:0}
.bk-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;min-width:0}
.bk-row[hidden]{display:none}
.bk-dyn{display:contents}
.bk-foot{grid-column:1/-1;display:grid;gap:10px}
.bk-inote{font-size:13.5px;color:var(--ink2);margin-top:-4px}
.bk-inote b{color:var(--red);font-family:'NeverMind',sans-serif}
.bk-taken{font-size:13px;color:var(--ink2);background:var(--warm2);border-radius:10px;padding:8px 12px}
.bk-taken span{color:var(--muted)}
.bk-warn{font-size:13px;color:var(--red)}
.bk-total{display:flex;align-items:baseline;gap:4px 10px;flex-wrap:wrap;border-top:1px dashed var(--line);padding-top:10px}
.bk-total span{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.bk-total b{font-family:'NeverMind',sans-serif;font-size:22px;color:var(--carbon)}
.bk-total small{font-size:12.5px;color:var(--muted)}
.bk-go{justify-self:start}
.bk-just{border:1.5px solid var(--moss);background:#fff;border-radius:14px;padding:16px;display:grid;gap:10px;outline:none}
.bk-jh{display:flex;justify-content:space-between;align-items:center}
.bk-jh .label{color:var(--moss)}
.bk-x{background:none;border:0;font-size:24px;line-height:1;cursor:pointer;color:var(--muted);width:36px;height:36px;border-radius:50%}
.bk-x:hover{background:var(--warm2);color:var(--carbon)}
.bk-jt{font-family:'NeverMind',sans-serif;font-size:20px}
.bk-dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px 14px;margin:0}
.bk-dl dt{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.bk-dl dd{margin:0;font-size:14.5px;overflow-wrap:anywhere}
.bk-pay{justify-self:start;font-size:17px;padding:14px 34px}
.bk-mine{display:grid;gap:10px;border-top:1px solid var(--line);padding-top:16px}
.bk-mine h3{font-size:18px}
.bk-mine .bk-b:first-of-type{border-top:0;padding-top:0}

/* ---------- staff ---------- */
.bk-sgrid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:18px;align-items:start}
.bk-side{display:grid;gap:18px;min-width:0}
.bk-items{grid-column:1/-1}
.sa .bk-sec{display:grid;gap:12px;padding:18px}
.sa .bk-sec h2{font-size:18px;margin:0;flex-wrap:wrap}
.sa .bk-sec h2 .mnote{font-family:'Akt',sans-serif;font-weight:400}
.bk-sh{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.bk-tog{font-size:13px;color:var(--muted)}
.bk-day{display:grid;gap:10px}
.bk-day+.bk-day{margin-top:8px}
.bk-day h3{font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--red);padding-bottom:6px;border-bottom:2px solid var(--carbon)}
.bk-day .bk-b:first-of-type{border-top:0;padding-top:0}
.bk-slotf{background:var(--warm);border-radius:12px;padding:14px}
.bk-slot.past{opacity:.75}
.bk-slot .tag{vertical-align:middle;margin-left:4px}
.bk-ppl{list-style:none;margin:0;padding:0;flex:1 1 100%;display:grid;gap:6px}
.bk-ppl li{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;background:var(--warm);border-radius:10px;padding:6px 6px 6px 12px;font-size:13.5px}
.bk-mems{display:grid;gap:0;max-height:440px;overflow:auto;padding-right:4px}
.bk-mem{padding-block:10px}
.bk-mem:first-child{border-top:0}
.bk-mem[hidden]{display:none}
.bk-seg{display:inline-flex;border:1.5px solid var(--carbon);border-radius:30px;overflow:hidden;flex-shrink:0}
.bk-seg button{border:0;background:transparent;padding:6px 12px;font-family:'NeverMind',sans-serif;font-weight:700;font-size:12.5px;cursor:pointer;color:var(--carbon);min-height:32px}
.bk-seg button+button{border-left:1.5px solid var(--carbon)}
.bk-seg button.on[data-v="1"]{background:var(--moss);color:#fff}
.bk-seg button.on[data-v="0"]{background:var(--carbon);color:var(--warm)}
.bk-tags{display:flex;gap:4px;flex-wrap:wrap;margin:2px 0}
.bk-noly{color:var(--red)!important}
.bk-it.editing{display:block;border:1.5px solid var(--carbon);border-radius:14px;padding:16px;background:#fff}
.bk-items>.bk-it.editing:first-of-type{margin-top:0}
.bk-itf .hint{margin-top:-4px}
.bk-btns{display:flex;gap:8px;flex-wrap:wrap}
.bk-rm:hover{background:var(--red)!important;border-color:var(--red)!important;color:#fff!important}

@media (max-width:1020px){.bk-sgrid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:600px){
  .bk-slot .ac,.bk-b .ac,.bk-it .ac{width:100%}
  .bk-b .ac .tag{flex-basis:100%;max-width:max-content}
  .bk-pay{justify-self:stretch;justify-content:center}
  .bk-go{justify-self:stretch;justify-content:center}
  .bk-mems{max-height:none;overflow:visible;padding-right:0}
  .sa .bk-sec{padding:14px}
  .bk-it.editing{padding:12px}
  .bk-slotf{padding:12px}
  .bk-row{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}
}
/* date and time fields never wider than their column (Safari/Chrome date inputs have a large minimum width) */
.bk-row>*{min-width:0}.bk-row input,.bk-row select{width:100%;min-width:0;max-width:100%;box-sizing:border-box}
.bk-row input[type=date],.bk-row input[type=time]{-webkit-appearance:none;appearance:none;min-height:44px}
.bk-row input[type=date]{padding-left:12px;padding-right:10px}
@media (max-width:600px){#mBook .bk-row{grid-template-columns:1fr 1fr}#mBook .bk-row>.f:first-child{grid-column:1/-1}}
