:root {
  --adventure-navy: #081547;
  --adventure-yellow: #ffd62e;
  --adventure-blue: #36d4f1;
  --adventure-green: #75e6a1;
  --adventure-pink: #ff5d8f;
  --adventure-purple: #8b6df6;
  --adventure-orange: #ff9e3d;
}

.mega-games-v16,
.mini-school-v16 {
  margin: 0 0 clamp(2rem, 5vw, 4rem);
  padding: clamp(1.1rem, 3vw, 2rem);
  border: 5px solid var(--adventure-navy);
  border-radius: 32px;
  color: var(--adventure-navy);
  background: #fff;
  box-shadow: 0 9px 0 var(--adventure-navy);
}

.mega-games-v16 {
  background:
    radial-gradient(circle at 95% 5%, rgba(255,255,255,.75) 0 5rem, transparent 5.1rem),
    linear-gradient(135deg, #dffaff 0 42%, #fff4ad 100%);
}

.mini-school-v16 {
  background:
    radial-gradient(circle at 4% 8%, rgba(255,93,143,.16) 0 5rem, transparent 5.1rem),
    linear-gradient(135deg, #fff 0 54%, #e8ddff 100%);
}

.v16-section-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.1rem;
}

.v16-section-head h2,
.v16-section-head h3 {
  margin: .15rem 0 .35rem;
  line-height: .98;
}

.v16-section-head p { margin: 0; max-width: 720px; }

.v16-kicker {
  display: inline-flex;
  margin: 0;
  padding: .28rem .65rem;
  border: 2px solid var(--adventure-navy);
  border-radius: 999px;
  background: #fff;
  font-size: .74rem;
  font-weight: 950;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.mega-game-grid-v16,
.course-grid-v16,
.sport-grid-v16 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

.mega-game-card-v16,
.course-card-v16,
.sport-card-v16 {
  position: relative;
  min-height: 250px;
  overflow: hidden;
  display: grid;
  align-content: end;
  gap: .45rem;
  padding: 1.15rem;
  border: 4px solid var(--adventure-navy);
  border-radius: 25px;
  color: var(--adventure-navy);
  box-shadow: 0 6px 0 var(--adventure-navy);
}

.mega-game-card-v16:nth-child(1) { background: linear-gradient(155deg,#74e4ff,#fff4ad); }
.mega-game-card-v16:nth-child(2) { background: linear-gradient(155deg,#a68cff,#ffd4e3); }
.mega-game-card-v16:nth-child(3) { background: linear-gradient(155deg,#87edb1,#fff4ad); }
.mega-game-card-v16:nth-child(4) { background: linear-gradient(155deg,#b5f2a8,#64e6cb); }
.mega-game-card-v16:nth-child(5) { background: linear-gradient(155deg,#ffd65b,#ff9e6d); }
.course-card-v16:nth-child(4n+1) { background:#fff0a8; }
.course-card-v16:nth-child(4n+2) { background:#dffaff; }
.course-card-v16:nth-child(4n+3) { background:#ffddeb; }
.course-card-v16:nth-child(4n+4) { background:#e7ddff; }
.sport-card-v16:nth-child(odd) { background:#dffaff; }
.sport-card-v16:nth-child(even) { background:#e3f9d8; }

.mega-game-card-v16:hover,
.mega-game-card-v16:focus-within,
.course-card-v16:hover,
.course-card-v16:focus-within,
.sport-card-v16:hover,
.sport-card-v16:focus-within {
  transform: translateY(3px);
  box-shadow: 0 3px 0 var(--adventure-navy);
}

.v16-card-emoji {
  position: absolute;
  top: .75rem;
  right: .8rem;
  font-size: clamp(4.2rem, 8vw, 7rem);
  filter: drop-shadow(0 5px 0 rgba(8,21,71,.15));
  transform: rotate(4deg);
}

html[dir="rtl"] .v16-card-emoji { right:auto; left:.8rem; }

.mega-game-card-v16 h3,
.course-card-v16 h3,
.sport-card-v16 h3 { margin: 0; font-size: clamp(1.25rem, 2.2vw, 1.65rem); }
.mega-game-card-v16 p,
.course-card-v16 p,
.sport-card-v16 p { margin:0; font-weight:750; }

.v16-tags { display:flex; flex-wrap:wrap; gap:.4rem; }
.v16-tag {
  padding:.23rem .52rem;
  border:2px solid var(--adventure-navy);
  border-radius:999px;
  background:#fff;
  font-size:.72rem;
  font-weight:950;
}
.v16-tag.premium { color:#fff; background:var(--adventure-purple); }

.v16-launch,
.v16-choice,
.v16-action {
  min-height: 48px;
  padding: .65rem .85rem;
  border: 3px solid var(--adventure-navy);
  border-radius: 15px;
  color: var(--adventure-navy);
  background: #fff;
  box-shadow: 0 4px 0 var(--adventure-navy);
  font: inherit;
  font-weight: 950;
  cursor: pointer;
  touch-action: manipulation;
}

.v16-launch { width:100%; margin-top:.35rem; background:var(--adventure-yellow); }
.v16-action.primary { background:var(--adventure-green); }
.v16-action.pink { background:var(--adventure-pink); }
.v16-action.blue { background:var(--adventure-blue); }
.v16-action:active,
.v16-choice:active,
.v16-launch:active { transform:translateY(3px); box-shadow:0 1px 0 var(--adventure-navy); }
.v16-action:disabled { opacity:.55; cursor:not-allowed; }

.age-switch-v16,
.game-toolbar-v16,
.course-controls-v16,
.sport-controls-v16 {
  display:flex;
  flex-wrap:wrap;
  gap:.65rem;
  align-items:center;
}

.age-switch-v16 { margin:1rem 0; }
.age-switch-v16 button[aria-pressed="true"] { background:var(--adventure-yellow); }

.sport-world-v16 {
  min-height: calc(100vh - 190px);
  padding: clamp(2rem, 6vw, 5rem) 0;
  color: var(--adventure-navy);
  background:
    radial-gradient(circle at 8% 14%, rgba(255,214,46,.65) 0 8rem, transparent 8.1rem),
    radial-gradient(circle at 91% 83%, rgba(255,93,143,.25) 0 10rem, transparent 10.1rem),
    #e9fff1;
}

.sport-world-v16 .shell > h2 { font-size:clamp(2rem,6vw,4.7rem); margin:.3rem 0; }
.sport-safety-v16 {
  display:flex;
  gap:.75rem;
  align-items:center;
  margin:1.2rem 0;
  padding:.8rem 1rem;
  border:3px solid var(--adventure-navy);
  border-radius:18px;
  background:#fff;
  font-weight:850;
}

.v16-dialog {
  width: min(1180px, calc(100vw - 1rem));
  max-width: none;
  height: min(900px, calc(100dvh - 1rem));
  max-height: none;
  margin:auto;
  padding:0;
  overflow:hidden;
  border:5px solid var(--adventure-navy);
  border-radius:30px;
  color:var(--adventure-navy);
  background:#fffaf0;
  box-shadow:0 18px 0 rgba(8,21,71,.3);
}

.v16-dialog::backdrop { background:rgba(8,21,71,.75); backdrop-filter:blur(6px); }
.v16-dialog-shell { height:100%; display:grid; grid-template-rows:auto minmax(0,1fr); }
.v16-dialog-head {
  display:flex;
  align-items:center;
  gap:.75rem;
  padding:.75rem 1rem;
  border-bottom:4px solid var(--adventure-navy);
  background:#fff;
}
.v16-dialog-head img { width:92px; height:auto; }
.v16-dialog-head h2 { margin:0; font-size:clamp(1.05rem,3vw,1.55rem); }
.v16-dialog-close { margin-inline-start:auto; width:48px; height:48px; padding:0; border-radius:50%; }
.v16-dialog-body { min-height:0; overflow:auto; padding:clamp(.75rem,2vw,1.25rem); }

.game-shell-v16 { display:grid; gap:.85rem; }
.game-meta-v16 { display:flex; flex-wrap:wrap; gap:.5rem; align-items:center; justify-content:space-between; }
.game-stat-v16 { display:inline-flex; gap:.35rem; align-items:center; padding:.38rem .65rem; border:2px solid var(--adventure-navy); border-radius:999px; background:#fff; font-weight:950; }
.game-canvas-wrap-v16 {
  position:relative;
  width:100%;
  aspect-ratio: 16 / 9;
  overflow:hidden;
  border:5px solid var(--adventure-navy);
  border-radius:24px;
  background:#b9ecff;
}
.game-canvas-wrap-v16 canvas { width:100%; height:100%; display:block; touch-action:none; }
.game-message-v16 {
  position:absolute;
  top:.75rem;
  left:50%;
  transform:translateX(-50%);
  max-width:calc(100% - 1.5rem);
  padding:.5rem .8rem;
  border:3px solid var(--adventure-navy);
  border-radius:14px;
  background:#fff;
  font-weight:950;
  text-align:center;
}
.touch-pad-v16 { display:grid; grid-template-columns:repeat(3,54px); grid-template-rows:repeat(2,54px); gap:.35rem; justify-content:center; }
.touch-pad-v16 button { padding:0; font-size:1.35rem; }
.touch-pad-v16 [data-drive="up"] { grid-column:2; }
.touch-pad-v16 [data-drive="left"] { grid-column:1; grid-row:2; }
.touch-pad-v16 [data-drive="down"] { grid-column:2; grid-row:2; }
.touch-pad-v16 [data-drive="right"] { grid-column:3; grid-row:2; }

.snake-shell-v17 { display:grid; gap:.85rem; }
.snake-stage-v17 {
  position:relative;
  width:100%;
  aspect-ratio:3 / 2;
  overflow:hidden;
  border:5px solid var(--adventure-navy);
  border-radius:24px;
  background:#e9fff1;
}
.snake-stage-v17 canvas { width:100%; height:100%; display:block; touch-action:none; }
.snake-footer-v17 { display:grid; grid-template-columns:auto minmax(0,1fr); gap:1rem; align-items:center; }
.snake-instructions-v17 { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.75rem; align-items:center; }
.snake-instructions-v17 p { margin:0; font-weight:850; }
.snake-pad-v17 [data-snake-direction="up"] { grid-column:2; }
.snake-pad-v17 [data-snake-direction="left"] { grid-column:1; grid-row:2; }
.snake-pad-v17 [data-snake-direction="down"] { grid-column:2; grid-row:2; }
.snake-pad-v17 [data-snake-direction="right"] { grid-column:3; grid-row:2; }

.blocks-layout-v17 { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:1rem; }
.blocks-workspace-v17,
.blocks-tools-v17 { display:grid; align-content:start; gap:.8rem; }
.blocks-challenge-v17 {
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:.65rem;
  align-items:center;
  padding:.65rem .75rem;
  border:3px solid var(--adventure-navy);
  border-radius:18px;
  background:#fff4ad;
}
.blocks-challenge-v17 span,
.blocks-challenge-v17 strong { font-weight:950; }
.blocks-challenge-v17 .v16-action { min-height:42px; padding:.4rem .6rem; }
.block-board-v17 {
  display:grid;
  grid-template-columns:repeat(10,minmax(0,1fr));
  width:100%;
  aspect-ratio:5 / 4;
  overflow:hidden;
  border:5px solid var(--adventure-navy);
  border-radius:24px;
  background:
    linear-gradient(45deg,rgba(8,21,71,.04) 25%,transparent 25%,transparent 75%,rgba(8,21,71,.04) 75%),
    #f7fbff;
  background-size:28px 28px;
}
.block-board-v17 > button {
  position:relative;
  min-width:0;
  padding:0;
  border:1px solid rgba(8,21,71,.18);
  background:transparent;
  cursor:pointer;
}
.block-board-v17 > button.is-filled { background:var(--placed-color); box-shadow:inset 0 -5px 0 rgba(8,21,71,.2); }
.block-board-v17 > button.is-filled::after {
  content:"";
  position:absolute;
  top:18%;
  left:25%;
  width:50%;
  height:30%;
  border:2px solid rgba(8,21,71,.35);
  border-radius:50%;
  background:rgba(255,255,255,.25);
}
.blocks-tools-v17 { padding:.85rem; border:4px solid var(--adventure-navy); border-radius:22px; background:#fff; }
.blocks-tools-v17 > p { margin:0; font-weight:850; }
.block-palette-v17 { display:grid; grid-template-columns:repeat(4,1fr); gap:.5rem; }
.block-palette-v17 button {
  min-height:48px;
  border:3px solid var(--adventure-navy);
  border-radius:13px;
  background:var(--block-color);
  box-shadow:0 3px 0 var(--adventure-navy);
  cursor:pointer;
}
.block-palette-v17 button[aria-pressed="true"] { outline:4px solid var(--adventure-pink); outline-offset:2px; transform:translateY(2px); box-shadow:0 1px 0 var(--adventure-navy); }
.block-shapes-v17,
.block-actions-v17 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.5rem; }
.block-shapes-v17 .v16-choice,
.block-actions-v17 .v16-action { min-height:46px; padding:.45rem .55rem; }
.block-shapes-v17 [aria-pressed="true"] { background:var(--adventure-yellow); }
.block-actions-v17 [data-block-save] { grid-column:1 / -1; }

.premium-lock-v16 {
  display:grid;
  place-items:center;
  gap:.65rem;
  min-height:360px;
  padding:2rem;
  border:4px dashed var(--adventure-purple);
  border-radius:25px;
  background:#f1ecff;
  text-align:center;
}
.premium-lock-v16 span { font-size:4rem; }
.premium-lock-v16 h3 { margin:0; font-size:clamp(1.5rem,4vw,2.4rem); }

.world-layout-v16 { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:1rem; }
.world-side-v16 { display:grid; align-content:start; gap:.75rem; }
.avatar-preview-v16 {
  display:grid;
  place-items:center;
  min-height:145px;
  border:4px solid var(--adventure-navy);
  border-radius:22px;
  background:linear-gradient(#dffaff,#fff4ad);
}
.avatar-figure-v16 { position:relative; width:74px; height:118px; }
.avatar-head-v16 { position:absolute; top:6px; left:17px; width:42px; height:42px; border:3px solid var(--adventure-navy); border-radius:50%; background:var(--skin,#d69b72); }
.avatar-hair-v16 { position:absolute; top:3px; left:14px; width:48px; height:23px; border-radius:28px 28px 8px 8px; background:var(--hair,#40291d); }
.avatar-body-v16 { position:absolute; top:46px; left:12px; width:52px; height:48px; border:3px solid var(--adventure-navy); border-radius:16px 16px 8px 8px; background:var(--shirt,#36d4f1); }
.avatar-leg-v16 { position:absolute; top:91px; width:19px; height:27px; border:3px solid var(--adventure-navy); border-radius:4px 4px 10px 10px; background:#4259a7; }
.avatar-leg-v16.left { left:16px; } .avatar-leg-v16.right { right:14px; }
.avatar-face-v16 { position:absolute; z-index:3; top:21px; left:29px; font-size:15px; }
.world-side-v16 label { display:grid; gap:.25rem; font-weight:900; }
.world-side-v16 select,
.world-side-v16 input[type="file"] { width:100%; min-height:45px; padding:.45rem; border:3px solid var(--adventure-navy); border-radius:13px; background:#fff; color:var(--adventure-navy); font:inherit; }
.safe-chat-v16 { display:flex; flex-wrap:wrap; gap:.4rem; }
.safe-chat-v16 button { min-height:40px; padding:.35rem .5rem; }
.online-status-v16 { padding:.5rem .65rem; border:2px solid var(--adventure-navy); border-radius:13px; background:#fff; font-size:.86rem; font-weight:900; }
.online-status-v16.is-live { background:#c9f8d9; }
.privacy-note-v16 { margin:0; font-size:.78rem; font-weight:750; color:#36506d; }

.pet-layout-v16 { display:grid; grid-template-columns:minmax(250px,.85fr) minmax(0,1.15fr); gap:1rem; }
.pet-stage-v16 { position:relative; min-height:360px; display:grid; place-items:center; overflow:hidden; border:5px solid var(--adventure-navy); border-radius:25px; background:linear-gradient(#bfeeff 0 62%,#a5e59a 62%); }
.pet-emoji-v16 { font-size:clamp(7rem,20vw,12rem); filter:drop-shadow(0 10px 0 rgba(8,21,71,.17)); animation:petBounceV16 1.8s ease-in-out infinite; }
@keyframes petBounceV16 { 50% { transform:translateY(-10px) rotate(2deg); } }
.pet-panel-v16 { display:grid; gap:.75rem; align-content:start; }
.pet-choices-v16,.pet-actions-v16 { display:flex; flex-wrap:wrap; gap:.55rem; }
.pet-meter-v16 { display:grid; grid-template-columns:90px 1fr 38px; align-items:center; gap:.45rem; font-weight:900; }
.pet-meter-v16 meter { width:100%; height:22px; accent-color:var(--adventure-green); }

.course-player-v16 { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(230px,.65fr); gap:1rem; }
.course-screen-v16 {
  min-height:440px;
  display:grid;
  place-items:center;
  padding:1rem;
  overflow:hidden;
  border:5px solid var(--adventure-navy);
  border-radius:26px;
  background:linear-gradient(150deg,#dffaff,#fff0a8 52%,#ffddeb);
  text-align:center;
}
.course-screen-v16.is-playing .course-symbol-v16 { animation:coursePopV16 1.2s ease-in-out infinite; }
@keyframes coursePopV16 { 50% { transform:scale(1.12) rotate(-2deg); } }
.course-symbol-v16 { font-size:clamp(5rem,18vw,11rem); line-height:1; text-shadow:0 7px 0 rgba(8,21,71,.14); }
.course-screen-v16 h3 { margin:.6rem 0 .2rem; font-size:clamp(1.55rem,5vw,3.3rem); }
.course-screen-v16 p { margin:.2rem 0; font-size:clamp(1rem,2.6vw,1.4rem); font-weight:850; }
.course-side-v16 { display:grid; align-content:start; gap:.7rem; }
.course-progress-v16 { width:100%; height:23px; accent-color:var(--adventure-pink); }
.quiz-options-v16 { display:grid; gap:.55rem; }
.quiz-options-v16 button { text-align:start; }
.quiz-result-v16 { min-height:1.5rem; font-weight:950; }

.sport-player-v16 { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(220px,.7fr); gap:1rem; }
.sport-screen-v16 { min-height:430px; display:grid; place-items:center; padding:1rem; border:5px solid var(--adventure-navy); border-radius:26px; background:linear-gradient(145deg,#dffaff,#e3f9d8); text-align:center; }
.sport-demo-v25 { display:grid; justify-items:center; width:min(100%,620px); }
.sport-scene-v25 { position:relative; display:grid; place-items:end center; width:min(100%,480px); height:270px; overflow:hidden; border:4px solid var(--adventure-navy); border-radius:24px; background:linear-gradient(#8cecff 0 58%,#75e6a1 59% 100%); box-shadow:0 8px 0 rgba(8,21,71,.15); }
.sport-scene-v25::before { position:absolute; left:-5%; right:-5%; bottom:24%; height:12px; content:""; background:repeating-linear-gradient(90deg,#fff 0 35px,transparent 35px 62px); opacity:.88; }
.sport-scene-v25 img { position:relative; z-index:2; width:auto; height:250px; max-width:66%; object-fit:contain; object-position:center bottom; filter:drop-shadow(0 8px 7px rgba(8,21,71,.22)); transform-origin:center bottom; animation:sportCoachV25 1.05s ease-in-out infinite alternate; }
.sport-screen-v16:not(.is-playing) .sport-scene-v25 img { animation-play-state:paused; }
.sport-target-v25 { position:absolute; top:15px; left:18px; z-index:3; display:grid; place-items:center; width:72px; height:72px; border:4px solid var(--adventure-navy); border-radius:20px; background:#fff; box-shadow:4px 5px 0 var(--adventure-yellow); font-size:2.4rem; animation:sportTargetV25 1.2s ease-in-out infinite alternate; }
.sport-scene-v25 i { position:absolute; z-index:1; width:48px; height:9px; border-radius:999px; background:#fff; opacity:.8; animation:sportSpeedV25 .85s linear infinite; }.sport-scene-v25 i:nth-of-type(1){top:36%;left:12%;}.sport-scene-v25 i:nth-of-type(2){top:50%;left:4%;animation-delay:-.3s}.sport-scene-v25 i:nth-of-type(3){top:65%;left:18%;animation-delay:-.55s}
.sport-motion-v16 { margin-top:.45rem; font-size:clamp(2.8rem,8vw,4.5rem); animation:sportMoveV16 1s ease-in-out infinite alternate; }
@keyframes sportCoachV25 { to { transform:translateX(16px) translateY(-5px) rotate(2deg) scale(1.025); } }
@keyframes sportTargetV25 { to { transform:rotate(-7deg) scale(1.08); } }
@keyframes sportSpeedV25 { from { translate:-60px 0; } to { translate:430px 0; } }
@keyframes sportMoveV16 { to { transform:translateY(-17px) rotate(5deg) scale(1.04); } }
.sport-timer-v16 { display:grid; place-items:center; width:125px; height:125px; border:10px solid var(--adventure-yellow); border-radius:50%; background:#fff; box-shadow:inset 0 0 0 5px var(--adventure-navy); font-size:2.2rem; font-weight:950; }
.sport-side-v16 { display:grid; align-content:start; gap:.75rem; }
@media (max-width:720px) { .sport-scene-v25 { height:220px; }.sport-scene-v25 img { height:205px; }.sport-player-v16 { grid-template-columns:1fr; }.sport-screen-v16 { min-height:390px; } }

.celebrate-v16 { animation:celebrateV16 .5s ease-in-out 3; }
@keyframes celebrateV16 { 50% { transform:scale(1.04) rotate(1deg); filter:saturate(1.4); } }

.is-hidden { display:none !important; }
.brick-shell-v21 { display:grid; grid-template-columns:minmax(280px,.72fr) minmax(250px,.58fr); gap:1rem; max-width:850px; margin:0 auto; }
.brick-stage-v21 { position:relative; display:grid; justify-items:center; align-content:start; min-height:0; padding:.75rem; border:5px solid var(--adventure-navy); border-radius:26px; background:linear-gradient(145deg,#dffaff,#eee7ff); box-shadow:0 8px 0 var(--adventure-navy); }
.brick-stage-v21 canvas { display:block; width:min(100%,300px); height:auto; max-height:min(65vh,600px); border:4px solid var(--adventure-navy); border-radius:15px; background:#e9fbff; box-shadow:inset 0 0 24px rgba(54,212,241,.25); image-rendering:auto; }
.brick-stage-v21 .game-message-v16 { position:static; width:100%; margin:.6rem 0 0; }
.brick-side-v21 { display:grid; align-content:start; gap:.75rem; }
.brick-stats-v21 { display:grid; grid-template-columns:1fr 1fr; gap:.55rem; }
.brick-stats-v21 span,.brick-next-v21 { padding:.7rem; border:4px solid var(--adventure-navy); border-radius:17px; background:#fff; font-weight:900; }
.brick-stats-v21 span:nth-child(1) { background:#fff3ae; }.brick-stats-v21 span:nth-child(2) { background:#dffaff; }.brick-stats-v21 span:nth-child(3) { background:#e7ddff; }.brick-stats-v21 span:nth-child(4) { background:#dcf8e6; }
.brick-stats-v21 b { display:block; font-size:1.35rem; }
.brick-next-v21 { display:grid; grid-template-columns:1fr 120px; align-items:center; background:#ffe4ee; }
.brick-next-v21 canvas { width:100px; height:100px; justify-self:end; border:3px solid var(--adventure-navy); border-radius:14px; background:#fff; }
.brick-controls-v21 { display:grid; grid-template-columns:repeat(3,1fr); gap:.5rem; }
.brick-controls-v21 [data-brick-action="drop"] { grid-column:2 / 4; }
.brick-start-v21 { min-height:56px; font-size:1.05rem; }

.quiz-library-v21>header { display:flex; align-items:center; gap:1rem; padding:1rem; border:5px solid var(--adventure-navy); border-radius:25px; background:linear-gradient(135deg,#fff3a9,#dffaff); }
.quiz-library-v21>header>span { font-size:4.4rem; }.quiz-library-v21 h3,.quiz-library-v21 p { margin:.25rem 0; }
.quiz-library-grid-v21 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; margin-top:1rem; }
.quiz-library-grid-v21>button { min-height:260px; display:grid; grid-template-rows:auto auto 1fr auto; justify-items:start; gap:.45rem; padding:1.15rem; border:5px solid var(--adventure-navy); border-radius:25px; color:var(--adventure-navy); background:#fff; box-shadow:0 8px 0 var(--adventure-navy); text-align:start; cursor:pointer; }
.quiz-library-grid-v21>button:nth-child(1) { background:linear-gradient(145deg,#e1f9df,#fff7b7); }.quiz-library-grid-v21>button:nth-child(2) { background:linear-gradient(145deg,#dffaff,#e8ddff); }.quiz-library-grid-v21>button:nth-child(3) { background:linear-gradient(145deg,#ffe1ec,#fff4b0); }
.quiz-library-grid-v21>button>span { font-size:4.5rem; }.quiz-library-grid-v21>button h3 { font-size:1.45rem; }.quiz-library-grid-v21>button b { padding:.5rem .7rem; border:3px solid var(--adventure-navy); border-radius:12px; background:var(--adventure-yellow); }
.spoken-quiz-v21 { display:grid; grid-template-columns:minmax(0,1fr) 220px; gap:1rem; }
.spoken-quiz-stage-v21 { position:relative; min-height:480px; display:grid; align-content:start; justify-items:center; gap:.8rem; padding:1.2rem; overflow:hidden; border:5px solid var(--adventure-navy); border-radius:27px; background:linear-gradient(145deg,#fff,#dffaff 54%,#fff4b0); text-align:center; }
.spoken-quiz-icon-v21 { font-size:5rem; }.spoken-quiz-stage-v21 h3 { margin:.2rem 0; font-size:clamp(1.4rem,4vw,2.3rem); }
.spoken-quiz-answers-v21 { width:100%; display:grid; gap:.65rem; }
.spoken-quiz-answers-v21>button { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:.65rem; min-height:62px; padding:.55rem .75rem; border:4px solid var(--adventure-navy); border-radius:18px; color:var(--adventure-navy); background:#fff; box-shadow:0 5px 0 var(--adventure-navy); text-align:start; font-weight:900; cursor:pointer; }
.spoken-quiz-answers-v21>button>span { display:grid; place-items:center; width:38px; height:38px; border:3px solid var(--adventure-navy); border-radius:50%; background:var(--adventure-cyan); }.spoken-quiz-answers-v21>button>b { font-size:1.25rem; }
.spoken-quiz-answers-v21>button.is-correct { background:#bff4cf; outline:5px solid #35b86a; }.spoken-quiz-answers-v21>button.is-wrong { animation:quizShakeV21 .28s linear; background:#ffe0e0; }
@keyframes quizShakeV21 { 25% { transform:translateX(-7px); } 75% { transform:translateX(7px); } }
.spoken-quiz-side-v21 { display:grid; align-content:start; gap:.75rem; }.spoken-quiz-side-v21 img { width:100%; max-height:220px; object-fit:contain; filter:drop-shadow(0 7px 0 rgba(8,21,71,.15)); animation:quizMonsterV21 .8s ease-in-out infinite alternate; }.spoken-quiz-side-v21 img.is-waiting { filter:grayscale(.7); opacity:.48; animation:none; }
@keyframes quizMonsterV21 { to { transform:translateY(-9px) rotate(3deg); } }
.quiz-finish-v21 { min-height:480px; display:grid; place-content:center; justify-items:center; gap:.8rem; border:5px solid var(--adventure-navy); border-radius:28px; background:linear-gradient(145deg,#fff3a9,#dffaff,#ffe0ed); text-align:center; }.quiz-finish-v21 img { width:min(260px,60vw); }.quiz-finish-v21 h3 { margin:0; font-size:clamp(1.8rem,6vw,3.4rem); }.quiz-finish-v21>div { display:flex; flex-wrap:wrap; justify-content:center; gap:.65rem; }

@media (max-width: 900px) {
  .mega-game-grid-v16,.course-grid-v16,.sport-grid-v16 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .world-layout-v16,.course-player-v16,.sport-player-v16,.pet-layout-v16,.blocks-layout-v17,.brick-shell-v21,.spoken-quiz-v21 { grid-template-columns:1fr; }
  .world-side-v16 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .blocks-tools-v17 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .blocks-tools-v17 > p,.blocks-tools-v17 .quiz-result-v16 { grid-column:1 / -1; }
  .spoken-quiz-side-v21 { grid-template-columns:130px 1fr 1fr; align-items:center; }.spoken-quiz-side-v21 img { max-height:130px; }
}

@media (max-width: 620px) {
  .v16-section-head { align-items:start; flex-direction:column; }
  .mega-game-grid-v16,.course-grid-v16,.sport-grid-v16 { grid-template-columns:1fr; }
  .mega-game-card-v16,.course-card-v16,.sport-card-v16 { min-height:225px; }
  .v16-dialog { width:100vw; height:100dvh; border-width:0; border-radius:0; }
  .v16-dialog-head { padding:.55rem .65rem; }
  .v16-dialog-head img { width:70px; }
  .game-canvas-wrap-v16 { aspect-ratio:4/3; }
  .snake-stage-v17 { aspect-ratio:3/2; }
  .snake-footer-v17,.snake-instructions-v17 { grid-template-columns:1fr; }
  .snake-instructions-v17 { text-align:center; }
  .world-side-v16 { grid-template-columns:1fr; }
  .blocks-tools-v17 { grid-template-columns:1fr; }
  .blocks-tools-v17 > p,.blocks-tools-v17 .quiz-result-v16 { grid-column:auto; }
  .blocks-challenge-v17 { grid-template-columns:1fr; text-align:center; }
  .quiz-library-grid-v21 { grid-template-columns:1fr; }.quiz-library-grid-v21>button { min-height:180px; grid-template-columns:auto 1fr; grid-template-rows:auto 1fr auto; }.quiz-library-grid-v21>button>span { grid-row:1 / 4; font-size:3.5rem; }.quiz-library-grid-v21>button b { grid-column:2; }
  .spoken-quiz-side-v21 { grid-template-columns:90px 1fr; }.spoken-quiz-side-v21 img { max-height:90px; }.spoken-quiz-side-v21 .v16-action { grid-column:1 / -1; }.spoken-quiz-stage-v21 { min-height:0; padding:.8rem; }
  .brick-shell-v21 { grid-template-columns:1fr; align-items:start; }.brick-stage-v21 canvas { max-height:min(58dvh,600px); width:auto; max-width:100%; }.brick-stats-v21 { grid-template-columns:1fr 1fr; }.brick-next-v21 { grid-template-columns:1fr 1fr; }.brick-next-v21 canvas { justify-self:center; }.brick-controls-v21 { grid-template-columns:1fr 1fr; }.brick-controls-v21 [data-brick-action="drop"] { grid-column:auto; }
  .course-screen-v16,.sport-screen-v16 { min-height:330px; }
  .pet-stage-v16 { min-height:280px; }
}

@media (prefers-reduced-motion: reduce) {
  .pet-emoji-v16,.course-symbol-v16,.sport-motion-v16,.sport-scene-v25 img,.sport-target-v25,.sport-scene-v25 i,.spoken-quiz-side-v21 img { animation:none !important; }
}
