/* Arena only. Shared marketing and partner layouts do not load this stylesheet.
   Blocks also work outside Arena: their root carries the same namespaced tokens. */
.arena-site, .arena-module {
    --arena-purple: #5b46d6;
    --arena-deep: #4533b8;
    --arena-wash: #efecfb;
    --arena-paper: #fbfaf7;
    --arena-linen: #f5f3ee;
    --arena-stone: #eeebe4;
    --arena-clay: #8f6a4f;
    --arena-ink: #18181c;
    --arena-muted: #62616a;
    --arena-line: #e5e2dc;
    color-scheme: light;
    color: var(--arena-ink);
    font: 1rem/1.75 Manrope, system-ui, sans-serif;
}
.arena-site { margin: 0; background: #fff; }
.arena-site *, .arena-module * { box-sizing: border-box; }
/* Keep site link colors inside site content; CMS edit/preview controls own their colors. */
.arena-site :where(.arena-header, #arena-main, .arena-footer) a, .arena-module a { color: var(--arena-purple); text-underline-offset: .22em; }
.arena-site :where(.arena-header, #arena-main, .arena-footer) a:hover, .arena-module a:hover { color: var(--arena-deep); }
.arena-site :focus-visible, .arena-module :focus-visible { outline: 3px solid var(--arena-purple); outline-offset: 4px; }
.arena-site button, .arena-site input, .arena-module button { font: inherit; }
.arena-site button, .arena-module button { cursor: pointer; }
.arena-site [hidden], .arena-module [hidden] { display: none !important; }
.arena-wrap { width: min(1240px, calc(100% - 3rem)); margin-inline: auto; }
.arena-site h1 { font-size: clamp(2rem, 4vw, 3.25rem); line-height: 1.15; letter-spacing: -.045em; margin: .9rem 0 1.1rem; font-weight: 750; }
.arena-site h1 em { font-style: normal; color: var(--arena-purple); }
.arena-site h2, .arena-module h2 { font-size: 1.45rem; line-height: 1.35; letter-spacing: -.025em; margin: 0 0 .9rem; font-weight: 750; }
.arena-site h3, .arena-module h3 { font-size: 1.1rem; line-height: 1.4; margin: 0 0 .6rem; font-weight: 700; }
.arena-site p, .arena-module p { margin: 0 0 1rem; }
.arena-lead { max-width: 44rem; font-size: 1.08rem; color: var(--arena-muted); }
.arena-muted { color: var(--arena-muted); }
.arena-eyebrow { color: var(--arena-clay); font: .75rem/1.6 "DM Mono", ui-monospace, monospace; letter-spacing: .1em; text-transform: uppercase; }
.arena-header { border-bottom: 1px solid var(--arena-line); }
.arena-header__bar { display: flex; align-items: center; gap: 2rem; min-height: 5rem; padding-block: 1rem; }
.arena-brand { display: flex; align-items: center; gap: .7rem; text-decoration: none; color: var(--arena-ink) !important; font-weight: 800; font-size: .9rem; letter-spacing: .1em; }
.arena-brand__arena { font-size: .85rem; font-weight: 400; color: var(--arena-muted); letter-spacing: 0; border-left: 1px solid var(--arena-line); padding-left: .8rem; }
.arena-menu { display: none; }
.arena-nav-desktop { display: flex; gap: 1.5rem; flex: 1; }
.arena-nav-desktop a { color: var(--arena-muted); font-size: .85rem; text-decoration: none; }
.arena-nav-desktop a[aria-current=page] { color: var(--arena-purple); font-weight: 700; }
.arena-menu > summary { display: none; }
.arena-menu nav { display: flex; gap: 1.5rem; align-items: center; }
.arena-menu a, .arena-technical-nav a { text-decoration: none; color: var(--arena-muted); font-size: .85rem; }
.arena-menu a[aria-current=page] { color: var(--arena-purple); font-weight: 700; }
.arena-menu a[href="/search"] { display: none; }
.arena-header__search { margin-left: auto; background: var(--arena-paper); border: 1px solid var(--arena-line); padding: .4rem .8rem; text-decoration: none; border-radius: .45rem; font-size: .8rem; color: var(--arena-muted) !important; white-space: nowrap; }
.arena-header__search kbd { font-size: .75rem; margin-left: .8rem; }
.arena-technical-nav { display: flex; gap: 1.6rem; flex-wrap: wrap; padding-block: .7rem; border-top: 1px solid var(--arena-line); }
.arena-technical-nav > span { font: .7rem/2 "DM Mono", monospace; letter-spacing: .08em; color: var(--arena-clay); text-transform: uppercase; }
.arena-footer { border-top: 1px solid var(--arena-line); background: var(--arena-paper); margin-top: 3rem; }
.arena-footer__bar { display: flex; gap: 1rem; justify-content: space-between; flex-wrap: wrap; padding-block: 1.5rem; font-size: .8rem; color: var(--arena-muted); }
.arena-footer nav { display: flex; gap: 1.4rem; flex-wrap: wrap; }
.arena-footer a { color: var(--arena-muted); text-decoration: none; }
.arena-home-header { background: var(--arena-paper); border-bottom: 1px solid var(--arena-line); padding-block: 3.2rem 2.5rem; }
.arena-search-form { display: flex; gap: .75rem; border: 1px solid #d6d0e7; background: #fff; border-radius: .6rem; padding: .4rem; max-width: 48rem; margin-top: 1.6rem; }
.arena-search-form input { flex: 1; min-width: 0; width: 100%; border: 0; padding: .5rem .8rem; background: #fff; color: var(--arena-ink); }
.arena-button { background: var(--arena-purple); border: 1px solid var(--arena-purple); color: #fff; border-radius: .35rem; padding: .6rem 1.1rem; font-weight: 700; }
.arena-button:hover { background: var(--arena-deep); }
.arena-popular { display: flex; gap: 1.1rem; flex-wrap: wrap; font-size: .8rem; margin-top: .8rem; color: var(--arena-muted); }
.arena-popular a { color: var(--arena-muted); text-decoration: none; }
.arena-page { padding-top: 2rem; }
.arena-page-header { margin-bottom: 2rem; }
.arena-breadcrumb { display: flex; gap: .7rem; flex-wrap: wrap; font-size: .8rem; color: var(--arena-muted); margin-bottom: 1.7rem; }
.arena-breadcrumb a { color: var(--arena-muted); }
.arena-topic--with-aside { display: grid; grid-template-columns: minmax(0, 1fr) 17rem; gap: 3rem; align-items: start; }
.arena-prerequisites { padding: 1.6rem; background: var(--arena-linen); border-radius: .75rem; }
.arena-prerequisites h2 { font-size: 1rem; }
.arena-prerequisites ul, .arena-prerequisites p { font-size: .9rem; color: var(--arena-muted); }
.arena-prerequisites ul { padding-left: 1.2rem; margin: 0 0 1.5rem; }
.arena-learning { max-width: 56rem; }
.arena-sections { min-width: 0; }
.arena-module { margin-block: 2.5rem; min-width: 0; }
.arena-module:first-child { margin-top: 0; }
.arena-wrap > .arena-module:first-child { margin-top: 2.5rem; }
.arena-task-grid > header { margin-bottom: 1.5rem; }
.arena-task-grid__items { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.4rem; }
.arena-task { display: flex; flex-direction: column; padding: 1.8rem; border: 1px solid var(--arena-line); border-radius: .75rem; position: relative; min-width: 0; }
.arena-task:focus-within, .arena-task:hover { border-color: var(--arena-purple); }
.arena-task h3 { font-size: 1.5rem; letter-spacing: -.03em; }
.arena-task__label { font: .8rem/1.5 "DM Mono", monospace; color: var(--arena-purple); margin-bottom: 1.5rem !important; }
.arena-task > p:not(.arena-task__label) { color: var(--arena-muted); font-size: .95rem; }
.arena-task > a { margin-top: auto; font-size: .9rem; font-weight: 750; text-decoration: none; }
.arena-task > a::after { content: ""; position: absolute; inset: 0; }
.arena-task-grid--resources { border-top: 1px solid var(--arena-line); padding-top: 2rem; }
.arena-task-grid--resources .arena-task-grid__items { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.arena-task-grid--resources .arena-task { padding: .5rem 0; border: 0; border-radius: 0; }
.arena-task-grid--resources .arena-task h3 { font-size: 1.05rem; }
.arena-task-grid--resources .arena-task__label { color: var(--arena-clay); }
.arena-steps { list-style: none; padding: 0; margin: 1.5rem 0; counter-reset: arena-step; }
.arena-step { counter-increment: arena-step; display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: 1rem; border-top: 1px solid var(--arena-line); padding: 1.4rem 0; }
.arena-step::before { content: counter(arena-step); background: var(--arena-wash); color: var(--arena-purple); width: 2rem; height: 2rem; border-radius: 50%; display: grid; place-items: center; font: .8rem "DM Mono", monospace; }
.arena-step h3 { font-size: 1rem; }
.arena-step a { text-decoration: none; }
.arena-step p { font-size: .9rem; color: var(--arena-muted); margin-bottom: 0; }
.arena-code { border: 1px solid var(--arena-line); background: var(--arena-paper); border-radius: .6rem; overflow: hidden; }
.arena-code__bar { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .7rem 1rem; border-bottom: 1px solid var(--arena-line); font: .75rem/1.6 "DM Mono", monospace; overflow-wrap: anywhere; }
.arena-code button { background: none; border: 0; padding: .2rem; color: var(--arena-purple); flex-shrink: 0; font-size: .8rem; }
.arena-code pre, .arena-prose pre, .arena-site .prose pre { margin: 0; padding: 1.25rem; white-space: pre-wrap; overflow-wrap: anywhere; font: .85rem/1.9 "DM Mono", ui-monospace, monospace; }
.arena-callout { padding: 1.3rem 1.5rem; border-left: 3px solid var(--arena-purple); background: var(--arena-wash); border-radius: 0 .5rem .5rem 0; }
.arena-callout h2 { font-size: 1.05rem; }
.arena-callout p:last-child { margin-bottom: 0; }
.arena-callout--warning { border-color: var(--arena-clay); background: var(--arena-linen); }
.arena-callout .arena-eyebrow { font-size: .7rem; }
.arena-figure { margin-inline: 0; }
.arena-figure img, .arena-video video { display: block; width: 100%; height: auto; border: 1px solid var(--arena-line); border-radius: .6rem; }
.arena-figure figcaption { color: var(--arena-muted); font-size: .8rem; margin-top: .7rem; }
.arena-transcript { margin-top: 1rem; }
.arena-transcript summary { cursor: pointer; color: var(--arena-purple); }
.arena-transcript .arena-prose { margin-top: 1rem; }
.arena-related { margin-top: 2rem; padding: 1.5rem; background: var(--arena-linen); border-radius: .5rem; }
.arena-related h2 { font-size: 1.1rem; }
.arena-prose, .arena-site .prose { overflow-wrap: anywhere; max-width: 48rem; }
.arena-prose h2, .arena-site .prose h2 { margin-top: 2.2rem; }
.arena-prose h3, .arena-site .prose h3 { margin-top: 1.8rem; }
.arena-prose p, .arena-site .prose p { margin: 0 0 1.15rem; }
.arena-prose img, .arena-site .prose img { max-width: 100%; height: auto; border-radius: .5rem; }
.arena-prose pre, .arena-site .prose pre { background: var(--arena-paper); border: 1px solid var(--arena-line); border-radius: .5rem; margin: 1.5rem 0; }
.arena-site .prose .arena-code pre { border: 0; border-radius: 0; margin: 0; }
.arena-prose :not(pre) > code, .arena-site .prose :not(pre) > code { font: .87em "DM Mono", monospace; background: var(--arena-linen); padding: .12em .3em; border-radius: .2rem; }
.arena-prose table, .arena-site .prose table { width: 100%; border-collapse: collapse; margin: 1.5rem 0; font-size: .88rem; table-layout: fixed; }
.arena-prose th, .arena-prose td, .arena-site .prose th, .arena-site .prose td { text-align: left; vertical-align: top; padding: .65rem; border-bottom: 1px solid var(--arena-line); overflow-wrap: anywhere; }
.arena-prose th, .arena-site .prose th { background: var(--arena-paper); }
.arena-prose blockquote, .arena-site .prose blockquote { margin-inline: 0; padding-left: 1.2rem; border-left: 3px solid var(--arena-line); color: var(--arena-muted); }
.arena-site .docs { display: grid; grid-template-columns: 14rem minmax(0, 1fr) 11rem; gap: 2.4rem; padding-block: 2.5rem 3rem; align-items: start; }
.arena-site .docs__rail, .arena-site .docs__toc { position: sticky; top: 1rem; max-height: calc(100dvh - 2rem); overflow-y: auto; }
.arena-site .docs__group { margin-bottom: 1.5rem; }
.arena-site .docs__group-title { font: .7rem/1.5 "DM Mono", monospace; color: var(--arena-clay); text-transform: uppercase; letter-spacing: .08em; margin: 0 0 .6rem; }
.arena-site .docs__list, .arena-site .docs__toc ul { list-style: none; padding: 0; margin: 0; }
.arena-site .docs__link { display: block; padding: .4rem .65rem; font-size: .82rem; text-decoration: none; color: var(--arena-muted); border-radius: .3rem; }
.arena-site .docs__link.is-current { background: var(--arena-wash); color: var(--arena-deep); font-weight: 700; }
.arena-site .docs__header { border-bottom: 1px solid var(--arena-line); padding-bottom: 1.4rem; margin-bottom: 1.7rem; }
.arena-site .docs__header h1 { font-size: clamp(1.9rem, 3vw, 2.5rem); }
.arena-site .docs__summary { color: var(--arena-muted); }
.arena-site .docs__eyebrow { font: .75rem "DM Mono", monospace; color: var(--arena-clay); text-transform: uppercase; }
.arena-site .docs__toc { font-size: .78rem; }
.arena-site .docs__toc-title { font-size: .8rem; }
.arena-site .docs__toc a { color: var(--arena-muted); text-decoration: none; display: block; padding: .4rem 0; }
.arena-site .docs__pager { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 2.5rem; }
.arena-site .docs__pager-link { border: 1px solid var(--arena-line); border-radius: .5rem; padding: 1rem; text-decoration: none; }
.arena-site .docs__pager-label { display: block; color: var(--arena-muted); font-size: .75rem; margin-bottom: .4rem; }
.arena-site .docs__pager-title { font-size: .9rem; }
.arena-site .docs__cards { display: grid; gap: 1rem; }
.arena-site .docs__card { padding: 1.4rem; border: 1px solid var(--arena-line); border-radius: .6rem; text-decoration: none; }
.arena-site .docs__card h2 { font-size: 1.15rem; }
.arena-site .docs__card p, .arena-site .docs__card-count { color: var(--arena-muted); font-size: .88rem; }
.arena-docs-mobile { display: none; }
.arena-site .releases, .arena-site .release { width: min(48rem, calc(100% - 3rem)); margin: 2.5rem auto; }
.arena-site .releases__list { list-style: none; margin: 2rem 0; padding: 0; }
.arena-site .releases__item { display: flex; gap: 1rem; justify-content: space-between; flex-wrap: wrap; border-top: 1px solid var(--arena-line); padding: 1.2rem 0; }
.arena-site .releases__date, .arena-site .release__meta { color: var(--arena-muted); font-size: .85rem; }
.arena-site .release__meta { display: flex; gap: 1rem; }
.arena-site .release__version { color: var(--arena-purple); font-family: "DM Mono", monospace; }
.arena-site .release__breaking { background: var(--arena-linen); padding: 1rem; border-left: 3px solid var(--arena-clay); }
.arena-site .release__upgrade { margin-top: 2rem; }
.arena-sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.arena-skip { position: absolute; left: 1rem; top: -10rem; z-index: 1000; background: #fff; padding: .8rem; }
.arena-skip:focus { top: 1rem; }
@media (max-width: 1100px) {
    .arena-site .docs { grid-template-columns: 13rem minmax(0, 1fr); gap: 2rem; }
    .arena-site .docs__toc { display: none; }
    .arena-task-grid--resources .arena-task-grid__items { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
    .arena-header__bar { flex-wrap: wrap; gap: 1rem; min-height: 4.5rem; }
    .arena-brand__arena { display: none; }
    .arena-nav-desktop { display: none; }
    .arena-menu { display: block; }
    .arena-menu { flex: 0 0 auto; margin-left: auto; order: 3; }
    .arena-menu > summary { display: block; cursor: pointer; padding: .4rem .6rem; border: 1px solid var(--arena-line); border-radius: .3rem; font-size: .8rem; }
    .arena-menu nav { flex-direction: column; align-items: flex-start; padding: 1rem 0; }
    .arena-menu a[href="/search"] { display: block; }
    .arena-menu[open] { flex-basis: 100%; }
    .arena-header__search { margin-left: auto; }
    .arena-header__search kbd { display: none; }
    .arena-technical-nav { gap: 1.2rem; }
    .arena-technical-nav > span { display: none; }
    .arena-wrap { width: calc(100% - 2.5rem); }
    .arena-home-header { padding-block: 2rem; }
    .arena-topic--with-aside, .arena-task-grid__items { grid-template-columns: 1fr; gap: 1.5rem; }
    .arena-prerequisites { order: -1; }
    .arena-site .docs { display: block; padding-top: 1.5rem; }
    .arena-site .docs__rail { display: none; }
    .arena-docs-mobile { display: block; margin-top: 1rem; padding: .9rem 1.1rem; background: var(--arena-paper); border: 1px solid var(--arena-line); border-radius: .5rem; }
    .arena-docs-mobile > summary { color: var(--arena-purple); cursor: pointer; }
    .arena-docs-mobile nav { margin-top: 1rem; }
    .arena-site .docs__pager { grid-template-columns: 1fr; }
    .arena-search-form input { padding-inline: .4rem; font-size: 1rem; }
    .arena-search-form button { padding-inline: .75rem; }
}
@media (max-width: 380px) {
    .arena-task-grid--resources .arena-task-grid__items { grid-template-columns: 1fr; }
    .arena-brand { gap: .4rem; font-size: .8rem; }
    .arena-header__bar { gap: .6rem; }
}
@media (pointer: coarse) {
    .arena-site button, .arena-site summary, .arena-menu a, .arena-technical-nav a { min-height: 44px; }
    .arena-menu a, .arena-technical-nav a { display: inline-flex; align-items: center; }
}
.arena-site .search { max-width: 880px; margin: 0 auto; padding: 3rem 1.5rem 5rem; }
.arena-site .search__title { font-size: clamp(2rem, 5vw, 3.2rem); letter-spacing: -.04em; }
.arena-site .search__form { display: flex; flex-wrap: wrap; gap: .75rem; margin: 1.5rem 0 2rem; }
.arena-site .search__label { flex-basis: 100%; font-weight: 700; }
.arena-site .search__input { flex: 1; min-width: 12rem; padding: .85rem 1rem; border: 1px solid #b8b1ca; border-radius: .5rem; font: inherit; background: white; color: #18181c; }
.arena-site .search__button { padding: .85rem 1.25rem; border: 0; border-radius: .5rem; background: #5b46d6; color: white; font: inherit; font-weight: 700; cursor: pointer; }
.arena-site .search__bar { border-bottom: 1px solid #e5e1eb; padding-bottom: 1rem; }
.arena-site .search__sort { display: flex; flex-wrap: wrap; gap: 1rem; font-size: .85rem; }
.arena-site .search__sort-link.is-current { font-weight: 800; text-decoration: underline; text-underline-offset: .25em; }
.arena-site .search__results { list-style: none; padding: 0; margin: 0; }
.arena-site .search__result { padding: 1.5rem 0; border-bottom: 1px solid #e5e1eb; }
.arena-site .search__result-title { font-weight: 800; font-size: 1.2rem; }
.arena-site .search__result-meta { display: flex; flex-wrap: wrap; gap: .5rem 1rem; margin-top: .4rem; font-size: .8rem; color: #625c6b; overflow-wrap: anywhere; }
.arena-site .search__result-summary { line-height: 1.7; margin-bottom: 0; }
.arena-site .search__featured { background: var(--search-featured-bg, #efecfb); border-radius: .75rem; padding: 0 1rem; margin-top: 1rem; }
.arena-site .search__featured-result { padding: 1rem 0; }
.arena-site .search__featured-label { display: block; font-size: .75rem; font-weight: 800; margin-bottom: .5rem; }
.arena-site .search__featured .search__result-title { font-size: var(--search-featured-title-size, 1.2rem); color: var(--search-featured-title-color, #4533b8); }
.arena-site .search__featured .search__result-summary { font-size: var(--search-featured-text-size, 1rem); color: var(--search-featured-text-color, #18181c); }
.arena-site .search__pager { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 1rem; margin-top: 2rem; }
.arena-site .search__empty { padding: 2rem 0; }
