@scope (#gbody){*{box-sizing:border-box}body{margin:0;min-height:100vh;background:#cbeaff url('../assets/background.png') center center/cover fixed;font-family:'Trebuchet MS','Segoe UI',sans-serif;color:#233047}button{font:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible,a:focus-visible{outline:4px solid #202967;outline-offset:4px}header{display:flex;align-items:center;gap:12px;padding:14px 24px;background:#ffffffdd;position:relative;z-index:2}header button,.nav button,.speak{background:#fff;border:2px solid #188cc5;border-radius:16px;padding:10px 17px;font-weight:800;color:#253752}.brand{font-size:21px;font-weight:900;flex:1}#total{background:#fff0a7;border:2px solid #efb919;padding:10px 14px;border-radius:18px;font-weight:900;white-space:nowrap}main{max-width:1100px;margin:24px auto;padding:0 20px 35px}.heading{text-align:center;margin-bottom:28px}.heading .emoji{font-size:48px}.heading h1{display:table;margin:12px auto;background:linear-gradient(#ad44ed,#7223b7);color:white;border:3px solid #c776fb;border-bottom:8px solid #521a91;border-radius:23px;padding:13px 30px;font-size:29px}.heading p{display:table;margin:10px auto;padding:10px 22px;background:#078cdf;color:white;border-radius:15px;box-shadow:0 5px #056bad;font-weight:700}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 16px}.menu-card{display:flex;align-items:center;gap:12px;text-align:left;background:#fffffff5;border:3px solid var(--color);border-bottom-width:8px;border-radius:23px;min-height:106px;padding:15px;color:#233047;box-shadow:0 9px 16px #28385812}.menu-card:hover{transform:translateY(-3px)}.menu-card .icon{display:grid;place-items:center;flex-shrink:0;width:46px;height:46px;background:var(--color);border-radius:50%;font-size:26px;box-shadow:0 4px 8px #0002}.menu-card strong{display:block;font-size:17px}.menu-card small{display:table;margin-top:7px;border:1px solid var(--color);border-radius:12px;padding:2px 8px;font-size:11px}.menu-card .arrow{margin-left:auto;color:var(--color);font-size:25px}.panel{background:#fffffffa;border:3px solid #fff;border-bottom:8px solid #8255db;border-radius:28px;box-shadow:0 15px 35px #28385830;padding:25px;text-align:center}.panel h2{margin:12px 0;font-size:26px}.nav{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}.nav span{font-weight:800}.picture{position:relative;overflow:hidden;display:block;margin:14px auto;background:white;flex-shrink:0}.picture img{position:absolute;max-width:none;pointer-events:none}.marker{position:absolute;width:19px;height:19px;border:4px solid #fff;background:#ed1866;box-shadow:0 0 0 3px #ed1866;border-radius:50%;transform:translate(-50%,-50%)}.choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:20px 0}.choices.two{grid-template-columns:repeat(2,minmax(0,1fr))}.choice{border:3px solid #45aee9;border-bottom:7px solid #1874bf;background:#eff9ff;border-radius:23px;min-height:85px;padding:15px;font-size:23px;font-weight:800;color:#243249}.choice:nth-child(2){border-color:#f7a322;background:#fff7e9}.choice:nth-child(3){border-color:#ac77ee;background:#f7f0ff}.choice.correct{background:#cdf7d5;border-color:#149341}.choice.wrong{background:#ffe1df;border-color:#d5353a}.feedback{min-height:32px;font-size:19px;font-weight:800;color:#06763b}.primary{border:0;border-bottom:5px solid #00619c;background:#079cf0;color:white;padding:13px 26px;border-radius:17px;font-weight:900;font-size:19px}.primary:disabled{opacity:.45;cursor:default}.gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.word{background:white;border:2px solid #9edbdf;border-radius:20px;padding:9px;min-width:0;font-size:18px;font-weight:800;color:#233047}.word .picture{margin:4px auto 10px}.word:hover{border-color:#703ccc}.page-view{width:100%;max-width:650px;height:auto;border-radius:12px;margin:auto}.word-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.word-list button{background:#e8f5ff;border:1px solid #188cc5;padding:8px 12px;border-radius:12px}.matchgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:650px;margin:auto}.matchcol{display:flex;flex-direction:column;gap:10px}.matchbtn{background:white;border:3px solid #a2bee5;border-radius:18px;min-height:90px;font-size:20px;font-weight:800;color:#233047}.matchbtn .picture{margin:4px auto}.matchbtn.selected{border-color:#8b37d9;background:#f3e4ff}.matchbtn.matched{border-color:#19a95c;background:#e5ffed;opacity:.55}.note{font-size:15px;color:#56627a;line-height:1.5}.result-star{font-size:65px}.booklink{display:inline-block;margin-top:22px;background:#fff;padding:10px 18px;border-radius:12px;color:#394997}#status{position:fixed;left:50%;bottom:15px;transform:translateX(-50%);padding:12px 22px;border-radius:15px;background:#26324d;color:white;pointer-events:none;opacity:0;z-index:5}#status.show{opacity:1}.footer-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:20px}
@media(max-width:800px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:520px){header{padding:10px;gap:7px}.brand{font-size:14px}header button{padding:8px}#total{padding:8px;font-size:12px}main{padding:0 10px 25px;margin-top:16px}.grid{grid-template-columns:1fr;gap:13px}.heading h1{font-size:23px;padding:12px 16px}.heading p{font-size:13px}.panel{padding:14px 10px}.panel h2{font-size:22px}.choices{gap:8px}.choice{padding:10px 5px;font-size:17px;min-height:74px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.word{font-size:15px}.nav button{padding:8px;font-size:13px}.nav span{font-size:13px}.matchbtn{font-size:16px}.matchgrid{gap:10px}}

.art{display:block;flex-shrink:0;background-repeat:no-repeat;background-color:white;background-position:center;background-size:contain;border-radius:15px;margin:auto}.body-thumb{background-image:url('../assets/generated/body.png')}.play-panel{background:linear-gradient(#fffef9fa,#e5f8f6f5);min-height:650px}.playfield{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:760px;margin:22px auto}.friend{position:relative;display:grid;place-items:center;border:3px solid #fff;border-bottom:7px solid #78cbbc;border-radius:30px;background:#fff;min-height:170px;padding:10px;box-shadow:0 8px 16px #32437418;transition:transform .18s}.friend:hover{transform:translateY(-5px) rotate(-2deg)}.friend.found{border-color:#19bb65;background:#d6ffdd}.basket{font-size:42px;line-height:1.1}.track{display:flex;flex-wrap:wrap;justify-content:center;gap:5px;font-size:22px;color:#c2cbd3;max-width:760px;margin:auto}.track span{min-width:12px}.starburst{position:absolute;left:20%;right:20%;top:40%;font-size:42px;pointer-events:none;z-index:5;animation:burst .9s forwards}.play-panel{position:relative}.body-stage{position:relative;width:280px;max-width:100%;margin:12px auto;background:#f3faff;border-radius:24px;padding:12px;border:3px solid #cfe6f7;box-shadow:0 8px 20px #2b456614;text-align:center}.body-stage img{display:block;width:100%;height:auto;border-radius:18px;margin-bottom:8px}.body-spot{position:absolute;width:28px;height:28px;padding:0;border-radius:50%;border:3px solid #fff;background:#ff3884;box-shadow:0 0 0 3px #ff3884,0 0 16px #ffbe3b;transform:translate(-50%,-50%);cursor:pointer;transition:transform .15s,box-shadow .15s}.body-spot:hover{transform:translate(-50%,-50%) scale(1.25);background:#ffc720;box-shadow:0 0 0 3px #ffc720,0 0 20px #ffea78}
.body-bubble{margin:4px auto 0;padding:9px 18px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-radius:20px;font-size:16px;font-weight:800;display:inline-block;box-shadow:0 6px 14px #6366f140;letter-spacing:-.2px;text-align:center}
.body-explore-layout{display:flex;gap:26px;align-items:flex-start;justify-content:center;max-width:980px;margin:20px auto;text-align:left}
.body-content-col{flex:1;min-width:0;display:flex;flex-direction:column;gap:14px}
.explore-tabs{display:flex;gap:8px;flex-wrap:wrap;background:#edf4fc;padding:6px;border-radius:20px}
.tab-btn{flex:1;min-width:120px;padding:10px 14px;border:0;background:transparent;border-radius:15px;font-size:14px;font-weight:800;color:#506482;transition:all .18s;text-align:center}
.tab-btn:hover{background:#dbe9fb;color:#243650}
.tab-btn.active{background:#3b82f6;color:#fff;box-shadow:0 4px 12px #3b82f640}
.body-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}
.body-item-card{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#fff;border:2px solid #e2e8f0;border-bottom:5px solid #cbd5e1;border-radius:18px;cursor:pointer;transition:transform .15s,box-shadow .15s,border-color .15s;text-align:left}
.body-item-card:hover{transform:translateY(-3px);border-color:#3b82f6;border-bottom-color:#2563eb;box-shadow:0 8px 16px #3b82f620}
.body-item-card:active{transform:translateY(1px);border-bottom-width:2px}
.body-item-card .item-emoji{font-size:24px;line-height:1}
.body-item-card .item-name{flex:1;font-weight:800;font-size:15px;color:#1e293b}
.body-item-card .item-snd{font-size:14px;opacity:.6}
.body-part-art{display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:2px solid #86efac;border-radius:18px}
.body-icon-emoji{font-size:50px;line-height:1.1}
.body-icon-name{font-size:14px;font-weight:800;color:#166534;margin-top:4px}
.world-body-preview{max-width:100%;max-height:100%;object-fit:contain;border-radius:14px}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;max-width:980px;margin:20px auto}
.gallery-art-wrap{display:flex;justify-content:center;align-items:center;padding:6px}
.gallery-caption{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:6px;font-weight:800;font-size:15px;color:#2c3e55}
.speaker-badge{font-size:13px;opacity:.7}
.word .art{margin:6px auto 12px}.memory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:690px;margin:24px auto}.memory-card{display:grid;place-items:center;min-height:135px;border:4px solid #dfc8ff;border-bottom:8px solid #753bb6;border-radius:22px;background:linear-gradient(145deg,#ac69ee,#7f45c6);color:#ffdf31;font-size:43px}.memory-card.flipped{background:white}.memory-card.matched{background:#defde5;border-color:#34bb77;opacity:.65}.bonus-choices{display:flex;gap:24px;justify-content:center;margin:26px auto}.bonus-friend{width:210px;min-height:200px}.bonus-symbol{font-size:85px}.bonus-label{display:block;margin-top:10px;font-size:19px;font-weight:900;color:#2a3a5a}.count-tray{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;max-width:670px;margin:16px auto}.story-family{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}.paint{display:grid;place-items:center;background:transparent}.paint:before{content:'';display:block;width:75%;height:75%;background:radial-gradient(circle at 30% 25%,#ffffffa0,transparent 48%),var(--paint);border-radius:45% 55% 65% 35% / 55% 35% 65% 45%;box-shadow:inset -8px -8px 0 #0002,0 6px 0 #0001;transform:rotate(-12deg)}.shape{display:grid;place-items:center;background:transparent;perspective:300px}.shape-object{display:block;width:70%;height:70%;background:linear-gradient(135deg,#ffad68,#ff7430);box-shadow:inset -5px -5px 0 #0001}.rectangle .shape-object{width:85%;height:55%;background:#34b8be}.triangle .shape-object{clip-path:polygon(50% 0,100% 100%,0 100%);background:#ffb82c}.oval .shape-object{width:58%;height:85%;border-radius:50%;background:#eb78c1}.circle .shape-object{border-radius:50%;background:#9770dc}.square .shape-object{background:#f064a6}.cube .shape-object{background:linear-gradient(140deg,#66baff 0 50%,#2487d0 50%);transform:rotate(-10deg) skewY(8deg);box-shadow:9px 8px 0 #1964a5}.cone .shape-object{clip-path:polygon(50% 0,100% 88%,85% 100%,15% 100%,0 88%);background:linear-gradient(90deg,#ff9639,#ec541d)}.cylinder .shape-object{border-radius:50% / 15%;background:linear-gradient(90deg,#e84b49,#ff9691,#c83242)}.wiggle{animation:wiggle .4s}.pop{animation:pop .35s}@keyframes wiggle{25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}@keyframes pop{50%{transform:scale(1.015)}}@keyframes burst{from{transform:translateY(0) scale(.5);opacity:1}to{transform:translateY(-100px) scale(1.7);opacity:0}}
.basket{border:3px dashed #e7b656;border-radius:24px;max-width:330px;padding:8px;margin:8px auto;background:#fff5d5;transition:transform .2s}.basket.drop-ready{border-color:#0eac78;transform:scale(1.08);background:#d8fbe9}.collected{display:flex;gap:4px;flex-wrap:wrap;justify-content:center}.friend[draggable=true]{cursor:grab}.friend[draggable=true]:active{cursor:grabbing}
@media(max-width:768px){.body-explore-layout{flex-direction:column;align-items:center}.body-content-col{width:100%}.body-stage{width:250px}}
@media(max-width:600px){.playfield{gap:10px;grid-template-columns:repeat(2,1fr)}.friend{min-height:140px;padding:8px}.friend .art{width:120px!important;height:120px!important}.memory-grid{gap:8px;grid-template-columns:repeat(2,1fr);max-width:330px}.memory-card{min-height:120px}.bonus-choices{gap:12px;flex-wrap:wrap}.bonus-friend{width:46%;min-height:155px}.bonus-symbol{font-size:65px}.play-panel{min-height:650px}.starburst{left:5%;right:5%;font-size:28px}.body-card-grid{grid-template-columns:repeat(2,1fr)}}
@media(prefers-reduced-motion:reduce){*,*:before{animation:none!important;transition:none!important}}
}
#gbody .play-panel{min-height:0;width:100%;max-width:100%;margin:0;padding:8px;border:0;background:none;box-shadow:none;text-align:center}#gbody .play-panel h2{font-size:24px;margin:2px 0 10px}#gbody .playfield{margin:10px auto;grid-template-columns:repeat(3,minmax(0,1fr))}#gbody .gallery{grid-template-columns:repeat(4,minmax(0,1fr))}#gbody .gallery .art{width:110px!important;height:110px!important}#gbody .memory-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin:12px auto}#gbody .memory-card{min-height:110px}#gbody .body-stage{width:210px;padding:0;border:0}#gbody .body-stage img{margin:0}#gbody .body-explore-layout{margin:8px auto}#gbody .body-item-card{padding:5px 9px}#gbody .body-card-grid{gap:7px}#gbody .friend{min-width:0}#gbody .primary{margin:6px}#gbody .bonus-choices{margin:10px auto}#gbody .friend .art{width:120px!important;height:120px!important}#gbody .memory-card .art{width:75px!important;height:75px!important}#gbody .bonus-symbol{font-size:55px}#gbody .bonus-friend{min-height:140px}#gameScr .opt .otext{font-size:19px!important}@media(max-width:650px){#gbody .gallery{grid-template-columns:repeat(2,minmax(0,1fr))}#gbody .friend .art{width:75px!important;height:75px!important}#gbody .friend{min-height:95px;padding:5px}#gbody .memory-card{min-height:85px}#gbody .memory-card .art{width:55px!important;height:55px!important}#gbody .body-explore-layout{flex-direction:row;gap:8px}#gbody .body-explore-layout .body-stage{display:none}#gbody .body-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}#gbody .body-item-card{font-size:12px;padding:4px;gap:3px}#gbody .item-emoji{font-size:20px}#gbody .item-snd{display:none}#gbody .tab-btn{min-width:0;font-size:12px;padding:5px}#gbody .play-panel h2{font-size:19px}}