/*!
 * FV Simple Booking Calendar — фронт.
 *
 * Две вещи, ради которых здесь такой вид селекторов:
 *
 * 1. Шрифты НЕ задаются вовсе — везде var(--fvsb-font), по умолчанию
 *    равная inherit. Поэтому календарь говорит шрифтом темы сайта: какой бы
 *    шаблон или плагин шрифтов ни стоял, окно выглядит его частью.
 * 2. Все цвета — через CSS-переменные из настроек плагина. Ни одного
 *    захардкоженного акцента: меняется одна опция — перекрашивается всё.
 *
 * Селекторы идут от #fvsb-root: это даёт вес, достаточный, чтобы агрессивная
 * тема не перебила оформление кнопок и полей своими правилами, и при этом
 * обходится почти без !important.
 */.fvsb-open{align-items:center;-webkit-appearance:none;appearance:none;background:var(--fvsb-accent,#f2aa00);border:1px solid var(--fvsb-accent,#f2aa00);border-radius:var(--fvsb-radius,10px);color:var(--fvsb-accent-text,#101113);cursor:pointer;display:inline-flex;font-family:var(--fvsb-font, inherit);font-weight:700;justify-content:center;line-height:1.2;min-height:46px;padding:13px 26px;text-decoration:none;transition:background-color 180ms,border-color 180ms}.fvsb-open:focus,.fvsb-open:hover{background:var(--fvsb-accent-hover,#cc8d00);border-color:var(--fvsb-accent-hover,#cc8d00);color:var(--fvsb-accent-text,#101113)}#fvsb-root{--fvsb-line:rgba(16, 17, 19, 0.12);--fvsb-soft:rgba(16, 17, 19, 0.55);font-family:var(--fvsb-font, inherit);inset:0;position:fixed;z-index:999999}#fvsb-root[hidden]{display:none}#fvsb-root .fvsb-backdrop{background:rgba(16,17,19,.72);inset:0;position:absolute}#fvsb-root .fvsb-modal{background:var(--fvsb-surface,#fff);border-radius:var(--fvsb-modal-radius,18px);box-shadow:0 28px 80px rgba(0,0,0,.32);box-sizing:border-box;color:var(--fvsb-ink,#101113);left:50%;max-height:calc(100vh - 40px);overflow:auto;padding:38px 38px 34px;position:absolute;top:50%;transform:translate(-50%,-50%);width:min(calc(100vw - 32px),560px)}#fvsb-root .fvsb-modal *,#fvsb-root .fvsb-modal ::after,#fvsb-root .fvsb-modal ::before{box-sizing:border-box}#fvsb-root .fvsb-modal button,#fvsb-root .fvsb-modal input,#fvsb-root .fvsb-modal select,#fvsb-root .fvsb-modal textarea{font-family:var(--fvsb-font, inherit);font-size:inherit}#fvsb-root button.fvsb-close{-webkit-appearance:none;appearance:none;background:var(--fvsb-muted,#f7f6f2);border:1px solid var(--fvsb-line);border-radius:999px;cursor:pointer;height:40px;left:auto;margin:0;min-height:40px;min-width:40px;padding:0;position:absolute;right:16px;top:16px;transition:background-color 180ms;width:40px;z-index:3}#fvsb-root button.fvsb-close:focus,#fvsb-root button.fvsb-close:hover{background:var(--fvsb-accent-soft,rgba(242,170,0,.14));outline:0}#fvsb-root .fvsb-close::after,#fvsb-root .fvsb-close::before{background:var(--fvsb-ink,#101113);border-radius:2px;content:"";height:2px;left:11px;position:absolute;top:18px;width:16px}#fvsb-root .fvsb-close::before{transform:rotate(45deg)}#fvsb-root .fvsb-close::after{transform:rotate(-45deg)}#fvsb-root .fvsb-eyebrow{color:var(--fvsb-accent,#f2aa00);display:block;font-size:.75em;font-weight:700;letter-spacing:.04em;margin-bottom:8px;text-transform:uppercase}#fvsb-root .fvsb-title{color:var(--fvsb-ink,#101113);font-size:1.7em;font-weight:700;line-height:1.15;margin:0 0 10px;padding:0}#fvsb-root .fvsb-intro{color:var(--fvsb-soft);font-size:.95em;line-height:1.55;margin:0;padding:0}#fvsb-root .fvsb-steps{display:flex;gap:8px;list-style:none;margin:24px 0 22px;padding:0}#fvsb-root .fvsb-steps__item{flex:1 1 0;list-style:none;margin:0;min-width:0;padding:0}#fvsb-root .fvsb-steps__item::before,#fvsb-root .fvsb-steps__item::marker{content:none}#fvsb-root button.fvsb-steps__btn{align-items:center;-webkit-appearance:none;appearance:none;background:var(--fvsb-muted,#f7f6f2);border:1px solid transparent;border-radius:var(--fvsb-radius,10px);color:var(--fvsb-soft);cursor:default;display:flex;gap:10px;margin:0;min-height:54px;padding:8px 10px;text-align:left;transition:background-color 220ms,border-color 220ms,color 220ms;width:100%}#fvsb-root .fvsb-steps__num{align-items:center;background:var(--fvsb-surface,#fff);border:1px solid var(--fvsb-line);border-radius:999px;color:inherit;display:inline-flex;flex:0 0 30px;font-size:.85em;font-weight:700;height:30px;justify-content:center;transition:background-color 220ms,border-color 220ms,color 220ms;width:30px}#fvsb-root .fvsb-steps__text{display:flex;flex-direction:column;min-width:0}#fvsb-root .fvsb-steps__caption{font-size:.68em;letter-spacing:.04em;line-height:1.3;text-transform:uppercase}#fvsb-root .fvsb-steps__label{font-size:.86em;font-weight:700;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#fvsb-root .fvsb-steps__item.is-done button.fvsb-steps__btn{background:var(--fvsb-accent-soft,rgba(242,170,0,.14));color:var(--fvsb-ink,#101113);cursor:pointer}#fvsb-root .fvsb-steps__item.is-done .fvsb-steps__num{border-color:var(--fvsb-accent,#f2aa00);color:var(--fvsb-ink,#101113)}#fvsb-root .fvsb-steps__item.is-active button.fvsb-steps__btn{background:var(--fvsb-accent,#f2aa00);border-color:var(--fvsb-accent,#f2aa00);color:var(--fvsb-accent-text,#101113)}#fvsb-root .fvsb-steps__item.is-active .fvsb-steps__num{background:var(--fvsb-surface,#fff);border-color:var(--fvsb-surface,#fff);color:var(--fvsb-ink,#101113)}#fvsb-root .fvsb-form{margin:0;padding:0}#fvsb-root .fvsb-stage{overflow:hidden;position:relative;transition:height var(--fvsb-anim, 380ms) cubic-bezier(.22, .61, .36, 1)}#fvsb-root .fvsb-screen{left:0;opacity:0;pointer-events:none;position:absolute;top:0;transform:translateX(46px);transition:opacity var(--fvsb-anim, 380ms) ease,transform var(--fvsb-anim, 380ms) cubic-bezier(.22, .61, .36, 1);visibility:hidden;width:100%}#fvsb-root .fvsb-screen.is-active{opacity:1;pointer-events:auto;transform:none;visibility:visible}#fvsb-root .fvsb-screen.is-leaving{opacity:0;transform:translateX(-46px);visibility:visible}#fvsb-root .fvsb-stage.is-back .fvsb-screen{transform:translateX(-46px)}#fvsb-root .fvsb-stage.is-back .fvsb-screen.is-active{transform:none}#fvsb-root .fvsb-stage.is-back .fvsb-screen.is-leaving{transform:translateX(46px)}#fvsb-root .fvsb-calendar-head{align-items:center;display:flex;gap:10px;justify-content:space-between;margin:0 0 14px}#fvsb-root .fvsb-month{font-size:1.05em;font-weight:700;text-align:center;text-transform:capitalize}#fvsb-root button.fvsb-nav{-webkit-appearance:none;appearance:none;background:var(--fvsb-muted,#f7f6f2);border:1px solid var(--fvsb-line);border-radius:999px;cursor:pointer;flex:0 0 40px;height:40px;margin:0;min-height:40px;min-width:40px;padding:0;position:relative;transition:background-color 180ms;width:40px}#fvsb-root button.fvsb-nav:focus,#fvsb-root button.fvsb-nav:hover{background:var(--fvsb-accent-soft,rgba(242,170,0,.14));outline:0}#fvsb-root button.fvsb-nav:disabled{cursor:not-allowed;opacity:.4}#fvsb-root .fvsb-nav::before{border-color:var(--fvsb-ink,#101113);border-style:solid;border-width:0 2px 2px 0;content:"";height:9px;left:50%;position:absolute;top:50%;width:9px}#fvsb-root .fvsb-nav--prev::before{transform:translate(-35%,-50%) rotate(135deg)}#fvsb-root .fvsb-nav--next::before{transform:translate(-62%,-50%) rotate(-45deg)}#fvsb-root .fvsb-grid,#fvsb-root .fvsb-weekdays{display:grid;gap:6px;grid-template-columns:repeat(7,minmax(0,1fr))}#fvsb-root .fvsb-weekdays{margin-bottom:6px}#fvsb-root .fvsb-weekdays span{color:var(--fvsb-soft);font-size:.72em;font-weight:700;text-align:center;text-transform:uppercase}#fvsb-root button.fvsb-day{-webkit-appearance:none;appearance:none;background:var(--fvsb-muted,#f7f6f2);border:1px solid transparent;border-radius:var(--fvsb-radius,10px);color:var(--fvsb-ink,#101113);cursor:pointer;font-size:.92em;font-weight:700;height:48px;margin:0;padding:0;position:relative;transition:background-color 160ms,border-color 160ms,color 160ms;width:100%}#fvsb-root button.fvsb-day:focus,#fvsb-root button.fvsb-day:hover{background:var(--fvsb-accent-soft,rgba(242,170,0,.14));border-color:var(--fvsb-accent,#f2aa00);outline:0}#fvsb-root button.fvsb-day.is-selected{background:var(--fvsb-accent,#f2aa00);border-color:var(--fvsb-accent,#f2aa00);color:var(--fvsb-accent-text,#101113)}#fvsb-root button.fvsb-day.is-disabled,#fvsb-root button.fvsb-day.is-disabled:focus,#fvsb-root button.fvsb-day.is-disabled:hover{background:0 0;border-color:transparent;color:rgba(16,17,19,.28);cursor:help}#fvsb-root button.fvsb-day.is-today.is-disabled::after{content:none}#fvsb-root button.fvsb-day.is-today::after{background:var(--fvsb-accent,#f2aa00);border-radius:999px;bottom:6px;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:4px}#fvsb-root .fvsb-spacer{min-height:48px}#fvsb-root .fvsb-tip{background:var(--fvsb-muted,#f7f6f2);border-left:3px solid var(--fvsb-accent,#f2aa00);border-radius:var(--fvsb-radius,10px);color:var(--fvsb-ink,#101113);font-size:.85em;line-height:1.5;margin:14px 0 0;padding:11px 13px}#fvsb-root .fvsb-tip[hidden]{display:none}#fvsb-root .fvsb-loading{color:var(--fvsb-soft);font-size:.9em;grid-column:1/-1;padding:24px 0;text-align:center}#fvsb-root .fvsb-recap{align-items:center;background:var(--fvsb-muted,#f7f6f2);border-radius:var(--fvsb-radius,10px);display:flex;gap:12px;margin-bottom:16px;padding:10px 12px}#fvsb-root button.fvsb-back{-webkit-appearance:none;appearance:none;background:var(--fvsb-surface,#fff);border:1px solid var(--fvsb-line);border-radius:var(--fvsb-radius,10px);color:var(--fvsb-ink,#101113);cursor:pointer;flex:0 0 auto;font-size:.82em;font-weight:700;margin:0;min-height:34px;padding:7px 14px;transition:background-color 160ms}#fvsb-root button.fvsb-back:focus,#fvsb-root button.fvsb-back:hover{background:var(--fvsb-accent-soft,rgba(242,170,0,.14));outline:0}#fvsb-root .fvsb-recap__value{color:var(--fvsb-ink,#101113);font-size:.9em;font-weight:700;line-height:1.35;min-width:0}#fvsb-root .fvsb-times{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}#fvsb-root button.fvsb-time{-webkit-appearance:none;appearance:none;background:var(--fvsb-muted,#f7f6f2);border:1px solid transparent;border-radius:var(--fvsb-radius,10px);color:var(--fvsb-ink,#101113);cursor:pointer;font-size:.88em;font-weight:700;margin:0;min-height:46px;padding:11px 8px;text-align:center;transition:background-color 160ms,border-color 160ms,color 160ms;width:100%}#fvsb-root button.fvsb-time:focus,#fvsb-root button.fvsb-time:hover{background:var(--fvsb-accent-soft,rgba(242,170,0,.14));border-color:var(--fvsb-accent,#f2aa00);outline:0}#fvsb-root button.fvsb-time.is-selected{background:var(--fvsb-accent,#f2aa00);border-color:var(--fvsb-accent,#f2aa00);color:var(--fvsb-accent-text,#101113)}#fvsb-root button.fvsb-time:disabled,#fvsb-root button.fvsb-time:disabled:hover{background:0 0;border-color:var(--fvsb-line);color:rgba(16,17,19,.45);cursor:not-allowed;text-decoration:none}#fvsb-root button.fvsb-time.is-past:disabled{color:rgba(16,17,19,.3);text-decoration:line-through}#fvsb-root button.fvsb-time.is-pending:disabled,#fvsb-root button.fvsb-time.is-pending:disabled:hover{background:var(--fvsb-accent-soft,rgba(242,170,0,.14));border-color:transparent;color:var(--fvsb-ink,#101113);font-size:.82em}#fvsb-root button.fvsb-time.is-busy:disabled,#fvsb-root button.fvsb-time.is-busy:disabled:hover{background:var(--fvsb-muted,#f7f6f2);border-color:transparent;font-size:.82em}#fvsb-root .fvsb-fields{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}#fvsb-root label.fvsb-field{display:flex;flex-direction:column;gap:6px;margin:0;min-width:0}#fvsb-root .fvsb-error,#fvsb-root .fvsb-fields button.fvsb-submit,#fvsb-root label.fvsb-field--wide{grid-column:1/-1}#fvsb-root .fvsb-field__label{color:var(--fvsb-ink,#101113);font-size:.8em;font-weight:700}#fvsb-root .fvsb-req{color:var(--fvsb-accent,#f2aa00);margin-left:3px}#fvsb-root .fvsb-fields input,#fvsb-root .fvsb-fields textarea{-webkit-appearance:none;appearance:none;background:var(--fvsb-surface,#fff);border:1px solid var(--fvsb-line);border-radius:var(--fvsb-radius,10px);box-shadow:none;color:var(--fvsb-ink,#101113);font-size:.95em;margin:0;min-height:44px;padding:11px 13px;width:100%}#fvsb-root .fvsb-fields textarea{min-height:96px;resize:vertical}#fvsb-root .fvsb-fields input:focus,#fvsb-root .fvsb-fields textarea:focus{border-color:var(--fvsb-accent,#f2aa00);box-shadow:0 0 0 3px var(--fvsb-accent-ring,rgba(242,170,0,.28));outline:0}#fvsb-root .fvsb-fields input.is-invalid,#fvsb-root .fvsb-fields textarea.is-invalid{border-color:#d64545}#fvsb-root .fvsb-error{background:rgba(214,69,69,.08);border-left:3px solid #d64545;border-radius:var(--fvsb-radius,10px);color:#a12b2b;font-size:.85em;line-height:1.5;margin:0;padding:10px 12px}#fvsb-root .fvsb-error[hidden]{display:none}#fvsb-root .fvsb-hp{height:0;left:-9999px;opacity:0;overflow:hidden;position:absolute;width:0}#fvsb-root button.fvsb-submit{-webkit-appearance:none;appearance:none;background:var(--fvsb-accent,#f2aa00);border:1px solid var(--fvsb-accent,#f2aa00);border-radius:var(--fvsb-radius,10px);color:var(--fvsb-accent-text,#101113);cursor:pointer;font-size:1.17em;font-weight:700;margin:4px 0 0;min-height:54px;opacity:1;padding:14px 24px;position:relative;transition:background-color 180ms,border-color 180ms;width:100%}#fvsb-root button.fvsb-submit:focus,#fvsb-root button.fvsb-submit:hover{background:var(--fvsb-accent-hover,#cc8d00);border-color:var(--fvsb-accent-hover,#cc8d00);color:var(--fvsb-accent-text,#101113);outline:0}#fvsb-root button.fvsb-submit.is-loading{color:transparent;cursor:wait}#fvsb-root button.fvsb-submit.is-loading::after{animation:720ms linear infinite fvsb-spin;border:3px solid rgba(16,17,19,.25);border-radius:999px;border-top-color:var(--fvsb-accent-text,#101113);content:"";height:20px;left:50%;margin:-10px 0 0 -10px;position:absolute;top:50%;width:20px}@keyframes fvsb-spin{to{transform:rotate(360deg)}}#fvsb-root .fvsb-done{padding:20px 0 6px;text-align:center}#fvsb-root .fvsb-done[hidden],#fvsb-root .fvsb-head[hidden]{display:none}#fvsb-root .fvsb-done__mark{background:var(--fvsb-accent,#f2aa00);border-radius:999px;display:inline-block;height:56px;margin-bottom:18px;position:relative;width:56px}#fvsb-root .fvsb-done__mark::after{border-color:var(--fvsb-accent-text,#101113);border-style:solid;border-width:0 3px 3px 0;content:"";height:22px;left:50%;position:absolute;top:46%;transform:translate(-50%,-50%) rotate(45deg);width:12px}#fvsb-root .fvsb-done__title{color:var(--fvsb-ink,#101113);font-size:1.4em;font-weight:700;line-height:1.2;margin:0 0 10px;padding:0}#fvsb-root .fvsb-done__text{color:var(--fvsb-soft);font-size:.95em;line-height:1.55;margin:0 0 22px;padding:0}@media (max-width:600px){#fvsb-root .fvsb-modal{max-height:calc(100vh - 20px);padding:30px 18px 24px;width:calc(100vw - 18px)}#fvsb-root .fvsb-title{font-size:1.4em}#fvsb-root .fvsb-steps{gap:5px;margin:20px 0 18px}#fvsb-root button.fvsb-steps__btn{flex-direction:column;gap:5px;min-height:62px;padding:8px 4px;text-align:center}#fvsb-root .fvsb-steps__num{flex:0 0 26px;height:26px;width:26px}#fvsb-root .fvsb-steps__caption{display:none}#fvsb-root .fvsb-steps__label{font-size:.78em}#fvsb-root .fvsb-grid,#fvsb-root .fvsb-weekdays{gap:4px}#fvsb-root .fvsb-spacer,#fvsb-root button.fvsb-day{height:42px;min-height:42px}#fvsb-root .fvsb-fields,#fvsb-root .fvsb-times{grid-template-columns:1fr}#fvsb-root button.fvsb-close{right:10px;top:10px}}@media (prefers-reduced-motion:reduce){#fvsb-root .fvsb-screen,#fvsb-root .fvsb-stage{transition-duration:1ms}}