:root {
    /* 
 * Theme: Minimal
 * Description: A clean, light aesthetic with transparent borders and a focus on readability.
 */
    --bg-color: #ffffff;
    --card-bg: #ffffff;
    --text-primary: #111111;
    --text-secondary: #777777;
    --accent: #333333;
    /* Dark Grey accent */
    --accent-hover: #000000;
    --border-color: transparent;
    /* No visible card borders */
    --day-hover-bg: #f5f5f5;
    --today-bg: #111111;
    --today-text: #ffffff;

    --font-family: 'Inter', sans-serif;
}

/* Body fixed. Theme is component-based. */
.app-container {
    color: var(--text-primary);
    font-family: var(--font-family);
}

.app-header {
    background-color: var(--card-bg);
    border: none;
    box-shadow: 0 1px 0 0 #eee;
    /* Subtle separator from header */
    border-radius: 0;
}

/* UI Controls - Scoped to Grid */
.year-grid input,
.year-grid select {
    background: transparent;
    border: none;
    border-bottom: 1px solid #999;
    color: #666;
    font-family: 'Helvetica Neue', sans-serif;
    font-weight: 300;
}

/* Switch handled by UI.css */
/* Removed to prevent conflicts */

.month-card {
    background-color: var(--card-bg);
    border: none;
    border-radius: 0;
}

.month-title {
    font-size: 1.5rem;
    font-weight: 300;
    /* Light font weight */
    color: var(--text-primary);
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 1rem;
}

.weekday-header {
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    border-bottom: 1px solid #eee;
    padding-bottom: 8px;
}

.day {
    /* border-radius: 50%; Removed per user request */
    font-size: 0.9rem;
    font-weight: 400;
    color: var(--text-primary);
    cursor: default;
}

.day:not(.empty):hover {
    background-color: var(--day-hover-bg);
}

.day.today {
    background-color: var(--today-bg);
    color: var(--today-text);
    font-weight: 600;
}

@media print {
    :root {
        --bg-color: #fff;
        --card-bg: #fff;
        --text-primary: #000;
        --text-secondary: #555;
        --accent: #000;
        --border-color: #fff;
        --day-hover-bg: #fff;
        --today-bg: #ddd;
        --today-text: #000;
    }

    .month-card {
        border: none;
    }

    .month-title {
        font-weight: 300;
        letter-spacing: 3px;
    }

    .weekday-header {
        border-bottom: 1px solid #000;
    }
}