/* Gelli Belle Playhouse V48: spinning portraits, spacious reveals and shared reward. */
.gb45-root .gb45-shell{width:100%;max-width:none}
.gb45-root .gb45-reveal{grid-template-columns:minmax(0,46%) minmax(0,54%);width:100%;min-height:560px;background:#fff9f0}
.gb45-root .gb45-reveal .gb45-world{min-width:0;min-height:560px;background:radial-gradient(circle at 50% 40%,#fff8e6 0%,var(--world) 75%,#f8e6ca 130%)}
.gb45-root .gb45-world:before{display:none}
.gb45-root .gb45-character-portrait{display:flex;justify-content:center;align-items:center;width:94%;max-width:100%;height:min(480px,53vw);min-height:320px}
.gb45-root .gb45-character-portrait img{width:100%;height:100%;object-fit:contain;mix-blend-mode:normal;mask-image:none;object-position:center}
.gb45-root .gb45-reveal-copy{padding:22px clamp(18px,3vw,34px);max-width:none;width:100%;align-self:center;text-align:left}
.gb45-root .gb45-reveal-copy h3{font-size:clamp(27px,3vw,40px)}
.gb45-root .gb45-reveal-copy .gb45-encounter-title{font-size:16px;margin-bottom:8px}
.gb45-root .gb46-bio,.gb45-root .gb46-fact,.gb45-root .gb46-quote{margin:8px 0;padding:10px 14px}
.gb45-root .gb46-bio p,.gb45-root .gb46-fact p{font-size:13px;line-height:1.5}
.gb45-root .gb46-quote p{font-size:15px}
.gb45-root .gb45-world-name{bottom:14px;left:18px;right:18px}
.gb46-spin-stage{padding:20px 18px 28px}
.gb46-wheel-frame{width:min(520px,90vw);margin:12px auto}
.gb46-wheel{inset:6%;border-width:6px;background:radial-gradient(circle,#fffde7 0 11%,#f3d8a2 12% 16%,#fff5d7 17% 73%,#e1a965 77%,#b47940 100%)}
.gb46-wheel-friend{width:22%;height:22%;padding:0;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-172%);background:#fffdf5;border:2px solid #efd7b3;box-shadow:0 3px 8px #163f4938}
.gb46-wheel-friend img{height:85%;width:100%;object-fit:cover;object-position:center 24%;border-radius:42% 42% 22% 22%}
.gb46-wheel-friend small{font-size:clamp(7px,.9vw,10px);line-height:1.1;padding:0 2px}
.gb46-wheel-core{inset:42%;font-size:20px}
.gb46-wheel-core small{font-size:8px}
.gb48-reward-ribbon{margin:15px auto;padding:14px;border:1px solid #d29d59;background:#fff1ce;border-radius:17px;color:#5d4a29;font:700 17px/1.5 'Fredoka',sans-serif}
.gb48-reward-ribbon button{background:#ffce75;color:#24445c;border:1px solid #cc9958;border-radius:999px;padding:11px 15px;margin-left:10px;cursor:pointer}
.gb48-reward-note{background:#fff1ce;border:1px solid #d4ac69;color:#62492c;border-radius:16px;padding:12px 15px;margin:13px auto;text-align:center;font:600 14px/1.6 'Fredoka',sans-serif;max-width:750px}
.gb48-reward-note strong{display:block;color:#244962;font-size:17px}
.gb48-card-reward{border-color:#dfb06d!important;box-shadow:0 5px 20px #c78a3940!important}
.gb48-memory-reveal img[src$="david-drummer-memory-v48.webp"],.gb48-memory-reveal img[src$="jim-jellyfish-memory-v48.webp"]{width:100%;height:100%;padding:2px;object-fit:contain;object-position:center}
.memory-board .memory-tile .tile-front img[src$="david-drummer-memory-v48.webp"],.memory-board .memory-tile .tile-front img[src$="jim-jellyfish-memory-v48.webp"]{width:100%;height:100%;padding:2px;object-fit:contain;object-position:center}
@media(max-width:750px){.gb45-root .gb45-reveal{grid-template-columns:1fr}.gb45-root .gb45-reveal .gb45-world{min-height:300px}.gb45-root .gb45-character-portrait{height:300px;min-height:0;width:100%}.gb45-root .gb45-reveal-copy{text-align:left;padding:18px 20px 25px}.gb46-wheel-frame{width:min(430px,91vw)}}
@media(max-width:430px){.gb45-root .gb45-reveal .gb45-world{min-height:255px}.gb45-root .gb45-character-portrait{height:250px}.gb46-wheel-frame{width:94%;max-width:345px}.gb46-wheel-friend{width:24%;height:24%;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-158%)}.gb46-wheel-friend img{height:83%}.gb48-reward-ribbon button{display:block;margin:10px auto 0}}
@media(prefers-reduced-motion:reduce){.gb46-wheel{transition:none!important}}
/* Critical V47 collision: gb45-reveal was applied to BOTH shell and section.
   Grid belongs only to inner section; prevent blank sidebar on outer shell. */
.gb45-root .gb45-shell.gb45-reveal{display:block!important;grid-template-columns:none!important;background:#fffaf0!important}
.gb45-root .gb45-shell.gb45-reveal>.gb45-utility{display:flex;width:100%}
.gb45-root .gb45-shell.gb45-reveal>section.gb45-reveal{display:grid;width:100%;grid-template-columns:minmax(0,46%) minmax(0,54%)}
@media(max-width:750px){.gb45-root .gb45-shell.gb45-reveal>section.gb45-reveal{grid-template-columns:minmax(0,1fr)}}
