/* Header-only authority, loaded last on every template and early-return page.
   Body/sidebar/preview spacing belongs to its existing stylesheet. */
.site-header[data-shared-header]{display:flex;position:sticky;top:0;z-index:10;align-items:center;flex-wrap:nowrap;min-height:76px;height:auto;gap:20px;padding:10px 4%;border-bottom:1px solid var(--line);background:var(--bg);font:13px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
.site-header[data-shared-header] .brand{display:flex;align-items:center;flex-shrink:0;margin:0;font-size:19px;white-space:nowrap;gap:4px}
.site-header[data-shared-header] .brand>.xt-original-logo{margin-right:4px}
.site-header[data-shared-header] #navMenu{display:flex;flex-direction:row;flex:none;gap:24px;margin:0 auto;order:0}
.site-header[data-shared-header] #navMenu a{display:flex;align-items:center;min-height:44px;padding:10px 0;white-space:nowrap;font-size:13px}
.site-header[data-shared-header] #navMenu .mobile-download{display:none}
.site-header[data-shared-header] .download{display:inline-flex;align-items:center;justify-content:center;flex:none;min-height:44px;padding:9px 16px;white-space:nowrap}
.site-header[data-shared-header] #menu-toggle{display:none}
.site-header[data-shared-header] .xt-theme-picker{flex:0 1 300px;min-width:0;margin:0;max-width:300px}
.site-header[data-shared-header] .xt-theme-current{max-width:none;white-space:normal;line-height:1.25}
.site-header[data-shared-header] .is-active{text-decoration:underline;text-underline-offset:5px}
.landing-section-nav{position:sticky;top:var(--landing-header-height,76px);z-index:9;display:flex;flex-wrap:nowrap;gap:24px;width:100%;max-width:none;margin:0;padding:4px 4%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;background:var(--bg);border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}
.landing-section-nav a{display:inline-flex;flex:none;align-items:center;min-height:44px;padding:0;white-space:nowrap}
.landing-section-nav a:focus-visible{outline:2px solid currentColor;outline-offset:-2px}
/* Landing only: internal article headers retain their existing landscape behavior. */
.has-landing-nav .site-header[data-shared-header]{position:sticky;padding-top:max(8px,env(safe-area-inset-top))}
html:has(.has-landing-nav){scroll-padding-top:var(--landing-bars-height,136px)}
.has-landing-nav main :is(.section-alias,#faq,#mcp){scroll-margin-top:16px}
@media(max-width:620px){.landing-section-nav{gap:20px;padding-inline:16px}}
@media(max-width:1150px){.site-header[data-shared-header]{gap:12px;padding-inline:24px}.site-header[data-shared-header] #navMenu{gap:14px}.site-header[data-shared-header] .xt-theme-picker{flex-basis:240px}}
@media(max-width:900px),(max-height:500px) and (pointer:coarse){
 .site-header[data-shared-header]{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand menu" "theme language";min-height:0;gap:6px 10px;padding:8px max(16px,env(safe-area-inset-right)) 8px max(16px,env(safe-area-inset-left))}
 .site-header[data-shared-header] .brand{grid-area:brand;min-height:44px;font-size:17px}
 .site-header[data-shared-header] #menu-toggle{grid-area:menu;display:block;min-width:64px;min-height:44px;padding:8px 0;text-align:right;justify-self:end}
 .site-header[data-shared-header] .language-picker{grid-area:language;justify-self:end}
 .site-header[data-shared-header] #language-toggle{min-height:44px;padding:8px 10px;font-size:12px}
 .site-header[data-shared-header] .xt-theme-picker{grid-area:theme;justify-self:start;max-width:100%}
 .site-header[data-shared-header] .xt-theme-trigger{max-width:100%;min-height:44px;gap:7px;padding:8px;font-size:12px}
 .site-header[data-shared-header] .xt-theme-swatch{width:24px;min-width:24px;height:16px}
 .site-header[data-shared-header] #navMenu{grid-column:1/-1;grid-row:3;display:none;margin:0;flex-direction:column;gap:0;max-height:calc(100dvh - 130px);overflow:auto}
 .site-header[data-shared-header] #navMenu:not([hidden]){display:flex}
 .site-header[data-shared-header] #navMenu .mobile-download{display:flex;justify-content:flex-start}
 .site-header[data-shared-header] .download{display:none}
}
@media(max-height:500px) and (pointer:coarse){.site-header[data-shared-header]{position:relative}}
