/* Theme Variables for Pagan Calendar Widget */

/* Default/Light Theme */
:root {
    /* Base colors */
    --bg-color: #f7f5f3;
    --text-color: #2d2d2d;
    --primary-color: #5a4f3a;
    --secondary-text: #6b6b6b;
    --accent-color: #8b4513;
    --accent-hover: #a0522d;
    --accent-light: rgba(139, 69, 19, 0.1);
    --accent-color-rgb: 139, 69, 19;
    
    /* Widget colors */
    --widget-bg: #ffffff;
    --header-bg: #f8f6f4;
    --border-color: #e1ddd7;
    --secondary-bg: #f5f3f1;
    --input-bg: #ffffff;
    
    /* Calendar day colors */
    --day-bg: #ffffff;
    --day-hover: #faf9f7;
    --today-bg: #fff8f0;
    --other-month-bg: #f8f8f8;
    --other-month-text: #999999;
    --event-day-bg: #fffbf7;
    --week-number-bg: #f0f0f0;
    
    /* Moon phase colors */
    --moon-phase-bg: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
    --moon-glow: #ffd700;
    
    /* Event type colors */
    --sabbath-color: #d2691e;
    --sabbath-bg: #fff4e6;
    --sabbath-text: #8b4513;
    
    --new-moon-color: #2c3e50;
    --new-moon-bg: #f8f9fa;
    --new-moon-text: #2c3e50;
    
    --full-moon-color: #f39c12;
    --full-moon-bg: #fef9e7;
    --full-moon-text: #d68910;
    
    --eclipse-color: #8e44ad;
    --eclipse-bg: #f8f5ff;
    --eclipse-text: #7d3c98;
    --eclipse-glow: rgba(142, 68, 173, 0.5);
    
    /* General event colors */
    --event-bg: #f8f9fa;
    --event-text: #495057;
    --legend-bg: #fbfbfb;
    
    /* Shadows and effects */
    --shadow: 0 4px 6px rgba(0, 0, 0, 0.07), 0 1px 3px rgba(0, 0, 0, 0.06);
    --day-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    --event-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

/* Dark Theme */
body[data-theme="dark"] {
    /* Base colors */
    --bg-color: #1a1a2e;
    --text-color: #eee6d3;
    --primary-color: #d4af37;
    --secondary-text: #b8b8b8;
    --accent-color: #cd853f;
    --accent-hover: #daa520;
    --accent-light: rgba(205, 133, 63, 0.15);
    --accent-color-rgb: 205, 133, 63;
    
    /* Widget colors */
    --widget-bg: #16213e;
    --header-bg: #0f3460;
    --border-color: #2a3b5c;
    --secondary-bg: #1e2a4a;
    --input-bg: #243447;
    
    /* Calendar day colors */
    --day-bg: #16213e;
    --day-hover: #1e2a4a;
    --today-bg: #2a3b5c;
    --other-month-bg: #0f1419;
    --other-month-text: #5a5a5a;
    --event-day-bg: #1f2937;
    --week-number-bg: #111827;
    
    /* Moon phase colors */
    --moon-phase-bg: linear-gradient(135deg, #0f3460 0%, #1a1a2e 100%);
    --moon-glow: #f4e4bc;
    
    /* Event type colors */
    --sabbath-color: #ffa500;
    --sabbath-bg: rgba(255, 165, 0, 0.1);
    --sabbath-text: #ffb347;
    
    --new-moon-color: #6c7b95;
    --new-moon-bg: rgba(108, 123, 149, 0.1);
    --new-moon-text: #8fa4c9;
    
    --full-moon-color: #ffd700;
    --full-moon-bg: rgba(255, 215, 0, 0.1);
    --full-moon-text: #ffe135;
    
    --eclipse-color: #da70d6;
    --eclipse-bg: rgba(218, 112, 214, 0.1);
    --eclipse-text: #dda0dd;
    --eclipse-glow: rgba(218, 112, 214, 0.4);
    
    /* General event colors */
    --event-bg: rgba(255, 255, 255, 0.05);
    --event-text: #e2e8f0;
    --legend-bg: #0f1419;
    
    /* Shadows and effects */
    --shadow: 0 4px 6px rgba(0, 0, 0, 0.3), 0 1px 3px rgba(0, 0, 0, 0.2);
    --day-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
    --event-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}

/* Nature Theme */
body[data-theme="nature"] {
    /* Base colors */
    --bg-color: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    --text-color: #2d3748;
    --primary-color: #2f855a;
    --secondary-text: #4a5568;
    --accent-color: #38a169;
    --accent-hover: #48bb78;
    --accent-light: rgba(56, 161, 105, 0.1);
    --accent-color-rgb: 56, 161, 105;
    
    /* Widget colors */
    --widget-bg: linear-gradient(145deg, #f7fafc 0%, #edf2f7 100%);
    --header-bg: linear-gradient(135deg, #c6f6d5 0%, #9ae6b4 100%);
    --border-color: #c6f6d5;
    --secondary-bg: #f0fff4;
    --input-bg: #ffffff;
    
    /* Calendar day colors */
    --day-bg: #ffffff;
    --day-hover: #f0fff4;
    --today-bg: #c6f6d5;
    --other-month-bg: #fafafa;
    --other-month-text: #a0aec0;
    --event-day-bg: #f7fafc;
    --week-number-bg: #edf2f7;
    
    /* Moon phase colors */
    --moon-phase-bg: linear-gradient(135deg, #4a5568 0%, #2d3748 100%);
    --moon-glow: #fbb6ce;
    
    /* Event type colors - Earth tones */
    --sabbath-color: #d69e2e;
    --sabbath-bg: #fffbeb;
    --sabbath-text: #b7791f;
    
    --new-moon-color: #4a5568;
    --new-moon-bg: #f7fafc;
    --new-moon-text: #2d3748;
    
    --full-moon-color: #ed8936;
    --full-moon-bg: #fffaf0;
    --full-moon-text: #c05621;
    
    --eclipse-color: #805ad5;
    --eclipse-bg: #faf5ff;
    --eclipse-text: #553c9a;
    --eclipse-glow: rgba(128, 90, 213, 0.4);
    
    /* General event colors */
    --event-bg: rgba(255, 255, 255, 0.8);
    --event-text: #2d3748;
    --legend-bg: rgba(255, 255, 255, 0.9);
    
    /* Shadows and effects */
    --shadow: 0 4px 6px rgba(0, 0, 0, 0.07), 0 1px 3px rgba(0, 0, 0, 0.06);
    --day-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
    --event-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

/* Seasonal theme variations */
body[data-season="spring"] {
    --primary-color: #38a169;
    --accent-color: #68d391;
    --sabbath-color: #ed8936;
}

body[data-season="summer"] {
    --primary-color: #d69e2e;
    --accent-color: #f6e05e;
    --sabbath-color: #e53e3e;
}

body[data-season="autumn"] {
    --primary-color: #c05621;
    --accent-color: #ed8936;
    --sabbath-color: #d53f8c;
}

body[data-season="winter"] {
    --primary-color: #3182ce;
    --accent-color: #63b3ed;
    --sabbath-color: #805ad5;
}

/* High contrast mode for accessibility */
@media (prefers-contrast: high) {
    :root {
        --bg-color: #ffffff;
        --text-color: #000000;
        --primary-color: #000080;
        --border-color: #000000;
        --accent-color: #0000ff;
        --day-bg: #ffffff;
        --day-hover: #f0f0f0;
        --event-bg: #e0e0e0;
        --event-text: #000000;
    }
}

/* Reduced motion for accessibility */
@media (prefers-reduced-motion: reduce) {
    * {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
    
    .calendar-day.today {
        animation: none;
    }
    
    .event-indicator.eclipse {
        animation: none;
    }
}

/* Print styles */
@media print {
    body {
        background: white !important;
        color: black !important;
    }
    
    .calendar-widget {
        box-shadow: none !important;
        border: 2px solid black !important;
    }
    
    .modal-overlay {
        display: none !important;
    }
    
    .calendar-controls {
        display: none !important;
    }
    
    .calendar-day:hover {
        transform: none !important;
        background: white !important;
    }
    
    .event-indicator {
        border: 1px solid black !important;
        background: white !important;
        color: black !important;
    }
}
