/* Mi Cuenta - Mobile First Responsive */
.custom-my-account {
    display: flex !important;
    flex-direction: column !important;
    gap: clamp(1rem, 3vw, 1.5rem) !important;
    max-width: min(1200px, 100%) !important;
    margin-inline: auto !important;
    padding: clamp(1rem, 3vw, 1.5rem) !important;
}

.custom-my-account-sidebar {
    width: 100% !important;
    background: #f5f5f5 !important;
    padding: clamp(1rem, 3vw, 1.5rem) !important;
    border-radius: clamp(0.375rem, 1.5vw, 0.5rem) !important;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1) !important;
}

.custom-my-account-sidebar h2 {
    font-size: clamp(1rem, 2.5vw, 1.25rem) !important;
    margin-bottom: clamp(1rem, 3vw, 1.5rem) !important;
    color: #333 !important;
}

.custom-my-account-sidebar ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: clamp(0.5rem, 2vw, 0.75rem) !important;
}

.custom-my-account-sidebar li {
    padding: clamp(0.625rem, 2vw, 0.75rem) clamp(0.875rem, 3vw, 1.125rem) !important;
    cursor: pointer !important;
    background: #fff !important;
    border-radius: clamp(0.25rem, 1vw, 0.375rem) !important;
    color: #333 !important;
    font-weight: bold !important;
    font-size: clamp(0.875rem, 2vw, 1rem) !important;
    -webkit-transition: background 0.3s, color 0.3s, transform 0.2s !important;
    transition: background 0.3s, color 0.3s, transform 0.2s !important;
    flex: 1 1 auto !important;
    text-align: center !important;
    min-width: clamp(100px, 40%, 150px) !important;
}

.custom-my-account-sidebar li:hover {
    background: #e0e0e0 !important;
    color: #000 !important;
    -webkit-transform: translateY(-2px) !important;
    transform: translateY(-2px) !important;
}

.custom-my-account-sidebar li.active {
    background: #333 !important;
    color: #fff !important;
}

.custom-my-account-content {
    flex: 1 !important;
    background: #fff !important;
    padding: clamp(1rem, 3vw, 1.5rem) !important;
    border-radius: clamp(0.375rem, 1.5vw, 0.5rem) !important;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1) !important;
}

.custom-my-account-content h2 {
    font-size: clamp(1.125rem, 3vw, 1.5rem) !important;
    margin-bottom: clamp(1rem, 3vw, 1.5rem) !important;
    color: #000 !important;
}

.custom-my-account-content p {
    color: #666 !important;
    font-size: clamp(0.875rem, 2vw, 1rem) !important;
    line-height: 1.6 !important;
}

/* Formulario de cambio de contraseña */
.change-password-form input {
    width: 100% !important;
    padding: clamp(0.625rem, 2vw, 0.75rem) !important;
    margin-bottom: clamp(0.75rem, 2vw, 1rem) !important;
    border: 1px solid #ddd !important;
    border-radius: clamp(0.25rem, 1vw, 0.375rem) !important;
    background: #f9f9f9 !important;
    color: #333 !important;
    font-size: clamp(0.875rem, 2vw, 1rem) !important;
}

.change-password-form button {
    padding: clamp(0.625rem, 2vw, 0.75rem) clamp(1rem, 3vw, 1.5rem) !important;
    background: #333 !important;
    color: #fff !important;
    border: none !important;
    cursor: pointer !important;
    border-radius: clamp(0.25rem, 1vw, 0.375rem) !important;
    font-size: clamp(0.875rem, 2vw, 1rem) !important;
    -webkit-transition: background 0.3s ease, transform 0.2s ease !important;
    transition: background 0.3s ease, transform 0.2s ease !important;
}

.change-password-form button:hover {
    background: #555 !important;
    -webkit-transform: translateY(-2px) !important;
    transform: translateY(-2px) !important;
}

/* Tab content */
.tab-content {
    display: none !important;
}
.tab-content.active {
    display: block !important;
}

/* Tablet & Desktop */
@media (min-width: 768px) {
    .custom-my-account {
        flex-direction: row !important;
    }

    .custom-my-account-sidebar {
        flex: 0 0 clamp(200px, 25%, 300px) !important;
        width: auto !important;
    }

    .custom-my-account-sidebar ul {
        flex-direction: column !important;
    }

    .custom-my-account-sidebar li {
        width: 100% !important;
        min-width: auto !important;
        text-align: left !important;
    }
}

/* Large Desktop */
@media (min-width: 1200px) {
    .custom-my-account {
        gap: clamp(1.5rem, 4vw, 2rem) !important;
    }
}

/* High DPI Displays */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .custom-my-account-sidebar li,
    .change-password-form button,
    .custom-my-account-content p {
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }
}
