:root {
    /* Light Theme (Default) */
    --bg-color: #ffffff;
    --scroll-animation-duration: 8s;
    --scroll-animation-play-state: paused;
    --text-color-primary: #333333;
    --text-color-secondary: #555555;
    --text-color-tertiary: #777777;
    --border-color-primary: #dddddd;
    --border-color-secondary: #eeeeee;
    --accent-color-primary: rgba(3,116,189,1); /* Example: Blue */
    --accent-color-primary-transparent-1: rgba(0, 123, 255, 0.1);
    --accent-color-primary-transparent-2: rgba(0, 123, 255, 0.2);
    --accent-color-primary-transparent-3: rgba(0, 123, 255, 0.3);
    --accent-color-secondary: #6c757d; /* Example: Grey */
    --accent-color-secondary-transparent-1: rgba(108, 117, 125, 0.1);
    --accent-color-secondary-transparent-2: rgba(108, 117, 125, 0.2);
    --success-color: #28a745; /* Example: Green */
    --success-color-transparent-1: rgba(40, 167, 69, 0.1);
    --success-color-transparent-2: rgba(40, 167, 69, 0.2);
    --success-color-transparent-3: rgba(40, 167, 69, 0.3);
    --warning-color: #ffc107; /* Example: Yellow */
    --warning-color-transparent-1: rgba(255, 193, 7, 0.1);
    --warning-color-transparent-2: rgba(255, 193, 7, 0.2);
    --warning-color-transparent-3: rgba(255, 193, 7, 0.3);
    --danger-color: #dc3545; /* Example: Red */
    --danger-color-transparent-1: rgba(220, 53, 69, 0.1);
    --danger-color-transparent-2: rgba(220, 53, 69, 0.2);
    --danger-color-transparent-3: rgba(220, 53, 69, 0.3);
    --element-bg-color-1: #f8f9fa;
    --element-bg-color-2: #e9ecef;
    --element-bg-color-3: #dee2e6;
    --modal-bg-color: #fefefe;
    --modal-shadow-color: rgba(0, 0, 0, 0.1);
    --scrollbar-thumb-color: #cccccc;
    --scrollbar-thumb-hover-color: #bbbbbb;
    --scrollbar-track-color: #f1f1f1;
    --link-color: var(--accent-color-primary);

    /* Specific elements from original dark theme, adapted for light */
    --header-title-color: #444444;
    --nav-arrow-bg: #eeeeee;
    --nav-arrow-bg-hover: #dddddd;
    --nav-arrow-color: #555555;
    --today-highlight-bg: rgba(0, 123, 255, 0.2);
    --today-highlight-text: var(--accent-color-primary);
    --day-disabled-bg: #f0f0f0;
    --day-disabled-text: #cccccc;
    --day-selected-bg: rgba(0, 123, 255, 0.15);
    --day-selected-border: rgba(0, 123, 255, 0.4);
    --event-chore-bg: rgba(108, 117, 125, 0.15);
    --event-chore-border: rgba(108, 117, 125, 0.25);
    --event-chore-text: #495057;
    --event-deep-work-bg: rgba(255, 193, 7, 0.15);
    --event-deep-work-border: rgba(255, 193, 7, 0.25);
    --event-deep-work-text: #856404;
    --event-group-bg: #f1f1f1;
    --event-group-border: #e0e0e0;
    --event-group-header-text: #666666;
    --checkbox-custom-bg: #f0f0f0;
    --checkbox-custom-border: #cccccc;
    --checkbox-custom-checked-bg: var(--accent-color-primary-transparent-3);
    --checkbox-custom-checked-border: var(--accent-color-primary);
    --checkbox-custom-checkmark: #ffffff;
    --gsi-button-icon-filter: none;

    /* Focus Event Colors */
    --focus-sprint-color: #e91e63; /* Pink */
    --focus-sprint-color-transparent-1: rgba(233, 30, 99, 0.1);
    --focus-sprint-color-transparent-2: rgba(233, 30, 99, 0.2);
    --focus-sprint-color-transparent-3: rgba(233, 30, 99, 0.3);
    --focus-flow-color: #f44336; /* Red */
    --focus-flow-color-transparent-1: rgba(244, 67, 54, 0.1);
    --focus-flow-color-transparent-2: rgba(244, 67, 54, 0.2);
    --focus-flow-color-transparent-3: rgba(244, 67, 54, 0.3);
    --focus-dive-color: #9c27b0; /* Purple */
    --focus-dive-color-transparent-1: rgba(156, 39, 176, 0.1);
    --focus-dive-color-transparent-2: rgba(156, 39, 176, 0.2);
    --focus-dive-color-transparent-3: rgba(156, 39, 176, 0.3);
}

