/* 
 * Menu Privê - Theme System
 * Import all theme files
 */

@import url('themes/black.css');
@import url('themes/red.css');
@import url('themes/blue.css');
@import url('themes/violet.css');
@import url('themes/green.css');
@import url('themes/orange.css');

/* Theme Transition */
body {
    transition: background-color 0.3s ease, color 0.3s ease;
}

/* Theme Utility Classes */
.theme-transition * {
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

/* High Contrast Support */
@media (prefers-contrast: high) {
    .theme-black-light,
    .theme-red-light,
    .theme-blue-light,
    .theme-violet-light,
    .theme-green-light,
    .theme-orange-light {
        --border-color: #000000;
        --card-shadow: 0 0 0 2px #000000;
    }
    
    .theme-black-dark,
    .theme-red-dark,
    .theme-blue-dark,
    .theme-violet-dark,
    .theme-green-dark,
    .theme-orange-dark {
        --border-color: #ffffff;
        --card-shadow: 0 0 0 2px #ffffff;
    }
}

/* Reduced Motion Support */
@media (prefers-reduced-motion: reduce) {
    .theme-orange-light .product-card,
    .theme-orange-dark .product-card,
    .theme-violet-light .product-card,
    .theme-violet-dark .product-card,
    .theme-green-light .product-card,
    .theme-green-dark .product-card {
        transition: none;
    }
    
    .theme-orange-light .product-card::before,
    .theme-orange-dark .product-card::before,
    .theme-violet-light .product-card::before,
    .theme-violet-dark .product-card::before {
        display: none;
    }
}

/* Print Styles */
@media print {
    .theme-black-light,
    .theme-red-light,
    .theme-blue-light,
    .theme-violet-light,
    .theme-green-light,
    .theme-orange-light,
    .theme-black-dark,
    .theme-red-dark,
    .theme-blue-dark,
    .theme-violet-dark,
    .theme-green-dark,
    .theme-orange-dark {
        --background: #ffffff !important;
        --text: #000000 !important;
        --card-bg: #ffffff !important;
        --card-shadow: none !important;
        --border-color: #000000 !important;
    }
    
    .product-card {
        break-inside: avoid;
        border: 1px solid #000000 !important;
    }
}