/* ===== رزرو نوبت: انتخاب روز و ساعت ===== */
.booking .calc-body{margin-top:56px}
.booking .opts{margin-top:20px}
.group-title small{margin-inline-start:6px;font:400 14px/21px var(--fa-num);color:var(--gray)}
.group-title.with-nav{display:flex;align-items:center;justify-content:space-between}
.days-nav{display:flex}
.days-nav button{display:grid;place-items:center;width:42px;height:30px;border:1px solid var(--ink);border-radius:100px;transition:border-color .3s,opacity .3s}
.days-nav button+button{margin-right:-1px}
.days-nav svg{width:16px;height:16px}
.days-nav button:hover:not(:disabled){border-color:var(--yellow)}
.days-nav button:hover:not(:disabled) path{stroke:var(--yellow)}
.days-nav button:disabled{opacity:.3;cursor:default}

/* روزها */
.days{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:4px 2px 14px;scrollbar-width:none}
.days::-webkit-scrollbar{display:none}
.day{flex:0 0 92px;height:108px;scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  border:1px solid #E6E6E6;border-radius:20px;background:#fff;transition:border-color .3s,transform .3s,box-shadow .3s}
.day .wd{font:500 13px/20px var(--fa);color:var(--gray)}
.day .dn{font:700 28px/36px var(--fa-num);color:var(--ink)}
.day .mn{font:500 13px/20px var(--fa);color:var(--gray)}
.day:hover:not(:disabled){border-color:var(--yellow)}
.day.active{border-color:transparent;background:linear-gradient(90deg,#FCB814 0%,#FDF997 100%);box-shadow:0 10px 24px -12px rgba(244,184,20,.9)}
.day.active .wd,.day.active .mn{color:var(--ink)}
.day:disabled{cursor:default;opacity:.45}
.day .full{font:500 11px/16px var(--fa);color:#E5484D}

/* ساعت‌ها */
.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:10px}
.slot{height:46px;border:1px solid #E6E6E6;border-radius:100px;background:#fff;font:600 16px/24px var(--fa-num);color:var(--ink);transition:.3s}
.slot:hover:not(:disabled){border-color:var(--yellow)}
.slot.active{border-color:#181304;background:#181304;color:#fff;box-shadow:0 12px 18px -6px rgba(0,0,0,.3)}
.slot:disabled{cursor:not-allowed;background:#F7F7F7;color:#B5B5BA;text-decoration:line-through}
.slots-empty{padding:16px;border-radius:16px;background:#FFF8E1;font:400 14px/22px var(--fa);color:var(--ink)}
#slot-err{display:block;min-height:18px;margin-top:6px;font:400 12px/18px var(--fa);color:#E5484D}
.booking .fields{margin-top:14px}

/* تاریک */
html.theme-dark .day,html.theme-dark .slot{background:#242424;border-color:#333}
html.theme-dark .day .dn,html.theme-dark .slot{color:#fff}
html.theme-dark .day.active .dn{color:var(--ink)}
html.theme-dark .slot:disabled{background:#1d1d1d;color:#666}
html.theme-dark .days-nav button{border-color:#fff}
html.theme-dark .days-nav path{stroke:#fff}

@media (max-width:700px){
  .day{flex-basis:80px;height:98px}
  .slots{grid-template-columns:repeat(3,minmax(0,1fr))}
}

html[dir=ltr] .days-nav svg{transform:scaleX(-1)}
