/* Franella v3.15: warm gold, short anticipation, space to read. */
#deck .card{transition:transform .42s cubic-bezier(.22,.8,.25,1),filter .28s,box-shadow .28s}
#deck .card::before{content:'';position:absolute;inset:3px;pointer-events:none;border:1px solid #f4d59c;border-radius:9px;box-shadow:0 0 12px #e9b76d55,inset 0 0 9px #edc38122;opacity:0;transition:opacity .25s}
#deck .card::after{content:'';position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:linear-gradient(110deg,transparent 30%,#fff2c52b 47%,#ffe2a26b 50%,transparent 67%);background-size:300% 100%;background-position:100% 0;opacity:0}
#deck .card.motion-neighbour{transform:translateX(calc(var(--x) + var(--motion-nudge))) translateY(var(--y)) rotate(var(--r))}
#deck .card.motion-attuned,#deck .card:focus-visible{transform:translateX(var(--x)) translateY(calc(var(--y) - 22px)) rotate(var(--r)) scale(1.04);z-index:20;filter:brightness(1.07)}
#deck .card.motion-attuned::before,#deck .card:focus-visible::before{opacity:.8}
#deck .card.motion-attuned::after{opacity:1;animation:franella-edge-light .75s ease-out both}
#deck .card.chosen{animation:franella-card-lift .52s cubic-bezier(.22,.8,.25,1) both;z-index:30;filter:brightness(1.09)}
#deck .card.chosen::before{opacity:1}
#deck .card.chosen::after{opacity:1;animation:franella-edge-light .5s ease-out both}
#deck.shuffling .card{animation:none;transform:translateX(0) translateY(8px) rotate(0deg)}
.franella-card-trail{position:fixed;z-index:40;width:0;height:0;pointer-events:none}
.franella-card-trail i{position:absolute;width:3px;height:3px;background:#ffe6b0;border-radius:50%;box-shadow:0 0 7px #f4ba64;opacity:0;animation:franella-spark-rise .48s ease-out both}
#reveal[open].motion-arrival .content{animation:franella-reading-arrive .42s ease-out both}
#reveal.motion-art-wait .reading-symbol{opacity:0}
#reveal[open].motion-art-enter .reading-symbol{animation:franella-art-arrive .7s ease-out both}
@keyframes franella-edge-light{from{background-position:100% 0}to{background-position:0% 0;opacity:0}}
@keyframes franella-card-lift{0%{transform:translateX(var(--x)) translateY(calc(var(--y) - 12px)) rotate(var(--r)) scale(1.03)}70%,100%{transform:translateX(calc(var(--x) * .35)) translateY(-50px) rotate(-2deg) scale(1.09)}}
@keyframes franella-spark-rise{0%{opacity:0;transform:translate(calc(var(--spark-x) * .35),5px) scale(.7)}25%{opacity:.85}100%{opacity:0;transform:translate(var(--spark-x),var(--spark-rise)) scale(.3)}}
@keyframes franella-reading-arrive{from{opacity:.6;transform:translateY(7px)}to{opacity:1;transform:none}}
@keyframes franella-art-arrive{from{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:none}}
@media(hover:none){#deck .card:hover{transform:translateX(var(--x)) translateY(var(--y)) rotate(var(--r));z-index:var(--z);filter:none}#deck .card.motion-attuned,#deck .card:focus-visible{transform:translateX(var(--x)) translateY(calc(var(--y) - 12px)) rotate(var(--r)) scale(1.025);z-index:20;filter:brightness(1.06)}#deck .card.chosen{z-index:30;filter:brightness(1.09)}}
@media(prefers-reduced-motion:reduce){#deck .card,#deck .card::before{transition:none!important}#deck .card-inner{animation:none!important}#deck .card::after,.franella-card-trail{display:none!important}#deck .card.chosen{animation:none!important;transform:translateX(var(--x)) translateY(var(--y)) rotate(var(--r))!important}#reveal.motion-art-wait .reading-symbol{opacity:1}#reveal[open].motion-arrival .content,#reveal[open].motion-art-enter .reading-symbol{animation:none!important}}
