/* Mobile Styles for Find Doctor Page */

/* Base Styles */
body {
    margin: 0;
    padding: 0;
}

/* Header */
header {
    padding: 0.375rem 0.75rem;
    min-height: 40px;
}

header > div {
    padding: 0;
}

header h2 {
    margin: 0;
    padding: 0;
}

header a {
    margin: 0;
    flex-shrink: 0;
}

/* Search Bar */
#searchInput {
    font-size: 0.875rem;
    transition: all 0.2s ease;
}

#searchInput:focus {
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}

/* Filter Buttons */
.filter-btn {
    transition: all 0.2s ease;
    cursor: pointer;
}

.filter-btn.active {
    background-color: #2563eb;
    color: white;
}

.filter-btn:not(.active):hover {
    background-color: #e5e7eb;
}

.dark .filter-btn:not(.active):hover {
    background-color: #374151;
}

/* Scrollbar Hide */
.scrollbar-hide {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.scrollbar-hide::-webkit-scrollbar {
    display: none;
}

/* Doctor Card */
.doctor-card {
    transition: all 0.3s ease;
    cursor: pointer;
}

.doctor-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px -2px rgba(0, 0, 0, 0.1);
}

.dark .doctor-card:hover {
    box-shadow: 0 4px 12px -2px rgba(0, 0, 0, 0.3);
}

/* Doctor Avatar */
.doctor-card .size-16 {
    width: 4rem;
    height: 4rem;
    min-width: 4rem;
    min-height: 4rem;
}

/* Loading Spinner */
#loadingState {
    min-height: 200px;
}

/* Empty State */
#emptyState {
    min-height: 200px;
}

/* Button Styles */
.doctor-card a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.2s ease;
}

.doctor-card a:active {
    transform: scale(0.98);
}

/* Responsive Text */
@media (max-width: 360px) {
    .doctor-card h3 {
        font-size: 0.875rem;
    }
    
    .doctor-card p {
        font-size: 0.75rem;
    }
    
    .doctor-card a {
        font-size: 0.7rem;
        padding: 0.5rem 0.75rem;
    }
}

/* Safe Area Support */
@supports (padding: max(0px)) {
    body {
        padding-left: max(0px, env(safe-area-inset-left));
        padding-right: max(0px, env(safe-area-inset-right));
    }
}

