:root{color:#282a25;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f3f1eb;font-family:Avenir Next,Avenir,Segoe UI,sans-serif;font-size:14px;font-weight:400}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button{font-family:inherit}#root{min-height:100vh}.studio-shell{color:#242621;background-color:#f3f1eb;background-image:radial-gradient(#d9d5cb .65px,#0000 .65px);background-size:15px 15px;min-height:100vh}.studio-header,.studio-footer{justify-content:space-between;align-items:center;padding:18px clamp(20px,5vw,76px);display:flex}.studio-header{background:#f8f7f2e0;border-bottom:1px solid #dcd9d0;min-height:68px}.wordmark{color:#30332d;letter-spacing:1.3px;align-items:center;gap:10px;font-size:11px;font-weight:750;text-decoration:none;display:inline-flex}.wordmark-mark{letter-spacing:-.5px;border:1px solid #777c69;border-radius:50%;place-items:center;width:31px;height:31px;font-family:Georgia,serif;font-size:11px;display:grid}.wordmark-mark span{color:#aa7255;padding-inline:1px;font-style:italic}.header-caption{color:#77786e;font-family:Georgia,serif;font-size:14px;font-style:italic}.print-button,.reset-button{color:#33372f;cursor:pointer;font:inherit;background:#fbfaf6;border:1px solid #c9c7bc;border-radius:3px;align-items:center;gap:9px;font-size:12px;font-weight:650;display:inline-flex}.print-button{min-height:36px;padding:0 12px}.print-button svg,.reset-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;width:16px;height:16px}.print-button:hover,.reset-button:hover{background:#fff;border-color:#777c69}.studio-content{width:min(1240px,100% - 48px);margin:0 auto;padding:38px 0 48px}.page-heading{justify-content:space-between;align-items:end;margin-bottom:26px;display:flex}.eyebrow,.control-index,.preview-toolbar,.studio-footer{letter-spacing:1.15px;font-family:Avenir Next,Avenir,sans-serif;font-size:10px;font-weight:700}.eyebrow{color:#8c715c;margin:0 0 6px}.page-heading h1{color:#292b25;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(32px,4vw,44px);font-weight:400;line-height:1.05}.heading-note{color:#77786e;margin:0 0 3px;font-family:Georgia,Times New Roman,serif;font-size:15px;font-style:italic}.studio-layout{background:#f8f7f2;border:1px solid #dad7ce;grid-template-columns:252px minmax(0,1fr);min-height:650px;display:grid;box-shadow:0 12px 35px #302f270f}.editor-panel{border-right:1px solid #e1ded5;flex-direction:column;padding:24px 19px 18px;display:flex}.control-group+.control-group{border-top:1px solid #e2dfd7;margin-top:26px;padding-top:22px}.control-heading{align-items:center;gap:9px;margin-bottom:13px;display:flex}.control-index{color:#9b8067;font-size:9px}.control-heading h2{color:#35372f;margin:0;font-family:Georgia,Times New Roman,serif;font-size:17px;font-weight:400}.theme-list{gap:7px;display:grid}.theme-option{color:#34372f;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:3px;align-items:center;gap:10px;width:100%;min-height:59px;padding:8px 9px;display:flex}.theme-option:hover{background:#f2f0e9}.theme-option.is-selected{background:#fffefa;border-color:#c5b9a6;box-shadow:0 2px 6px #3831250a}.theme-swatch{border:1px solid #1f1f1b1f;border-radius:50%;flex:0 0 24px;width:24px;height:24px}.swatch-celestial{background:#17213d;box-shadow:inset -7px -1px #d9c18b}.swatch-cinematic{background:#566d79;box-shadow:inset -7px -1px #e2a882}.swatch-winter{background:#25443a;box-shadow:inset -7px -1px #e3c37e}.swatch-colour-pop{background:#9f4382;box-shadow:inset -7px -1px #ff9a79}.theme-option-copy{gap:2px;min-width:0;display:grid}.theme-name{font-size:12px;font-weight:700}.theme-note{color:#86857b;font-size:10px}.theme-check{color:#8c715c;margin-left:auto;font-size:13px}.switch-row{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;display:flex;position:relative}.switch-copy{gap:3px;display:grid}.switch-title{color:#41433c;font-size:12px;font-weight:650}.switch-subtitle{color:#85857b;font-size:10px}.switch-row input{opacity:0;cursor:pointer;width:42px;height:25px;margin:0;position:absolute;right:0}.switch-track{background:#e3e3db;border:1px solid #bcbdb3;border-radius:20px;flex:0 0 38px;align-items:center;width:38px;height:22px;padding:3px;transition:background-color .16s;display:flex}.switch-track span{background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .16s;box-shadow:0 1px 2px #0002}.switch-row input:checked+.switch-track{background:#687564;border-color:#687564}.switch-row input:checked+.switch-track span{transform:translate(16px)}.switch-row input:focus-visible+.switch-track{outline-offset:3px;outline:2px solid #303d31}.view-toggle{background:#efeee8;border:1px solid #e0ddd4;border-radius:4px;grid-template-columns:1fr 1fr;gap:5px;padding:4px;display:grid}.view-toggle button{color:#77786e;cursor:pointer;min-height:34px;font:inherit;background:0 0;border:1px solid #0000;border-radius:3px;justify-content:center;align-items:center;gap:7px;font-size:11px;display:flex}.view-toggle button.is-active{color:#34372f;background:#fffefa;border-color:#d7d4ca;box-shadow:0 1px 3px #0000000a}.view-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.3px;width:17px;height:17px}.reset-button{justify-content:center;min-height:38px;margin-top:auto}.editor-footnote{color:#88877e;text-align:center;margin:12px 0 0;font-family:Georgia,Times New Roman,serif;font-size:11px;font-style:italic}.preview-area{background:#eeece5;flex-direction:column;min-width:0;padding:18px 22px 14px;display:flex}.preview-toolbar{color:#787970;justify-content:space-between;align-items:flex-start;min-height:24px;font-size:9px;display:flex}.preview-toolbar>span:first-child{align-items:center;gap:7px;display:inline-flex}.preview-theme-label{text-transform:uppercase}.live-dot{background:#718268;border-radius:50%;width:6px;height:6px}.preview-stage{flex:1;justify-content:center;align-items:center;min-height:560px;padding:22px;transition:padding .18s;display:flex;overflow:auto}.preview-stage.is-mobile{padding:18px}.preview-caption{color:#858379;text-align:center;margin:8px 0 0;font-family:Georgia,Times New Roman,serif;font-size:12px;font-style:italic}.preview-caption span{color:#a78058;padding-left:4px;font-style:normal}.studio-footer{color:#85847a;border-top:1px solid #dcd9d0;min-height:50px;font-size:9px}.studio-footer i{padding:0 4px;font-style:normal}button:focus-visible{outline-offset:3px;outline:2px solid #303d31}@media (prefers-reduced-motion:reduce){.studio-shell *,.studio-shell :before,.studio-shell :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=850px){.studio-content{width:min(100% - 32px,700px);padding-top:30px}.studio-layout{grid-template-columns:220px minmax(0,1fr)}.editor-panel{padding-inline:14px}.preview-area{padding-inline:12px}.preview-stage{min-height:520px;padding:12px}}@media (width<=650px){.studio-header{min-height:58px;padding-inline:16px}.header-caption{display:none}.print-button{min-height:34px;padding-inline:9px}.studio-content{width:calc(100% - 28px);padding:25px 0 28px}.page-heading{flex-direction:column;align-items:flex-start;gap:7px;margin-bottom:19px}.heading-note{font-size:13px}.studio-layout{flex-direction:column;display:flex}.editor-panel{border-bottom:1px solid #e1ded5;border-right:0;grid-template-columns:1fr 1fr;gap:0 16px;padding:18px 15px 14px;display:grid}.control-group+.control-group{border-top:0;margin-top:0;padding-top:0}.theme-group{grid-column:1/-1}.details-group,.view-group{padding-top:19px!important}.theme-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.theme-option{flex-wrap:wrap;justify-content:center;gap:4px 7px;min-height:63px;padding:7px 4px}.theme-option-copy{gap:1px}.theme-note,.theme-check{display:none}.theme-name{font-size:11px}.theme-swatch{flex-basis:20px;width:20px;height:20px}.switch-subtitle{max-width:110px;line-height:1.3}.reset-button{grid-column:1/-1;margin-top:16px}.editor-footnote{display:none}.preview-area{padding:14px 8px 12px}.preview-stage{min-height:0;padding:13px 5px 16px}.preview-stage.is-mobile{padding-block:12px}.studio-footer{padding-inline:15px;font-size:8px}}@media print{@page{size:A4 portrait;margin:12mm}html,body,#root{border:0;width:100%;min-width:0;min-height:0;margin:0;padding:0;background:#fff!important}.studio-shell{min-height:0;background:#fff!important}.studio-header,.page-heading,.editor-panel,.preview-toolbar,.preview-caption,.studio-footer{display:none!important}.studio-content{width:100%;margin:0;padding:0}.studio-layout{min-height:0;box-shadow:none;background:0 0;border:0;display:block}.preview-area{background:0 0;padding:0;display:block}.preview-stage,.preview-stage.is-mobile{min-height:0;padding:0;overflow:visible}.invitation{break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact;margin:0;width:100%!important;max-width:none!important;min-height:255mm!important;box-shadow:none!important}}.invitation{--paper:#f8f0df;--ink:#432a2b;--muted:#796360;--accent:#913d49;--detail:#b59a68;--line:#dfcdb4;--display-font:Georgia, "Times New Roman", serif;--body-font:"Avenir Next", Avenir, "Segoe UI", sans-serif;isolation:isolate;background:var(--paper);width:min(100%,560px);min-height:590px;color:var(--ink);padding:12px;transition:width .18s,border-radius .18s;position:relative;overflow:hidden;box-shadow:0 15px 38px #28231c24}.invitation:before{border:1px solid var(--detail);content:"";pointer-events:none;position:absolute;inset:12px}.invitation-artwork{z-index:-1;background-color:var(--paper);background-image:var(--artwork-overlay), var(--artwork);background-position:50%;background-size:cover;position:absolute;inset:0}.invitation-inner{z-index:1;border:1px solid var(--line);flex-direction:column;min-height:566px;padding:34px 42px 25px;display:flex;position:relative}.invitation-header{text-align:center}.invitation-kicker{color:var(--accent);font-family:var(--body-font);letter-spacing:2px;margin:0;font-size:8px;font-weight:750}.invitation-ornament{color:var(--detail);margin:8px 0 5px;font-size:17px;display:block}.invitation-recipient{color:var(--muted);font-family:var(--display-font);margin:0;font-size:14px;font-style:italic}.invitation-intro{text-align:center;margin:21px auto 16px}.invitation-intro h2{color:var(--ink);font-family:var(--display-font);margin:0 auto 10px;font-size:clamp(30px,4vw,39px);font-weight:400;line-height:1.07}.invitation-intro>p{max-width:370px;color:var(--muted);font-family:var(--display-font);margin:0 auto;font-size:12px;line-height:1.55}.invitation-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:center;align-items:center;gap:25px;margin:3px 0 16px;padding:12px 8px;display:flex}.invitation-details>div{text-align:center;gap:4px;display:grid}.detail-label{color:var(--accent);font-family:var(--body-font);letter-spacing:1.5px;font-size:7px;font-weight:750}.detail-value{color:var(--ink);font-family:var(--display-font);font-size:12px}.detail-divider{background:var(--line);width:1px;height:26px}.invitation-stages{gap:0;display:grid}.invitation-stage{border-bottom:1px solid var(--line);grid-template-columns:29px minmax(0,1fr);gap:10px;padding:10px 0;display:grid}.stage-number{color:var(--detail);font-family:var(--display-font);padding-top:2px;font-size:11px;font-style:italic}.stage-copy h3{color:var(--ink);font-family:var(--display-font);margin:0 0 4px;font-size:16px;font-weight:500}.stage-description{color:var(--muted);font-family:var(--display-font);margin:0 0 4px;font-size:10px;line-height:1.4}.stage-reveal{color:var(--accent);font-family:var(--display-font);margin:0;font-size:10px;font-style:italic;line-height:1.4}.invitation-closing{text-align:center;margin-top:auto;padding-top:12px}.closing-flourish{color:var(--detail);margin-bottom:6px;font-size:10px;display:block}.invitation-closing p{max-width:330px;color:var(--muted);font-family:var(--display-font);margin:0 auto;font-size:11px;font-style:italic;line-height:1.45}.preview-stage.is-mobile .invitation{border-radius:13px;width:min(100%,365px);min-height:0}.preview-stage.is-mobile .invitation-inner{border-radius:8px;min-height:0;padding:31px 25px 25px}.preview-stage.is-mobile .invitation-intro h2{font-size:32px}.preview-stage.is-mobile .invitation-details{gap:17px}@media (width<=650px){.invitation{min-height:570px;padding:9px}.invitation:before{inset:9px}.invitation-inner{min-height:552px;padding:28px 20px 21px}.invitation-intro{margin-top:18px}.invitation-intro h2{font-size:clamp(27px,8vw,34px)}.invitation-details{gap:16px}.preview-stage.is-mobile .invitation-inner{padding-inline:20px}}@media (prefers-reduced-motion:reduce){.invitation{transition:none}}@media print{.invitation-artwork{display:none!important}.invitation[data-theme]{--ink:#292820!important;--muted:#4f4d45!important;--accent:#55432e!important;--detail:#806944!important;--line:#c9c1b2!important;color:#292820!important;background:#fffdf8!important}.invitation:before{border-color:#9c8b6a!important}}.invitation[data-theme=celestial] .invitation:before{border-style:solid;border-width:1px}.invitation[data-theme=celestial] .invitation-kicker{color:var(--detail)}.invitation[data-theme=celestial] .invitation-ornament{color:#e6ca8b}.invitation[data-theme=celestial] .invitation-intro h2{text-shadow:0 2px 18px #080c1bb3}.invitation[data-theme=celestial] .stage-number{color:#e0c58c}.invitation[data-theme=celestial] .stage-reveal{color:#ead9b4}.invitation[data-theme=cinematic]{min-height:620px}.invitation[data-theme=cinematic] .invitation-inner{min-height:596px;padding:37px 38px 28px}.invitation[data-theme=cinematic] .invitation-header{text-align:left}.invitation[data-theme=cinematic] .invitation-kicker{color:var(--accent)}.invitation[data-theme=cinematic] .invitation-ornament{text-align:center;margin:9px 0 5px}.invitation[data-theme=cinematic] .invitation-recipient{color:var(--ink);font-family:var(--body-font);font-size:11px;font-style:normal}.invitation[data-theme=cinematic] .invitation-intro{text-align:left;max-width:440px;margin:24px 0 18px}.invitation[data-theme=cinematic] .invitation-intro h2{max-width:410px;margin:0 0 12px;font-size:clamp(36px,5vw,48px);font-weight:750;line-height:.98}.invitation[data-theme=cinematic] .invitation-intro>p{color:#f0eee7;font-family:var(--body-font);margin:0;font-size:11px}.invitation[data-theme=cinematic] .invitation-details{border-color:#ebdab799;justify-content:flex-start;gap:20px}.invitation[data-theme=cinematic] .invitation-details>div{text-align:left}.invitation[data-theme=cinematic] .invitation-stages{gap:0}.invitation[data-theme=cinematic] .invitation-stage{border-color:#e6dec961;grid-template-columns:39px minmax(0,1fr);gap:12px;padding:9px 0}.invitation[data-theme=cinematic] .stage-number{color:var(--accent);font-family:var(--body-font);font-size:14px;font-style:normal;font-weight:700}.invitation[data-theme=cinematic] .stage-copy h3{font-family:var(--body-font);font-size:13px;font-weight:700}.invitation[data-theme=cinematic] .stage-description,.invitation[data-theme=cinematic] .stage-reveal{font-family:var(--body-font);font-size:9px}.invitation[data-theme=cinematic] .stage-reveal{color:#f3d9a8}.invitation[data-theme=cinematic] .invitation-closing{text-align:left}.invitation[data-theme=cinematic] .invitation-closing p{color:#eee8dc;font-family:var(--body-font);margin:0;font-size:10px}@media (width<=650px){.invitation[data-theme=cinematic]{min-height:580px}.invitation[data-theme=cinematic] .invitation-inner{min-height:562px;padding:28px 20px 21px}.invitation[data-theme=cinematic] .invitation-intro h2{font-size:clamp(34px,9vw,42px)}}.invitation[data-theme=winter] .invitation:before{border-width:2px;border-color:#dfbf7dcc}.invitation[data-theme=winter] .invitation-inner{border-color:#eae0c773}.invitation[data-theme=winter] .invitation-kicker{color:#e7c982}.invitation[data-theme=winter] .invitation-ornament{color:#efdbac}.invitation[data-theme=winter] .stage-number{color:#e8ca85}.invitation[data-theme=winter] .stage-copy h3{color:#fff0dd}.invitation[data-theme=winter] .stage-reveal{color:#f1d2b9}.invitation[data-theme=winter] .closing-flourish{color:#e6c982}.invitation[data-theme=colour-pop]{border-radius:22px}.invitation[data-theme=colour-pop]:before{border:2px dashed #ffd57ad9;border-radius:16px;inset:11px}.invitation[data-theme=colour-pop] .invitation-inner{border:0;padding:31px 37px 25px}.invitation[data-theme=colour-pop] .invitation-header{text-align:left}.invitation[data-theme=colour-pop] .invitation-kicker{color:#ffd374}.invitation[data-theme=colour-pop] .invitation-ornament{color:#ff9a87;font-size:27px;position:absolute;top:26px;right:27px}.invitation[data-theme=colour-pop] .invitation-recipient{color:#f6dce9}.invitation[data-theme=colour-pop] .invitation-intro{text-align:left;margin:26px 0 18px}.invitation[data-theme=colour-pop] .invitation-intro h2{max-width:390px;margin:0 0 10px;font-size:clamp(36px,5vw,48px);font-weight:700;line-height:.98}.invitation[data-theme=colour-pop] .invitation-intro>p{font-family:var(--body-font);margin:0}.invitation[data-theme=colour-pop] .invitation-details{border-color:#ffd7e46b;justify-content:flex-start;gap:17px}.invitation[data-theme=colour-pop] .invitation-details>div{text-align:left}.invitation[data-theme=colour-pop] .invitation-stage{background:#fff4f914;border:1px solid #ffe6f52b;border-radius:9px;grid-template-columns:30px minmax(0,1fr);gap:8px;margin:3px 0;padding:8px 10px}.invitation[data-theme=colour-pop] .stage-number{color:#ffcf69;font-family:var(--body-font);font-size:10px;font-style:normal;font-weight:750}.invitation[data-theme=colour-pop] .stage-copy h3{color:#fff3f6;font-size:14px}.invitation[data-theme=colour-pop] .stage-reveal{color:#ffd28b}.invitation[data-theme=colour-pop] .invitation-closing{text-align:left}.invitation[data-theme=colour-pop] .invitation-closing p{color:#f7e9f1;margin:0}@media (width<=650px){.invitation[data-theme=colour-pop] .invitation-inner{padding:28px 21px 22px}.invitation[data-theme=colour-pop] .invitation-intro h2{font-size:clamp(34px,9vw,42px)}}
