@import"https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap";:root{--bg: #0a0a0a;--cyan: #00f0ff;--pink: #ff2d95;--lime: #39ff14;--orange: #ff6b00;--yellow: #ffe600;--white: #f0f0f0;font-family:"Press Start 2P",monospace;line-height:1.8;font-weight:400;color:var(--white);background-color:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--bg);overflow-x:hidden}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--cyan);border-radius:4px}.app{display:flex;flex-direction:column;align-items:center;width:100%}.hero{position:relative;width:100%;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;overflow:hidden}.invitation-card{position:relative;max-width:500px;width:100%;padding:2.5rem 1.5rem;background:var(--bg);border:2px solid transparent;border-image:linear-gradient(135deg,var(--cyan),var(--lime)) 1;display:flex;flex-direction:column;align-items:center;gap:1.5rem;z-index:1}.invitation-card:before{content:"";position:absolute;inset:-4px;border:2px solid transparent;border-image:linear-gradient(135deg,var(--cyan),var(--lime)) 1;filter:blur(8px);opacity:.6;z-index:-1}.level-header{font-size:clamp(1rem,4vw,1.6rem);color:var(--cyan);text-shadow:0 0 10px var(--cyan),0 0 30px var(--cyan),0 0 60px var(--cyan);text-align:center;animation:glowPulse 2s ease-in-out infinite alternate}@keyframes glowPulse{0%{text-shadow:0 0 10px var(--cyan),0 0 30px var(--cyan)}to{text-shadow:0 0 15px var(--cyan),0 0 40px var(--cyan),0 0 80px var(--cyan)}}.pixel-graphic{position:relative;width:120px;height:120px;display:flex;align-items:center;justify-content:center}.center-pixel{width:40px;height:40px;background:var(--pink);box-shadow:0 0 15px var(--pink),0 0 40px var(--pink),0 0 80px var(--pink);animation:pixelPulse 1.5s ease-in-out infinite alternate;image-rendering:pixelated}@keyframes pixelPulse{0%{transform:scale(1);box-shadow:0 0 15px var(--pink),0 0 40px var(--pink)}to{transform:scale(1.1);box-shadow:0 0 20px var(--pink),0 0 60px var(--pink),0 0 100px var(--pink)}}.floating-pixel{position:absolute;width:8px;height:8px;image-rendering:pixelated;animation:floatPixel 3s ease-in-out infinite}.floating-pixel:nth-child(2){background:var(--orange);top:5px;left:20px;animation-delay:0s}.floating-pixel:nth-child(3){background:var(--yellow);top:15px;right:10px;animation-delay:.5s}.floating-pixel:nth-child(4){background:var(--lime);bottom:10px;left:10px;animation-delay:1s}.floating-pixel:nth-child(5){background:var(--pink);bottom:20px;right:20px;animation-delay:1.5s}.floating-pixel:nth-child(6){background:var(--cyan);top:40px;left:0;animation-delay:.8s}.floating-pixel:nth-child(7){background:var(--orange);top:50px;right:0;animation-delay:1.2s}.floating-pixel:nth-child(8){background:var(--yellow);bottom:40px;left:30px;animation-delay:.3s}@keyframes floatPixel{0%,to{transform:translateY(0) scale(1);opacity:1}50%{transform:translateY(-12px) scale(1.3);opacity:.6}}.venue-box{background:var(--pink);padding:.8rem 1.5rem;text-align:center;box-shadow:0 0 15px var(--pink),0 0 30px #ff2d9566}.venue-label{font-size:.5rem;color:var(--white);letter-spacing:2px;margin-bottom:.3rem}.venue-name{font-size:clamp(.7rem,3vw,1.1rem);color:var(--lime);text-shadow:0 0 10px var(--lime)}.datetime-row{display:flex;justify-content:space-between;align-items:center;width:100%;padding:0 .5rem}.date-display,.time-display{text-align:center}.date-big{font-size:clamp(1.2rem,5vw,2rem);background:linear-gradient(180deg,var(--pink),var(--cyan));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 10px var(--pink))}.time-big{font-size:clamp(1.2rem,5vw,2rem);background:linear-gradient(180deg,var(--cyan),var(--lime));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 10px var(--cyan))}.datetime-details{text-align:center;font-size:.45rem;color:#f0f0f0b3;line-height:2.5}.loading-section{width:100%;display:flex;flex-direction:column;align-items:center;gap:.5rem}.loading-bar-track{width:100%;height:16px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);overflow:hidden}.loading-bar-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--orange),var(--lime));box-shadow:0 0 10px var(--lime);animation:loadBar 3s ease-in-out forwards;animation-delay:1s}@keyframes loadBar{to{width:90%}}.loading-text{font-size:.5rem;display:flex;gap:.5rem;align-items:center}.loading-label{color:var(--orange)}.loading-fun{color:var(--cyan);text-shadow:0 0 10px var(--cyan);animation:glowPulse 2s ease-in-out infinite alternate}.scroll-indicator{position:absolute;bottom:2rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;animation:bounce 2s ease-in-out infinite;cursor:pointer}.scroll-indicator span{font-size:.4rem;color:var(--cyan);letter-spacing:2px}.scroll-arrow{width:20px;height:20px;border-right:2px solid var(--cyan);border-bottom:2px solid var(--cyan);transform:rotate(45deg)}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(10px)}}.section{width:100%;max-width:600px;min-height:80vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 1.5rem;gap:2rem;opacity:0;transform:translateY(40px);transition:opacity .8s ease,transform .8s ease}.section.visible{opacity:1;transform:translateY(0)}.section-title{font-size:clamp(.8rem,3vw,1.2rem);color:var(--cyan);text-shadow:0 0 10px var(--cyan),0 0 30px var(--cyan);text-align:center;position:relative}.section-title:after{content:"";display:block;width:60%;height:2px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);margin:.8rem auto 0}.when-content{display:flex;flex-direction:column;align-items:center;gap:1.5rem;text-align:center}.when-date{font-size:clamp(.7rem,2.5vw,1rem);color:var(--pink);text-shadow:0 0 10px var(--pink)}.when-time{font-size:clamp(.6rem,2vw,.85rem);color:var(--lime);text-shadow:0 0 10px var(--lime)}.calendar-btn{display:inline-flex;align-items:center;gap:.6rem;padding:.8rem 1.5rem;background:transparent;border:2px solid var(--cyan);color:var(--cyan);font-family:"Press Start 2P",monospace;font-size:.55rem;cursor:pointer;text-decoration:none;transition:all .3s ease;box-shadow:0 0 10px #00f0ff33}.calendar-btn:hover{background:var(--cyan);color:var(--bg);box-shadow:0 0 20px var(--cyan),0 0 40px #00f0ff4d}.calendar-btn svg{width:18px;height:18px;fill:currentColor}.where-content{display:flex;flex-direction:column;align-items:center;gap:1.5rem;text-align:center;width:100%}.venue-info{display:flex;flex-direction:column;gap:.5rem}.venue-info-name{font-size:clamp(.6rem,2.5vw,.9rem);color:var(--pink);text-shadow:0 0 10px var(--pink)}.venue-address{font-size:.45rem;color:#f0f0f099;line-height:2.5}.map-container{width:100%;aspect-ratio:16/9;border:2px solid rgba(0,240,255,.3);overflow:hidden;position:relative}.map-container iframe{width:100%;height:100%;border:0;filter:grayscale(.8) invert(.92) contrast(1.1) hue-rotate(180deg)}.maps-btn{display:inline-flex;align-items:center;gap:.6rem;padding:.8rem 1.5rem;background:transparent;border:2px solid var(--lime);color:var(--lime);font-family:"Press Start 2P",monospace;font-size:.55rem;cursor:pointer;text-decoration:none;transition:all .3s ease;box-shadow:0 0 10px #39ff1433}.maps-btn:hover{background:var(--lime);color:var(--bg);box-shadow:0 0 20px var(--lime),0 0 40px #39ff144d}.activities-grid{display:grid;grid-template-columns:1fr;gap:1rem;width:100%}.activity-card{display:flex;align-items:center;gap:1rem;padding:1rem;border:1px solid rgba(255,255,255,.08);background:#ffffff05;transition:all .3s ease}.activity-card:hover{border-color:var(--cyan);box-shadow:0 0 15px #00f0ff26;transform:translate(5px)}.activity-icon{font-size:1.8rem;min-width:50px;text-align:center}.activity-text{display:flex;flex-direction:column;gap:.3rem}.activity-name{font-size:.55rem;color:var(--lime)}.activity-desc{font-size:.4rem;color:#f0f0f080;font-family:system-ui,sans-serif;line-height:1.6}.confetti-section{width:100%;max-width:600px;min-height:50vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 1.5rem;gap:2rem;opacity:0;transform:translateY(40px);transition:opacity .8s ease,transform .8s ease}.confetti-section.visible{opacity:1;transform:translateY(0)}.confetti-btn{padding:1.2rem 2.5rem;background:linear-gradient(135deg,var(--pink),var(--orange));border:none;color:var(--white);font-family:"Press Start 2P",monospace;font-size:clamp(.6rem,2vw,.8rem);cursor:pointer;transition:all .3s ease;box-shadow:0 0 20px #ff2d9566,0 0 40px #ff2d9533;animation:confettiBtnPulse 2s ease-in-out infinite alternate}@keyframes confettiBtnPulse{0%{box-shadow:0 0 20px #ff2d9566,0 0 40px #ff2d9533}to{box-shadow:0 0 30px #ff2d9599,0 0 60px #ff2d954d,0 0 90px #ff2d951a}}.confetti-btn:hover{transform:scale(1.05)}.confetti-btn:active{transform:scale(.95)}.rsvp-text{font-size:.45rem;color:#f0f0f080;text-align:center;line-height:2.5}.rsvp-text a{color:var(--cyan);text-decoration:none}.footer{width:100%;padding:2rem;text-align:center;border-top:1px solid rgba(255,255,255,.05)}.footer-text{font-size:.35rem;color:#f0f0f040}.bg-particles{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:hidden}.bg-particle{position:absolute;width:2px;height:2px;background:var(--cyan);opacity:.3;animation:drift linear infinite}@keyframes drift{0%{transform:translateY(100vh) translate(0);opacity:0}10%{opacity:.3}90%{opacity:.3}to{transform:translateY(-10vh) translate(30px);opacity:0}}@media(max-width:480px){.invitation-card{padding:1.5rem 1rem}.section{padding:3rem 1rem}}
