@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600&family=Dancing+Script:wght@400;500;600&family=Libre+Baskerville:wght@400;700&family=Lora:wght@400;500;600&family=Montserrat:wght@400;500;600&family=Poppins:wght@400;500;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Great+Vibes&family=Playfair+Display:wght@400;500;600&display=swap');
.palette-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.palette-grid label{margin:0;font-size:12px}.color-code{display:block;font:11px monospace;margin-top:7px;color:var(--muted)}.editor .template-options{flex-wrap:wrap}.editor .template-options label{min-width:105px}.editor small{display:block;margin-bottom:22px}.editor .button{margin-top:12px}.invitation-photo{display:block;width:100%;max-width:340px;aspect-ratio:4/5;object-fit:cover;border-radius:120px 120px 12px 12px;margin:22px auto;border:2px solid var(--invite-gold,#C9A27A)}.music-block{margin-top:28px;border-top:1px solid var(--invite-primary);padding-top:16px}.music-block h3{font-size:17px}.music-block iframe{width:100%;aspect-ratio:16/9;min-height:200px;border:0;border-radius:9px;display:block;background:var(--invite-secondary,#0C1820)}.music-fallback{display:inline-block;text-decoration:underline;font-size:12px;margin-top:12px}.esmeralda{border-radius:140px 140px 18px 18px;border-color:var(--invite-gold,#C9A27A);background:radial-gradient(ellipse at top,var(--invite-secondary,#0C1820),var(--invite-bg,#05070B) 65%);box-shadow:0 18px 65px #0003}.esmeralda .flower{color:var(--invite-gold,#C9A27A);font-size:65px}.esmeralda .eyebrow{color:var(--invite-neutral,#E8D5C5);line-height:1.8}.esmeralda h1,.esmeralda h2{color:var(--invite-text,#F8F8F8)}.esmeralda .invite-detail{border-color:var(--invite-gold,#C9A27A);color:var(--invite-neutral,#E8D5C5)}.esmeralda .invite-detail b{color:var(--invite-highlight,#00B6BE)}.esmeralda .music-block{border-color:var(--invite-primary,#008A8F)}.esmeralda .music-block p{color:var(--invite-muted,#B8BEC4)}.esmeralda .button{background:var(--invite-primary,#008A8F);color:var(--invite-text,#F8F8F8)}.esmeralda .button:hover{background:var(--invite-highlight,#00B6BE)}.esmeralda-page{background:var(--invite-bg,#05070B);color:var(--invite-text,#F8F8F8)}.esmeralda-page .response{background:var(--invite-secondary,#0C1820);border-color:var(--invite-primary,#008A8F)}.esmeralda-page .response p,.esmeralda-page .response small{color:var(--invite-muted,#B8BEC4)}.esmeralda-page .response input:not([type=radio]),.esmeralda-page .response select{background:var(--invite-bg,#05070B);color:var(--invite-text,#F8F8F8);border-color:var(--invite-primary,#008A8F)}.esmeralda-page .response-options label{border-color:var(--invite-primary,#008A8F)}.esmeralda-page input[type=radio]{accent-color:var(--invite-highlight,#00B6BE)}.esmeralda-page .button{background:var(--invite-primary,#008A8F);color:var(--invite-text,#F8F8F8)}.esmeralda-page .button:hover{background:var(--invite-highlight,#00B6BE)}.esmeralda-page .secondary{background:var(--invite-bg,#05070B);color:var(--invite-neutral,#E8D5C5);border-color:var(--invite-primary,#008A8F)}.esmeralda-page .link,.esmeralda-page .public-brand{color:var(--invite-neutral,#E8D5C5)}.remove-photo{margin-top:15px}@media(max-width:600px){.palette-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.music-block iframe{min-height:200px}.invitation-photo{max-width:280px}}

.invitation{font-family:var(--invite-body-font,'DM Sans',Arial,sans-serif)}.invitation h1,.invitation h2{font-family:var(--invite-title-font,var(--template-title-font,Georgia,serif))}.invitation.festa,.invitation.minimalista{--template-title-font:'Manrope',Arial,sans-serif}.public-page .response{font-family:var(--invite-body-font,'DM Sans',Arial,sans-serif)}.youtube-status{font-size:13px;line-height:1.6;padding:12px;border:1px solid var(--invite-primary);border-radius:8px}.font-selectors select{min-height:48px}

.music-block audio{display:block;width:100%;margin:16px 0}.license-notice{padding:18px;border:1px solid var(--line);border-radius:10px;background:#f8f7f2;margin:18px 0}.license-notice p{font-size:13px;margin:10px 0}.license-notice label{font-weight:400;line-height:1.7;margin-bottom:0}.audio-start{margin:12px 0}.invitation #audio-status{font-size:13px}

.music-welcome{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:10;background:var(--invite-secondary,#fff);color:var(--invite-text,#253c35);border:1px solid var(--invite-primary,#305b48);border-radius:16px;padding:20px;box-shadow:0 12px 50px #0005;display:flex;align-items:center;gap:18px;max-width:calc(100% - 32px);width:max-content}.music-welcome p{margin:0;color:inherit;font-size:14px}.music-welcome .link{color:inherit}.music-welcome .button{background:var(--invite-primary,#305b48);color:var(--invite-text,#fff)}@media(max-width:600px){.music-welcome{flex-direction:column;gap:12px;width:calc(100% - 32px)}}

.invitation .invitation-heading{font-family:var(--invite-title-font,Georgia,serif);font-size:28px;line-height:1.3;margin:14px 0 24px;color:var(--invite-gold,#795548)}.invitation .event-subtitle{font-size:19px;line-height:1.5;margin:4px 0 22px;color:var(--invite-neutral,var(--invite-text))}.invitation:not(.esmeralda) .invitation-heading,.invitation:not(.esmeralda) .event-subtitle{display:none}.details-grid{grid-template-columns:1fr 1fr;gap:22px}.details-grid>div{display:flex;flex-direction:column;gap:9px}.details-grid small{font-size:10px;letter-spacing:2px;color:var(--invite-muted,var(--invite-text));margin:0}.details-grid .detail-location{grid-column:1/-1}.details-grid b{font-size:18px}.details-grid span{line-height:1.6}

/* Tipografia e ornamentos do convite Esmeralda. */
.invitation.esmeralda > .eyebrow {
  font-size: 9px;
  letter-spacing: 1.5px;
  line-height: 1.6;
}
.invitation.esmeralda .invitation-heading {
  font-size: 22px;
  line-height: 1.35;
}
.invitation.esmeralda .event-subtitle {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
}
.invitation.esmeralda .event-subtitle::before,
.invitation.esmeralda .event-subtitle::after {
  content: "";
  width: 32px;
  height: 1px;
  flex: 0 0 32px;
  background: var(--invite-gold, #C9A27A);
}
@media (max-width: 600px) {
  .invitation.esmeralda .invitation-heading { font-size: 20px; }
  .invitation.esmeralda .event-subtitle { gap: 8px; }
  .invitation.esmeralda .event-subtitle::before,
  .invitation.esmeralda .event-subtitle::after {
    width: 22px;
    flex-basis: 22px;
  }
}
/* Avisos legíveis, independentemente da paleta personalizada. */
.public-page .alert {
  background: #FFF0E8;
  color: #652B17;
  border-color: #D9A58F;
}
.public-page .alert.success {
  background: #E8F2E6;
  color: #24452A;
  border-color: #A8C4A0;
}