/* Shared site navigation. Editor and generator styles remain in their owners. */
:root{--site-header-height:calc(64px + env(safe-area-inset-top,0px));--site-context-height:44px}
[data-site-shell]{color-scheme:dark;forced-color-adjust:none;font-family:Arial,Helvetica,sans-serif;color:#f8f5fb;box-sizing:border-box}
[data-site-shell] *{box-sizing:border-box}
[data-site-shell] button,[data-site-shell] a{font-family:Arial,Helvetica,sans-serif;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
[data-site-shell] a{text-decoration:none;color:inherit}
[data-site-shell] button{cursor:pointer}
[data-site-shell] :is(button,a):focus-visible{outline:2px solid #c895ff;outline-offset:4px}
/* Pinned navigation: one opaque surface and one stable content offset. */
.site-header{position:fixed;top:0;right:0;left:0;z-index:120;background:#000;border-bottom:1px solid #29212f}
.site-header-inner{display:grid;grid-template-columns:76px minmax(0,1fr) 76px;align-items:center;gap:4px;max-width:1216px;margin:auto;height:var(--site-header-height);padding:env(safe-area-inset-top,0px) max(16px,env(safe-area-inset-right,0px)) 0 max(16px,env(safe-area-inset-left,0px))}
[data-site-shell] .site-brand{display:inline-flex;align-items:center;min-height:44px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(1rem,5vw,1.75rem);font-weight:400;letter-spacing:-.04em;line-height:1.2;white-space:nowrap;justify-self:center}
[data-site-shell] .site-icon-button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:9px;background:transparent;color:#a958ff;padding:0}
[data-site-shell] svg{width:24px;height:24px;display:block;flex:none}
.site-header #account-button:not([hidden]){display:inline-flex!important;position:static;align-items:center;justify-content:center;justify-self:end;min-width:0;width:auto;max-width:100%;height:44px;min-height:44px;padding:0 10px;border:1px solid #a958ff;border-radius:8px;background:#651b9f;color:#fff;font-size:.875rem;font-weight:600;line-height:1.2;letter-spacing:0;white-space:nowrap}
.site-menu{position:fixed;inset:0 auto 0 0;z-index:200;width:min(352px,calc(100% - 28px));max-width:100%;height:100svh;max-height:100svh;margin:0;padding:20px 22px max(24px,env(safe-area-inset-bottom));background:#0c0910;border:0;border-right:1px solid #5c376f;border-radius:0;overflow-y:auto;overscroll-behavior:contain}
.site-menu::backdrop{background:#000b;backdrop-filter:blur(8px);forced-color-adjust:none}
.site-menu-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:24px}
.site-menu-heading .site-brand{font-size:24px}
.site-menu-links{display:flex;flex-direction:column}
.site-menu-links>a{display:flex;align-items:center;min-height:50px;padding:8px 10px;font-size:16px;line-height:1.3;font-weight:600;border-radius:7px}
.site-menu-links>a[aria-current=page]{background:#2b163a;color:#d5a2ff}
.site-menu-divider{height:1px;margin:18px 0;background:#37253f}
.site-menu-footer{margin-top:32px;padding-top:20px;border-top:1px solid #37253f}
.site-menu-footer nav{display:flex;flex-wrap:wrap;gap:8px 16px}
.site-menu-footer nav a{display:flex;align-items:center;min-height:36px;color:#bcb0c7;font-size:13px}
.site-menu-account{display:block;width:100%;min-height:46px;margin-top:20px;border:1px solid #795094;border-radius:8px;padding:10px;background:#24122f;color:#f2dcff;font-size:14px;font-weight:600}
body.site-menu-open{overflow:hidden!important}
body.site-menu-open .wizard-shell{overflow:hidden!important}
body.has-site-shell .mobile-primary-account{display:none!important}
body.has-site-shell .wizard-topbar{position:fixed!important;top:var(--site-header-height)!important;left:0!important;right:0!important;z-index:100!important;display:flex!important;align-items:center;gap:12px;width:100%!important;min-height:var(--site-context-height)!important;height:var(--site-context-height);padding:0 16px!important;margin:0!important;background:#000;pointer-events:auto!important;border-bottom:1px solid #241a2b;font-family:Arial,Helvetica,sans-serif}
body.has-site-shell .wizard-topbar #back-button:not([hidden]){display:inline-flex!important;align-items:center;justify-content:center;min-height:36px;height:36px;width:auto;padding:0 12px;border:0;border-radius:7px;font-size:12px;background:#1d1127;color:#d6b3f0;cursor:pointer}
body.has-site-shell .wizard-topbar #progress-mark:not([hidden]){display:block!important;flex:1;text-align:center;font-size:11px}
body.has-site-shell .wizard-topbar #status:not([hidden]){display:block!important;font-size:10px}
body.has-site-shell:is([data-mode-surface=landing],[data-mode-surface=catalog]) .wizard-topbar{display:none!important}
body.has-site-shell:not([data-mode-surface=landing]) .wizard-shell{padding-top:calc(var(--site-header-height) + var(--site-context-height) + 16px)!important}
body.has-site-shell[data-step=generator]{--generator-topbar-height:calc(var(--site-header-height) + var(--site-context-height))!important}
body.has-site-shell[data-mode-surface=landing] .landing-account-anchor{display:none}
/* Keep the landing video's UI aligned while fitting its stage below navigation. */
body.has-site-shell[data-mode-surface=landing] .wizard-shell{padding:var(--site-header-height) 0 0!important}
body.has-site-shell[data-mode-surface=landing] :is(.wizard-root,.landing-screen){height:auto;min-height:calc(var(--app-height) - var(--site-header-height))}
body.has-site-shell[data-mode-surface=landing] .landing-hero-fold{height:calc(var(--app-height) - var(--site-header-height));min-height:calc(var(--app-height) - var(--site-header-height));flex-basis:calc(var(--app-height) - var(--site-header-height))}
body.has-site-shell[data-mode-surface=landing] .landing-stage{width:min(100%,calc((var(--app-height) - var(--site-header-height)) * .4620853))}
body.has-site-shell .legal-main{padding-top:calc(var(--site-header-height) + 30px)}
body.has-site-shell .legal-section{scroll-margin-top:calc(var(--site-header-height) + 16px)}
@media(min-width:761px){.site-header-inner{grid-template-columns:110px minmax(0,1fr) 110px;padding-right:max(32px,env(safe-area-inset-right,0px));padding-left:max(32px,env(safe-area-inset-left,0px))}.site-header #account-button:not([hidden]){padding:0 16px}}
@media(hover:hover){[data-site-shell] .site-icon-button:hover,.site-menu-links>a:hover{background:#2a1637;color:#d5a2ff}.site-header #account-button:hover{background:#7d29b8}.site-menu-footer a:hover{color:#fff}}
@media(prefers-reduced-motion:reduce){[data-site-shell],[data-site-shell] *{transition:none!important;scroll-behavior:auto!important}}

@media(max-width:760px){.site-header #account-button:not([hidden]){padding:0 5px}}
@media(max-width:360px){.site-header-inner{grid-template-columns:72px minmax(0,1fr) 72px;gap:2px;padding-right:max(12px,env(safe-area-inset-right,0px));padding-left:max(12px,env(safe-area-inset-left,0px))}.site-header #account-button:not([hidden]){padding:0 3px;font-size:.8125rem}}
