/**
 * Kindle Theme Switcher Styles
 * Light/Dark mode CSS with smooth transitions
 */

/* CSS Custom Properties for theme switching */
:root {
	/* Light mode (default) */
	--kindle-bg: #FAF8F5;
	--kindle-text: #1A1A1A;
	--kindle-text-secondary: #666666;
	--kindle-border: #E8E4DF;
	--kindle-surface: #F0EDE8;
	--kindle-hover: #F5F3F0;
	--kindle-transition: 0.3s ease;
}

:root.kindle-dark-mode {
	/* Dark mode */
	--kindle-bg: #1A1A1A;
	--kindle-text: #E8E4DF;
	--kindle-text-secondary: #999999;
	--kindle-border: #333333;
	--kindle-surface: #252525;
	--kindle-hover: #252525;
}

/* Apply smooth transitions */
body,
.wp-site-blocks,
.wp-block-group,
.wp-block-post,
.wp-block-navigation,
.wp-block-navigation-item,
.wp-block-separator,
.wp-block-code {
	transition: background-color var(--kindle-transition),
	            color var(--kindle-transition),
	            border-color var(--kindle-transition);
}

/* Respect reduced motion preference */
@media (prefers-reduced-motion: reduce) {
	:root {
		--kindle-transition: 0s;
	}

	body,
	.wp-site-blocks,
	.wp-block-group,
	.wp-block-post,
	.wp-block-navigation,
	.wp-block-navigation-item,
	.wp-block-separator,
	.wp-block-code {
		transition: none;
	}
}

/* Theme toggle button */
.theme-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: 0;
	background: transparent;
	border: 1px solid var(--kindle-border);
	border-radius: 2px;
	cursor: pointer;
	transition: border-color 0.2s ease, background-color 0.2s ease;
	color: var(--kindle-text);
}

.theme-toggle:hover {
	border-color: var(--kindle-text-secondary);
	background-color: var(--kindle-hover);
}

.theme-toggle:focus {
	outline: 2px solid var(--kindle-text);
	outline-offset: 2px;
}

.theme-toggle:focus:not(:focus-visible) {
	outline: none;
}

.theme-toggle:focus-visible {
	outline: 2px solid var(--kindle-text);
	outline-offset: 2px;
}

/* Icon states */
.theme-toggle .icon-sun,
.theme-toggle .icon-moon {
	width: 20px;
	height: 20px;
	transition: opacity 0.2s ease;
}

/* Light mode: show moon icon */
.theme-toggle .icon-moon {
	display: block;
}

.theme-toggle .icon-sun {
	display: none;
}

/* Dark mode: show sun icon */
.kindle-dark-mode .theme-toggle .icon-moon {
	display: none;
}

.kindle-dark-mode .theme-toggle .icon-sun {
	display: block;
}

/* E-ink aesthetic enhancements */
.kindle-dark-mode .wp-block-separator,
.kindle-dark-mode hr {
	border-color: var(--kindle-border);
}

.kindle-dark-mode .wp-block-code,
.kindle-dark-mode pre {
	background-color: var(--kindle-surface);
	border-color: var(--kindle-border);
}

/* Ensure proper contrast in dark mode */
.kindle-dark-mode a {
	color: var(--kindle-text);
}

.kindle-dark-mode .wp-block-navigation-item a {
	color: var(--kindle-text);
}

.kindle-dark-mode .wp-block-post-date,
.kindle-dark-mode .wp-block-post-author,
.kindle-dark-mode .wp-block-post-terms {
	color: var(--kindle-text-secondary);
}
