/* Layout mirrors the supplied landing design; shared tokens and shell remain canonical. */
:root{--glow:rgba(125,155,255,.18);--shadow:rgba(0,0,0,.5);--term:#0A0A0C;--term-text:#D4D4DA}
:root[data-theme=light]{--glow:rgba(47,85,212,.16);--shadow:rgba(24,24,27,.12);--term:#18181B;--term-text:#EDEDEF}
body:has(.shell.landing){padding:0;font-size:16px;line-height:1.55}
.shell.landing{max-width:none;gap:0;min-height:100vh;overflow:hidden}
.landing .site-header{max-width:1248px;width:100%;margin:0 auto;padding:24px;gap:16px}
.landing .brand{font-size:18px}.landing .logo{width:34px;height:34px;border-radius:9px}
.landing .site-header>nav{margin-left:auto}.landing .header-caption{display:none}
.landing .site-header .icon-button{width:40px;height:40px;min-height:40px;border-radius:10px}
.landing main>section{box-sizing:content-box}.landing main h1{font-size:clamp(36px,5vw,60px)!important}
.landing footer{border-top:1px solid var(--border);width:100%;padding:28px max(24px,calc((100vw - 1200px)/2)) 40px;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13px}
.landing footer nav{display:flex;flex-wrap:wrap;gap:16px;font-size:0}.landing footer nav a{font-size:13px;margin:0}
.landing-buy{color:var(--accent);text-align:center;font-size:15px;font-weight:600}
.landing-author-section{max-width:1200px;margin:0 auto;padding:48px 24px 96px}
.landing-author-card{border-radius:22px;border:1px solid var(--border);background:var(--surface);padding:40px;display:flex;flex-wrap:wrap;align-items:center;gap:36px}
.landing-author-card>img{width:132px;height:132px;border-radius:50%;object-fit:cover;flex:none;border:3px solid var(--border-strong)}
.landing-author-info{flex:1 1 360px;display:flex;flex-direction:column;gap:8px;min-width:0}
.landing-author-label{font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.landing-author-name{font-size:28px;font-weight:700;letter-spacing:-.02em}.landing-role{font-size:17px;font-weight:500}
.landing-chips{display:flex;flex-wrap:wrap;gap:8px}.landing-chips>span{padding:6px 12px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:14px}
.landing-author-contacts{display:flex;flex-direction:column;gap:10px;flex:0 1 240px;min-width:0}
.landing-author-contacts>a{display:flex;align-items:center;gap:10px;min-height:48px;padding:0 16px;border-radius:12px;border:1px solid var(--border-strong);color:var(--text);text-decoration:none;font-weight:600}
.landing-author-contacts>a.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.landing details>summary::-webkit-details-marker{display:none}.landing details[open]>summary>span{transform:rotate(45deg)}
.landing summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.landing [id]{scroll-margin-top:24px}
@media(max-width:600px){
.landing .site-header{align-items:flex-start;padding:20px 24px;gap:16px}.landing .site-header>nav{order:3;flex-basis:100%;margin:0;gap:12px 20px!important}.landing .header-tools{flex:0 0 auto!important;margin-left:auto}
.landing main>section{padding-left:24px!important;padding-right:24px!important;box-sizing:border-box;max-width:100%!important}
.landing main>section:first-child{padding-top:36px!important;padding-bottom:56px!important;gap:40px!important}
.landing main>section:first-child>div:not(:first-child){flex-basis:100%!important;max-width:100%}
.landing main h2{font-size:32px!important}
.landing main div[style*="grid-template-columns: repeat(auto-fit"]{grid-template-columns:minmax(0,1fr)!important}
.landing main div[style*="flex: 1 1 360px"],.landing main div[style*="flex: 1 1 520px"],.landing main div[style*="flex: 1 1 420px"]{flex-basis:100%!important;min-width:0}
.landing main div[style*="margin: -40px"]{margin-left:12px!important;font-size:11px!important;overflow-wrap:anywhere}
.landing main a[style*="height: 52px"]{width:100%;justify-content:center;padding:0 12px!important;font-size:15px!important}
.landing main div[style*="padding: 36px"]{padding:24px!important}.landing main span[style*="font-size: 56px"]{font-size:48px!important}
.landing-author-card{padding:28px;gap:24px}.landing-author-info,.landing-author-contacts{flex-basis:100%}
.landing main section#how>div:last-child{flex-direction:column}.landing main section#how>div:last-child>svg{transform:rotate(90deg)}
.landing footer{padding:28px 24px 40px;overflow-wrap:anywhere}
}
.landing main *{box-sizing:content-box}
@media(max-width:600px){.landing main div[style*="max-width: 520px"]{box-sizing:border-box}.landing main code{max-width:100%;overflow-wrap:anywhere;box-sizing:border-box}}
@media(min-width:601px){.landing .site-header{min-height:90px}}
/* Operator 2026-10-07: the top bar stays pinned while scrolling. overflow-x:clip (not hidden) keeps sticky working;
   the shadow paints the bar edge to edge although the header itself stays 1248px wide. */
.shell.landing{overflow:visible;overflow-x:clip}
.landing .site-header{position:sticky;top:0;z-index:50;background:var(--bg);box-shadow:0 0 0 100vmax var(--bg),0 1px 0 100vmax var(--border);clip-path:inset(0 -100vmax -1px)}
.landing [id]{scroll-margin-top:112px}
@media(max-width:600px){.landing [id]{scroll-margin-top:150px}}
