#cat-game{width:min(690px,95vw);background:#fcf7ee}#cat-game [hidden]{display:none!important}#cat-game h2{margin:5px 0}.cat-arena{display:grid;grid-template-columns:1fr 30px 1fr;align-items:center;background:linear-gradient(145deg,#ede0f0,#f7e7d5);border-radius:28px;padding:14px;margin:18px 0;text-align:center;overflow:hidden}.cat-arena section{min-width:0}.cat-arena section>p:first-child{font-size:13px;color:#8e7397;margin:0}.cat-actor{--power:0;width:140px;max-width:90%;margin:auto;transform:scale(calc(1 + var(--power)*.12));transform-origin:bottom center}.cat-actor svg{display:block;width:100%;filter:drop-shadow(0 0 calc(var(--power)*14px) #d4a1dd)}.cat-vs{font-size:27px;color:#af81a6}.cat-bubble{font-size:12px;min-height:36px;line-height:1.5;background:#fffbf0c9;border-radius:14px;padding:8px 4px;margin:6px 0 0}.cat-moves{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.cat-moves button{padding:12px 5px;border:1px solid #e2d4e8;background:#faf4fa}.cat-moves button[aria-pressed=true]{background:#e5d5ec;border-color:#a184b0}.cat-moves strong{display:block;font-size:13px;font-weight:500}.cat-moves small{display:block;font-size:11px;margin-top:5px}.cat-energy{margin-top:16px;border:1px solid #e8dce9;padding:16px;border-radius:22px}.cat-energy .row{font-size:13px}.cat-energy .row button{font-size:12px;padding:10px}.cat-meter{height:9px;background:#e9dfeb;border-radius:10px;overflow:hidden;margin-top:14px}.cat-meter i{display:block;height:100%;width:0;background:linear-gradient(90deg,#c3afd3,#ad799c,#dc9f86);border-radius:inherit}#cat-charge{touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;margin-right:8px}#cat-result{line-height:1.8;min-height:28px;color:#89638c;font-size:14px}.cat-call svg{animation:catCall .45s ease-in-out 5}.cat-mutter svg{animation:catMutter .18s ease-in-out 10}.cat-hiss svg{animation:catHiss .25s ease-in-out 8}.cat-hug svg{animation:catHug 1s ease-in-out 3}@keyframes catCall{50%{transform:translateY(-8px) rotate(-5deg)}}@keyframes catMutter{50%{transform:rotate(6deg)}}@keyframes catHiss{50%{transform:scale(1.12) rotate(-4deg)}}@keyframes catHug{50%{transform:translateY(-3px) rotate(8deg)}}@media(max-width:440px){#cat-game{padding:18px}.cat-moves{grid-template-columns:repeat(2,1fr)}.cat-arena{padding:10px;grid-template-columns:1fr 20px 1fr}.cat-actor{width:110px}}@media(prefers-reduced-motion:reduce){.cat-actor svg{animation:none!important}}

