@media screen and (max-width: 575.98px) {
    .user-page-container {
        padding: 0 var(--space-md);
    }

    .user-auth-card {
        padding: var(--space-lg);
    }

    .user-layout {
        grid-template-columns: 1fr;
        gap: var(--space-lg);
    }

    .user-sidebar {
        position: static;
    }

    .user-modal {
        width: 95%;
        margin: var(--space-md);
    }

    .user-center-header {
        padding: var(--space-lg);
    }

    .user-info-grid {
        grid-template-columns: 1fr;
    }

    .user-menu-item {
        padding: var(--space-sm) var(--space-md);
        font-size: var(--text-sm);
    }

    .user-page-title {
        font-size: var(--text-2xl);
    }

    .user-card {
        padding: 15px;
    }

    .user-modal-footer {
        flex-direction: column;
    }

    .user-modal-footer .user-btn {
        width: 100%;
    }

    .user-auth-tabs {
        border-bottom: none;
    }

    .user-auth-tab {
        border-bottom: 1px solid var(--color-gray-200);
        border-left: 3px solid transparent;
    }

    .user-auth-tab.active {
        border-left-color: var(--color-primary);
        border-bottom-color: var(--color-gray-200);
    }
}

@media screen and (min-width: 576px) and (max-width: 767.98px) {
    .user-page-container {
        padding: 0 var(--space-lg);
    }

    .user-layout {
        grid-template-columns: 200px 1fr;
    }

    .user-info-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .user-modal {
        max-width: 90%;
    }
}

@media screen and (min-width: 768px) and (max-width: 991.98px) {
    .user-page-container {
        max-width: 100%;
        padding: 0 var(--space-xl);
    }

    .user-layout {
        grid-template-columns: 220px 1fr;
    }

    .user-info-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (min-width: 992px) and (max-width: 1199.98px) {
    .user-page-container {
        max-width: 960px;
    }

    .user-layout {
        grid-template-columns: 240px 1fr;
    }
}

@media screen and (min-width: 1400px) {
    .user-page-container {
        max-width: 1400px;
    }
}

@media screen and (max-width: 767.98px) {
    .user-stats-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .user-form-row {
        flex-direction: column;
        gap: var(--space-md);
    }

    .user-btn-group {
        flex-direction: column;
        width: 100%;
    }

    .user-btn-group .user-btn {
        width: 100%;
    }
}

@media screen and (max-width: 991.98px) {
    .user-content-grid {
        grid-template-columns: 1fr;
    }

    .user-sidebar-menu {
        margin-bottom: var(--space-xl);
    }
}

@media print {

    .user-sidebar,
    .user-modal-overlay,
    .user-btn,
    .user-auth-tabs,
    .user-avatar-edit {
        display: none !important;
    }

    .user-card {
        box-shadow: none;
        border: 1px solid var(--color-gray-300);
    }

    .user-page-container {
        max-width: 100%;
        padding: 0;
    }
}

@media (prefers-contrast: high) {
    :root {
        --color-primary: #0056b3;
        --color-primary-dark: #003d82;
        --color-gray-200: #d0d0d0;
        --color-gray-300: #b0b0b0;
    }

    .user-card {
        border: 2px solid var(--color-gray-800);
    }

    .user-form-control {
        border: 2px solid var(--color-gray-800);
    }
}

@media (prefers-reduced-motion: reduce) {

    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }

    .user-card,
    .user-btn,
    .user-modal {
        transition: none;
    }
}

@media (prefers-color-scheme: dark) {
    :root {
        --color-white: #121212;
        --color-gray-50: #1e1e1e;
        --color-gray-100: #252525;
        --color-gray-200: #2e2e2e;
        --color-gray-300: #3a3a3a;
        --color-gray-400: #505050;
        --color-gray-500: #707070;
        --color-gray-600: #909090;
        --color-gray-700: #b0b0b0;
        --color-gray-800: #d0d0d0;
        --color-gray-900: #f0f0f0;
        --color-black: #ffffff;

        --color-primary: #4da3ff;
        --color-primary-dark: #2d8bff;
        --color-primary-bg: rgba(77, 163, 255, 0.1);

        --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.3);
        --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.4);
        --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.5);
        --shadow-xl: 0 20px 25px rgba(0, 0, 0, 0.6);
    }

    .user-card {
        background-color: var(--color-gray-100);
        border-color: var(--color-gray-300);
    }

    .user-form-control {
        background-color: var(--color-gray-100);
        border-color: var(--color-gray-400);
        color: var(--color-gray-800);
    }

    .user-modal-overlay {
        background-color: rgba(0, 0, 0, 0.7);
    }
}

@media screen and (max-width: 768px) {
    .user-btn {
        min-height: 40px;
        min-width: 40px;
        font-size: 14px;
        padding: 5px 10px;
    }

    .user-gap-3 {
        flex: 1;
    }

    .user-menu-item {
        min-height: 44px;
    }

    .user-form-control {
        min-height: 44px;
        padding: 10px !important;
        font-size: 12px !important;
    }

    .user-checkbox input,
    .user-radio input {
        width: 24px;
        height: 24px;
    }

    .user-modal-close {
        width: 44px;
        height: 44px;
    }
}