/* =========================================================================
   КАЛЕНДАРЬ
   ========================================================================= */
.cwb-cal-container { background: #fff; border-radius: 12px; padding: 15px; font-family: -apple-system, BlinkMacSystemFont, sans-serif; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.05); user-select: none; }
.cwb-cal-header .cwb-cal-header-actions { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; }

.cwb-cal-title { font-weight: 700; font-size: 16px; color: #1e293b; text-transform: capitalize; }
.cwb-cal-header button { background: #f8fafc; border: 1px solid #e2e8f0; width: 30px; height: 30px; border-radius: 8px; cursor: pointer; color: #475569; display: flex; align-items: center; justify-content: center; transition: 0.2s; }
.cwb-cal-header button:hover { background: #e2e8f0; color: #0f172a; }
.cwb-cal-weekdays { display: grid; grid-template-columns: repeat(7, 1fr); text-align: center; font-size: 12px; color: #94a3b8; font-weight: 600; margin-bottom: 5px; }
.cwb-cal-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 6px; padding-bottom: 20px; }
.cwb-cal-sticky-top { position: sticky !important; top: -1px !important; z-index: 100 !important; background-color: #ffffff !important; padding-top: 10px; margin-bottom: 10px; border-radius: 10px; }
.cwb-cal-weekdays { background-color: transparent !important; }

/* ИСПРАВЛЕНИЕ 1: Меняем transition: all на конкретные свойства и ставим border 2px */
.cwb-cal-cell { 
    display: flex; align-items: center; justify-content: center; 
    height: 33px; border-radius: 8px; font-size: 13px; font-weight: 500; 
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease; 
    box-sizing: border-box; 
    border: 2px solid transparent !important; 
}

.cwb-cal-cell.empty { background: transparent; pointer-events: none; }
.cwb-cal-cell.day { background: #f8fafc; color: #393939; cursor: pointer; touch-action: manipulation !important; }

/* Наведение на день */
/* ИСПРАВЛЕНИЕ 2: Отключаем transform при hover, чтобы он не перебивал анимацию клика */
@media (hover: hover) {
    .cwb-cal-cell.day:not(.disabled):not(.selected):hover { 
        background-color: #ffffff !important; 
        color: #111827 !important; 
        border-color: #6c39ed !important;
        box-shadow: 0 2px 6px rgba(108, 57, 237, 0.18);
        transform: none !important;
    }
}

/* Выделение ближайшего свободного дня */
.cwb-cal-cell.cwb-nearest-free-day { border-color: #6c39ed !important; background-color: #f6f3fe !important; color: #6c39ed !important; }
.cwb-cal-cell.disabled { opacity: 0.35; background: #f1f5f9; text-decoration: line-through; cursor: not-allowed; pointer-events: none; color: #94a3b8; }
.cwb-cal-today { font-size: 12px; color: #6c39ed; cursor: pointer; font-weight: 600; margin-top: 4px; transition: 0.2s; }
.cwb-cal-cell.day.active-view { border-color: #6c39ed !important; z-index: 2; background: #f3edfe; }
.cwb-back-to-month { display: none; width: 100%; text-align: center; font-size: 13px; color: #6c39ed; background: none; border: none; text-decoration: underline; margin-top: 15px; cursor: pointer; }
.cwb-back-to-month:hover { color: #5529c9; }

/* Дизайн: день "Сегодня" со светло-фиолетовым фоном и без рамки. */
.cwb-cal-grid .cwb-cal-cell.is-today {
    background-color: #f6f3fe !important;
    font-weight: 800 !important;
    color: #6c39ed !important;
    position: relative;
    border-color: transparent !important; 
}
.cwb-cal-grid .cwb-cal-cell.is-today::after {
    display: none !important;
}
.cwb-cal-grid .cwb-cal-cell.is-today.cwb-nearest-free-day:not(.selected):not(.has-hours) {
    background-color: #f6f3fe !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

/* Дизайн: Выбранные дни и часы (зеленая рамка + галочка) */
.cwb-cal-cell.selected, .cwb-cal-grid .cwb-cal-cell.has-hours {
    background-color: #ffffff !important;
    color: #6c39ed !important;
    border-color: #6c39ed !important;
    position: relative;
    font-weight: 700 !important;
    box-shadow: 0 2px 6px rgba(108, 57, 237, 0.18);
}
.cwb-cal-cell.selected::before, .cwb-cal-grid .cwb-cal-cell.has-hours::before {
    content: ''; position: absolute; top: -6px; left: -6px; width: 16px; height: 16px; background-color: #6c39ed; border-radius: 50%; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E"); background-size: 10px; background-position: center; background-repeat: no-repeat; border: 2px solid #ffffff; z-index: 5;
}

/* Почасовая: активный день, но часы еще НЕ выбраны */
.cwb-cal-grid.week-mode .cwb-cal-cell.selected:not(.has-hours) { background-color: transparent !important; border-color: #6c39ed !important; color: #6c39ed !important; box-shadow: none; }
.cwb-cal-grid.week-mode .cwb-cal-cell.selected:not(.has-hours)::before { display: none !important; }
.cwb-cal-grid .cwb-cal-cell.is-today.selected,
.cwb-cal-grid .cwb-cal-cell.is-today.has-hours {
    background-color: #ffffff !important;
    color: #6c39ed !important;
    border: 2px solid #6c39ed !important;
    box-shadow: 0 2px 6px rgba(108, 57, 237, 0.18) !important;
}

/* Ближайший свободный день (только в почасовой) */
#cwb-custom-calendar[data-mode="hourly"] .cwb-cal-cell.cwb-nearest-free-day { background-color: #ffffff !important; color: #6c39ed !important; border-color: #6c39ed !important; position: relative; font-weight: 700 !important; box-shadow: 0 2px 6px rgba(108, 57, 237, 0.18) !important; }
#cwb-custom-calendar[data-mode="hourly"] .cwb-cal-cell.cwb-nearest-free-day::before { content: ''; position: absolute; top: -6px; left: -6px; width: 16px; height: 16px; background-color: #6c39ed; border-radius: 50%; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E"); background-size: 10px; background-position: center; background-repeat: no-repeat; border: 2px solid #ffffff; z-index: 5; display: block !important; }
#cwb-custom-calendar[data-mode="hourly"] .cwb-cal-cell.is-today.cwb-nearest-free-day:not(.selected):not(.has-hours) { background-color: #f6f3fe !important; color: #6c39ed !important; border-color: transparent !important; box-shadow: none !important; }
#cwb-custom-calendar[data-mode="hourly"] .cwb-cal-cell.is-today.cwb-nearest-free-day:not(.selected):not(.has-hours)::before { display: none !important; }

/* ИСПРАВЛЕНИЕ 3: Добавляем !important к анимации клика, чтобы она гарантированно перебивала остальные transform */
@keyframes iosTapEffect { 
    0% { transform: scale(1); filter: brightness(1); } 
    50% { transform: scale(0.85); filter: brightness(0.9); } 
    100% { transform: scale(1); filter: brightness(1); } 
}
.cwb-ios-tap { 
    animation: iosTapEffect 0.3s ease-in-out !important; 
}



@keyframes iosSpringLand { 0% { transform: scale(0.95); box-shadow: 0 0 0 rgba(108, 57, 237, 0); background-color: rgba(108, 57, 237, 0.1); } 40% { transform: scale(1.03); box-shadow: 0 12px 35px -5px rgba(108, 57, 237, 0.35); background-color: rgba(108, 57, 237, 0.05); border-radius: 8px; } 100% { transform: scale(1); box-shadow: 0 0 0 rgba(108, 57, 237, 0); background-color: transparent; } }
.cwb-ios-land { animation: iosSpringLand 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) forwards; }

@keyframes iosReturnPop { 0% { transform: scale(1); } 50% { transform: scale(1.12); filter: brightness(1.05); } 100% { transform: scale(1); filter: brightness(1); } }
.cwb-ios-return { animation: iosReturnPop 0.4s cubic-bezier(0.34, 1.56, 0.64, 1); z-index: 2; }

/* =========================================================================
   ЗАЩИТА И МОБИЛЬНЫЕ ПРАВИЛА
   ========================================================================= */
.cwb-cal-cell, .cwb-time-slot { -webkit-tap-highlight-color: transparent !important; outline: none !important; user-select: none !important; }
@media (hover: hover) and (pointer: fine) { .cwb-cal-cell.day:not(.disabled):hover { transform: translateY(-1px); } }
@media (hover: none) {
    .cwb-cal-cell.day:hover { background-color: transparent; }
    .cwb-cal-cell.day.selected:hover { background-color: #ffffff !important; color: #6c39ed !important; border-color: #6c39ed !important; }
    .cwb-cal-cell.day:not(.selected):not(.disabled):hover { background-color: #f8fafc !important; color: inherit !important; border: 1px solid transparent !important; transform: none !important; box-shadow: none !important; }
    .cwb-time-slot:not(.selected):not(.disabled):hover { background-color: #f8fafc !important; color: #475569 !important; border-color: #e2e8f0 !important; box-shadow: none !important; transform: none !important; }
}
.cwb-cal-weekdays div:nth-child(6), .cwb-cal-weekdays div:nth-child(7) { color: #ef4444 !important; font-weight: 600; }
.cwb-cal-grid .cwb-cal-cell:nth-child(7n+6), .cwb-cal-grid .cwb-cal-cell:nth-child(7n+7) { color: #ef4444; }
.cwb-cal-grid .cwb-cal-cell.disabled:nth-child(7n+6), .cwb-cal-grid .cwb-cal-cell.disabled:nth-child(7n+7) { color: #fca5a5 !important; background-color: transparent !important; }

/* =========================================================================
   СТРАНИЦА БРОНИРОВАНИЯ (БЕЗ ФОНА МОДАЛКИ)
   ========================================================================= */
#cwb-booking-page-wrapper #cwb-modal-overlay { display: none !important; }

#cwb-booking-page-wrapper #cwb-modal {
    position: relative !important; top: auto !important; left: auto !important; transform: none !important;
    width: 100% !important; max-width: 800px !important;
    /* margin: 40px auto 80px !important; */
    box-shadow: 0 12px 35px rgba(85, 41, 201, 0.09) !important; border-radius: 24px !important;
    border: 1px solid #e2e8f0 !important; display: block !important; background: #ffffff !important;
    z-index: 1 !important;
}

body.cwb-modal-open { overflow: auto !important; }
#cwb-booking-page-wrapper #cwb-close-modal { display: none !important; }

#cwb-booking-page-wrapper #cwb-modal-header { 
    position: relative; display: flex; min-height: 80px; align-items: center; justify-content: center;
    padding: 20px 34px !important; color: #ffffff; background: linear-gradient(135deg, #6c39ed 0%, #6c39ed 100%) !important;
    padding: 30px 34px !important;
    border-bottom: 0 !important; border-radius: 24px 24px 0 0 !important;
}
#cwb-booking-page-wrapper .cwb-booking-header-copy { display: block; width: 100%; min-width: 0; min-height: 46px; }
#cwb-booking-page-wrapper #cwb-modal-title { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:calc(100% - 156px); font-size:20px !important; font-weight:800 !important; color:#ffffff !important; margin:0; line-height:1.2; letter-spacing:-0.5px; text-align:center; }
#cwb-booking-page-wrapper .cwb-back-btn { 
    position: absolute; z-index: 1; top:50%; left:34px; transform:translateY(-50%); display:inline-flex; align-items:center; justify-content:center; width:48px; height:48px; color:#ffffff !important; background:rgba(255,255,255,.14) !important;
    border: 1px solid rgba(255,255,255,.32) !important; border-radius: 12px; font-weight: 600 !important; padding: 0 !important;
    cursor: pointer; transition: 0.2s !important; font-size: 14px !important; 
}
#cwb-booking-page-wrapper .cwb-back-btn:hover { color:#ffffff !important; border-color:rgba(255,255,255,.7) !important; background:rgba(255,255,255,.24) !important; transform:translate(-3px,-50%); }

#cwb-booking-page-wrapper .cwb-step { height: auto !important; max-height: none !important; padding: 40px !important; background: transparent !important; display: block !important; }
#cwb-booking-page-wrapper .cwb-step-header-fixed { position: static !important; padding: 0 !important; border-bottom: none !important; margin-bottom: 20px !important; background: transparent !important; }
#cwb-booking-page-wrapper .cwb-step-scrollable { position: static !important; max-height: none !important; overflow: visible !important; padding: 0 !important; }

#cwb-booking-page-wrapper .cwb-step-footer {
    position: static !important; background: #ffffff !important; border-top: 1px solid #e2e8f0 !important;
    padding: 30px 40px !important;
    border-radius: 0 0 24px 24px !important;
    /* margin: 40px -40px -40px -40px !important; */
}

#cwb-booking-page-wrapper .cwb-wizard-next-btn {
    background: #6c39ed !important; color: #ffffff !important; border: none !important;
    width: 100% !important; height: 54px !important; border-radius: 14px !important;
    font-size: 16px !important; font-weight: 800 !important; cursor: pointer !important;
    transition: all 0.2s !important; display: flex !important; justify-content: space-between !important; 
    align-items: center !important; padding: 0 24px !important; box-shadow: 0 8px 20px -5px rgba(108, 57, 237, 0.38) !important; margin-top: 12px !important;
    letter-spacing: 0 !important;
}
#cwb-booking-page-wrapper .cwb-wizard-next-btn:hover:not(:disabled) {
    background: #5529c9 !important; transform: translateY(-3px) !important; box-shadow: 0 15px 30px -5px rgba(108, 57, 237, 0.5) !important;
}
#cwb-booking-page-wrapper .cwb-wizard-next-btn:disabled {
    background: #e2e8f0 !important; color: #94a3b8 !important; box-shadow: none !important; cursor: not-allowed !important; transform: none !important;
}

@media (max-width: 600px) {
    #cwb-booking-page-wrapper #cwb-modal { margin: 0 !important; border-radius: 20px !important; border: none !important; }
    #cwb-booking-page-wrapper #cwb-modal-header {
        min-height: 66px;
        padding: 14px 16px !important;
        border-radius: 20px 20px 0 0 !important;
    }
    #cwb-booking-page-wrapper .cwb-booking-header-copy { min-height: 40px; }
    #cwb-booking-page-wrapper #cwb-modal-title {
        width: calc(100% - 120px);
        font-size: 20px !important;
        line-height: 1.15;
    }
    #cwb-booking-page-wrapper .cwb-back-btn {
        left: 16px;
        width: 40px;
        height: 40px;
        border-radius: 10px;
        font-size: 13px !important;
    }
    #cwb-booking-page-wrapper .cwb-step { padding: 20px !important; }
    #cwb-booking-page-wrapper .cwb-step-footer { padding: 20px !important; margin: 30px -20px -20px -20px !important; }
    #cwb-booking-page-wrapper .cwb-wizard-next-btn { padding: 0 20px !important; height: 56px !important; font-size: 16px !important; }
    .cwb-time-grid { grid-template-columns: repeat(3, 1fr); }
    .cwb-time-slot { border-radius: 25px; padding: 3px 5px; }
}

/* =========================================================================
   ПОЧАСОВОЙ ВЫБОР
   ========================================================================= */
.cwb-time-grid-wrapper { margin-top: 10px; }
.cwb-time-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; }
#cwb-time-error { background: #fff3cd; color: #856404; padding: 15px; border-radius: 12px; margin-top: 10px; font-size: 13px; border-left: 4px solid #ffeeba; }
#cwb-clear-daily,
.cwb-clear-time-btn { background: none; border: none; color: #d9534f; font-size: 12px; cursor: pointer; padding: 0; transition: color 0.2s ease; font-weight: 600; outline: none; }
.cwb-clear-time-btn { display: inline-flex; align-items: center; gap: 4px; }
.cwb-clear-time-btn:hover,
#cwb-clear-daily:hover { color: #c9302c; }
.cwb-time-grid { display: grid; grid-template-columns: repeat(8, 1fr); gap: 10px; margin: 0 0 10px; }
.cwb-time-slot { position: relative; background: #f4f4f4; border: 1px solid #e0e0e0; border-radius: 8px; padding: 10px 5px; text-align: center; font-size: 12px; color: #393939; cursor: pointer; transition: all 0.2s ease; user-select: none; }
.cwb-time-slot:not(.cwb-peak-slot):hover:not(.disabled) { background-color: #ffffff !important; border-color: #6c39ed !important; color: #111827 !important; box-shadow: 0 2px 6px rgba(108, 57, 237, 0.18); }
.cwb-time-slot.selected:not(.cwb-peak-slot) { background-color: #ffffff !important; color: #111827 !important; border-color: #6c39ed !important; font-weight: 700; box-shadow: 0 0 0 1px #6c39ed, 0 2px 6px rgba(108, 57, 237, 0.18) !important; }
.cwb-time-slot.selected:not(.cwb-peak-slot)::before { content: ''; position: absolute; top: -5px; left: -5px; width: 14px; height: 14px; background-color: #6c39ed; border-radius: 50%; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E"); background-size: 8px; background-position: center; background-repeat: no-repeat; border: 2px solid #ffffff; z-index: 5; }
.cwb-time-slot.disabled { background: #fafafa; color: #bbb; border-color: #f0f0f0; cursor: not-allowed; text-decoration: line-through; }
.cwb-peak-slot { border-color: #ffc107 !important; background-color: #fffbf0; }
.cwb-peak-slot::after { content: "⚡"; font-size: 10px; }
.cwb-peak-slot.selected { background-color: #ff9800 !important; border-color: #ff9800 !important; color: #fff !important; }
.cwb-time-section-title { font-size: 13px; font-weight: 700; color: #64748b; margin-bottom: 12px; text-transform: uppercase; letter-spacing: 0.5px; border-bottom: 2px solid #f1f5f9; padding-bottom: 6px; display: flex; align-items: center; }
.cwb-time-section-title::before { content: ''; display: inline-block; width: 6px; height: 6px; background-color: #6c39ed; border-radius: 50%; margin-right: 8px; }
.cwb-time-subgrid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; margin-bottom: 7px; }

/* Price captions sit under the date/time; selection checkmarks stay untouched. */
#cwb-custom-calendar[data-mode="daily"] .cwb-cal-cell { height: 52px; }
.cwb-cal-cell.has-price,
#cwb-custom-calendar[data-mode="daily"] .cwb-cal-cell.day {
    display: grid;
    grid-template-rows: repeat(2, minmax(0, 1fr));
    align-items: center;
    justify-items: center;
    gap: 4px;
    height: 52px;
    min-width: 0;
    padding: 5px 1px;
}
.cwb-cal-date-number { line-height: 1.1; }
.cwb-cal-date-price,
.cwb-time-slot-price {
    display: block;
    color: #64748b;
    font-size: 11px;
    line-height: 1.1;
    font-weight: 400;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}
.cwb-cal-cell.selected .cwb-cal-date-price,
.cwb-cal-cell.cwb-nearest-free-day .cwb-cal-date-price,
.cwb-time-slot.selected .cwb-time-slot-price { color: #6c39ed; }
.cwb-time-slot {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-height: 54px;
}
.cwb-time-slot-label { display: block; line-height: 1.15; white-space: nowrap; }
.cwb-time-price-hint { color: #64748b; font-size: 11px; font-weight: 400; }
.cwb-peak-slot::after { position: absolute; top: 3px; right: 4px; }
.cwb-peak-slot.selected .cwb-time-slot-price { color: #fff; }

@media (max-width: 600px) {
}

@media (max-width: 768px) {
    #cwb-booking-page-wrapper .cwb-cal-container { padding: 4px !important; box-shadow: none; }
    #cwb-booking-page-wrapper .cwb-cal-grid { padding-bottom: 0 !important; touch-action: pan-y; -webkit-user-select: none; user-select: none; gap: 6px 4px; }
    #cwb-booking-page-wrapper .cwb-cal-header button { width: 44px; height: 44px; }
    #cwb-booking-page-wrapper .cwb-cal-title { font-size: 17px; }
    #cwb-booking-page-wrapper .cwb-cal-cell { height: clamp(42px, 5.5svh, 48px); font-size: 14px; }
    #cwb-booking-page-wrapper #cwb-custom-calendar[data-mode="daily"] .cwb-cal-cell { height: 54px; }
    #cwb-booking-page-wrapper #cwb-custom-calendar[data-mode="daily"] .cwb-cal-cell.day { gap: 5px; }
    .cwb-cal-date-price { font-size: 10px; letter-spacing: -0.15px; }
    #cwb-booking-page-wrapper .cwb-time-slot { display: flex; min-height: 58px; align-items: center; justify-content: center; padding: 7px 4px; font-size: 12px; line-height: 1.15; }
}

@media (max-width: 374px) {
    #cwb-booking-page-wrapper .cwb-time-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cwb-time-subgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cwb-cal-date-price { font-size: 9px; }
}

@media (prefers-reduced-motion: reduce) {
    .cwb-cal-cell,
    .cwb-time-slot { scroll-behavior: auto !important; animation: none !important; transition-duration: 0.01ms !important; }
}

/* На широких экранах календарь и выбор используют две колонки и прокрутку страницы. */
@media (min-width: 901px) {
    #cwb-booking-page-wrapper #cwb-modal-header {
        min-height: 72px;
        padding: 20px 30px !important;
    }

    #cwb-booking-page-wrapper .cwb-booking-header-copy {
        min-height: 42px;
    }

    #cwb-booking-page-wrapper #cwb-modal-title {
        width: calc(100% - 144px);
        font-size: 20px !important;
    }

    #cwb-booking-page-wrapper .cwb-back-btn {
        left: 30px;
        width: 44px;
        height: 44px;
        border-radius: 10px;
        font-size: 13px !important;
    }

    #cwb-booking-page-wrapper #cwb-modal {
        max-width: 1160px !important;
        max-height: none !important;
        /* margin: 28px auto 64px !important; */
        overflow: visible !important;
    }

    #cwb-booking-page-wrapper #cwb-booking-form,
    #cwb-booking-page-wrapper #cwb-step-1 {
        max-height: none !important;
        overflow: visible !important;
    }

    #cwb-booking-page-wrapper #cwb-step-1.is-active {
        display: grid !important;
        grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
        grid-template-rows: auto 1fr;
        column-gap: 28px;
        padding: 28px !important;
        align-items: start;
    }

    #cwb-booking-page-wrapper #cwb-step-1 > .cwb-step-header-fixed {
        grid-column: 1;
        grid-row: 1;
        min-width: 0;
    }

    #cwb-booking-page-wrapper #cwb-step-1 > .cwb-step-scrollable {
        grid-column: 1;
        grid-row: 2;
        position: sticky !important;
        top: 84px;
        min-width: 0;
        max-height: none !important;
        overflow: visible !important;
        align-self: start;
    }

    #cwb-booking-page-wrapper #cwb-step-1 > #cwb-footer-step-1 {
        grid-column: 2;
        grid-row: 1 / span 2;
        min-width: 0;
        padding: 24px !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 16px !important;
        box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06) !important;
        align-self: start;
    }

    #cwb-booking-page-wrapper #cwb-summary-details {
        max-height: none;
        overflow: visible;
    }

    #cwb-booking-page-wrapper:not(.has-selection) #cwb-step-1::after {
        content: "Выбранные даты и часы появятся здесь";
        grid-column: 2;
        grid-row: 1 / span 2;
        display: grid;
        min-height: 220px;
        padding: 24px;
        place-items: center;
        border: 1px dashed #cbd5e1;
        border-radius: 16px;
        color: #64748b;
        text-align: center;
    }
}
