:root{
    --docs-shell-max:96rem;
    --docs-reading-max:76ch;
    --docs-gutter:clamp(1rem,3vw,2.5rem);
    --docs-section-gap:clamp(2.25rem,5vw,4.75rem);
    --docs-panel-padding:clamp(1rem,2.2vw,1.6rem);
    --docs-header-offset:5.5rem;
    --docs-display-font:"Segoe UI Variable Display","Segoe UI",system-ui,sans-serif;
    --docs-body-font:"Segoe UI Variable Text","Segoe UI",system-ui,sans-serif;
    --docs-mono-font:"Cascadia Code","SFMono-Regular",Consolas,monospace;
    --docs-cosmic-surface:color-mix(in srgb,var(--primary-color) 88%,var(--focus-color) 12%);
    --docs-cosmic-border:color-mix(in srgb,var(--focus-color) 48%,var(--border-color));
    --docs-soft-glow:color-mix(in srgb,var(--focus-color) 12%,transparent);
    --docs-warm-glow:color-mix(in srgb,var(--warning-color) 14%,transparent);
}

*{
    box-sizing:border-box;
}

html{
    min-height:100%;
    scroll-behavior:smooth;
}

body{
    background-color:var(--arcane-surface);
    background-image:
        radial-gradient(circle at 12% 0,var(--docs-soft-glow),transparent 30rem),
        radial-gradient(circle at 88% 18%,var(--docs-warm-glow),transparent 28rem);
    font-family:var(--docs-body-font);
    line-height:1.55;
    margin:0;
    min-height:100vh;
    text-rendering:optimizeLegibility;
}

body::before{
    background-image:
        radial-gradient(circle,rgba(255,255,255,.3) 0 .05rem,transparent .08rem),
        radial-gradient(circle,rgba(118,87,213,.22) 0 .04rem,transparent .07rem);
    background-position:0 0,1.6rem 1.4rem;
    background-size:3.5rem 3.5rem,4.75rem 4.75rem;
    content:"";
    inset:0;
    mask-image:linear-gradient(to bottom,rgba(0,0,0,.36),transparent 34rem);
    opacity:.22;
    pointer-events:none;
    position:fixed;
    z-index:-1;
}

a{
    color:var(--arcane-focus);
    text-decoration-thickness:.08em;
    text-underline-offset:.18em;
}

a:hover{
    text-decoration-thickness:.12em;
}

button,
input{
    font:inherit;
}

:where(a,button,input,summary):focus-visible{
    border-radius:var(--arcane-radius-small);
    outline:3px solid color-mix(in srgb,var(--arcane-focus) 38%,transparent);
    outline-offset:3px;
}

:where(h1,[part="content"])[tabindex="-1"]:focus{
    outline:none;
}

::selection{
    background:color-mix(in srgb,var(--arcane-focus) 34%,transparent);
}

.skip-link{
    background:var(--arcane-surface-raised);
    border:2px solid var(--arcane-focus);
    border-radius:var(--arcane-radius-small);
    color:inherit;
    left:var(--arcane-space-3);
    padding:var(--arcane-space-3) var(--arcane-space-4);
    position:fixed;
    top:var(--arcane-space-3);
    transform:translateY(-180%);
    z-index:1000;
}

.skip-link:focus{
    transform:translateY(0);
}

html-import[data-component-state="error"]::part(error){
    background:color-mix(in srgb,var(--arcane-danger) 10%,var(--arcane-surface-raised));
    border:1px solid color-mix(in srgb,var(--arcane-danger) 48%,var(--arcane-border));
    border-radius:var(--arcane-radius-medium);
    color:inherit;
    display:block;
    margin:0;
    padding:var(--arcane-space-4);
}

.assistant-panel::part(close-button){
    display:none;
}

.app-bar{
    --app-bar-surface:color-mix(in srgb,var(--primary-color) 94%,var(--focus-color) 6%);
    --app-bar-accent:color-mix(in srgb,var(--focus-color) 76%,var(--warning-color));
    --app-bar-active-text:var(--button-text-color);
    display:block;
    min-height:4rem;
    position:sticky;
    top:0;
    z-index:100;
}

.app-bar::part(nav){
    backdrop-filter:blur(1rem);
    padding-inline:max(var(--docs-gutter),calc((100vw - var(--docs-shell-max))/2 + var(--docs-gutter)));
}

