*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{background:#fcf6f0 radial-gradient(circle at 10% 20%,#fff5ebcc 0,#f9ede5 100%);justify-content:center;align-items:center;min-height:100dvh;padding:12px;font-family:Quicksand,sans-serif;display:flex}.card{-webkit-backdrop-filter:blur(16px);background:#fffcf8d9;border:1px solid #ffd7be4d;border-radius:40px 40px 28px 28px;width:100%;max-width:420px;max-height:96dvh;padding:20px 16px;position:relative;overflow-y:auto;box-shadow:0 30px 60px #00000014,0 10px 20px #0000000a}.card::-webkit-scrollbar{width:3px}.card::-webkit-scrollbar-track{background:0 0}.card::-webkit-scrollbar-thumb{background:#dcc7bb;border-radius:10px}.card:before{top:12px;right:20px;transform:rotate(15deg)}.card:after,.card:before{content:"✦";color:#d9b8a4;opacity:.2;font-size:24px;position:absolute}.card:after{bottom:12px;left:20px;transform:rotate(-10deg)}#loginSection{flex-direction:column;align-items:center;gap:14px;padding:6px 0;display:flex}.login-label{color:#5e3e31;letter-spacing:4px;text-shadow:0 2px 12px #fff8f299;opacity:.9;margin-bottom:-8px;font-family:Great Vibes,cursive;font-size:2.8rem}.login-couple-photo{aspect-ratio:16/10;-o-object-fit:cover;object-fit:cover;border:3px solid #fff9;border-radius:32px;width:100%;box-shadow:0 8px 28px #5a3c2d1f}.title-wed{color:#5e3e31;letter-spacing:2px;text-shadow:0 2px 8px #fff8f280;text-align:center;font-family:Great Vibes,cursive;font-size:2.4rem;line-height:1.2}.subtitle{color:#7d5f4e;letter-spacing:3px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#ebd6c84d;border-radius:40px;padding:4px 18px;font-size:.9rem;font-weight:300}.login-box{-webkit-backdrop-filter:blur(4px);background:#fff5eb80;border-radius:50px;width:100%;padding:16px 18px 18px;box-shadow:inset 0 0 0 1px #ffd7be33,0 8px 20px #7846320d}.input-group{flex-direction:column;gap:10px;display:flex}.input-field{background:#fff;border:1px solid #f0dbd0;border-radius:60px;align-items:center;padding:0 18px;transition:all .2s;display:flex;box-shadow:0 2px 6px #00000005}.input-field i{color:#b28b7a;opacity:.6;width:18px;margin-right:10px;font-size:.9rem}.input-field input{color:#3f2c22;background:0 0;border:none;outline:none;width:100%;padding:14px 4px;font-family:Quicksand,sans-serif;font-size:.95rem;font-weight:500}.input-field input::placeholder{color:#bba697;font-size:.85rem;font-weight:300}.input-field:focus-within{border-color:#c8a392;box-shadow:0 0 0 3px #c8a3921a}.btn-login{color:#fff;cursor:pointer;letter-spacing:1.5px;background:#b28b7a;border:none;border-radius:60px;justify-content:center;align-items:center;gap:10px;padding:14px;font-family:Quicksand,sans-serif;font-size:1rem;font-weight:600;transition:all .25s;display:flex;box-shadow:0 4px 12px #9664501f}.btn-login:active{background:#a07b6a;transform:scale(.97)}.error-msg{color:#b35a4a;text-align:center;background:#c8503c0f;border-radius:40px;margin-top:4px;padding:4px 12px;font-size:.75rem;display:inline-block}.login-hint{color:#b7a093;opacity:.6;text-align:center;font-size:.65rem}#inviteSection{flex-direction:column;gap:18px;animation:.5s fadeSlide;display:none}@keyframes fadeSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.invite-header{border-bottom:1px dashed #e5d0c4;flex-shrink:0;justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.invite-header h2{color:#5e3e31;font-family:Great Vibes,cursive;font-size:1.6rem;font-weight:400}.invite-header .logout-btn{color:#7d5f4e;cursor:pointer;background:#fff0e64d;border:1px solid #dcc7bb;border-radius:40px;padding:4px 12px;font-size:.7rem;font-weight:600;transition:all .2s}.invite-header .logout-btn:active{background:#ebd9cf;transform:scale(.95)}.countdown-container{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);text-align:center;background:#fff8f280;border:1px solid #ffd7be26;border-radius:32px;padding:14px 12px;box-shadow:0 4px 16px #00000005}.countdown-title{letter-spacing:4px;color:#b7a093;text-transform:uppercase;margin-bottom:8px;font-size:.7rem;font-weight:600}.countdown-grid{justify-content:center;gap:10px;display:flex}.countdown-item{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fff6;border:1px solid #ffd7be1a;border-radius:18px;min-width:52px;padding:6px 0 4px}.countdown-item .number{color:#5e3e31;font-size:1.6rem;font-weight:700;line-height:1.2}.countdown-item .label{text-transform:uppercase;letter-spacing:1px;color:#b7a093;font-size:.45rem;font-weight:600}.section{background-blend-mode:overlay;background-color:#fff8f2a6;background-position:50%;background-size:cover;border:1px solid #ffd7be1f;border-radius:28px;padding:16px 14px 18px;box-shadow:0 4px 16px #0000000a}.section-title{color:#5e3e31;text-align:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffcf880;border:1px solid #ffd7be1a;border-radius:60px;width:auto;margin-bottom:10px;margin-left:auto;margin-right:auto;padding:4px 12px;font-family:Great Vibes,cursive;font-size:1.5rem;font-weight:400;display:inline-block}.section-title i{color:#b28b7a;margin-right:6px}.welcome-message{text-align:center;color:#3f2c22;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffcf880;border:1px solid #ffd7be1a;border-radius:20px;padding:14px 12px;font-size:.95rem;font-weight:400;line-height:1.7}.welcome-message .highlight{color:#5e3e31;font-family:Great Vibes,cursive;font-size:1.3rem}.welcome-message .guest-names{color:#b28b7a;font-size:1.05rem;font-weight:600}.location-details{text-align:center;color:#3f2c22;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#fffcf84d;border-radius:16px;padding:6px 0;font-size:.9rem;line-height:1.6}.location-details i{color:#b28b7a;margin-right:6px}.btn-maps{color:#fff;cursor:pointer;background:#b28b7a;border:none;border-radius:60px;margin-top:8px;padding:10px 20px;font-size:.85rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-block}.btn-maps:active{background:#a07b6a;transform:scale(.95)}.btn-maps i{margin-right:8px}.btn-whatsapp{color:#fff;cursor:pointer;background:#25d366;border:none;border-radius:60px;padding:12px 24px;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-block}.btn-whatsapp:active{opacity:.9;transform:scale(.95)}.btn-whatsapp i{margin-right:8px}.contact-item{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#fffcf866;border:1px solid #ffd7be1a;border-radius:14px;align-items:center;gap:12px;margin-bottom:6px;padding:8px 12px;display:flex}.contact-item:last-child{margin-bottom:0}.contact-item .contact-icon{color:#b28b7a;background:#b28b7a26;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;display:flex}.contact-item .contact-info{flex:1}.contact-item .contact-name{color:#3f2c22;font-size:.9rem;font-weight:600}.contact-item .contact-role{color:#b7a093;font-size:.7rem}.contact-item .contact-phone{color:#5e3e31;font-size:.85rem;font-weight:500;text-decoration:none;display:block}.contact-item .contact-phone i{color:#25d366;margin-right:4px}.program-item{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#fffcf84d;border-bottom:1px dashed #c8b4aa26;border-radius:12px;align-items:center;gap:10px;margin-bottom:2px;padding:6px 12px;display:flex}.program-item:last-child{border-bottom:none;margin-bottom:0}.program-item .time{color:#b28b7a;text-align:left;min-width:55px;font-size:.75rem;font-weight:600}.program-item .desc{color:#3f2c22;font-size:.85rem;font-weight:500}.program-item i{color:#b28b7a;text-align:center;width:20px;font-size:.9rem}.gift-item{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#fffcf84d;border-bottom:1px dashed #c8b4aa1f;border-radius:12px;align-items:center;gap:12px;margin-bottom:2px;padding:6px 12px;display:flex}.gift-item:last-child{border-bottom:none;margin-bottom:0}.gift-item i{color:#b28b7a;text-align:center;width:24px;font-size:1rem}.gift-item .gift-name{color:#3f2c22;font-size:.85rem;font-weight:500}.gift-item .gift-store{color:#b7a093;background:#fff5eb4d;border-radius:40px;margin-left:auto;padding:2px 10px;font-size:.65rem}.verse-text{color:#3f2c22;text-align:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#fffcf84d;border-bottom:1px dashed #c8b4aa1f;border-radius:12px;margin-bottom:2px;padding:8px 12px;font-size:.9rem;font-style:italic;font-weight:400;line-height:1.5}.verse-text:last-child{border-bottom:none;margin-bottom:0}.verse-text .ref{color:#b28b7a;margin-top:2px;font-size:.75rem;font-style:normal;font-weight:600;display:block}.couple-photo{aspect-ratio:16/9;-o-object-fit:cover;object-fit:cover;border:2px solid #ffffff80;border-radius:28px;width:100%;box-shadow:0 6px 24px #5a3c2d14}.event-details{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fff8f266;border:1px solid #ffd7be1a;border-radius:30px;flex-wrap:wrap;justify-content:center;gap:8px 16px;padding:10px 14px;display:flex}.event-details span{color:#5e3e31;font-size:.8rem;font-weight:500}.event-details i{color:#b28b7a;margin-right:6px}.dress-code{text-align:center;color:#7d5f4e;border-top:1px dashed #c8b4aa33;width:100%;padding-top:8px;font-size:.75rem}.dress-code i{color:#b28b7a;margin-right:6px}.guest-mini{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#fff5eb33;border:1px solid #ffd7be14;border-radius:40px;flex-wrap:wrap;justify-content:center;gap:4px 10px;padding:6px 12px;font-size:.7rem;display:flex}.guest-mini .guest-tag{color:#3f2c22;background:#fff6;border-radius:30px;padding:0 10px;font-weight:500}.music-player{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ebd6c826;border:1px solid #ffd7be1a;border-radius:60px;justify-content:center;align-items:center;gap:8px;padding:3px 12px 3px 16px;display:flex}.music-player i{color:#b28b7a;cursor:pointer;font-size:1.1rem;transition:all .2s}.music-player i:active{transform:scale(.9)}.music-player .track-name{color:#5e3e31;white-space:nowrap;font-size:.7rem;font-weight:400}.music-player audio{border-radius:40px;width:70px;height:24px}.share-buttons{justify-content:center;gap:16px;padding:4px 0;display:flex}.share-buttons a{color:#b7a093;opacity:.7;font-size:1.4rem;transition:all .2s}.share-buttons a:active{opacity:1;transform:scale(.9)}.share-buttons a:hover{opacity:1}.footer-note{text-align:center;color:#b7a093;letter-spacing:1px;border-top:1px dashed #e5d0c4;margin-top:2px;padding-top:10px;font-size:.55rem;font-weight:300}@media (width<=380px){.card{padding:14px 10px 16px}.login-label{font-size:2.2rem}.title-wed{font-size:2rem}.section-title{font-size:1.3rem}.countdown-item{min-width:44px}.countdown-item .number,.invite-header h2{font-size:1.3rem}.music-player audio{width:60px}.welcome-message{font-size:.85rem}.event-details span{font-size:.7rem}.program-item .time{min-width:48px;font-size:.65rem}.program-item .desc{font-size:.75rem}.contact-item .contact-name{font-size:.8rem}.contact-item .contact-phone{font-size:.75rem}}@media (height<=650px){.card{padding:10px 8px 12px}.login-label{font-size:2rem}.title-wed{font-size:1.8rem}.login-couple-photo{aspect-ratio:16/9}.login-box{padding:10px 12px 12px}.input-field input{padding:10px 4px;font-size:.85rem}.btn-login{padding:10px;font-size:.9rem}.countdown-item .number{font-size:1.2rem}.section{padding:12px 10px 14px}}
