/* CSS Variables for Theming */
:root {
    --bg-color: #fff7ee;
    --card-bg: #fff;
    --text-color: #666;
    --text-color-dark: #444;
    --border-color: #ddd;
    --header-bg: linear-gradient(135deg, #fff 0%, #f8f9fa 100%);
    --filter-badge-bg: #f5f5f5;
    --filter-badge-border: #eee;
    --modal-bg: white;
    --footer-bg: #fff;
    --modal-text: #666;
}

[data-theme="dark"] {
    --bg-color: #121212;
    --card-bg: #1e1e1e;
    --text-color: rgba(255, 255, 255, 0.87);
    --text-color-dark: rgba(255, 255, 255, 0.95);
    --border-color: #333;
    --header-bg: linear-gradient(135deg, #1e1e1e 0%, #181818 100%);
    --filter-badge-bg: #2d2d2d;
    --filter-badge-border: #333;
    --modal-bg: #1e1e1e;
    --footer-bg: #1e1e1e;
    --modal-text: rgba(255, 255, 255, 0.87);
    --darkened-bg: #333333;
}

/* Reset and Base Styles */
* {
    box-sizing: border-box;
    padding: 0;
    margin: 0;
}

body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    background: var(--bg-color);
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
}

body.modal-open {
    overflow: hidden;
    padding-right: 15px; /* Prevent layout shift when scrollbar disappears */
}

/* Container */
.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    padding-bottom: 20px;
    flex: 1;
    width: 100%;
}

/* Utility Classes */
.hidden {
    display: none;
}

/* Animations */
@keyframes ripple {
    to {
        transform: scale(2);
        opacity: 0;
    }
}

/* Media Queries */
@media (max-width: 768px) {
    .container {
        padding: 0 10px;
    }
} 