/* Keelson: supplemental styles. Keep tiny; tokens come from theme.json. */
:where(.is-style-card){background:var(--wp--preset--color--surface);border-radius:var(--wp--custom--radius--lg);box-shadow:var(--wp--preset--shadow--soft);padding:var(--wp--preset--spacing--40)}
:where(.is-style-outline){border:1px solid var(--wp--preset--color--line);border-radius:var(--wp--custom--radius--lg);padding:var(--wp--preset--spacing--40)}
.wp-block-button.is-style-ghost .wp-block-button__link{background:transparent;color:currentColor;border:2px solid currentColor}
.is-style-checks{list-style:none;padding-inline-start:0}
.is-style-checks li{padding-inline-start:1.75em;position:relative}
.is-style-checks li::before{content:"";position:absolute;inset-inline-start:0;top:.45em;width:.9em;height:.5em;border-inline-start:2px solid var(--wp--preset--color--primary);border-bottom:2px solid var(--wp--preset--color--primary);transform:rotate(-45deg)}
.is-style-eyebrow{font-size:var(--wp--preset--font-size--small);letter-spacing:.12em;text-transform:uppercase;color:var(--wp--preset--color--primary)}
.is-style-soft img{border-radius:var(--wp--custom--radius--lg);box-shadow:var(--wp--preset--shadow--soft)}
/* Accessibility: visible focus everywhere (WCAG 2.4.7 / 2.4.11). */
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--wp--preset--color--primary);outline-offset:2px}
.skip-link:focus{z-index:100000}
/* FAQ: native details/summary, no JS. */
.wp-block-details{border-bottom:1px solid var(--wp--preset--color--line);padding-block:var(--wp--preset--spacing--20)}
.wp-block-details summary{cursor:pointer;font-weight:600}
/* Container query support for card grids (custom breakpoints via tokens). */
.keelson-cq{container-type:inline-size}
@container (max-width: 40rem){.keelson-cq .wp-block-columns{flex-direction:column}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* Unit-test hardening */
.wp-block-site-title{white-space:nowrap}
:where(h1,h2,h3,.wp-block-post-title,.wp-block-post-content,.wp-block-comment-content){overflow-wrap:break-word}
.wp-block-post-content :where(table){border-collapse:collapse;width:100%}
.wp-block-post-content :where(th,td){border:1px solid var(--wp--preset--color--line);padding:.5em .75em;text-align:start}
.wp-block-comment-content :where(h1,h2,h3,h4,h5,h6){font-size:var(--wp--preset--font-size--large)}
.wp-block-comment-template ol{padding-inline-start:var(--wp--preset--spacing--40)}
pre{overflow-x:auto;max-width:100%}
.keelson-comment>.wp-block-group{min-width:0;flex:1}
.bypostauthor>.keelson-comment .wp-block-comment-author-name::after{content:" \2605";color:var(--wp--preset--color--primary)}
.sticky .wp-block-post-title::before{content:"\2605 ";color:var(--wp--preset--color--primary)}
.keelson-footer-nav .wp-block-page-list{list-style:none;padding-inline-start:0;margin:0;display:grid;gap:.4em;font-size:var(--wp--preset--font-size--small)}
.keelson-footer-nav .wp-block-page-list ul{list-style:none;padding-inline-start:1em}
.keelson-footer-nav a{display:inline-block;padding-block:.2em;min-height:24px}