.app-bar::part(brand-mark){
    background:
        linear-gradient(145deg,color-mix(in srgb,var(--focus-color) 75%,var(--button-text-color)),color-mix(in srgb,var(--warning-color) 60%,var(--focus-color)));
    border-color:color-mix(in srgb,var(--button-text-color) 72%,transparent);
    box-shadow:0 0 1.2rem color-mix(in srgb,var(--focus-color) 45%,transparent);
}

.docs-shell,
.page-shell{
    margin:0 auto;
    max-width:var(--docs-shell-max);
    min-height:calc(100vh - 10rem);
    outline:none;
    padding:clamp(1.25rem,3vw,2.75rem) var(--docs-gutter) var(--docs-section-gap);
}

.docs-view{
    display:grid;
    gap:clamp(1.5rem,3vw,2.75rem);
}

.home-view{
    gap:var(--docs-section-gap);
}

.docs-view[hidden]{
    display:none;
}

.eyebrow{
    color:var(--arcane-muted);
    display:block;
    font-size:.72rem;
    font-weight:760;
    letter-spacing:.13em;
    line-height:1.35;
    margin:0 0 var(--arcane-space-1);
    text-transform:uppercase;
}

.hero{
    background:var(--arcane-surface-raised);
    border-color:var(--docs-cosmic-border);
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(25rem,1.1fr);
    min-height:31rem;
    overflow:hidden;
    position:relative;
}

.hero::after{
    background:linear-gradient(90deg,var(--docs-soft-glow),transparent 38%);
    content:"";
    inset:0;
    pointer-events:none;
    position:absolute;
}

.hero__copy{
    align-content:center;
    display:grid;
    gap:var(--arcane-space-4);
    padding:clamp(1.5rem,4vw,3.75rem);
    position:relative;
    z-index:2;
}

.hero__status-line{
    align-items:center;
    color:var(--arcane-muted);
    display:flex;
    flex-wrap:wrap;
    font-size:.82rem;
    gap:var(--arcane-space-2);
}

.hero h1,
.page-hero h1{
    font-family:var(--docs-display-font);
    font-size:clamp(2.5rem,5.2vw,4.35rem);
    font-weight:720;
    letter-spacing:-.045em;
    line-height:1.02;
    margin:0;
    max-width:12ch;
    text-wrap:balance;
}

.hero__lede{
    color:var(--arcane-muted);
    font-size:clamp(1.02rem,1.5vw,1.2rem);
    line-height:1.65;
    margin:0;
    max-width:42rem;
}

.hero__actions{
    display:flex;
    flex-wrap:wrap;
    gap:var(--arcane-space-3);
    margin-top:var(--arcane-space-2);
}

.project-facts{
    display:grid;
    gap:var(--arcane-space-2);
    grid-template-columns:repeat(2,minmax(0,1fr));
}

.project-facts a{
    background:color-mix(in srgb,var(--arcane-surface) 78%,transparent);
    border:1px solid var(--arcane-border);
    border-radius:var(--arcane-radius-small);
    color:inherit;
    display:grid;
    gap:.15rem;
    min-width:0;
    padding:var(--arcane-space-2) var(--arcane-space-3);
    text-decoration:none;
}

.project-facts a:hover{
    border-color:var(--arcane-focus);
}