html[data-theme="dark"] {
    /* Dark Theme */
    --bg-color: #171613;
    --scroll-animation-duration: 8s;
    --scroll-animation-play-state: paused;
    --text-color-primary: hsla(40, 8%, 100%, 0.7);
    --text-color-secondary: hsla(40, 8%, 100%, 0.5);
    --text-color-tertiary: hsla(40, 8%, 100%, 0.3);
    --border-color-primary: hsla(40, 8%, 100%, 0.1);
    --border-color-secondary: hsla(40, 8%, 100%, 0.05);
    --accent-color-primary: #4a7bdf; /* Blue from original */
    --accent-color-primary-transparent-1: rgba(74, 123, 223, 0.1);
    --accent-color-primary-transparent-2: rgba(74, 123, 223, 0.2);
    --accent-color-primary-transparent-3: rgba(74, 123, 223, 0.3);
    --accent-color-secondary: #6c757d; /* Grey from original */
    --accent-color-secondary-transparent-1: rgba(108, 117, 125, 0.1);
    --accent-color-secondary-transparent-2: rgba(108, 117, 125, 0.2);
    --success-color: #4caf50; /* Green from original */
    --success-color-transparent-1: rgba(76, 175, 80, 0.1);
    --success-color-transparent-2: rgba(76, 175, 80, 0.2);
    --success-color-transparent-3: rgba(76, 175, 80, 0.3);
    --warning-color: #ffc107; /* Yellow from original */
    --warning-color-transparent-1: rgba(255, 193, 7, 0.1);
    --warning-color-transparent-2: rgba(255, 193, 7, 0.2);
    --warning-color-transparent-3: rgba(255, 193, 7, 0.3);
    --danger-color: #dc3545; /* Red from original */
    --danger-color-transparent-1: rgba(220, 53, 69, 0.1);
    --danger-color-transparent-2: rgba(220, 53, 69, 0.2);
    --danger-color-transparent-3: rgba(220, 53, 69, 0.3);
    --element-bg-color-1: rgba(0, 0, 0, 0.1);
    --element-bg-color-2: rgba(0, 0, 0, 0.2);
    --element-bg-color-3: rgba(0, 0, 0, 0.3);
    --modal-bg-color: #080707;
    --modal-shadow-color: rgba(0, 0, 0, 0.4);
    --scrollbar-thumb-color: rgba(74, 123, 223, 0.3);
    --scrollbar-thumb-hover-color: rgba(74, 123, 223, 0.5);
    --scrollbar-track-color: rgba(0, 0, 0, 0.1);
    --link-color: var(--accent-color-primary);

    /* Specific elements from original dark theme */
    --header-title-color: hsla(40, 8%, 100%, 0.7);
    --nav-arrow-bg: rgba(0, 0, 0, 0.3);
    --nav-arrow-bg-hover: rgba(0, 0, 0, 0.5);
    --nav-arrow-color: hsla(40, 8%, 100%, 0.5);
    --today-highlight-bg: rgba(74, 123, 223, 0.3);
    --today-highlight-text: hsla(40, 8%, 100%, 0.9);
    --day-disabled-bg: rgba(0, 0, 0, 0.3);
    --day-disabled-text: hsla(40, 8%, 100%, 0.1);
    --day-selected-bg: rgba(74, 123, 223, 0.2);
    --day-selected-border: rgba(74, 123, 223, 0.5);
    --event-chore-bg: rgba(108, 117, 125, 0.2);
    --event-chore-border: rgba(108, 117, 125, 0.3);
    --event-chore-text: hsla(40, 8%, 100%, 0.6);
    --event-deep-work-bg: rgba(255, 193, 7, 0.2);
    --event-deep-work-border: rgba(255, 193, 7, 0.3);
    --event-deep-work-text: hsla(40, 8%, 100%, 0.8);
    --event-group-bg: rgba(108, 117, 125, 0.1);
    --event-group-border: rgba(108, 117, 125, 0.2);
    --event-group-header-text: hsla(40, 8%, 100%, 0.5);
    --checkbox-custom-bg: rgba(0, 0, 0, 0.3);
    --checkbox-custom-border: hsla(40, 8%, 100%, 0.1);
    --checkbox-custom-checked-bg: rgba(74, 123, 223, 0.3);
    --checkbox-custom-checked-border: rgba(74, 123, 223, 0.4);
    --checkbox-custom-checkmark: hsla(40, 8%, 100%, 0.7);
    --gsi-button-icon-filter: brightness(0) invert(1);

    /* Focus Event Colors */
    --focus-sprint-color: #e91e63; /* Pink */
    --focus-sprint-color-transparent-1: rgba(233, 30, 99, 0.1);
    --focus-sprint-color-transparent-2: rgba(233, 30, 99, 0.2);
    --focus-sprint-color-transparent-3: rgba(233, 30, 99, 0.3);
    --focus-flow-color: #f44336; /* Red */
    --focus-flow-color-transparent-1: rgba(244, 67, 54, 0.1);
    --focus-flow-color-transparent-2: rgba(244, 67, 54, 0.2);
    --focus-flow-color-transparent-3: rgba(244, 67, 54, 0.3);
    --focus-dive-color: #9c27b0; /* Purple */
    --focus-dive-color-transparent-1: rgba(156, 39, 176, 0.1);
    --focus-dive-color-transparent-2: rgba(156, 39, 176, 0.2);
    --focus-dive-color-transparent-3: rgba(156, 39, 176, 0.3);
}
