/* Kids-only arcade presentation. Existing games and parent pages retain their styles. */
body.arcade-kids{background:linear-gradient(160deg,#eafcff,#fff9ef 55%,#f0e6ff);overflow-wrap:break-word}body.arcade-kids main{width:calc(100% - 64px);max-width:1440px}body.arcade-kids .welcome{position:relative;isolation:isolate;overflow:hidden;min-height:290px;padding:30px 48px;border:3px solid #fff;border-radius:32px;background:radial-gradient(circle at 68% 15%,#5ce7ed88,transparent 45%),linear-gradient(125deg,#0878e9,#4b4ee5 65%,#8136ce);box-shadow:0 12px 28px #30378925;color:white}body.arcade-kids .welcome:after{content:'★ ✦ ★';position:absolute;right:28%;top:18%;font-size:40px;color:#ffe37b;letter-spacing:20px;z-index:-1}body.arcade-kids .welcome h1{font-size:clamp(38px,5.6vw,78px);font-weight:900;line-height:1.12;letter-spacing:-2px;text-shadow:0 4px 0 #254b9d;-webkit-text-stroke:1px white}body.arcade-kids .welcome h1 span:first-child{color:#ffdf43}body.arcade-kids .welcome h1 span:nth-child(2){color:#ff87bd}body.arcade-kids .welcome h1 span:last-child{color:#72f2dd}body.arcade-kids .welcome img{width:240px;max-height:250px;align-self:end;filter:drop-shadow(0 9px 5px #17336533)}body.arcade-kids .arcade-tagline{font-size:clamp(20px,2.2vw,30px);font-weight:800}body.arcade-kids .arcade-bubble{display:inline-block;background:#ff66af;color:#24284f;padding:9px 15px;border:2px solid white;border-radius:20px;font-weight:800}body.arcade-kids .arcade-invite{font-size:18px;margin-top:12px}.arcade-tabs{display:flex;flex-wrap:wrap;gap:12px;padding:18px 0 24px}.arcade-tabs button{background:white;border:2px solid #e0d8f3;min-height:50px;padding:12px 22px;font-weight:800}.arcade-tabs button[aria-selected=true]{background:linear-gradient(120deg,#6545d9,#9338cf);color:white;border-color:#6744d1;box-shadow:0 4px 0 #49248b}body.arcade-kids .choices{gap:32px;grid-template-columns:repeat(4,minmax(0,1fr));padding:0 0 30px}body.arcade-kids .choices button{position:relative;display:flex;align-items:stretch;justify-content:flex-end;text-align:left;min-height:370px;padding:22px 20px 28px;border:3px solid #fff;border-radius:28px;overflow:hidden;box-shadow:0 7px 0 #35236b16,0 12px 22px #29276a18;background:radial-gradient(ellipse at 50% 28%,#ffffff70,transparent 70%),linear-gradient(135deg,var(--arcade-a),var(--arcade-b));gap:8px;min-width:0}body.arcade-kids [data-home=games]{--arcade-a:#ffbd41;--arcade-b:#fa7937}body.arcade-kids [data-home=color]{--arcade-a:#ff79be;--arcade-b:#db3b96}body.arcade-kids [data-home=print]{--arcade-a:#e1f552;--arcade-b:#87cf42}body.arcade-kids [data-home=puzzles]{--arcade-a:#bb8afa;--arcade-b:#8052d9}body.arcade-kids [data-home=matching]{--arcade-a:#ffe377;--arcade-b:#ffa437}body.arcade-kids [data-home=places]{--arcade-a:#4fe0ec;--arcade-b:#29aacb}body.arcade-kids [data-home=adventure]{--arcade-a:#52bdfb;--arcade-b:#487aea}body.arcade-kids [data-home=saved]{--arcade-a:#d5afff;--arcade-b:#a382ec}.arcade-art{position:absolute;inset:12px 12px auto;height:220px;pointer-events:none}.arcade-art .arcade-sophia{position:absolute;left:4%;bottom:0;height:215px;width:46%;object-fit:contain;filter:drop-shadow(0 5px 3px #26344b30)}.arcade-object{position:absolute;right:0;top:42px;width:50%;transform:rotate(8deg)}body.arcade-kids .arcade-object img{width:100%;height:140px;object-fit:contain;filter:drop-shadow(0 8px 3px #26344b20)}.arcade-star{position:absolute;right:18%;top:0;color:#fff483;font-size:38px;text-shadow:0 3px 0 #cf9722}.arcade-label{display:block;position:relative;padding-right:28px}body.arcade-kids .choices b{font-size:24px;line-height:1.15;font-weight:900;color:#20334e;text-shadow:1px 1px white,-1px -1px white,1px -1px white,-1px 1px white;display:block}body.arcade-kids .choices small{display:block;font-size:14px;line-height:1.35;font-weight:700;margin-top:8px;color:#172a45}.arcade-arrow{position:absolute;bottom:16px;right:12px;border:2px solid white;background:#fff9;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-size:23px}.arcade-kids.in-activity .arcade-tabs{display:none}body.arcade-kids .grid{gap:32px}body.arcade-kids .choices [hidden]{display:none!important}
@media(max-width:1100px){body.arcade-kids main{width:calc(100% - 48px)}body.arcade-kids .choices,body.arcade-kids .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}}
@media(max-width:640px){body.arcade-kids main{width:calc(100% - 36px)}body.arcade-kids .welcome{min-height:220px;padding:20px 16px;border-radius:24px;gap:8px}body.arcade-kids .welcome img{width:30%;max-height:180px}body.arcade-kids .welcome h1{font-size:38px;letter-spacing:-1px}body.arcade-kids .arcade-bubble{font-size:12px;padding:7px 9px}body.arcade-kids .arcade-invite{font-size:14px}.arcade-tabs{gap:8px;padding:14px 0 20px}.arcade-tabs button{padding:10px 13px;font-size:15px}body.arcade-kids .choices,body.arcade-kids .grid{gap:18px}body.arcade-kids .choices button{min-height:320px;padding:16px 12px 24px;border-radius:23px}.arcade-art{height:165px;inset:10px 4px auto}.arcade-art .arcade-sophia{height:164px;width:52%;left:0}.arcade-object{width:52%;top:34px}body.arcade-kids .arcade-object img{height:100px}.arcade-star{font-size:28px;right:12%}body.arcade-kids .choices b{font-size:20px}body.arcade-kids .choices small{font-size:12px}.arcade-label{padding-right:10px;padding-bottom:24px}.arcade-arrow{width:30px;height:30px;font-size:20px;bottom:9px;right:9px}}
@media(max-width:360px){body.arcade-kids .choices{grid-template-columns:1fr}.arcade-art .arcade-sophia{width:45%}body.arcade-kids .welcome h1{font-size:32px}}
@media(prefers-reduced-motion:reduce){body.arcade-kids *,body.arcade-kids *:before,body.arcade-kids *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}body.arcade-kids button:hover{transform:none}}
@media print{.arcade-tabs{display:none!important}}

