.ato-widget{--ato-accent:#66516b;max-width:680px;margin:1.5rem auto;color:inherit;font:inherit;text-align:center}.ato-label{display:block;font-weight:600;margin-bottom:.5rem}.ato-select-wrap{position:relative;width:min(100%,420px);margin:0 auto 1.25rem}.ato-select-wrap:after{content:'⌄';pointer-events:none;position:absolute;right:1rem;top:50%;transform:translateY(-55%);font-size:1.5rem}.ato-select{display:block;appearance:none;width:100%;min-height:48px;padding:.65rem 2.5rem .65rem 1rem;border:1px solid #999;border-radius:6px;background:var(--wp--preset--color--base,#fff);color:inherit;font:inherit;cursor:pointer}.ato-stage{display:flex;flex-direction:column;align-items:center;gap:1.25rem;min-height:180px}.ato-placeholder{padding:3rem 1rem;opacity:.8}.ato-card{width:min(75vw,290px);aspect-ratio:2/3;perspective:1100px}.ato-card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform 1s cubic-bezier(.2,.75,.2,1);border-radius:9px;box-shadow:0 10px 30px #0002}.ato-revealed .ato-card-inner{transform:rotateY(180deg)}.ato-card-side{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden;border-radius:9px;background:#eae4da;display:flex;align-items:center;justify-content:center}.ato-card-face{transform:rotateY(180deg)}.ato-card-side img{width:100%;height:100%;object-fit:contain}.ato-details{max-width:580px;opacity:0;transform:translateY(8px);transition:opacity .5s ease .65s,transform .5s ease .65s}.ato-revealed .ato-details{opacity:1;transform:none}.ato-deck{font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;opacity:.7}.ato-title{margin:.4rem 0 1rem}.ato-meaning{text-align:left;line-height:1.65}.ato-actions{margin-top:1.4rem}.ato-button,.ato-buy,.ato-app{display:inline-block;min-height:44px;padding:.8rem 1.5rem;border:0;border-radius:6px;background:var(--ato-accent);color:#fff!important;text-decoration:none;cursor:pointer;font:inherit}.ato-buy,.ato-app{margin:.7rem .3rem 0}.ato-app{background:transparent;color:var(--ato-accent)!important;border:1px solid var(--ato-accent)}.ato-button:disabled{opacity:.65;cursor:wait}.ato-message{margin-top:.8rem}.ato-button:focus-visible,.ato-buy:focus-visible,.ato-app:focus-visible,.ato-select:focus-visible{outline:3px solid currentColor;outline-offset:3px}@media(max-width:600px){.ato-widget{padding:0 .75rem}.ato-card{width:min(75vw,260px)}.ato-meaning{font-size:1rem}}@media(prefers-reduced-motion:reduce){.ato-card-inner,.ato-details{transition:none!important;transform:none!important}}
/* v0.3: full-width card stage, soft lavender background and interactive reveal */
.ato-stage{width:100%;background:#F0EAEE;border-radius:8px;padding:1.5rem 1rem;box-sizing:border-box;min-height:360px}
.ato-card{display:block;padding:0;border:0;background:transparent;cursor:pointer;color:inherit;flex-shrink:0}
.ato-card:focus-visible{outline:3px solid var(--ato-accent);outline-offset:5px}
.ato-card-side{background:#F0EAEE}
.ato-card-inner{display:block}
.ato-card-side{display:flex}
.ato-hint{font-size:.9rem;opacity:.75}
.ato-details{width:100%;max-width:580px;box-sizing:border-box}
.ato-shuffling{animation:ato-shuffle .65s ease-in-out}
@keyframes ato-shuffle{0%,100%{transform:translateX(0) rotate(0)}20%{transform:translateX(-13px) rotate(-5deg)}45%{transform:translateX(13px) rotate(5deg)}70%{transform:translateX(-7px) rotate(-2deg)}}
@media(prefers-reduced-motion:reduce){.ato-shuffling{animation:none}.ato-revealed .ato-card-inner{transform:none}.ato-revealed .ato-card-back{display:none}.ato-revealed .ato-card-face{transform:none}.ato-details{transition:none}}
/* v0.4: let the page theme own the reading area's background */
.ato-stage{background:transparent;padding:0;min-height:340px}
.ato-card-side{background:transparent}
.ato-shuffle-pack{position:relative;width:min(75vw,290px);aspect-ratio:2/3;flex-shrink:0;isolation:isolate}
.ato-shuffle-pack .ato-card{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;animation-duration:1.5s;animation-timing-function:ease-in-out;animation-fill-mode:both}
.ato-shuffle-card-1{animation-name:ato-mix-left}
.ato-shuffle-card-2{animation-name:ato-mix-right}
.ato-shuffle-card-3{animation-name:ato-mix-centre}
@keyframes ato-mix-left{0%,100%{transform:translate(0,0) rotate(0)}20%{transform:translate(-46%,-5%) rotate(-14deg)}45%{transform:translate(20%,2%) rotate(8deg)}68%{transform:translate(-36%,0) rotate(-11deg)}85%{transform:translate(9%,0) rotate(3deg)}}
@keyframes ato-mix-right{0%,100%{transform:translate(0,0) rotate(0)}20%{transform:translate(42%,3%) rotate(13deg)}45%{transform:translate(-25%,-3%) rotate(-9deg)}68%{transform:translate(37%,2%) rotate(12deg)}85%{transform:translate(-10%,0) rotate(-4deg)}}
@keyframes ato-mix-centre{0%,100%{transform:translate(0,0) rotate(0)}25%{transform:translate(0,-12%) rotate(2deg)}50%{transform:translate(0,8%) rotate(-3deg)}75%{transform:translate(0,-5%) rotate(2deg)}}
@media(max-width:600px){.ato-shuffle-pack{width:min(75vw,260px)}}
@media(prefers-reduced-motion:reduce){.ato-shuffle-pack .ato-card{animation:none!important}}

/* v0.5: place primary action beside deck selector; subsequent draws below meaning. */
.ato-widget .ato-actions{margin:0 auto 1.5rem;text-align:center}
.ato-widget .ato-stage .ato-actions{margin:1.25rem auto 0}
.ato-widget{scroll-margin-top:90px}
.ato-widget .ato-stage .ato-details{max-width:580px}
.ato-widget:not(.ato-revealed) .ato-details{visibility:hidden;position:absolute;pointer-events:none}

.ato-again{display:block;margin:1.5rem auto 0}
