:root{--bg-blue: #C4E4F5;--text-blue: #1C5477;--text-teal: #2F917E;--font-script: "Dancing Script", cursive;--font-sans: "Montserrat", sans-serif}body{margin:0;padding:0;font-family:var(--font-sans);color:var(--text-blue);background-color:var(--bg-blue);overflow-x:hidden}.invitation-wrapper{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;padding-top:50px}.frozen-bg{position:fixed;inset:0;background:radial-gradient(ellipse at 50% 100%,rgba(180,220,240,.6) 0%,transparent 60%),radial-gradient(ellipse at 20% 20%,rgba(200,230,255,.4) 0%,transparent 50%),radial-gradient(ellipse at 80% 30%,rgba(180,210,240,.3) 0%,transparent 50%),linear-gradient(180deg,#a8d8ea,#c4e4f5 40%,#d6eef8);z-index:-1}.anim-item{opacity:0;transform:translateY(25px);transition:all 1.2s ease-out;transition-delay:var(--delay)}.animation-container.start-anim .anim-item{opacity:1;transform:translateY(0)}.animation-container{width:100%;max-width:450px;display:flex;flex-direction:column;align-items:center;position:relative;z-index:5;padding:0 20px}.title-group{text-align:center;margin-bottom:30px}.child-name{font-family:var(--font-script);font-size:4rem;color:var(--text-teal);margin:0;text-shadow:2px 2px 8px rgba(255,255,255,.9)}.child-age{font-family:var(--font-script);font-size:3rem;color:var(--text-teal);margin:-5px 0 0;text-shadow:2px 2px 8px rgba(255,255,255,.9)}.message-box{text-align:center;margin-bottom:25px}.invite-text{font-family:var(--font-script);font-size:1.8rem;color:#1a3e5c;line-height:1.5;text-shadow:1px 1px 6px rgba(255,255,255,.95)}.datetime-row{font-family:var(--font-sans);font-size:1.5rem;font-weight:700;color:var(--text-blue);margin-bottom:25px;text-shadow:0 0 10px rgba(255,255,255,1);letter-spacing:2px}.separator{margin:0 12px;color:var(--text-blue);opacity:.5}.venue-box{display:flex;align-items:center;justify-content:center;gap:15px;margin-top:10px;background:#ffffff4d;padding:20px 30px;border-radius:20px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.venue-icon{font-size:2.5rem;color:#1a3e5c}.venue-details{text-align:left}.venue-name{font-family:var(--font-script);font-size:2rem;font-weight:700;color:#1a3e5c;margin:0;line-height:1.2}.venue-city{font-family:var(--font-script);font-size:1.5rem;color:#1a3e5c;margin:5px 0 0;opacity:.8}.snowflakes-container{position:fixed;inset:0;pointer-events:none;z-index:1;overflow:hidden}.snowflake{position:absolute;top:-5%;color:#fff;opacity:.7;text-shadow:0 0 5px rgba(255,255,255,.5);animation:snowfall linear infinite}@keyframes snowfall{0%{transform:translateY(0) translate(0) rotate(0);opacity:0}10%{opacity:.8}90%{opacity:.6}to{transform:translateY(105vh) translate(30px) rotate(360deg);opacity:0}}.audio-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#c4e4f5d9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:opacity .6s ease;cursor:pointer}.audio-overlay.hidden{opacity:0;pointer-events:none}.tap-to-start{padding:18px 35px;background:var(--text-blue);color:#fff;border-radius:50px;font-size:1.1rem;font-weight:600;animation:frozenPulse 2s infinite;box-shadow:0 6px 25px #1c54774d}@keyframes frozenPulse{0%,to{transform:scale(1);box-shadow:0 6px 25px #1c54774d}50%{transform:scale(1.05);box-shadow:0 8px 30px #1c547780}}.form-section{position:relative;z-index:10;padding:0 20px;width:100%;max-width:450px;text-align:center}.form-section .response-section{background:#fff6;padding:25px;border-radius:25px;margin-bottom:30px;box-shadow:0 10px 25px #1c54771a;border:1px solid rgba(255,255,255,.5);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.form-section .btn-response{padding:12px 25px;border-radius:50px;font-weight:700;margin:8px;border:none;transition:all .3s ease;display:inline-block;text-decoration:none}.form-section .btn-accept{background-color:var(--text-blue)!important;color:#fff!important}.form-section .btn-decline{background-color:#f0f0f0!important;color:#888!important}.owner-section{margin-bottom:50px;font-size:1.2rem;color:var(--text-blue)}.owner-name{font-family:var(--font-script);font-size:2.8rem;color:var(--text-teal);display:block;margin-top:5px}.calendar-section{border-top:1px solid rgba(255,255,255,.5)!important;margin-top:20px!important}.calendar-section .btn-outline-gold{border:2px solid var(--text-blue)!important;color:var(--text-blue)!important;background:#fff!important;border-radius:50px!important;font-weight:700!important;transition:all .3s ease!important;padding:8px 18px!important;font-size:.9rem!important}.calendar-section .btn-outline-gold:hover{background:var(--text-blue)!important;color:#fff!important}.audio-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:visibility 1s}.audio-overlay.hidden{visibility:hidden;pointer-events:none}.icy-gate-left,.icy-gate-right{position:absolute;top:0;width:50%;height:100%;background:linear-gradient(135deg,#a8d8ea,#c4e4f5);z-index:1;transition:transform 1.2s cubic-bezier(.7,0,.3,1);display:flex;align-items:center;overflow:hidden}.icy-gate-left{left:0;border-right:2px solid rgba(255,255,255,.5)}.icy-gate-right{right:0;border-left:2px solid rgba(255,255,255,.5)}.icy-gate-left:after,.icy-gate-right:after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 10 L20 20 M80 80 L90 90' stroke='white' stroke-opacity='0.1'/%3E%3C/svg%3E");opacity:.3}.audio-overlay.opening .icy-gate-left{transform:translate(-100%)}.audio-overlay.opening .icy-gate-right{transform:translate(100%)}.intro-content{position:relative;z-index:2;text-align:center;transition:opacity .6s ease}.audio-overlay.opening .intro-content{opacity:0;pointer-events:none}.snowflake-icon{font-size:4rem;margin-bottom:20px;animation:spinSlow 10s linear infinite}.intro-title{font-family:var(--font-script);font-size:3rem;color:var(--text-blue);margin-bottom:30px;text-shadow:0 0 10px white}@keyframes spinSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:480px){.child-name{font-size:3rem}.child-age{font-size:2.2rem}.invite-text{font-size:1.4rem}.venue-name{font-size:1.6rem}.venue-city{font-size:1.2rem}.owner-name{font-size:2.2rem}}
