/* GUMS CarWash Custom Styles */

/* Локальный шрифт Manrope (автономный режим) */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 300 800;
  font-display: swap;
  src: url('/static/fonts/manrope-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 300 800;
  font-display: swap;
  src: url('/static/fonts/manrope-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

body {
    background-color: #f8fafc;
    -webkit-tap-highlight-color: transparent;
    font-family: 'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

/* Скрытие полосы прокрутки при сохранении скролла */
.custom-scroll::-webkit-scrollbar {
    width: 0px;
    height: 0px;
}
.custom-scroll {
    scrollbar-width: none;
}

/* Отключение стрелок спиннеров для числовых полей */
input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Кликабельность полей выбора даты по всей площади */
input[type="date"] {
    position: relative;
}
input[type="date"]::-webkit-calendar-picker-indicator {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

/* Анимации переходов Vue */
.fade-enter-active, 
.fade-leave-active {
    transition: opacity 0.3s ease;
}
.fade-enter-from, 
.fade-leave-to {
    opacity: 0;
}

.slide-up-enter-active {
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
.slide-up-enter-from {
    transform: translateY(20px);
    opacity: 0;
}

/* Безопасные отступы для мобильных устройств (iOS Notch / Home indicator) */
.pb-safe {
    padding-bottom: calc(80px + env(safe-area-inset-bottom));
}
.pt-safe {
    padding-top: env(safe-area-inset-top);
}

/* Стили для drag-and-drop сортировки услуг (SortableJS) */
.sortable-ghost {
    opacity: 0.2;
    background-color: #e2e8f0;
}
.sortable-drag {
    cursor: grabbing !important;
    opacity: 1 !important;
    box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
    transform: scale(1.02);
}
.sortable-fallback {
    z-index: 9999 !important;
    background: white;
    border-radius: 1rem;
}