.project-facts span{
    color:var(--arcane-muted);
    font-size:.68rem;
    font-weight:720;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.project-facts strong{
    font-size:.78rem;
    overflow-wrap:anywhere;
}

.hero__visual{
    background:var(--docs-cosmic-surface);
    inline-size:100%;
    margin:0;
    min-inline-size:0;
    min-height:100%;
    overflow:hidden;
    position:relative;
}

.hero__visual::after{
    background:
        linear-gradient(90deg,var(--arcane-surface-raised),transparent 22%),
        linear-gradient(0deg,rgba(4,8,18,.84),transparent 45%);
    content:"";
    inset:0;
    pointer-events:none;
    position:absolute;
}

.hero__visual img{
    display:block;
    height:100%;
    object-fit:cover;
    object-position:center;
    width:100%;
}

.hero__visual figcaption{
    bottom:clamp(1rem,2.5vw,1.75rem);
    color:rgb(237,241,250);
    font-size:.86rem;
    font-weight:650;
    left:clamp(1rem,2.5vw,1.75rem);
    letter-spacing:.02em;
    max-width:28rem;
    position:absolute;
    right:clamp(1rem,2.5vw,1.75rem);
    text-shadow:0 .1rem .8rem rgba(0,0,0,.9);
    z-index:1;
}

.section-heading,
.view-heading{
    align-items:end;
    display:flex;
    gap:var(--arcane-space-5);
    justify-content:space-between;
}

.section-heading h2,
.view-heading h1,
.page-heading h1{
    font-family:var(--docs-display-font);
    font-weight:720;
    letter-spacing:-.025em;
    line-height:1.08;
    margin:0;
    text-wrap:balance;
}

.section-heading h2{
    font-size:clamp(1.65rem,3vw,2.5rem);
}

.view-heading h1,
.page-heading h1{
    font-size:clamp(2.15rem,4.5vw,3.75rem);
}

.section-heading>p,
.view-heading>div>p:last-child,
.page-heading>p{
    color:var(--arcane-muted);
    line-height:1.6;
    margin:.55rem 0 0;
    max-width:46rem;
}

.section-heading>p{
    max-width:34rem;
}

.section-heading--compact{
    align-items:start;
}

.section-heading--compact h2{
    font-size:clamp(1.5rem,2.5vw,2rem);
}

.breadcrumb{
    align-items:center;
    color:var(--arcane-muted);
    display:flex;
    flex-wrap:wrap;
    font-size:.82rem;
    font-weight:650;
    gap:var(--arcane-space-2);
    margin-bottom:calc(-1 * var(--arcane-space-3));
}

.breadcrumb a{
    color:inherit;
}

.home-search{
    display:grid;
    grid-template-columns:4.75rem minmax(0,1fr);
    overflow:hidden;
}

.home-search__ornament{
    align-items:center;
    background:
        radial-gradient(circle at 50% 28%,color-mix(in srgb,var(--focus-color) 42%,transparent),transparent 42%),
        var(--docs-cosmic-surface);
    border-inline-end:1px solid var(--docs-cosmic-border);
    color:var(--button-text-color);
    display:flex;
    font-family:var(--docs-display-font);
    font-size:2rem;
    font-weight:780;
    justify-content:center;
    text-shadow:0 0 1rem color-mix(in srgb,var(--focus-color) 80%,transparent);
}

.home-search__body{
    align-items:end;
    display:grid;
    gap:clamp(1.25rem,4vw,4rem);
    grid-template-columns:minmax(0,.85fr) minmax(20rem,1.15fr);
    padding:var(--docs-panel-padding);
}

.home-search__body p:not(.eyebrow),
.labs-callout__body p:not(.eyebrow){
    color:var(--arcane-muted);
    line-height:1.55;
    margin:.45rem 0 0;
}

.search-form,
.search-form label{
    min-width:0;
}

.search-control{
    display:grid;
    gap:var(--arcane-space-2);
    grid-template-columns:1fr auto;
}

.pathway-section,
.catalog-snapshot,
.screenshots-section{
    display:grid;
    gap:var(--arcane-space-5);
}

.pathway-grid{
    display:grid;
    gap:var(--arcane-space-4);
    grid-template-columns:repeat(4,minmax(0,1fr));
}

.pathway-card{
    color:inherit;
    display:grid;
    gap:var(--arcane-space-3);
    min-height:19rem;
    overflow:hidden;
    padding:var(--docs-panel-padding);
    position:relative;
    text-decoration:none;
    transition:border-color 160ms ease,box-shadow 160ms ease,transform 160ms ease;
}

.pathway-card::before{
    background:linear-gradient(90deg,var(--arcane-focus),color-mix(in srgb,var(--arcane-warning) 65%,var(--arcane-focus)));
    content:"";
    height:.2rem;
    inset:0 0 auto;
    position:absolute;
}

.pathway-card:hover{
    border-color:var(--docs-cosmic-border);
    box-shadow:var(--arcane-shadow-medium);
    text-decoration:none;
    transform:translateY(-.2rem);
}

.pathway-card__number{
    color:color-mix(in srgb,var(--arcane-focus) 72%,var(--arcane-muted));
    font:720 .82rem/1 var(--docs-mono-font);
    justify-self:end;
}

.pathway-card>strong{
    font-family:var(--docs-display-font);
    font-size:1.45rem;
    line-height:1.15;
}

.pathway-card>span:not(.eyebrow,.pathway-card__number,.pathway-card__link){
    color:var(--arcane-muted);
    line-height:1.55;
}

.pathway-card__link{
    align-self:end;
    color:var(--arcane-focus);
    font-weight:720;
    margin-top:auto;
}

.catalog-snapshot{
    background:color-mix(in srgb,var(--arcane-surface-raised) 78%,transparent);
    border-block:1px solid var(--arcane-border);
    margin-inline:calc(-1 * var(--docs-gutter));
    padding:clamp(1.5rem,3vw,2.5rem) var(--docs-gutter);
}

.labs-callout{
    overflow:hidden;
}

.labs-callout__body{
    align-items:center;
    display:grid;
    gap:clamp(1rem,4vw,3rem);
    grid-template-columns:minmax(0,1fr) auto;
    padding:var(--docs-panel-padding);
}

.labs-links{
    display:flex;
    flex-wrap:wrap;
    gap:var(--arcane-space-2);
    justify-content:flex-end;
}

.labs-links a{
    background:var(--arcane-secondary);
    border:1px solid var(--arcane-border);
    border-radius:999px;
    color:inherit;
    font-size:.84rem;
    font-weight:680;
    padding:.55rem .8rem;
    text-decoration:none;
}

.labs-links a:hover{
    border-color:var(--arcane-focus);
    color:var(--arcane-focus);
}

.document-workspace,
.article-shell{
    align-items:start;
    display:grid;
    gap:clamp(1.25rem,2.5vw,2.25rem);
    grid-template-columns:minmax(17rem,20rem) minmax(0,1fr);
}

.catalog-panel{
    max-block-size:calc(100vh - var(--docs-header-offset) - var(--arcane-space-4));
    max-block-size:calc(100dvh - var(--docs-header-offset) - var(--arcane-space-4));
    overflow:hidden;
    position:sticky;
    top:var(--docs-header-offset);
}

.catalog-disclosure{
    min-width:0;
}

.catalog-disclosure[open]{
    display:flex;
    flex-direction:column;
    max-block-size:inherit;
}

.catalog-disclosure__summary{
    align-items:center;
    background:color-mix(in srgb,var(--arcane-surface-raised) 94%,var(--arcane-focus) 6%);
    cursor:pointer;
    display:flex;
    gap:var(--arcane-space-3);
    justify-content:space-between;
    list-style:none;
    min-height:4.6rem;
    padding:var(--arcane-space-4);
}

.catalog-disclosure__summary::-webkit-details-marker{
    display:none;
}

.catalog-disclosure__summary::after{
    color:var(--arcane-muted);
    content:"+";
    font:700 1.15rem/1 var(--docs-mono-font);
    order:2;
}

.catalog-disclosure[open]>.catalog-disclosure__summary{
    border-bottom:1px solid var(--arcane-border);
}

.catalog-disclosure[open]>.catalog-disclosure__summary::after{
    content:"−";
}

.catalog-disclosure__summary .arcane-count{
    margin-inline-start:auto;
}

.catalog-panel__body{
    display:grid;
    gap:var(--arcane-space-4);
    min-block-size:0;
    overflow-y:auto;
    overscroll-behavior-block:contain;
    padding:var(--arcane-space-4);
    scrollbar-gutter:stable;
}

.document-results{
    display:grid;
    gap:var(--arcane-space-4);
}

.document-result-group{
    display:grid;
    gap:var(--arcane-space-2);
}

.document-result-group__title{
    color:var(--arcane-muted);
    font-size:.7rem;
    font-weight:760;
    letter-spacing:.1em;
    margin:var(--arcane-space-2) 0 0;
    text-transform:uppercase;
}

.document-result{
    background:transparent;
    border:1px solid transparent;
    border-radius:var(--arcane-radius-medium);
    color:inherit;
    display:grid;
    gap:.38rem;
    padding:.75rem .8rem;
    text-align:start;
    text-decoration:none;
}

.document-result:hover,
.document-result:focus-visible,
.document-result[aria-current="page"]{
    background:var(--arcane-secondary);
    border-color:var(--arcane-focus);
    text-decoration:none;
}

.document-result[aria-current="page"]{
    box-shadow:inset .2rem 0 0 var(--arcane-focus);
}

.document-result__title{
    font-size:.94rem;
    font-weight:720;
    line-height:1.3;
}

.document-result__summary{
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    color:var(--arcane-muted);
    display:-webkit-box;
    font-size:.8rem;
    line-height:1.4;
    overflow:hidden;
}

.document-result__meta{
    color:var(--arcane-muted);
    display:flex;
    flex-wrap:wrap;
    font-size:.72rem;
    gap:var(--arcane-space-2);
    line-height:1.35;
}

.catalog-status{
    border-top:1px solid var(--arcane-border);
    color:var(--arcane-muted);
    font-size:.78rem;
    line-height:1.45;
    margin:0;
    padding-top:var(--arcane-space-3);
}

.document-panel{
    min-height:24rem;
    overflow:hidden;
    scroll-margin-top:var(--docs-header-offset);
}

.document-panel[data-state="error"]{
    min-height:auto;
}

.catalog-failure{
    align-content:start;
    display:grid;
    gap:var(--arcane-space-4);
    padding:var(--docs-panel-padding);
}

.catalog-failure[hidden]{
    display:none;
}

.catalog-failure p,
.catalog-failure h2{
    margin:0;
}

#documentViewer,
#sourceViewer,
#markdownSpecimen{
    display:block;
}

