:root{--editor-width:360px;--paper:#f8f4f1;--liner-color:#dcdad9}
.body-liner{position:absolute;left:var(--ex);top:var(--ey);width:var(--ew);height:var(--eh);z-index:2;pointer-events:none}.envelope-back>svg,.envelope-front>svg{display:block;overflow:visible}.envelope-back{background:var(--paper)}.body-shadow{background:var(--paper)}
body[data-flowers="gipsofila"] .flowers{filter:drop-shadow(1.1px 2.2px 1.4px #42473638)}body[data-flowers="gipsofila"] .flowers>img{object-fit:contain;--sway-angle:1.7deg}
.customize-button{position:fixed;top:22px;right:24px;z-index:85;display:flex;align-items:center;gap:9px;min-height:44px;border:1px solid #b8b2a280;background:#fcfaf6e8;box-shadow:0 3px 16px #50482a0c;border-radius:6px;padding:0 17px;font:13px/1.3 -apple-system,BlinkMacSystemFont,Arial,sans-serif;cursor:pointer}.customize-button span{font-size:20px;color:#8a7959}
#customizer{position:fixed;inset:0 0 0 auto;width:var(--editor-width);z-index:90;display:flex;flex-direction:column;background:#fffefa;border-left:1px solid #dedbd2;box-shadow:-8px 0 32px #50472e06;color:#3f463e;font:13px/1.45 -apple-system,BlinkMacSystemFont,Arial,sans-serif}#customizer *{letter-spacing:normal}#customizer button,#customizer input,#customizer select{font:inherit}#customizer button{cursor:pointer}#customizer button:focus-visible,#customizer input:focus-visible,#customizer select:focus-visible{outline:2px solid #827856;outline-offset:3px}.customizer-header{padding:24px 22px 18px;display:flex;justify-content:space-between;align-items:center;flex:none}.customizer-header p{margin:0 0 5px!important;font-size:9px;letter-spacing:1.8px!important;color:#978667}.customizer-header h2{margin:0;font-size:21px;font-weight:500;color:#404b40}.customizer-header>button{width:40px;height:40px;background:none;border:0;border-radius:5px;font-size:28px!important;color:#8c8b80}.customizer-header>button:hover{background:#eeece5}.customizer-tabs{display:flex;padding:0 22px;border-bottom:1px solid #e8e5dc;gap:24px;flex:none}.customizer-tabs button{border:0;border-bottom:2px solid transparent;padding:10px 0 12px;background:none;color:#84867c;font-weight:500!important}.customizer-tabs button[aria-selected="true"]{color:#515e4c;border-bottom-color:#7c896d}
.customizer-scroll{overflow:auto;overscroll-behavior:contain;padding:5px 22px 22px;flex:1;min-height:0}.option-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:21px 0 12px;min-height:20px}.option-heading h3{margin:0;font-size:13px;font-weight:600}.option-heading>span,.option-heading>output{font-size:11px;color:#828577;text-align:right}.shape-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.shape-options button{border:1px solid #e3dfd4;border-radius:6px;background:#fcfbf7;height:94px;display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center;font-size:11px!important;color:#686e62;transition:border-color .15s,background .15s}.shape-options svg{width:48px;height:54px}.shape-options button:hover{border-color:#b4bca6}.shape-options button[aria-pressed="true"]{border-color:#849273;background:#edf0e6;box-shadow:0 0 0 1px #849273 inset;color:#3e4e37}.shape-options button[aria-pressed="true"] svg g{fill:#e3e9d6;stroke:#718363}
#colorFamily{width:100%;height:38px;padding:0 10px;background:#fffefa;color:#73796a;border:1px solid #e4e0d5;border-radius:5px;margin-bottom:12px;font-size:12px!important}.color-options{display:grid;grid-template-columns:repeat(7,1fr);gap:9px 7px}.swatch{position:relative;background:var(--swatch);width:100%;aspect-ratio:1;max-height:36px;border:1px solid #00000015;border-radius:50%;box-shadow:inset 0 0 7px #ffffff15;transition:transform .15s}.swatch:hover{transform:translateY(-2px)}.swatch[aria-pressed="true"]{outline:2px solid #7f8b71;outline-offset:3px}.swatch[aria-pressed="true"]:after{content:'✓';position:absolute;inset:0;display:grid;place-items:center;color:white;text-shadow:0 1px 2px #000b;font-weight:600}.custom-color{display:flex;justify-content:space-between;align-items:center;margin-top:17px;font-size:12px;color:#767d6c}.custom-color input{width:42px;height:28px;padding:2px;background:none;border:1px solid #d9d7cd;border-radius:4px;cursor:pointer}.texture-options{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.texture-options button{border:1px solid #e2dfd6;border-radius:6px;background:#fcfbf8;padding:9px;display:flex;gap:9px;align-items:center;text-align:left;font-size:12px!important}.texture-options small{display:block;font-size:10px;color:#8b8d82;margin-top:2px}.texture-options button[aria-pressed="true"]{border-color:#849273;background:#edf0e6;box-shadow:0 0 0 1px #849273 inset}.texture-sample{display:block;width:32px;height:37px;flex:none;border:1px solid #0000000c;background-color:var(--liner-color);border-radius:2px;box-shadow:1px 2px 3px #49432d12}.sample-cotone{background-image:url('assets/cotton-seamless.webp');background-size:80px;background-blend-mode:multiply}.sample-lino{background-image:repeating-linear-gradient(0deg,#ffffff55 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,#5d594026 0 1px,transparent 1px 3px)}.sample-vergata{background-image:repeating-linear-gradient(0deg,#776e5136 0 .6px,transparent .6px 4px)}.sample-vellum{opacity:.65;background-image:linear-gradient(130deg,#fff7,#fff1)}.range-label{display:flex;justify-content:space-between;margin-top:21px;font-size:12px}.range-label output{color:#7b806f}#linerOpacity{width:100%;accent-color:#82916f;margin:12px 0 0;cursor:pointer}.option-note{font-size:11px;line-height:1.6;color:#8c8e82;margin:10px 0 0}.customizer-footer{flex:none;padding:15px 22px 16px;border-top:1px solid #e8e5dc;background:#faf9f4}.preview-switch{display:flex;border:1px solid #dbded0;border-radius:5px;overflow:hidden;height:37px;margin-bottom:12px}.preview-switch button{flex:1;border:0;background:none;font-size:12px!important;color:#767e6b}.preview-switch button+button{border-left:1px solid #dbded0}.preview-switch button[aria-pressed="true"]{background:#e5eada;color:#435039}.preview-switch button:hover{background:#edf0e5}.editor-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.editor-actions button{min-height:37px;border:0;border-radius:5px;padding:0 12px;background:none;font-size:12px!important;color:#828674}.editor-actions #copyChoices{color:white;background:#637157;padding:0 18px}.editor-actions #copyChoices:hover{background:#53644c}#choiceStatus{font-size:10px;line-height:1.5;color:#8b8d82;margin:11px 0 0;min-height:15px}#shareUrl{width:100%;height:35px;font-size:10px!important;margin-top:8px;border:1px solid #d4d8c9;padding:5px;border-radius:3px}
.editor-open #invitation{width:calc(100% - var(--editor-width))}.editor-open .music-button{right:calc(var(--editor-width) + 20px)}
@media(max-width:800px){#customizer{top:auto;width:100%;height:50svh;border-left:0;border-top:1px solid #d9d8ce;box-shadow:0 -8px 30px #39372309}.customizer-header{padding:11px 18px 7px}.customizer-header h2{font-size:17px}.customizer-header p{font-size:8px;margin-bottom:2px!important}.customizer-header>button{width:34px;height:34px}.customizer-tabs{padding:0 18px}.customizer-tabs button{padding:8px 0}.customizer-scroll{padding:0 18px 17px}.customizer-footer{padding:10px 18px 9px}.preview-switch{height:33px;margin-bottom:7px}.editor-actions button{min-height:31px}#choiceStatus{margin-top:6px;font-size:9px}.shape-options{grid-template-columns:repeat(3,1fr)}.shape-options button{height:76px}.shape-options svg{height:39px}.option-heading{margin-top:16px}.customize-button{top:14px;right:14px;min-height:40px;font-size:12px;padding:0 12px}.editor-open #invitation{width:100%;height:50svh;min-height:50svh;padding:10px 2px 18px;overflow:hidden}.editor-open .music-button{right:12px;bottom:calc(50svh + 12px);width:35px;height:35px}.editor-open .initials{font-size:16px}.editor-open .controls{gap:1px;margin-top:0;height:33px}.editor-open .controls p{font-size:7px;letter-spacing:.7px}.editor-open .controls button{font-size:12px;padding:1px}.color-options{grid-template-columns:repeat(8,1fr);gap:9px}.swatch{max-height:32px}.texture-options{grid-template-columns:repeat(2,1fr)}}

/* Upright monogram optically centered in the lower part of each flap. */
.embossed{font-style:normal;letter-spacing:2px;line-height:1;display:flex;align-items:baseline;justify-content:center;gap:5px;transform:translateY(-50%)}.embossed span{font-style:normal;font-size:20px;letter-spacing:0;padding:0}
.pattern-options{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.pattern-options button{padding:8px;background:#fcfbf8;border:1px solid #e2dfd6;border-radius:6px;text-align:left;color:#59634f;font-size:11px!important;display:flex;flex-direction:column;gap:6px}.pattern-options button[aria-pressed="true"]{border-color:#849273;background:#edf0e6;box-shadow:0 0 0 1px #849273 inset}.pattern-sample{display:block;width:100%;height:55px;overflow:hidden;border-radius:3px;border:1px solid #0000000c}.pattern-sample svg{display:block;width:100%;height:100%}.pattern-options button[data-pattern="none"]{flex-direction:row;align-items:center;grid-column:1/-1}.pattern-options button[data-pattern="none"] .pattern-sample{width:45px;height:27px}

.card-shape-options{grid-template-columns:repeat(2,1fr)}.card-shape-options button{height:122px}.card-shape-options svg{width:47px;height:72px}.customizer-tabs{gap:22px}@media(max-width:800px){.card-shape-options button{height:95px}.card-shape-options svg{height:53px}}

.wax-options{grid-template-columns:repeat(5,1fr);gap:12px}.wax-options .swatch{max-width:35px;justify-self:center;box-shadow:inset 0 2px 3px #fff7,inset 0 -2px 3px #0002,0 1px 2px #0001}

/* Flowers and guest links. */
.customizer-tabs{gap:0;justify-content:space-between}.customizer-tabs button{padding-right:3px;padding-left:3px}
.flower-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}.flower-options button{height:110px;border:1px solid #e2dfd4;border-radius:6px;background:#fcfbf7;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;color:#626e5c;font-size:12px!important}.flower-options img{height:70px;width:100%;object-fit:contain}.flower-options button>span:first-child:not(:last-child){height:70px;display:grid;place-items:center;font:32px FineRoman,Georgia,serif}.flower-options button[aria-pressed="true"]{border-color:#849273;background:#edf0e6;box-shadow:0 0 0 1px #849273 inset}
.flower-upload{margin-top:20px;padding-top:18px;border-top:1px solid #e8e5dc}.flower-upload label{display:block;font-weight:600;margin-bottom:10px}.flower-upload input{width:100%;font-size:11px!important;color:#787f70}.flower-upload input::file-selector-button{border:1px solid #d6d9cc;padding:9px 11px;background:#f3f5ed;border-radius:5px;color:#54634a;margin-right:8px;cursor:pointer}#flowerStatus{color:#707967;font-size:11px;overflow-wrap:anywhere;line-height:1.5}#flowerAdjustments input[type="range"]{width:100%;accent-color:#82916f;margin-top:9px}#flowerAdjustments .range-label{margin-top:15px}#resetFlowers{border:0;background:none;color:#687b59;font-size:11px!important;padding:4px 0}
body[data-flowers="custom"] .flowers{filter:drop-shadow(1.1px 2.2px 1.4px #42473638)}body[data-flowers="custom"] .flowers>img{object-fit:contain}
#publishGuest{display:block;width:100%;min-height:40px;background:#637157;color:#fff;border:0;border-radius:5px;margin-top:9px;font-weight:500!important}#publishGuest:disabled{opacity:.65;cursor:wait}.editor-actions #copyChoices{background:transparent;color:#5d704f;border:1px solid #d6dccb;padding:0 12px}.editor-actions #copyChoices:hover{background:#eef1e8}
#guestLinkResult{padding:10px 0 0}#guestLinkResult label{font-size:10px;color:#717b66}#guestUrl{display:block;width:100%;font-size:11px!important;background:#fff;border:1px solid #d4dac9;border-radius:4px;padding:8px;margin-top:4px;color:#4c5b40}.guest-link-actions{display:flex;align-items:center;justify-content:space-between;margin-top:6px}.guest-link-actions button{border:1px solid #d4dac9;background:#fff;border-radius:4px;padding:6px 16px;color:#54664a}.guest-link-actions a{font-size:11px;color:#5c724e;text-decoration:none}.customizer-footer{max-height:48svh;overflow:auto}body[data-guest="true"] .customize-button,body[data-guest="true"] #customizer{display:none!important}
@media(max-width:800px){.flower-options button{height:98px}.flower-options img{height:60px}.flower-options button>span:first-child:not(:last-child){height:60px}.customizer-footer{padding:8px 18px}.customizer-footer:has(#guestLinkResult:not([hidden])){max-height:26svh}#publishGuest{min-height:35px;margin-top:6px}#choiceStatus{line-height:1.4}.customizer-header{padding-top:7px}.editor-actions button{min-height:28px}.preview-switch{height:29px}.customizer-tabs button{padding:7px 0}}

/* Sharing opens the exact saved guest invitation in a separate, silent preview. */
body.sharing-open{overflow:hidden}
#shareDialog{padding:0;border:1px solid #e4e1d8;border-radius:14px;width:min(1000px,calc(100vw - 48px));max-width:none;max-height:calc(100svh - 48px);color:#465144;background:#fffefa;box-shadow:0 25px 100px #28302230;font:14px/1.5 -apple-system,BlinkMacSystemFont,Arial,sans-serif;overflow:auto;overscroll-behavior:contain}
#shareDialog::backdrop{background:#333a3366;backdrop-filter:blur(5px)}
.share-layout{display:grid;grid-template-columns:1fr 1fr;min-width:0}.share-preview{min-width:0;background:#f5f3ed;display:flex;flex-direction:column;border-right:1px solid #e7e3d8}.share-preview iframe{border:0;width:100%;height:570px;flex:1;min-height:420px;display:block}.share-preview-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px 18px;color:#7d8576;font-size:10px;border-top:1px solid #deddd3}.share-preview-footer button{border:0;background:none;color:#52634b;font:inherit;font-size:11px;cursor:pointer;white-space:nowrap}.share-preview-footer button:disabled{opacity:.45;cursor:wait}
.share-content{position:relative;padding:42px 32px 25px;min-width:0}.share-close{position:absolute;right:14px;top:10px;width:36px;height:36px;border:0;background:none;font:26px/1 Arial,sans-serif;color:#78806e;cursor:pointer;border-radius:50%}.share-close:hover{background:#eeeee6}.share-eyebrow{margin:0 0 10px;font-size:9px;letter-spacing:1.5px;color:#9c8861}.share-content h2{font:36px/1.1 FineRoman,Georgia,serif;font-weight:400;letter-spacing:-.5px;margin:0 0 10px;color:#43523d}.share-intro{margin:0 0 25px;font-size:13px;color:#7a8072}.share-content label{display:flex;justify-content:space-between;gap:8px;font-size:12px;font-weight:500;margin-bottom:8px}.share-content label span{font-size:10px;color:#919784;font-weight:400}.share-content textarea{width:100%;resize:vertical;min-height:175px;padding:14px;border:1px solid #dce0d4;background:#fafbf6;border-radius:7px;font:13px/1.6 -apple-system,BlinkMacSystemFont,Arial,sans-serif;color:#52614a;display:block}.share-url-label{margin-top:19px}.share-url{display:flex;gap:7px}.share-url input{width:100%;min-width:0;padding:10px 9px;font:11px/1.4 -apple-system,BlinkMacSystemFont,Arial,sans-serif;border:1px solid #dce0d4;border-radius:5px;color:#69765e;background:white}.share-url button{white-space:nowrap;border:1px solid #dce0d4;border-radius:5px;background:white;padding:0 10px;font:11px/1.2 -apple-system,BlinkMacSystemFont,Arial,sans-serif;cursor:pointer}.share-note{color:#8b917f;font-size:11px;line-height:1.5;margin:10px 0 20px}.share-whatsapp{display:block;text-align:center;padding:13px 16px;background:#506848;border-radius:6px;text-decoration:none;color:white;font-weight:500;font-size:13px}.share-whatsapp:hover{background:#41593b}.share-secondary{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px}.share-secondary button,.share-secondary a{border:0;padding:5px 0;background:none;font:11px/1.4 -apple-system,BlinkMacSystemFont,Arial,sans-serif;color:#64755a;text-decoration:none;cursor:pointer}#shareStatus{min-height:30px;margin:14px 0 0;font-size:10px;color:#868e7c}.share-content :is(button,a,input,textarea):focus-visible{outline:2px solid #8a997a;outline-offset:3px}
@media(max-width:700px){#shareDialog{width:calc(100vw - 20px);max-height:calc(100svh - 20px);border-radius:10px}.share-layout{grid-template-columns:1fr}.share-preview{border-right:0;border-bottom:1px solid #e7e3d8}.share-preview iframe{height:310px;min-height:310px;flex:none}.share-preview-footer{padding:9px 14px}.share-content{padding:29px 20px 16px}.share-content h2{font-size:32px}.share-intro{margin-bottom:20px}.share-content textarea{font-size:16px;min-height:180px}.share-close{top:7px;right:9px}.share-secondary{gap:8px}.share-secondary button,.share-secondary a{font-size:11px}.share-url input{font-size:16px}.share-eyebrow{font-size:8px;letter-spacing:1.2px}}
.whatsapp-link-preview{margin:0 0 20px;border:1px solid #dfe5d7;border-radius:7px;overflow:hidden;background:#eef2e8;display:grid;grid-template-columns:145px 1fr;align-items:center}.whatsapp-link-preview img{width:145px;height:95px;object-fit:cover;display:block}.whatsapp-link-preview figcaption{padding:10px;font-size:11px;line-height:1.5}.whatsapp-link-preview strong,.whatsapp-link-preview span{display:block}.whatsapp-link-preview strong{font-weight:500;color:#4b5945}.whatsapp-link-preview span{color:#89917d;font-size:10px;margin-top:5px}@media(max-width:700px){.whatsapp-link-preview{grid-template-columns:120px 1fr}.whatsapp-link-preview img{width:120px;height:85px}}
