.sf-special-stage{position:fixed;inset:0;z-index:999;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 48% 42%,#293e63,#172744 48%,#0d1830 92%);color:#fff4d5}
.sf-special-running>.delivery-scene,.sf-special-running>[data-journey-object]{visibility:hidden!important}
.ecard-player[data-sf-special-reveal="1"] .media-watermark[hidden]{display:none!important}
.ecard-player[data-sf-special-reveal="1"] .journey-object.is-complete{display:none!important}
.sfs2-stage *{box-sizing:border-box}
.sfs2-sparkles{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:7}
.sfs2-heart{position:absolute;width:clamp(110px,26vw,190px);z-index:4;filter:drop-shadow(0 0 24px #fa5c5f80);will-change:transform,opacity}
.sfs2-heart svg{display:block;width:100%;overflow:visible}
.sfs2-envelope,.sfs2-envelope-under{position:absolute;z-index:3;transform-origin:center;filter:drop-shadow(0 15px 24px #0005);will-change:top,transform,opacity;perspective:900px}
.sfs2-back,.sfs2-pocket,.sfs2-flap,.sfs2-closed{position:absolute;inset:0;border-radius:4px;background-image:var(--sfs2-stationery);background-position:center;background-size:100% 100%;background-repeat:no-repeat}
.sfs2-back{z-index:0}
.sfs2-pocket{z-index:3;clip-path:polygon(0 0,50% 58%,100% 0,100% 100%,0 100%)}
.sfs2-flap{z-index:4;clip-path:polygon(0 0,100% 0,50% 60%);transform-origin:50% 0;backface-visibility:visible}
.sfs2-closed{z-index:5}
.sfs2-book{position:absolute;z-index:2;perspective:1000px;overflow:visible;will-change:left,top;isolation:isolate}
.sfs2-poem,.sfs2-face{position:absolute;inset:0;border:1px solid #d9bf85;border-radius:2px;box-shadow:0 4px 17px #0003;overflow:hidden;background:#fffaf0}
.sfs2-poem{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12%;background-size:100% 100%;background-position:center;color:#323448;text-align:center}
.sfs2-words{white-space:pre-line;line-height:1.4;font-family:Georgia,serif;max-height:87%;overflow:hidden;width:100%}
.sfs2-words img{display:block;width:100%;max-height:100%;object-fit:contain}
.sfs2-poem small{font:8px Georgia,serif;color:#a17838;margin-top:8%}
.sfs2-turn{position:absolute;inset:0;transform-origin:left center;transform-style:preserve-3d;z-index:2;will-change:transform}
.sfs2-face{backface-visibility:hidden;-webkit-backface-visibility:hidden}
.sfs2-front{transform:translateZ(.15px)}
.sfs2-left{transform:rotateY(180deg) translateZ(.15px)}
.sfs2-face img{display:block;width:100%;height:100%;object-fit:contain}
.sfs2-burst{position:absolute;width:clamp(220px,55vw,440px);aspect-ratio:1;z-index:8;pointer-events:none;background:radial-gradient(ellipse,#fff9d9 0,#ffedb2e6 9%,#f3c75975 27%,#e4b24425 46%,transparent 70%);border-radius:50%}
.sfs2-caption{position:absolute;bottom:max(7%,env(safe-area-inset-bottom));left:8%;right:8%;margin:0;text-align:center;font:italic clamp(13px,1.8vw,18px)/1.5 Georgia,serif;color:#fff0cd;z-index:9}
.sfs2-skip{position:absolute;z-index:10;right:max(18px,env(safe-area-inset-right));top:max(18px,env(safe-area-inset-top));border:1px solid #ffe6aa88;border-radius:30px;background:#14233cdd;color:#fff6e5;padding:10px 18px;font:13px/1.3 system-ui;cursor:pointer;min-height:44px}
.sfs2-skip:focus-visible{outline:3px solid #fff4c2;outline-offset:3px}

.sfs2-envelope-under{z-index:1}