#documentViewer::part(container){
    align-items:start;
    display:grid;
    gap:clamp(1.25rem,3vw,2.75rem);
    grid-template-columns:minmax(0,var(--docs-reading-max)) minmax(12rem,16rem);
    justify-content:center;
    padding:clamp(1.25rem,3.5vw,3rem);
}

#documentViewer::part(status){
    grid-column:1/-1;
}

#documentViewer::part(content){
    font-size:1rem;
    grid-column:1;
    grid-row:1;
    max-width:var(--docs-reading-max);
    min-width:0;
}

#documentViewer::part(table-of-contents){
    grid-column:2;
    grid-row:1;
    margin:0;
    max-height:calc(100vh - 8rem);
    overflow:auto;
    position:sticky;
    top:var(--docs-header-offset);
}

#sourceViewer{
    padding:var(--docs-panel-padding);
}

.docs-article,
.article-copy{
    font-size:1rem;
    line-height:1.7;
    margin-inline:auto;
    max-width:var(--docs-reading-max);
    overflow-wrap:anywhere;
}

.docs-article :where(h1,h2,h3,h4),
.article-copy :where(h1,h2,h3,h4){
    font-family:var(--docs-display-font);
    letter-spacing:-.018em;
    line-height:1.2;
    margin-block:1.8em .65em;
    scroll-margin-top:var(--docs-header-offset);
}

