
/* V50: separate high-detail bare image; exact painterly fragments from original master. */
.v50-control-tray{margin:12px 0;padding:12px 15px;border-radius:20px;border:1px solid #eac69b80;background:linear-gradient(135deg,#3a264b,#593667);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.v50-control-label{font:700 clamp(1rem,3vw,1.25rem) Georgia,serif;color:#ffe8be}
.v50-buttons{display:flex;gap:8px;flex-wrap:wrap}
.v50-buttons button,.v50-arrows button{border:1px solid #ffdeb77a;color:#fff0df;border-radius:14px;background:#513458;padding:10px 14px;min-height:42px;font-weight:800;cursor:pointer}
.v50-buttons button[aria-pressed="true"]{background:linear-gradient(150deg,#ffe5b9,#e4b273);color:#3e2850;border-color:#fff1d7;box-shadow:0 0 15px #e5b36f33}
.v50-status{width:100%;font-size:.78rem;color:#e9d5e7}
.magic-scene{position:relative;overflow:hidden}
#magicSceneBase{display:block;width:100%;height:100%;object-fit:cover}
.v50-stage{position:absolute;inset:0;pointer-events:none;z-index:3}
.v50-piece{position:absolute;opacity:0;object-fit:fill;display:block;transition:opacity .65s ease-in-out;pointer-events:none}
.v50-piece.on{opacity:1}
.v50-master{position:absolute;inset:0;display:block;width:100%;height:100%;opacity:0;transition:opacity .82s ease-in-out;object-fit:fill;pointer-events:none;z-index:2}
.v50-master.on{opacity:1}
.v50-shoot{position:absolute;top:8%;left:-30%;width:26%;height:3px;z-index:50;pointer-events:none;background:linear-gradient(90deg,transparent,#ffdba7,#fffbe6);box-shadow:0 0 16px #fff3c7;transform:rotate(-20deg);animation:v50fly 1.2s ease-out forwards}
.v50-shoot:after{content:'✦';position:absolute;right:0;top:-13px;font-size:22px;color:#fffae2}
@keyframes v50fly{0%{opacity:0;left:-30%;top:5%}12%{opacity:1}100%{opacity:0;left:100%;top:70%}}
.v50-carousel-panel{margin:15px auto 24px;padding:14px;border-radius:22px;background:linear-gradient(180deg,#452851,#33213e);border:1px solid #f4d5ab4d;box-shadow:0 13px 28px #10091738}
.v50-carousel-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 11px}
.v50-carousel-head h2{font:700 clamp(1.1rem,4vw,1.55rem) Georgia,serif;color:#ffe2b0;margin:0}
.v50-arrows{display:flex;gap:6px}.v50-arrows button{padding:5px 12px;font-size:22px}
.v50-carousel{display:flex;overflow-x:auto;gap:10px;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:3px 1px 11px}
.v50-carousel button{flex:0 0 clamp(115px,30vw,150px);scroll-snap-align:start;background:#543360;border:1px solid #ffe0b34d;color:#ffebd4;padding:8px;border-radius:17px;cursor:pointer;display:flex;flex-direction:column;gap:8px;align-items:stretch}
.v50-carousel button[aria-pressed="true"]{border-color:#ffdd92;box-shadow:inset 0 0 0 1px #ffdd9288}
.v50-thumb{display:flex;align-items:center;justify-content:center;width:100%;height:105px;border-radius:12px;background:#281a37;overflow:hidden}
.v50-thumb img{display:block;max-height:100%;max-width:100%;object-fit:contain}
.v50-cost{text-align:center;font-weight:800;border-radius:999px;padding:6px 10px;background:#775078;color:#fff0c7}
.v50-car-btn[disabled]{opacity:.7}
/* hide old painted overlay and preview UI without touching live interactions */
#magicScene .v45-painting-layers,#magicScene .v43-fragments,#magicScene .v41-art-layers,#magicScene .v40-cozy-zones,#magicScene .v41-shooting-star{display:none!important}
#v47PuzzleProof,#v40CozyReveal,#v46RoomCarousel{display:none!important}
@media(max-width:600px){.v50-buttons{width:100%}.v50-buttons button{flex:1 1 28%;padding:10px 6px}.v50-carousel-panel{padding:12px}.v50-status{line-height:1.4}}
@media(prefers-reduced-motion:reduce){.v50-piece,.v50-master{transition:none}.v50-shoot{display:none}}
