:root{color-scheme:light;--plum:#5e3b76;--ink:#35213f;--rose:#a45c77}*{box-sizing:border-box}body{margin:0;padding:24px;background:#f6eff3;color:var(--ink);font:14px Manrope,system-ui,sans-serif}button,input,textarea,select{font:inherit;color:inherit}button,a,select{cursor:pointer}button{border:1px solid #d7c9d9;background:white;border-radius:9px;padding:11px 15px}.primary{background:var(--plum);color:white}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--rose);outline-offset:3px}.event-app{max-width:1500px;margin:auto;display:grid;grid-template-columns:180px minmax(0,1fr);background:#fffaf5;border:1px solid #dfd2e4;border-radius:24px;overflow:hidden}aside{padding:25px 16px;background:#f6edf7;border-right:1px solid #dfd2e4}.brand{display:flex;flex-direction:column;align-items:center;text-decoration:none}.brand img{width:76px;height:90px;object-fit:contain}.brand strong{font-size:23px;font-weight:800;color:var(--plum);margin-top:-12px}.brand span{font-size:17px;font-weight:600;color:var(--rose)}.eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:800;color:var(--rose)}aside .eyebrow{margin-top:30px}#event-products{display:grid;gap:8px}#event-products button{border:0;background:transparent;text-align:left;font-size:12px;padding:12px}#event-products button[aria-pressed=true]{background:#e6d5f1;font-weight:800}.back{display:block;margin-top:30px;color:var(--rose);font-size:12px}main{padding:30px;min-width:0}header{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}h1{font-family:Georgia,serif;font-size:34px;line-height:1.2;color:var(--plum);font-weight:400;margin:10px 0}header p{color:#65526b}.event-workspace{display:grid;grid-template-columns:270px minmax(0,1fr);gap:24px;margin-top:28px}.event-settings{background:white;border:1px solid #decfe3;border-radius:16px;padding:20px}.event-settings h2{font-size:16px;color:var(--plum);margin:0 0 18px}.event-settings label{display:grid;gap:7px;font-size:11px;font-weight:600;margin-bottom:14px}.event-settings input,.event-settings select,.event-settings textarea{width:100%;min-width:0;padding:9px;border:1px solid #bda8c7;border-radius:7px;background:#fffcf8;font-size:12px}.event-settings textarea{resize:vertical;line-height:1.6}.input-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.save-status{font-size:11px;color:#594760}.preview-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px}.preview-heading h2{font-size:19px;margin:0 0 7px;color:var(--plum)}.preview-heading p{font-size:12px;margin:0;color:#65526b}.preview-pill{font-size:9px;font-weight:800;letter-spacing:1px;padding:8px 12px;background:#e1eee6;border-radius:30px}.event-stage{background:linear-gradient(140deg,#ede1ef,#f2e5df);border-radius:18px;padding:30px;display:flex;justify-content:center;align-items:flex-start;overflow:auto}.print-note{font-size:11px;line-height:1.8;color:#65526b}.suite-note{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:28px;font-size:11px;color:#65526b}#event-print-page{display:none}
.stationery{--paper:#fffdf5;--tone:#386350;--light:#a8c8b6;position:relative;isolation:isolate;width:500px;flex-shrink:0;min-height:700px;background:var(--paper);color:var(--tone);padding:52px 42px;box-shadow:0 15px 30px #35213f18;text-align:center;overflow:hidden;display:flex;flex-direction:column;justify-content:center;gap:16px;font-family:Georgia,serif}.stationery.blush{--paper:#fff5f1;--tone:#824d5d;--light:#e5a6b5}.stationery.lavender{--paper:#f7f2fc;--tone:#533569;--light:#b9a3cf}.stationery:before{content:'';position:absolute;inset:18px;border:1px solid var(--light);z-index:-1;pointer-events:none}.stationery.invitation:before,.stationery.welcome:before{border-radius:230px 230px 0 0}.stationery.lavender:before{border-radius:0;border-width:1px 0}.stationery .overline{font-family:Manrope,system-ui,sans-serif;font-size:9px;letter-spacing:3px;font-weight:600;line-height:1.7;text-transform:uppercase}.stationery h2{font-size:47px;line-height:1.1;font-weight:400;margin:10px 0;overflow-wrap:anywhere;white-space:pre-line}.stationery .names{font-style:italic}.stationery .message{font-size:14px;line-height:1.8;white-space:pre-line;overflow-wrap:anywhere}.stationery .date-display{font-size:17px;letter-spacing:1px;line-height:1.8}.stationery .venue{font-size:18px;margin-top:5px}.stationery .address{font-size:12px;line-height:1.7;white-space:pre-line;overflow-wrap:anywhere}.stationery .rule{width:48px;border-top:1px solid var(--light);margin:0 auto}.stationery .tiny{font:9px/1.8 Manrope,system-ui,sans-serif;letter-spacing:1px;overflow-wrap:anywhere}.stationery .monogram{font-size:21px;letter-spacing:5px;font-style:italic}.botanical{position:absolute;width:180px;height:260px;opacity:.65;z-index:-1;top:-15px;left:-40px;transform:rotate(-12deg)}.botanical.bottom{top:auto;left:auto;bottom:-30px;right:-35px;transform:rotate(168deg)}.lavender .botanical{display:none}.stationery.rsvp,.stationery.thanks{min-height:350px;padding:35px 45px;gap:13px}.stationery.rsvp h2,.stationery.thanks h2{font-size:34px;margin:0}.rsvp-lines{text-align:left;font-size:12px;line-height:2.6}.rsvp-lines .response-line{border-bottom:1px solid var(--light);height:22px}.rsvp-options{display:flex;justify-content:space-between;gap:12px;font-size:11px}.stationery.menu{width:400px;min-height:900px;padding:55px 45px}.menu-course{font-size:17px;line-height:1.7;white-space:pre-line;margin:10px 0;overflow-wrap:anywhere}.course-number{display:block;font:8px Manrope,system-ui,sans-serif;letter-spacing:2px;margin-bottom:6px}.stationery.welcome,.stationery.seating{width:560px;min-height:792px}.stationery.welcome h2{font-size:62px}.stationery.seating{justify-content:flex-start;padding-top:55px}.seating-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 18px;margin:18px 0;text-align:center}.seating-grid h3{font-size:19px;font-weight:400;margin:0 0 10px}.seating-grid p{font:11px/1.8 Manrope,system-ui,sans-serif;white-space:pre-line;margin:0;overflow-wrap:anywhere}.stationery .foot-brand{font:7px Manrope,system-ui,sans-serif;letter-spacing:1.5px;position:absolute;bottom:29px;left:0;right:0;opacity:.65}
@media(max-width:1000px){.event-workspace{grid-template-columns:230px minmax(0,1fr)}main{padding:20px}.event-stage{padding:18px}}@media(max-width:800px){body{padding:8px}.event-app{display:block}aside{border-right:0;border-bottom:1px solid #dfd2e4}.brand{flex-direction:row;justify-content:center;gap:5px}.brand strong{margin:0}.brand img{width:50px;height:60px}#event-products{display:flex;flex-wrap:wrap}aside .eyebrow{margin:16px 0}.back{margin-top:16px}.event-workspace{display:flex;flex-direction:column}.event-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.event-settings h2,.input-pair,.save-status{grid-column:1/-1}.event-stage{justify-content:flex-start}.preview-heading{flex-wrap:wrap}h1{font-size:28px}}
@media print{body{padding:0;margin:0;background:white}.event-app{display:none}#event-print-page{display:block}.stationery{box-shadow:none;margin:0;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;padding:12mm 10mm;gap:3mm;print-color-adjust:exact;-webkit-print-color-adjust:exact}.stationery h2{font-size:32px}.stationery .message{font-size:11px}.stationery .date-display{font-size:12px}.stationery .venue{font-size:14px}.stationery .address{font-size:10px}.stationery .overline{font-size:7px;letter-spacing:2px}.stationery .tiny{font-size:7px}.stationery .foot-brand{bottom:6mm}.stationery.rsvp,.stationery.thanks{padding:7mm 10mm;gap:2mm}.stationery.rsvp h2,.stationery.thanks h2{font-size:23px}.rsvp-lines{font-size:10px;line-height:2}.rsvp-options{font-size:9px}.stationery.menu{padding:12mm 8mm}.menu-course{font-size:13px;margin:3mm 0}.stationery.welcome h2{font-size:56px}.stationery.seating{padding:14mm 12mm}.seating-grid p{font-size:12px}.stationery:before{inset:5mm}.botanical{width:120px;height:190px}}

[hidden]{display:none!important}
.editor-tabs{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-top:24px;border-bottom:1px solid #dfd2e4;padding-bottom:14px}.editor-tabs button{border:0;background:transparent;font-size:12px}.editor-tabs button[aria-pressed=true]{background:#e6d5f1;color:#5e3b76;font-weight:800}#editor-status{font-size:10px;color:#65526b;margin-left:auto}
.event-workspace{margin-top:18px;grid-template-columns:270px minmax(0,1fr)}.design-panel{background:white;border:1px solid #decfe3;border-radius:16px;padding:18px;align-self:start}.design-panel h2{font-size:17px;color:#5e3b76;margin:0 0 12px}.panel-copy{font-size:12px;line-height:1.8;color:#65526b}.design-panel>button{display:block;width:100%;margin:12px 0}.template-gallery{display:grid;gap:15px}.template-tile{padding:10px;text-align:left;background:#fffefa}.template-tile>b,.template-tile>span:last-child{display:block;margin-top:8px;font-size:12px}.template-tile>span:last-child{font-size:10px;color:#65526b}.mini-invite{height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;position:relative;border:1px solid #e3dad7;font-family:Georgia,serif;overflow:hidden}.mini-invite i{position:absolute;inset:10px;border:1px solid currentColor;border-radius:100px 100px 0 0;opacity:.3}.mini-invite small{font-size:6px;letter-spacing:1px}.mini-invite strong{font-weight:400;font-style:italic;font-size:29px;line-height:1.2;text-align:center}.mini-invite em{font-size:9px}.canvas-toolbar{display:flex;gap:6px;align-items:end;flex-wrap:wrap;background:white;padding:12px;border:1px solid #dfd2e4;border-radius:12px;margin-bottom:16px}.canvas-toolbar button{padding:8px;font-size:10px}.canvas-toolbar label{display:grid;gap:4px;font-size:9px}.canvas-toolbar select,.canvas-toolbar input{border:1px solid #bda8c7;border-radius:6px;padding:6px;background:white;font-size:10px;height:30px}.canvas-toolbar input[type=number]{width:50px}.canvas-toolbar input[type=color]{width:35px;padding:3px}.canvas-toolbar button:disabled{opacity:.4;cursor:default}.element-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.element-gallery button strong{display:block;font-size:35px;color:#a45c77}.element-gallery button span{font-size:11px}.upload-button{display:block;padding:14px;background:#e6d5f1;border-radius:10px;font-size:12px;font-weight:600}.upload-button input{display:block;margin-top:12px;max-width:100%;font-size:10px}.stationery [data-design-id]{cursor:move;touch-action:none}.stationery [contenteditable=true]{cursor:text;touch-action:auto;white-space:pre-line}.stationery .design-selected{outline:2px solid #a45c77;outline-offset:4px}.custom-design-element{position:absolute;left:25%;top:40%;max-width:75%;white-space:pre-line;line-height:1.25;z-index:1}.stationery img.custom-design-element{height:auto;object-fit:contain}
@media(max-width:800px){.event-workspace{display:flex}.template-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.design-panel{align-self:stretch}.mini-invite{height:160px}.mini-invite strong{font-size:22px}#editor-status{margin-left:0;flex-basis:100%}}@media(max-width:520px){.template-gallery{grid-template-columns:1fr 1fr}.canvas-toolbar{gap:8px}.mini-invite{height:155px}}
@media print{.design-selected,[data-design-id]{outline:none!important}[contenteditable=true]{outline:none!important}.custom-design-element{max-width:75%}}

.event-theme-art{position:absolute;inset:0;background-image:url('assets/event-theme-atlas.png');background-size:300% 300%;background-repeat:no-repeat;pointer-events:none;z-index:-2}
.stationery{--tone:#284d3d;--paper:#fffdf5;gap:16px}.stationery:before{display:none}.stationery .names{font-size:45px}.stationery .message,.stationery .address,.stationery .tiny{text-shadow:0 0 5px var(--paper),0 0 8px var(--paper)}
.stationery.blush{--tone:#783f50;--paper:#fff5f1}.stationery.lavender{--tone:#533569;--paper:#f7f2fc}.stationery.modern{--tone:#242220;--paper:#fcf7ed;text-align:left;padding-left:72px;padding-right:60px;font-family:Manrope,system-ui,sans-serif;gap:15px}.stationery.modern .names{font-weight:600;font-style:normal;font-size:44px;line-height:1.08;letter-spacing:-2px}.stationery.modern .rule{margin-left:0;border-color:#242220}.stationery.modern .monogram{font-style:normal;font-size:11px;letter-spacing:6px}.stationery.modern .date-display{font-size:14px;letter-spacing:1px}.stationery.modern .overline{letter-spacing:2px}.stationery.modern .foot-brand{text-align:center}
.stationery.futuristic{--tone:#24326a;--paper:#f2f6ff;font-family:Manrope,system-ui,sans-serif;gap:16px}.stationery.futuristic .names{font-style:normal;font-size:40px;letter-spacing:-1px;font-weight:600}.stationery.futuristic .overline{letter-spacing:3px}.stationery.futuristic .rule{width:80px;border-color:#536ed1}.stationery.futuristic .monogram{font-family:monospace;font-style:normal;font-size:17px}.stationery.futuristic .date-display{font:12px/1.8 monospace;letter-spacing:2px}
.stationery.deco{--tone:#604921;--paper:#fbf0d9;gap:16px;padding:60px 55px}.stationery.deco .names{font-style:normal;text-transform:uppercase;letter-spacing:2px;font-size:34px;line-height:1.1}.stationery.deco .overline{letter-spacing:4px}.stationery.deco .monogram{border:1px solid #b9954b;padding:9px;align-self:center;letter-spacing:4px;font-style:normal}
.stationery.coastal{--tone:#285a6c;--paper:#fffdf5;padding-bottom:125px}.stationery.coastal .names{font-size:47px;font-style:italic}.stationery.celestial{--tone:#fff1ce;--paper:#0f213c;padding-top:80px;padding-bottom:80px}.stationery.celestial .names{font-size:42px}.stationery.celestial .message,.stationery.celestial .address,.stationery.celestial .tiny{text-shadow:0 0 6px #0f213c,0 0 12px #0f213c}.stationery.celestial .rule{border-color:#bea46d}.stationery.terracotta{--tone:#783f30;--paper:#fcf2df;padding-left:65px;padding-right:65px}.stationery.terracotta .names{font-style:normal;font-family:Georgia,serif;font-size:42px}.stationery .event-theme-art{opacity:1}.stationery.custom-paper .event-theme-art{opacity:.35}
.template-search{width:100%;padding:10px;border:1px solid #bda8c7;border-radius:8px;margin:6px 0 15px;font-size:11px}.template-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.template-tile{padding:6px}.template-tile[aria-pressed=true]{border:2px solid #a45c77}.template-tile>b{font-size:10px}.template-tile>span:last-child{font-size:8px;line-height:1.6}.mini-invite{isolation:isolate;height:150px;gap:9px}.mini-invite small{font-size:4px;letter-spacing:.6px}.mini-invite strong{font-size:19px;position:relative}.mini-invite em{font-size:6px}.mini-invite .event-theme-art{z-index:-1}.mini-modern strong,.mini-futuristic strong{font-family:Manrope,system-ui,sans-serif;font-style:normal;font-size:15px;letter-spacing:-.5px}.mini-deco strong{font-style:normal;text-transform:uppercase;font-size:13px;letter-spacing:1px}.mini-coastal{padding-bottom:20px}.mini-celestial small,.mini-celestial strong,.mini-celestial em{color:#fff1ce}
@media print{.stationery .names{font-size:32px}.stationery.modern{padding-left:12mm;padding-right:12mm;gap:2.5mm}.stationery.modern .names{font-size:29px;letter-spacing:-1px}.stationery.modern .date-display{font-size:11px}.stationery.futuristic .names{font-size:28px}.stationery.futuristic .date-display{font-size:10px}.stationery.deco{padding:12mm 12mm;gap:2.5mm}.stationery.deco .names{font-size:25px}.stationery.coastal{padding-bottom:25mm}.stationery.coastal .names{font-size:31px}.stationery.celestial{padding-top:17mm;padding-bottom:17mm}.stationery.celestial .names{font-size:29px}.stationery.terracotta{padding-left:13mm;padding-right:13mm}.stationery.terracotta .names{font-size:29px}.stationery.rsvp,.stationery.thanks{padding:8mm 10mm;gap:2mm}.stationery.rsvp .event-theme-art,.stationery.thanks .event-theme-art{opacity:.55}.stationery.celestial.rsvp .event-theme-art,.stationery.celestial.thanks .event-theme-art{opacity:1}.stationery.welcome .names{font-size:42px}}

.stationery.garden .event-theme-art:after,.stationery.blush .event-theme-art:after,.stationery.lavender .event-theme-art:after,.stationery.coastal .event-theme-art:after{content:'';position:absolute;inset:18% 10% 10%;background:radial-gradient(ellipse,var(--paper) 25%,color-mix(in srgb,var(--paper) 75%,transparent) 60%,transparent 78%);opacity:.9}
.stationery .foot-brand{opacity:.9;text-shadow:0 0 6px var(--paper)}

.stationery{--paper:var(--theme-paper,#fffdf5);--tone:var(--theme-ink,#284d3d)}
.stationery[data-layout=editorial]{font-family:Manrope,system-ui,sans-serif;text-align:left;padding-left:68px;padding-right:52px;gap:14px}.stationery[data-layout=editorial] .names{font-style:normal;font-weight:600;font-size:39px;line-height:1.08;letter-spacing:-1.5px}.stationery[data-layout=editorial] .rule{margin-left:0}.stationery[data-layout=editorial] .monogram{font-size:11px;letter-spacing:5px;font-style:normal}
.stationery[data-layout=formal] .names{font-style:normal;font-size:33px;line-height:1.12;text-transform:uppercase;letter-spacing:2px}.stationery[data-layout=formal] .overline{letter-spacing:3px}.stationery[data-layout=formal] .monogram{border:1px solid currentColor;padding:8px;align-self:center;font-style:normal;font-size:17px}
.stationery[data-layout=playful]{font-family:Manrope,system-ui,sans-serif}.stationery[data-layout=playful] .names{font-size:43px;font-weight:800;font-style:normal;letter-spacing:-1px}.stationery[data-layout=playful] .monogram{font-style:normal;font-weight:800}.stationery[data-layout=playful] .rule{width:75px;border-top-width:3px}
.stationery[data-layout=cosmic]{font-family:Manrope,system-ui,sans-serif}.stationery[data-layout=cosmic] .names{font-size:39px;font-style:normal;font-weight:600;letter-spacing:-.7px}.stationery[data-layout=cosmic] .overline{letter-spacing:3px}.stationery[data-layout=cosmic] .date-display{font-family:monospace;font-size:14px}.stationery[data-layout=cosmic] .monogram{font-family:monospace;font-style:normal;font-size:14px}
/* Each suite piece has its own composition, using its theme's artwork. */
.stationery.rsvp .event-theme-art{inset:0 0 0 72%;opacity:1}.stationery.rsvp{padding-right:165px;padding-left:35px;text-align:left}.stationery.rsvp .rule{margin-left:0}.stationery.rsvp .rsvp-options{flex-direction:column;gap:0}.stationery.rsvp .overline{letter-spacing:1px}.stationery.rsvp .tiny{letter-spacing:0}.stationery.rsvp h2{font-size:31px}.stationery.rsvp .foot-brand{right:28%}
.stationery.menu .event-theme-art{inset:auto 0 0;height:19%}.stationery.menu{padding-bottom:190px;text-align:center}.stationery.menu .rule{margin-left:auto}.stationery.menu h2{font-size:43px}.stationery.menu .menu-course{padding-bottom:20px;border-bottom:1px solid color-mix(in srgb,var(--tone) 20%,transparent)}
.stationery.seating .event-theme-art{inset:auto 0 0;height:22%}.stationery.seating{padding-bottom:180px;text-align:center}.stationery.seating .rule{margin-left:auto}.stationery.seating h2{font-size:40px}.stationery.seating .seating-grid{gap:25px 22px}.stationery.seating .seating-grid section{padding:12px 6px;border-top:1px solid color-mix(in srgb,var(--tone) 30%,transparent)}
.stationery.welcome{text-align:center}.stationery.welcome .rule{margin-left:auto}.stationery.welcome h2:not(.names){font-size:58px}.stationery.welcome .names{font-size:43px;line-height:1.2}.stationery.welcome .message{font-size:18px}.stationery.welcome .overline{letter-spacing:4px}
.stationery.thanks .event-theme-art{inset:0 72% 0 0;opacity:1}.stationery.thanks{padding-left:170px;padding-right:35px;text-align:center}.stationery.thanks .rule{margin-left:auto}.stationery.thanks h2{font-size:32px}.stationery.thanks .venue.names{font-size:16px}.stationery.thanks .message{font-size:13px;line-height:1.6}.stationery.thanks .foot-brand{left:28%}
@media print{.stationery[data-layout=editorial]{padding-left:12mm;padding-right:12mm;gap:2.5mm}.stationery[data-layout=editorial] .names{font-size:28px}.stationery[data-layout=formal] .names{font-size:24px}.stationery[data-layout=playful] .names{font-size:31px}.stationery[data-layout=cosmic] .names{font-size:28px}.stationery[data-layout=cosmic] .date-display{font-size:11px}.stationery.rsvp{padding:5mm 42mm 5mm 8mm;gap:1.5mm}.stationery.rsvp h2{font-size:22px}.stationery.rsvp .rsvp-lines{font-size:9px;line-height:1.7}.stationery.rsvp .rsvp-options{font-size:9px;line-height:1.6}.stationery.rsvp .overline{font-size:6px}.stationery.rsvp .tiny{font-size:6px}.stationery.menu{padding:12mm 8mm 45mm;gap:3mm}.stationery.menu .menu-course{font-size:12px;padding-bottom:4mm;margin:3mm 0}.stationery.menu h2{font-size:29px}.stationery.seating{padding:15mm 12mm 65mm}.stationery.seating h2{font-size:36px}.stationery.welcome .names{font-size:42px}.stationery.thanks{padding:6mm 8mm 6mm 42mm;gap:2mm}.stationery.thanks h2{font-size:23px}.stationery.thanks .message{font-size:10px;line-height:1.6}.stationery.thanks .venue.names{font-size:12px}}

.stationery.teddy .names{font-size:37px;max-width:245px;margin:10px auto}
.stationery.forest .event-theme-art:after,.stationery.toile .event-theme-art:after,.stationery.teddy .event-theme-art:after,.stationery.disco .event-theme-art:after,.stationery.mermaid .event-theme-art:after{content:'';position:absolute;inset:16% 10% 10%;background:radial-gradient(ellipse,var(--paper) 15%,color-mix(in srgb,var(--paper) 80%,transparent) 50%,transparent 78%);opacity:.85}
@media print{.stationery.teddy .names{font-size:28px;max-width:62mm}}
