@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Fraunces:opsz,wght@9..144,700;9..144,800&display=swap');
:root{--ink:#172033;--muted:#667085;--line:#e7e9ef;--paper:#fff;--soft:#fff7f3;--brand:#ff5a36;--brand2:#ff8a45;--green:#17a66b;--shadow:0 24px 70px rgba(41,25,18,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 10% 5%,#fff0e8 0,transparent 27%),radial-gradient(circle at 95% 25%,#fff7d8 0,transparent 24%),#fffaf7;color:var(--ink);font-family:'DM Sans',system-ui,sans-serif;min-height:100vh}button,input,textarea,select{font:inherit}button{cursor:pointer}.top{background:#172033;color:#fff;font-size:12px;padding:8px;text-align:center}.site{background:rgba(255,255,255,.92);border-bottom:1px solid #eee;backdrop-filter:blur(15px);position:relative;z-index:20}.sitein{max-width:1180px;margin:auto;padding:15px 22px;display:flex;align-items:center;justify-content:space-between;gap:14px}.brand{font-weight:900;color:var(--brand);text-decoration:none;font-size:22px}.nav{display:flex;gap:18px;align-items:center}.nav a{text-decoration:none;color:var(--ink);font-weight:700}.nav .btn{color:#fff}.foot{margin-top:60px;background:#172033;color:#fff;padding:34px 18px;text-align:center}.foot a{color:#fff}.wrap{max-width:1040px;margin:auto;padding:26px 18px}.card{background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 14px 42px rgba(25,32,51,.08);padding:24px;margin:18px 0}.btn,.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:14px;padding:14px 20px;font-weight:800;text-decoration:none;transition:.2s ease}.btn,.primary{background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;box-shadow:0 10px 22px rgba(255,90,54,.24)}.btn:hover,.primary:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(255,90,54,.3)}.btn.alt{background:#172033}.btn.soft,.secondary{background:#f4f5f7;color:var(--ink);box-shadow:none}.actions{display:flex;gap:10px;flex-wrap:wrap}.ok{background:#ecfdf5;border:1px solid #a7f3d0;padding:16px;border-radius:15px}.err{background:#fff1f2;border:1px solid #fecdd3;color:#9f1239;padding:14px;border-radius:14px}.muted{color:var(--muted)}

.creator-shell{max-width:1220px;margin:auto;padding:46px 24px 80px}.creator-intro{text-align:center;max-width:850px;margin:0 auto 38px}.eyebrow,.step-heading>span,.preview-label>span{color:var(--brand);font-size:12px;font-weight:900;letter-spacing:.14em}.creator-intro h1{font-family:'Fraunces',serif;font-size:clamp(42px,6vw,76px);line-height:.98;letter-spacing:-.045em;margin:15px 0}.creator-intro h1 em{color:var(--brand);font-style:normal}.creator-intro>p{font-size:19px;color:var(--muted);max-width:700px;margin:20px auto}.benefits{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.benefits span{padding:9px 14px;background:#fff;border:1px solid var(--line);border-radius:999px;font-size:13px;font-weight:700;color:#475467}.creator-workspace{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:28px;align-items:start}.wizard-card{background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);padding:28px;min-height:650px}.wizard-progress{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;margin-bottom:32px}.wizard-progress>i{height:3px;background:#e9ebf0;border-radius:3px}.step-dot{border:0;background:none;display:flex;align-items:center;gap:8px;color:#98a2b3;font-weight:700}.step-dot b{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#f1f2f4;color:#667085}.step-dot.active,.step-dot.done{color:var(--ink)}.step-dot.active b{background:var(--brand);color:white;box-shadow:0 8px 18px #ff5a3640}.step-dot.done b{background:#dcfae6;color:#067647}.wizard-step{display:none;animation:stepIn .35s ease}.wizard-step.active{display:block}.step-heading h2{font-family:'Fraunces',serif;font-size:34px;margin:7px 0 5px}.step-heading p{margin:0 0 24px;color:var(--muted)}.theme-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.theme-card{border:2px solid transparent;background:#f8f9fb;border-radius:17px;min-height:112px;padding:13px 7px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--ink);transition:.2s ease}.theme-card:hover{transform:translateY(-3px);background:#fff3ed}.theme-card.selected{background:#fff3ed;border-color:var(--brand);box-shadow:0 8px 22px #ff5a3620}.theme-card i{font-style:normal;font-size:31px}.theme-card b{font-size:14px}.theme-card small{font-size:10px;color:var(--muted)}.football-styles{margin-top:22px;border-top:1px solid var(--line);padding-top:18px}.football-styles h3{font-size:15px;margin:0 0 10px}.design-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.design-options label{position:relative}.design-options input{position:absolute;opacity:0}.design-options span{display:flex;align-items:center;gap:10px;padding:8px;background:#f7f8fa;border:2px solid transparent;border-radius:14px;font-weight:800}.design-options img{width:48px;height:60px;object-fit:cover;border-radius:8px}.design-options input:checked+span{border-color:var(--brand);background:#fff3ed}.wizard-actions{display:flex;justify-content:space-between;gap:12px;margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}.wizard-actions button{min-width:145px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid label{display:block;position:relative}.form-grid label>span{display:block;font-size:13px;font-weight:800;margin-bottom:6px}.form-grid .wide{grid-column:1/-1}.form-grid input,.form-grid textarea,.form-grid select{width:100%;border:1.5px solid #d9dde6;border-radius:13px;padding:13px 14px;background:#fff;color:var(--ink);outline:none;transition:.2s}.form-grid input:focus,.form-grid textarea:focus,.form-grid select:focus{border-color:var(--brand);box-shadow:0 0 0 4px #ff5a3612}.form-grid textarea{resize:vertical}.form-grid label>small{position:absolute;right:10px;bottom:8px;color:#98a2b3;font-size:11px}.field-error{border-color:#e11d48!important;background:#fff8fa!important}.publish-note{display:flex;align-items:center;gap:13px;background:#f0fdf7;border:1px solid #b7efd3;border-radius:15px;padding:14px;margin-top:18px}.publish-note i{font-style:normal;font-size:24px}.publish-note span,.publish-note small{display:block}.publish-note small{color:#557267;margin-top:2px}.preview-column{position:sticky;top:22px}.preview-label{display:flex;justify-content:space-between;align-items:end;margin:0 8px 10px}.preview-label small{color:var(--muted)}.phone-frame{width:340px;margin:auto;background:#181b22;border:7px solid #181b22;border-radius:45px;padding:10px;box-shadow:0 30px 80px #27150d33;position:relative}.phone-island{position:absolute;width:88px;height:22px;background:#181b22;border-radius:0 0 15px 15px;left:50%;top:6px;transform:translateX(-50%);z-index:4}.invite-art{aspect-ratio:9/16;border-radius:32px;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center;padding:32px 22px;text-align:center;background:#ffe7ef;color:#243049;transition:background .35s ease,color .35s ease}.art-content{position:relative;z-index:2;width:100%}.art-kicker{font-size:10px;letter-spacing:.2em;font-weight:900;margin-bottom:14px}.art-content h2{font-family:'Fraunces',serif;font-size:45px;line-height:.95;margin:0;text-wrap:balance}.art-age{font-size:22px;font-weight:900;margin:9px 0}.art-content p{font-size:14px;margin:18px auto;max-width:240px}.art-details{display:grid;gap:8px;margin-top:28px;padding:15px;background:#ffffffbc;border:1px solid #fff;border-radius:17px;font-size:12px;font-weight:800;backdrop-filter:blur(10px)}.art-decoration span{position:absolute;border-radius:50%;filter:blur(1px);opacity:.6}.art-decoration span:nth-child(1){width:150px;height:150px;background:#fff;top:-55px;right:-45px}.art-decoration span:nth-child(2){width:90px;height:90px;background:#fff;bottom:18%;left:-35px}.art-decoration span:nth-child(3){width:55px;height:55px;background:#fff;top:35%;right:-20px}.preview-help{text-align:center;color:var(--muted);font-size:12px}.theme-arcoiris{background:linear-gradient(145deg,#ffdbe8,#fff3c4 34%,#d8f9e6 66%,#dbeaff)}.theme-futbol{background:radial-gradient(circle at 50% 15%,#59cf7b,#0b5d36 70%);color:white}.theme-dinosaurios{background:linear-gradient(145deg,#dfffbd,#fff0a8);color:#24482c}.theme-princesa{background:linear-gradient(145deg,#ffe2f4,#e9d9ff);color:#6f2c69}.theme-sirena{background:linear-gradient(160deg,#b7f2f2,#9bd5ff 55%,#dcc6ff);color:#15566b}.theme-autos{background:linear-gradient(145deg,#252b39,#545f78);color:white}.theme-argentina{background:linear-gradient(180deg,#aee2ff 0 33%,#fff 33% 66%,#aee2ff 66%);color:#174b72}.theme-selva{background:linear-gradient(145deg,#cfea9c,#65a95c);color:#183f25}.theme-circo{background:repeating-linear-gradient(115deg,#fff0c7 0 35px,#ff7c71 35px 70px);color:#6b1f28}.theme-gatitos{background:linear-gradient(145deg,#ffe7ee,#fff5d8);color:#6d4151}.football-estadio{background:url('/invitaciones/futbol-estadio.webp') center/cover}.football-argentina{background:url('/invitaciones/futbol-argentina.webp') center/cover}.football-neon{background:url('/invitaciones/futbol-neon.webp') center/cover}.football-estadio,.football-argentina,.football-neon{color:white;text-shadow:0 2px 10px #000}.football-estadio .art-details,.football-argentina .art-details,.football-neon .art-details{background:#0009;border-color:#ffffff55}.creation-success{text-align:center;padding:20px}.creation-success .success-icon{width:64px;height:64px;background:#dcfae6;color:#067647;border-radius:50%;display:grid;place-items:center;font-size:30px;margin:auto}.creation-success h2{font-family:'Fraunces',serif;font-size:32px;margin:12px 0 5px}.creation-success p{color:var(--muted)}

/* Invitación pública */
.party-wrap{max-width:760px;margin:auto;padding:24px 16px}.public-hero{background:#fff;border-radius:32px;box-shadow:var(--shadow);padding:14px}.public-art{min-height:650px;aspect-ratio:9/16;max-width:500px;margin:auto;border-radius:24px}.public-art .art-content h1{font-family:'Fraunces',serif;font-size:clamp(52px,13vw,88px);line-height:.9;margin:0}.public-art .art-age{font-size:clamp(25px,6vw,38px)}.public-art .art-content p{font-size:18px}.public-art .art-details{font-size:15px}.countdown{max-width:500px;margin:16px auto;background:#172033;color:#fff;border-radius:20px;padding:15px;text-align:center}.countdown small{display:block;font-weight:800;letter-spacing:.1em;opacity:.68}.countdown strong{font-size:clamp(20px,5vw,28px)}.rsvp-launch{display:flex;max-width:500px;width:100%;margin:0 auto 18px;padding:17px;border:0;border-radius:18px;background:#17a66b;color:#fff;font:800 18px 'DM Sans';justify-content:center;box-shadow:0 12px 28px #17a66b44;animation:pulse 2s infinite}.modal{position:fixed;inset:0;background:#101828aa;z-index:99;display:none;align-items:center;justify-content:center;padding:18px;backdrop-filter:blur(8px)}.modal.open{display:flex}.box{width:min(100%,560px);max-height:92vh;overflow:auto;background:#fff;border-radius:26px;padding:24px;box-shadow:0 30px 90px #0005}.close{float:right;border:0;background:#f1f2f4;border-radius:50%;width:40px;height:40px;font-size:21px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.grid .full{grid-column:1/-1}.grid label{font-size:13px;font-weight:800}.grid input,.grid select{width:100%;border:1px solid #d9dde6;border-radius:12px;padding:12px;margin-top:5px;background:#fff}.confetti{position:fixed;top:-20px;width:10px;height:16px;z-index:98;pointer-events:none;animation:fall var(--dur) linear forwards}.share-card{text-align:center}.viral{text-align:center}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}.statbox{background:#f7f8fa;border-radius:15px;padding:14px;text-align:center}.stat{font-size:30px;font-weight:900}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:10px;border-bottom:1px solid var(--line)}
@keyframes stepIn{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}@keyframes pulse{50%{transform:scale(1.025)}}@keyframes fall{to{transform:translate(var(--drift),110vh) rotate(760deg)}}
@media(max-width:900px){.creator-workspace{grid-template-columns:1fr}.preview-column{position:relative}.phone-frame{width:290px}.creator-intro{margin-bottom:24px}.creator-intro h1{font-size:48px}.theme-grid{grid-template-columns:repeat(5,1fr)}}
@media(max-width:650px){.creator-shell{padding:28px 12px 55px}.creator-intro{text-align:left;padding:0 6px}.creator-intro h1{font-size:40px}.creator-intro>p{font-size:16px}.benefits{justify-content:flex-start}.wizard-card{padding:18px 14px;border-radius:22px;min-height:0}.step-dot{gap:5px;font-size:11px}.step-dot b{width:29px;height:29px}.step-heading h2{font-size:29px}.theme-grid{grid-template-columns:repeat(2,1fr)}.theme-card{min-height:104px}.design-options span{display:block;text-align:center}.design-options img{width:100%;height:100px;margin-bottom:5px}.form-grid,.grid{grid-template-columns:1fr}.form-grid .wide,.grid .full{grid-column:auto}.wizard-actions{position:sticky;bottom:0;background:#fff;padding:14px 0 2px;z-index:5}.wizard-actions button{min-width:0;flex:1}.preview-label{margin-top:5px}.phone-frame{width:260px}.phone-frame .invite-art{border-radius:27px}.art-content h2{font-size:37px}.public-art{min-height:0}.stats{grid-template-columns:repeat(2,1fr)}.sitein{padding:12px 14px}.nav a:first-child{display:none}.wrap{padding:14px}.card{padding:17px}.actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}.confetti{display:none!important}}

@media(max-width:650px){.audience-choice{gap:10px;margin-top:14px}.audience-card{min-height:150px;border-radius:18px;padding:15px}.audience-card span{width:43px;height:43px;border-radius:13px;font-size:23px;margin-bottom:12px}.audience-card b{font-size:22px}.audience-card small{font-size:12px}}

/* Fondos profesionales generados para cada temática */
.theme-card>img{width:52px;height:52px;object-fit:cover;border-radius:13px;box-shadow:0 5px 14px #17203325;margin-bottom:4px}
.theme-arcoiris{background:linear-gradient(#ffffff0d,#fff1),url('/invitaciones/tema-arcoiris.webp') center/cover;color:#27334d}
.theme-dinosaurios{background:linear-gradient(#ffffff08,#fff1),url('/invitaciones/tema-dinosaurios.webp') center/cover;color:#203426}
.theme-princesa{background:linear-gradient(#ffffff05,#fff1),url('/invitaciones/tema-princesa.webp') center/cover;color:#6f2c69}
.theme-sirena{background:linear-gradient(#ffffff08,#001c3814),url('/invitaciones/tema-sirena.webp') center/cover;color:#123e59}
.theme-autos{background:linear-gradient(#0002,#0004),url('/invitaciones/tema-autos.webp') center/cover;color:#fff}
.theme-argentina{background:linear-gradient(#ffffff08,#fff2),url('/invitaciones/tema-argentina.webp') center/cover;color:#174b72}
.theme-selva{background:linear-gradient(#ffffff08,#fff1),url('/invitaciones/tema-selva.webp') center/cover;color:#173b25}
.theme-circo{background:linear-gradient(#0001,#0004),url('/invitaciones/tema-circo.webp') center/cover;color:#fff}
.theme-gatitos{background:linear-gradient(#ffffff08,#fff1),url('/invitaciones/tema-gatitos.webp') center/cover;color:#654050}
.theme-arcoiris .art-content,.theme-dinosaurios .art-content,.theme-princesa .art-content,.theme-sirena .art-content,.theme-argentina .art-content,.theme-selva .art-content,.theme-gatitos .art-content{text-shadow:0 2px 12px #fff,0 1px 2px #fff}
.theme-autos .art-content,.theme-circo .art-content{text-shadow:0 2px 14px #000}
.theme-autos .art-details,.theme-circo .art-details{background:#07111dcc;border-color:#ffffff55}

/* Colección infantil 2026 */
.design-options{grid-template-columns:repeat(4,1fr)}
.theme-arcoiris{background-image:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-arcoiris-infantil.webp')}
.theme-dinosaurios{background-image:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-dinosaurios-infantil.webp')}
.theme-princesa{background-image:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-princesa-infantil.webp')}
.theme-sirena{background-image:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-sirena-infantil.webp')}
.theme-autos{background-image:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-autos-infantil.webp');color:#17365d}
.theme-argentina{background-image:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-argentina-infantil.webp')}
.theme-selva{background-image:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-selva-infantil.webp')}
.theme-circo{background-image:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-circo-infantil.webp');color:#6b1f28}
.theme-gatitos{background-image:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-gatitos-infantil.webp')}
.football-infantil{background:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-futbol-infantil.webp') center/cover;color:#17365d}
.theme-espacio{background:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-espacio-infantil.webp') center/cover;color:#2d2766}
.theme-piratas{background:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-piratas-infantil.webp') center/cover;color:#5c3018}
.theme-granja{background:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-granja-infantil.webp') center/cover;color:#4c3a18}
.theme-hadas{background:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-hadas-infantil.webp') center/cover;color:#643568}
.theme-robots{background:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-robots-infantil.webp') center/cover;color:#244c75}
.theme-monstruos{background:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-monstruos-infantil.webp') center/cover;color:#543070}
.football-infantil .art-content,.theme-espacio .art-content,.theme-piratas .art-content,.theme-granja .art-content,.theme-hadas .art-content,.theme-robots .art-content,.theme-monstruos .art-content,.theme-autos .art-content,.theme-circo .art-content{text-shadow:0 2px 12px #fff,0 1px 2px #fff}
.football-infantil .art-details,.theme-espacio .art-details,.theme-piratas .art-details,.theme-granja .art-details,.theme-hadas .art-details,.theme-robots .art-details,.theme-monstruos .art-details,.theme-autos .art-details,.theme-circo .art-details{background:#ffffffc9;border-color:#fff;color:#243049;text-shadow:none}
@media(max-width:650px){.design-options{grid-template-columns:repeat(2,1fr)}}

/* Nuevas aventuras infantiles */
.theme-superheroes{background:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-superheroes-infantil.webp') center/cover;color:#163b78}
.theme-construccion{background:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-construccion-infantil.webp') center/cover;color:#673c12}
.theme-bailarina{background:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-bailarina-infantil.webp') center/cover;color:#7f306d}
.theme-dulces{background:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-dulces-infantil.webp') center/cover;color:#8e3269}
.theme-perritos{background:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-perritos-infantil.webp') center/cover;color:#684021}
.theme-dragones{background:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-dragones-infantil.webp') center/cover;color:#315c48}
.theme-videojuegos{background:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-videojuegos-infantil.webp') center/cover;color:#303383}
.theme-bosque{background:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-bosque-infantil.webp') center/cover;color:#31573d}
.theme-superheroes .art-content,.theme-construccion .art-content,.theme-bailarina .art-content,.theme-dulces .art-content,.theme-perritos .art-content,.theme-dragones .art-content,.theme-videojuegos .art-content,.theme-bosque .art-content{text-shadow:0 2px 12px #fff,0 1px 2px #fff}
.theme-superheroes .art-details,.theme-construccion .art-details,.theme-bailarina .art-details,.theme-dulces .art-details,.theme-perritos .art-details,.theme-dragones .art-details,.theme-videojuegos .art-details,.theme-bosque .art-details{background:#ffffffd6;border-color:#fff;color:#243049;text-shadow:none}

/* Selección más viva y vista pública con entrada cinematográfica */
.theme-card{position:relative;overflow:hidden;transform:translateZ(0)}
.theme-card>img{transition:transform .38s cubic-bezier(.2,.8,.2,1),filter .38s ease}
.theme-card:hover>img,.theme-card.selected>img{transform:scale(1.09) rotate(-2deg);filter:saturate(1.16) contrast(1.03)}
.theme-card.selected{box-shadow:0 12px 28px #ff634733,0 0 0 3px #fff inset}
.public-hero{padding:10px;background:linear-gradient(145deg,#fff,#fff4ee);box-shadow:0 28px 80px #17203320;perspective:1200px}
.public-art{position:relative;isolation:isolate;overflow:hidden;animation:inviteReveal .95s cubic-bezier(.2,.85,.2,1) both}
.public-art::after{content:"";position:absolute;inset:-45%;z-index:4;background:linear-gradient(115deg,transparent 42%,#ffffffb8 50%,transparent 58%);transform:translateX(-90%) rotate(8deg);animation:inviteShine 1.45s .42s ease-out both;pointer-events:none}
.public-art .art-kicker{animation:dropIn .65s .2s both}
.public-art h1{animation:namePop .82s .34s cubic-bezier(.2,1.45,.35,1) both}
.public-art .art-age{animation:dropIn .62s .5s both}
.public-art .art-content>p{animation:dropIn .62s .62s both}
.public-art .art-details{animation:detailsUp .72s .75s both;box-shadow:0 14px 34px #17203320}
.countdown{animation:detailsUp .65s .88s both}
.rsvp-launch{background:linear-gradient(135deg,#16ad70,#0d8e61);animation:detailsUp .65s 1s both,pulse 2s 1.75s infinite;position:relative;overflow:hidden}
.rsvp-launch::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 35%,#fff6 50%,transparent 65%);transform:translateX(-120%);animation:ctaShine 3.2s 2.4s infinite}
.public-art .art-decoration span{animation:floatBubble 3.6s ease-in-out infinite alternate}
.public-art .art-decoration span:nth-child(2){animation-delay:.4s;animation-duration:4.2s}.public-art .art-decoration span:nth-child(3){animation-delay:.8s;animation-duration:3.2s}.public-art .art-decoration span:nth-child(4){animation-delay:1.1s;animation-duration:4.6s}
@keyframes inviteReveal{0%{opacity:0;transform:translateY(38px) rotateX(8deg) scale(.94);filter:blur(8px)}100%{opacity:1;transform:none;filter:none}}
@keyframes inviteShine{0%{transform:translateX(-90%) rotate(8deg)}100%{transform:translateX(90%) rotate(8deg)}}
@keyframes dropIn{0%{opacity:0;transform:translateY(-18px) scale(.94)}100%{opacity:1;transform:none}}
@keyframes namePop{0%{opacity:0;transform:scale(.62) rotate(-3deg)}75%{transform:scale(1.06) rotate(1deg)}100%{opacity:1;transform:none}}
@keyframes detailsUp{0%{opacity:0;transform:translateY(24px)}100%{opacity:1;transform:none}}
@keyframes floatBubble{0%{transform:translate3d(0,0,0) rotate(-4deg)}100%{transform:translate3d(6px,-14px,0) rotate(7deg)}}
@keyframes ctaShine{0%,72%{transform:translateX(-120%)}100%{transform:translateX(120%)}}
@media(max-width:650px){.public-hero{border-radius:24px;padding:7px}.public-art{border-radius:19px;min-height:610px}.rsvp-launch{width:calc(100% - 8px)}}

/* Categorías y colecciones de diseños */
.category-picker{display:flex;gap:9px;overflow-x:auto;padding:4px 2px 13px;margin-bottom:4px;scrollbar-width:thin;scroll-snap-type:x proximity}
.category-chip{flex:0 0 auto;scroll-snap-align:start;border:1px solid #e2e4eb;background:#fff;color:#4b5368;border-radius:999px;padding:10px 15px;font:800 13px 'DM Sans';cursor:pointer;transition:.22s ease}
.category-chip:hover{border-color:#ff8068;transform:translateY(-2px)}
.category-chip.active{background:linear-gradient(135deg,#ff5a36,#ff7d55);border-color:transparent;color:#fff;box-shadow:0 8px 20px #ff5a3633}
.theme-card[hidden],#themeGrid[hidden],#categoryPicker[hidden],#audienceChoice[hidden],.wizard-step[data-step="1"] .wizard-actions[hidden]{display:none!important}
.audience-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}.audience-card{min-height:190px;border:1px solid #e8e2df;border-radius:22px;background:linear-gradient(145deg,#fff,#fff7f2);padding:22px;text-align:left;color:var(--ink);box-shadow:0 10px 28px rgba(44,28,20,.07);transition:.2s ease}.audience-card:hover{transform:translateY(-3px);border-color:#ff9a82;box-shadow:0 16px 34px rgba(255,90,54,.17)}.audience-card span{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:#fff0e9;font-size:28px;margin-bottom:18px}.audience-card:nth-child(2) span{background:#fff6d8}.audience-card b{display:block;font-family:'DM Sans',system-ui,sans-serif;font-size:26px;font-weight:800;letter-spacing:-.035em;margin-bottom:5px}.audience-card small{display:block;color:var(--muted);font-size:13px;line-height:1.35}.creator-intro h1,.step-heading h2{font-family:'DM Sans',system-ui,sans-serif;font-weight:800;letter-spacing:-.045em}.creator-intro h1{line-height:.97}.step-heading h2{line-height:1.08}.wizard-step[data-step="1"] .step-heading:after{content:'Elegí una opción para continuar';font-family:'DM Sans',system-ui,sans-serif;letter-spacing:0}
.football-styles{margin-top:17px;padding:18px;border:1px solid #e8e9ee;border-radius:22px;background:linear-gradient(145deg,#fff,#fff9f6);animation:detailsUp .35s ease both}
.football-styles h3{margin:0 0 13px;font-size:17px}
.design-options{grid-template-columns:repeat(3,1fr);gap:10px}
.design-options label span{height:88px;justify-content:flex-start;padding:8px;font-size:13px}
.design-options label span img{width:58px;height:70px;object-fit:cover;border-radius:11px}
.football-atardecer{background:linear-gradient(#fff0,#fff1),url('/invitaciones/futbol-atardecer.webp') center/cover;color:#284778}
.football-urbano{background:linear-gradient(#0001,#0003),url('/invitaciones/futbol-urbano.webp') center/cover;color:#fff}
.vehicles-carrera{background:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-autos-infantil.webp') center/cover;color:#17365d}
.vehicles-monster{background:linear-gradient(#fff0,#fff1),url('/invitaciones/vehiculos-monster.webp') center/cover;color:#174a84}
.vehicles-ciudad{background:linear-gradient(#fff0,#fff1),url('/invitaciones/vehiculos-ciudad.webp') center/cover;color:#214b70}
.vehicles-aventura{background:linear-gradient(#fff0,#fff1),url('/invitaciones/vehiculos-aventura.webp') center/cover;color:#31573d}
.football-atardecer .art-content,.vehicles-carrera .art-content,.vehicles-monster .art-content,.vehicles-ciudad .art-content,.vehicles-aventura .art-content{text-shadow:0 2px 12px #fff,0 1px 2px #fff}
.football-urbano .art-content{text-shadow:0 2px 14px #000}
.football-atardecer .art-details,.vehicles-carrera .art-details,.vehicles-monster .art-details,.vehicles-ciudad .art-details,.vehicles-aventura .art-details{background:#ffffffd6;border-color:#fff;color:#243049;text-shadow:none}
.football-urbano .art-details{background:#17152dcc;border-color:#ffffff55;color:#fff;text-shadow:none}
@media(max-width:650px){.category-picker{margin-inline:-4px;padding-inline:4px}.category-chip{padding:10px 13px}.design-options{grid-template-columns:repeat(2,1fr)}.design-options label span{height:82px}.design-options label span img{width:52px;height:64px}}

/* Variantes de Animales, Fantasía, Aventuras y Fiesta */
.selva-infantil{background:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-selva-infantil.webp') center/cover;color:#173b25}
.selva-safari{background:linear-gradient(#fff0,#fff1),url('/invitaciones/selva-safari.webp') center/cover;color:#4a3b18}
.selva-encantada{background:linear-gradient(#fff0,#fff1),url('/invitaciones/selva-encantada.webp') center/cover;color:#245446}
.princesa-infantil{background:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-princesa-infantil.webp') center/cover;color:#7b315f}
.princesa-hielo{background:linear-gradient(#fff0,#fff1),url('/invitaciones/princesa-hielo.webp') center/cover;color:#554991}
.princesa-jardin{background:linear-gradient(#fff0,#fff1),url('/invitaciones/princesa-jardin.webp') center/cover;color:#8a3d63}
.dinosaurios-infantil{background:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-dinosaurios-infantil.webp') center/cover;color:#325b3c}
.dinosaurios-bebes{background:linear-gradient(#fff0,#fff1),url('/invitaciones/dinosaurios-bebes.webp') center/cover;color:#2f5b4d}
.dinosaurios-volcan{background:linear-gradient(#0000,#3b1d0d22),url('/invitaciones/dinosaurios-volcan.webp') center/cover;color:#663411}
.circo-infantil{background:linear-gradient(#fff0,#fff1),url('/invitaciones/tema-circo-infantil.webp') center/cover;color:#6b1f28}
.circo-dulce{background:linear-gradient(#fff0,#fff1),url('/invitaciones/circo-dulce.webp') center/cover;color:#8b3c62}
.circo-noche{background:linear-gradient(#0001,#0003),url('/invitaciones/circo-noche.webp') center/cover;color:#fff}
.selva-infantil .art-content,.selva-safari .art-content,.selva-encantada .art-content,.princesa-infantil .art-content,.princesa-hielo .art-content,.princesa-jardin .art-content,.dinosaurios-infantil .art-content,.dinosaurios-bebes .art-content,.dinosaurios-volcan .art-content,.circo-infantil .art-content,.circo-dulce .art-content{text-shadow:0 2px 12px #fff,0 1px 2px #fff}
.selva-infantil .art-details,.selva-safari .art-details,.selva-encantada .art-details,.princesa-infantil .art-details,.princesa-hielo .art-details,.princesa-jardin .art-details,.dinosaurios-infantil .art-details,.dinosaurios-bebes .art-details,.dinosaurios-volcan .art-details,.circo-infantil .art-details,.circo-dulce .art-details{background:#ffffffd6;border-color:#fff;color:#243049;text-shadow:none}
.circo-noche .art-content{text-shadow:0 2px 14px #000}.circo-noche .art-details{background:#17152dcc;border-color:#ffffff55;color:#fff;text-shadow:none}

/* Selector visual de temáticas: tarjetas editoriales y selección más clara */
.wizard-card{border-color:#e7e1dc;box-shadow:0 24px 70px rgba(32,20,12,.10)}
.step-heading{display:grid;grid-template-columns:1fr auto;align-items:end;column-gap:16px;margin-bottom:20px}
.step-heading>span,.step-heading>h2{grid-column:1}.step-heading>p{grid-column:1;margin-bottom:0}.wizard-step[data-step="1"] .step-heading:after{content:'Elegí un diseño para continuar';grid-column:2;grid-row:1/4;align-self:center;padding:9px 13px;border:1px solid #f0ded6;border-radius:999px;background:#fff8f4;color:#9a442e;font-size:11px;font-weight:850;white-space:nowrap}
.category-picker{position:relative;margin:0 -6px 18px;padding:8px 8px 13px;border:1px solid #ece7e3;border-radius:18px;background:linear-gradient(180deg,#fff,#faf8f6);scrollbar-color:#ff7657 #eee8e4}
.category-chip{min-height:42px;padding:10px 17px;background:#fff;border-color:#dedfe5;box-shadow:0 2px 8px rgba(25,30,45,.04)}
.category-chip.active{transform:translateY(-1px);box-shadow:0 10px 24px rgba(255,90,54,.28)}
.theme-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.theme-card{min-height:178px;padding:9px 9px 12px;justify-content:flex-start;gap:4px;border:1px solid #e7e8ed;border-radius:20px;background:#fff;box-shadow:0 7px 22px rgba(34,40,60,.07);text-align:left;align-items:stretch;cursor:pointer}
.theme-card>img{width:100%;height:108px;border-radius:14px;object-fit:cover;margin:0 0 7px;box-shadow:none}
.theme-card b{font-size:15px;line-height:1.15;padding:0 5px}.theme-card small{font-size:11px;line-height:1.25;padding:0 5px;color:#697386}
.theme-card:hover{transform:translateY(-5px);background:#fff;border-color:#ffc3b5;box-shadow:0 16px 32px rgba(38,31,27,.13)}
.theme-card.selected{transform:translateY(-3px);border:2px solid #ff5a36;background:#fff;box-shadow:0 15px 34px rgba(255,90,54,.22),0 0 0 4px rgba(255,90,54,.09)}
.theme-card.selected:after{content:'✓ Elegida';position:absolute;top:16px;right:16px;padding:6px 9px;border-radius:999px;background:#ff5a36;color:#fff;font-size:10px;font-weight:900;letter-spacing:.02em;box-shadow:0 6px 15px rgba(121,35,16,.25)}
.preview-column{top:20px;padding:16px 10px 22px;border:1px solid #efe4dc;border-radius:28px;background:linear-gradient(155deg,#fff 0%,#fff8f1 55%,#fffdf7 100%);box-shadow:0 22px 60px rgba(66,38,21,.09)}
.preview-label{padding:0 6px 5px}.phone-frame{box-shadow:0 34px 85px rgba(39,21,13,.27),0 0 0 1px rgba(255,255,255,.85)}
@media(max-width:1050px) and (min-width:901px){.theme-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.step-heading{display:block}.wizard-step[data-step="1"] .step-heading:after{display:inline-flex;margin-top:12px}.category-picker{position:sticky;top:0;z-index:6;margin-inline:-8px;border-radius:14px}.theme-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.theme-card{min-height:158px;border-radius:17px;padding:7px 7px 11px}.theme-card>img{height:92px;border-radius:12px}.theme-card.selected:after{top:11px;right:11px;padding:5px 7px}.preview-column{padding:14px 4px 18px;border-radius:22px}}

/* Creador móvil: el primer paso es más directo, sin elementos superpuestos. */
@media(max-width:650px){
  .creator-shell{padding:24px 12px 42px}
  .creator-intro{margin-bottom:18px}
  .creator-intro h1{font-size:36px;line-height:1.02;margin:10px 0}
  .creator-intro>p{margin:12px 0 16px}
  .benefits span{padding:8px 11px;font-size:12px}
  .creator-workspace{gap:18px}
  .wizard-card{padding:16px 12px;border-radius:20px}
  .wizard-progress{margin-bottom:22px}
  .step-heading h2{font-size:27px;line-height:1.05}
  .step-heading p{font-size:14px;margin-bottom:16px}
  .category-picker{top:6px;margin-bottom:12px}
  .theme-grid{gap:10px}
  .theme-card{min-height:145px}
  .theme-card>img{height:82px}
  .wizard-actions{position:static;margin-top:18px;padding:16px 0 0;background:transparent;box-shadow:none}
  .wizard-actions button{min-height:50px}
  .preview-column[hidden]{display:none!important}
  .preview-column{margin-top:0;padding:12px 4px 16px}
  .preview-label{padding:0 8px 4px}
  .phone-frame{width:min(260px,82vw)}
}
.theme-more-toggle,.design-more-toggle{width:100%;margin-top:14px;border:1px solid #ffc3b5;border-radius:14px;padding:12px 16px;background:#fff8f4;color:#a43f27;font-weight:900;cursor:pointer;transition:.2s ease}.theme-more-toggle:hover,.design-more-toggle:hover{background:#ffede7;transform:translateY(-1px)}.design-more-toggle{grid-column:1/-1;margin-top:2px}.design-more[hidden]{display:none!important}
.adult-card .adult-thumb{width:100%;height:108px;display:grid;place-items:center;border-radius:14px;margin:0 0 7px;font-size:48px;box-shadow:inset 0 1px #ffffff66}.adult-70{background:radial-gradient(circle at 50% 35%,#ffe784 0 9%,#ff9f43 10% 17%,#ef476f 18% 30%,#4d2f8e 31% 45%,#17112d 46%)}.adult-80{background:linear-gradient(135deg,#10052b,#28118a 42%,#f517a4 43% 53%,#35d5f5 54%);text-shadow:0 0 16px #fff}.adult-90{background:linear-gradient(145deg,#15c9d6,#8235d5 48%,#ffca36 49% 57%,#ff5f7e 58%);filter:saturate(1.08)}.adult-bizarro{background:conic-gradient(from 60deg,#e7ff4e,#ff5ccf,#49d7ff,#ff914d,#e7ff4e)}.adult-brindis{background:radial-gradient(circle at 65% 25%,#fff4bb,#bf7a1a 20%,#372009 60%,#0d0c16)}.adult-casino{background:linear-gradient(135deg,#0c4b2f,#128344 50%,#101b28 51%);text-shadow:0 2px 10px #000}.theme-retro70{background:radial-gradient(circle at 50% 25%,#ffe784 0 9%,#ff9f43 10% 17%,#ef476f 18% 30%,#4d2f8e 31% 45%,#17112d 46%);color:#fff;text-shadow:0 2px 12px #000}.theme-retro80{background:linear-gradient(135deg,#10052b,#28118a 42%,#f517a4 43% 53%,#35d5f5 54%);color:#fff;text-shadow:0 2px 12px #000}.theme-retro90{background:linear-gradient(145deg,#15c9d6,#8235d5 48%,#ffca36 49% 57%,#ff5f7e 58%);color:#fff;text-shadow:0 2px 12px #000}.theme-bizarro{background:conic-gradient(from 60deg,#e7ff4e,#ff5ccf,#49d7ff,#ff914d,#e7ff4e);color:#172033}.theme-brindis{background:radial-gradient(circle at 65% 25%,#fff4bb,#bf7a1a 20%,#372009 60%,#0d0c16);color:#fff;text-shadow:0 2px 12px #000}.theme-casino{background:linear-gradient(135deg,#0c4b2f,#128344 50%,#101b28 51%);color:#fff;text-shadow:0 2px 12px #000}.theme-retro70 .art-details,.theme-retro80 .art-details,.theme-retro90 .art-details,.theme-brindis .art-details,.theme-casino .art-details{background:#101326bd;border-color:#ffffff55;color:#fff;text-shadow:none}.theme-bizarro .art-details{background:#ffffffd9;color:#172033;text-shadow:none}
.theme-retro70{background:linear-gradient(#14082a25,#14082aa4),url('/invitaciones/adultos-70.webp') center/cover}.theme-retro80{background:linear-gradient(#0e0a4530,#0e0a45a8),url('/invitaciones/adultos-80.webp') center/cover}.theme-retro2000{background:linear-gradient(#1c124326,#1c12439d),url('/invitaciones/adultos-2000.webp') center/cover}.theme-tropical{background:linear-gradient(#05374b22,#05374ba3),url('/invitaciones/adultos-tropical.webp') center/cover}.theme-brindis{background:linear-gradient(#0d0c1640,#0d0c16a8),url('/invitaciones/adultos-brindis.webp') center/cover}.theme-asado{background:linear-gradient(#32170d22,#32170da5),url('/invitaciones/adultos-asado.webp') center/cover}.theme-retro2000 .art-details,.theme-tropical .art-details,.theme-asado .art-details{background:#101326c7;border-color:#ffffff55;color:#fff;text-shadow:none}
.theme-juntaron{background:linear-gradient(#10213d26,#10213da8),url('/invitaciones/adultos-juntaron-anos.webp') center/cover;color:#fff;text-shadow:0 2px 12px #101326}.theme-nivel40{background:linear-gradient(#17155d26,#17155dae),url('/invitaciones/adultos-nivel-40.webp') center/cover;color:#fff;text-shadow:0 2px 12px #110c39}.theme-edicion1986{background:linear-gradient(#1e566826,#173845a3),url('/invitaciones/adultos-edicion-1986.webp') center/cover;color:#fff;text-shadow:0 2px 12px #243039}.theme-experiencia{background:linear-gradient(#23477220,#17385ba5),url('/invitaciones/adultos-experiencia.webp') center/cover;color:#fff;text-shadow:0 2px 12px #173152}.theme-juntada{background:linear-gradient(#51254c22,#482253a8),url('/invitaciones/adultos-juntada.webp') center/cover;color:#fff;text-shadow:0 2px 12px #411d48}.theme-ultimajuventud{background:linear-gradient(#160f2724,#160f27ad),url('/invitaciones/adultos-ultima-juventud.webp') center/cover;color:#fff;text-shadow:0 2px 12px #160f27}.theme-retro8090{background:linear-gradient(#12145e22,#12145ea9),url('/invitaciones/adultos-retro-8090.webp') center/cover;color:#fff;text-shadow:0 2px 12px #111253}.theme-revista{background:linear-gradient(#14213d16,#14213d92),url('/invitaciones/adultos-revista.webp') center/cover;color:#172033;text-shadow:0 1px 10px #fff}.theme-vip{background:linear-gradient(#110d1d16,#110d1dab),url('/invitaciones/adultos-vip.webp') center/cover;color:#fff;text-shadow:0 2px 12px #000}.theme-buscado{background:linear-gradient(#5b261b18,#51302190),url('/invitaciones/adultos-buscado.webp') center/cover;color:#172033;text-shadow:0 1px 10px #fff}.theme-juntaron .art-details,.theme-nivel40 .art-details,.theme-edicion1986 .art-details,.theme-experiencia .art-details,.theme-juntada .art-details,.theme-ultimajuventud .art-details,.theme-retro8090 .art-details,.theme-vip .art-details{background:#101326c7;border-color:#ffffff55;color:#fff;text-shadow:none}.theme-revista .art-details,.theme-buscado .art-details{background:#fffffff0;border-color:#fff;color:#172033;text-shadow:none}
.theme-decada30{background:linear-gradient(#7f32511c,#6b234799),url('/invitaciones/decada-30.webp') center/cover;color:#fff;text-shadow:0 2px 12px #512039}.theme-decada40{background:linear-gradient(#06174b1c,#071845a8),url('/invitaciones/decada-40.webp') center/cover;color:#fff;text-shadow:0 2px 12px #06143b}.theme-decada50{background:linear-gradient(#71351c16,#562a1fa0),url('/invitaciones/decada-50.webp') center/cover;color:#fff;text-shadow:0 2px 12px #4b231b}.theme-decada60{background:linear-gradient(#12394f12,#173a5598),url('/invitaciones/decada-60.webp') center/cover;color:#172033;text-shadow:0 1px 9px #fff}.theme-decada70{background:linear-gradient(#4d342010,#5b3b2690),url('/invitaciones/decada-70.webp') center/cover;color:#172033;text-shadow:0 1px 9px #fff}.theme-decada80{background:linear-gradient(#143c5110,#173f5590),url('/invitaciones/decada-80.webp') center/cover;color:#172033;text-shadow:0 1px 9px #fff}.theme-decada30 .art-details,.theme-decada40 .art-details,.theme-decada50 .art-details{background:#101326c7;border-color:#ffffff55;color:#fff;text-shadow:none}.theme-decada60 .art-details,.theme-decada70 .art-details,.theme-decada80 .art-details{background:#fffffff0;border-color:#fff;color:#172033;text-shadow:none}.theme-decada30:before,.theme-decada40:before,.theme-decada50:before,.theme-decada60:before,.theme-decada70:before,.theme-decada80:before{position:absolute;z-index:3;top:17px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 36px);padding:7px 12px;border-radius:999px;background:#fffffff0;color:#172033;box-shadow:0 6px 18px #17203324;font-size:10px;font-weight:950;letter-spacing:.045em;text-align:center;text-shadow:none}.theme-decada30:before{content:'30: RECIÉN EMPEZAMOS'}.theme-decada40:before{content:'40: NIVEL LEYENDA'}.theme-decada50:before{content:'50: CERO DRAMA, TODA LA FIESTA'}.theme-decada60:before{content:'60: EDICIÓN DE COLECCIÓN'}.theme-decada70:before{content:'70: HISTORIA, ESTILO Y FIESTA'}.theme-decada80:before{content:'80: MIL HISTORIAS POR BRINDAR'}
.football-argentina-noche{background:linear-gradient(#06152a26,#06152a40),url('/invitaciones/futbol-argentina-noche.webp') center/cover;color:#fff;text-shadow:0 2px 12px #000}.football-argentina-retro{background:linear-gradient(#fff0,#fff0),url('/invitaciones/futbol-argentina-urbano.webp') center/cover;color:#172033}.football-argentina-gamer{background:linear-gradient(#02091610,#0209162e),url('/invitaciones/futbol-argentina-campeones.webp') center/cover;color:#fff;text-shadow:0 2px 14px #000}.football-argentina-noche .art-details,.football-argentina-gamer .art-details{background:#071426c9;border-color:#ffffff55;color:#fff;text-shadow:none}.football-argentina-retro .art-details{background:#fff8e7de;border-color:#fff;color:#172033;text-shadow:none}
.football-estadio{background:linear-gradient(180deg,#06152a12 0%,#06152a42 64%,#06152aaa 100%),url('/invitaciones/futbol-estadio-v2.webp') center/cover;color:#fff;text-shadow:0 2px 12px #000}.football-estadio .art-details{background:#071426cf;border-color:#ffffff55;color:#fff;text-shadow:none}
/* Contraste garantizado en las piezas fotográficas de adultos.
   Estos fondos usan degradado oscuro en la zona del texto: el contenido debe
   conservar blanco puro y una sombra definida, incluso sobre fotos con luces. */
.theme-retro2000,.theme-tropical,.theme-asado{color:#fff;text-shadow:0 2px 13px #080b18,0 0 3px #080b18}
.theme-retro2000 .art-details,.theme-tropical .art-details,.theme-asado .art-details{background:#101326dc;border-color:#ffffff70;color:#fff}
/* Los diseños claros mantienen tipografía oscura, pero con una base suave que
   evita que la foto se "coma" el título cuando cambia la zona visible. */
.theme-revista .art-content,.theme-buscado .art-content,.theme-decada60 .art-content,.theme-decada70 .art-content,.theme-decada80 .art-content{padding:10px 12px;border-radius:18px;background:linear-gradient(180deg,#fffffff2 0%,#ffffffa8 74%,#ffffff00 100%);box-shadow:0 7px 22px #17203314;text-shadow:none}
.theme-revista .art-kicker,.theme-buscado .art-kicker,.theme-decada60 .art-kicker,.theme-decada70 .art-kicker,.theme-decada80 .art-kicker{color:#4a5366}
.theme-revista .art-details,.theme-buscado .art-details,.theme-decada60 .art-details,.theme-decada70 .art-details,.theme-decada80 .art-details{background:#fffffff2;border-color:#fff;color:#172033;text-shadow:none}
/* Nuevas colecciones: el degradado reserva contraste constante para el texto dinámico. */
.theme-ciencia{background:linear-gradient(180deg,#12274910 0%,#102446b5 100%),url('/invitaciones/infantil-ciencia.webp') center/cover;color:#fff;text-shadow:0 2px 13px #071427}.theme-bailepop{background:linear-gradient(180deg,#25104b12 0%,#1d0b3fac 100%),url('/invitaciones/infantil-baile-pop.webp') center/cover;color:#fff;text-shadow:0 2px 13px #160728}.theme-rescate{background:linear-gradient(180deg,#12365a12 0%,#102c4eab 100%),url('/invitaciones/infantil-rescate.webp') center/cover;color:#fff;text-shadow:0 2px 13px #07192d}.theme-basquet{background:linear-gradient(180deg,#55220d14 0%,#3d180aa8 100%),url('/invitaciones/infantil-basquet.webp') center/cover;color:#fff;text-shadow:0 2px 13px #211006}.theme-karaoke{background:linear-gradient(180deg,#26063816 0%,#160321b6 100%),url('/invitaciones/adulto-karaoke.webp') center/cover;color:#fff;text-shadow:0 2px 13px #09000e}.theme-casino{background:linear-gradient(180deg,#07321b18 0%,#061d11b8 100%),url('/invitaciones/adulto-casino.webp') center/cover;color:#fff;text-shadow:0 2px 13px #020c06}.theme-viaje{background:linear-gradient(180deg,#07395a15 0%,#06213cac 100%),url('/invitaciones/adulto-viaje.webp') center/cover;color:#fff;text-shadow:0 2px 13px #031222}.theme-sorpresa{background:linear-gradient(180deg,#63201612 0%,#431309ad 100%),url('/invitaciones/adulto-sorpresa.webp') center/cover;color:#fff;text-shadow:0 2px 13px #280901}
.theme-ciencia .art-details,.theme-bailepop .art-details,.theme-rescate .art-details,.theme-basquet .art-details,.theme-karaoke .art-details,.theme-casino .art-details,.theme-viaje .art-details,.theme-sorpresa .art-details{background:#0b1421c9;border-color:#ffffff62;color:#fff;text-shadow:none}
.dinosaurios-bebes{background:linear-gradient(#fff0,#143011a8),url('/invitaciones/dinosaurios-bebes-v2.webp') center/cover;color:#fff;text-shadow:0 2px 13px #11250b}.dinosaurios-volcan{background:linear-gradient(#35130708,#421a0cb3),url('/invitaciones/dinosaurios-volcan-v2.webp') center/cover;color:#fff;text-shadow:0 2px 13px #250b03}.dinosaurios-laguna{background:linear-gradient(#0837490a,#062b3dac),url('/invitaciones/dinosaurios-laguna.webp') center/cover;color:#fff;text-shadow:0 2px 13px #041d2b}.dinosaurios-bebes .art-details,.dinosaurios-volcan .art-details,.dinosaurios-laguna .art-details{background:#0b1421c9;border-color:#ffffff62;color:#fff;text-shadow:none}
@media(max-width:650px){.audience-choice{gap:10px;margin-top:14px}.audience-card{min-height:150px;border-radius:18px;padding:15px}.audience-card span{width:43px;height:43px;border-radius:13px;font-size:23px;margin-bottom:12px}.audience-card b{font-size:22px}.audience-card small{font-size:12px}.creator-intro h1{font-size:35px}.step-heading h2{font-size:28px}}
/* Creador en celular: sin desborde horizontal y tarjetas más fáciles de recorrer. */
@media(max-width:650px){body{overflow-x:hidden}.creator-shell{padding:0 0 32px}.creator-workspace{display:block}.wizard-card{margin:0;border-width:0;border-radius:0;padding:20px 16px;box-shadow:none}.wizard-progress{grid-template-columns:auto minmax(18px,1fr) auto minmax(18px,1fr) auto;gap:5px;margin-bottom:25px}.wizard-progress>i{min-width:0}.step-dot{font-size:0;gap:0;justify-content:center}.step-dot b{width:34px;height:34px;font-size:14px}.step-heading{margin-bottom:16px}.step-heading h2{font-size:31px;letter-spacing:-.045em}.step-heading p{font-size:16px;line-height:1.35}.wizard-step[data-step="1"] .step-heading:after{margin-top:14px;padding:8px 12px;font-size:11px}.category-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;overflow:visible;position:static;margin:0 0 16px;padding:8px;border-radius:16px}.category-chip{width:100%;min-width:0;min-height:40px;padding:9px 8px;font-size:12px;white-space:nowrap}.theme-grid{grid-template-columns:1fr;gap:12px}.theme-card{display:grid;grid-template-columns:126px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;align-items:center;min-height:112px;padding:8px;border-radius:18px}.theme-card>img{grid-row:1/3;width:126px;height:96px;margin:0;border-radius:13px}.theme-card b{padding:0;font-size:18px;align-self:end}.theme-card small{padding:0;font-size:13px;align-self:start}.theme-card.selected:after{top:12px;right:12px}.preview-column{display:none}}
.email-field{padding:16px;border:1px solid #e3d7ff;border-radius:18px;background:linear-gradient(135deg,#fbf9ff,#fff)}.email-field>span{font-size:15px!important}.email-field input{font-size:17px!important;border-color:#bfaeff!important;background:#fff!important}.email-field small{position:static!important;display:block;margin-top:8px;color:#5f5b78!important;font-size:12px!important;line-height:1.35}
.share-final-step{margin:13px auto 10px;padding:12px 14px;border:1px solid #c8f0d9;border-radius:16px;background:#f0fdf5;text-align:left;max-width:430px}.share-final-step span,.share-final-step strong{display:block}.share-final-step span{color:#087a47;font-size:10px;font-weight:950;letter-spacing:.12em}.share-final-step strong{margin-top:3px;color:#075f38;font-size:16px}.share-whatsapp{background:linear-gradient(135deg,#17a66b,#28c879)!important;box-shadow:0 11px 25px #17a66b3d!important}
@media(max-width:650px){.creation-success{padding:12px 4px}.creation-success h2{font-size:30px}.creation-success p{font-size:16px;line-height:1.45}.share-final-step{padding:13px 14px;text-align:left}.creation-success .actions{display:grid;grid-template-columns:1fr;gap:10px}.creation-success .actions .btn{width:100%;min-height:58px;font-size:17px}}
/* Sugerencia comercial sutil al final de la invitación pública. */
.store-promo{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:18px 0;padding:20px 22px;border:1px solid #f1dfd6;border-radius:20px;background:linear-gradient(120deg,#fff,#fff5ee);box-shadow:0 10px 25px rgba(60,35,20,.06)}
.store-promo span{display:block;color:#ff5a36;font-size:11px;font-weight:900;letter-spacing:.12em}
.store-promo h2{margin:5px 0;font-size:19px}
.store-promo p{margin:0;color:#667085;font-size:14px;line-height:1.45}
.store-promo-link{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;padding:11px 14px;border-radius:12px;background:#172033;color:#fff;text-decoration:none;font-weight:800;font-size:13px}
.store-promo-link:hover{background:#ff5a36;color:#fff}
@media(max-width:650px){.store-promo{display:block;padding:18px;margin:16px 0}.store-promo h2{font-size:18px}.store-promo-link{margin-top:14px;width:100%;justify-content:center}}
.store-promo-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;min-width:360px}
.store-product-card{display:flex;gap:9px;min-width:0;padding:8px;border:1px solid #f0dcd2;border-radius:13px;background:#fff;color:#172033;text-decoration:none;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.store-product-card:hover{border-color:#ff5a36;transform:translateY(-1px);box-shadow:0 8px 18px rgba(84,43,25,.08)}
.store-product-card img,.store-product-placeholder{width:54px;height:54px;flex:0 0 54px;border-radius:9px;object-fit:contain;background:#fff7f2}
.store-product-placeholder{display:grid;place-items:center;font-size:23px}
.store-product-info{display:block;min-width:0}
.store-product-info b{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:12px;line-height:1.25}
.store-product-info small{display:block;margin-top:6px;color:#087a47;font-weight:900;font-size:13px}
.creation-loading{display:flex;align-items:center;justify-content:center;gap:13px;padding:17px;border-radius:16px;background:linear-gradient(135deg,#fff6ee,#f6f1ff);color:#27324a;font-weight:800}
.creation-loading-card{position:relative;width:38px;height:50px;border:2px solid #7148f4;border-radius:9px;background:#fff;box-shadow:0 7px 16px #7148f433;animation:inviteCardFloat 1.05s ease-in-out infinite}
.creation-loading-card:before,.creation-loading-card:after{content:"";position:absolute;left:8px;right:8px;height:4px;border-radius:8px;background:#e5dcff}.creation-loading-card:before{top:13px}.creation-loading-card:after{top:23px;right:14px}
.creation-loading-dots i{display:inline-block;width:6px;height:6px;margin-left:3px;border-radius:50%;background:#7148f4;animation:inviteDot .9s infinite alternate}.creation-loading-dots i:nth-child(2){animation-delay:.18s}.creation-loading-dots i:nth-child(3){animation-delay:.36s}
@keyframes inviteCardFloat{0%,100%{transform:translateY(2px) rotate(-3deg)}50%{transform:translateY(-5px) rotate(3deg)}}@keyframes inviteDot{to{transform:translateY(-5px);opacity:.38}}
.loading-shell{min-height:calc(100svh - 260px);display:grid;place-items:center;padding:28px 18px}
.public-loading-card{display:flex;align-items:center;justify-content:center;gap:12px;width:min(100%,330px);padding:15px 18px;border:1px solid #eadfff;border-radius:18px;background:rgba(255,255,255,.82);box-shadow:0 12px 30px rgba(82,55,140,.12);color:#27324a;font-size:16px;font-weight:850;backdrop-filter:blur(10px)}
.public-loading-card-icon{position:relative;display:block;width:32px;height:40px;flex:0 0 32px;border:2px solid #7148f4;border-radius:8px;background:linear-gradient(150deg,#fff,#f0eaff);box-shadow:0 6px 12px #7148f42e;animation:inviteCardFloat 1.05s ease-in-out infinite}.public-loading-card-icon i{position:absolute;left:7px;right:7px;height:3px;border-radius:5px;background:#d9ccff}.public-loading-card-icon i:first-child{top:12px}.public-loading-card-icon i:last-child{top:20px;right:12px}
body[data-page="public"]:has(.loading-shell) footer{display:none}
@media(max-width:650px){.loading-shell{min-height:calc(100svh - 185px);padding:18px 16px;align-content:start}.public-loading-card{margin-top:38px;width:100%;max-width:288px;padding:13px 15px;font-size:15px;border-radius:16px}.public-loading-card-icon{width:29px;height:37px;flex-basis:29px}}
.store-products-loading{display:flex;align-items:center;justify-content:center;gap:8px;min-width:260px;color:#667085;font-size:12px}
.store-products-loading i{width:13px;height:13px;border:2px solid #ffd7c8;border-top-color:#ff5a36;border-radius:50%;animation:storeSpin .75s linear infinite}
@keyframes storeSpin{to{transform:rotate(360deg)}}
@media(max-width:760px){.store-promo-products{margin-top:14px;min-width:0}.store-product-card img,.store-product-placeholder{width:48px;height:48px;flex-basis:48px}}
@media(max-width:380px){.store-promo-products{grid-template-columns:1fr}.store-product-card{align-items:center}}
.recent-invites{margin-top:18px;padding:16px;border:1px solid #e5dafa;border-radius:18px;background:linear-gradient(135deg,#fcfaff,#fff7f0);box-shadow:0 10px 24px rgba(67,39,111,.06)}
.recent-invites-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:12px}.recent-invites-head span{display:block;color:#7450e9;font-size:10px;font-weight:900;letter-spacing:.11em}.recent-invites-head h3{margin:4px 0 0;color:#19233b;font-size:16px}.recent-invites-head button{border:0;background:transparent;color:#7354d8;font-weight:800;cursor:pointer;padding:4px 0}
.recent-invites-list{display:grid;gap:8px}.recent-invites-list article{display:grid;grid-template-columns:34px minmax(0,1fr) auto auto;gap:9px;align-items:center;padding:10px;border-radius:13px;background:#fff;border:1px solid #eee8fa}.recent-invite-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:linear-gradient(135deg,#ff7651,#ffbd5a);color:#fff;font-weight:900}.recent-invite-copy{min-width:0}.recent-invite-copy b,.recent-invite-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recent-invite-copy b{font-size:13px;color:#18233d}.recent-invite-copy small{margin-top:2px;font-size:11px;color:#78829a}.recent-invites-list a{padding:7px 9px;border-radius:9px;background:#f3efff;color:#6546e7;font-size:12px;font-weight:850;text-decoration:none}.recent-invites-list .recent-panel-link{background:#18233d;color:#fff}
@media(max-width:650px){.recent-invites{padding:14px;margin-top:14px}.recent-invites-head h3{font-size:15px}.recent-invites-list article{grid-template-columns:31px minmax(0,1fr) auto;gap:7px;padding:9px}.recent-invite-icon{width:31px;height:31px}.recent-invites-list .recent-panel-link{display:none}.recent-invites-list a{padding:7px 10px}}
.share-panel{display:flex;align-items:center;justify-content:space-between;gap:20px}.share-panel h2{margin:5px 0;font-size:21px}.share-panel p{margin:0;max-width:470px}.share-actions{justify-content:flex-end}.whatsapp-share{background:linear-gradient(135deg,#16a34a,#22c55e)!important}.share-feedback{min-height:20px;margin:10px 2px 0;color:#067647;font-size:13px;font-weight:800}@media(max-width:650px){.share-panel{align-items:stretch;flex-direction:column}.share-actions{display:grid;grid-template-columns:1fr 1fr}.share-actions .btn:first-child{grid-column:1/-1}.share-actions .btn{width:100%}}
.admin-loading-state{display:none;min-height:calc(100svh - 240px);align-items:center;justify-content:center;flex-direction:column;gap:8px;text-align:center;color:#19233b}.admin-loading .admin-loading-state{display:flex}.admin-loading .admin-content{display:none}.admin-loading-brand{color:#ff5f3e;font-size:15px;font-weight:950;letter-spacing:.1em}.admin-loading-card{position:relative;display:block;width:56px;height:72px;margin:3px 0 5px;border:3px solid #ff704b;border-radius:16px;background:linear-gradient(145deg,#fff,#fff1e9);box-shadow:0 14px 28px rgba(255,92,55,.18);animation:inviteCardFloat 1.05s ease-in-out infinite}.admin-loading-card:before{content:'✦';position:absolute;top:8px;right:10px;color:#ff704b;font-size:17px}.admin-loading-card i{position:absolute;left:12px;right:12px;height:5px;border-radius:8px;background:#ffd8cd}.admin-loading-card i:first-child{top:30px}.admin-loading-card i:last-child{top:42px;right:21px}.admin-loading-state strong{font-size:20px;line-height:1.1}.admin-loading-copy{color:#738099;font-size:14px;font-weight:700}@media(max-width:650px){.admin-loading-state{min-height:calc(100svh - 190px)}.admin-loading-state strong{font-size:18px}}
.empty-confirmations{display:flex;width:100%;align-items:center;gap:10px;margin-top:16px;padding:13px 15px;border:1px solid #ffd8cc;border-radius:15px;background:linear-gradient(110deg,#fff8f4,#fff);color:#653522;text-align:left;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease}.empty-confirmations:hover{transform:translateY(-1px);box-shadow:0 9px 20px rgba(152,66,34,.1)}.empty-confirmations>span{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:10px;background:#ff6744;color:#fff}.empty-confirmations strong{font-size:14px}.empty-confirmations small{margin-left:auto;color:#e85433;font-size:12px;font-weight:850}.empty-confirmations[hidden]{display:none}@media(max-width:650px){.empty-confirmations{align-items:flex-start}.empty-confirmations small{max-width:120px;text-align:right;line-height:1.25}}
.form-grid label>small.optional-note{position:static!important;right:auto!important;bottom:auto!important;display:block;width:100%;margin:8px 2px 0;padding:0;color:#667085;font-size:12px;line-height:1.35}.form-grid label:has(.optional-note){align-content:start}@media(max-width:650px){.wizard-step[data-step="3"] .step-heading{margin-bottom:16px}.wizard-step[data-step="3"] .form-grid{gap:18px}.wizard-step[data-step="3"] .form-grid input,.wizard-step[data-step="3"] .form-grid textarea{font-size:16px}.wizard-step[data-step="3"] .publish-note{margin-top:4px;padding:14px;align-items:flex-start}.wizard-step[data-step="3"] .publish-note i{font-size:22px}.wizard-step[data-step="3"] .publish-note small{font-size:13px;line-height:1.35}}

/* Carrusel de souvenirs dentro de la invitación pública. */
.share-actions{gap:10px}.share-actions .share-whatsapp{order:-1;background:linear-gradient(135deg,#16a765,#25d366)!important;color:#fff!important;border-color:#16a765!important;box-shadow:0 10px 22px rgba(22,167,101,.24)!important}.store-promo{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch}.store-promo-copy{width:100%}.store-promo-copy h2{font-size:25px;line-height:1.08;max-width:none}.store-promo-copy p{max-width:none}.store-carousel{display:flex;align-items:center;gap:8px;min-width:0;width:100%;margin-top:12px}.store-promo-products{display:flex;grid-template-columns:none;min-width:0;flex:1;overflow-x:auto;gap:10px;padding:3px 1px 10px;scroll-snap-type:x mandatory;scrollbar-width:none}.store-promo-products::-webkit-scrollbar{display:none}.store-product-card{flex:0 0 190px;min-height:92px;align-items:center;scroll-snap-align:start}.store-product-card img,.store-product-placeholder{width:66px;height:66px;flex-basis:66px}.store-carousel-arrow{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border:1px solid #f0dcd2;border-radius:50%;background:#fff;color:#ff5a36;font-size:29px;line-height:1;font-weight:400;box-shadow:0 6px 18px rgba(84,43,25,.09);transition:.18s}.store-carousel-arrow:hover{background:#ff5a36;color:#fff;transform:translateY(-1px)}.store-carousel-arrow:disabled{opacity:.34;cursor:default;box-shadow:none;transform:none}@media(max-width:760px){.store-promo-copy h2{font-size:25px;line-height:1.08}.store-promo-copy p{font-size:15px}.store-carousel{margin-top:16px;align-items:stretch}.store-promo-products{display:grid;grid-template-columns:1fr;gap:9px;overflow:visible;padding:0}.store-product-card{flex-basis:auto;min-height:88px;padding:9px 10px;border-radius:15px}.store-product-card img,.store-product-placeholder{width:64px;height:64px;flex-basis:64px}.store-product-info b{font-size:13px;-webkit-line-clamp:2}.store-product-info small{margin-top:4px}.store-carousel-arrow{align-self:center;width:34px;height:34px;flex-basis:34px;font-size:26px}}@media(max-width:650px){.share-actions{display:grid;grid-template-columns:1fr 1fr}.share-actions .btn{width:100%}.share-actions .share-whatsapp{grid-column:1/-1}}@media(max-width:420px){.store-carousel{gap:6px}.store-carousel-arrow{width:31px;height:31px;flex-basis:31px;font-size:24px}.store-product-card{min-width:0}.store-promo-copy h2{font-size:24px}}

/* Firma de ENMANA3D en el pie de todas las tarjetas. */
.store-promo-copy{text-align:center}
.invite-art .art-content{padding-bottom:42px}.art-watermark{position:absolute;z-index:4;left:50%;bottom:14px;transform:translateX(-50%);width:max-content;max-width:calc(100% - 28px);padding:7px 12px;border:1px solid rgba(255,255,255,.68);border-radius:999px;background:rgba(255,255,255,.88);box-shadow:0 8px 22px rgba(23,32,51,.14);color:#172033;font:850 10px/1.1 'DM Sans',system-ui,sans-serif;letter-spacing:.035em;text-align:center;text-shadow:none;backdrop-filter:blur(10px)}.art-watermark i{font-style:normal;color:#ff5a36;margin:0 4px}.public-art .art-watermark{bottom:18px;font-size:11px;padding:8px 14px}@media(max-width:650px){.invite-art .art-content{padding-bottom:37px}.art-watermark{bottom:10px;font-size:8px;padding:6px 8px;max-width:calc(100% - 16px)}.public-art .art-watermark{bottom:12px;font-size:9px}}
