* {
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none;
}

body {
    overscroll-behavior: none;
    -webkit-overflow-scrolling: touch;
}

::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.scrollbar-hide::-webkit-scrollbar {
    display: none;
}

.scrollbar-hide {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.line-clamp-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

.exercise-card {
    animation: fadeIn 0.3s ease-out backwards;
}

.exercise-card:nth-child(1) { animation-delay: 0.05s; }
.exercise-card:nth-child(2) { animation-delay: 0.10s; }
.exercise-card:nth-child(3) { animation-delay: 0.15s; }
.exercise-card:nth-child(4) { animation-delay: 0.20s; }
.exercise-card:nth-child(5) { animation-delay: 0.25s; }
.exercise-card:nth-child(6) { animation-delay: 0.30s; }

@keyframes pulse-glow {
    0%, 100% { box-shadow: 0 0 20px rgba(6, 182, 212, 0.15); }
    50% { box-shadow: 0 0 30px rgba(6, 182, 212, 0.3); }
}

.checkbox-btn.completed {
    animation: pulse-glow 1.5s ease-in-out infinite;
}

input[type="time"]::-webkit-calendar-picker-indicator {
    filter: invert(1);
}

select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2371717a'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    background-size: 16px;
    padding-right: 36px;
}