.docs-article :where(p,ul,ol,pre,table,blockquote),
.article-copy :where(p,ul,ol,pre,table,blockquote){
    margin-block:0 1.15rem;
}

.component-grid{
    align-items:start;
    display:grid;
    gap:var(--arcane-space-5);
    grid-template-columns:repeat(auto-fit,minmax(min(100%,25rem),1fr));
}

.specimen{
    align-self:start;
    display:grid;
    overflow:hidden;
}

.specimen__stage{
    align-content:start;
    background:var(--arcane-surface);
    display:grid;
    min-height:10rem;
    overflow:auto;
    padding:var(--arcane-space-4);
}

.specimen__stage>html-import{
    margin:auto;
    max-width:100%;
    width:100%;
}

.specimen__stage--source>html-import{
    inline-size:100%;
    margin:0;
    padding:0;
    text-align:start;
}

.screenshot-grid{
    display:grid;
    gap:var(--arcane-space-4);
    grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));
}

.screenshot-card{
    margin:0;
    overflow:hidden;
}

.screenshot-card img{
    aspect-ratio:16/10;
    background:var(--arcane-surface);
    border-bottom:1px solid var(--arcane-border);
    display:block;
    height:auto;
    object-fit:contain;
    width:100%;
}

.screenshot-card figcaption{
    display:grid;
    gap:var(--arcane-space-1);
    line-height:1.4;
    padding:var(--arcane-space-3);
}

.screenshot-card strong{
    font-size:.95rem;
}

.screenshot-card span{
    color:var(--arcane-muted);
    font-size:.82rem;
}

.test-results{
    overflow:hidden;
}

.test-run-announcement{
    color:var(--arcane-muted);
    font-size:.85rem;
    margin:var(--arcane-space-1) 0 0;
}

.test-result-list{
    display:grid;
    gap:var(--arcane-space-3);
    list-style:none;
    margin:0;
}

