:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;padding:0;min-width:320px;min-height:100vh;width:100%;display:block}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}html,body{margin:0;padding:0;overflow-x:hidden;width:100%;height:100%}.splash-container{width:100%;min-width:100%;height:100svh;background-size:cover;background-position:center;background-repeat:no-repeat;position:relative;font-family:Inter,sans-serif;color:#fff;display:flex;flex-direction:column}.splash-overlay{width:100%;height:100%;display:flex;flex-direction:column;justify-content:space-between;align-items:center;text-align:center;padding:20px;box-sizing:border-box;background:#00000047}.splash-top{margin-top:40px}.splash-title{font-family:Comforter,serif;font-size:3.5rem;font-weight:600;margin-bottom:12px;letter-spacing:1px}.splash-date{font-family:Comforter,serif;font-size:2.2rem;opacity:.9;margin-bottom:30px}.countdown{font-family:Comforter,serif;font-size:1.6rem;font-weight:500;letter-spacing:2px;background:#fff0;padding:10px 24px;border-radius:18px;display:inline-block}.countdown span{color:#ffe1ec;margin:0 8px}.splash-bottom{margin-bottom:40px;display:flex;justify-content:center}.splash-btn{padding:14px 36px;font-size:1.1rem;font-weight:500;background:#ffffff40;color:#fff;border:1px solid rgba(255,255,255,.4);border-radius:30px;cursor:pointer;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transition:all .3s ease}.splash-btn:hover{background:#fff6;transform:translateY(-2px);border:1px solid rgba(255,255,255,.4)}@media (max-width: 768px){.splash-title{font-size:2.4rem}.splash-date{font-size:1.6rem}.countdown{font-size:1.2rem;padding:8px 18px}}.menu-container{width:100%;min-height:100vh;display:flex;justify-content:center;align-items:flex-start;text-align:center;padding:40px 20px;box-sizing:border-box;background-image:url(/assets/couple-BcsUDiQq.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;position:relative}.menu-content{padding:40px;z-index:1;width:130%}.menu-title{font-family:Comforter,serif;font-size:2.2rem;margin-bottom:30px;color:#1c1c1ec0;font-weight:600}.menu-grid{display:grid;grid-template-columns:1fr;gap:20px}.menu-item{display:flex;justify-content:center;align-items:center;padding:18px;border-radius:18px;background:#ffffff50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);font-size:1.05rem;color:#161616;text-decoration:none;box-shadow:0 4px 12px #00000014;transition:all .25s ease}.menu-item:hover{transform:translateY(-4px) scale(1.02);background:#ffe6ea73;box-shadow:0 8px 20px #0000001f;color:#1c1c1e}.program-container{min-height:100vh;padding:40px 20px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;position:relative;background-image:url(/assets/back-C-JW2IQ5.jpg);background-size:cover;background-position:center;background-repeat:no-repeat}.program-container:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:0}.program-title{font-family:Comforter,cursive;font-size:3rem;margin-bottom:30px;color:#fff;font-weight:400;z-index:1;animation:fadeIn 1s ease-in-out}.countdown{margin-bottom:30px;z-index:1}.countdown p{margin:0;font-size:1rem;color:#eee}.countdown h3{font-size:1.5rem;font-weight:500;color:#ffe1ec}.timeline{position:relative;display:flex;flex-direction:column;gap:30px;max-width:400px;width:100%;padding-left:40px;z-index:1}.timeline:before{content:"";position:absolute;top:0;left:18px;width:3px;height:100%;background:#ffffff4d;border-radius:2px}.timeline-item{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:8px;background:#ffffff26;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:15px 20px;border-radius:16px;box-shadow:0 4px 16px #0003;animation:slideUp .6s ease forwards;opacity:0;color:#fff}.timeline-item:before{content:"";position:absolute;top:20px;left:-30px;width:16px;height:16px;border-radius:50%;background:#ffe1ec;border:3px solid rgba(255,255,255,.7);box-shadow:0 0 6px #ffc0cb99}.timeline-item:nth-child(1){animation-delay:.1s}.timeline-item:nth-child(2){animation-delay:.3s}.timeline-item:nth-child(3){animation-delay:.5s}.timeline-time{font-weight:600;font-size:1.2rem;color:#ffe1ec}.timeline-icon{font-size:1.4rem}.timeline-text{text-align:left;font-size:1rem;line-height:1.4}.timeline-item.past{opacity:.6}.calendar-buttons{margin-top:30px;display:flex;flex-direction:column;gap:15px;align-items:center}.calendar-btn{width:100%;max-width:320px;padding:14px 28px;border:none;border-radius:30px;background:#ffffff40;color:#fff;font-size:1.1rem;font-weight:500;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:all .3s ease}.calendar-btn:hover{background:#fff6;transform:translateY(-2px)}.map-container{min-height:100vh;padding:40px 20px;text-align:center;position:relative;background-image:url(/assets/back-C-JW2IQ5.jpg);background-size:cover;background-position:center;background-repeat:no-repeat}.map-container:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:0}.map-container h2,.map-container p,.tabs,.map-frame,.map-buttons,.taxi,.parking{position:relative;z-index:1;color:#fff}.map-title{font-family:Comforter,cursive;font-size:2.6rem;margin-bottom:10px;color:#fff;z-index:1;position:relative}.map-subtitle{font-size:1.1rem;margin-bottom:25px;color:#eee;z-index:1;position:relative}.tabs{margin-bottom:20px;z-index:1;position:relative;display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.tabs button{padding:10px 18px;border:none;border-radius:20px;background:#fff3;color:#fff;cursor:pointer;font-size:.95rem;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:all .3s ease}.tabs button:hover{background:#ffffff59}.tabs button.active{background:#ff4f81;color:#fff}.map-frame{margin:0 auto 30px;max-width:700px;border-radius:20px;overflow:hidden;box-shadow:0 6px 20px #00000040;position:relative;z-index:1}.map-buttons{display:flex;flex-direction:column;gap:15px;align-items:center;z-index:1;position:relative}.map-button{display:inline-block;width:80%;max-width:320px;padding:14px 22px;border-radius:30px;text-decoration:none;font-size:1.05rem;font-weight:500;color:#fff;text-align:center;transition:transform .25s ease,opacity .3s ease}.map-button:hover{transform:translateY(-2px);opacity:.9}.map-button.yandex{background:#f36}.map-button.google{background:#4285f4}.taxi{margin-top:25px;z-index:1;position:relative}.taxi a{display:inline-block;padding:12px 20px;border-radius:25px;background:#ffffff40;color:#fff;font-size:1rem;text-decoration:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:all .3s ease}.taxi a:hover{background:#fff6}.rsvp-container{min-height:100vh;padding:40px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;position:relative;background-image:url(/assets/back-C-JW2IQ5.jpg);background-size:cover;background-position:center;background-repeat:no-repeat}.rsvp-container:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:0}.rsvp-title{font-family:Comforter,cursive;font-size:2.4rem;margin-bottom:25px;color:#fff;font-weight:400;position:relative;z-index:1}.name-input{padding:14px 18px;border-radius:20px;border:none;font-size:1rem;width:80%;max-width:320px;margin-bottom:25px;text-align:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fff3;color:#fff;transition:all .3s ease;position:relative;z-index:1}.name-input::placeholder{color:#ffffffb3}.name-input:focus{background:#ffffff4d;box-shadow:0 0 8px #ff669980;outline:none}.rsvp-options{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin-bottom:20px;position:relative;z-index:1}.rsvp-card{background:#ffffff26;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:18px;padding:20px 30px;font-size:1.3rem;cursor:pointer;transition:all .25s ease;color:#fff;box-shadow:0 4px 12px #0003}.rsvp-card:hover{background:#ffffff40;transform:scale(1.05)}.rsvp-card:active{transform:scale(.97)}.rsvp-card.selected{border:2px solid #ff4f81;background:#ff4f8159;box-shadow:0 6px 16px #ff4f8166}.guest-count{margin-top:15px;font-weight:500;font-size:1.1rem;color:#ffe1ec;position:relative;z-index:1}.guest-list{margin-top:30px;background:#ffffff26;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:18px;padding:20px;width:90%;max-width:400px;color:#fff;box-shadow:0 4px 16px #0003;position:relative;z-index:1}.guest-list h3{margin-bottom:15px;font-size:1.2rem;color:#ffe1ec}.guest-list ul{list-style:none;padding:0;margin:0}.guest-list li{padding:8px 0;border-bottom:1px solid rgba(255,255,255,.2);text-align:left}.guest-list li:last-child{border-bottom:none}.plusone-block{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap;justify-content:center}.small-btn{padding:10px 16px;border:none;border-radius:20px;background:#ffffff40;color:#fff;font-size:.9rem;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:all .3s ease}.small-btn:hover{background:#fff6}.submit-btn{margin-top:20px;padding:14px 28px;border:none;border-radius:30px;background:#ffffff40;color:#fff;font-size:1.1rem;font-weight:500;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:all .3s ease}.submit-btn:hover{background:#fff6}.guest-count{margin:10px 0 20px;font-weight:600;font-size:1.2rem;color:#ffe1ec}.gallery-container{min-height:100vh;padding:40px 20px;text-align:center;position:relative;background-image:url(/assets/couple-BcsUDiQq.jpg);background-size:cover;background-position:center;background-repeat:no-repeat}.gallery-container:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#00000073;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:0}.gallery-title{font-family:Comforter,cursive;font-size:2.4rem;margin-bottom:25px;color:#fff;font-weight:400;position:relative;z-index:1}.upload-label{display:inline-block;padding:14px 28px;border-radius:30px;background:#ffffff40;color:#fff;font-weight:500;font-size:1.1rem;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:all .3s ease;margin-bottom:30px;position:relative;z-index:1}.gallery-empty{color:#eee;font-size:1rem;position:relative;z-index:1}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:15px;margin-top:20px;position:relative;z-index:1}.gallery-item{background:#ffffff26;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:16px;box-shadow:0 4px 12px #0003;overflow:hidden;transition:transform .25s ease;cursor:pointer}.gallery-item:hover{transform:scale(1.05)}.gallery-item img{width:100%;height:140px;object-fit:cover;display:block;border-radius:16px}.lightbox{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000c;display:flex;justify-content:center;align-items:center;z-index:999}.lightbox-img{max-width:90%;max-height:80%;border-radius:14px;box-shadow:0 4px 15px #00000080;animation:zoomIn .3s ease}.lightbox-close{position:absolute;top:20px;right:30px;font-size:2rem;background:none;border:none;color:#fff;cursor:pointer}.lightbox-close:hover{color:#ff4f81}@keyframes zoomIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.wishes-container{min-height:100vh;padding:40px 20px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;position:relative;background-image:url(/assets/back-C-JW2IQ5.jpg);background-size:cover;background-position:center;background-repeat:no-repeat}.wishes-container:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:0}.wishes-title{font-family:Comforter,cursive;font-size:3rem;margin-bottom:30px;color:#fff;font-weight:400;z-index:1;animation:fadeIn 1s ease-in-out;text-shadow:0 2px 6px rgba(0,0,0,.6)}.wishes-form{position:relative;z-index:1;max-width:500px;width:100%;margin:0 auto 30px;display:flex;flex-direction:column;gap:15px;animation:slideUp .6s ease forwards;opacity:0}.wishes-form input,.wishes-form textarea{padding:14px 16px;border-radius:14px;border:none;font-size:1rem;width:90%;background:#ffffff26;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;box-shadow:0 4px 12px #0003}.wishes-form input::placeholder,.wishes-form textarea::placeholder{color:#ddd}.wishes-form textarea{resize:vertical;min-height:120px}.wishes-button{padding:14px 20px;border:none;border-radius:30px;background:#ffffff40;color:#fff;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.wishes-button:hover{background:#fff6;transform:translateY(-2px)}.wishes-list{position:relative;z-index:1;max-width:600px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:15px}.wishes-empty{color:#eee;font-size:1rem;text-align:center}.wish-item{background:#ffffff26;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:18px 22px;border-radius:16px;box-shadow:0 4px 16px #0003;text-align:left;color:#fff;animation:slideUp .6s ease forwards;opacity:0}.wish-item strong{display:block;margin-bottom:6px;color:#ffe1ec;font-weight:600;font-size:1.1rem}.wish-item p{margin:0;font-size:1rem;color:#f5f5f5}.capsule-container{min-height:100vh;padding:40px 20px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;position:relative;background-image:url(/assets/back-C-JW2IQ5.jpg);background-size:cover;background-position:center;background-repeat:no-repeat}.capsule-container:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:0}.capsule-title{font-family:Comforter,cursive;font-size:3rem;margin-bottom:20px;color:#fff;font-weight:400;z-index:1;animation:fadeIn 1s ease-in-out;text-shadow:0 2px 6px rgba(0,0,0,.6)}.capsule-lock{font-size:5rem;margin:20px 0;z-index:1;color:#ffe1ec;text-shadow:0 0 10px rgba(255,192,203,.6);animation:pulse 1.5s infinite}.capsule-text{font-size:1.4rem;color:#fff;margin-bottom:12px;z-index:1;animation:slideUp .8s ease forwards;opacity:0}.capsule-subtext{font-size:1rem;color:#eee;max-width:420px;z-index:1;line-height:1.4;animation:slideUp 1s ease forwards;opacity:0}@keyframes pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.7}to{transform:scale(1);opacity:1}}.playlist-container{min-height:100vh;padding:40px 20px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;position:relative;background-image:url(/assets/back-C-JW2IQ5.jpg);background-size:cover;background-position:center;background-repeat:no-repeat}.playlist-container:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:0}.playlist-title{font-family:Comforter,cursive;font-size:3rem;margin-bottom:20px;color:#fff;font-weight:400;text-align:center;position:relative;z-index:1;animation:fadeIn 1s ease-in-out}.playlist-subtitle{font-size:1.2rem;color:#eee;margin-bottom:25px;position:relative;z-index:1}.playlist-form{display:flex;flex-direction:column;gap:15px;margin:20px auto 30px;max-width:400px;width:100%;z-index:1;animation:slideUp .8s ease forwards;opacity:0}.playlist-form input{padding:14px 16px;border-radius:14px;border:none;font-size:1rem;background:#ffffff26;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;box-shadow:0 4px 12px #0003}.playlist-form input::placeholder{color:#ddd}.playlist-form button{padding:14px 20px;border:none;border-radius:30px;background:#ffffff40;color:#fff;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.playlist-form button:hover{background:#fff6;transform:translateY(-2px)}.playlist-list{list-style:none;padding:0;margin-top:20px;z-index:1;width:100%;max-width:500px;display:flex;flex-direction:column;gap:15px}.playlist-item{background:#ffffff26;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:16px 20px;border-radius:16px;box-shadow:0 4px 16px #0003;font-size:1rem;color:#fff;animation:slideUp .6s ease forwards;opacity:0;text-align:left}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.challenges-container{min-height:100vh;padding:40px 20px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;position:relative;background-image:url(/assets/back-C-JW2IQ5.jpg);background-size:cover;background-position:center;background-repeat:no-repeat}.challenges-container:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:0}.challenges-container h2,.challenges-container p,.challenges-container h3{position:relative;z-index:1;color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.6)}.guest-input{margin:20px 0 30px;position:relative;z-index:1;width:100%;max-width:400px}.guest-input input{width:90%;padding:14px 18px;border-radius:14px;border:none;font-size:1rem;background:#ffffff26;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;box-shadow:0 4px 12px #0003;transition:all .3s ease}.guest-input input::placeholder{color:#ddd}.guest-input input:focus{outline:none;background:#ffffff40;box-shadow:0 6px 18px #00000059}.challenge-list{list-style:none;padding:0;margin-top:20px;z-index:1;width:100%;max-width:900px;display:flex;flex-direction:column;gap:25px}.challenge-list li{padding:20px;border-radius:16px;background:#ffffff26;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 4px 16px #0003;font-size:1rem;color:#fff;display:flex;flex-direction:column;align-items:stretch;gap:15px}.challenge-list input[type=file]{display:none}.upload-label{display:inline-block;padding:12px 20px;border-radius:30px;background:#ffffff40;color:#fff;font-size:1rem;font-weight:500;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:all .3s ease;text-align:center}.upload-label:hover{background:#fff6;transform:translateY(-2px)}.upload-label.disabled{opacity:.5;cursor:not-allowed}.proofs{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:15px;width:100%}.proof{display:flex;flex-direction:column;align-items:center;background:#ffffff14;border-radius:10px;padding:8px;box-shadow:0 2px 8px #00000040;transition:transform .2s ease}.proof:hover{transform:translateY(-2px)}.proof img,.proof video{width:100%;max-height:140px;object-fit:cover;border-radius:8px;cursor:pointer;margin-bottom:6px}.proof p{margin:2px 0;font-size:.75rem;color:#eee;text-align:center;line-height:1.2}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content img,.modal-content video{max-width:90%;max-height:90%;border-radius:12px;box-shadow:0 4px 20px #00000080}
