.fm-jalali-control{--calendar-accent:var(--fm-primary,#7052e8);--calendar-ink:var(--fm-ink,#252139);position:relative;direction:rtl;width:100%;font-family:inherit;color:var(--calendar-ink)}
.fm-jalali-original{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;padding:0!important;pointer-events:none!important;overflow:hidden!important}
.fm-jalali-control button,.fm-jalali-control select{font-family:inherit;font-size:13px;line-height:1.7;cursor:pointer}
.fm-jalali-control .fm-jalali-trigger{display:flex;align-items:center;gap:10px;width:100%;min-height:48px;background:var(--fm-bg,#faf9fe);color:var(--calendar-ink);border:1px solid var(--fm-border,#e4dfef);border-radius:var(--fm-radius-sm,12px);padding:10px 14px;text-align:right}
.fm-jalali-icon{display:grid;place-items:center;flex-shrink:0;width:30px;height:30px;border-radius:8px;background:color-mix(in srgb,var(--calendar-accent) 10%,white);color:var(--calendar-accent)}.fm-jalali-icon svg{width:20px;height:20px}.fm-jalali-label{flex:1}.fm-jalali-label.is-placeholder{color:#8a8598}.fm-jalali-chevron{display:grid;place-items:center;width:20px;height:20px;flex-shrink:0;color:#8a8598;transition:transform .18s}.fm-jalali-chevron svg{width:18px;height:18px}.fm-jalali-trigger[aria-expanded=true] .fm-jalali-chevron{transform:rotate(180deg)}
.fm-jalali-control.is-open{z-index:50}.fm-flow .fm-step.fm-calendar-open{position:relative;z-index:50;overflow:visible}.fm-flow .fm-field-group.fm-calendar-open{position:relative;z-index:50}
.fm-jalali-control .fm-jalali-panel{position:absolute;top:calc(100% + 10px);inset-inline-start:0;z-index:50;margin:0;padding:18px;box-sizing:border-box;width:min(100%,420px);background:#fff;border:1px solid var(--fm-border,#e4dfef);border-radius:18px;box-shadow:0 14px 38px #25213914;animation:fm-calendar-in .18s ease-out}
.fm-jalali-panel[hidden]{display:none!important}.fm-jalali-header{display:grid;grid-template-columns:32px 1fr 90px 32px;align-items:center;gap:8px;margin-bottom:16px}.fm-jalali-control .fm-jalali-header select{padding:6px!important;min-height:34px!important;width:100%;border:0!important;background:#f6f5fa!important;border-radius:8px;text-align:center;box-shadow:none}
.fm-jalali-control .fm-jalali-header button{border:0;background:#f6f5fa;color:var(--calendar-ink);border-radius:8px;height:32px;font-size:22px;padding:0}.fm-jalali-weekdays,.fm-jalali-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;text-align:center}.fm-jalali-weekdays{margin-bottom:8px;color:#8a8598;font-size:11px}.fm-jalali-weekdays span:last-child{color:#b76565}
.fm-jalali-control .fm-jalali-day{border:0;background:transparent;color:var(--calendar-ink);padding:8px 0;min-height:38px;border-radius:10px;position:relative}.fm-jalali-control .fm-jalali-day:hover:enabled{background:color-mix(in srgb,var(--calendar-accent) 9%,white)}.fm-jalali-control .fm-jalali-day:disabled{color:#d0cdd8;cursor:not-allowed}.fm-jalali-control .fm-jalali-day[aria-current=date]{box-shadow:inset 0 0 0 1px var(--calendar-accent)}.fm-jalali-control .fm-jalali-day[aria-pressed=true]{background:var(--calendar-accent);color:#fff;box-shadow:0 4px 10px color-mix(in srgb,var(--calendar-accent) 25%,transparent)}.fm-jalali-day.has-slots:after{content:'';position:absolute;bottom:4px;left:calc(50% - 2px);width:4px;height:4px;background:var(--calendar-accent);border-radius:50%}.fm-jalali-day[aria-pressed=true].has-slots:after{background:#fff}
.fm-jalali-times{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px}.fm-jalali-time-title{flex-basis:100%;margin:0 0 4px;font-size:12px;color:#827a91}.fm-jalali-control .fm-jalali-times select{width:76px!important;padding:8px!important;border-radius:10px;border:1px solid #e4dfef!important;background:#faf9fe!important;min-height:40px!important}.fm-jalali-control .fm-jalali-slot{padding:7px 14px;border:1px solid #e4dfef;border-radius:9px;background:#fff;color:var(--calendar-ink)}.fm-jalali-control .fm-jalali-slot:hover,.fm-jalali-control .fm-jalali-slot[aria-pressed=true]{border-color:var(--calendar-accent);color:var(--calendar-accent);background:color-mix(in srgb,var(--calendar-accent) 8%,white)}
.fm-jalali-status{font-size:11px;color:#8a8598;line-height:1.8;margin:12px 0 0}.fm-jalali-footer{display:flex;gap:8px;border-top:1px solid #efedf4;padding-top:12px;margin-top:12px}.fm-jalali-control .fm-jalali-footer button{padding:6px 10px;background:transparent;color:var(--calendar-accent);border:0;border-radius:7px}.fm-jalali-control .fm-jalali-footer .fm-jalali-apply{background:var(--calendar-accent);color:#fff;margin-inline-start:auto}.fm-jalali-control :is(button,select):focus-visible{outline:2px solid var(--calendar-accent);outline-offset:2px}
.fm-booking-picker.is-jalali-enhanced{background:transparent!important;border:0!important;padding:0!important}.fm-booking-picker.is-jalali-enhanced>.fm-booking-days,.fm-booking-picker.is-jalali-enhanced>.fm-booking-times,.fm-booking-picker.is-jalali-enhanced>.fm-booking-selected-text{display:none!important}
@keyframes fm-calendar-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.fm-jalali-panel{animation:none!important}}@media(max-width:400px){.fm-jalali-control .fm-jalali-panel{padding:12px}.fm-jalali-header{grid-template-columns:28px 1fr 76px 28px;gap:4px}}