.test-result-set{
    align-items:end;
    display:flex;
    gap:var(--arcane-space-3);
    justify-content:space-between;
}

.test-result-set:not(:first-child){
    border-block-start:1px solid var(--arcane-border);
    margin-block-start:var(--arcane-space-3);
    padding-block-start:var(--arcane-space-5);
}

.test-result-set__title{
    font-size:1.05rem;
    margin:0;
}

.test-result-set__count{
    color:var(--arcane-muted);
    font:600 .8rem/1.3 var(--docs-mono-font);
}

.test-result{
    align-items:start;
    border:1px solid var(--arcane-border);
    border-radius:var(--arcane-radius-medium);
    display:grid;
    gap:var(--arcane-space-2);
    grid-template-columns:auto 1fr auto;
    padding:var(--arcane-space-3);
}

.test-result__mark{
    color:var(--arcane-muted);
    font-weight:800;
}

.test-result[data-status="pass"] .test-result__mark{
    color:var(--arcane-success);
}

.test-result[data-status="fail"] .test-result__mark{
    color:var(--arcane-danger);
}

.test-result[data-status="skip"] .test-result__mark{
    color:var(--arcane-warning);
}

.test-result__copy{
    display:grid;
    gap:var(--arcane-space-1);
}

.test-result__copy span{
    color:var(--arcane-muted);
    font-size:.88rem;
    overflow-wrap:anywhere;
}

.test-result__duration{
    color:var(--arcane-muted);
    font:600 .8rem/1.3 var(--docs-mono-font);
}

.assistant-layout{
    align-items:start;
    display:grid;
    gap:var(--arcane-space-5);
    grid-template-columns:minmax(19rem,.72fr) minmax(24rem,1.28fr);
}

.assistant-disclosure{
    position:sticky;
    top:var(--docs-header-offset);
}

.disclosure-list{
    display:grid;
    gap:var(--arcane-space-4);
    line-height:1.55;
}

.disclosure-list p,
.disclosure-list ul{
    margin:0;
}

.disclosure-list li+li{
    margin-top:var(--arcane-space-2);
}

.consent-control{
    align-items:start;
    background:var(--arcane-surface-muted);
    border:1px solid var(--arcane-border);
    border-radius:var(--arcane-radius-medium);
    display:grid;
    gap:var(--arcane-space-3);
    grid-template-columns:auto 1fr;
    padding:var(--arcane-space-3);
}

.consent-control input{
    height:1.2rem;
    margin:.15rem 0 0;
    width:1.2rem;
}

.assistant-region{
    min-height:30rem;
}

.assistant-panel{
    display:block;
    height:min(44rem,calc(100vh - 7rem));
    min-height:30rem;
}

.chat-messages{
    display:grid;
    gap:var(--arcane-space-4);
    list-style:none;
    margin:0;
    padding:0;
}

.chat-message{
    background:var(--arcane-surface-muted);
    border:1px solid var(--arcane-border);
    border-radius:var(--arcane-radius-medium);
    display:grid;
    gap:var(--arcane-space-2);
    line-height:1.55;
    padding:var(--arcane-space-4);
}

.chat-message[data-role="user"]{
    border-inline-start:.25rem solid var(--arcane-action);
}

.chat-message[data-role="assistant"]{
    background:var(--arcane-surface-raised);
    border-inline-start:.25rem solid var(--arcane-review);
}

.chat-message__role{
    color:var(--arcane-muted);
    font-size:.75rem;
    font-weight:750;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.chat-message__content{
    margin:0;
    overflow-wrap:anywhere;
    white-space:pre-wrap;
}

.assistant-footer{
    color:var(--arcane-muted);
    display:grid;
    font-size:.84rem;
    gap:var(--arcane-space-1);
}

.assistant-footer p{
    margin:0;
}

.site-footer{
    background:color-mix(in srgb,var(--primary-color) 95%,var(--focus-color) 5%);
    border-top:1px solid var(--docs-cosmic-border);
    color:color-mix(in srgb,var(--button-text-color) 72%,transparent);
    font-size:.84rem;
    padding:clamp(1.5rem,3vw,2.5rem) var(--docs-gutter);
}

.site-footer__inner{
    align-items:center;
    display:flex;
    gap:var(--arcane-space-5);
    justify-content:space-between;
    margin:0 auto;
    max-width:var(--docs-shell-max);
}

.site-footer strong{
    color:var(--button-text-color);
    display:block;
    font-size:.95rem;
    margin-bottom:var(--arcane-space-1);
}

.site-footer p{
    margin:0;
    max-width:48rem;
}

.site-footer nav{
    display:flex;
    flex-wrap:wrap;
    gap:var(--arcane-space-4);
    justify-content:flex-end;
}

.site-footer a{
    color:var(--button-text-color);
    font-weight:650;
}

@media(max-width:78rem){
    .pathway-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .pathway-card{
        min-height:16rem;
    }

    #documentViewer::part(container){
        grid-template-columns:minmax(0,var(--docs-reading-max));
    }

    #documentViewer::part(content){
        grid-column:1;
        grid-row:auto;
    }

    #documentViewer::part(table-of-contents){
        grid-column:1;
        grid-row:auto;
        max-height:none;
        position:static;
    }
}