/* Reuse one approved character sheet in every pose instead of repeated image downloads. */
.arcade-art .arcade-sophia{background-image:url(/assets/sophia-approved-poses.png);background-size:400% 200%;background-repeat:no-repeat;width:86px;height:215px;left:4%}.arcade-sophia[data-pose=wave]{background-position:0 0}.arcade-sophia[data-pose=point]{background-position:33.3333% 0}.arcade-sophia[data-pose=tablet]{background-position:100% 0}.arcade-sophia[data-pose=think]{background-position:33.3333% 100%}.arcade-sophia[data-pose=heart]{background-position:100% 100%}.arcade-art .arcade-sophia[data-pose=jump]{background-image:url(/assets/platform-sophia-animation.webp);background-size:600% 200%;background-position:40% 100%;width:152px;height:190px;left:0}@media(max-width:640px){.arcade-art .arcade-sophia{width:66px;height:165px;left:0}.arcade-art .arcade-sophia[data-pose=jump]{width:120px;height:150px;left:-4px}}

/* Explicit clipped image windows keep the two lower-row Sophia poses visible. */
.arcade-art .arcade-sophia[data-pose=think],.arcade-art .arcade-sophia[data-pose=heart]{background-image:none;overflow:hidden}.arcade-art .arcade-sophia .arcade-pose-sheet{position:absolute;display:block;width:400%;max-width:none;height:200%;top:-100%;left:-100%;object-fit:fill;margin:0;padding:0;border:0;border-radius:0;background:none}.arcade-art .arcade-sophia[data-pose=heart] .arcade-pose-sheet{left:-300%}

