/* Preview-only additions. The current site's stylesheet and layout remain authoritative. */
.eo-preview-note{font-family:var(--eden-text-meta-family);font-size:var(--eden-text-meta-size);font-weight:var(--eden-text-meta-weight);line-height:var(--eden-text-meta-line-height,normal);letter-spacing:var(--eden-text-meta-tracking);text-transform:var(--eden-text-meta-case,none);color:var(--eden-ink-2);margin:0}
.eo-preview-gap{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--eden-space-12);padding:var(--eden-space-24);box-sizing:border-box;width:100%;height:100%;min-width:0;background:var(--eden-surface);text-align:center}
.eo-preview-gap-title{font-family:var(--eden-text-title-family);font-size:var(--eden-text-title-size);font-weight:var(--eden-text-title-weight);line-height:var(--eden-text-title-line-height,normal);letter-spacing:var(--eden-text-title-tracking);text-transform:var(--eden-text-title-case,none);color:var(--eden-ink);margin:0}
.eo-preview-gap-copy{font-family:var(--eden-text-body-family);font-size:var(--eden-text-body-size);font-weight:var(--eden-text-body-weight);line-height:var(--eden-text-body-line-height,normal);letter-spacing:var(--eden-text-body-tracking);text-transform:var(--eden-text-body-case,none);color:var(--eden-ink-2);margin:0}
.eo-preview-step{display:flex;flex-direction:column;align-items:flex-start;gap:var(--eden-space-8);padding:0;width:100%;box-sizing:border-box}
.eo-preview-step-title{font-family:var(--eden-text-heading-family);font-size:var(--eden-text-heading-size);font-weight:var(--eden-text-heading-weight);line-height:var(--eden-text-heading-line-height,normal);letter-spacing:var(--eden-text-heading-tracking);text-transform:var(--eden-text-heading-case,none);color:var(--eden-ink);margin:0}
.eo-preview-step-body{font-family:var(--eden-text-body-family);font-size:var(--eden-text-body-size);font-weight:var(--eden-text-body-weight);line-height:var(--eden-text-body-line-height,normal);letter-spacing:var(--eden-text-body-tracking);text-transform:var(--eden-text-body-case,none);color:var(--eden-ink-2);margin:0}
.eo-try-stage{background:var(--eden-surface);background-image:none;flex-direction:column;gap:var(--eden-space-20);align-items:flex-start;justify-content:center;padding:var(--eden-space-32);box-sizing:border-box}
@media(max-width:767px){.eo-try-stage{height:auto;min-height:0;padding:var(--eden-space-20);gap:var(--eden-space-24)}}

.eo-preview-letter-actions{display:flex;flex-direction:row;gap:var(--eden-space-16);padding:var(--eden-space-0);align-items:center;justify-content:flex-end;flex:0 0 auto}
@media(max-width:767px){.eo-preview-letter-actions{flex-direction:column;gap:var(--eden-space-8);align-items:flex-end}}

.eo-preview-letter-legal{display:flex;flex-direction:row;gap:var(--eden-space-16);padding:var(--eden-space-0);align-items:center;justify-content:center;flex:0 0 auto}
@media(max-width:767px){.eo-preview-letter-legal{flex-direction:column;gap:var(--eden-space-12);align-items:center}}

/* Real app screenshots, shown whole inside the existing media frames. */
.ap-app-shot{display:block;box-sizing:border-box;align-self:stretch;flex:1 1 auto;min-width:0;min-height:0;width:100%;height:100%;aspect-ratio:auto;background-color:var(--eden-surface);background-size:contain;background-position:center;background-repeat:no-repeat;padding:var(--eden-space-0)}

/* The full desktop download label remains readable on phones; the guest demo is in the hero and menu. */
@media(max-width:767px){.eo-preview-header-demo{display:none}}

/* Shared larger marketing button height. Instance size override on the registered copies. */
.eo-preview-button-large{height:var(--eden-space-48);box-sizing:border-box}

