/* Shared theme vocabulary for storefront previews and full invitations. */
[hidden]{display:none!important}#example>.close{position:absolute;float:none;right:10px;top:10px;z-index:5;border-radius:50%;width:36px;height:36px;font-size:24px}#example .preview-tools{padding-right:45px}.envelope-screen{width:100%}
[data-invitation-theme]{--theme-paper:#f7fbfc;--theme-ink:#22647a;--theme-accent:#b79862;--theme-surface:#ffffffdb;--theme-pattern:url('template/floral-background-clean.png');--theme-font:Georgia,serif}
[data-invitation-theme="olive-notes"]{--theme-paper:#f0f0e4;--theme-ink:#48563b;--theme-accent:#a48b51;--theme-surface:#fafaf0e8;--theme-pattern:radial-gradient(ellipse at 0 15%,#a0af8966,transparent 38%),radial-gradient(ellipse at 100% 85%,#84946c55,transparent 38%);--theme-font:Georgia,serif}
[data-invitation-theme="rose-letter"]{--theme-paper:#f9eee9;--theme-ink:#80464c;--theme-accent:#b78476;--theme-surface:#fff8f2e8;--theme-pattern:radial-gradient(ellipse at 0 0,#d9a7af55,transparent 48%),radial-gradient(ellipse at 100% 100%,#e7b8b366,transparent 45%);--theme-font:Georgia,serif}
[data-invitation-theme="midnight-gold"]{--theme-paper:#18232c;--theme-ink:#eadbb2;--theme-accent:#bf9b55;--theme-surface:#1b2933ed;--theme-pattern:repeating-linear-gradient(135deg,transparent 0 120px,#bea36918 121px 122px,transparent 123px 240px);--theme-font:Georgia,serif}
[data-invitation-theme="coastal-vows"]{--theme-paper:#eaf6f3;--theme-ink:#226c70;--theme-accent:#a68d62;--theme-surface:#f8fffae8;--theme-pattern:radial-gradient(ellipse at 100% 0,#7dc1c16b,transparent 58%),radial-gradient(ellipse at 0 100%,#b1d3cd77,transparent 56%);--theme-font:Georgia,serif}
[data-invitation-theme="modern-vow"]{--theme-paper:#f8f5ee;--theme-ink:#232323;--theme-accent:#777;--theme-surface:#fffdf8e8;--theme-pattern:linear-gradient(90deg,transparent 5%,#22222215 5% 5.2%,transparent 5.2% 94.8%,#22222215 94.8% 95%,transparent 95%);--theme-font:Arial,sans-serif}
.theme-art[data-invitation-theme],.demo[data-invitation-theme]{background:var(--theme-pattern),var(--theme-paper);background-size:cover;color:var(--theme-ink);font-family:var(--theme-font)}
.theme-art[data-invitation-theme="modern-vow"]{border-radius:0}.theme-art[data-invitation-theme="modern-vow"] strong{font-family:Arial,sans-serif;font-style:normal;letter-spacing:-3px}
.theme-art[data-invitation-theme="midnight-gold"]{border:1px solid #bf9b55;outline:1px solid #bf9b55;outline-offset:-15px}
.theme-art[data-invitation-theme="coastal-vows"]{border-radius:50% 50% 10px 10px}.theme-art[data-invitation-theme="rose-letter"]{border-radius:12px;outline:1px solid #c89e92;outline-offset:-16px}
.theme-card-actions{display:flex;gap:15px;align-items:center;justify-content:space-between;flex-wrap:wrap}.theme-choice{border:1px solid var(--line);border-radius:24px;padding:8px 14px;background:transparent;cursor:pointer;color:var(--ink);font-size:12px}.theme-choice[aria-pressed=true]{background:var(--ink);color:white}.theme-art[data-invitation-theme] strong{pointer-events:none}
.envelope-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:25px;min-height:460px;padding:45px 22px;background:var(--theme-pattern),var(--theme-paper,#f5f0e7);background-size:cover;color:var(--theme-ink,#48563b);text-align:center}.envelope-intro{font:italic 21px/1.5 Georgia,serif;max-width:300px}.envelope{position:relative;display:block;width:min(360px,100%);height:225px;flex-shrink:0;background:var(--theme-paper,#eee8da);border:1px solid var(--theme-accent,#a48b51);box-shadow:0 20px 40px #0002;cursor:pointer;perspective:900px;padding:0;color:var(--theme-ink,#48563b)}.envelope:after{content:'';position:absolute;inset:0;background:linear-gradient(32deg,var(--theme-paper,#eee8da) 49%,transparent 50%),linear-gradient(-32deg,var(--theme-paper,#eee8da) 49%,transparent 50%);pointer-events:none;border-bottom:1px solid var(--theme-accent,#a48b51)}.envelope-flap{position:absolute;inset:0;background:var(--theme-accent,#a48b51);clip-path:polygon(0 0,100% 0,50% 58%);transform-origin:top;transition:transform .5s ease;z-index:3}.envelope-letter{position:absolute;inset:16px 18px;background:var(--theme-surface,#fffdf5);display:grid;place-items:center;padding:15px;font:italic 32px/1.25 Georgia,serif;transition:transform .6s .3s ease;overflow-wrap:anywhere}.envelope-seal{position:absolute;top:45%;left:50%;transform:translate(-50%,-50%);border:4px double #ebd3a3;border-radius:50%;width:57px;height:57px;display:grid;place-items:center;background:#ac8447;color:#fff7e7;font:32px Georgia,serif;z-index:4;transition:opacity .2s}.envelope:hover .envelope-seal{box-shadow:0 0 0 5px #b9a06833}.opening .envelope-flap{transform:rotateX(180deg)}.opening .envelope-letter{transform:translateY(-55px)}.opening .envelope-seal{opacity:0}.envelope-prompt{font:12px Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase}.envelope-skip{border:0;background:none;text-decoration:underline;color:inherit;font:12px Arial,sans-serif;cursor:pointer;padding:10px}.envelope:focus-visible,.envelope-skip:focus-visible{outline:3px solid var(--theme-accent,#a48b51);outline-offset:5px}
body.wip-themed{--pine:var(--theme-ink);--ink:var(--theme-ink);--cream:var(--theme-paper);--white:var(--theme-surface);--line:var(--theme-accent);background:var(--theme-paper);color:var(--theme-ink);font-family:var(--theme-font)}body.wip-themed::before{background:var(--theme-pattern);background-size:cover;opacity:1}body.wip-themed .hero,body.wip-themed .section:not(.location),body.wip-themed .warm,body.wip-themed .dress{background:transparent}body.wip-themed .nav,body.wip-themed .card,body.wip-themed .countdown{background:var(--theme-surface);color:var(--theme-ink)}body.wip-themed .hero h1,body.wip-themed .hero-date,body.wip-themed .hero-place,body.wip-themed .hero .eyebrow,body.wip-themed .countdown b,body.wip-themed .countdown span{color:var(--theme-ink)}body.wip-themed .button{background:var(--theme-ink);color:var(--theme-paper)}body.wip-themed .rsvp-banner{background:var(--theme-ink);color:var(--theme-paper)}body.wip-themed[data-invitation-theme="modern-vow"] .hero h1{font-family:Arial,sans-serif;font-size:clamp(55px,9vw,110px);line-height:1;letter-spacing:-.05em}body.wip-themed[data-invitation-theme="midnight-gold"] .hero h1{font-family:Georgia,serif;font-size:clamp(50px,8vw,100px);line-height:1.15}body.wip-themed[data-invitation-theme="rose-letter"] .hero-content{outline:1px solid var(--theme-accent);outline-offset:-15px}
.wip-envelope-dialog{border:1px solid var(--theme-accent);padding:0;width:min(560px,calc(100% - 24px));max-height:95dvh;overflow:auto;background:var(--theme-paper);color:var(--theme-ink)}.wip-envelope-dialog::backdrop{background:#152018ee}.envelope-replay{position:fixed;bottom:14px;right:14px;z-index:15;border:1px solid var(--theme-accent);border-radius:22px;background:var(--theme-paper);color:var(--theme-ink);padding:10px 15px;font:12px Arial,sans-serif;cursor:pointer}.wip-design-edit .envelope-replay{display:none}@media(max-width:420px){.envelope{height:185px}.envelope-screen{min-height:400px;padding:25px 18px}.envelope-letter{font-size:26px}}@media(prefers-reduced-motion:reduce){.envelope *{transition:none!important}}
