/* Motor 2.2.1 — personalização opcional por cliente; sem alterar a matriz. */
:root[data-client-visual="true"] .splash-logo-wrap{
  translate:0 var(--cv-logo-y,0px);
}
:root[data-client-visual="true"] .splash-logo{scale:var(--cv-logo-scale,1);max-width:100%}
/* Não sobrescrever transform do tema nem o deslocamento do Depth Engine. */
:root[data-client-visual="true"] .splash .splash-character-stage.character-trio{
  translate:var(--depth-front-x,0px) calc(var(--depth-front-y,0px) + var(--cv-trio-y,0px));
}
:root[data-client-visual="true"] .splash-cta{
  translate:0 var(--cv-cta-y,0px);
}
:root[data-client-visual="true"] .splash-event-details{
  translate:0 var(--cv-details-y,0px);
  max-width:min(100%,calc(100vw - 32px));
}
:root[data-cv-date-size="true"] .splash-event-details,
:root[data-cv-date-size="true"] .splash-event-details :is(time,span){font-size:var(--cv-date-size)!important}
:root[data-cv-date-color="true"] .splash-event-details,
:root[data-cv-date-color="true"] .splash-event-details :is(time,span){color:var(--cv-date-color)!important}
:root[data-client-visual="true"] .character-trio[data-count="3"] .character-position--left{
  left:calc(3% - var(--cv-trio-gap,0%))!important;
}
:root[data-client-visual="true"] .character-trio[data-count="3"] .character-position--right{
  right:calc(3% - var(--cv-trio-gap,0%))!important;
}
:root[data-client-visual="true"] .character-trio .character-position--center img{
  scale:var(--cv-center-scale,1);
}
:root[data-client-visual="true"] .character-trio .character-position--left img,
:root[data-client-visual="true"] .character-trio .character-position--right img{
  scale:var(--cv-side-scale,1);
}
:root[data-client-visual="true"][data-cv-button-radius="true"] :is(.splash-start-btn,.menu-btn,.mission-btn){border-radius:var(--cv-button-radius)!important}
:root[data-cv-button-height="true"] :is(.splash-start-btn,.menu-btn,.mission-btn){min-height:var(--cv-button-height)!important}
:root[data-cv-button-font-size="true"] :is(.splash-start-btn,.menu-btn,.mission-btn){font-size:var(--cv-button-font-size)!important}
:root[data-client-visual="true"][data-cv-title-size="true"] :is(.page-title,.eyebrow){font-size:var(--cv-title-size)!important}
:root[data-client-visual="true"][data-cv-body-size="true"] :is(.card-intro,.splash-hint,.field,.gift-row){font-size:var(--cv-body-size)!important}
:root[data-client-visual="true"][data-cv-title-color="true"] :is(.page-title,.eyebrow){color:var(--cv-title-color)!important}
:root[data-client-visual="true"][data-cv-body-color="true"] :is(.card-intro,.splash-hint,.gift-row){color:var(--cv-body-color)!important}
/* O fundo só é alterado na tela que o cliente optou por enquadrar. */
:root[data-client-bg-splash="true"] .screen-bg[data-asset="bg-splash"]{
  object-position:var(--cv-bg-splash-x,50%) var(--cv-bg-splash-y,50%)!important;
  scale:calc(var(--depth-bg-scale,1) + var(--cv-bg-splash-zoom,0))!important;
}
:root[data-client-bg-home="true"] .screen-bg[data-asset="bg-home"]{
  object-position:var(--cv-bg-home-x,50%) var(--cv-bg-home-y,50%)!important;
  scale:calc(var(--depth-bg-scale,1) + var(--cv-bg-home-zoom,0))!important;
}
:root[data-client-bg-rsvp="true"] .screen-bg[data-asset="bg-rsvp"]{
  object-position:var(--cv-bg-rsvp-x,50%) var(--cv-bg-rsvp-y,50%)!important;
  scale:calc(var(--depth-bg-scale,1) + var(--cv-bg-rsvp-zoom,0))!important;
}
:root[data-client-bg-location="true"] .screen-bg[data-asset="bg-location"]{
  object-position:var(--cv-bg-location-x,50%) var(--cv-bg-location-y,50%)!important;
  scale:calc(var(--depth-bg-scale,1) + var(--cv-bg-location-zoom,0))!important;
}
:root[data-client-bg-about="true"] .screen-bg[data-asset="bg-about"]{
  object-position:var(--cv-bg-about-x,50%) var(--cv-bg-about-y,50%)!important;
  scale:calc(var(--depth-bg-scale,1) + var(--cv-bg-about-zoom,0))!important;
}
@media(prefers-reduced-motion:reduce){
  :root[data-client-visual="true"] .splash .splash-character-stage.character-trio{translate:0 var(--cv-trio-y,0px)!important}
  :root[data-client-visual="true"] .screen-bg[data-asset]{transition:none!important}
}

