/* Shared rhythm; original supplied images are contained, never stretched. */
.kb-ritual-sound{display:flex;justify-content:flex-end;margin:6px 0 18px}.kb-ritual-sound button{border:1px solid #ebc7d4;border-radius:99px;background:#fff7fa;color:#a91f52;font:600 14px/1.4 system-ui,sans-serif;padding:10px 16px;min-height:44px;cursor:pointer}.kb-ritual-sound button:hover{border-color:#079a9f;color:#125a61}.kb-ritual-sound button:focus-visible{outline:3px solid #079a9f;outline-offset:3px}
.oracle20-fan{height:230px;isolation:isolate;overflow:hidden}.oracle20-fan img{width:108px;height:180px;object-fit:contain;left:calc(50% - 54px);top:20px;animation:none;transform-origin:center 120%;transform:translateX(calc(var(--i)*14px)) rotate(calc(var(--i)*7deg));filter:drop-shadow(0 4px 3px #58213e24)}.oracle20-fan.is-mixing img{animation:kb26-mix 1.55s ease-in-out both}
@keyframes kb26-mix{0%,100%{transform:translateX(calc(var(--i)*14px)) rotate(calc(var(--i)*7deg))}20%{transform:translateX(0) rotate(0)}42%{transform:translate(calc(var(--side)*80px),calc(var(--i)*-4px)) rotate(calc(var(--side)*17deg))}65%{transform:translate(calc(var(--side)*-35px),-12px) rotate(calc(var(--side)*-11deg))}80%{transform:translateX(0) rotate(0)}}
.oracle20-choices{gap:12px;padding:12px 4px 20px;align-items:start}.oracle20-card{width:min(128px,calc((100% - 36px)/4));aspect-ratio:3/4;perspective:900px;animation:kb26-deal .4s both;animation-delay:calc(var(--deal-order)*75ms)}.oracle20-card:focus-visible{outline:3px solid #079a9f;outline-offset:5px;border-radius:10px}.oracle20-turn{position:relative;width:100%;height:100%;display:block;transform-style:preserve-3d;transition:transform .58s cubic-bezier(.2,.65,.3,1)}.oracle20-back,.oracle20-front{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:10px;background:#fffaf3;box-shadow:0 3px 8px #6b27421c;overflow:hidden}.oracle20-front{transform:rotateY(180deg)}.oracle20-card img{width:100%;height:100%;object-fit:contain;animation:none!important}.oracle20-card.turned .oracle20-turn{transform:rotateY(180deg)}.oracle20-card.turned:after{top:40%;right:40%;animation:kb26-glow .7s .2s both;color:#d9a126;font-size:25px}.oracle20-card:disabled{opacity:1;cursor:default}.oracle20-entry{display:grid;grid-template-columns:140px 1fr;gap:24px;align-items:center}.oracle20-entry>img{width:100%;height:190px;object-fit:contain}.oracle20-entry small{color:#125a61}.oracle20-readings article{animation:kb26-reading .45s both}.oracle20-readings .oracle20-story{background:linear-gradient(110deg,#fff0f5,#fffaf3);border-color:#e6b8c9}.page-petit-lenormand .oracle20-hero .oracle20-trio{max-width:470px;width:100%}.page-petit-lenormand .oracle20-hero .oracle20-trio img{max-width:148px;height:190px;object-fit:contain}
@keyframes kb26-deal{from{opacity:0;transform:translate(-20px,-10px) rotate(-5deg)}to{opacity:1;transform:none}}
@keyframes kb26-reading{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
@keyframes kb26-glow{0%,100%{opacity:0;transform:scale(.7)}45%{opacity:1;transform:scale(1.8);filter:drop-shadow(0 0 9px #ffcd52)}}
@media(max-width:690px){.oracle20-card{width:min(120px,calc((100% - 24px)/3))}.oracle20-entry{grid-template-columns:1fr;gap:12px}.oracle20-entry>img{width:140px;height:185px;margin:auto}.page-petit-lenormand .oracle20-hero .oracle20-trio{max-width:360px}.page-petit-lenormand .oracle20-hero .oracle20-trio img{height:145px}.oracle20-readings article{padding:18px}.oracle20-fan img{width:90px;height:150px;left:calc(50% - 45px)}.oracle20-fan{height:200px}}
@media(prefers-reduced-motion:reduce){.oracle20-fan.is-mixing img,.oracle20-card,.oracle20-card.turned:after,.oracle20-readings article{animation:none!important}.oracle20-turn{transition:none}}
/* Nineteen-card Persian selection; consistent frames preserve the supplied art. */
.oracle20-edition{font:14px/1.6 system-ui,sans-serif;color:#64565d;margin:0 0 22px}.persan19 .oracle20-card{width:min(165px,calc((100% - 36px)/4));aspect-ratio:4/5}.persan19 .oracle20-entry{grid-template-columns:180px 1fr}.persan19 .oracle20-entry>img{height:230px}.persan19 .oracle20-story p+p{margin-top:1.15em}.persan19 .oracle20-controls select:focus-visible,.persan19 .oracle20-controls input:focus-visible{outline:3px solid #079a9f;outline-offset:2px}
@media(max-width:690px){.persan19 .oracle20-card{width:min(145px,calc((100% - 12px)/2))}.persan19 .oracle20-entry{grid-template-columns:1fr}.persan19 .oracle20-entry>img{width:175px;height:225px}}
