.daily-fortune-mount{position:absolute;z-index:190;inset:0}.daily-fortune-backdrop{position:absolute;inset:0;display:grid;place-items:center;padding:18px;background:radial-gradient(circle at 50% 35%,rgba(255,241,188,.18),transparent 31%),linear-gradient(180deg,rgba(10,15,28,.84),rgba(21,8,28,.94));backdrop-filter:blur(9px);overflow:hidden}
.daily-fortune-invitation,.daily-fortune-picker,.daily-fortune-result{position:relative;width:min(100%,430px);color:#fff8e9;text-align:center}
.daily-fortune-invitation{display:grid;justify-items:center;gap:12px;padding:26px 22px 30px;border:1px solid rgba(255,240,194,.3);border-radius:36px;background:radial-gradient(circle at 50% 6%,rgba(245,204,112,.2),transparent 38%),rgba(31,19,43,.82);box-shadow:0 30px 80px #0b0714}
.fortune-icon-halo{width:116px;height:116px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle,#fff7ce 0 2%,#edc659 4%,rgba(236,190,88,.19) 35%,transparent 67%);filter:drop-shadow(0 0 22px rgba(255,215,116,.45));animation:fortune-float 3s ease-in-out infinite}.fortune-icon-halo img{width:88px;height:88px;object-fit:contain}
.daily-fortune-invitation p,.daily-fortune-picker header p{margin:0;color:#e6c779;font:600 10px/1.2 Georgia,serif;letter-spacing:.2em}.daily-fortune-invitation h2,.daily-fortune-picker h2{margin:0;font:700 27px/1.25 "Songti SC","Noto Serif SC",serif}.daily-fortune-invitation span{max-width:280px;color:rgba(255,248,231,.7);font-size:13px;line-height:1.8}.daily-fortune-invitation button,.daily-fortune-result>button{min-width:190px;padding:13px 20px;border:1px solid rgba(255,246,209,.55);border-radius:999px;color:#34223f;background:linear-gradient(135deg,#fff8d9,#e8c66e);box-shadow:0 10px 30px rgba(238,194,95,.24);font-weight:800}
.daily-fortune-picker{height:min(720px,90dvh);display:grid;grid-template-rows:auto 1fr auto auto;align-items:center}.daily-fortune-picker header{padding-top:24px}.daily-fortune-picker header span,.fortune-picker-hint{color:rgba(255,247,229,.58);font-size:11px}.daily-fortune-fan{position:relative;height:410px;touch-action:none;outline:none;perspective:1000px;user-select:none}
.fortune-card-back{position:absolute;left:calc(50% - 71px);bottom:30px;width:142px;height:224px;padding:0;border:1px solid rgba(255,238,189,.6);border-radius:18px;background:#1b1229;box-shadow:0 22px 40px rgba(3,2,8,.55);overflow:hidden;transform-origin:50% 150%;transform:translate3d(var(--fan-x),var(--fan-y),0) rotate(var(--fan-r));z-index:var(--fan-z);transition:transform .3s cubic-bezier(.2,.8,.2,1),filter .3s,opacity .3s}.fortune-card-back img{width:100%;height:100%;object-fit:cover}.fortune-card-back:not(.is-active){filter:brightness(.62) saturate(.8)}.fortune-card-back.is-active{transform:translate3d(var(--fan-x),calc(var(--fan-y) - 25px),40px) rotate(0);filter:brightness(1.08);box-shadow:0 0 0 2px rgba(255,229,154,.42),0 30px 55px rgba(3,2,8,.7),0 0 35px rgba(238,191,105,.2)}
.fortune-fan-marker{margin-top:-32px;color:#f4d27b;text-shadow:0 0 14px #f4d27b}.fortune-picker-hint{margin:8px 0 18px}
.daily-fortune-result{display:grid;justify-items:center;gap:14px}.fortune-reveal-card{width:180px;height:286px;perspective:1200px}.fortune-reveal-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;animation:fortune-flip 1.05s .2s both cubic-bezier(.2,.72,.2,1)}.fortune-reveal-back,.fortune-reveal-front{position:absolute;inset:0;border:1px solid rgba(255,236,171,.65);border-radius:22px;overflow:hidden;backface-visibility:hidden;box-shadow:0 28px 60px rgba(3,2,8,.58)}.fortune-reveal-back img{width:100%;height:100%;object-fit:cover}.fortune-reveal-front{display:grid;place-items:center;align-content:center;gap:8px;padding:20px;color:#3f3049;background:radial-gradient(circle at 50% 34%,#fffdf0,#eadcbb 62%,#c7b488);transform:rotateY(180deg)}.fortune-reveal-front small{font-size:10px;letter-spacing:.16em}.fortune-reveal-front b{font:800 30px/1.1 "Songti SC",serif}.fortune-reveal-front span{color:#c79a2e;font-size:28px}.fortune-reveal-front h2{margin:0;font:700 18px/1.2 "Songti SC",serif}.fortune-message{max-width:310px;margin:0;font:600 16px/1.75 "Songti SC",serif}.fortune-action{display:grid;gap:4px;width:min(100%,330px);padding:13px 16px;border:1px solid rgba(255,239,188,.24);border-radius:18px;background:rgba(255,255,255,.08)}.fortune-action small{color:#d9b95f;font-size:10px;letter-spacing:.1em}.fortune-action strong{font-size:13px}.fortune-petals{position:absolute;left:50%;top:28%;width:1px;height:1px}.fortune-petals i{position:absolute;width:9px;height:18px;border-radius:80% 10% 80% 10%;background:linear-gradient(#fff7d0,#e0af42);animation:petal-burst 1.2s calc(var(--i)*.025s) both;transform:rotate(calc(var(--i)*22.5deg)) translateY(-38px);transform-origin:50% 90px}
@keyframes fortune-flip{0%{transform:translateY(100px) scale(.72) rotateY(0)}38%{transform:translateY(0) scale(1.04) rotateY(0)}100%{transform:translateY(0) scale(1) rotateY(180deg)}}@keyframes petal-burst{0%{opacity:0;transform:rotate(calc(var(--i)*22.5deg)) translateY(0) scale(.2)}30%{opacity:1}100%{opacity:0;transform:rotate(calc(var(--i)*22.5deg)) translateY(-130px) rotate(120deg)}}@keyframes fortune-float{50%{transform:translateY(-8px) rotate(2deg)}}
@media(prefers-reduced-motion:reduce){.fortune-icon-halo,.fortune-reveal-inner,.fortune-petals i{animation:none}.fortune-reveal-inner{transform:rotateY(180deg)}.fortune-card-back{transition:none}}

/* Final illustrated flower-language card faces. */
.fortune-reveal-front{position:absolute;display:block;padding:0;background:#f5edd7}
.fortune-reveal-front>img{width:100%;height:100%;display:block;object-fit:cover}
.fortune-card-inscription{position:absolute;left:14px;right:14px;bottom:22px;display:grid;place-items:center;gap:2px;padding:8px 10px;color:#4b3a38;text-shadow:0 1px rgba(255,255,255,.75)}
.fortune-card-inscription small{font-size:8px;letter-spacing:.16em}
.fortune-card-inscription b{font:800 20px/1.05 "Songti SC","Noto Serif SC",serif}
.fortune-card-inscription h2{margin:0;font:700 12px/1.2 "Songti SC","Noto Serif SC",serif}
