/* Bright Studio 0.3. Game objects use native, bounded motion; the site stays light. */
.studio-v03{background:radial-gradient(ellipse at 50% 20%,#fff 10%,#f3efff 100%);border-color:#e2dcf2;box-shadow:inset 0 1px 0 white,0 18px 45px #45397808}
.studio-v03 .stage-instruction{color:#625678;font-size:12px;font-weight:650;letter-spacing:.15px}
.studio-v03 .stage-caption,.studio-v03 .object-note{color:#746882;font-size:11px;line-height:1.6}
.studio-v03 .game-object{min-height:340px;padding:26px 8px 15px;gap:20px}
.studio-v03 .avatar{background:radial-gradient(circle at 32% 20%,#fff9,transparent 52%),color-mix(in srgb,var(--person),white 72%);box-shadow:inset 0 -3px 0 #3b275b16,0 4px 8px #2a20521a;border:2px solid white;color:color-mix(in srgb,var(--person),#221836 48%)}
.studio-v03 .draggable{cursor:grab;touch-action:none}
.studio-v03 .draggable.is-held{cursor:grabbing}
.studio-v03 button:focus-visible{outline:3px solid #148b80;outline-offset:5px}
.studio-v03 .gesture-hint{margin:18px auto 0;text-align:center;font-size:12px;font-weight:750;color:#615080}
.studio-v03 .gesture-hint span{display:block;font-size:10px;font-weight:450;color:#7d708d;margin-top:5px}
.studio-v03 .object-note{text-align:center;margin-top:18px}
.studio-v03 .decision-wheel,.studio-v03 .reel-strip,.studio-v03 .slot-lever,.studio-v03 .lottery-ball,.studio-v03 .team-token,.studio-v03 .racer,.studio-v03 .baton-object,.studio-v03 .carousel-ring,.studio-v03 .flip-card,.studio-v03 .surprise-box,.studio-v03 .track-stop{animation:none!important}
.studio-v03 .card-inner,.studio-v03 .box-lid,.studio-v03 .box-content{transition:none}
.studio-v03 .wheel-station{position:relative;padding:5px 15px 0}
.studio-v03 .wheel-rig{width:min(365px,76vw);height:min(365px,76vw);margin:0 auto 16px;z-index:1}
.studio-v03 .decision-wheel{filter:drop-shadow(0 7px 0 #72609e) drop-shadow(0 15px 18px #59418633)}
.studio-v03 .wheel-pointer{top:-10px;width:30px;height:44px;background:linear-gradient(110deg,#fff,#eee7ff);filter:drop-shadow(0 4px 2px #38215b70)}
.studio-v03 .wheel-pointer:after{background:#ffb846;border:2px solid white;width:9px;height:9px;left:10px;top:7px}
.studio-v03 .wheel-hub{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:76px;height:76px;border-radius:50%;border:5px solid #efebff;background:linear-gradient(140deg,white,#e1d9fb);box-shadow:0 6px 0 #9e8bc5,0 8px 16px #35215340,inset 0 2px 2px white;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:0;color:#6258e8;z-index:3}
.studio-v03 .wheel-hub span{font-size:36px;line-height:1}.studio-v03 .wheel-hub small{font-size:8px;font-weight:900;letter-spacing:1px}
.studio-v03 .wheel-hub:active{transform:translate(-50%,calc(-50% + 3px));box-shadow:0 3px 0 #9e8bc5,0 5px 8px #35215330}
.studio-v03 .wheel-foot{position:absolute;bottom:-9px;left:20%;right:20%;height:18px;border-radius:50%;background:#44305d19;filter:blur(5px);z-index:-1}
.studio-v03 .arcade-station{padding:5px 10px 0;max-width:100%}
.studio-v03 .slot-machine{width:395px;padding:18px 24px 20px;border-radius:30px 30px 22px 22px;border:4px solid #a69bf7;background:linear-gradient(130deg,#9385f7 0%,#6a59dc 40%,#5744bd 100%);box-shadow:inset 0 2px 0 #fff7,inset -8px 0 0 #41347a18,0 10px 0 #40348a,0 20px 24px #40348a25;margin-right:43px}
.slot-marquee{padding:12px 3px;background:#fff9e9;border:3px solid #dbcdb8;border-radius:15px;color:#514075;letter-spacing:1.5px;font-size:13px;font-weight:900;display:flex;justify-content:space-around;box-shadow:0 4px 0 #3b26722b}
.slot-marquee>span{color:#ecaf35}.studio-v03 .slot-lights{gap:5px;margin:17px 0 12px}.studio-v03 .slot-lights i{height:5px;width:5px;background:#ffcf63;box-shadow:0 0 6px #ffc85788;border-radius:50%}.studio-v03 .slot-lights span{font-size:6px;text-align:center;letter-spacing:.7px}
.studio-v03 .reel-frame{position:relative;border-radius:15px;background:#342a70;padding:6px;box-shadow:inset 0 3px 5px #20134388,0 2px 0 #b4a1f5}
.studio-v03 .reel-window{height:76px;border:5px solid #7565ad;border-radius:10px;position:relative;background:#fffcf2}
.studio-v03 .reel-window:after{position:absolute;content:'';inset:0;box-shadow:inset 0 15px 13px -10px #3b2e6740,inset 0 -15px 13px -10px #3b2e6740;pointer-events:none}
.studio-v03 .reel-strip{margin:0}.studio-v03 .reel-name{height:66px;line-height:66px;font-size:29px;color:#443268}
.studio-v03 .reel-arrow{position:absolute;left:-15px;top:24px;color:#ffc857;font-size:28px;text-shadow:0 2px 0 #493472}
.studio-v03 .slot-lever{transform-origin:50% 100%;top:56px;right:-42px;width:39px}.studio-v03 .slot-lever>span{border:2px solid #ffc8b5;box-shadow:0 4px 0 #b84a62,0 7px 10px #40244030}
.studio-v03.phase-done .reel-frame{box-shadow:0 0 0 2px #ffc857,0 0 19px #ffc85744}
.studio-v03 .lottery-station{width:360px;max-width:100%}.studio-v03 .lottery{width:340px;max-width:100%}
.studio-v03 .lottery-glass{border:7px solid #d6d4ed;border-radius:49% 49% 34% 34%;background:radial-gradient(ellipse at 28% 10%,#fff 0%,#f7fcffab 35%,#c9e1f044 75%,#b2b4da66);box-shadow:inset 8px 3px 8px #fff,inset -8px -5px 12px #6454842b,0 7px 15px #4530771f}
.studio-v03 .lottery-ball{width:49px;height:49px;z-index:2;box-shadow:inset -5px -7px 6px #26164730,inset 3px 3px 4px #fff8,0 5px 6px #45344729}
.studio-v03 .lottery-ball span{font-size:9px;max-width:42px;overflow:hidden;text-overflow:ellipsis;background:#fff8;border-radius:20px;padding:3px;color:#302642}
.mixer-blade{position:absolute;left:50%;bottom:0;transform:translateX(-50%);font-size:60px;color:#b9accd;opacity:.6;line-height:1}
.studio-v03 .lottery-base{padding:22px 16px 15px;margin-top:-10px;background:linear-gradient(130deg,#8b7af0,#5a47c4);border-color:#b8aaf8;box-shadow:inset 0 2px 0 #fff5,0 9px 0 #44318c;display:grid;grid-template-columns:48px 1fr;gap:8px}
.studio-v03 .lottery-base>span{grid-column:1/-1;font-size:7px;color:#fff}.studio-v03 .lottery-chute{min-height:70px;border:3px solid #8e7cd5;background:linear-gradient(#30245f,#4f388f);font-size:20px}
.mix-crank{align-self:center;border-radius:50%;width:45px;height:45px;border:4px solid #e9e0ff;background:linear-gradient(140deg,#fff,#c3b3dc);color:#624895;box-shadow:0 3px 0 #443279;font-size:26px;line-height:.7}.mix-crank span{display:block;font-size:6px;font-weight:900;margin-top:4px}
.chute-waiting{font-size:7px;letter-spacing:1px;text-align:center;color:#b8acd8}.chute-waiting b{font-size:24px;display:block;margin-top:4px}.studio-v03 .drawn-ball{animation:none;font-size:14px;gap:8px;padding:5px}.studio-v03 .drawn-ball b{max-width:120px;overflow-wrap:anywhere}
.deck-mat{width:100%;max-width:870px;border:1px solid #dfd7ee;border-radius:22px;background:linear-gradient(140deg,#ece6fa,#f6f2fd);padding:18px;box-shadow:inset 0 2px 0 white,0 7px 0 #dcd2ed55}
.deck-label{display:flex;justify-content:space-between;gap:10px;font-size:8px;letter-spacing:1.5px;font-weight:800;color:#77648e;margin:0 3px 15px}.deck-label b{color:#6258e8;white-space:nowrap}
.studio-v03 .flip-grid{gap:15px;max-width:none;margin:0;grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.studio-v03 .flip-card{height:205px;position:relative;transform-origin:center bottom}.studio-v03 .flip-card:disabled{opacity:1}.studio-v03 .flip-card:not(:disabled):hover{filter:brightness(1.03)}
.studio-v03 .card-back{background:radial-gradient(ellipse at 10% 0%,#fff4,transparent 70%),var(--card-color);border:4px solid white;box-shadow:0 5px 0 #a99ac0,0 11px 13px #58437620;gap:10px}
.studio-v03 .card-back:before{content:'';position:absolute;inset:9px;border:1px solid #ffffff63;border-radius:8px;pointer-events:none}
.studio-v03 .card-back:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(40deg,transparent 0 13px,#fff04 13px 14px);pointer-events:none}
.card-corner{position:absolute;left:14px;top:13px;font-size:9px;line-height:1.5;font-weight:800}.card-corner i{display:block;font-style:normal}.card-corner.bottom{left:auto;top:auto;right:14px;bottom:12px;transform:rotate(180deg)}
.studio-v03 .card-back .avatar{border:3px solid #fff8;width:54px;height:54px;min-width:54px;font-size:24px}
.card-emblem{height:66px;width:66px;border:1px solid #fff7;border-radius:50%;display:grid;place-items:center;font-size:43px;background:#ffffff16;box-shadow:inset 0 0 0 6px #ffffff13;line-height:1}
.studio-v03 .card-front{background:radial-gradient(ellipse at 50% 0%,#fff,color-mix(in srgb,var(--card-color),white 94%));border:3px solid white;box-shadow:0 5px 0 #b5a4c4,0 12px 18px #4c2b6c1a;gap:9px}.card-kicker{font-size:7px!important;letter-spacing:1.1px;color:#7b678f;font-weight:800}.studio-v03 .card-front strong{font-size:15px;line-height:1.3}.studio-v03 .card-front p{font-size:12px;background:#fff9;border-radius:8px;padding:6px 10px;max-width:100%}.object-spark{color:#bd8b36;font-size:22px}
.deck-shuffle{margin:17px auto 0;display:flex;gap:8px;align-items:center;border:1px solid #d3c5e8;border-radius:20px;padding:9px 16px;background:#fff9;color:#6e588c;font-size:21px}.deck-shuffle span{font-size:10px;font-weight:650}.studio-v03 .choice-grid{grid-template-columns:repeat(auto-fit,minmax(125px,1fr))}.choice-mat{max-width:760px;background:linear-gradient(145deg,#e7f7f3,#eff2fb)}
.order-mat .card-back{background:linear-gradient(145deg,#344160,#61749b);color:white}.assignment-mat .card-back small{font-size:7px;letter-spacing:1px}
.box-shelf{width:100%;max-width:880px;padding:10px 12px 20px;background:radial-gradient(ellipse at 50% 100%,#e3d9f4,transparent 70%);border-radius:22px}
.shelf-label{text-align:center;font-size:8px;letter-spacing:2px;font-weight:750;color:#877393;margin-bottom:22px}.studio-v03 .box-grid{gap:30px 12px;padding-top:20px}.studio-v03 .surprise-box{min-height:210px;perspective:700px}.studio-v03 .surprise-box:disabled{opacity:1}.studio-v03 .box-body{height:103px;width:120px;border:1px solid #ffffff88;background:linear-gradient(115deg,color-mix(in srgb,var(--box),white 25%),var(--box) 55%,color-mix(in srgb,var(--box),#3b2457 13%));box-shadow:inset -13px 0 0 #32265517,0 10px 0 #50396610,0 15px 18px #4c366c18}
.studio-v03 .box-body>i{left:45px;width:26px;background:linear-gradient(90deg,#ffffff44,#ffffff88,#ffffff38)}.studio-v03 .box-body>span{font-size:19px;color:#4e3d68;background:#fffd;border:2px solid #fff9;box-shadow:0 2px 3px #32265522}
.studio-v03 .box-lid{width:134px;height:27px;bottom:124px;border:1px solid #ffffff77;background:linear-gradient(120deg,color-mix(in srgb,var(--box),white 40%),var(--box));box-shadow:0 5px 0 #38204f22,0 8px 7px #32265520;transform-origin:0 100%}.studio-v03 .opened .box-lid{transform:translateY(-52px) rotate(-24deg)}
.studio-v03 .box-content{bottom:66px;padding:12px 9px;line-height:1.4;min-height:50px;left:0;right:0;background:#fffdf6;border-color:#e6ddc9;box-shadow:0 9px 20px #4d34633a}.box-content small{display:block;color:#a38b52;font-size:6px;letter-spacing:1px;margin-bottom:5px}
.box-halo{position:absolute;inset:0 0 30px;background:radial-gradient(ellipse,#ffdc7d80,transparent 70%);opacity:0;pointer-events:none}.opened .box-halo{opacity:1}.mystery-shelf .box-body{border-radius:14px;background:linear-gradient(120deg,#fff2,var(--box));height:110px}.mystery-shelf .box-lid{border-radius:12px 12px 5px 5px;bottom:131px}.mystery-shelf .box-lid:before,.mystery-shelf .box-lid:after{display:none}.mystery-shelf .box-body>i{opacity:.5}.mystery-shelf .opened .box-body>span{background:#fff5}
.connection-studio{width:100%;max-width:860px}.connection-labels{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.8px;font-weight:800;color:#8d79a4;padding:0 15px 9px}.studio-v03 .links-scroll{padding:10px 8px 14px;max-height:450px}
.studio-v03 .links-people,.studio-v03 .links-roles{gap:10px;width:35%}.studio-v03 .link-person,.studio-v03 .link-role{height:54px;min-height:54px;background:#fff;border:1.5px solid #ded4eb;box-shadow:0 4px 0 #e7dff0;border-radius:13px;font-size:12px;position:relative}.studio-v03 .link-person{padding-right:17px}.studio-v03 .link-role{padding-left:17px}
.studio-v03 .link-person i,.studio-v03 .link-role i{position:absolute;width:10px;height:10px;border:2px solid white;border-radius:50%;background:#b9a6d3;box-shadow:0 0 0 2px #dfd5ec;right:-6px;top:21px}.studio-v03 .link-role i{left:-6px;right:auto}
.studio-v03 .link-person.linked{background:#f0edff;border-color:#b8a7e8}.studio-v03 .link-person.selected,.studio-v03 .link-role.selected{border-color:#17bda9;background:#ecfbf7;box-shadow:0 4px 0 #bfe7df}.studio-v03 .selected i{background:#17bda9}.studio-v03 .link-wires{left:35%;width:30%;stroke:#b7a4d7;stroke-width:1;stroke-dasharray:0}.studio-v03 .link-wires path{vector-effect:non-scaling-stroke;stroke-width:2.5}.studio-v03 .link-wires .selected{stroke:#17aa99;stroke-width:4;stroke-dasharray:1;animation:none}
.connection-readout{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;padding:15px;border:1px solid #e2d9f0;background:#fff9;border-radius:12px;font-size:12px;margin-top:8px;min-height:60px}.connection-readout>span{font-size:7px;letter-spacing:1.1px;color:#8e7ba3;font-weight:800}.connection-readout b{color:#17aa99}
.mixing-table{width:min(650px,100%);border-radius:42px;border:6px solid #fff;background:radial-gradient(ellipse,#f7f3ff,#e1d7f5);padding:20px 16px;box-shadow:0 6px 0 #c5b6dc,0 16px 28px #68488419;text-align:center}.mixing-title{font-size:9px;letter-spacing:2px;font-weight:800;color:#77628f}.mixing-title span{color:#e2af4c;margin-left:10px}.studio-v03 .avatar-cloud{padding:24px 8px;gap:20px;margin:auto}.studio-v03 .avatar-cloud>span{min-width:62px}.studio-v03 .avatar-cloud small{color:#5e4d75;font-weight:650}
.studio-v03 .team-zones{gap:17px}.studio-v03 .team-zone{background:linear-gradient(150deg,white,color-mix(in srgb,var(--team),white 91%));border:2px solid color-mix(in srgb,var(--team),white 55%);box-shadow:inset 0 3px 0 #fff,0 6px 0 color-mix(in srgb,var(--team),white 75%);position:relative;padding-bottom:32px}.studio-v03 .team-zone-title{font-size:13px;padding-bottom:10px;border-bottom:1px solid color-mix(in srgb,var(--team),white 78%)}.team-zone-base{position:absolute;bottom:10px;left:0;right:0;text-align:center;font-size:6px;letter-spacing:2px;color:color-mix(in srgb,var(--team),#44334e 40%);opacity:.7}.studio-v03 .team-tokens{gap:15px;margin-top:17px}.studio-v03 .team-token small{color:#65506f;font-weight:600}
.studio-v03 .bucket-zones .team-zone{border-radius:10px 10px 40px 40px;border-top:12px solid color-mix(in srgb,var(--team),white 15%);background:linear-gradient(100deg,color-mix(in srgb,var(--team),white 80%),white 30%,color-mix(in srgb,var(--team),white 90%) 80%,color-mix(in srgb,var(--team),white 66%));box-shadow:inset -9px 0 0 #3c2a5a0a,0 7px 0 #4e35591a}
.studio-v03 .bucket-dispenser{position:relative;flex-direction:row;gap:15px;margin-bottom:27px;padding:10px 20px;border-radius:20px;background:#fff;border:2px solid #e9dff2;box-shadow:0 5px 0 #c7b6dc33}.release-gate{position:relative;min-width:78px;height:60px;border:3px solid #f5d289;border-radius:14px;background:linear-gradient(#ffe5a5,#ffc857);box-shadow:0 5px 0 #ba8b3d;display:flex;align-items:center;justify-content:center;gap:6px;color:#75551e}.release-gate b{font-size:8px;letter-spacing:1px}.release-gate span{font-size:25px}.release-gate:active{transform:translateY(3px);box-shadow:0 2px 0 #ba8b3d}.studio-v03 .bucket-dispenser>span:last-child{font-size:10px;color:#6b557f}.studio-v03 .bucket-dispenser .avatar{animation:none}
.studio-v03 .capsule-scene{gap:45px}.studio-v03 .capsule-machine{width:225px;min-width:180px}.capsule-sign{font-size:10px;font-weight:900;letter-spacing:1.6px;text-align:center;color:#76516e;background:#fff9ed;border:2px solid #f3d5cd;border-radius:14px 14px 5px 5px;padding:11px;margin:0 20px -2px;box-shadow:0 3px 0 #ebd8d8}.capsule-sign span{color:#dda845}.studio-v03 .capsule-dome{border-color:#d8dce9;box-shadow:inset 6px 5px 9px #fff,inset -5px -2px 12px #584c792b}.studio-v03 .capsule-dome>i{box-shadow:inset -6px -6px 8px #4f355c2b,inset 3px 3px 3px #fff7}.studio-v03 .capsule-body{height:185px;background:linear-gradient(130deg,#ffa496,#fa7b87 50%,#df627c);box-shadow:inset 0 2px 0 #fff8,inset -8px 0 0 #ad355d0d,0 9px 0 #b94f71}.studio-v03 .capsule-body>small{display:block;margin-top:7px;text-align:center;font-size:6px;font-weight:750;letter-spacing:1px;color:#843750}.studio-v03 .capsule-handle{height:62px;width:62px;background:linear-gradient(140deg,#fff,#b6a7c4);border-color:#ffe0d5;box-shadow:0 4px 0 #a94e64,inset 0 2px 0 white}.studio-v03 .capsule-handle:active span{transform:rotate(-30deg)}.studio-v03 .capsule-handle span{background:linear-gradient(#9e83ac,#715b82);border:1px solid #bca6c9;height:14px}
.studio-v03 .capsule-door{position:relative;overflow:visible;background:#753247;border:4px solid #cf5c75}.dispensed-capsule{display:block;position:absolute;left:20px;top:6px;width:30px;height:30px;border-radius:50%;background:linear-gradient(#6d60d3 50%,#fdf7ed 50%);border:1px solid #fff9;box-shadow:inset -3px -4px 4px #46334b33,0 4px 4px #65324d33}
.studio-v03 .capsule-ticket{position:relative;transform:rotate(-2deg);background:linear-gradient(#fffdf5,#fff);border-color:#e8decb;box-shadow:0 6px 0 #d9cce4,0 12px 25px #4c355918;min-height:230px;width:235px;padding:25px 20px;gap:13px}.capsule-ticket>small{font-size:7px;letter-spacing:1.3px;color:#9f8d6e;font-weight:800}.ticket-perf{position:absolute;left:10px;right:10px;top:46px;border-top:2px dashed #ddd1c0}.studio-v03 .capsule-ticket strong{color:#41334f;font-size:20px}.studio-v03 .team-ticket-name{background:color-mix(in srgb,var(--ticket),white 88%);color:color-mix(in srgb,var(--ticket),#2a183b 40%)!important;border:1px solid color-mix(in srgb,var(--ticket),white 60%);font-weight:750;padding:8px 16px;border-radius:8px}
.race-arena{width:100%;max-width:900px}.race-banner{display:flex;align-items:center;justify-content:space-between;padding:12px 17px;border-radius:13px 13px 0 0;background:#31434f;color:white;gap:10px}.race-banner>span{font-size:8px;letter-spacing:1.5px;font-weight:800}.race-banner small{font-size:7px;color:#b8d8cf;white-space:nowrap}.start-lights{display:flex;gap:5px;background:#23313b;padding:5px 9px;border-radius:15px}.start-lights i{width:8px;height:8px;border-radius:50%;background:#ff8a79;box-shadow:inset 0 1px 2px #0003}.start-lights.go i{background:#5de1a4;box-shadow:0 0 8px #5de1a499}
.studio-v03 .race-track{background:repeating-linear-gradient(0deg,#ecf6ed 0 79px,#e5f0e7 79px 158px);border-radius:0 0 17px 17px;border:4px solid #fff;padding:3px 21px 5px;box-shadow:0 7px 0 #b6d0c2}.studio-v03 .race-lane{height:79px;border-bottom:2px dashed #becfca}.studio-v03 .lane-number{font-size:9px;font-weight:800;color:#809e93;left:-13px;top:31px}.studio-v03 .racer{background:none;border:0;padding:0;top:8px;width:68px;height:62px;left:7px;cursor:pointer}.race-car{position:relative;display:block;width:54px;height:35px;border-radius:20px 16px 9px 9px;background:linear-gradient(160deg,#fff7,var(--racer));box-shadow:inset 0 -5px 0 #41344f26,0 4px 5px #253a3c25;border:1px solid #fff9}.race-car:before,.race-car:after{content:'';position:absolute;bottom:-4px;width:11px;height:11px;background:#39414a;border:3px solid #606870;border-radius:50%;left:7px}.race-car:after{left:auto;right:5px}.studio-v03 .race-car .avatar{position:absolute;left:12px;top:-9px;width:29px;height:29px;min-width:29px;font-size:12px}.studio-v03 .racer small{margin-top:4px;color:#3c5455;font-size:10px;line-height:1;max-width:75px}.studio-v03 .racer i{display:none}.studio-v03 .race-finish{right:83px;opacity:.65;width:12px;background-size:12px 12px}.studio-v03 .finish-rank{top:23px;right:-5px;border-radius:50%;height:26px;width:26px;display:grid;place-items:center;background:#fff;color:#426b60;font-size:14px;border:2px solid #b7d3bc}.race-launch{display:flex;gap:13px;align-items:center;margin:18px auto 0;border:2px solid #c6d7cf;border-radius:30px;background:#e2eee8;padding:5px 20px 5px 5px;font-size:8px;letter-spacing:1.5px;color:#527468;font-weight:900;box-shadow:inset 0 2px 3px #3e6a5820}.race-launch>span{font-size:24px;display:grid;place-items:center;background:linear-gradient(#fff,#e6f0eb);width:42px;height:32px;border-radius:22px;box-shadow:0 2px 3px #415b4d35}.race-ranking{display:flex;gap:7px;flex-wrap:wrap;margin-top:15px}.race-ranking span{font-size:11px;background:#fff;border:1px solid #d1e1d8;padding:6px 10px;border-radius:8px}.race-ranking b{margin-right:7px;color:#388373}
.podium-scene{width:100%;max-width:760px;position:relative;padding:10px 0}.podium-backdrop{position:absolute;inset:0 0 auto;text-align:center;pointer-events:none}.podium-backdrop>span{font-size:9px;letter-spacing:2.3px;font-weight:800;color:#a2869b}.podium-backdrop i{display:block;color:#ebbf61;font-size:28px;font-style:normal;margin-top:9px}.studio-v03 .podium{padding-top:46px;margin:auto;gap:16px}.studio-v03 .podium-person{height:125px}.studio-v03 .podium-person strong{font-size:13px;color:#665071}.studio-v03 .plinth{border:2px solid #ffffff91;box-shadow:inset -12px 0 0 #35214a14,inset 0 3px 0 #fff6,0 7px 0 #9271af4d;border-radius:14px 14px 5px 5px;background:linear-gradient(120deg,#c8b3e9,#9a7fc4);position:relative}.studio-v03 .place-1 .plinth{background:linear-gradient(120deg,#ffe4a0,#f6bc50);box-shadow:inset -12px 0 0 #b67d2020,inset 0 3px 0 #fff8,0 7px 0 #bc91354d}.studio-v03 .place-3 .plinth{background:linear-gradient(120deg,#86e2ce,#32bda4);box-shadow:inset -12px 0 0 #146c6d20,inset 0 3px 0 #fff8,0 7px 0 #3b91884d}.medal{height:70px;width:70px;display:grid;place-items:center;border:2px solid #fff7;border-radius:50%;box-shadow:inset 0 0 0 6px #fff2,0 2px 0 #30254812;font-size:34px}.studio-v03 .raised .podium-person{animation:none}.studio-v03 .remaining-order{gap:9px}.studio-v03 .order-tile{border:1.5px solid #e0d4ec;box-shadow:0 3px 0 #d9cce5;border-radius:11px;color:#76618d}.studio-v03 .order-tile.revealed{background:#f7f3ff;color:#453751}.studio-v03 .order-tile b{font-size:15px;color:#aa8d64}
.studio-v03.game-turn-wheel .game-object,.studio-v03.game-pass-baton .game-object,.studio-v03.game-game-track .game-object{flex-direction:column;gap:15px}
.turn-strip{display:flex;gap:16px;align-items:center;justify-content:center;flex-wrap:wrap;background:#ffffffbd;border:1px solid #e3d8ed;border-radius:15px;padding:13px 22px;max-width:100%;color:#675575;min-height:60px}.turn-strip>span{font-size:7px;letter-spacing:1.2px}.turn-strip strong{display:block;font-size:13px;max-width:170px;overflow-wrap:anywhere}.turn-strip small{display:block;font-size:7px;color:#9985a7;font-weight:800;letter-spacing:1px;margin-bottom:5px}.turn-strip .turn-divider{font-size:22px;color:#c3b6cf}.round-progress{padding-left:15px;border-left:1px solid #e1d8e8}.round-progress progress{display:block;width:100px;height:5px;border:0;accent-color:#17bda9}.round-progress b{display:block;font-size:8px;color:#159482;margin-top:5px}
.studio-v03 .baton-ring{height:335px;width:430px;max-width:100%;margin:10px 0}.relay-circle{position:absolute;inset:14%;border:2px dashed #d3c4e3;border-radius:50%;background:radial-gradient(circle,#fff,#f2ecfb77);box-shadow:0 0 0 14px #e4dbf217}.relay-label{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);font-size:7px;letter-spacing:2px;color:#b3a0c4;font-weight:800}.studio-v03 .baton-person .avatar{width:54px;height:54px;min-width:54px;font-size:24px}.studio-v03 .baton-person small{font-size:11px;color:#6e557d;font-weight:650}.baton-person>b{font-size:6px;background:#17aa99;color:white;border-radius:10px;padding:3px 7px;letter-spacing:1px}.studio-v03 .baton-object{border:2px solid #f7d186;background:linear-gradient(#ffe4a9,#ffc857 50%,#dba03e);box-shadow:inset 0 2px 0 #fff8,0 5px 0 #b57c3d,0 11px 14px #74542e33;color:#8d601d;width:125px;height:31px;font-size:8px;display:flex;justify-content:space-between;align-items:center;padding:0 9px}.baton-object i{height:22px;width:9px;background:repeating-linear-gradient(90deg,#b7793033 0 2px,transparent 2px 4px);border-radius:3px}
.board-scene{width:100%;max-width:790px;border:5px solid white;border-radius:25px;background:linear-gradient(130deg,#f0f4e8,#e8f5f1 40%,#eef0fc);box-shadow:0 7px 0 #c2c9d3,0 16px 25px #4f5d6b14;padding:16px 22px 18px;position:relative}.board-heading{display:flex;justify-content:space-between;gap:10px;color:#6c7b7d}.board-heading span{font-size:8px;letter-spacing:2px;font-weight:850}.board-heading strong{font-size:10px}.studio-v03 .turn-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 20px;max-height:380px;overflow:auto;padding:30px 8px 18px;position:relative}.studio-v03 .track-stop{width:100%;min-height:125px;border-radius:25px 25px 18px 18px;background:linear-gradient(150deg,white,color-mix(in srgb,var(--person),white 77%));box-shadow:0 6px 0 color-mix(in srgb,var(--person),white 55%),0 9px 13px #50616b15;position:relative}.studio-v03 .track-stop:after{content:'···';position:absolute;right:-23px;top:45%;font-size:16px;letter-spacing:2px;color:#acbfb6}.studio-v03 .track-stop:nth-child(4n):after{display:none}.studio-v03 .track-stop.current{border-color:#6f62c2;background:linear-gradient(#fff,#e4dcff)}.studio-v03 .track-number{position:absolute;left:9px;top:7px;color:#7a6f8c;font-size:8px;font-weight:750}.studio-v03 .track-stop strong{color:#655573}.board-pawn{position:absolute;top:-22px;right:10px;width:24px;height:35px;z-index:5;filter:drop-shadow(0 4px 2px #35294c33)}.board-pawn:before{content:'';position:absolute;top:0;left:5px;width:14px;height:14px;border-radius:50%;background:radial-gradient(circle at 30% 20%,#ffc7a9,#ff7474 65%,#b94066)}.board-pawn:after{content:'';position:absolute;bottom:0;left:0;right:0;height:24px;border-radius:50% 50% 30% 30%;background:linear-gradient(100deg,#ffb098,#ff7474,#ca4e6d)}.studio-v03 .track-marker{background:#6c57ad;bottom:-12px;font-size:6px;padding:4px 7px}
.carousel-station{width:100%;max-width:760px}.carousel-marquee{width:fit-content;margin:0 auto 10px;padding:10px 20px;background:#fffbec;border:2px solid #f0dfb8;border-radius:18px;font-size:8px;letter-spacing:1.6px;font-weight:850;color:#9c7b3e;box-shadow:0 3px 0 #dac4aa55}.carousel-marquee span{margin-left:12px;color:#dda84a}.studio-v03 .carousel-perspective{height:330px;max-width:none;perspective:1000px;touch-action:none;overflow:hidden}.studio-v03 .carousel-ring{top:65px}.studio-v03 .carousel-card{width:138px;height:172px;left:-69px;background:radial-gradient(ellipse at 30% 0%,#fff,color-mix(in srgb,var(--card),white 80%));border:3px solid white;box-shadow:inset 0 0 0 1px #fff9,0 7px 0 #9d8bac33,0 12px 20px #4f32552b;border-radius:21px;gap:13px}.carousel-card>small{font-size:5px;color:#917d9b;letter-spacing:1px;font-weight:750}.carousel-card>i{font-style:normal;color:#c59847;font-size:15px}.studio-v03 .carousel-card strong{font-size:15px;color:#513c65}.studio-v03 .carousel-card.selected{border-color:#ffdb81;box-shadow:0 0 0 2px #e2b75e,0 7px 0 #b3905840,0 12px 22px #a6772b33}.studio-v03 .carousel-platform{height:38px;bottom:50px;left:5%;right:5%;background:linear-gradient(#eee4fb,#d8c8e9);border:2px solid #fff;box-shadow:0 8px 0 #bba8ce,0 16px 18px #5b406d22}.studio-v03 .carousel-pointer{bottom:5px;font-size:28px;color:#c08e38;text-shadow:0 3px 0 #e8cb92}
.studio-v03 .winner-ribbon{background:linear-gradient(120deg,#fffdf8,#fff);border:1.5px solid #e4d6ec;border-radius:15px;box-shadow:0 4px 0 #cfc2e333,0 10px 20px #72528112;animation:none!important;padding:13px 24px;min-height:60px}.studio-v03 .winner-ribbon small{color:#9a8455;font-weight:750;font-size:8px}.studio-v03 .winner-ribbon strong{color:#40304f;font-size:25px}
.celebration{position:absolute;left:50%;top:42%;pointer-events:none;z-index:8}.celebration i{position:absolute;width:6px;height:10px;border-radius:2px;background:var(--confetti);opacity:0}
.game-action-dock{border-color:#d9d0e9;box-shadow:0 -6px 24px #44335418}.game-action-dock .button{min-height:48px}
@media(max-width:760px){.studio-v03 .game-object{padding:22px 2px 12px}.studio-v03 .game-stage{padding:15px}.studio-v03 .deck-mat{padding:13px}.studio-v03 .flip-grid,.studio-v03 .choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.studio-v03 .flip-card{height:180px}.studio-v03 .card-front .avatar.large{width:44px;height:44px;min-width:44px;font-size:20px}.studio-v03 .card-front strong{font-size:13px}.studio-v03 .card-front p{font-size:11px;padding:5px}.studio-v03 .card-back strong{font-size:12px}.studio-v03 .card-kicker{font-size:6px!important}.studio-v03 .card-back small{font-size:7px}.studio-v03 .card-corner{left:11px;top:10px;font-size:8px}.studio-v03 .card-corner.bottom{left:auto;top:auto;right:11px;bottom:10px}.studio-v03 .card-emblem{width:55px;height:55px;font-size:34px}.studio-v03 .shelf-label{font-size:7px;letter-spacing:1.2px}.studio-v03 .box-shelf{padding:5px 5px 15px}.studio-v03 .box-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 15px}.studio-v03 .box-body{width:105px;height:91px}.studio-v03 .box-body>i{left:39px;width:24px}.studio-v03 .box-lid{width:117px;bottom:112px}.studio-v03 .surprise-box{min-height:195px}.studio-v03 .mystery-shelf .box-body{height:98px}.studio-v03 .mystery-shelf .box-lid{bottom:119px}.studio-v03 .box-content{left:0;right:0;font-size:11px;padding:9px 6px;bottom:62px}.studio-v03 .box-content small{font-size:5px}.studio-v03 .box-lid:before{left:27px}.studio-v03 .box-lid:after{left:53px}.studio-v03 .links-people,.studio-v03 .links-roles{width:39%}.studio-v03 .link-wires{left:39%;width:22%}.studio-v03 .link-person,.studio-v03 .link-role{font-size:10px;padding:6px 9px}.studio-v03 .link-person .avatar{display:none}.studio-v03 .connection-readout{font-size:10px;gap:7px;padding:11px}.studio-v03 .connection-readout>span{width:100%;text-align:center;font-size:6px}.studio-v03 .team-zones{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.studio-v03 .team-zone{padding:12px 7px 30px;min-height:180px}.studio-v03 .team-zone-title strong{font-size:11px}.studio-v03 .team-tokens{gap:13px 8px}.studio-v03 .team-token{max-width:68px}.studio-v03 .team-token small{font-size:9px}.studio-v03 .team-token .avatar{width:33px;height:33px;min-width:33px;font-size:14px}.studio-v03 .bucket-dispenser{padding:9px 12px;gap:11px}.studio-v03 .release-gate{min-width:65px}.studio-v03 .bucket-dispenser .avatar.large{width:45px;height:45px;min-width:45px;font-size:22px}.studio-v03 .bucket-dispenser>span:last-child{font-size:8px}.studio-v03 .capsule-scene{flex-direction:column;gap:30px}.studio-v03 .capsule-machine{width:195px;min-width:0}.studio-v03 .capsule-dome{height:150px}.studio-v03 .capsule-ticket{width:230px;min-height:170px;padding:20px 15px;gap:11px}.studio-v03 .capsule-ticket strong{font-size:18px}.studio-v03 .capsule-ticket .avatar.large{width:48px;height:48px;min-width:48px;font-size:23px}.studio-v03 .capsule-ticket .ticket-star{font-size:34px!important}.studio-v03 .capsule-ticket>span:not(.avatar){font-size:11px}.studio-v03 .race-banner{padding:10px 8px;gap:7px}.studio-v03 .race-banner>span{font-size:6px;letter-spacing:.7px}.studio-v03 .race-banner small{display:none}.studio-v03 .start-lights{padding:4px 6px}.studio-v03 .race-track{padding-left:17px;padding-right:13px}.studio-v03 .race-lane{height:72px}.studio-v03 .racer small{font-size:8px}.studio-v03 .race-finish{right:73px}.studio-v03 .race-car{width:46px;height:32px}.studio-v03 .race-car .avatar{left:8px}.studio-v03 .racer{width:58px}.studio-v03 .finish-rank{height:22px;width:22px;right:-6px;font-size:12px}.studio-v03 .podium{gap:8px;padding-top:40px}.studio-v03 .podium-person{height:100px}.studio-v03 .podium-person strong{font-size:10px}.studio-v03 .podium-backdrop>span{font-size:7px}.studio-v03 .podium-backdrop i{font-size:22px}.studio-v03 .plinth{height:98px}.studio-v03 .place-1 .plinth{height:135px}.studio-v03 .place-3 .plinth{height:75px}.studio-v03 .medal{width:44px;height:44px;font-size:24px}.studio-v03 .order-tile{padding:10px 11px;font-size:10px}.studio-v03 .baton-ring{width:300px;height:280px}.studio-v03 .baton-person .avatar{height:44px;width:44px;min-width:44px;font-size:19px}.studio-v03 .baton-person small{font-size:9px;max-width:68px}.studio-v03 .baton-object{width:100px;height:28px;font-size:7px;padding:0 7px}.studio-v03 .turn-strip{gap:10px;padding:12px;max-width:100%;width:100%}.studio-v03 .turn-strip strong{font-size:11px;max-width:140px}.studio-v03 .turn-strip .round-progress{width:100%;padding:9px 0 0;border-left:0;border-top:1px solid #e5dced;display:flex;align-items:center;justify-content:center;gap:10px}.studio-v03 .round-progress small{margin:0}.studio-v03 .round-progress progress{width:75px}.studio-v03 .board-scene{padding:15px 10px}.studio-v03 .turn-track{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 20px;padding:30px 5px 20px}.studio-v03 .track-stop:nth-child(2n):after{display:none}.studio-v03 .board-heading span{font-size:7px;letter-spacing:1px}.studio-v03 .carousel-perspective{height:300px;perspective:800px}.studio-v03 .carousel-ring{top:59px}.studio-v03 .carousel-card{height:153px;width:125px;left:-62.5px;gap:10px}.studio-v03 .carousel-card .avatar.large{width:45px;height:45px;min-width:45px;font-size:22px}.studio-v03 .carousel-card strong{font-size:12px}.studio-v03 .carousel-platform{bottom:45px;left:0;right:0}.studio-v03 .carousel-marquee{font-size:6px;letter-spacing:.8px;padding:10px 13px}.studio-v03 .winner-ribbon strong{font-size:23px}.studio-v03 .stage-caption,.studio-v03 .object-note{font-size:9px}.studio-v03 .stage-instruction{font-size:11px}.studio-v03 .arcade-station{padding:0 0 0 5px;width:100%}.studio-v03 .slot-machine{max-width:calc(100% - 33px);margin-left:0;margin-right:32px;padding:13px 13px 15px;border-radius:22px}.studio-v03 .slot-marquee{font-size:9px;letter-spacing:1px;padding:10px 2px}.studio-v03 .slot-lever{right:-34px;width:32px}.studio-v03 .slot-lever>span{height:28px;width:28px;left:4px}.studio-v03 .reel-name{font-size:23px}.studio-v03 .slot-lights{gap:3px}.studio-v03 .slot-lights i{height:4px;width:4px}.studio-v03 .slot-lights span{font-size:5px}.studio-v03 .slot-base{font-size:8px}.studio-v03 .lottery-glass{height:220px}.studio-v03 .lottery-ball{height:43px;width:43px}.studio-v03 .lottery-ball span{font-size:8px}.studio-v03 .lottery-base{margin-left:10px;margin-right:10px;padding:18px 10px 12px}.studio-v03 .lottery-base>span{font-size:6px;letter-spacing:.6px}}
@media(max-width:360px){.studio-v03 .game-object{padding-left:0;padding-right:0}.studio-v03 .deck-mat{padding:10px}.studio-v03 .flip-card{height:169px}.studio-v03 .card-back .avatar{width:43px;height:43px;min-width:43px;font-size:21px}.studio-v03 .card-back strong{font-size:10px}.studio-v03 .card-front strong{font-size:12px}.studio-v03 .card-front p{font-size:10px}.studio-v03 .card-inner>span{padding:9px}.studio-v03 .card-emblem{width:44px;height:44px;font-size:30px}.studio-v03 .deck-label{font-size:6px;letter-spacing:1px}.studio-v03 .wheel-hub{width:64px;height:64px}.studio-v03 .wheel-hub span{font-size:29px}.studio-v03 .box-body{width:93px}.studio-v03 .box-lid{width:105px}.studio-v03 .box-body>i{left:34px}.studio-v03 .box-lid:before{left:20px}.studio-v03 .box-lid:after{left:46px}.studio-v03 .box-grid{gap:20px 10px}.studio-v03 .team-zones{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-v03 .team-tokens{gap:11px 5px}.studio-v03 .team-token .avatar{width:29px;height:29px;min-width:29px;font-size:13px}.studio-v03 .team-token small{font-size:8px}.studio-v03 .team-zone-title{gap:4px}.studio-v03 .team-zone-title strong{font-size:10px}.studio-v03 .team-zone-title span{font-size:8px;width:18px;height:18px;flex-shrink:0}.studio-v03 .bucket-dispenser{padding:8px;gap:8px}.studio-v03 .release-gate{min-width:56px}.studio-v03 .release-gate b{font-size:6px}.studio-v03 .baton-ring{width:100%}.studio-v03 .baton-person .avatar{width:38px;height:38px;min-width:38px;font-size:17px}.studio-v03 .baton-person small{font-size:8px}.studio-v03 .baton-object{width:90px}.studio-v03 .gesture-hint{font-size:11px}.studio-v03 .gesture-hint span{font-size:9px}}
.studio-v03.reduce-motion *,.studio-v03.reduce-motion *:before,.studio-v03.reduce-motion *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.studio-v03.reduce-motion .celebration{display:none}
@media(prefers-reduced-motion:reduce){.studio-v03 *,.studio-v03 *:before,.studio-v03 *:after{animation:none!important;transition:none!important}.studio-v03 .celebration{display:none}}

/* One presentation; a quiet, readable focal point for the completed decision. */
.studio-v03 .winner-ribbon{display:grid;grid-template-columns:42px minmax(0,1fr);column-gap:14px;row-gap:5px;align-items:center;text-align:left;padding:18px 24px;margin:18px auto 20px;max-width:min(540px,100%);border:2px solid #c8bdf3;border-bottom:4px solid #b2a4e9;background:linear-gradient(115deg,#fff9e8,#fff 50%,#f0ebff);box-shadow:0 8px 24px #49348619}
.studio-v03 .winner-ribbon .result-spark{grid-column:1;grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#fff0bd;border:1px solid #ead18c;color:#9a6a0b;font-size:29px;box-shadow:inset 0 2px 0 #fff}
.studio-v03 .winner-ribbon small{grid-column:2;color:#695589;font-size:9px;letter-spacing:1.5px;line-height:1.4}
.studio-v03 .winner-ribbon strong{grid-column:2;color:#392766;font-size:31px;line-height:1.2;overflow-wrap:anywhere;min-width:0}
.studio-v03 .decision-wheel .selected-wedge path{stroke:#ffe6a1;stroke-width:5}.studio-v03 .decision-wheel .selected-wedge text{font-weight:900}
.studio-v03.phase-done .team-zone-title strong,.studio-v03.phase-done .card-front strong{color:#392766}
.result-group.spotlight-result{border:2px solid #bfb2ed;background:linear-gradient(120deg,#f1edff,#fffdf4);box-shadow:0 6px 18px #4934860d}
.spotlight-result .result-person b{color:#392766}.spotlight-result h3{color:#695589}
@media(max-width:600px){.studio-v03 .winner-ribbon{padding:14px 17px;grid-template-columns:34px minmax(0,1fr);column-gap:11px}.studio-v03 .winner-ribbon .result-spark{width:34px;height:34px;font-size:24px}.studio-v03 .winner-ribbon strong{font-size:25px}.studio-v03 .winner-ribbon small{font-size:8px}}

/* Pre-launch accessibility corrections: preserve the existing palette and layout. */
.preview-badge b,.step-label,.library-tabs button.active{color:#5448ce}
.play-choices .primary small{color:#fff}

.play-choices .button small{opacity:1}.play-choices .secondary small{color:#686275}

.library-card .kind-badge,.library-card>p,.library-card>small{color:#716579}.resume-notice{color:#3d6f62}
