@import"https://fonts.googleapis.com/css2?family=Great+Vibes&family=Playfair+Display:wght@500&family=Roboto:wght@400;500&display=swap";@import"https://fonts.googleapis.com/css2?family=Great+Vibes&display=swap";@import"https://fonts.googleapis.com/css2?family=Dancing+Script&display=swap";@import"https://fonts.googleapis.com/css2?family=Allura&display=swap";@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500&display=swap";body,html{margin:0;padding:0;scroll-behavior:smooth;font-family:Great Vibes,cursive;background:#000}.invitacion-principal{overflow-x:hidden}body,html,.invitacion-principal{touch-action:manipulation}.seccion-video{height:100vh;width:100vw;position:relative;display:flex;align-items:center;justify-content:center}.video-fondo{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;touch-action:manipulation;-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.seccion-video a{display:block;width:100%;height:100%;margin:0;padding:0;border:none;text-decoration:none}.fade-in{animation:fadeIn 2s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.boton-final{position:absolute;bottom:60px;width:100%;display:flex;justify-content:center}.boton-final button{background-color:#2e5339;color:#fff;font-size:18px;padding:14px 28px;border:none;border-radius:30px;font-family:Great Vibes,cursive;cursor:pointer;box-shadow:0 4px 10px #0003}.boton-final button:hover{background-color:#22402e}.contador-boda{position:absolute;bottom:80px;width:100%;text-align:center;color:#8d4f50;font-family:Great Vibes,cursive;text-shadow:1px 1px 4px rgba(0,0,0,0)}.contador-boda h2{font-size:32px;margin-bottom:20px}.contador-numeros{display:flex;justify-content:center;gap:20px}.contador-numeros div{background:#fff0;border-radius:12px;padding:12px 18px;font-size:36px;font-family:Great Vibes}.contador-numeros span{font-size:42px;font-weight:700;display:block}.video-link-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.seccion-contador{height:30vh;width:100vw;background:url(/fondo-papel.png) no-repeat center top;display:flex;align-items:center;justify-content:center;position:relative}.seccion-carrusel{width:100vw;background-color:#f5f5f5;padding:40px 0;overflow:hidden}.carrusel-wrapper{position:relative;display:flex;align-items:center;justify-content:center}.carrusel{display:flex;gap:20px;overflow-x:auto;scroll-behavior:smooth;padding:10px 60px;scroll-snap-type:x mandatory;scrollbar-width:none}.carrusel::-webkit-scrollbar{display:none}.foto{flex:0 0 auto;width:300px;height:400px;border-radius:12px;overflow:hidden;scroll-snap-align:center;box-shadow:0 4px 10px #0003}.foto img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}.flecha{position:absolute;top:50%;transform:translateY(-50%);background:#0006;color:#fff;border:none;font-size:28px;padding:10px 14px;border-radius:50%;cursor:pointer;z-index:10;transition:background .3s}.flecha:hover{background:#0009}.flecha-izquierda{left:0}.flecha-derecha{right:0}.overlay-confirm{position:absolute;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;pointer-events:none}.overlay-confirm .invitado-card{pointer-events:auto}.overlay-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000}.boton-musica{position:fixed;top:20px;right:20px;z-index:999;background:#ffc8dc77;color:#5a2a3a;border:none;border-radius:999px;padding:10px 16px;font-size:14px;font-family:Playfair Display,serif;cursor:pointer;box-shadow:0 4px 12px #00000026;transition:transform .1s ease,background .2s ease,box-shadow .2s ease}.boton-musica:hover{background:#f6adcad2}.boton-musica:active{transform:scale(.98)}@media (max-width: 480px){.boton-musica{font-size:13px;padding:10px 14px}}.invitado-card{background:#fff0;border-radius:16px;border:1px solid #e3d6c300;padding:40px 32px;max-width:520px;width:92vw;text-align:center;box-shadow:0 6px 24px #0000001f;position:relative}.invitado-card:before{content:"";background:url(/flores-arriba.png) no-repeat center top;background-size:contain;position:absolute;top:-40px;left:0;right:0;height:120px;pointer-events:none}.titulo{font-family:Great Vibes,cursive;font-size:32px;color:#8d4f50;margin-top:10px;margin-bottom:0}.lista-personas{list-style:none;padding-left:0;margin-bottom:24px}.lista-personas li{font-family:Cormorant Garamond,serif;font-size:22px;padding:6px 0;color:#444}.boton-confirmar{background-color:#b86262;color:#fff;border:none;padding:12px 28px;border-radius:30px;font-size:15px;font-family:Playfair Display,serif;cursor:pointer;transition:background-color .3s ease;box-shadow:0 3px 8px #0000001a}.boton-confirmar:hover{background-color:#22402e}.boton-volver{margin-top:16px;background-color:transparent;color:#8d4f50;border:2px solid #8d4f50;padding:10px 24px;border-radius:30px;font-size:14px;font-family:Playfair Display,serif;cursor:pointer;transition:all .3s ease}.boton-volver:hover{background-color:#2e5339;color:#fff}.invitado-card--skeleton,.invitado-card--error{background:#fff0;border-radius:16px;border:1px solid #e3d6c300;padding:24px;max-width:520px;width:92vw;text-align:center}.close-x{position:absolute;top:10px;right:12px;border:none;background:transparent;font-size:20px;cursor:pointer;color:#8d4f50;opacity:.9}.resumen-confirmacion{display:flex;align-items:center;justify-content:center;text-align:center;margin:6px 0 12px;font-family:Cormorant Garamond,serif;color:#8d4f50}.resumen-actions{display:flex;gap:10px;align-items:center;justify-content:center}.chip-link{background:transparent;border:1px dashed #8d4f50;color:#8d4f50;padding:4px 10px;border-radius:999px;font-size:12px;cursor:pointer}.chip-link:hover{background:#eaf2eb}.lista-personas--con-botones{display:flex;flex-direction:column;gap:8px}.persona-item{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff0;border:1px solid #e3d6c3;border-radius:12px;padding:8px 12px}.persona-item.activo{border-color:#e4cccc;background:#f7fbf8}.persona-nombre{font-family:Cormorant Garamond,serif;font-size:20px;color:#444;cursor:pointer}.btn-toggle{border:2px solid #8d4f50;background:transparent;color:#8d4f50;padding:6px 10px;border-radius:999px;font-size:12px;font-family:Playfair Display,serif;cursor:pointer;transition:all .2s ease}.btn-toggle:hover{background:#f2eaea}.btn-toggle.on{background:#8d4f50;color:#fff;border-color:#8d4f50}.btn-toggle.on:hover{filter:brightness(.95)}.gracias-box{text-align:center}.gracias-texto{font-family:Cormorant Garamond,serif;font-size:18px;color:#8d4f50;margin:8px 0 6px}.lista-personas-confirmadas{list-style:none;padding-left:0;margin:6px 0 14px}.lista-personas-confirmadas li{font-family:Cormorant Garamond,serif;font-size:20px;color:#444;padding:4px 0}.gracias-sub{font-family:Playfair Display,serif;color:#8d4f50;background:#eaf2eb;border:1px solid #ffcfd0;border-radius:12px;padding:12px 16px;margin:8px 0 16px}body{margin:0;font-family:Roboto,sans-serif;background-image:url(/fondo.png);background-repeat:no-repeat;background-size:cover;background-position:center center;background-attachment:fixed;background-color:#fefdfb;color:#333}.invitado-container{display:flex;min-height:100vh;align-items:center;justify-content:center;padding:40px 20px;background:transparent}.invitado-card{background:#fff0;border-radius:16px;border:1px solid #e3d6c300;padding:50px 40px;max-width:520px;width:90%;text-align:center;box-shadow:0 6px 24px #ad929200;position:relative}.invitado-card:before{content:"";background:url(/flores-arriba.png) no-repeat center top;background-size:contain;position:absolute;top:-20px;left:0;right:0;height:120px;pointer-events:none}.titulo{font-family:Great Vibes,cursive;font-size:28px;color:#8d4f50;margin-top:5px;margin-bottom:0}.subtitulo{font-family:Cormorant Garamond,serif;font-size:18px;color:#444}.lista-personas{list-style:none;padding-left:0;margin-bottom:30px}.lista-personas li{font-family:Cormorant Garamond,serif;font-size:24px;padding:6px 0;color:#444}.boton-confirmar{background-color:#8d4f50;color:#fff;border:none;padding:12px 30px;border-radius:30px;font-size:16px;font-family:Playfair Display,serif;cursor:pointer;transition:background-color .3s ease;box-shadow:0 3px 8px #0000001a}.boton-confirmar:hover{background-color:#8d4f50}.confirmado{color:#8d4f50;font-weight:500;font-family:Cormorant Garamond,serif;background-color:#eaf2eb;padding:14px 20px;border-radius:12px;border:1px solid #c2dbc5;text-align:center}.loading,.error{text-align:center;margin-top:40px;font-size:16px}.boton-volver{margin-top:20px;background-color:transparent;color:#8d4f50;border:2px solid #8d4f50;padding:10px 24px;border-radius:30px;font-size:15px;font-family:Playfair Display,serif;cursor:pointer;transition:all .3s ease}.boton-volver:hover{background-color:#8d4f50;color:#fff}