/* Editor drag-and-drop: deslocamento em unidades relativas à tela. Sem valores, aparência original. */
:root[data-client-layout="true"] #splashLogoWrap{translate:var(--cv-drag-logo-x,0vw) calc(var(--cv-logo-y,0px) + var(--cv-drag-logo-y,0vh))}
:root[data-client-layout="true"] #splashCharacterStage{translate:calc(var(--depth-front-x,0px) + var(--cv-drag-stage-x,0vw)) calc(var(--depth-front-y,0px) + var(--cv-trio-y,0px) + var(--cv-drag-stage-y,0vh))}
:root[data-client-layout="true"] #splashEventDetails{translate:var(--cv-drag-details-x,0vw) calc(var(--cv-details-y,0px) + var(--cv-drag-details-y,0vh))}
:root[data-client-layout="true"] #splash .splash-cta{translate:var(--cv-drag-cta-x,0vw) calc(var(--cv-cta-y,0px) + var(--cv-drag-cta-y,0vh))}
:root[data-client-layout="true"] #splashCharacterStage .character-position--left{translate:var(--cv-drag-left-x,0vw) var(--cv-drag-left-y,0vh);scale:var(--cv-drag-left-scale,1)}
:root[data-client-layout="true"] #splashCharacterStage .character-position--center{translate:var(--cv-drag-center-x,0vw) var(--cv-drag-center-y,0vh);scale:var(--cv-drag-center-scale,1)}
:root[data-client-layout="true"] #splashCharacterStage .character-position--right{translate:var(--cv-drag-right-x,0vw) var(--cv-drag-right-y,0vh);scale:var(--cv-drag-right-scale,1)}
:root[data-client-layout="true"] #splashLogoWrap{scale:var(--cv-drag-logo-scale,1)}
:root[data-client-layout="true"] #splash .splash-cta{scale:var(--cv-drag-cta-scale,1)}
:root[data-client-layout="true"] #splashEventDetails{scale:var(--cv-drag-details-scale,1)}
/* Edit mode is local to the preview and never included in the published config. */
html[data-panel-edit="true"] *,html[data-panel-edit="true"] *::before,html[data-panel-edit="true"] *::after{animation-play-state:paused!important;transition-duration:0s!important}
html[data-panel-edit="true"] #splashLogoWrap,html[data-panel-edit="true"] #splash .splash-cta,html[data-panel-edit="true"] #splashCharacterStage .character-position.has-character{opacity:1!important}
html[data-panel-edit="true"] #splash #startStory{pointer-events:none!important}
html[data-panel-edit="true"] .depth-ambience{display:none!important}
html[data-panel-edit="true"] #splash .screen-bg{transition:none!important}
html[data-panel-edit="true"] #splash [data-panel-target]{outline:1px dashed #e9f3ff!important;outline-offset:1px;cursor:grab!important;pointer-events:auto!important;touch-action:none!important}
html[data-panel-edit="true"] #splash [data-panel-target].panel-selected{outline:2px solid #7ba7ff!important;outline-offset:3px;cursor:grabbing!important}
html[data-panel-edit="true"] #splash .splash-content{translate:none!important}


