/*
 * Motor Claude — tema Balão.
 * O nome da debutante em letras-balão metalizadas (artes pintadas em 2D, uma
 * por letra), flutuando e balançando cada uma no seu ritmo. Capa em camadas:
 * parede com luzes desfocadas, cachos de balões nos cantos, o nome e o cartão
 * com o botão. Balões soltos sobem num canvas. Depois de abrir, a parede
 * desfoca e o convite inteiro fica numa folha, cada parte num cartão com um
 * buquê de balões amarrado no canto. Mesma técnica do Sakura.
 */
@font-face{font-family:"Fraunces";font-style:normal;font-weight:100 900;font-display:swap;src:url("../fonts/fraunces-latin-var-normal.woff2") format("woff2")}
@font-face{font-family:"Fraunces";font-style:italic;font-weight:100 900;font-display:swap;src:url("../fonts/fraunces-latin-var-italic.woff2") format("woff2")}
@font-face{font-family:"DM Serif Display";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/dm-serif-display-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"DM Serif Display";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/dm-serif-display-latin-400-italic.woff2") format("woff2")}
@font-face{font-family:"Nunito";font-style:normal;font-weight:200 1000;font-display:swap;src:url("../fonts/nunito-latin-var-normal.woff2") format("woff2")}
@font-face{font-family:"Nunito";font-style:italic;font-weight:200 1000;font-display:swap;src:url("../fonts/nunito-latin-var-italic.woff2") format("woff2")}
@font-face{font-family:"Fredoka";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/fredoka-700.woff2") format("woff2")}

body.sg-engine-claude_v1{
  --ba-ink:var(--c-paper-ink,#4A2A2C);--ba-muted:var(--c-paper-muted,#7E5558);--ba-accent:var(--c-accent-text,#963F51);
  --ba-btn:var(--c-button-bg,#8E3F4A);--ba-btn-ink:var(--c-button-ink,#FFF6F4);
  --ba-base:var(--c-bg,#F4DDD6);--ba-card:var(--c-paper,#FFFBF9);
  --ba-sans:"Nunito",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;
  --ba-display:var(--font-title,"Fraunces"),"Fraunces",Georgia,serif;
  --ba-rule:rgba(120,60,64,.20);--ba-hair:rgba(120,60,64,.12);--ba-field:rgba(255,255,255,.9);--ba-field-line:rgba(120,60,64,.22);
  --ba-shadow:rgba(120,50,50,.26);--ba-halo:rgba(255,246,243,.85);--ba-confetti:#E7A99C,#F8D8CE,#B8726A,#FFFFFF,#F3B7AE,#DDB257;
  background:var(--ba-base)!important;background-image:none!important;color:var(--ba-ink);font-family:var(--ba-sans)}
body.sg-engine-claude_v1:has(.ba-root[data-ba-set="dourado"]){--ba-rule:rgba(110,82,32,.22);--ba-hair:rgba(110,82,32,.13);--ba-field-line:rgba(110,82,32,.24);--ba-shadow:rgba(110,80,30,.24);--ba-halo:rgba(255,251,242,.85);--ba-confetti:#DDB257,#F6E0A0,#A87524,#FFFFFF,#EAD1A2}
body.sg-engine-claude_v1:has(.ba-root[data-ba-set="lilas"]){--ba-rule:rgba(70,56,120,.2);--ba-hair:rgba(70,56,120,.12);--ba-field-line:rgba(70,56,120,.22);--ba-shadow:rgba(60,44,110,.24);--ba-halo:rgba(250,248,255,.85);--ba-confetti:#C8B2E6,#C7CCD7,#EDEFF4,#B19BD8,#C3D6F0,#FFFFFF}
body.sg-engine-claude_v1:has(.ba-root[data-ba-set="noite"]){--ba-rule:rgba(226,189,114,.3);--ba-hair:rgba(226,189,114,.16);--ba-field:rgba(255,246,226,.08);--ba-field-line:rgba(226,189,114,.34);--ba-shadow:rgba(0,4,20,.6);--ba-halo:rgba(14,22,52,.8);--ba-confetti:#DDB257,#F6E0A0,#8FA3E8,#FFFFFF,#A87524}
body.sg-engine-claude_v1::before,body.sg-engine-claude_v1::after{display:none!important}
body.sg-engine-claude_v1 .pagina-convite{max-width:none;margin:0 auto!important;background:transparent!important;min-height:100svh;overflow:clip}
body.sg-engine-claude_v1 .convite{overflow:visible!important;background:transparent!important}
body.sg-engine-claude_v1 .ba-root{position:relative;isolation:isolate;overflow-x:clip;-webkit-font-smoothing:antialiased}
body.sg-engine-claude_v1 .ba-root [hidden]{display:none!important}
.ba-root :is(p,h1,h2){margin:0}
.ba-root img{-webkit-user-drag:none;user-select:none;max-width:none}
.ba-sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}

/* ================= Letras-balão ================= */
/* A altura das letras sai da largura do bloco (100cqw) dividida pela soma das larguras (--sum, calculada no servidor). */
.ba-cover-name,.ba-name,.ba-finale-name{display:block;width:100%;container-type:inline-size}
.ba-balloons{--bh:min(var(--ba-max,220px),calc(100cqw / var(--sum)));display:flex;flex-direction:column;align-items:center;width:100%;line-height:0}
.ba-line{display:flex;flex-wrap:nowrap;justify-content:center}
.ba-line + .ba-line{margin-top:calc(var(--bh) * -.37)}
.ba-word{display:flex;flex-wrap:nowrap}
.ba-word + .ba-word{margin-left:calc(var(--bh) * .16)}
.ba-l{display:block;height:var(--bh);width:auto;margin:0 calc(var(--bh) * -.046);pointer-events:auto;cursor:pointer;-webkit-tap-highlight-color:transparent;
  transform-origin:50% 60%;rotate:var(--r,0deg);animation:ba-bob var(--d,4.8s) ease-in-out calc(var(--i,0) * -.9s) infinite}
.ba-l:nth-child(3n+1){--r:-3deg;--d:5.2s}
.ba-l:nth-child(3n+2){--r:2.5deg;--d:4.4s}
.ba-l:nth-child(3n){--r:-1deg;--d:5.8s}
.ba-word:nth-child(even) .ba-l:nth-child(3n+1){--r:2deg}
@keyframes ba-bob{0%,100%{translate:0 0;rotate:var(--r,0deg)}50%{translate:0 -3.5%;rotate:calc(var(--r,0deg) * -.6)}}
/* Chegada: cada letra enche, uma depois da outra. */
@keyframes ba-inflate{0%{scale:.15;opacity:0}45%{opacity:1}70%{scale:1.08 .94}85%{scale:.97 1.03}100%{scale:1;opacity:1}}
.ba-name-text{display:block;font:700 clamp(46px,14vw,110px)/1 "Fredoka",system-ui,sans-serif;color:var(--ba-accent);text-align:center}

/* ================= Atmosfera: parede fixa e balões soltos ================= */
.ba-atmos{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:var(--ba-base)}
.ba-bg,.ba-bg-soft{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ba-bg-soft{opacity:0;transition:opacity 1.4s ease .2s}
.ba-root.is-closed .ba-bg{animation:ba-arrive 9s cubic-bezier(.2,.7,.2,1) both}
@keyframes ba-arrive{from{transform:scale(1.06)}to{transform:none}}
.ba-root:is(.is-opening,.is-opened) .ba-bg-soft{opacity:1}
.ba-root.is-opened .ba-bg{visibility:hidden}
.ba-sky{position:fixed;inset:0;z-index:0;width:100vw;height:100vh;height:100lvh;pointer-events:none}

/* ================= Capa em camadas ================= */
body.sg-engine-claude_v1.sg-engine-claude_v1 .ba-root .capa.ba-cover{position:fixed!important;inset:0!important;z-index:30;display:block!important;min-height:0!important;height:auto!important;margin:0!important;padding:0!important;overflow:hidden;background:none!important;border:0!important;box-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ba-root .capa.ba-cover.is-gone{display:none!important}
.ba-float{position:absolute;z-index:1;pointer-events:none;will-change:transform}
.ba-cacho{display:block;width:100%;height:auto}
.ba-float--a{top:-11svh;left:-30vw;width:max(96vw,44svh);transform-origin:10% 0}
.ba-float--b{bottom:2svh;right:-40vw;width:max(100vw,46svh);transform-origin:90% 100%}
.ba-root.is-closed .ba-float--a{animation:ba-in-a 2.4s cubic-bezier(.16,1,.3,1) both,ba-sway 7s ease-in-out 2.4s infinite}
.ba-root.is-closed .ba-float--b{animation:ba-in-b 2.6s cubic-bezier(.16,1,.3,1) .2s both,ba-sway 8s ease-in-out 2.8s infinite reverse}
@keyframes ba-in-a{from{opacity:0;transform:translate(-8%,-10%) rotate(-6deg)}to{opacity:1;transform:none}}
@keyframes ba-in-b{from{opacity:0;transform:translate(8%,14%) rotate(5deg)}to{opacity:1;transform:none}}
@keyframes ba-sway{0%,100%{transform:rotate(0)}50%{transform:rotate(1.8deg) translateY(-1%)}}

.ba-cover-title{position:absolute;left:0;right:0;top:31svh;z-index:3;display:flex;flex-direction:column;align-items:center;padding:0 16px;text-align:center;pointer-events:none}
.ba-cover-title::before{content:"";position:absolute;left:50%;top:52%;z-index:-1;width:min(140vw,900px);height:150%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(closest-side,var(--ba-halo),transparent);opacity:.9}
.ba-cover-name{--ba-max:min(230px,30svh)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-cover-eyebrow{margin:0 0 -2px!important;font:700 11.5px/1.4 var(--ba-sans)!important;letter-spacing:.32em!important;padding-left:.32em!important;text-transform:uppercase!important;color:var(--ba-muted)!important;text-shadow:none!important}
.ba-root.is-closed .ba-cover-name .ba-l{animation:ba-inflate 1s cubic-bezier(.2,.9,.3,1.2) calc(.5s + var(--i,0) * .11s) both,ba-bob var(--d,4.8s) ease-in-out calc(var(--i,0) * -.9s) infinite}
.ba-root.is-closed .ba-cover-eyebrow,.ba-root.is-closed .ba-cover-title .ba-xv{animation:ba-fade 1.2s ease .3s both}
@keyframes ba-fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* Cartão com o botão */
.ba-card{position:relative;isolation:isolate;border-radius:22px;background:var(--ba-card);
  box-shadow:0 1px 2px rgba(0,0,0,.05),0 20px 44px -24px var(--ba-shadow),0 8px 18px -12px var(--ba-shadow)}
.ba-card--cover{position:absolute;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 26px);z-index:4;box-sizing:border-box;width:min(calc(100vw - 40px),360px);padding:20px 20px 20px;text-align:center;transform:translateX(-50%)}
.ba-root.is-closed .ba-card--cover{animation:ba-card-in 1.2s cubic-bezier(.16,1.1,.3,1) 1.3s both}
@keyframes ba-card-in{from{opacity:0;transform:translate(-50%,46px)}to{opacity:1;transform:translate(-50%,0)}}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-card-when{margin:2px 0 14px!important;font:600 14px/1.45 var(--ba-sans)!important;color:var(--ba-ink)!important;text-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-greet{margin:0 0 14px!important;padding:0!important;background:none!important;border:0!important;font:italic 500 24px/1.3 var(--ba-display)!important;color:var(--ba-ink)!important;text-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite a.botao.ba-open{position:relative;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-height:56px;margin:0;padding:14px 24px!important;border:0!important;border-radius:999px!important;overflow:hidden;
  background:var(--ba-btn)!important;background-color:var(--ba-btn)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),inset 0 -2px 3px rgba(0,0,0,.14),0 12px 22px -12px var(--ba-shadow)!important;
  text-decoration:none!important;text-shadow:none!important;filter:none!important;-webkit-tap-highlight-color:transparent;transition:transform .45s cubic-bezier(.2,1.4,.3,1)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite a.botao.ba-open span{position:relative;z-index:1;font:700 16.5px/1.2 var(--ba-sans)!important;letter-spacing:.005em!important;text-transform:none!important;color:var(--ba-btn-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ba-root a.botao.ba-open::before{content:""!important;display:block!important;position:absolute;inset:0;border-radius:inherit;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.3) 48%,transparent 62%);transform:translateX(-120%);animation:ba-shine 4.6s ease-in-out 3s infinite}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ba-root a.botao.ba-open::after{content:none!important;display:none!important}
@keyframes ba-shine{0%,62%{transform:translateX(-120%)}100%{transform:translateX(120%)}}
.ba-open:active{transform:scale(.97)}

/* Abertura: o cartão desce, as letras sobem e os cachos se afastam. */
.ba-root.is-opening .ba-card--cover{animation:ba-card-out .7s cubic-bezier(.4,0,.2,1) forwards}
@keyframes ba-card-out{to{opacity:0;transform:translate(-50%,40px)}}
.ba-root.is-opening .ba-cover-name .ba-l{animation:ba-away 1.5s cubic-bezier(.5,0,.6,1) calc(var(--i,0) * .05s) forwards}
@keyframes ba-away{to{translate:0 -95svh;rotate:calc(var(--r,0deg) * 4)}}
.ba-root.is-opening :is(.ba-cover-eyebrow,.ba-cover-title .ba-xv){animation:ba-out .6s ease forwards}
.ba-root.is-opening .ba-cover-title::before{animation:ba-out 1s ease .3s forwards}
@keyframes ba-out{to{opacity:0}}
.ba-root.is-opening .ba-float--a{animation:ba-up-a 1.6s cubic-bezier(.5,0,.3,1) forwards}
.ba-root.is-opening .ba-float--b{animation:ba-up-b 1.6s cubic-bezier(.5,0,.3,1) forwards}
@keyframes ba-up-a{to{opacity:0;transform:translate(-10%,-60%) rotate(-8deg)}}
@keyframes ba-up-b{to{opacity:0;transform:translate(6%,-120svh) rotate(6deg)}}

/* ================= Folha ================= */
.ba-sheet{position:relative;z-index:1;box-sizing:border-box;width:min(100%,620px);margin:0 auto;padding:0 18px 0;color:var(--ba-ink)}
.ba-root.is-closed .ba-sheet{opacity:0;pointer-events:none}
.ba-front{position:relative;display:flex;flex-direction:column;align-items:center;padding:44px 0 24px;text-align:center}
.ba-front::before{content:"";position:absolute;left:50%;top:50%;z-index:-1;width:min(150vw,900px);height:110%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(closest-side,var(--ba-halo),transparent);opacity:.9;pointer-events:none}
.ba-name{--ba-max:min(210px,28svh);margin:10px 0 0!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-eyebrow{margin:0!important;font:700 11.5px/1.4 var(--ba-sans)!important;letter-spacing:.32em!important;padding-left:.32em!important;text-transform:uppercase!important;color:var(--ba-muted)!important;text-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-host{max-width:19em;text-wrap:balance;margin:12px auto 0!important;font:italic 500 23px/1.35 var(--ba-display)!important;color:var(--ba-ink)!important;text-shadow:none!important}
.ba-root[data-ba-font="moderna"]{--ba-display:"DM Serif Display",Georgia,serif}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root[data-ba-font="divertida"] :is(.ba-host,.ba-part-title,.ba-date,.ba-venue,.ba-intro,.ba-finale-lead,.ba-finale-venue,.ba-sign,.ba-greet,.mural-6138__title,.compromisso__local){font-style:normal!important;font-weight:700!important;letter-spacing:-.005em!important}
.ba-root[data-ba-font="divertida"]{--ba-display:"Fredoka",system-ui,sans-serif}
body.sg-engine-claude_v1 .ba-xv{--cl-xv-font:var(--ba-sans);--cl-xv-size:11px;--cl-xv-top:6px;--cl-xv-bottom:0;margin:0 auto}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ba-xv span{font-family:var(--ba-sans)!important;font-weight:700!important;letter-spacing:.44em!important;padding-left:.44em;color:var(--ba-accent)!important;text-shadow:none!important;-webkit-text-fill-color:currentColor!important;background:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ba-xv i{height:1px!important;background:color-mix(in srgb,var(--ba-accent) 55%,transparent)!important;box-shadow:none!important}
.ba-when{display:flex;flex-direction:column;align-items:center;gap:1px;margin:22px 0 0!important}
.ba-wd,.ba-time{font:700 11.5px/1.8 var(--ba-sans);letter-spacing:.26em;padding-left:.26em;text-transform:uppercase;color:var(--ba-muted)}
.ba-date{font:500 30px/1.25 var(--ba-display);color:var(--ba-ink)}
.ba-venue{margin:10px 0 0!important;font:italic 500 24px/1.35 var(--ba-display);color:var(--ba-ink)}
.ba-root.is-opening .ba-name .ba-l{animation:ba-inflate 1s cubic-bezier(.2,.9,.3,1.2) calc(.9s + var(--i,0) * .09s) both,ba-bob var(--d,4.8s) ease-in-out calc(var(--i,0) * -.9s) infinite}
.ba-root.is-opening .ba-front > :not(.ba-name){animation:ba-rise 1.1s cubic-bezier(.2,.8,.2,1) .8s both}
.ba-root.is-opening .ba-sheet > :not(.ba-front){animation:ba-rise 1.2s cubic-bezier(.2,.8,.2,1) 1.3s both}
@keyframes ba-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}

body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-intro{position:relative;max-width:20em;margin:4px auto 0!important;padding:0!important;font:italic 500 24px/1.45 var(--ba-display)!important;text-align:center;color:var(--ba-ink)!important;text-wrap:balance;text-shadow:0 0 14px var(--ba-halo),0 0 3px var(--ba-halo)}

/* Contagem: números-balão em cartões brancos */
.ba-count{margin:38px 0 0;text-align:center}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ba-root .ba-count-title{display:inline-block;margin:0 0 12px;padding:4px 14px;border-radius:99px;background:var(--ba-card);font:700 11px/1.4 var(--ba-sans);letter-spacing:.32em;padding-left:calc(14px + .32em);text-transform:uppercase;color:var(--ba-muted);box-shadow:0 8px 16px -12px var(--ba-shadow)}
body.sg-engine-claude_v1 .ba-count .secao{padding:0!important;margin:0!important;border:0!important;background:none!important;opacity:1!important;transform:none!important;min-height:0!important}
body.sg-engine-claude_v1 .ba-count .secao__interno{width:auto!important;max-width:none!important;padding:0!important}
body.sg-engine-claude_v1 .ba-count :is(.titulo-secao,.divisor,.cantoneiras){display:none!important}
body.sg-engine-claude_v1 .ba-count .contagem{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px!important;margin:0!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-count .contagem__item{position:relative;min-width:0!important;padding:12px 2px 10px!important;border:0!important;border-radius:16px!important;background:var(--ba-card)!important;
  box-shadow:0 1px 2px rgba(0,0,0,.05),0 14px 24px -16px var(--ba-shadow)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-count .contagem__numero{display:block;font-family:"Fredoka",system-ui,sans-serif!important;font-size:38px!important;font-weight:700!important;line-height:1.1!important;font-variant-numeric:tabular-nums;color:var(--ba-accent)!important;-webkit-text-fill-color:currentColor!important;background:none!important;text-shadow:none!important}
/* Com o script, o número vira balões (o texto continua para leitor de tela). */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-count .contagem__numero.ba-has-digits{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important}
.ba-digits{display:flex;justify-content:center;height:clamp(50px,15vw,74px);margin:-8px 0 -6px}
.ba-digits img{display:block;height:100%;width:auto;margin:0 -2.6%}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-count .contagem__rotulo{display:block!important;opacity:1!important;visibility:visible!important;position:static!important;margin-top:2px;font-family:var(--ba-sans)!important;font-size:10px!important;font-weight:700!important;font-style:normal!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:var(--ba-muted)!important}
body.sg-engine-claude_v1 .ba-count .contagem__realizada{grid-column:1/-1;font-family:var(--ba-display)!important;font-size:26px!important;color:var(--ba-ink)!important}

/* Partes: cada uma num cartão, com o buquê amarrado no canto */
.ba-part{position:relative;scroll-margin-top:90px;margin-top:92px}
.ba-panel{padding:62px 22px 28px}
.ba-bunch{position:absolute;top:-100px;right:4px;z-index:3;width:96px;pointer-events:none;transform-origin:52% 92%}
.ba-bunch--left{right:auto;left:4px}
.ba-bunch-img{display:block;width:100%;height:auto;filter:drop-shadow(0 6px 8px rgba(0,0,0,.08))}
.ba-root:not(.is-closed) .ba-bunch{animation:ba-tug 6s ease-in-out infinite}
.ba-part--alt .ba-bunch{animation-duration:7s;animation-direction:reverse}
@keyframes ba-tug{0%,100%{transform:rotate(-2.5deg)}50%{transform:rotate(2.5deg)}}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-part-title{display:block;margin:0 0 8px!important;padding:0 36px!important;font-family:var(--ba-display)!important;font-style:italic;font-size:clamp(34px,9.5vw,44px)!important;font-weight:500!important;line-height:1.08!important;letter-spacing:-.005em!important;text-transform:none!important;text-align:center!important;text-wrap:balance;color:var(--ba-ink)!important;-webkit-text-fill-color:currentColor!important;background:none!important;text-shadow:none!important}
.ba-part-title::after{content:"";display:block;width:46px;height:3px;margin:14px auto 0;border-radius:3px;background:var(--ba-accent);opacity:.55}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root[data-ba-font="divertida"] .ba-part-title{font-size:clamp(30px,8.4vw,38px)!important}

/* Módulos do sistema dentro do cartão */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules{
  --c-bg:transparent;--c-surface:transparent;--c-ink:var(--ba-ink);--c-ink-soft:var(--ba-muted);--c-line:var(--ba-hair);
  --c-name:var(--ba-ink);--c-primary:var(--ba-accent);--c-button-bg:var(--ba-btn);--c-button-ink:var(--ba-btn-ink);
  margin-top:10px;padding:0;color:var(--ba-ink);font-family:var(--ba-sans);text-align:left}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .secao{position:relative;margin:0!important;padding:8px 0 4px!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;color:var(--ba-ink)!important;min-height:0!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules #confirmar{border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .secao + .secao{margin-top:14px!important;padding-top:22px!important;border-top:1px dashed var(--ba-rule)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .secao__interno{width:auto!important;max-width:none!important;margin:0!important;padding:0!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules :is(.cantoneiras,.cantoneira,.divisor){display:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .revela{opacity:1!important;transform:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules :is(.cartao,.moldura){border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;color:var(--ba-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules :is(.moldura,.cartao,.texto)::before,body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules :is(.moldura,.cartao,.texto)::after{display:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .titulo-secao{display:block!important;width:100%!important;max-width:none!important;margin:0 0 12px!important;padding:0!important;font-family:var(--ba-sans)!important;font-size:11.5px!important;font-weight:800!important;font-style:normal!important;letter-spacing:.24em!important;line-height:1.4!important;text-transform:uppercase!important;text-align:center!important;color:var(--ba-accent)!important;background:none!important;-webkit-text-fill-color:currentColor!important;text-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules--same-title > .secao:first-child .titulo-secao,
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-part--vip .ba-modules #confirmar .titulo-secao{display:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules :is(p,li,.texto,.texto p,.item__texto,.evento__texto,.evento__nota,.local-card__endereco,.rsvp__intro,.rsvp-identificacao p,.rsvp-saudacao,.rsvp-membro,.compromisso__endereco,.compromisso__nota,.compromisso__data,.compromisso__hora,.party-public-6136__copy p,.party-public-6136__copy span){font-family:var(--ba-sans)!important;font-size:16.5px!important;font-weight:500!important;font-style:normal!important;line-height:1.6!important;letter-spacing:0!important;color:var(--ba-ink)!important;text-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules :is(.item__titulo,.evento__nome,.local-card__nome,.compromisso__nome,.party-public-6136__copy h3){font-family:var(--ba-sans)!important;font-size:17px!important;font-weight:700!important;letter-spacing:-.005em!important;text-transform:none!important;color:var(--ba-ink)!important;text-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules :is(.campo__rotulo,.rsvp-prazo){font-family:var(--ba-sans)!important;font-size:11.5px!important;font-weight:700!important;letter-spacing:.16em!important;text-transform:uppercase!important;color:var(--ba-muted)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules p#rsvp-membros-rotulo{font-family:var(--ba-sans)!important;font-size:16px!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important;color:var(--ba-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules :is(label,legend):not(.campo__rotulo){font-family:var(--ba-sans)!important;font-size:16px!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important;color:var(--ba-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .compromisso__local{margin:4px 0!important;font-family:var(--ba-display)!important;font-style:italic!important;font-size:31px!important;font-weight:500!important;letter-spacing:0!important;line-height:1.15!important;text-transform:none!important;color:var(--ba-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .compromisso{margin:0 0 12px!important;padding:0 0 14px!important;border:0!important;border-bottom:1px dashed var(--ba-rule)!important;border-radius:0!important;background:none!important;box-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .party-public-6136__icon{background:var(--ba-field)!important;color:var(--ba-accent)!important;border:0!important;box-shadow:inset 0 0 0 1px var(--ba-field-line)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .party-public-6136__icon [class*="mdi-sg"]{color:var(--ba-accent)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .party-public-6136__line{background:var(--ba-rule)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .itens--grade{display:grid!important;grid-template-columns:1fr!important;gap:0!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .item{display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:14px!important;margin:0!important;padding:14px 0!important;min-height:0!important;border:0!important;border-bottom:1px dashed var(--ba-rule)!important;border-radius:0!important;background:none!important;box-shadow:none!important;text-align:left!important;transform:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .item:last-child{border-bottom:0!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .item__icone{flex:none!important;align-self:flex-start!important;margin:2px 0 0!important;width:24px!important;height:24px!important;font-size:20px!important;color:var(--ba-accent)!important;background:none!important;border:0!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .item__icone [class*="mdi-sg"]{color:var(--ba-accent)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules :is(.item__conteudo,.item__principal,.item__titulo,.item__texto){text-align:left!important;align-items:flex-start!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .itens--grade > .item{grid-column:auto!important;justify-self:stretch!important;width:auto!important;max-width:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .texto--centro{text-align:left!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .compromisso__comodidades{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .compromisso__comodidade{grid-template-columns:2rem minmax(0,1fr)!important;gap:12px!important;align-items:center!important;border-radius:6px!important;background:transparent!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .compromisso__comodidade :is(.item__titulo,.item__texto){overflow-wrap:normal!important;word-break:normal!important;hyphens:manual!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules :is(.compromisso__mapa-estatico,.invite-static-map-6159){border-radius:4px!important;overflow:hidden;box-shadow:0 0 0 5px #fff,0 0 0 6px var(--ba-hair),0 10px 20px -12px var(--ba-shadow)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules :is(.compromisso__mapa-estatico,.invite-static-map-6159) img{display:block;width:100%;height:auto}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules :is(input[type=text],input[type=tel],input[type=email],input[type=number],select,textarea){border:0!important;border-radius:6px!important;background:var(--ba-field)!important;color:var(--ba-ink)!important;font-family:var(--ba-sans)!important;font-size:16px!important;font-weight:500!important;box-shadow:inset 0 1px 2px rgba(0,0,0,.05),inset 0 0 0 1px var(--ba-field-line)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules :is(input,textarea)::placeholder{color:color-mix(in srgb,var(--ba-muted) 80%,transparent)!important;opacity:1}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules :is(input,select,textarea):focus{outline:0!important;box-shadow:inset 0 1px 2px rgba(0,0,0,.05),0 0 0 3px color-mix(in srgb,var(--ba-accent) 30%,transparent),inset 0 0 0 1px var(--ba-accent)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules :is(.rsvp-cartao,.rsvp-preview-note-4035,.aviso,.rsvp-membro,.rsvp-guest-policy-ack,.rsvp__resposta){border-radius:6px!important;box-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules #confirmar .rsvp-cartao--simples{max-width:none!important;background:transparent!important;border:0!important;padding:0!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .escolha{border:0!important;border-radius:6px!important;background:var(--ba-field)!important;color:var(--ba-ink)!important;font-family:var(--ba-sans)!important;box-shadow:inset 0 0 0 1px var(--ba-field-line)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .escolha:has(input:checked){background:color-mix(in srgb,var(--ba-accent) 12%,var(--ba-field))!important;box-shadow:inset 0 0 0 1.5px var(--ba-accent)!important;color:var(--ba-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules :is(input,select,textarea) + :is(.botao,button),body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules form .botao{margin-top:14px!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules a:not(.botao){color:var(--ba-accent)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root :is(.botao,button.botao,a.botao):not(.ba-open){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:12px 24px!important;border:0!important;border-radius:999px!important;
  background:var(--ba-btn)!important;background-color:var(--ba-btn)!important;color:var(--ba-btn-ink)!important;font-family:var(--ba-sans)!important;font-size:15px!important;font-weight:700!important;letter-spacing:.005em!important;line-height:1.1!important;text-transform:none!important;text-decoration:none!important;white-space:nowrap;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 10px 18px -12px var(--ba-shadow)!important;text-shadow:none;transition:transform .45s cubic-bezier(.2,1.4,.3,1)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root :is(.botao,button.botao,a.botao):not(.ba-open):active{transform:scale(.97)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root :is(button.botao.botao--contorno,a.botao.botao--contorno,.botao.botao--contorno,button.compromisso__copiar-endereco,.compromisso__copiar-endereco){background:var(--ba-field)!important;color:var(--ba-ink)!important;text-shadow:none;box-shadow:inset 0 0 0 1px var(--ba-field-line)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .compromisso__copiar-endereco{display:inline-flex!important;align-items:center;min-height:36px!important;margin:6px 0 4px!important;padding:6px 16px!important;border:0!important;border-radius:999px!important;font-family:var(--ba-sans)!important;font-size:13px!important;font-weight:700!important;letter-spacing:0!important;text-transform:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .botao--pequeno{min-height:40px;padding:8px 18px!important;font-size:14px!important}
body.sg-engine-claude_v1 .ba-root .botao--bloco{display:flex;width:100%}
body.sg-engine-claude_v1 .ba-root .botao:not(.ba-open)::before,body.sg-engine-claude_v1 .ba-root .botao:not(.ba-open)::after{display:none!important}

/* Alinhamento: títulos, avisos e aberturas centrados; listas e campos à esquerda. */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules :is(.secao__interno > p,.secao__interno > .texto,.rsvp-prazo,.rsvp-identificacao,.rsvp-identificacao p,.rsvp-preview-note-4035,.rsvp__fechado,.mural-6138__subtitle,.mural-hint137,.mural-610__empty,.mural-610__vazio){text-align:center!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .rsvp-prazo{margin:0 0 14px!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .rsvp-prazo strong{font-family:var(--ba-sans)!important;font-weight:700!important;color:var(--ba-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .mural-610__inner{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .mural-610__eyebrow{display:block!important;margin:0 0 6px!important;font-family:var(--ba-sans)!important;font-size:10.5px!important;font-weight:700!important;letter-spacing:.28em!important;padding-left:.28em!important;text-transform:uppercase!important;color:var(--ba-muted)!important;text-align:center!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .mural-6138__title{display:block!important;margin:0 0 10px!important;font-family:var(--ba-display)!important;font-style:italic!important;font-weight:500!important;font-size:30px!important;letter-spacing:0!important;text-transform:none!important;color:var(--ba-ink)!important;text-align:center!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules :is(.mural-6138__subtitle,.mural-hint137){max-width:24em;margin:0 auto 4px!important;color:var(--ba-muted)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules [data-comments-content]{align-self:stretch;width:100%}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .mural-610__open{margin:18px auto 0!important}

/* Mural: o bilhete amarelo continua com tinta escura (a paleta Noite de festa tem texto claro) */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .mural-postit-6137__ink,body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .mural-postit-6137__ink :is(p,span,strong,small,em,time,li,div,a,h3,h4){color:#1e1c18!important;-webkit-text-fill-color:#1e1c18!important;text-shadow:none!important}

/* Aviso de cores reservadas do traje: etiqueta com filete na cor da paleta */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules .reserved-color-note-151{border:0!important;border-left:3px solid var(--ba-accent)!important;border-radius:3px 6px 6px 3px!important;background:var(--ba-field)!important;box-shadow:inset 0 0 0 1px var(--ba-field-line)!important;color:var(--ba-ink)!important}

/* Balões dos módulos: botões e campos com cantos bem redondos */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-root .ba-modules :is(input[type=text],input[type=tel],input[type=email],input[type=number],select,textarea,.escolha){border-radius:14px!important}
body.sg-engine-claude_v1:has(.ba-root[data-ba-set="noite"]) .ba-root .ba-modules :is(.compromisso__mapa-estatico,.invite-static-map-6159){box-shadow:0 0 0 5px rgba(255,255,255,.12),0 10px 20px -12px var(--ba-shadow)!important}

/* Fecho: o nome em balões de novo, com os dados da festa */
.ba-close{position:relative;padding:112px 0 max(60px,12svh);text-align:center}
.ba-finale{display:flex;flex-direction:column;align-items:center;padding:60px 20px 32px}
.ba-finale-name{--ba-max:150px;margin:6px 0 0!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-finale-lead{max-width:17em;margin:0!important;font:italic 500 23px/1.4 var(--ba-display)!important;color:var(--ba-muted)!important;text-wrap:balance}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-finale-when{margin:6px 0 0!important;font:700 12px/1.6 var(--ba-sans)!important;letter-spacing:.18em!important;text-transform:uppercase!important;color:var(--ba-accent)!important;text-wrap:balance}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-finale-venue{margin:6px 0 0!important;font:italic 500 23px/1.35 var(--ba-display)!important;color:var(--ba-ink)!important}
.ba-sign{margin:24px 0 0!important;padding-top:22px!important;border-top:1px dashed var(--ba-rule);align-self:stretch;font:italic 500 20px/1.45 var(--ba-display);color:var(--ba-muted)}
.ba-sign span{display:inline-block;margin-top:4px;font:italic 500 32px/1.15 var(--ba-display);color:var(--ba-ink)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite a.ba-top{position:relative;z-index:2;display:inline-flex;align-items:center;min-height:44px;margin:26px 0 0;padding:8px 22px;border-radius:999px;font:700 13.5px/1.3 var(--ba-sans);color:var(--ba-ink)!important;text-decoration:none!important;background:var(--ba-card);box-shadow:0 10px 18px -12px var(--ba-shadow)}

/* Tela larga */
@media (min-width:760px){
  .ba-sheet{width:min(100%,700px);padding:0 30px}
  .ba-panel{padding:66px 44px 34px}
  .ba-bunch{width:110px;top:-116px;right:14px}
  .ba-bunch--left{left:14px}
  .ba-count .contagem{gap:14px!important}
}
@media (orientation:portrait) and (min-width:700px){
  .ba-float--a{left:-18vw;width:min(80vw,52svh)}
  .ba-float--b{right:-20vw;width:min(84vw,54svh)}
  .ba-cover-title{top:27svh}
}
@media (orientation:landscape) and (min-width:760px){
  .ba-float--a{top:-22svh;left:-8vw;width:min(46vw,90svh)}
  .ba-float--b{bottom:-26svh;right:-8vw;width:min(48vw,92svh)}
  .ba-cover-title{top:14svh;padding:0 16vw}
  .ba-cover-name{--ba-max:min(250px,36svh)}
}
@media (prefers-reduced-motion:reduce){
  .ba-root *{animation:none!important;transition:none!important}
}

/* Miniatura da capa e prévia de seção */
.ba-root--cover-only .ba-sheet{display:none}
.ba-root--cover-only :is(.ba-card,.ba-cover-title > *,.ba-float,.ba-l){animation:none!important;opacity:1}
.ba-root--section{padding:18px 16px;background:var(--ba-base)}
.ba-root--section .ba-panel{padding:26px 18px}

/* Convidado do link pessoal (o sistema troca a saudação por "Convite para / Nome") */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-card--cover .capa__convidado{display:flex;flex-direction:column;align-items:center;gap:2px;margin:0 0 14px!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important;text-shadow:none!important;color:var(--ba-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-card--cover .capa__convidado small{font:700 10px/1.4 var(--ba-sans)!important;letter-spacing:.26em!important;padding-left:.26em;text-transform:uppercase;color:var(--ba-muted)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ba-card--cover .capa__convidado strong{font:italic 500 24px/1.3 var(--ba-display)!important;color:var(--ba-ink)!important}

/* Impressão/PDF: tudo aparece, sem capa e sem balões soltos, em papel branco com tinta escura */
@media print{
  .ba-root :is(.ba-sky,.ba-cover,.ba-atmos){display:none!important}
  .ba-root .ba-sheet{opacity:1!important}
  .ba-card{background:#fff!important;box-shadow:0 0 0 1px rgba(0,0,0,.14)!important;break-inside:avoid}
  .ba-l,.ba-bunch{animation:none!important}
  .ba-front::before,.ba-cover-title::before{display:none!important}
  body.sg-engine-claude_v1{--ba-ink:#2A1C1E;--ba-muted:#5A4448;--ba-accent:#7A3040;--ba-hair:rgba(40,20,24,.16);--ba-rule:rgba(40,20,24,.24);--ba-halo:transparent;--ba-field:rgba(40,20,24,.05);--ba-field-line:rgba(40,20,24,.2);--ba-card:#fff;background:#fff!important}
}
