.envelope-card{position:relative;isolation:isolate;background:linear-gradient(135deg,#fff,#f7faff);border:1px solid #d4e1f5;border-radius:12px;min-height:240px;margin:16px 0;padding:26px 24px 18px;overflow:hidden;box-shadow:0 4px 12px #173b8f06}.envelope-blue{background:linear-gradient(135deg,#eaf3ff,#dceaff)}.envelope-fold{position:absolute;inset:auto 0 0;height:80px;background:linear-gradient(25deg,transparent 49%,#e7effb 50%,transparent 51%),linear-gradient(-25deg,transparent 49%,#e7effb 50%,transparent 51%);z-index:-1;opacity:.8}.envelope-address{padding-right:130px;position:relative}.envelope-names{font-family:Georgia,serif;font-size:19px;line-height:1.8;color:#173b8f}.envelope-names span{display:inline-block;min-width:40px;color:#8395b3;font:11px Arial,sans-serif;text-transform:uppercase}.envelope-subject{margin:12px 0 6px;font-size:13px;color:#60799e}.envelope-postage{position:absolute;right:20px;top:20px}.envelope-stamp{border:2px dashed #8ea9d4;padding:6px;background:#f2f7ff;display:grid;justify-items:center;width:85px;transform:rotate(5deg)}.envelope-stamp img{width:49px;height:49px;object-fit:contain}.envelope-stamp span{font-size:8px;color:#173b8f;letter-spacing:.5px;font-weight:bold}.envelope-postmark{position:absolute;top:70px;right:38px;border:2px solid #87a0c7;border-radius:50%;width:76px;height:76px;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#5f7ba7;background:#f4f8ffb0;transform:rotate(-14deg);font-size:10px;text-transform:uppercase}.envelope-postmark small{font-size:9px;border-top:1px solid #99afd0;margin-top:4px;padding-top:4px}.envelope-footer{display:flex;align-items:center;justify-content:space-between;margin-top:18px;gap:12px}.envelope-seal{border-radius:50%;width:32px;height:32px;display:grid;place-items:center;background:#173b8f;color:white}.is-opened .envelope-seal{background:#e4edfc;color:#173b8f}.envelope-ritual{padding:35px 28px;border:1px solid #d5e1f5;border-radius:20px;text-align:center;max-width:440px;width:calc(100% - 32px);color:#173b8f;background:#f7faff}.envelope-ritual::backdrop{background:#173b8f55}.envelope-ritual h2{font:25px Georgia,serif;margin:25px 0 10px}.envelope-ritual p{font:14px/1.7 Arial,sans-serif;color:#6a80a2}.ritual-scene{width:240px;height:160px;position:relative;margin:70px auto 0;perspective:600px}.ritual-pocket{position:absolute;inset:0;background:linear-gradient(33deg,#dceaff 49%,transparent 50%),linear-gradient(-33deg,#cfe0fa 49%,transparent 50%),#eaf2ff;border:1px solid #b6cced;border-radius:6px;z-index:3}.ritual-paper{position:absolute;left:20px;right:20px;top:15px;height:140px;background:white;border:1px solid #dbe4f3;padding:15px;z-index:2}.ritual-paper span{font:13px Georgia,serif}.ritual-paper i{display:block;border-top:1px solid #cddbf0;margin:14px 0}.ritual-flap{position:absolute;inset:0;background:#bfd5f7;clip-path:polygon(0 0,100% 0,50% 60%);transform-origin:top;z-index:4}.ritual-seal{position:absolute;left:104px;top:70px;width:34px;height:34px;display:grid;place-items:center;background:#173b8f;color:white;border-radius:50%;z-index:5}.open .ritual-flap{animation:flap-open .35s ease forwards}.open .ritual-paper{animation:paper-out .55s .3s ease forwards}.open .ritual-seal{animation:seal-fade .2s forwards}.seal .ritual-paper{transform:translateY(-80px);animation:paper-in .5s ease forwards}.seal .ritual-flap{transform:rotateX(180deg);animation:flap-close .4s .45s ease forwards}.seal .ritual-seal{opacity:0;animation:seal-appear .2s .8s forwards}@keyframes flap-open{to{transform:rotateX(180deg)}}@keyframes paper-out{to{transform:translateY(-95px)}}@keyframes seal-fade{to{opacity:0}}@keyframes paper-in{to{transform:translateY(0)}}@keyframes flap-close{to{transform:rotateX(0)}}@keyframes seal-appear{to{opacity:1}}@media(prefers-reduced-motion:reduce){.envelope-ritual *{animation:none!important}}@media(max-width:760px){.envelope-card{padding:20px 16px;min-height:260px}.envelope-address{padding-right:90px}.envelope-postage{right:12px;top:16px}.envelope-postmark{right:15px;top:79px;width:65px;height:65px}.envelope-stamp{width:68px}.envelope-stamp img{width:40px;height:40px}.envelope-stamp span{font-size:7px}.envelope-names{font-size:17px;overflow-wrap:anywhere}.envelope-address .m-label{font-size:10px;line-height:1.8}.envelope-address small{font-size:11px}.envelope-footer .m-btn{font-size:12px}}