/* Download platform and release state, shared across preview pages. */
.eo-preview-download{display:flex;flex-direction:column;align-items:center;gap:var(--eden-space-4);flex:0 0 auto;min-width:0}
.eo-preview-beta{margin:0;font-family:var(--eden-text-meta-family);font-size:var(--eden-text-meta-size);font-weight:var(--eden-text-meta-weight);line-height:var(--eden-text-meta-line-height,normal);letter-spacing:var(--eden-text-meta-tracking);color:var(--eden-ink-2);text-align:center}
.eo-top-actions>.eo-preview-download{flex:none}
.eo-top-actions>[data-eden-component="eden-button-text"]{align-self:center}

/* One spacing rule for marketing CTA groups; original row/stack intent remains. */
.eo-preview-action-spacing{gap:var(--eden-space-16)}
.eo-preview-download-fill{align-self:stretch}

/* Closing CTA groups fill their section so centered supporting text stays grouped in Studio. */
.eo-end-q{align-self:stretch;text-align:center}

.eo-end-q > .eo-preview-note{align-self:stretch;text-align:center}

/* Shared preview contrast corrections. Color only; no type or layout changes. */
/* Preview: one light scheme for the animated Studio master, rail and controls. */
html[data-scheme="light"] .ld-frame.lx.lx.lx.lx:is(#live-frame,.lx){--lx-hair:var(--eden-line)}
html[data-scheme="light"] .ld-frame.lx.lx.lx.lx:is(#live-frame,.lx) > .lx-rail,html[data-scheme="light"] .ld-frame.lx.lx.lx.lx:is(#live-frame,.lx) .ld-rail [data-sx-id="instrumentBar"]{background:var(--eden-surface)!important;color:var(--eden-ink)!important;box-shadow:inset 0 0 0 var(--eden-edge-1) var(--eden-line)!important}
html[data-scheme="light"] .ld-frame.lx.lx.lx.lx:is(#live-frame,.lx) > .lx-mc{background:var(--eden-surface-2)!important}
html[data-scheme="light"] .ld-frame.lx.lx.lx.lx:is(#live-frame,.lx) :is(.scene .pcards .pcard,.lx-mcard){background:var(--eden-surface)!important;color:var(--eden-ink)!important;box-shadow:inset 0 0 0 var(--eden-edge-1) var(--eden-line)!important}
html[data-scheme="light"] .ld-frame.lx.lx.lx.lx:is(#live-frame,.lx) :is(.pcard__row,.pcard__stars,.lr-name,.lr-sk,.lr-row,.lr-note){color:var(--eden-ink)!important}
html[data-scheme="light"] .ld-frame.lx.lx.lx.lx:is(#live-frame,.lx) :is(.pcard__meta,.pcard__stars span,.lr-band,.lr-v,.lr-lk,.lr-lg,.lr-opt,.lr-opt em,.lx-bl){color:var(--eden-ink-2)!important;border-color:var(--eden-line)!important}
html[data-scheme="light"] .ld-frame.lx.lx.lx.lx:is(#live-frame,.lx) :is(.pcard__tag,.lr-chip){background:var(--eden-fill-hover)!important;color:var(--eden-ink-2)!important}
html[data-scheme="light"] .ld-frame.lx.lx.lx.lx:is(#live-frame,.lx) :is(.pcard__btn,.lr-edit,.lr-save.is-dirty){background:var(--eden-ink)!important;color:var(--eden-surface)!important}
html[data-scheme="light"] .ld-frame.lx.lx.lx.lx:is(#live-frame,.lx) .lr-save{background:var(--eden-fill-on)!important;color:var(--eden-ink-2)!important}
html[data-scheme="light"] .ld-frame.lx.lx.lx.lx:is(#live-frame,.lx) :is(.lr-det,.lr-done){background:var(--eden-surface)!important;color:var(--eden-ink)!important;box-shadow:inset 0 0 0 var(--eden-edge-1) var(--eden-line)!important}
html[data-scheme="light"] .ld-frame.lx.lx.lx.lx:is(#live-frame,.lx) :is(.lr-sg,.lr-al,.lr-f,.lx-ve){background:var(--eden-fill-hover)!important;color:var(--eden-ink)!important}
html[data-scheme="light"] .ld-frame.lx.lx.lx.lx:is(#live-frame,.lx) :is(.lr-sg b,.lr-f i,.lx-ve span){color:var(--eden-ink-2)!important}
html[data-scheme="light"] .ld-frame.lx.lx.lx.lx:is(#live-frame,.lx) :is(.lr-sg b.on,.lx-ve b,.lr-opt.on){background:var(--eden-surface)!important;color:var(--eden-ink)!important;box-shadow:inset 0 0 0 var(--eden-edge-1) var(--eden-line)!important}
html[data-scheme="light"] .ld-frame.lx.lx.lx.lx:is(#live-frame,.lx) :is(.lr-row,.lr-plus,.lr-band){border-color:var(--eden-line)!important}
html[data-scheme="light"] .ld-frame.lx.lx.lx.lx:is(#live-frame,.lx) :is(.lr-lock,.lr-chev,.lr-ind){stroke:var(--eden-ink-2)!important}
html[data-scheme="light"] .ld-frame.lx.lx.lx.lx:is(#live-frame,.lx) > .lx-menu{background:var(--eden-surface)!important;border-color:var(--eden-line)!important}
html[data-scheme="light"] .ld-frame.lx.lx.lx.lx:is(#live-frame,.lx) > .lx-menu button{color:var(--eden-ink)!important}
html[data-scheme="light"] .ld-frame.lx.lx.lx.lx:is(#live-frame,.lx) > .lx-menu button.is-hl{background:var(--eden-fill-hover)!important}
html[data-scheme="light"] .ld-frame.lx.lx.lx.lx:is(#live-frame,.lx) > .lx-menu kbd{color:var(--eden-ink-2)!important}
html[data-scheme="light"] :is(.ld-pal,.cmz-pal) .tool.on svg.ri{color:var(--eden-ink)!important;background:var(--eden-fill-on)!important;box-shadow:0 0 0 var(--eden-space-8) var(--eden-fill-on)!important}
html[data-scheme="light"] :is(.ld-pal,.cmz-pal) :is([data-app-part="railStack"],[data-app-part="railFoot"]){box-shadow:none!important}
html[data-scheme="light"] :is(.eo-preview-header-demo,.eo-menu .i31-root){color:var(--eden-ink)}
html[data-scheme="light"] :is(.eo-preview-header-demo,.eo-menu .i31-root) [data-eden-part="label"]{color:var(--eden-ink)}

html[data-scheme="light"] .eo-preview-header-buttons [data-eden-component="eden-button-secondary"]{box-shadow:inset 0 0 0 var(--eden-edge-1) var(--eden-line-2)!important}
html[data-scheme="light"] .eo-preview-header-buttons [data-eden-component="eden-button-secondary"] [data-eden-part="label"]{color:var(--eden-ink)!important}
html[data-scheme="light"] .eo-preview-hamburger-glyph{color:var(--eden-ink)!important}
html[data-scheme="light"] .eo-preview-hamburger-glyph svg{fill:currentColor!important}

/* The logo takes its header's scheme: light ink on the dark hero, dark ink on the light sticky header. */
html[data-scheme="light"] .eo-top .eo-mark-i[data-eo-sig]{background:none!important;color:var(--eden-ink)!important;-webkit-text-fill-color:var(--eden-ink)!important}

.eo-page .look-combined .ltab .ltab-b{color:var(--eden-ink-2)!important}
.eo-page .look-combined .ltab.is-on .ltab-b{color:var(--eden-ink-2)!important}
.eo-page .cz-control .cz-readout{color:var(--eden-ink-2)!important}
/* Captured dark vignette surfaces keep their own foreground roles in both site schemes. */
.eo-page .vg{--vs-lab:var(--vs-val)}
.eo-page .vs-dh em{color:var(--vs-val)!important}
.eo-page :is(.vs-nc,.vs-zc,.vs-bdg){color:var(--vs-p)!important}
.eo-page .vg-store{color:var(--vs-val)!important}
.eo-page .vg-store b{color:var(--vs-ink)!important}

/* Focus follows the local scheme, including the dark hero and the light sticky header. */
.eo-page :is(a,button,[role="button"],[role="tab"],[role="radio"]):focus-visible,.eo-menu :is(a,button,[role="button"],[role="radio"]):focus-visible{outline:var(--eden-edge-2) solid var(--eden-ink);outline-offset:var(--eden-space-2)}