/* 2.3.2: posicionamento por página; deslocamentos só no container, nunca nos inputs do RSVP. */
:root[data-client-layout="true"] #home .hero-logo{translate:var(--cv-drag-homeLogo-x,0vw) var(--cv-drag-homeLogo-y,0vh);scale:var(--cv-drag-homeLogo-scale,1);}
:root[data-client-layout="true"] #home .home-characters{translate:calc(var(--depth-front-x,0px) + var(--cv-drag-homeCharacters-x,0vw)) calc(var(--depth-front-y,0px) + var(--cv-drag-homeCharacters-y,0vh));scale:var(--cv-drag-homeCharacters-scale,1);}
:root[data-client-layout="true"] #home .menu-stack{translate:var(--cv-drag-homeMenu-x,0vw) var(--cv-drag-homeMenu-y,0vh);scale:var(--cv-drag-homeMenu-scale,1);}
:root[data-client-layout="true"] #home .home-date{translate:var(--cv-drag-homeDate-x,0vw) var(--cv-drag-homeDate-y,0vh);scale:var(--cv-drag-homeDate-scale,1);}
:root[data-client-layout="true"] #home .eyebrow{translate:var(--cv-drag-homeChamada-x,0vw) var(--cv-drag-homeChamada-y,0vh);scale:var(--cv-drag-homeChamada-scale,1);}
:root[data-client-layout="true"] #rsvp .top-logo{translate:var(--cv-drag-rsvpLogo-x,0vw) var(--cv-drag-rsvpLogo-y,0vh);scale:var(--cv-drag-rsvpLogo-scale,1);}
:root[data-client-layout="true"] #rsvp .back-btn{translate:var(--cv-drag-rsvpBack-x,0vw) var(--cv-drag-rsvpBack-y,0vh);scale:var(--cv-drag-rsvpBack-scale,1);}
:root[data-client-layout="true"] #rsvp .form-card{translate:var(--cv-drag-rsvpCard-x,0vw) var(--cv-drag-rsvpCard-y,0vh);scale:var(--cv-drag-rsvpCard-scale,1);}
:root[data-client-layout="true"] #location .top-logo{translate:var(--cv-drag-locationLogo-x,0vw) var(--cv-drag-locationLogo-y,0vh);scale:var(--cv-drag-locationLogo-scale,1);}
:root[data-client-layout="true"] #location .back-btn{translate:var(--cv-drag-locationBack-x,0vw) var(--cv-drag-locationBack-y,0vh);scale:var(--cv-drag-locationBack-scale,1);}
:root[data-client-layout="true"] #location .location-card{translate:var(--cv-drag-locationCard-x,0vw) var(--cv-drag-locationCard-y,0vh);scale:var(--cv-drag-locationCard-scale,1);}
:root[data-client-layout="true"] #about .top-logo{translate:var(--cv-drag-aboutLogo-x,0vw) var(--cv-drag-aboutLogo-y,0vh);scale:var(--cv-drag-aboutLogo-scale,1);}
:root[data-client-layout="true"] #about .back-btn{translate:var(--cv-drag-aboutBack-x,0vw) var(--cv-drag-aboutBack-y,0vh);scale:var(--cv-drag-aboutBack-scale,1);}
:root[data-client-layout="true"] #about .about-card{translate:var(--cv-drag-aboutCard-x,0vw) var(--cv-drag-aboutCard-y,0vh);scale:var(--cv-drag-aboutCard-scale,1);}

/* O modo edição revela somente a página escolhida e mantém elementos alcançáveis pelo ponteiro. */
html[data-panel-edit="true"] [data-panel-target]{outline:1px dashed #e9f3ff!important;outline-offset:1px;cursor:grab!important;pointer-events:auto!important;touch-action:none!important}
html[data-panel-edit="true"] [data-panel-target].panel-selected{outline:2px solid #7ba7ff!important;outline-offset:3px;cursor:grabbing!important}
html[data-panel-edit="true"] .screen:not(.is-active){display:none!important}

:root[data-client-layout="true"] #home .menu-btn--confirm{translate:var(--cv-drag-homeConfirm-x,0vw) var(--cv-drag-homeConfirm-y,0vh);scale:var(--cv-drag-homeConfirm-scale,1);}
:root[data-client-layout="true"] #home .menu-btn--location{translate:var(--cv-drag-homeLocation-x,0vw) var(--cv-drag-homeLocation-y,0vh);scale:var(--cv-drag-homeLocation-scale,1);}
:root[data-client-layout="true"] #home .menu-btn--about{translate:var(--cv-drag-homeAbout-x,0vw) var(--cv-drag-homeAbout-y,0vh);scale:var(--cv-drag-homeAbout-scale,1);}
:root[data-client-layout="true"] #rsvp #submitRsvp{translate:var(--cv-drag-rsvpSubmit-x,0vw) var(--cv-drag-rsvpSubmit-y,0vh);scale:var(--cv-drag-rsvpSubmit-scale,1);}
:root[data-client-layout="true"] #location a[data-event-href="maps-url"]{translate:var(--cv-drag-locationMaps-x,0vw) var(--cv-drag-locationMaps-y,0vh);scale:var(--cv-drag-locationMaps-scale,1);}
:root[data-client-layout="true"] #location a[data-event-href="waze-url"]{translate:var(--cv-drag-locationWaze-x,0vw) var(--cv-drag-locationWaze-y,0vh);scale:var(--cv-drag-locationWaze-scale,1);}
:root[data-client-layout="true"] #about .about-card > button[data-nav="home"]{translate:var(--cv-drag-aboutReturn-x,0vw) var(--cv-drag-aboutReturn-y,0vh);scale:var(--cv-drag-aboutReturn-scale,1);}