.painted-cover{overflow:hidden;isolation:isolate;border-radius:3px 6px 0 0;contain:paint;background:#28312c!important}
.painted-scene{display:block;width:100%;height:100%;transform:scale(1.005);transition:transform 1.1s cubic-bezier(.2,.65,.3,1),filter .8s ease;transform-origin:85% 45%}
.game-card:is(:hover,:focus-visible) .painted-scene{transform:scale(1.035);filter:brightness(1.06)}
.game-card:is(:hover,:focus-visible){transform:translateY(-3px) rotate(0)!important}
.game-card .card-copy{z-index:3}.game-card .game-number{z-index:2}
.profile-form{display:grid;gap:14px;margin:24px 0;text-align:left}.profile-form label{display:grid;gap:7px;font-weight:800}.profile-form input{width:100%;min-width:0;border:2px solid #66513d;border-radius:7px;background:#f0dfb9;color:#332b25;padding:12px}.profile-form input[readonly]{opacity:.7}.profile-form small{line-height:1.5;color:#d7c6a6}.profile-feedback{min-height:24px}
@media(prefers-reduced-motion:reduce){.painted-scene{transition:none}.game-card:is(:hover,:focus-visible),.game-card:is(:hover,:focus-visible) .painted-scene{transform:none!important}}

/* Keep enough width for the character, anchored on the right of each painting. */
.game-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
.game-card{height:460px}
.game-card .painted-cover,.game-card-slot[data-expansion="true"] .painted-cover{bottom:181px}
.game-card .card-shade{bottom:181px;pointer-events:none}
.game-card .card-copy{min-height:181px}
.game-card-slot[data-maintenance="true"] .game-card{opacity:1;cursor:not-allowed;transform:rotate(var(--tilt))!important;box-shadow:6px 9px #18201eb0}
.game-card-slot[data-maintenance="true"] :is(.painted-cover,.card-copy,.game-number){filter:grayscale(1) brightness(.55)}
.game-card-slot[data-maintenance="true"] .painted-scene{transform:none!important;filter:none!important}
.maintenance-overlay{position:absolute;inset:0;overflow:hidden;z-index:6;border-radius:4px;pointer-events:none}
.maintenance-tape{position:absolute;left:-25%;width:150%;padding:10px 0;border-block:5px solid transparent;border-image:repeating-linear-gradient(125deg,#29251f 0 12px,#f2c34c 12px 24px) 5;background:#edc252;color:#302b21;text-align:center;font-weight:1000;font-size:12px;letter-spacing:1.3px;white-space:nowrap;box-shadow:0 4px 9px #0007}
.tape-one{top:34%;transform:rotate(-18deg)}.tape-two{top:48%;transform:rotate(16deg)}
.maintenance-label{position:absolute;bottom:18px;left:12px;right:12px;text-align:center;background:#302c26;color:#e5c974;border:1px solid #9a8044;padding:8px;font-size:12px;font-weight:900;letter-spacing:2px}
.royal-projectile{position:absolute;width:42px;height:42px;z-index:12;pointer-events:none;filter:drop-shadow(0 0 7px #ffe3a5)}
.royal-projectile .paint-sprite{width:100%;height:100%;display:block}
.royal-target{position:absolute;border:2px solid #f7d8a0;border-radius:50%;pointer-events:none;box-shadow:0 0 12px #edacb6,inset 0 0 16px #ffdca06b;z-index:11}
.theme-princess .field-cell.royal-upgrade{animation:royal-upgrade .75s ease-out}
.theme-princess .position-multi{background:#513548e8;border:1px solid #dfb86b;border-radius:5px;color:#fff0bd;text-shadow:0 2px #36252c;padding:1px 6px}
.royal-fs-greeting .paint-sprite{animation:royal-greeting .95s ease-in-out}
@keyframes royal-upgrade{0%{box-shadow:inset 0 0 0 2px #ffeacb;background:#f2b5ce77}45%{box-shadow:inset 0 0 25px #e8aa5ccc;background:#fff0be55}100%{box-shadow:inset 0 0 0 0 transparent}}
@keyframes royal-greeting{0%,100%{transform:translateY(0) rotate(0)}35%{transform:translateY(-7px) rotate(-5deg)}65%{transform:translateY(-3px) rotate(4deg)}}
@media(prefers-reduced-motion:reduce){.royal-fs-greeting .paint-sprite,.theme-princess .field-cell.royal-upgrade{animation:none}}
.game-entry{position:absolute;inset:0;z-index:30;overflow:hidden;background:#211e24;display:grid;place-items:center;min-height:440px}
.presenter-credit{display:grid;gap:25px;text-align:center;padding:30px;animation:credit-reveal 1.5s ease-out both}.presenter-credit>span{font-size:clamp(13px,2vw,22px);letter-spacing:3px;color:#e6cfad}.presenter-credit strong{font-family:'Bangers',Impact,sans-serif;font-size:clamp(40px,7vw,100px);font-weight:400;color:#f1cc84;letter-spacing:5px;text-shadow:3px 4px #46332b}.presenter-credit i{color:#b3a28f}
.entry-poster-art,.entry-poster-shade{position:absolute;inset:0}.entry-poster-art svg{width:100%;height:100%;display:block;animation:poster-drift 9s ease-in-out infinite alternate;transform-origin:80% center}.entry-poster-shade{background:linear-gradient(90deg,#241d29f2 0%,#342830bd 38%,#24252c15 80%)}
.entry-poster-copy{position:relative;justify-self:start;margin:5%;width:min(540px,80%);color:#f7e5be;text-shadow:2px 3px #282025}.entry-poster-copy h2{font-family:'Bangers',Impact,sans-serif;font-size:clamp(38px,6vw,88px);font-weight:400;line-height:1.05;margin:15px 0}.entry-poster-copy>span{letter-spacing:2px;font-weight:900;font-size:12px}.entry-poster-copy p{font-family:'Kalam',cursive;font-size:21px}.entry-back{position:absolute;top:15px;left:15px;padding:10px 18px;z-index:3;background:#342830d9;border:1px solid #c1a67b;border-radius:6px}.entry-symbols{display:flex;gap:30px;margin:25px 0}.entry-symbols>span{display:grid;justify-items:center;gap:6px;font-size:12px}.entry-symbols .paint-sprite{width:80px;height:80px;display:block}.entry-continue{animation:continue-breathe 2.7s ease-in-out infinite;min-width:220px}.entry-continue>span{display:inline-block;margin-left:16px}
.theme-princess .symbol{padding:2px}.theme-princess .symbol .paint-sprite{width:min(98%,calc(var(--reel-h)/5 * .96 * var(--ratio)));max-height:96%}.theme-princess .symbol .rank{font-size:calc(var(--reel-h)/5 * .9)}
.royal-wand{width:96%;height:96%;filter:drop-shadow(1px 3px 1px #28202788)}.theme-princess .symbol-caption{bottom:2px;font-size:clamp(9px,1.3vw,17px);padding:2px 7px;border:2px solid #42312c;border-radius:4px;background:#ebcf87;color:#32252b;text-shadow:none;font-weight:1000}.theme-princess .scatter .symbol-caption{background:#eeadc5}.theme-princess .wild .symbol-caption{background:#f4d56b}

.theme-princess .symbol.royal-removed{opacity:0;transition:opacity .18s}.theme-princess .royal-cleared .position-multi{position:absolute;left:50%;top:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);font-size:clamp(22px,3vw,46px);padding:4px 12px;box-shadow:0 0 22px #d79c6555;transition:font-size .25s}
@keyframes credit-reveal{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes poster-drift{to{transform:scale(1.025)}}@keyframes continue-breathe{50%{box-shadow:0 0 20px #efd19b55;filter:brightness(1.09)}}
@media(max-width:600px){.entry-poster-copy{align-self:end;margin:70px 7% 35px}.entry-poster-shade{background:linear-gradient(0deg,#241d29f2,#241d2966)}.entry-symbols{gap:18px;margin:15px 0}.entry-symbols .paint-sprite{width:55px;height:55px}}
@media(prefers-reduced-motion:reduce){.presenter-credit,.entry-poster-art svg,.entry-continue{animation:none}.theme-princess .royal-cleared .position-multi{transition:none}}
/* Entry stays inside the same window occupied by the reels. */
.reels-surface .game-entry{inset:0;min-height:0;border-radius:4px;z-index:25}
.reels-surface .presenter-credit{gap:18px;padding:20px}.reels-surface .presenter-credit strong{font-size:clamp(30px,6vw,76px)}.reels-surface .presenter-credit>span{font-size:clamp(11px,1.8vw,20px)}
.reels-surface .entry-poster-copy{margin:40px 5% 20px;max-width:65%;align-self:center}.reels-surface .entry-poster-copy h2{font-size:clamp(28px,5vw,62px)}.reels-surface .entry-poster-copy p{font-size:16px}.reels-surface .entry-symbols{margin:15px 0;gap:22px}.reels-surface .entry-symbols .paint-sprite{width:52px;height:52px}.reels-surface .entry-continue{font-size:18px;padding:12px 24px;min-width:180px}
.fairy-hit{position:absolute;font-size:clamp(28px,4vw,68px);line-height:1;color:#ffe3aa;text-shadow:0 0 10px #f49bc9,0 0 22px #e8b8ed;pointer-events:none;z-index:12}
.royal-bonus-upgrades{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;padding:7px}.royal-bonus-upgrades[hidden]{display:none}.royal-bonus-upgrades span{background:#583a50;border:1px solid #cda269;color:#ffe5bb;border-radius:6px;padding:4px 9px;font-size:12px}
.princess-paytable{width:100%;border-collapse:collapse}.princess-paytable td,.princess-paytable th{padding:7px;text-align:right}.princess-paytable td:first-child{text-align:left}.rules-symbol{display:inline-block;width:38px;height:38px;vertical-align:middle;margin-right:8px}.rules-symbol .paint-sprite{display:block;width:100%;height:100%}
@media(max-width:600px){.reels-surface .entry-symbols{display:none}.reels-surface .entry-poster-copy{margin:35px 5% 15px;max-width:85%}.reels-surface .entry-poster-copy>span{font-size:10px}.reels-surface .entry-poster-copy h2{margin:8px 0}.reels-surface .entry-poster-copy p{font-size:14px;margin-bottom:12px}.reels-surface .entry-back{font-size:10px;padding:5px 9px;top:7px;left:7px}.princess-paytable td,.princess-paytable th{padding:4px;font-size:12px}}
