@import "https://fonts.googleapis.com/css2?family=Cinzel:wght@600;700&family=Great+Vibes&family=Montserrat:wght@300;400;500&display=swap";.invitation-wrapper{box-sizing:border-box;justify-content:center;align-items:center;width:100%;min-height:100vh;padding:15px;display:flex;overflow-x:hidden}.envelope{background-color:var(--envelope-bg);width:min(360px,90vw);height:min(230px,58vw);box-shadow:0 20px 40px var(--shadow-color);cursor:pointer;border-radius:0 0 15px 15px;transition:transform .4s;position:relative}.envelope:hover:not(.open){transform:scale(1.02)}.envelope-flap{border-left:min(180px,45vw) solid #0000;border-right:min(180px,45vw) solid #0000;border-top:min(130px, 33vw) solid var(--envelope-flap);transform-origin:top;z-index:6;width:100%;height:0;transition:transform .6s cubic-bezier(.4,0,.2,1);position:absolute;top:0;left:0}.envelope-front{background-color:var(--envelope-front);z-index:4;border:2px solid #fff3;border-radius:0 0 15px 15px;flex-direction:column;justify-content:flex-end;align-items:center;width:100%;height:60%;padding-bottom:12px;display:flex;position:absolute;bottom:0;left:0;box-shadow:inset 0 -5px 15px #00000026}.envelope-seal{filter:drop-shadow(0 2px 4px #0003);margin-bottom:2px;font-size:clamp(1.8rem,5vw,2.2rem)}.open-instruction{color:var(--text-cdefault);letter-spacing:1.2px;text-transform:uppercase;text-shadow:0 1px 2px #0003;text-align:center;padding:0 10px;font-size:clamp(.7rem,2.5vw,.8rem);font-weight:600}.card-container{background-color:var(--card-bg);z-index:2;opacity:0;pointer-events:none;box-sizing:border-box;border-radius:12px;flex-direction:column;justify-content:space-between;width:min(550px,92vw);height:min(550px,85vh);padding:clamp(15px,4vw,22px);transition:all .4s cubic-bezier(.175,.885,.32,1.275);display:flex;position:absolute;top:clamp(-170px,-28vw,-120px);left:50%;transform:translate(-50%)scale(.8);box-shadow:0 5px 15px #0000001a}.card-content{text-align:center;flex-direction:column;justify-content:space-between;align-items:center;height:100%;display:flex}.card-content h2{color:var(--text-primary);text-transform:uppercase;letter-spacing:2px;padding:50px 0 0;font-family:Great Vibes,cursive;font-size:clamp(2.5rem,6vw,3rem);font-weight:700}.card-subtitle{color:var(--envelope-bg);font-family:Cinzel,serif;font-size:clamp(1.5rem,4vw,2rem);font-weight:700}.card-content p{color:var(--text-secondary);font-family:Montserrat,sans-serif;font-size:clamp(.9rem,2.5vw,1rem);font-weight:700;line-height:1.4}.event-details{border:1px dashed var(--envelope-front);background-color:#fdf2f8;border-radius:8px;width:100%;padding:8px;font-size:clamp(.75rem,2.3vw,.85rem);line-height:1.3}.event-details p strong{color:var(--text-primary)}.close-instruction{color:#9ca3af;font-size:clamp(.65rem,2vw,.75rem);font-style:italic}.envelope.open .envelope-flap{z-index:1;transform:rotateX(180deg)}.envelope.open .card-container{opacity:1;pointer-events:auto;cursor:pointer;z-index:10;transform:translate(-50%)scale(1);box-shadow:0 30px 60px #83184359}.envelope.open{cursor:default}.envelope .crown{color:var(--accent-gold)}@media (width<=480px){.card-container{height:min(500px,80vh);padding:15px;top:-140px}.card-content h2{padding-top:30px}}@media (width<=360px){.envelope{width:300px;height:190px}.card-container{width:290px;height:350px;top:-165px}.card-content h2{padding-top:15px;font-size:2.2rem}}:root{--bg-color:#fce7f3;--envelope-bg:#db2777;--envelope-flap:#be185d;--envelope-front:#ec4899;--card-bg:#fff;--text-primary:#831843;--text-secondary:#4b5563;--accent-gold:#d97706;--shadow-color:#83184340;--text-cdefault:#fff}*{box-sizing:border-box;-webkit-user-select:none;user-select:none;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-secondary);font-family:Montserrat,sans-serif}.app-container{justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;overflow:hidden}