@media(max-width:66rem){
    :root{
        --docs-header-offset:8.5rem;
    }

    .document-workspace,
    .article-shell,
    .assistant-layout{
        grid-template-columns:1fr;
    }

    .catalog-panel,
    .assistant-disclosure{
        max-block-size:none;
        position:static;
    }

    .catalog-disclosure[open]{
        max-block-size:none;
    }

    .catalog-panel__body{
        overflow-y:visible;
        scrollbar-gutter:auto;
    }

    .catalog-disclosure__summary{
        min-height:4.2rem;
    }

    .document-results{
        grid-template-columns:1fr;
    }
}

@media(max-width:54rem){
    .hero{
        grid-template-columns:1fr;
    }

    .hero__copy{
        padding-bottom:2rem;
    }

    .hero h1{
        max-width:15ch;
    }

    .hero__visual{
        aspect-ratio:16/8.5;
        min-height:18rem;
    }

    .hero__visual::after{
        background:linear-gradient(0deg,rgba(4,8,18,.86),transparent 50%);
    }

    .home-search__body,
    .labs-callout__body{
        grid-template-columns:1fr;
    }

    .labs-links{
        justify-content:flex-start;
    }

    .section-heading,
    .view-heading{
        align-items:stretch;
        flex-direction:column;
    }

    .view-heading>.arcane-button,
    .view-heading>.arcane-button--action{
        align-self:start;
    }
}

@media(max-width:40rem){
    :root{
        --docs-gutter:1rem;
        --docs-section-gap:2.5rem;
    }

    .docs-shell,
    .page-shell{
        padding-top:1rem;
    }

    .app-bar{
        position:static;
    }

    .app-bar::part(routes){
        overflow-x:visible;
    }

    .app-bar::part(navigation){
        flex-wrap:wrap;
        min-width:0;
    }

    .hero__copy{
        padding:1.35rem;
    }

    .hero h1,
    .page-hero h1{
        font-size:clamp(2.3rem,11vw,3.15rem);
    }

    .hero__visual{
        min-height:0;
    }

    .hero__actions,
    .hero__actions .arcane-button,
    .search-control{
        display:grid;
        grid-template-columns:1fr;
        width:100%;
    }

    .project-facts{
        grid-template-columns:1fr;
    }

    .home-search{
        grid-template-columns:1fr;
    }

    .home-search__ornament{
        border-bottom:1px solid var(--docs-cosmic-border);
        border-inline-end:0;
        min-height:3rem;
    }

    .pathway-grid{
        grid-template-columns:1fr;
    }

    .pathway-card{
        min-height:0;
    }

    .catalog-panel__body,
    .catalog-disclosure__summary{
        padding-inline:.85rem;
    }

    #documentViewer::part(container){
        padding:1rem;
    }

    .test-result{
        grid-template-columns:auto 1fr;
    }

    .test-result__duration{
        grid-column:2;
    }

    .site-footer__inner{
        align-items:flex-start;
        flex-direction:column;
    }

    .site-footer nav{
        justify-content:flex-start;
    }
}

@media(forced-colors:active){
    .document-result:hover,
    .document-result:focus-visible,
    .document-result[aria-current="page"],
    .pathway-card:hover{
        border:2px solid Highlight;
    }

    .test-result[data-status] .test-result__mark{
        color:CanvasText;
    }
}

@media(prefers-reduced-motion:reduce){
    html{
        scroll-behavior:auto;
    }

    .pathway-card:hover{
        transform:none;
    }
}