.cat-modes{display:flex;gap:6px;margin-bottom:16px}.cat-modes button{flex:1;padding:10px 5px;font-size:12px;border:1px solid #e0d4e6;background:#fcf8fc}.cat-modes button[aria-pressed=true]{background:#786284;color:white;border-color:#786284}#cat-tap{touch-action:manipulation;user-select:none;min-height:48px;margin:0 8px 8px 0;background:#e8d7ee;color:#684778}#cat-tap:active{transform:scale(.96)}#cat-retry{font-size:12px;margin:0 8px 8px 0}

.battle-clock{text-align:center;font-size:38px;font-variant-numeric:tabular-nums;color:#8a6095;margin:14px 0}#battle-attack{width:100%;padding:18px;margin-top:16px;touch-action:manipulation;user-select:none}#battle-attack:active{transform:scale(.97)}#battle-ready{width:100%;margin-top:12px}#battle-result{text-align:center;padding:22px;background:linear-gradient(135deg,#f3dfeb,#fae8c7);border-radius:24px;animation:battleReveal .65s ease-out}.battle-medal{font-size:44px;color:#b58a44}#battle-result h2{font-size:25px}#battle-result p{margin:10px 0}.battle-winner{animation:battleWin .7s ease-in-out 3}#battle-status{min-height:28px;line-height:1.7;font-size:13px;color:#8a7091}#battle-mic{margin-bottom:12px}@keyframes battleReveal{from{opacity:0;transform:translateY(15px) scale(.9)}to{opacity:1;transform:none}}@keyframes battleWin{50%{transform:translateY(-15px) rotate(7deg)}}@media(prefers-reduced-motion:reduce){#battle-result,.battle-winner{animation:none!important}}

/* Approved Dreamina character art; framed in CSS without modifying the source. */
#cat-game{border:3px solid #302c38;border-radius:26px;background:#fff8e9;box-shadow:8px 8px 0 #302c3833}#cat-game h2{font-family:system-ui,sans-serif;font-weight:800}.cat-arena{border:2px solid #39323c;background:radial-gradient(ellipse at 50% 100%,#f9dba3 0,transparent 70%),#fffdf6;box-shadow:0 5px 0 #39323c12}.cat-actor{position:relative;width:190px;max-width:100%;mix-blend-mode:multiply}.battle-cat-art{display:block;position:relative;overflow:hidden;width:100%;aspect-ratio:1.25;pointer-events:none;isolation:isolate}.battle-cat-art img{position:absolute;display:block;width:220%;max-width:none;height:auto;top:-44%;user-select:none}.battle-cat-white img{left:-8%}.battle-cat-orange img{left:-113%}.battle-hit-effect{position:absolute;right:0;top:0;font-size:32px;color:#ff9859;font-weight:900;pointer-events:none}.cat-actor[data-pose=hiss] .battle-hit-effect:after{content:'≋';display:block;transform:rotate(-10deg)}.cat-actor[data-pose=call] .battle-hit-effect:after{content:'!';color:#ae80c0}.cat-actor[data-pose=mutter] .battle-hit-effect:after{content:'···';color:#806194}.cat-actor[data-pose=hurt] .battle-hit-effect:after{content:'✧';color:#e3915e}.cat-actor[data-pose=hug] .battle-hit-effect:after{content:'♡';color:#d680a6}.cat-actor[data-pose=win] .battle-hit-effect:after{content:'♛';color:#dca22b}.cat-actor[data-pose=lose]{filter:saturate(.55);opacity:.8}.cat-bubble{border:2px solid #3c3440;border-radius:14px;min-height:40px}.cat-vs{font-weight:900;color:#b26c61;font-size:20px}.cat-moves button{border:2px solid #3c3440;box-shadow:0 3px 0 #3c3440;background:#fff8ee;font-weight:600}.cat-moves button[aria-pressed=true]{background:#ffcf85;border-color:#3c3440}.cat-modes button{border:1.5px solid #3c3440}.cat-modes button[aria-pressed=true]{background:#705784;border-color:#3c3440}#battle-attack{background:#f2b66b;color:#392f39;font-weight:800;border:2px solid #392f39;box-shadow:0 4px 0 #392f39}#battle-attack:active{box-shadow:0 1px 0 #392f39;transform:translateY(3px)}#battle-result{border:2px solid #392f39;background:#ffe6a7}.battle-clock{font-weight:900;color:#654b77;text-shadow:2px 2px #ead5eb}@media(max-width:440px){.cat-actor{width:145px}.battle-hit-effect{font-size:25px}}

/* XMAI six-pose sheets, 3 columns x 2 rows. */
.battle-cat-sheet{aspect-ratio:2528 / 2544}.battle-cat-sheet img{width:300%;height:200%;top:0;left:0;object-fit:fill}.cat-actor[data-pose=call] .battle-cat-sheet img,.cat-actor[data-pose=mutter] .battle-cat-sheet img{left:-100%}.cat-actor[data-pose=hiss] .battle-cat-sheet img{left:-200%}.cat-actor[data-pose=hurt] .battle-cat-sheet img{top:-100%;left:0}.cat-actor[data-pose=win] .battle-cat-sheet img,.cat-actor[data-pose=hug] .battle-cat-sheet img{top:-100%;left:-100%}.cat-actor[data-pose=lose] .battle-cat-sheet img{top:-100%;left:-200%}.cat-actor[data-pose=hiss] .battle-cat-white{transform:scaleX(-1)}.cat-actor:not([data-pose]) .battle-cat-orange,.cat-actor[data-pose=idle] .battle-cat-orange{transform:scaleX(-1)}

.battle-cat-sheet{aspect-ratio:1}.battle-cat-sheet svg{display:block;width:100%;height:100%;filter:none}.cat-actor .battle-cat-sheet svg{animation:none!important}
