/* صفحة الحجز */
.bk-section{padding-block:clamp(24px,4vw,48px)}
.bk{display:grid;gap:clamp(20px,3vw,32px);max-width:880px}
.bk-step{border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:clamp(18px,3vw,30px)}
.bk-step[hidden]{display:none}
.bk-step>h2{font-size:1.35rem;display:flex;gap:.6em;align-items:center;margin-block-end:1.1rem}
.bk-n{display:inline-grid;place-items:center;inline-size:1.9em;block-size:1.9em;border-radius:50%;background:var(--sun);border:1.5px solid var(--ink);font-size:.85em}
.bk-tz{color:var(--ink-3);font-size:.95rem;margin-block-end:1rem}
.bk-pick{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:clamp(20px,4vw,40px);align-items:start}
@media(max-width:760px){.bk-pick{grid-template-columns:1fr}}

.cal-head{display:flex;align-items:center;justify-content:space-between;margin-block-end:10px}
.cal-head strong{font-family:var(--f-head);font-size:1.1rem}
.cal-nav{inline-size:40px;block-size:40px;border-radius:50%;border:1.5px solid var(--line);background:var(--paper);font:700 1.3rem/1 var(--f-body);cursor:pointer;color:var(--ink)}
.cal-nav:hover:not(:disabled){background:var(--sun-soft);border-color:var(--ink)}
.cal-nav:disabled{opacity:.35;cursor:default}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.cal-dow{text-align:center;font-size:.72rem;color:var(--ink-3);padding-block:4px;font-weight:600}
.cal-day{aspect-ratio:1;display:grid;place-items:center;border-radius:10px;font:500 .95rem/1 var(--f-body);border:1.5px solid transparent;background:none;color:var(--ink);font-variant-numeric:tabular-nums}
.cal-day.off{color:#B5AE92}
button.cal-day{cursor:pointer;background:var(--forest-soft);border-color:#C9DCC4;font-weight:600}
button.cal-day:hover{border-color:var(--ink)}
.cal-day.sel{background:var(--sun)!important;border-color:var(--ink)!important}
.cal-day.today:not(.sel){box-shadow:inset 0 -3px 0 var(--sun-deep)}

.slot-date{font-weight:600;margin-block-end:.8rem}
.slot-group+.slot-group{margin-block-start:1rem}
.slot-group h3{font-size:.9rem;color:var(--ink-3);font-family:var(--f-body);font-weight:600;margin-block-end:.4rem}
.slot-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}
.slot{padding:.65em .5em;border-radius:10px;border:1.5px solid #CFC6A5;background:#fff;font:600 1rem/1.2 var(--f-body);cursor:pointer;color:var(--ink);font-variant-numeric:tabular-nums}
.slot:hover{border-color:var(--ink);background:var(--sun-soft)}
.slot.sel{background:var(--sun);border-color:var(--ink)}
.bk-empty{color:var(--ink-3)}
.bk-warn{background:#FBE9E5;color:#7A2418;border-radius:10px;padding:.7em 1em;margin-block-end:.8rem}

.bk-sum dl{margin:0 0 1.2rem;display:grid;gap:6px;background:var(--paper-2);border-radius:12px;padding:14px 18px}
.bk-sum dl>div{display:grid;grid-template-columns:5.5em 1fr;gap:10px}
.bk-sum dt{color:var(--ink-3)}
.bk-sum dd{margin:0;font-weight:600}
.ltr{text-align:start}
.field input.ltr::placeholder{text-align:start}
.bk-hp{position:absolute;inset-inline-start:-9999px;block-size:0;overflow:hidden}
.bk-loading{color:var(--ink-3)}
.bk-extra{margin-block-start:2rem}

.done-card{max-width:640px;border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:clamp(22px,4vw,40px);display:grid;gap:14px;justify-items:start}
.done-mark{inline-size:56px;block-size:56px;border-radius:50%;background:var(--forest);color:#fff;display:grid;place-items:center;font-size:1.6rem}
.done-when{font-family:var(--f-head);font-weight:800;font-size:1.3rem;line-height:1.5}
.done-when small{display:block;font:400 .95rem/1.6 var(--f-body);color:var(--ink-3)}
.done-card h2:focus{outline:none}
.linkish{background:none;border:0;padding:0;font:inherit;text-decoration:underline;cursor:pointer;color:inherit}

[hidden]{display:none!important}
