/*
 * Motor Claude — tema Neon.
 * A pista começa apagada: só o vidro dos tubos aparece na parede. O interruptor
 * acende o letreiro com o nome, letra por letra, e a luz se espalha na parede.
 * O menu são placas de neon; as telas são vidro escuro com filete de luz.
 * Tudo escopado em body.sg-engine-claude_v1: não afeta outros temas.
 *
 * Paleta (--c-*): neon-a = luz principal (letreiro e confirmação), neon-b =
 * segunda cor (XV e placas), neon-c = terceira cor (data e contagem), wall =
 * parede, glass = vidro das telas, glass-ink / glass-muted = texto no vidro.
 */
@font-face{font-family:"Neonderthaw";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/neonderthaw-400.woff2") format("woff2")}
@font-face{font-family:"Tilt Neon";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/tilt-neon-400.woff2") format("woff2")}
@font-face{font-family:"Monoton";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/monoton-400.woff2") format("woff2")}
@font-face{font-family:"Jost";font-style:normal;font-weight:400;font-display:swap;src:url("../../fonts/jost-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"Jost";font-style:normal;font-weight:500;font-display:swap;src:url("../../fonts/jost-latin-500-normal.woff2") format("woff2")}

body.sg-engine-claude_v1{
  --ne-a:var(--c-neon-a,#FF2E93);--ne-b:var(--c-neon-b,#A78BFA);--ne-c:var(--c-neon-c,#67E8F9);
  --ne-wall:var(--c-wall,#0B0710);--ne-glass:var(--c-glass,#16111E);--ne-ink:var(--c-glass-ink,#F4EEFA);--ne-muted:var(--c-glass-muted,#C9BFD6);
  --ne-dark-ink:var(--c-primary-ink,#140010);--ne-line:color-mix(in srgb,var(--ne-ink) 14%,transparent);
  --ne-script:"Neonderthaw","Brush Script MT",cursive;--ne-tube:"Tilt Neon","Jost",system-ui,sans-serif;--ne-sans:"Jost",system-ui,sans-serif;--ne-xv:"Monoton","Tilt Neon",sans-serif;
  /* Tubo aceso: núcleo quase branco e três camadas de luz da cor */
  --ne-core:color-mix(in srgb,#fff 78%,var(--ne-a));
  background:#000!important;background-image:none!important;color:var(--ne-ink);font-family:var(--ne-sans)}
body.sg-engine-claude_v1::before,body.sg-engine-claude_v1::after{display:none!important}
body.sg-engine-claude_v1 .pagina-convite{max-width:480px;margin:0 auto!important;background:var(--ne-wall);min-height:100svh;overflow:clip}
body.sg-engine-claude_v1 .convite{overflow:visible!important}
body.sg-engine-claude_v1 .ne-root{position:relative;isolation:isolate}
body.sg-engine-claude_v1 .ne-root [hidden]{display:none!important}
/* Telas fora de vista: classe em vez de [hidden], para os scripts do convite (mapa etc.) prepararem o conteúdo. */
body.sg-engine-claude_v1 .ne-root .ne-pg.ne-off{display:none!important}

/* ---------- Parede ---------- */
.ne-wall{position:fixed;z-index:0;top:0;bottom:0;left:50%;width:min(100%,480px);transform:translateX(-50%);overflow:hidden;pointer-events:none;
  background:radial-gradient(140% 70% at 50% 0%,color-mix(in srgb,var(--ne-wall) 86%,#fff 5%),var(--ne-wall) 60%),var(--ne-wall)}
.ne-wall::before{content:"";position:absolute;inset:0;opacity:.22;mix-blend-mode:overlay;background-image:url("noise.svg")}
.ne-wall::after{content:"";position:absolute;inset:0;background:radial-gradient(120% 90% at 50% 40%,transparent 55%,rgba(0,0,0,.55))}
/* Luz do letreiro espalhada na parede: só existe depois de acender */
.ne-spill{position:absolute;left:50%;top:-6%;width:130%;height:62%;transform:translateX(-50%);border-radius:50%;
  background:radial-gradient(closest-side,color-mix(in srgb,var(--ne-a) 30%,transparent),color-mix(in srgb,var(--ne-a) 8%,transparent) 60%,transparent);
  filter:blur(20px);opacity:.9;transition:opacity 1.2s ease}
.ne-root.is-closed ~ * .ne-spill,.ne-root.is-closed .ne-spill{opacity:0}
.ne-root.is-opening .ne-spill{animation:ne-spill 1.6s steps(1) .35s both}
@keyframes ne-spill{0%{opacity:0}18%{opacity:.8}24%{opacity:.1}38%{opacity:.9}44%{opacity:.35}58%,100%{opacity:.9}}
.ne-book{position:relative;z-index:1}

/* ---------- Capa: escuridão e interruptor ---------- */
body.sg-engine-claude_v1 .ne-root .capa.ne-cover{position:fixed!important;inset:0!important;z-index:30;display:flex!important;flex-direction:column;align-items:center;justify-content:flex-end;gap:0;min-height:0!important;height:auto!important;margin:0!important;
  padding:0 24px calc(26svh + env(safe-area-inset-bottom))!important;overflow:hidden;text-align:center;background:rgba(3,2,5,.6)!important;transition:opacity 1s ease .7s,background-color 1s ease}
@media (min-width:560px){body.sg-engine-claude_v1 .ne-root .capa.ne-cover{left:50%!important;right:auto!important;width:480px;transform:translateX(-50%)}}
body.sg-engine-claude_v1 .ne-root .capa.ne-cover.is-open{opacity:0;background-color:rgba(3,2,5,0)!important;pointer-events:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ne-root .capa.ne-cover.is-gone{display:none!important}

body.sg-engine-claude_v1 .ne-root a.botao.ne-switch{all:unset;position:relative;display:block;box-sizing:border-box;cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:18px}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ne-root a.botao.ne-switch{background:none!important;border:0!important;box-shadow:none!important;padding:0!important;min-height:0!important}
body.sg-engine-claude_v1 .ne-root a.botao.ne-switch::before,body.sg-engine-claude_v1 .ne-root a.botao.ne-switch::after{content:none!important;display:none!important}
body.sg-engine-claude_v1 .ne-root a.botao.ne-switch:focus-visible{outline:2px solid var(--ne-a);outline-offset:8px}
/* Espelho do interruptor: metal escuro escovado com bisel */
.ne-plate{position:relative;display:block;width:92px;height:144px;border-radius:14px;
  background:linear-gradient(160deg,#34303b 0%,#1f1c25 45%,#17151c 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),inset 0 -1px 0 rgba(0,0,0,.6),inset 0 0 0 1px rgba(255,255,255,.04),0 1px 0 rgba(255,255,255,.05),0 18px 30px -12px rgba(0,0,0,.9),0 0 0 1px rgba(0,0,0,.7)}
.ne-plate::after{content:"";position:absolute;inset:0;border-radius:inherit;opacity:.35;mix-blend-mode:overlay;pointer-events:none;
  background:repeating-linear-gradient(90deg,rgba(255,255,255,.05) 0 1px,transparent 1px 3px)}
.ne-screw{position:absolute;left:50%;width:7px;height:7px;margin-left:-3.5px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#6b6572,#2a2630 70%);box-shadow:inset 0 0 0 .5px rgba(0,0,0,.6)}
.ne-screw::after{content:"";position:absolute;left:1px;right:1px;top:3px;height:1px;background:rgba(0,0,0,.65);transform:rotate(-30deg)}
.ne-screw--t{top:9px}.ne-screw--b{bottom:9px}
/* Tecla basculante: a metade de cima levantada = desligado */
.ne-rocker{position:absolute;left:18px;right:18px;top:26px;bottom:26px;border-radius:8px;overflow:hidden;
  background:linear-gradient(180deg,#2d2933 0%,#3a3541 48%,#1a171f 52%,#23202a 100%);
  box-shadow:0 0 0 1px rgba(0,0,0,.8),inset 0 1px 0 rgba(255,255,255,.1),0 6px 10px -4px rgba(0,0,0,.9);transition:background .18s ease}
.ne-rocker-led{position:absolute;left:50%;top:22%;width:14px;height:3px;margin-left:-7px;border-radius:2px;background:var(--ne-a);
  box-shadow:0 0 4px var(--ne-a),0 0 10px var(--ne-a);animation:ne-led 2.2s ease-in-out infinite}
@keyframes ne-led{50%{opacity:.35}}
.ne-cover.is-open .ne-rocker{background:linear-gradient(180deg,#1a171f 0%,#23202a 48%,#3a3541 52%,#2d2933 100%)}
.ne-cover.is-open .ne-rocker-led{top:auto;bottom:22%;animation:none;opacity:1}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ne-root .ne-switch-label{margin:22px 0 0;font-family:var(--ne-tube);font-size:14px;letter-spacing:.24em;text-transform:uppercase;color:var(--ne-core);
  text-shadow:0 0 2px #fff,0 0 8px var(--ne-a),0 0 18px var(--ne-a);animation:ne-hint 2.2s ease-in-out infinite}
@keyframes ne-hint{50%{opacity:.55}}
.ne-cover.is-open .ne-switch-label{animation:none;opacity:0;transition:opacity .3s}
.ne-guest{margin:0 0 28px;min-height:1px}
/* A saudação do convite aparece como uma placa pequena de neon (só quando tem texto) */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-root .ne-guest .capa__convidado:not(:empty){display:block!important;position:static!important;width:auto!important;height:auto!important;clip:auto!important;margin:0!important;padding:0!important;
  font-family:var(--ne-tube)!important;font-size:22px!important;font-weight:400!important;line-height:1.3!important;letter-spacing:.03em!important;text-transform:none!important;
  color:color-mix(in srgb,#fff 75%,var(--ne-c))!important;text-shadow:0 0 2px #fff,0 0 8px var(--ne-c),0 0 20px var(--ne-c)!important;background:none!important;border:0!important}
body.sg-engine-claude_v1 .ne-guest .capa__convidado :is(small,strong){display:block;font:inherit!important;color:inherit!important;letter-spacing:.03em!important;text-transform:none!important}
body.sg-engine-claude_v1 .ne-guest .capa__convidado small{font-size:14px!important;opacity:.8}

/* ---------- Tela inicial ---------- */
.ne-pg{position:relative;box-sizing:border-box;min-height:100svh;padding:calc(64px + env(safe-area-inset-top)) 24px calc(56px + env(safe-area-inset-bottom));text-align:center}
.ne-hero{position:relative}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ne-root .ne-eyebrow{margin:0 0 6px;font-family:var(--ne-sans);font-size:12px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--ne-muted)}
/* Letreiro: cada letra é um tubo */
body.sg-engine-claude_v1.sg-engine-claude_v1 .ne-root .ne-sign{position:relative;display:block;margin:0 auto;padding:.08em .1em .02em;max-width:100%;
  font-family:var(--ne-script);font-weight:400;font-size:clamp(64px,20vw,96px);line-height:1.05;letter-spacing:0;text-transform:none;white-space:nowrap;overflow:visible;color:var(--ne-core)}
.ne-sign span{display:inline-block;color:var(--ne-core);
  text-shadow:0 0 1px #fff,0 0 4px color-mix(in srgb,#fff 60%,var(--ne-a)),0 0 10px var(--ne-a),0 0 22px var(--ne-a),0 0 46px color-mix(in srgb,var(--ne-a) 70%,transparent);
  animation:ne-buzz 9s linear infinite;animation-delay:calc(var(--i) * -1.3s)}
.ne-sign .ne-gap{width:.28em}
@keyframes ne-buzz{0%,95%,100%{opacity:1}96%{opacity:.55}97%{opacity:1}98%{opacity:.8}}
/* Apagado: vidro do tubo, sem luz */
.ne-root.is-closed .ne-sign span{color:#3b3444;text-shadow:0 1px 0 rgba(255,255,255,.07),0 -1px 0 rgba(0,0,0,.7);animation:none}
.ne-root.is-closed .ne-xv{color:#3b3444;text-shadow:none;filter:none;opacity:.55}
.ne-root.is-closed :is(.ne-eyebrow,.ne-when,.ne-intro,.ne-menu,.ne-count){opacity:0}
/* Acendendo: cada letra tremula e firma, em sequência */
.ne-root.is-opening .ne-sign span{animation:ne-ignite 1.1s steps(1) both;animation-delay:calc(.35s + var(--i) * .06s)}
@keyframes ne-ignite{
  0%{color:#2c2733;text-shadow:none}
  12%{color:var(--ne-core);text-shadow:0 0 1px #fff,0 0 10px var(--ne-a),0 0 22px var(--ne-a)}
  20%{color:#2c2733;text-shadow:none}
  34%{color:var(--ne-core);text-shadow:0 0 1px #fff,0 0 10px var(--ne-a)}
  40%{color:#4a4252;text-shadow:none}
  56%,100%{color:var(--ne-core);text-shadow:0 0 1px #fff,0 0 4px color-mix(in srgb,#fff 60%,var(--ne-a)),0 0 10px var(--ne-a),0 0 22px var(--ne-a),0 0 46px color-mix(in srgb,var(--ne-a) 70%,transparent)}}
.ne-root.is-opening :is(.ne-eyebrow,.ne-when,.ne-intro){animation:ne-rise .9s ease both;animation-delay:1.3s}
.ne-root.is-opening .ne-xv{animation:ne-xv 1s steps(1) both;animation-delay:1s}
@keyframes ne-xv{0%{opacity:.4}20%{opacity:1}30%{opacity:.2}50%,100%{opacity:1}}
@keyframes ne-rise{from{opacity:0;transform:translateY(8px)}}

/* XV em tubo duplo, segunda cor */
body.sg-engine-claude_v1.sg-engine-claude_v1 .ne-root .ne-xv{margin:-.06em 0 0;font-family:var(--ne-xv);font-size:44px;line-height:1;letter-spacing:.06em;padding-left:.06em;
  color:color-mix(in srgb,#fff 70%,var(--ne-b));text-shadow:0 0 2px #fff,0 0 8px var(--ne-b),0 0 20px var(--ne-b),0 0 40px color-mix(in srgb,var(--ne-b) 60%,transparent)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ne-root .ne-when{display:inline-flex;align-items:center;gap:10px;margin:22px 0 0;font-family:var(--ne-tube);font-size:17px;letter-spacing:.16em;
  color:color-mix(in srgb,#fff 72%,var(--ne-c));text-shadow:0 0 2px color-mix(in srgb,#fff 60%,var(--ne-c)),0 0 10px color-mix(in srgb,var(--ne-c) 70%,transparent)}
.ne-when i{font-style:normal;opacity:.6}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ne-root .ne-intro{margin:26px auto 0;max-width:30ch;font-family:var(--ne-sans);font-size:16px;font-weight:400;line-height:1.6;color:var(--ne-muted);text-wrap:balance}

/* ---------- Menu: placas de neon ---------- */
.ne-menu{margin:42px 0 0;text-align:left}
.ne-root.is-opening .ne-menu{animation:ne-rise .9s ease both;animation-delay:1.6s}
/* Confirmação: a placa com moldura de tubo que pisca de vez em quando */
body.sg-engine-claude_v1.sg-engine-claude_v1 .ne-root a.ne-rsvp{position:relative;display:block;padding:17px 18px 15px;border-radius:14px;text-align:center;text-decoration:none;
  border:2px solid color-mix(in srgb,#fff 55%,var(--ne-a));
  box-shadow:0 0 6px var(--ne-a),0 0 18px color-mix(in srgb,var(--ne-a) 70%,transparent),inset 0 0 6px var(--ne-a),inset 0 0 16px color-mix(in srgb,var(--ne-a) 40%,transparent);
  animation:ne-sign-blink 7s steps(1) infinite 3s;-webkit-tap-highlight-color:transparent}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-root a.ne-rsvp span{font-family:var(--ne-tube);font-size:17px;font-weight:400;letter-spacing:.16em;text-transform:uppercase;
  color:var(--ne-core);text-shadow:0 0 1px #fff,0 0 6px var(--ne-a),0 0 14px var(--ne-a)}
@keyframes ne-sign-blink{0%,90%,100%{opacity:1}91%{opacity:.35}92%{opacity:1}93%{opacity:.5}94%{opacity:1}}
body.sg-engine-claude_v1 .ne-root a.ne-rsvp:focus-visible{outline:2px solid var(--ne-c);outline-offset:4px}
/* Outras partes: tubo em repouso (luz baixa); ao tocar, acende inteiro */
.ne-list{list-style:none;margin:28px 0 0;padding:0}
.ne-list li{margin:0;padding:0;border-bottom:1px solid var(--ne-line)}
.ne-list li:first-child{border-top:1px solid var(--ne-line)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ne-root a.ne-item{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:58px;padding:0 4px;text-decoration:none;color:var(--ne-ink);-webkit-tap-highlight-color:transparent}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-root .ne-item-label{font-family:var(--ne-tube);font-size:19px;font-weight:400;letter-spacing:.03em;line-height:1.25;text-transform:none;
  color:color-mix(in srgb,#fff 88%,var(--ne-b));text-shadow:0 0 6px color-mix(in srgb,var(--ne-b) 45%,transparent);transition:text-shadow .15s,color .15s}
.ne-arrow{flex:none;width:16px;height:16px}
.ne-item .ne-arrow{color:var(--ne-b);opacity:.55;transition:opacity .15s,transform .15s}
body.sg-engine-claude_v1 .ne-root a.ne-item:is(:hover,:focus-visible,.is-hot) .ne-item-label{color:var(--ne-core);text-shadow:0 0 1px #fff,0 0 6px var(--ne-b),0 0 16px var(--ne-b),0 0 30px color-mix(in srgb,var(--ne-b) 60%,transparent)}
body.sg-engine-claude_v1 .ne-root a.ne-item:is(:hover,:focus-visible,.is-hot) .ne-arrow{opacity:1;transform:translateX(3px)}
body.sg-engine-claude_v1 .ne-root a.ne-item:focus-visible{outline:1px solid var(--ne-c);outline-offset:-2px;border-radius:8px}
.ne-root a.is-hot{animation:ne-tap .22s steps(1) both!important}
@keyframes ne-tap{0%{opacity:.4}40%{opacity:1}60%{opacity:.6}100%{opacity:1}}

/* ---------- Contagem ---------- */
.ne-count{margin:52px 0 0}
.ne-root.is-opening .ne-count{animation:ne-rise .9s ease both;animation-delay:1.8s}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ne-root .ne-count-title{margin:0 0 12px;font-family:var(--ne-sans);font-size:12px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--ne-muted)}
body.sg-engine-claude_v1 .ne-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 .ne-count .secao__interno{width:auto!important;max-width:none!important;padding:0!important}
body.sg-engine-claude_v1 .ne-count :is(.titulo-secao,.divisor,.cantoneiras){display:none!important}
body.sg-engine-claude_v1 .ne-count .contagem{display:flex!important;justify-content:center;gap:22px!important;margin:0!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-count .contagem__item{min-width:0!important;padding:0!important;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 .ne-count .contagem__numero{font-family:var(--ne-tube)!important;font-size:46px!important;font-weight:400!important;line-height:1!important;
  color:color-mix(in srgb,#fff 72%,var(--ne-c))!important;text-shadow:0 0 2px #fff,0 0 10px var(--ne-c),0 0 24px var(--ne-c)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-count .contagem__rotulo{display:block!important;opacity:1!important;visibility:visible!important;position:static!important;margin-top:8px;font-family:var(--ne-sans)!important;font-size:12px!important;font-style:normal!important;letter-spacing:.24em!important;text-transform:uppercase!important;color:var(--ne-muted)!important}
body.sg-engine-claude_v1 .ne-count .contagem__realizada{font-family:var(--ne-tube)!important;color:var(--ne-ink)!important}

/* ---------- Telas: título em neon e vidro escuro ---------- */
.ne-page{text-align:left;padding-top:calc(52px + env(safe-area-inset-top))!important;padding-bottom:calc(112px + env(safe-area-inset-bottom))!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-root .ne-title{margin:0 0 26px;padding:0 4px;text-align:center;font-family:var(--ne-tube);font-size:34px;font-weight:400;line-height:1.15;letter-spacing:.03em;text-transform:none;
  color:color-mix(in srgb,#fff 80%,var(--ne-b));text-shadow:0 0 1px #fff,0 0 8px var(--ne-b),0 0 20px var(--ne-b),0 0 40px color-mix(in srgb,var(--ne-b) 55%,transparent)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-root .ne-title--rsvp{color:var(--ne-core);text-shadow:0 0 1px #fff,0 0 8px var(--ne-a),0 0 20px var(--ne-a),0 0 40px color-mix(in srgb,var(--ne-a) 55%,transparent)}
.ne-page.ne-enter .ne-title{animation:ne-title-on .8s steps(1) both}
@keyframes ne-title-on{0%{opacity:.15}20%{opacity:1}30%{opacity:.25}48%,100%{opacity:1}}
.ne-page.ne-enter .ne-glass{animation:ne-rise .5s ease both .15s}
.ne-glass{position:relative;border-radius:18px;background:color-mix(in srgb,var(--ne-glass) 92%,transparent);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ne-b) 30%,transparent),0 0 34px -18px var(--ne-b),0 24px 50px -30px #000;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}

/* ---------- Módulos reais do Capítulo 15 no vidro ---------- */
body.sg-engine-claude_v1 .ne-modules{
  --c-bg:var(--ne-glass);--c-surface:var(--ne-glass);--c-surface-ink:var(--ne-ink);--c-surface-ink-soft:var(--ne-muted);--c-ink:var(--ne-ink);--c-ink-soft:var(--ne-muted);--c-line:var(--ne-line);
  --c-name:var(--ne-ink);--c-primary:var(--ne-a);--c-secondary:var(--ne-b);--c-button-bg:var(--ne-a);--c-button-ink:var(--ne-dark-ink);
  padding:8px 22px 24px;color:var(--ne-ink);font-family:var(--ne-sans);text-align:left}
body.sg-engine-claude_v1 .ne-modules .secao{position:relative;margin:0!important;padding:18px 0 8px!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;color:var(--ne-ink)!important;min-height:0!important}
body.sg-engine-claude_v1 .ne-modules #confirmar{border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important}
body.sg-engine-claude_v1 .ne-modules .secao + .secao{margin-top:10px!important;padding-top:22px!important;border-top:1px solid var(--ne-line)!important}
body.sg-engine-claude_v1 .ne-modules .secao__interno{width:auto!important;max-width:none!important;margin:0!important;padding:0!important}
body.sg-engine-claude_v1 .ne-modules :is(.cantoneiras,.cantoneira,.divisor){display:none!important}
body.sg-engine-claude_v1 .ne-modules .revela{opacity:1!important;transform:none!important}
body.sg-engine-claude_v1 .ne-modules :is(.cartao,.moldura){border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;color:var(--ne-ink)!important}
body.sg-engine-claude_v1 .ne-modules :is(.moldura,.cartao,.texto)::before,body.sg-engine-claude_v1 .ne-modules :is(.moldura,.cartao,.texto)::after{display:none!important}
body.sg-engine-claude_v1 .ne-glass--same-title .ne-modules > .secao:first-child .titulo-secao{display:none!important}
body.sg-engine-claude_v1 .ne-modules > .secao:first-child{padding-top:12px!important}
/* Tipografia (também no convite publicado, onde o public-shell força fontes) */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-modules .titulo-secao{display:block!important;width:100%!important;max-width:none!important;margin:0 0 14px!important;padding:0!important;font-family:var(--ne-tube)!important;font-size:14px!important;font-weight:400!important;letter-spacing:.2em!important;line-height:1.4!important;text-transform:uppercase!important;text-align:left!important;
  color:color-mix(in srgb,#fff 70%,var(--ne-c))!important;text-shadow:0 0 8px color-mix(in srgb,var(--ne-c) 60%,transparent)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-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(--ne-sans)!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:1.6!important;letter-spacing:0!important;color:var(--ne-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-modules :is(.item__titulo,.evento__nome,.local-card__nome,.compromisso__nome,.party-public-6136__copy h3){font-family:var(--ne-tube)!important;font-size:15px!important;font-weight:400!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:color-mix(in srgb,#fff 82%,var(--ne-b))!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-modules :is(.campo__rotulo,.rsvp-prazo){font-family:var(--ne-sans)!important;font-size:12.5px!important;font-weight:500!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:var(--ne-muted)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-modules .compromisso__local{margin:4px 0!important;font-family:var(--ne-tube)!important;font-size:24px!important;font-weight:400!important;letter-spacing:.02em!important;line-height:1.2!important;text-transform:none!important;color:#fff!important}
body.sg-engine-claude_v1 .ne-modules .compromisso{margin:0 0 12px!important;padding:0 0 14px!important;border:0!important;border-bottom:1px solid var(--ne-line)!important;border-radius:0!important;background:none!important;box-shadow:none!important}
body.sg-engine-claude_v1 .ne-modules .party-public-6136__icon{background:transparent!important;color:var(--ne-a)!important;border:0!important;box-shadow:inset 0 0 0 1.5px var(--ne-a),0 0 10px -2px var(--ne-a)!important}
body.sg-engine-claude_v1 .ne-modules .party-public-6136__icon [class*="mdi-sg"]{color:var(--ne-a)!important}
body.sg-engine-claude_v1 .ne-modules .party-public-6136__line{background:var(--ne-line)!important}
/* Listas: um item por linha, sem caixas */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-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 .ne-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 solid var(--ne-line)!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 .ne-modules .item:last-child{border-bottom:0!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-modules .item__icone{flex:none!important;margin:2px 0 0!important;width:24px!important;height:24px!important;font-size:20px!important;color:var(--ne-a)!important;background:none!important;border:0!important;filter:drop-shadow(0 0 4px color-mix(in srgb,var(--ne-a) 70%,transparent))}
body.sg-engine-claude_v1 .ne-modules .item__icone [class*="mdi-sg"]{color:var(--ne-a)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-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 .ne-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 .ne-modules .texto--centro{text-align:left!important}
/* Endereço: estacionamento e acessibilidade um embaixo do outro */
body.sg-engine-claude_v1.sg-engine-claude_v1 .ne-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 .ne-modules .compromisso__comodidade{grid-template-columns:2rem minmax(0,1fr)!important;gap:12px!important;align-items:center!important;border-radius:12px!important;background:rgba(255,255,255,.03)!important;border:1px solid var(--ne-line)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ne-modules .compromisso__comodidade :is(.item__titulo,.item__texto){overflow-wrap:normal!important;word-break:normal!important;hyphens:manual!important}
body.sg-engine-claude_v1 .ne-modules :is(.compromisso__mapa-estatico,.invite-static-map-6159){border-radius:12px!important;overflow:hidden;border:1px solid var(--ne-line)!important}
body.sg-engine-claude_v1 .ne-modules :is(.compromisso__mapa-estatico,.invite-static-map-6159) img{display:block;width:100%;height:auto;filter:saturate(.8) brightness(.9)}
body.sg-engine-claude_v1 .ne-modules .invite-static-map-6159 figcaption a{color:var(--ne-c)!important}
/* Formulários */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-modules :is(input[type=text],input[type=tel],input[type=email],input[type=number],select,textarea){border:1px solid color-mix(in srgb,var(--ne-ink) 24%,transparent)!important;border-radius:12px!important;background:rgba(0,0,0,.35)!important;color:#fff!important;font-family:var(--ne-sans)!important;font-size:16px!important;box-shadow:none!important}
body.sg-engine-claude_v1 .ne-modules :is(input,textarea)::placeholder{color:color-mix(in srgb,var(--ne-ink) 45%,transparent)!important}
body.sg-engine-claude_v1 .ne-modules :is(input,select,textarea):focus{outline:0!important;border-color:var(--ne-a)!important;box-shadow:0 0 0 1px var(--ne-a),0 0 14px -2px var(--ne-a)!important}
body.sg-engine-claude_v1 .ne-modules :is(.rsvp-cartao,.rsvp-preview-note-4035,.aviso,.rsvp-membro,.rsvp-guest-policy-ack,.rsvp__resposta){border-radius:12px!important;box-shadow:none!important;background:rgba(255,255,255,.04)!important;border:1px solid var(--ne-line)!important;color:var(--ne-ink)!important}
body.sg-engine-claude_v1 .ne-modules #confirmar .rsvp-cartao--simples{max-width:none!important;background:transparent!important;border:0!important;padding:0!important}
body.sg-engine-claude_v1 .ne-modules .escolha{border:1px solid color-mix(in srgb,var(--ne-ink) 24%,transparent)!important;border-radius:999px!important;background:transparent!important;color:var(--ne-ink)!important;font-family:var(--ne-sans)!important}
body.sg-engine-claude_v1 .ne-modules .escolha:has(input:checked){border-color:var(--ne-a)!important;color:#fff!important;box-shadow:0 0 0 1px var(--ne-a),0 0 14px -2px var(--ne-a)!important}
body.sg-engine-claude_v1 .ne-modules :is(input,select,textarea) + :is(.botao,button),body.sg-engine-claude_v1 .ne-modules form .botao{margin-top:14px!important}
body.sg-engine-claude_v1 .ne-modules a:not(.botao){color:var(--ne-c)}
/* Botões: preenchido na luz principal; secundário em tubo fino */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-root :is(.botao,button.botao,a.botao):not(.ne-switch){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 24px!important;border:0!important;border-radius:999px!important;
  background:var(--ne-a)!important;color:var(--ne-dark-ink)!important;font-family:var(--ne-tube)!important;font-size:15px!important;font-weight:400!important;letter-spacing:.12em!important;line-height:1.1!important;text-transform:uppercase!important;text-decoration:none!important;
  box-shadow:0 0 16px -4px var(--ne-a),inset 0 1px 0 rgba(255,255,255,.35)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-root :is(button.botao.botao--contorno,a.botao.botao--contorno,.botao.botao--contorno,button.compromisso__copiar-endereco,.compromisso__copiar-endereco):not(.ne-switch){background:transparent!important;color:var(--ne-ink)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ne-c) 70%,transparent),0 0 12px -6px var(--ne-c)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-modules .compromisso__copiar-endereco{display:inline-flex!important;align-items:center;min-height:34px!important;margin:6px 0 4px!important;padding:6px 14px!important;border:0!important;border-radius:999px!important;font-family:var(--ne-tube)!important;font-size:12px!important;letter-spacing:.14em!important;text-transform:uppercase!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-root .botao--pequeno{min-height:38px;padding:8px 16px!important;font-size:13px!important}
body.sg-engine-claude_v1 .ne-root .botao--bloco{display:flex;width:100%}
body.sg-engine-claude_v1 .ne-root .botao:not(.ne-switch)::before,body.sg-engine-claude_v1 .ne-root .botao:not(.ne-switch)::after{display:none!important}
/* Mural */
body.sg-engine-claude_v1 .ne-modules :is(.mural-6138__title,.mural-610__eyebrow){font-family:var(--ne-tube)!important;letter-spacing:.12em!important;color:#fff!important}
body.sg-engine-claude_v1 .ne-modules .mural-6138__subtitle{font-family:var(--ne-sans)!important;color:var(--ne-muted)!important}

/* ---------- Voltar ao menu: fixo embaixo, em tubo fino ---------- */
body.sg-engine-claude_v1.sg-engine-claude_v1 a.ne-back{position:fixed!important;left:50%;bottom:calc(16px + env(safe-area-inset-bottom));z-index:40;display:flex!important;align-items:center;justify-content:center;gap:10px;box-sizing:border-box;width:min(calc(100% - 48px),380px)!important;margin:0!important;padding:14px 18px!important;transform:translateX(-50%)!important;
  border-radius:999px;background:rgba(6,4,10,.86)!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff!important;text-decoration:none!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ne-a) 70%,transparent),0 0 16px -6px var(--ne-a),0 12px 30px -12px #000!important;font-family:var(--ne-tube)!important;font-size:14px!important;letter-spacing:.16em!important;text-transform:uppercase}
body.sg-engine-claude_v1 a.ne-back .ne-arrow{color:var(--ne-a)}
/* Confirmação: o Voltar fica no fim da página, longe dos botões do formulário */
body.sg-engine-claude_v1.sg-engine-claude_v1 .ne-page[data-ne-screen="vip"] a.ne-back{position:relative!important;left:auto;bottom:auto;transform:none!important;width:100%!important;margin:44px 0 0!important}
body.sg-engine-claude_v1 .ne-page[data-ne-screen="vip"]{padding-bottom:calc(36px + env(safe-area-inset-bottom))!important}
/* Enquanto o convidado digita, o Voltar fixo sai da frente */
body.sg-engine-claude_v1.ne-typing .ne-page a.ne-back{opacity:0!important;pointer-events:none!important}

/* ---------- Rodapé, música e botão flutuante ---------- */
body.sg-engine-claude_v1 .rodape{position:relative;z-index:2;background:#000!important;color:var(--ne-muted)!important;border-top:1px solid var(--ne-line)!important}
body.sg-engine-claude_v1 .rodape::before{background:var(--ne-line)!important}
body.sg-engine-claude_v1[data-ne-screen]:not([data-ne-screen="menu"]) .rodape{display:none!important}
body.sg-engine-claude_v1[data-ne-screen]:not([data-ne-screen="menu"]) .pagina-convite{padding-bottom:0!important}
body.sg-engine-claude_v1[data-ne-screen]:not([data-ne-screen="menu"]) .rsvp-floating-cta{display:none!important}
body.sg-engine-claude_v1 .musica{background:rgba(6,4,10,.86)!important;color:#fff!important;border:0!important;border-radius:999px!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ne-b) 60%,transparent),0 0 12px -4px var(--ne-b)!important;font-family:var(--ne-tube)!important;backdrop-filter:blur(8px)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .rsvp-floating-cta,body.sg-engine-claude_v1.sg-engine-claude_v1 .rsvp-floating-cta strong{background:var(--ne-a)!important;color:var(--ne-dark-ink)!important;border-radius:999px!important;font-family:var(--ne-tube)!important;font-weight:400!important;letter-spacing:.12em!important;box-shadow:0 0 18px -4px var(--ne-a)!important}

/* Miniatura da capa (seletor de temas): o letreiro já aceso, sem menu */
.ne-root--cover-only .ne-cover,.ne-root--cover-only :is(.ne-menu,.ne-count,.ne-intro){display:none!important}
.ne-root--section{min-height:100svh;padding:1px 0;background:var(--ne-wall)}
.ne-section-preview{padding:24px 18px}

/* Convite publicado: o public-shell força o tamanho de todo <p> e dos botões */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-root .ne-switch-label{font-size:14px!important}

@media (prefers-reduced-motion:reduce){body.sg-engine-claude_v1 .ne-root *,body.sg-engine-claude_v1 .ne-root *::before,body.sg-engine-claude_v1 .ne-root *::after{animation:none!important;transition-duration:.01ms!important}}
/* Textos de formulário em frase normal (sem caixa alta) */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-modules :is(label,legend):not(.campo__rotulo){font-family:var(--ne-sans)!important;font-size:15px!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important;color:var(--ne-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-modules .escolha{font-family:var(--ne-tube)!important;font-size:13px!important;letter-spacing:.12em!important;text-transform:uppercase!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-modules p#rsvp-membros-rotulo{font-size:15px!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important;color:var(--ne-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-modules .item__icone{align-self:flex-start!important}
/* Mural: bilhetes amarelos com texto escuro (legível sobre o papel) */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-modules :is(.mural-memory-6136__note,.mural-memory-6137__note){background:#FFF3B7!important;color:#2A2230!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-modules :is(.mural-memory-6136__note,.mural-memory-6137__note) :is(p,span,strong,em){color:#2A2230!important;text-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-modules :is(.mural-memory-6136__note,.mural-memory-6137__note) cite{color:#6B3A55!important;text-shadow:none!important}
body.sg-engine-claude_v1 .ne-root .ne-switch-label{cursor:pointer;-webkit-tap-highlight-color:transparent}

/* ---------- Menu em cartões (peças comuns do motor, cores do Neon) ---------- */
body.sg-engine-claude_v1 .ne-root{--cl-tile-bg:color-mix(in srgb,var(--ne-glass) 88%,transparent);--cl-tile-line:color-mix(in srgb,var(--ne-a) 55%,transparent);--cl-tile-ink:var(--ne-ink);--cl-tile-muted:var(--ne-muted);--cl-tile-accent:var(--ne-a);
  --cl-tile-badge:color-mix(in srgb,var(--ne-a) 14%,transparent);--cl-tile-shadow:0 0 20px -8px var(--ne-a);--cl-title-font:"Tilt Neon",var(--ne-sans);--cl-body-font:var(--ne-sans);--cl-head-ink:var(--ne-ink);--cl-head-muted:var(--ne-muted)}
body.sg-engine-claude_v1 .ne-root .cl-tile-icon{filter:drop-shadow(0 0 5px var(--ne-a))}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ne-root .cl-menu-title{text-shadow:0 0 12px color-mix(in srgb,var(--ne-b) 70%,transparent)!important}