/* Approved reference artwork: responsive image windows preserve Sophia exactly. */
body.arcade-kids{background:#fff}body.arcade-kids main{max-width:1440px;width:calc(100% - 48px)}body.arcade-kids .approved-hero{display:block;padding:0;min-height:0;aspect-ratio:1223/224;position:relative;border:0;border-radius:0;margin:0 -24px 0;box-shadow:none;overflow:hidden;background:#23bdf7}body.arcade-kids .approved-hero:after{display:none}body.arcade-kids .approved-hero .approved-banner{position:absolute;inset:0;width:100%;height:auto;max-height:none;filter:none;display:block;object-fit:initial}body.arcade-kids .arcade-tabs{align-items:center;gap:12px;padding:20px 4px 28px;background:linear-gradient(#f5f5ff,#fff);border-radius:28px 28px 0 0;position:relative;margin-top:-2px}.arcade-tabs button{border:0;background:#eeedff;font-size:20px;flex:1;padding:14px 16px;white-space:nowrap}.arcade-tabs button span{font-size:30px}.arcade-motto{font-size:17px;color:#163373;font-weight:700;margin-left:auto;padding:12px 20px;border-radius:28px;background:white;box-shadow:0 3px 12px #6662a320}body.arcade-kids .choices{gap:30px;align-items:start;grid-template-columns:repeat(4,minmax(0,1fr))}body.arcade-kids .choices button.approved-card{padding:0;min-height:0;border:0;border-radius:24px;background:none;box-shadow:0 5px 16px #5d51a533;display:block;position:relative;overflow:hidden;width:100%}.approved-window{position:absolute;inset:0;overflow:hidden;pointer-events:none}.approved-window img{position:absolute;max-width:none;object-fit:fill;display:block}.arcade-message{font-size:clamp(24px,3vw,40px);font-weight:700;text-align:center;color:#1248b1;align-self:center;line-height:1.45;transform:rotate(-8deg);margin:0;padding:20px 8px}.arcade-message span{display:block;font-size:75px}.approved-footer{min-height:155px;background:linear-gradient(165deg,#d978f9 0%,#6660ff 30%,#4e50f6 65%,#20c9e8 66%);border-radius:45% 20% 0 0 / 30% 30% 0 0;color:white;display:flex;align-items:center;justify-content:center;gap:60px;font-size:25px;padding:40px 20px}.approved-footer b{color:#06278a}.in-activity .arcade-message{display:none}
@media(max-width:1100px){body.arcade-kids .choices{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.arcade-tabs button{font-size:16px;padding:10px}.arcade-tabs button span{font-size:23px}.arcade-motto{display:none}}
@media(max-width:700px){body.arcade-kids main{width:calc(100% - 28px)}body.arcade-kids .approved-hero{margin:0 -14px;aspect-ratio:1223/260}body.arcade-kids .choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}body.arcade-kids .choices button.approved-card{border-radius:18px}.arcade-tabs{gap:6px!important;padding:16px 0 22px!important}.arcade-tabs button{flex:initial;font-size:14px;min-height:46px;padding:9px 12px}.arcade-tabs button span{font-size:20px}.arcade-message{font-size:24px}.arcade-message span{font-size:55px}.approved-footer{font-size:19px;gap:18px;flex-direction:column}.arcade-review-note{font-size:12px!important}}

/* Consistent frames retain the approved artwork proportions. */
body.arcade-kids .choices button.approved-card{aspect-ratio:5/7;align-self:start}body.arcade-kids .family-adventure-card{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}

.choices .craft-entry{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:14px;background:linear-gradient(150deg,#ffde76,#ffb78b);color:#25347b;padding:20px;text-align:center;border:5px solid #fff;box-shadow:0 8px 20px #53378522}.choices .craft-entry[hidden]{display:none}.craft-entry>span{font-size:clamp(48px,6vw,80px)}.craft-entry>b{font-size:clamp(20px,2vw,30px);line-height:1.1}.craft-entry>small{font-size:15px}.craft-entry>strong{font-size:14px;background:#fff8e8;border-radius:14px;padding:12px}

.arcade-kids .dance-entry{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:radial-gradient(circle at top,#535de7,#331384);color:white;text-align:center;text-decoration:none;padding:20px;border:3px solid #71eaff;box-shadow:0 8px 24px #432d8b35;border-radius:24px;aspect-ratio:5/7}.dance-entry>span{font-size:80px}.dance-entry b{font-size:32px;line-height:1.1}.dance-entry small{font-size:18px}.dance-entry strong{background:#ffe264;color:#342260;border-radius:20px;padding:12px;font-size:18px}
