/* PWA Reset & iOS Optimizations */
* {
    -webkit-tap-highlight-color: transparent;
}

body {
    -webkit-touch-callout: none;
    overscroll-behavior-y: none; /* Предотвращает pull-to-refresh навигационной панели */
}

/* Safe areas (iPhone Notch, etc) */
.safe-area-pt {
    padding-top: env(safe-area-inset-top);
}
.safe-area-pb {
    padding-bottom: env(safe-area-inset-bottom);
}

/* Скрываем скроллбар, но оставляем скролл */
::-webkit-scrollbar {
    display: none;
}
* {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

/* Навигация (Bottom Nav) */
.nav-btn.active {
    color: #f48c25;
}
.nav-btn.active .icon {
    font-variation-settings: 'FILL' 1;
}

/* Анимации экранов */
.screen-enter {
    animation: slideInRight 0.3s ease-out forwards;
}

.screen-leave {
    animation: slideOutLeft 0.3s ease-out forwards;
}

@keyframes slideInRight {
    from { transform: translateX(20px); opacity: 0; }
    to { transform: translateX(0); opacity: 1; }
}

@keyframes slideOutLeft {
    from { transform: translateX(0); opacity: 1; }
    to { transform: translateX(-20px); opacity: 0; }
}

/* Карточки заказов / товаров эффекты */
.card-tap:active {
    transform: scale(0.98);
    background-color: rgba(255,255,255,0.05);
}

/* Lightbox */
#lightbox {
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

/* Pull to refresh spinner (для списка заказов) */
.ptr-spinner {
    width: 24px;
    height: 24px;
    border: 2px solid #493622;
    border-top-color: #f48c25;
    border-radius: 50%;
    animation: spin 1s linear infinite;
    margin: 0 auto;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}

/* Тосты */
.toast {
    animation: toastEnter 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
}

@keyframes toastEnter {
    from { opacity: 0; transform: translateY(-20px) scale(0.9); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

.toast.hiding {
    animation: toastLeave 0.2s ease-in forwards;
}

@keyframes toastLeave {
    from { opacity: 1; transform: scale(1); }
    to { opacity: 0; transform: scale(0.9); }
}

/* Графики */
canvas {
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
}
