/* Deliberately scoped: no homepage, article, book or research-page changes. */
body.ab-playground-page{--play-paper:#f6f0e7;--play-surface:#fffaf3;--play-ink:#241b22;--play-muted:#74646b;--play-wine:#4b1026;--play-accent:#aa2945;--play-gold:#b88a49;--play-line:#d9c9be;--play-radius:20px;--play-shadow:0 18px 44px rgb(47 19 29 / .12);--play-display:Georgia,'Times New Roman',serif;--ab-header-h:64px;--ab-header-height:65px;--ab-gutter:24px;--ab-max:1120px;background:var(--play-paper);color:var(--play-ink);color-scheme:light}
:root[data-theme='dark'] body.ab-playground-page{--play-paper:#1c1319;--play-surface:#2a1e25;--play-ink:#fff3e7;--play-muted:#c4aeb8;--play-wine:#611d38;--play-accent:#e58b9d;--play-gold:#d1aa70;--play-line:#58404b;--play-shadow:0 18px 44px rgb(0 0 0 / .24);color-scheme:dark}
body.ab-playground-page .ab-site-header{background:var(--play-paper);color:var(--play-ink);border-bottom:1px solid var(--play-line);backdrop-filter:none}
body.ab-playground-page .ab-site-header.is-scrolled{background:var(--play-paper)}
body.ab-playground-page .ab-header-inner{min-height:var(--ab-header-h);gap:18px}
body.ab-playground-page .ab-site-header .ab-brand{color:var(--play-ink)}
body.ab-playground-page .ab-playground{background:var(--play-paper);color:var(--play-ink);min-height:75vh;font-size:16px;line-height:1.55;padding-bottom:36px}
body.ab-playground-page .ab-playground .ab-page-hero{background:transparent;padding:calc(var(--ab-header-h) + 20px) 0 20px;overflow:visible}
body.ab-playground-page .ab-playground .play-head{padding:calc(var(--ab-header-h) + 20px) 0 20px}
body.ab-playground-page .ab-playground h1{font-family:var(--play-display);font-size:clamp(2rem,3.4vw,2.9rem);line-height:1.06;letter-spacing:-.035em;font-weight:500;color:var(--play-ink);max-width:none}
body.ab-playground-page .ab-playground h2,body.ab-playground-page .ab-playground h3{font-family:var(--play-display)}
body.ab-playground-page .ab-playground .ab-crumbs{margin:0 0 10px;font-size:12px;line-height:1.3;color:var(--play-muted);gap:8px}
body.ab-playground-page .ab-playground .ab-eyebrow{color:var(--play-muted);font-size:11px;letter-spacing:.14em;margin:0 0 8px}
body.ab-playground-page .ab-playground .play-meta{color:var(--play-muted);font-size:12px}
body.ab-playground-page .ab-playground .play-stage{max-width:1120px;margin-inline:auto}
body.ab-playground-page .ab-playground .play-panel{background:var(--play-surface);border:1px solid var(--play-line);border-radius:var(--play-radius);box-shadow:var(--play-shadow);padding:24px}
body.ab-playground-page .ab-playground .play-button,body.ab-playground-page .ab-playground .play-button-secondary{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:10px 22px;border:1px solid var(--play-wine);border-radius:99px;font-family:inherit;font-size:15px;font-weight:600;line-height:1.3;text-decoration:none;cursor:pointer;transition:transform .2s,box-shadow .2s;background:var(--play-wine);color:#fffaf3}
body.ab-playground-page .ab-playground .play-button-secondary{background:transparent;color:var(--play-ink);border-color:var(--play-line)}
body.ab-playground-page .ab-playground .play-chip{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:1px solid var(--play-line);border-radius:99px;background:var(--play-surface);color:var(--play-ink);cursor:pointer}
body.ab-playground-page .ab-playground .play-chip[aria-pressed='true']{background:var(--play-wine);color:#fffaf3;border-color:var(--play-wine)}
body.ab-playground-page .ab-playground :is(a,button,input,select,summary):focus-visible{outline:3px solid var(--play-gold);outline-offset:4px}
body.ab-playground-page .ab-playground .play-details{border-top:1px solid var(--play-line);padding:14px 0}
body.ab-playground-page .ab-playground .play-details summary{cursor:pointer;min-height:44px;display:flex;align-items:center}
@media(max-width:700px){body.ab-playground-page{--ab-header-h:58px;--ab-header-height:59px;--ab-gutter:16px}body.ab-playground-page .ab-playground .ab-page-hero,body.ab-playground-page .ab-playground .play-head{padding-top:calc(var(--ab-header-h) + 16px);padding-bottom:16px}body.ab-playground-page .ab-playground h1{font-size:clamp(1.8rem,7.5vw,2.2rem)}body.ab-playground-page .ab-playground .play-panel{padding:18px}body.ab-playground-page .ab-playground .ab-crumbs{font-size:11px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){body.ab-playground-page .ab-playground *,body.ab-playground-page .ab-playground *::before,body.ab-playground-page .ab-playground *::after{scroll-behavior:auto!important;transition:none!important}}
@media print{body.ab-playground-page{--play-paper:#fff;--play-surface:#fff;--play-ink:#000;--play-muted:#333;--play-line:#aaa;background:#fff;color:#000}body.ab-playground-page .ab-playground .ab-page-hero,body.ab-playground-page .ab-playground .play-head{padding:10px 0}body.ab-playground-page .ab-playground .play-panel{box-shadow:none}}
/* Keep the existing navigation fully operable, with a deliberate light/dark palette. */
body.ab-playground-page .ab-site-header{--ab-ivory:var(--play-ink);--ab-ivory-dim:var(--play-muted);--ab-frost:var(--play-ink);--ab-frost-dim:var(--play-muted);--ab-line:var(--play-line);--ab-night:var(--play-paper);--ab-steel:var(--play-surface);--ab-steel-2:var(--play-surface);--ab-blood-hot:var(--play-accent);background:var(--play-paper)!important;color:var(--play-ink);box-shadow:none}
body.ab-playground-page .ab-site-header::before{display:none}
body.ab-playground-page .ab-site-header .ab-header-inner,body.ab-playground-page .ab-site-header.is-scrolled .ab-header-inner{min-height:var(--ab-header-h);padding-block:0}
body.ab-playground-page .ab-site-header .ab-wordmark,body.ab-playground-page .ab-site-header .ab-menu-toggle{color:var(--play-ink)}
body.ab-playground-page .ab-site-header :is(.ab-primary-nav,.ab-mega-panel){background:var(--play-paper);color:var(--play-ink)}
body.ab-playground-page .ab-site-header .ab-free-pill{background:var(--play-wine);color:#fffaf3;border-color:var(--play-wine)}
body.ab-playground-page .ab-playground .ab-btn{min-height:44px}
body.ab-playground-page .ab-site-header{position:fixed}
body.ab-playground-page .ab-playground .ab-crumbs :is(a,span){color:var(--play-muted)}
/* Compact first-visit consent without removing text, choices or preference controls. */
body.ab-playground-page .ab-consent-bar{background:var(--play-surface);color:var(--play-muted);border-color:var(--play-line);font-size:13px;line-height:1.4;gap:8px 14px;padding:12px 14px;box-shadow:0 8px 36px #241b2233;max-height:calc(100dvh - 84px);overflow-y:auto}
body.ab-playground-page .ab-consent-bar a,body.ab-playground-page .ab-consent-opt strong{color:var(--play-ink)}
body.ab-playground-page .ab-consent-bar .ab-consent-actions .ab-btn{min-height:44px;padding:8px 12px;white-space:normal;line-height:1.2;font-size:12px;border-radius:10px}
body.ab-playground-page .ab-consent-bar .ab-btn-ghost{background:transparent;color:var(--play-ink);border-color:var(--play-line)}
body.ab-playground-page .ab-consent-bar .ab-btn-blood{background:var(--play-wine);color:#fffaf3;border-color:var(--play-wine)}
body.ab-playground-page .ab-consent-opt{border-color:var(--play-line)}
body.ab-playground-page .ab-consent-opt span{color:var(--play-muted)}
body.ab-playground-page .ab-consent-bar :is(a,button,input):focus-visible{outline:3px solid var(--play-gold);outline-offset:2px}
@media(max-width:700px){body.ab-playground-page .ab-consent-bar{left:8px;right:8px;bottom:max(8px,env(safe-area-inset-bottom));padding:10px 12px;border-radius:14px}body.ab-playground-page .ab-consent-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%}body.ab-playground-page:has(.ab-consent-bar:not([hidden])) .ab-playground{padding-bottom:190px}:root:has(body.ab-playground-page .ab-consent-bar:not([hidden])){scroll-padding-bottom:190px}}
body.ab-playground-page .ab-consent-bar p{font-size:13px;line-height:1.4}
@media(max-width:700px){body.ab-playground-page .ab-consent-actions>:nth-child(2){grid-column:auto;order:0;min-height:44px}body.ab-playground-page .ab-consent-bar p a{padding-block:6px;margin-block:-6px}}
