:root {
color-scheme: light;
--paper: var(--site-page-bg, #f7f7f2);
--ink: var(--site-page-text, #171713);
--muted: var(--site-page-muted, #6c6a60);
--line: var(--site-page-border, rgba(23,23,19,.14));
--tile: var(--site-page-surface, #ecebe3);
--shadow: var(--site-page-shadow, 0 14px 32px rgba(45,43,36,.12));
--accent: var(--site-page-accent, #d25f3b);
--preview-filter: var(--site-page-preview-filter, none);
--preview-overlay: var(--site-page-preview-overlay, transparent);
--preview-inset-shadow: var(--site-page-preview-inset-shadow, 0 1px 0 rgba(255,255,255,.45) inset);
--card-title: var(--site-page-card-title, var(--ink));
--card-description: var(--site-page-card-description, var(--muted));
}
[data-theme="dark"] {
color-scheme: dark;
--paper: var(--site-page-bg, #11120f);
--ink: var(--site-page-text, #f2f0e8);
--muted: var(--site-page-muted, #aba89c);
--line: var(--site-page-border, rgba(255,255,255,.16));
--tile: var(--site-page-surface, #1b1d18);
--shadow: var(--site-page-shadow, 0 14px 32px rgba(0,0,0,.34));
--accent: var(--site-page-accent, #ff8a62);
--preview-filter: var(--site-page-preview-filter, brightness(.72) contrast(.94) saturate(.88));
--preview-overlay: var(--site-page-preview-overlay, rgba(0,0,0,.18));
--preview-inset-shadow: var(--site-page-preview-inset-shadow, 0 1px 0 rgba(255,255,255,.08) inset);
--card-title: var(--site-page-card-title, #d8d3c7);
--card-description: var(--site-page-card-description, #8f8a7d);
}
[data-theme="light"] {
color-scheme: light;
}
@media (prefers-color-scheme: dark) {
:root:not([data-theme="light"]) {
color-scheme: dark;
--paper: var(--site-page-bg, #11120f);
--ink: var(--site-page-text, #f2f0e8);
--muted: var(--site-page-muted, #aba89c);
--line: var(--site-page-border, rgba(255,255,255,.16));
--tile: var(--site-page-surface, #1b1d18);
--shadow: var(--site-page-shadow, 0 14px 32px rgba(0,0,0,.34));
--accent: var(--site-page-accent, #ff8a62);
--preview-filter: var(--site-page-preview-filter, brightness(.72) contrast(.94) saturate(.88));
--preview-overlay: var(--site-page-preview-overlay, rgba(0,0,0,.18));
--preview-inset-shadow: var(--site-page-preview-inset-shadow, 0 1px 0 rgba(255,255,255,.08) inset);
--card-title: var(--site-page-card-title, #d8d3c7);
--card-description: var(--site-page-card-description, #8f8a7d);
}
}
* { box-sizing: border-box; }
html { min-height: 100%; background: var(--paper); }
body { min-height: 100%; margin: 0; background: var(--paper); color: var(--ink); font: 16px/1.45 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; transition: background-color .2s ease, color .2s ease; }
main { width: 100%; margin: 0; padding: clamp(14px, 2.5vw, 28px); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
webby-card-grid {
--webby-theme-paper: var(--paper);
--webby-theme-ink: var(--ink);
--webby-theme-muted: var(--muted);
--webby-theme-line: var(--line);
--webby-theme-tile: var(--tile);
--webby-theme-accent: var(--accent);
--webby-theme-gap: clamp(14px, 2vw, 22px);
--webby-theme-preview-filter: var(--preview-filter);
--webby-theme-preview-overlay: var(--preview-overlay);
--webby-theme-preview-inset-shadow: var(--preview-inset-shadow);
--webby-theme-card-title-color: var(--card-title);
--webby-theme-card-description-color: var(--card-description);
}
@media (max-width: 560px) {
main { padding: 10px; }
}