@import url('fonts.css');
/* Shared by the studio and the invitation received by the guest. */
.letter-date{width:100%;text-align:center;line-height:1.4;margin:12px 0;flex-shrink:0;overflow-wrap:anywhere}
.date-caption{display:block;margin:0 0 .65em;white-space:pre-line}
.date-parts{margin:auto;max-width:100%}
.letter-date[data-layout=classic] .date-parts{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:0 .8em}
.letter-date[data-layout=classic] .date-weekday,.letter-date[data-layout=classic] .date-month{font-size:.58em;text-transform:uppercase;letter-spacing:.1em;border-block:1px solid currentColor;padding:.6em 0}
.letter-date[data-layout=classic] .date-day{font-size:2.4em;line-height:1.2}
.letter-date[data-layout=classic] .date-year{grid-column:1/-1;font-size:.7em;letter-spacing:.25em}
.letter-date[data-layout=editorial] .date-parts{padding:.7em 0;border-block:1px solid currentColor}
.letter-date[data-layout=editorial] .date-weekday{display:block;font-size:.65em;text-transform:uppercase;letter-spacing:.18em;margin-bottom:.4em}
.letter-date[data-layout=editorial] .date-full{display:block;font-size:1.2em}
.letter-date[data-layout=stacked] .date-parts{display:flex;align-items:center;flex-direction:column}
.letter-date[data-layout=stacked] .date-month{font-size:.7em;letter-spacing:.2em;text-transform:uppercase}
.letter-date[data-layout=stacked] .date-day{font-size:3em;line-height:1.1}
.letter-date[data-layout=stacked] .date-year{font-size:.8em;letter-spacing:.2em}
.letter-date[data-layout=stacked] .date-weekday{font-size:.6em;margin-top:.4em;text-transform:uppercase;letter-spacing:.15em}
.letter-date[data-layout=minimal] .date-full{display:block;font-size:1.1em;letter-spacing:.12em;padding:.9em 0}
.letter-venue{margin:0 0 10px;text-align:center;white-space:pre-line;line-height:1.5}
.letter-text-control{min-width:0;margin:22px 0;padding:18px;border:1px solid #d8d8c9;border-radius:8px}
.letter-text-control>legend{padding:0 8px;font:20px Georgia,serif}
.letter-text-control textarea{min-height:80px}
.text-style-controls{display:grid;grid-template-columns:70px minmax(0,1fr) 100px;gap:12px}
.text-style-controls input,.text-style-controls select{min-width:0}
.text-style-controls input[type=color]{height:47px}
.date-choices{border:0;padding:0;min-width:0;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}
.date-choices legend{font-size:13px;margin-bottom:10px}
.date-choices label{display:flex;align-items:center;gap:8px;padding:14px 10px;border:1px solid #ccd3c8;border-radius:5px;margin:0;cursor:pointer}
.date-choices input{width:auto;margin:0;accent-color:#075e45;flex-shrink:0}
.date-choices label:has(input:checked){background:#e8eddf;border-color:#075e45}
.date-choices strong,.date-choices small{display:block}.date-choices small{font-size:9px;margin-top:5px}
.editor-paper{line-height:1.5}.editor-paper h2{line-height:1.15;white-space:pre-line}
.card-border>.eyebrow,.invite-line,.card-signoff,.couple{white-space:pre-line}
@media(max-width:600px){.letter-text-control{padding:12px}.text-style-controls{grid-template-columns:58px minmax(0,1fr);gap:8px}.text-style-controls>label:last-child{grid-column:1/-1}.date-choices{grid-template-columns:1fr}}
.letter-date>.date-rule{justify-content:center}

.wedding-name,.wedding-joiner{display:block;line-height:1.16}.wedding-joiner{margin:.22em 0}
.letter-date[data-layout=classic] .date-parts{display:inline-grid;grid-template-columns:minmax(max-content,1fr) auto minmax(max-content,1fr);width:max-content;max-width:100%;column-gap:.8em}
.letter-date[data-layout=classic] .date-weekday,.letter-date[data-layout=classic] .date-month{padding:.6em .45em}
.plain-fieldset{border:0;padding:0;min-width:0;margin:0}
fieldset:disabled,.disabled-section{opacity:.45}.disabled-section{pointer-events:none}.manual-invitation #header-rsvp,.manual-invitation #continue-prompt{display:none!important}

.decoration-choices{border:1px solid #d8d4c5;border-radius:8px;padding:16px;margin:24px 0}.decoration-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.decoration-options label{display:flex;align-items:center;flex-direction:column;gap:8px;border:1px solid #d8d4c5;border-radius:8px;padding:12px 4px;cursor:pointer}.decoration-options label:has(input:checked){border-color:#075e45;background:#edf1e7}.decoration-options input{width:auto;accent-color:#075e45}.decoration-options img{object-fit:contain}.no-ornament{height:72px;display:grid;place-items:center;color:#9b927c;font-size:32px}.sample-decoration{position:absolute;right:0;top:45px;width:105px;height:160px;object-fit:contain;z-index:5;pointer-events:none;filter:drop-shadow(3px 8px 5px #514b3428)}.flowers-decoration{position:absolute;right:15%;top:-55px;width:130px;height:190px;z-index:9;pointer-events:none;filter:drop-shadow(3px 8px 5px #514b3428)}@media(max-width:600px){.flowers-decoration{width:85px;height:140px;right:0;top:-60px}.sample-decoration{width:75px;right:0;top:10px}}
.date-rule{display:inline-grid;grid-template-columns:minmax(max-content,1fr) auto minmax(max-content,1fr);width:max-content}.date-rule span{padding:8px .45em}
body[data-stage=rsvp] .flowers-decoration,body[data-stage=thanks] .flowers-decoration{right:51%;top:-115px}@media(max-width:600px){body[data-stage=rsvp] .flowers-decoration,body[data-stage=thanks] .flowers-decoration{right:0;top:-60px}}
