:root {
    --ah-bg: #ffffff;
    --ah-surface: #ffffff;
    --ah-surface-soft: #f8fafc;
    --ah-text: #0f172a;
    --ah-text-soft: #64748b;
    --ah-border: rgba(15, 23, 42, 0.10);
    --ah-link: #0f172a;
    --ah-link-hover: #2563eb;
}

html[data-theme="dark"] {
    --ah-bg: #000;
    --ah-surface: #111827;
    --ah-surface-soft: #0f172a;
    --ah-text: #f8fafc;
    --ah-text-soft: #94a3b8;
    --ah-border: rgba(255, 255, 255, 0.10);
    --ah-link: #f8fafc;
    --ah-link-hover: #93c5fd;
}

html,
body {
    background: var(--ah-bg);
    color: var(--ah-text);
}

body,
.wp-site-blocks,
.site,
.site-main,
.site-header,
.site-footer,
.wp-block-group,
.wp-block-columns,
.wp-block-column {
    color: var(--ah-text);
}

a,
.wp-block-navigation a,
.wp-block-navigation-item__content {
    color: var(--ah-link);
}

a:hover,
.wp-block-navigation a:hover,
.wp-block-navigation-item__content:hover {
    color: var(--ah-link-hover);
}

input,
textarea,
select {
    background: var(--ah-surface);
    color: var(--ah-text);
    border: 1px solid var(--ah-border);
}

small,
time,
.meta,
.entry-meta,
.wp-block-post-date,
.wp-block-post-author,
.wp-block-post-terms,
figcaption {
    color: var(--ah-text-soft);
}

html.ah-theme-animate body,
html.ah-theme-animate .wp-site-blocks,
html.ah-theme-animate .site,
html.ah-theme-animate .site-header,
html.ah-theme-animate .site-main,
html.ah-theme-animate .site-footer,
html.ah-theme-animate .wp-block-group,
html.ah-theme-animate .wp-block-columns,
html.ah-theme-animate .wp-block-column,
html.ah-theme-animate .wp-block-cover,
html.ah-theme-animate .wp-block-query,
html.ah-theme-animate .wp-block-post,
html.ah-theme-animate article,
html.ah-theme-animate section,
html.ah-theme-animate aside,
html.ah-theme-animate header,
html.ah-theme-animate footer,
html.ah-theme-animate nav,
html.ah-theme-animate div,
html.ah-theme-animate a,
html.ah-theme-animate button,
html.ah-theme-animate input,
html.ah-theme-animate textarea,
html.ah-theme-animate select,
html.ah-theme-animate svg,
html.ah-theme-animate path,
html.ah-theme-animate circle,
html.ah-theme-animate rect {
    transition:
        background-color 0.35s ease,
        color 0.35s ease,
        border-color 0.35s ease,
        box-shadow 0.35s ease,
        fill 0.35s ease,
        stroke 0.35s ease;
}