/* Header and invitation action stay visible; only the middle can scroll on short screens. */
.preview-dialog{width:min(760px,calc(100vw - 32px));height:min(900px,calc(100svh - 24px));max-width:none;max-height:calc(100svh - 24px);inset:0;margin:auto;padding:0;border:1px solid var(--theme-rule,#e3d6ce);border-radius:16px;background:var(--theme-surface,#fffdfa);overflow:hidden;overscroll-behavior:contain;scroll-behavior:auto}
.preview-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.preview-dialog .preview-header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:74px;padding:12px 24px;background:var(--theme-surface,#fffdfa);border-bottom:1px solid var(--theme-rule,#e3d6ce);z-index:2}
.preview-dialog .preview-heading{display:grid;gap:3px;min-width:0;flex:1;align-items:initial}
.preview-dialog .preview-label{font-size:10px;line-height:1.5;color:var(--theme-accent,#60212c)}
.preview-dialog .preview-header h2{font:400 28px/1.3 var(--display);margin:0;overflow-wrap:anywhere}
.preview-dialog .preview-header-actions{display:flex;align-items:center;gap:8px;flex:none}
.preview-dialog .preview-header-actions .icon-button{width:44px;height:44px;min-width:44px;min-height:44px;display:grid;place-items:center;padding:0;border:1px solid var(--theme-control,#ddc9c3);border-radius:9px;background:var(--theme-surface,#fffdfa);color:var(--theme-accent,#60212c)}
.preview-dialog .preview-header-actions .ui-icon,.preview-dialog .preview-header-actions svg{width:18px;height:18px}
.preview-dialog .preview-header-actions [data-icon]{display:flex}
.preview-dialog .preview-content{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(120px,1fr) auto;align-items:stretch;gap:10px;min-height:0;min-width:0;padding:12px 24px;overflow:auto;overscroll-behavior:contain}
.preview-dialog .preview-intro{display:grid;justify-items:center;gap:6px;width:100%;max-width:650px;margin:auto;text-align:center}
.preview-dialog #previewDescription{display:block;font-size:12px;line-height:1.7;color:var(--theme-muted,#735f63);margin:0}
.preview-dialog .preview-intro .preview-editions:not([hidden]){display:flex;flex-wrap:wrap;justify-content:center;gap:7px;width:100%;margin:2px 0 0}
.preview-dialog .preview-phone-stage{container-type:size;display:grid;place-items:center;width:100%;min-height:0;min-width:0;position:relative}
.preview-dialog .preview-device.pro-device{--preview-rim:16px;width:min(300px,calc(100cqw - 12px),calc((100cqh - var(--preview-rim))*390/844 + var(--preview-rim)));max-width:none;min-width:0;flex:none;aspect-ratio:auto;padding:6px;border:2px solid #5d5752;border-radius:14%/6.5%;margin:0;outline:0;background:#191715;overflow:visible}
.preview-dialog .preview-device.pro-device::before{top:17%;height:4%;box-shadow:0 6cqh #68605b,0 12cqh #68605b}
.preview-dialog .preview-device.pro-device::after{top:25%;height:8%}
.preview-dialog .preview-device .phone-screen{width:100%;aspect-ratio:390/844;border-radius:11%/5.1%;overflow:hidden;position:relative}
.preview-dialog .preview-device .live-slot{position:absolute;inset:0;width:100%;height:100%}
.preview-dialog .preview-device .device-island{top:2.8%;height:2.8%;width:28%;max-width:100px}
.preview-dialog .preview-device .device-island i{width:4px;height:4px;top:30%}
.preview-dialog .preview-device .device-home{bottom:2.3%;width:32%;height:3px}
.preview-dialog .preview-instructions{display:block;text-align:center;font-size:12px;line-height:1.7;color:var(--theme-accent,#60212c);margin:0}
.preview-dialog .preview-details{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;max-width:none;margin:0;padding:10px 24px calc(13px + env(safe-area-inset-bottom,0px));text-align:center;border-top:1px solid var(--theme-rule,#e3d6ce);background:var(--theme-surface,#fffdfa);z-index:2}
.preview-dialog .preview-order-price{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:5px;margin:0;font-size:12px;line-height:1.5;color:var(--theme-muted,#735f63)}
.preview-dialog .preview-order-price b{font:400 25px/1.2 var(--latin);color:var(--theme-accent,#60212c);margin:0 3px;white-space:nowrap}
.preview-dialog .preview-details #choosePreview{width:min(100%,430px);min-height:50px;flex:none;font-size:13px;margin:0}
html[lang=en] .preview-dialog .preview-header h2{font-family:var(--latin);font-size:24px;letter-spacing:-.035em}
@media(max-width:760px){.preview-dialog{width:calc(100% - 20px);height:calc(100svh - 20px);max-height:calc(100svh - 20px);border-radius:14px}.preview-dialog .preview-header{min-height:68px;padding:10px 16px;gap:12px}.preview-dialog .preview-header h2{font-size:25px}.preview-dialog .preview-label{font-size:9px}.preview-dialog .preview-header-actions{gap:7px}.preview-dialog .preview-content{padding:10px 16px;gap:8px}.preview-dialog .preview-details{padding-inline:16px}.preview-dialog .preview-details #choosePreview{font-size:13px}html[lang=en] .preview-dialog .preview-header h2{font-size:21px}}
@media(max-width:360px){.preview-dialog .preview-header,.preview-dialog .preview-content,.preview-dialog .preview-details{padding-inline:12px}.preview-dialog .preview-header{gap:8px}.preview-dialog .preview-header-actions{gap:5px}html[lang=en] .preview-dialog .preview-header h2{font-size:19px}}
@media(prefers-reduced-motion:reduce){.preview-dialog{scroll-behavior:auto}}

/* Inline previews retain the viewport fit from4.26.3. */
#main .work-visual.is-live{padding-top:18px;padding-bottom:58px;scroll-margin-top:110px}
#main .work-card .work-visual.is-live .work-paper.pro-device{width:min(300px,calc(100% - 20px),calc((100svh - 220px)*390/844));max-width:none;min-width:0;--live-radius:clamp(24px,4vw,40px);border-radius:var(--live-radius);padding:6px;border-width:2px}
#main .work-visual.is-live .phone-screen{border-radius:calc(var(--live-radius) - 8px)}
#main .work-visual.is-live .device-island{height:clamp(9px,1.8svh,18px);top:12px}
#main .work-visual.is-live .device-island i{top:4px}
.hero .hero-main.is-live{width:min(240px,calc(100% - 24px),calc((100svh - 240px)*390/844))}
@media(max-width:760px){#main .work-visual.is-live{scroll-margin-top:88px}}
