/* A drawing pad and a joining bench share paper, timber and child-led payoffs.
   Their material layers stay behind the actual ink and input targets. */
.lg-play:has(.garden-paths,.path-gallery) .practice-heading { height:104px; margin:0 auto 8px; }
.lg-play:has(.garden-paths,.path-gallery) .practice-heading > :first-child { width:88px!important; height:98px!important; }
.lg-play:has(.garden-paths,.path-gallery) .practice-stage { width:min(680px,96%); max-height:610px; margin:0 auto 20px; }
.lg-app .garden-paths,.lg-app .path-gallery {
  position:relative; box-sizing:border-box; display:grid; grid-template-columns:minmax(0,1fr);
  grid-template-rows:16px minmax(140px,1fr) 64px 60px; justify-items:center; align-items:center;
  width:100%; height:100%; gap:12px; padding:8px 16px 12px;
}
.lg-app .path-progress { grid-row:1; margin:0; }
.lg-app .path-workbook { position:relative; grid-row:2; width:100%; height:100%; max-height:360px; min-height:0; box-sizing:border-box; padding:20px 18px 22px 26px; border-radius:20px 30px 28px 18px; background:linear-gradient(110deg,#4e9677,#2f5c46 22px,#4e9677 26px); box-shadow:0 7px 0 #2f5c46,0 14px 0 #4a362020; }
.lg-app .path-workbook::before { content:""; position:absolute; top:7px; bottom:8px; left:12px; width:3px; border-radius:3px; background:#b7e779; opacity:.6; }
.lg-app .path-workbook::after { content:""; position:absolute; top:8px; left:50%; width:58px; height:16px; transform:translateX(-50%); border-radius:6px 6px 9px 9px; background:linear-gradient(#e5dcc8,#c9bda4 65%,#a89478); border:2.4px solid #4a3620; box-shadow:0 3px 0 #4a362022; pointer-events:none; }
.lg-app .path-workbook .path-paper { box-sizing:border-box; width:100%; height:100%; min-height:0; max-height:none; margin:0; border:0; border-radius:7px 14px 20px 8px; background:linear-gradient(120deg,#fffdf7,#fffaf0 85%,#e5dcc8); box-shadow:0 3px 0 #e5dcc8,0 6px 0 #c9bda4,0 8px 0 #fffaf0; }
.lg-app .path-workbook .path-paper::after { content:""; position:absolute; bottom:0; right:0; width:23px; height:23px; background:linear-gradient(135deg,#fffaf0 46%,#e5dcc8 49%,#c9bda4); border-radius:5px 0 0 0; pointer-events:none; }
.lg-app .garden-paths > .drawing-palette { grid-row:3; gap:10px; padding:5px 14px; border-radius:12px 12px 22px 22px; background:#c9bda4; box-shadow:inset 0 3px 0 #a89478,0 3px 0 #fffaf0; }
.lg-app .garden-paths .drawing-color { position:relative; width:48px; min-width:48px; height:54px; border-radius:12px; padding:4px 12px; box-shadow:0 3px 0 #a89478; }
.lg-app .garden-paths .drawing-color span { width:18px; height:34px; border-radius:8px 8px 3px 3px; border:2.4px solid #4a3620; box-shadow:inset 4px 0 0 #fffaf044; clip-path:polygon(50% 0,100% 24%,100% 100%,0 100%,0 24%); }
.lg-app .garden-paths .drawing-color[aria-pressed="true"] { background:#ffe49a; transform:translateY(-4px); box-shadow:0 6px 0 #a89478; }
.lg-app .garden-paths > .practice-tools { grid-row:4; padding:5px 12px; gap:14px; background:#e5dcc8; border:0; box-shadow:0 3px 0 #c9bda4; }
.lg-app .garden-paths .practice-button,.lg-app .path-gallery .practice-button { display:grid; place-items:center; box-sizing:border-box; line-height:1; width:50px; height:50px; min-width:48px; min-height:48px; padding:8px; border:3px solid #4a3620; background:linear-gradient(#fffdf7,#fffaf0 80%,#e5dcc8); box-shadow:0 3px 0 #a89478; }
.lg-app :is(.garden-paths,.path-gallery) .practice-button > svg { display:block; width:30px; height:30px; max-width:100%; max-height:100%; pointer-events:none; }
.lg-app .path-made > svg { display:block; width:28px; height:28px; }
.lg-app .garden-paths .path-next,.lg-app .garden-paths .path-continue,.lg-app .path-gallery .path-close { background:linear-gradient(#ffa06e,#e8743c); box-shadow:0 3px 0 #b0501f; }
.lg-app .garden-paths .path-continue { width:90px; }
.lg-app .garden-paths [hidden] { display:none!important; }
.lg-app .path-made { position:absolute; width:38px; height:38px; display:grid; place-items:center; bottom:8px; right:10px; border-radius:50%; background:#b7e779; border:3px solid #2f5c46; color:#2f5c46; box-shadow:0 3px 0 #2f5c46; }
.lg-app .garden-paths.is-reviewing > .path-review-tools { grid-row:3 / 5; }
.lg-app .garden-paths.is-reviewing canvas { pointer-events:none; }
.lg-app .path-gallery { grid-template-rows:minmax(140px,1fr) 68px 60px; }
.lg-app .path-gallery .path-workbook { grid-row:1; }
.path-gallery-preview > svg { display:block; width:100%; height:100%; }
.path-gallery-pages { display:flex; justify-content:center; gap:8px; width:100%; }
.path-page { box-sizing:border-box; width:76px; height:58px; min-width:44px; padding:3px; border:3px solid #a89478; border-radius:8px; background:#fffaf0; box-shadow:0 3px 0 #c9bda4; }
.path-page > svg { width:100%; height:100%; display:block; pointer-events:none; }
.path-page[aria-pressed="true"] { border-color:#4a3620; background:#ffe49a; transform:translateY(-3px); }
.lg-app :is(.garden-paths,.path-gallery) button:focus-visible { outline:4px solid var(--lg-focus); outline-offset:4px; }

/* The timber joinery plane replaces Build's opaque rectangular backdrop. */
.lg-app .lg-play[data-activity="build"] .play-stage { background:transparent; border:0; box-shadow:none; overflow:visible; width:min(700px,96%); max-height:min(520px,110vw); }
.lg-activity-art.is-joinery { border-radius:0; overflow:visible; }
.lg-activity-art.is-joinery > .is-pencils { width:clamp(56px,12%,84px); left:2%; bottom:21%; }
.lg-activity-art.is-joinery > .is-paper { width:clamp(48px,10%,70px); right:2%; bottom:21%; }
.lg-app .lg-play[data-activity="build"] .build-scene { inset:8% 9% 20%; padding:8px 6px 44px; gap:24px; border-radius:22px 22px 28px 28px; background:var(--lg-board,linear-gradient(110deg,#7fce54 -20%,#4e9677 36%,#2f5c46 70%)); box-shadow:inset 0 4px 0 var(--lg-board-edge,#2f5c46),0 3px 0 #fffaf0; }
.lg-app .lg-play[data-activity="build"] .build-slots { order:1; flex:0 0 auto; width:auto; min-width:0; max-width:100%; min-height:100px; padding:14px 18px; border:0; border-radius:18px; background:none; box-shadow:none; }
.lg-app .lg-play[data-activity="build"] .build-slot { width:clamp(56px,16vw,100px); min-width:44px; padding:0; border:2.4px dashed #c9bda4; border-radius:15px; background:#fffaf0; box-shadow:inset 0 3px 0 #e5dcc8; }
.lg-app .lg-play[data-activity="build"] .build-slot.is-filled { border:0; background:transparent; box-shadow:none; }
.lg-app .lg-play[data-activity="build"] .build-tray { order:2; min-width:0; width:auto; max-width:100%; padding:10px 16px; border:0; border-radius:16px; background:#c9bda4; box-shadow:inset 0 4px 0 #a89478,0 3px 0 #fffaf0; }
.lg-app .lg-play[data-activity="build"] .build-tile { width:clamp(60px,17vw,94px); filter:drop-shadow(0 4px 0 #4a362020); }
.lg-app .build-finish[hidden] { display:none; }
.lg-app .build-finish { order:2; display:flex; flex-direction:column; align-items:center; gap:8px; }
.lg-app .build-finish .build-whole { position:relative; width:clamp(110px,30vw,170px); height:auto; max-height:none; padding:0; border:0; background:none; cursor:pointer; filter:drop-shadow(0 5px 0 #4a362025); animation:craft-word-settle 240ms ease-out; }
.lg-app .build-finish .build-whole > svg { display:block; width:100%; height:auto; }
.build-listen { position:absolute; bottom:9px; right:4px; width:34px; height:34px; display:grid; place-items:center; background:#fffaf0; border:2.4px solid #4a3620; border-radius:50%; color:#4a3620; }
.build-listen > svg { width:19px; height:19px; }
.lg-app .build-finish .build-next { min-width:86px; min-height:48px; height:48px; padding:5px 20px; color:#4a3620; }
.lg-app .lg-play[data-activity="build"] .build-scene.is-ready { gap:8px; padding-bottom:8px; }
.lg-app .lg-play[data-activity="build"] .is-ready .build-tray { display:none; }
.lg-app .lg-play[data-activity="build"] .is-ready .build-slots { min-height:0; padding:3px 14px; }
.lg-app .lg-play[data-activity="build"] .is-ready .build-slot { width:48px; }
.lg-app .lg-play[data-activity="build"] .is-ready .build-undo-cue { display:none; }
.lg-app .build-finish button:focus-visible { outline:4px solid var(--lg-focus); outline-offset:5px; border-radius:16px; }
@keyframes craft-word-settle { from { transform:translateY(-6px) scale(.96); } to { transform:none; } }
.lg-reduce-motion .build-finish .build-whole { animation:none; }
@media(prefers-reduced-motion:reduce) { .lg-app .build-finish .build-whole { animation:none; } }
@media(max-height:650px) {
 .lg-play:has(.garden-paths,.path-gallery) .practice-heading { height:76px; margin-bottom:4px; }
 .lg-play:has(.garden-paths,.path-gallery) .practice-heading > :first-child { width:64px!important; height:72px!important; }
 .lg-app .garden-paths { grid-template-rows:12px minmax(110px,1fr) 58px 54px; padding:4px 8px 8px; gap:8px; }
 .lg-app .path-workbook { padding:18px 12px 18px 22px; }
 .lg-app .garden-paths > .drawing-palette { padding:3px 8px; gap:6px; }
 .lg-app .garden-paths .drawing-color { height:48px; }
 .lg-app .garden-paths > .practice-tools { gap:10px; padding:2px 10px; }
 .lg-app .garden-paths .practice-button { width:48px; height:48px; }
 .lg-app .path-gallery { gap:10px; padding:10px 8px; }
 .path-gallery-pages { gap:5px; }
 .path-page { width:46px; height:50px; }
 .lg-app .lg-play[data-activity="build"] .build-scene { gap:18px; }
 .lg-app .lg-play[data-activity="build"] .build-slots { min-height:78px; padding:8px; }
 .lg-app .build-finish .build-whole { width:100px; }
}
@media(max-width:560px) {
 .lg-app .garden-paths { grid-template-rows:16px minmax(80px,1fr) 104px 60px; gap:8px; }
 .lg-app .garden-paths > .drawing-palette { display:grid; grid-template-columns:repeat(4,44px); padding:3px 8px; gap:6px; }
 .lg-app .garden-paths .drawing-color { width:44px; min-width:44px; height:44px; min-height:44px; padding:4px 10px; }
 .lg-app .garden-paths .drawing-color span { height:28px; }
}
@media(orientation:landscape) and (max-height:450px) {
 .lg-play:has(.garden-paths,.path-gallery) .practice-heading { position:absolute; top:4px; left:64px; right:64px; width:auto; height:48px; margin:0; }
 .lg-app .lg-screen.lg-play:has(.garden-paths,.path-gallery) .practice-replay { height:44px; min-height:44px; max-height:44px; padding:4px 10px; font-size:32px; }
 .lg-play:has(.garden-paths,.path-gallery) .practice-heading > :first-child { width:40px!important; height:44px!important; }
 .lg-app .lg-screen.lg-play:has(.garden-paths,.path-gallery) { padding:4px 8px; overflow:hidden; }
 .lg-app .lg-screen.lg-play:has(.garden-paths,.path-gallery) > .practice-stage { margin:54px auto 0; max-height:none; flex:1 1 0; }
 .lg-app .garden-paths { grid-template-columns:minmax(0,1fr) 100px; grid-template-rows:12px minmax(100px,1fr) 50px; gap:5px 10px; padding:0 6px 8px; }
 .lg-app .garden-paths .path-progress { grid-column:1; grid-row:1; }
 .lg-app .garden-paths .path-workbook { grid-column:1; grid-row:2; }
 .lg-app .garden-paths > .drawing-palette { grid-column:2; grid-row:1 / 4; display:grid; grid-template-columns:repeat(2,44px); padding:3px; gap:4px; }
 .lg-app .garden-paths .drawing-color { width:44px; min-width:44px; height:44px; min-height:44px; padding:4px 10px; }
 .lg-app .garden-paths .drawing-color span { height:28px; }
 .lg-app .garden-paths > .practice-tools { grid-column:1; grid-row:3; gap:12px; padding:0 10px; }
 .lg-app .garden-paths.is-reviewing > .path-review-tools { grid-column:2; grid-row:1 / 4; flex-direction:column; padding:4px; gap:16px; }
 .lg-app .garden-paths .path-continue { width:48px; }
 .lg-app .path-gallery { grid-template-columns:minmax(0,1fr) 110px; grid-template-rows:minmax(100px,1fr) 48px; padding:4px 10px 8px; gap:8px 14px; }
 .lg-app .path-gallery .path-workbook { grid-column:1; grid-row:1 / 3; }
 .lg-app .path-gallery-pages { grid-column:2; grid-row:1; display:grid; grid-template-columns:repeat(2,44px); gap:5px; }
 .lg-app .path-page { width:44px; height:44px; }
 .lg-app .path-close { grid-column:2; grid-row:2; }
 /* A correction occupies real space above the desk, never over its slots. */
 .lg-app .lg-play[data-activity="build"] .play-stage { min-height:0; max-height:none; flex:1 1 0; margin:0 auto 8px; }
 .lg-app .lg-play[data-activity="build"] > .learning-hint { position:relative; left:auto; top:auto; transform:none; flex:0 0 auto; margin:0 auto 6px; padding:2px 10px; }
 .lg-app .lg-play[data-activity="build"] .learning-compare > svg { height:36px; }
 .lg-app .lg-play[data-activity="build"]:has(.learning-hint:not([hidden])) .build-scene { gap:4px; padding:2px 6px; }
 .lg-app .lg-play[data-activity="build"]:has(.learning-hint:not([hidden])) .build-slots { min-height:48px; padding:2px 8px; }
 .lg-app .lg-play[data-activity="build"]:has(.learning-hint:not([hidden])) :is(.build-slot,.build-tile) { width:44px; }
 .lg-app .lg-play[data-activity="build"] .build-scene { inset:7% 12% 20%; gap:8px; padding:8px 6px; }
 .lg-app .lg-play[data-activity="build"] .build-slots { min-height:52px; padding:4px 10px; }
 .lg-app .lg-play[data-activity="build"] .build-slot { width:48px; }
 .lg-app .lg-play[data-activity="build"] .build-tile { width:50px; }
 .lg-app .lg-play[data-activity="build"] .build-tray { padding:3px 12px; }
 .lg-app .lg-play[data-activity="build"] .build-scene.is-ready { display:grid; grid-template-columns:minmax(0,1fr) 86px; grid-template-rows:50px minmax(0,1fr); justify-items:center; gap:6px 12px; }
 .lg-app .lg-play[data-activity="build"] .is-ready .build-slots { grid-column:1; grid-row:1; gap:4px; padding:3px 8px; }
 .lg-app .lg-play[data-activity="build"] .is-ready .build-slot { width:44px; }
 .lg-app .build-finish { display:contents; }
 .lg-app .build-finish .build-whole { grid-column:1; grid-row:2; width:80px; }
 .lg-app .build-finish .build-next { grid-column:2; grid-row:1 / 3; }
 .lg-activity-art.is-joinery > .activity-prop { width:40px; bottom:21%; }
}
/* Paper settles once on arrival; action feedback never blocks input. */
.lg-app .path-workbook { animation:craft-paper-settle 240ms ease-out; }
@keyframes craft-paper-settle { from { translate:0 -4px; } to { translate:0 0; } }
.lg-app :is(.garden-paths,.path-gallery) button:active,.lg-app .build-finish .build-whole:active { translate:0 2px; }
.lg-reduce-motion .path-workbook { animation:none; }
@media(prefers-reduced-motion:reduce) { .lg-app .path-workbook { animation:none; } }

/* Joinery: the same low timber table supports connecting and taking apart.
   The green mat is a quiet physical destination, not a second scenery panel. */
.lg-app .lg-play:is([data-activity="blend"],[data-activity="fuse"],[data-activity="chain"]) .play-stage {
 background:transparent; border:0; box-shadow:none; overflow:visible;
 width:min(700px,96%); max-height:min(520px,118vw);
}
.lg-app .lg-play:is([data-activity="blend"],[data-activity="fuse"],[data-activity="chain"]) .blend-scene {
 position:absolute; inset:7% 7% 22%; width:auto; height:auto; min-height:0; overflow:visible;
 border:0; border-radius:22px 22px 28px 28px;
 background:var(--lg-board,linear-gradient(110deg,#7fce54 -20%,#4e9677 36%,#2f5c46 70%)); box-shadow:inset 0 4px 0 var(--lg-board-edge,#2f5c46),0 3px 0 #fffaf0;
}
.lg-app .lg-play:is([data-activity="blend"],[data-activity="fuse"],[data-activity="chain"]) .blend-glow {
 width:34%; height:35%; top:46%; border:2.4px dashed #ffe49a; border-radius:50%; opacity:.42;
 background:radial-gradient(ellipse,#ffe49a55,transparent 72%); animation:none;
}
.lg-app .lg-play:is([data-activity="blend"],[data-activity="fuse"],[data-activity="chain"]) .blend-part {
 width:clamp(76px,23vw,112px); filter:drop-shadow(0 5px 0 rgb(43 30 18 / .16)); touch-action:none;
}
.lg-app .lg-play:is([data-activity="blend"],[data-activity="fuse"],[data-activity="chain"]) .blend-part.is-lifted {
 outline:3px solid #ffe49a; outline-offset:3px; border-radius:18px; scale:1.04;
}
.lg-app .lg-play .chain-scene .chain-base { width:clamp(100px,30vw,148px); left:68%; }
.lg-app .join-result { position:absolute; inset:10px 8px 12px; display:grid; grid-template-rows:minmax(80px,1fr) auto; justify-items:center; gap:12px; }
.lg-app .join-result.has-variants { grid-template-rows:minmax(80px,1fr) 50px auto; gap:8px; }
.lg-app .join-output { width:100%; min-height:0; display:grid; place-items:center; }
.lg-app .join-result [hidden] { display:none!important; }
.lg-app .join-whole,.lg-app .join-piece,.lg-app .join-variant { position:relative; display:block; padding:0; border:0; background:none; cursor:pointer; }
.lg-app .join-whole { width:clamp(112px,32vw,164px); max-width:100%; filter:drop-shadow(0 5px 0 rgb(43 30 18 / .16)); animation:craft-word-settle 240ms ease-out; }
.lg-app .join-parts { display:flex; flex-direction:row-reverse; align-items:center; justify-content:center; gap:16px; width:100%; }
.lg-app .join-piece { width:clamp(76px,22vw,112px); filter:drop-shadow(0 4px 0 rgb(43 30 18 / .16)); animation:craft-word-settle 240ms ease-out; }
.lg-app :is(.join-whole,.join-piece,.join-variant) > svg { display:block; width:100%; height:auto; pointer-events:none; }
.lg-app .join-variants { display:flex; align-items:center; gap:10px; padding:3px 10px; border-radius:12px; background:#c9bda4; box-shadow:inset 0 3px 0 #a89478,0 2px 0 #fffaf0; }
.lg-app .join-variant { width:44px; height:44px; border-radius:12px; }
.lg-app .join-variant[aria-pressed="true"] { outline:3px solid #ffe49a; outline-offset:1px; translate:0 -3px; }
.lg-app .join-tools { display:flex; align-items:center; gap:22px; }
.lg-app .join-tools button { box-sizing:border-box; display:grid; place-items:center; min-height:48px; height:48px; padding:5px 10px; border:3px solid #4a3620; border-radius:16px; color:#4a3620; cursor:pointer; }
.lg-app .join-toggle { width:72px; background:linear-gradient(#fffdf7,#fffaf0 75%,#e5dcc8); box-shadow:0 4px 0 #a89478; }
.lg-app .join-toggle > svg { display:block; width:48px; height:30px; }
.lg-app .join-next { width:82px; background:linear-gradient(#ffa06e,#e8743c); box-shadow:0 4px 0 #b0501f; }
.lg-app .join-next > svg { display:block; width:32px; height:32px; }
.lg-app .join-result button:active { translate:0 2px; }
.lg-app .join-result button:focus-visible { outline:4px solid var(--lg-focus-on-dark); outline-offset:4px; border-radius:16px; }
@media(max-width:350px) {
 .lg-app .join-whole { width:108px; }
 .lg-app .join-result { gap:8px; inset:8px 6px 10px; }
 .lg-app .join-result.has-variants { gap:6px; }
 .lg-app .join-piece { width:76px; }
 .lg-app .join-whole .build-listen { width:28px; height:28px; }
}
@media(orientation:landscape) and (max-height:450px) {
 .lg-app .lg-play:is([data-activity="blend"],[data-activity="fuse"],[data-activity="chain"]) .blend-part { width:66px; }
 .lg-app .lg-play .chain-scene .chain-base { width:92px; }
 .lg-app .join-result,.lg-app .join-result.has-variants { inset:5px 8px; grid-template-columns:minmax(0,1fr) 90px; grid-template-rows:minmax(52px,1fr) 46px; gap:6px 14px; }
 .lg-app .join-output { grid-column:1; grid-row:1 / 3; }
 .lg-app .has-variants .join-output { grid-row:1; }
 .lg-app .join-whole { width:86px; }
 .lg-app .has-variants .join-whole { width:70px; }
 .lg-app .join-whole .build-listen { width:24px; height:24px; right:0; bottom:4px; }
 .lg-app .join-whole .build-listen > svg { width:16px; height:16px; }
 .lg-app .join-piece { width:64px; }
 .lg-app .join-variants { grid-column:1; grid-row:2; padding:0 8px; }
 .lg-app .join-tools { grid-column:2; grid-row:1 / 3; flex-direction:column; gap:10px; }
 .lg-app .join-tools button { min-height:44px; height:44px; }
}
.lg-app.lg-reduce-motion :is(.join-whole,.join-piece) { animation:none; }
@media(prefers-reduced-motion:reduce) { .lg-app :is(.join-whole,.join-piece) { animation:none; } }
/* Props sit on the near edge, over the mat's empty corners. The plane remains
   behind input; neither layer intercepts a pointer or changes tile geometry. */
.lg-activity-art.is-joinery:is([data-activity-art="build"],[data-activity-art="blend"],[data-activity-art="fuse"],[data-activity-art="chain"],[data-activity-art="unfuse"]) { z-index:auto; }
.lg-activity-art.is-joinery:is([data-activity-art="build"],[data-activity-art="blend"],[data-activity-art="fuse"],[data-activity-art="chain"],[data-activity-art="unfuse"]) > .activity-plane { z-index:0; }
.lg-activity-art.is-joinery:is([data-activity-art="build"],[data-activity-art="blend"],[data-activity-art="fuse"],[data-activity-art="chain"],[data-activity-art="unfuse"]) > .activity-prop { z-index:2; }
/* Releasing a drag must not restart arrival or move its hit geometry. */
.lg-app .lg-play .blend-part.is-touched:not(.is-fusing) { animation:none; }

/* Discovery furniture. Child-sized paper pieces stay proportional while the
   timber planes resize around them. The garden remains visible beyond the feet. */
.lg-app .lg-play[data-activity="unfuse"] .play-stage {
 background:transparent; border:0; box-shadow:none; overflow:visible;
 width:min(700px,96%); max-height:min(480px,100vw);
}
.lg-app .lg-play[data-activity="unfuse"] .unfuse-scene {
 position:absolute; inset:7% 7% 22%; width:auto; height:auto; min-height:0;
 display:grid; grid-template-rows:minmax(0,1fr) 48px; gap:12px; padding:12px;
 border:0; border-radius:22px 22px 28px 28px; overflow:visible;
 background:var(--lg-board,linear-gradient(110deg,#7fce54 -20%,#4e9677 36%,#2f5c46 70%)); box-shadow:inset 0 4px 0 var(--lg-board-edge,#2f5c46),0 3px 0 #fffaf0;
}
.lg-app :is(.unfuse-scene,.parade-scene) [hidden] { display:none!important; }
.lg-app :is(.unfuse-scene,.parade-scene) button { color:#4a3620; }
.lg-app .discovery-next,.lg-app .discovery-tool {
 display:grid; place-items:center; box-sizing:border-box; width:80px; height:48px;
 min-width:48px; min-height:48px; padding:5px 12px; border:3px solid #4a3620;
 border-radius:16px; background:linear-gradient(#ffa06e,#e8743c); box-shadow:0 4px 0 #b0501f; cursor:pointer;
}
.lg-app .discovery-next > svg { display:block; width:32px; height:32px; pointer-events:none; }
.lg-app .discovery-tool { background:linear-gradient(#fffdf7,#fffaf0 75%,#e5dcc8); box-shadow:0 4px 0 #a89478; }
.lg-app .discovery-tool > svg { display:block; width:48px; height:30px; pointer-events:none; }
.lg-app .unfuse-pull { width:100%; height:100%; gap:12px; }
.lg-app .unfuse-whole { width:clamp(112px,34vw,164px); flex:0 1 auto; }
.lg-app [data-activity="unfuse"] .unfuse-arrow { color:#ffe49a; width:24px; flex:0 0 24px; }
.lg-app [data-activity="unfuse"] .unfuse-seam:before,.lg-app [data-activity="unfuse"] .unfuse-seam:after { background:#a89478; }
.lg-app .unfuse-discovery { grid-area:1 / 1 / 3 / 2; display:grid; width:100%; height:100%; grid-template-rows:minmax(0,1fr) 48px; justify-items:center; align-items:center; gap:12px; }
.lg-app .unfuse-halves { width:100%; justify-content:center; align-items:center; gap:18px; }
.lg-app .unfuse-half,.lg-app .unfuse-found {
 position:relative; display:block; padding:0; border:0; background:none; cursor:pointer;
 width:clamp(96px,28vw,140px); filter:drop-shadow(0 4px 0 rgb(43 30 18 / .16));
}
.lg-app :is(.unfuse-half,.unfuse-found) > svg { display:block; width:100%; height:auto; pointer-events:none; }
.lg-app .unfuse-half .build-listen { width:27px; height:27px; right:0; bottom:5px; }
.lg-app .unfuse-half .build-listen > svg { width:16px; height:16px; }
.lg-app [data-activity="unfuse"] .unfuse-quiz { grid-area:1 / 1 / 3 / 2; width:100%; height:100%; align-items:center; gap:8px; }
.lg-app [data-activity="unfuse"] .unfuse-pick { width:calc((100% - 16px) / 3); max-width:104px; min-width:44px; }
.lg-app [data-activity="unfuse"] .unfuse-quiz.is-solved { display:grid; grid-template-rows:minmax(0,1fr) 48px; justify-items:center; justify-content:stretch; gap:12px; }
.lg-app .unfuse-found { width:clamp(112px,32vw,152px); animation:craft-word-settle 240ms ease-out; }

.lg-app .lg-play[data-activity="parade"] .play-stage {
 background:transparent; border:0; box-shadow:none; overflow:visible;
 width:min(600px,96%); min-height:0; max-height:min(540px,120vw); margin:0 auto 24px; mask-image:none; -webkit-mask-image:none;
}
.lg-activity-art.is-parade { border-radius:0; overflow:visible; }
.lg-app .lg-play[data-activity="parade"] .parade-scene {
 position:absolute; inset:9% 11% 18%; width:auto; height:auto; min-height:0; padding:8px;
 display:grid; grid-template-rows:minmax(72px,1fr) auto 48px; justify-items:center; align-items:center;
 gap:12px; box-sizing:border-box; background:none;
}
.lg-app .parade-display { display:flex; align-items:center; justify-content:center; gap:14px; width:100%; height:100%; min-height:0; }
.lg-app .parade-star,.lg-app .parade-reference {
 position:relative; padding:0; border:0; background:none; cursor:pointer; flex:0 1 auto;
 filter:drop-shadow(0 4px 0 rgb(43 30 18 / .16));
}
.lg-app .parade-star { width:clamp(96px,30vw,140px); }
.lg-app .parade-reference { width:clamp(52px,15vw,70px); align-self:center; }
.lg-app :is(.parade-star,.parade-reference) > svg { display:block; width:100%; height:auto; pointer-events:none; }
.lg-app .lg-play[data-activity="parade"] .parade-spots {
 position:relative; width:100%; display:flex; align-items:center; justify-content:center; gap:10px; padding:0;
 border:0; border-radius:0; background:none; box-shadow:none; box-sizing:border-box;
}
.lg-app [data-activity="parade"] .parade-spot {
 display:grid; place-items:center; aspect-ratio:104 / 110;
 width:calc((100% - 20px) / 3); max-width:102px; min-width:48px; min-height:48px; height:auto;
 border:3px solid #4a3620; border-radius:16px; padding:3px;
 background:linear-gradient(#fffaf0,#e5dcc8 80%,#c9bda4); box-shadow:0 4px 0 #2f5c46;
}
.lg-app [data-activity="parade"] .parade-mystery { display:block; width:100%; }
.lg-app [data-activity="parade"] :is(.parade-mystery,.parade-form) > svg { display:block; width:100%; }
.lg-app [data-activity="parade"] .parade-spot.is-dressed { border:0; padding:0; background:none; box-shadow:none; }
.lg-app [data-activity="parade"] .parade-spot[aria-pressed="true"] { outline:3px solid #ffe49a; outline-offset:3px; }
.lg-app [data-activity="parade"] .parade-spot .parade-form { width:100%; }
.lg-app [data-activity="parade"] .parade-form > svg { animation:craft-word-settle 240ms ease-out; }
.lg-app .parade-actions { display:grid; place-items:center; height:48px; width:100%; }
.lg-app [data-activity="parade"] .parade-choice { width:clamp(72px,22vw,112px); border:0; padding:0; background:none; box-shadow:none; }
.lg-app [data-activity="parade"] .parade-choice.is-found { filter:drop-shadow(0 4px 0 rgb(43 30 18 / .16)); }
.lg-app :is(.unfuse-scene,.parade-scene) button:focus-visible { outline:4px solid var(--lg-focus-on-dark); outline-offset:4px; border-radius:16px; }
.lg-app :is(.unfuse-scene,.parade-scene) button:active { translate:0 2px; }
@media(max-width:350px) {
 .lg-app .lg-play[data-activity="parade"] .parade-scene { inset:9% 10% 18%; padding:4px; gap:8px; }
 .lg-app [data-activity="parade"] .parade-spots { gap:8px; }
 .lg-app .parade-star { width:90px; }
 .lg-app .parade-display { gap:8px; }
 .lg-app .parade-star .build-listen { width:26px; height:26px; bottom:5px; right:0; }
 .lg-app .parade-star .build-listen > svg { width:16px; height:16px; }
 .lg-app .lg-play[data-activity="unfuse"] .unfuse-scene { padding:10px; gap:8px; }
}
@media(orientation:landscape) and (max-height:450px) {
 .lg-app .lg-play:is([data-activity="unfuse"],[data-activity="parade"]) .play-stage { max-height:none; margin:0 auto; flex:1 1 0; }
 .lg-app .lg-play[data-activity="unfuse"] .unfuse-scene { grid-template-columns:minmax(0,1fr) 80px; grid-template-rows:1fr; gap:12px; padding:8px 20px; }
 .lg-app .unfuse-whole { width:100px; }
 .lg-app .unfuse-discovery { grid-area:1 / 1 / 2 / 3; grid-template-columns:minmax(0,1fr) 80px; grid-template-rows:1fr; gap:12px; }
 .lg-app .unfuse-half { width:76px; }
 .lg-app [data-activity="unfuse"] .unfuse-quiz { grid-area:1 / 1 / 2 / 3; }
 .lg-app [data-activity="unfuse"] .unfuse-pick { max-width:88px; }
 .lg-app [data-activity="unfuse"] .unfuse-quiz.is-solved { grid-template-columns:minmax(0,1fr) 80px; grid-template-rows:1fr; }
 .lg-app .unfuse-found { width:98px; }
 .lg-app .lg-play[data-activity="parade"] .parade-scene { inset:9% 10% 18%; grid-template-columns:120px minmax(0,1fr) 64px; grid-template-rows:1fr; gap:12px; padding:5px; }
 .lg-app .parade-display { gap:6px; }
 .lg-app .parade-star { width:72px; }
 .lg-app .parade-reference { width:44px; min-width:44px; }
 .lg-app .parade-star .build-listen { width:24px; height:24px; right:0; bottom:4px; }
 .lg-app .parade-star .build-listen > svg { width:16px; height:16px; }
 .lg-app [data-activity="parade"] .parade-spots { gap:8px; }
 .lg-app [data-activity="parade"] .parade-spot { min-width:44px; min-height:44px; max-width:78px; border-radius:12px; }
 .lg-app .discovery-next,.lg-app .discovery-tool { width:64px; height:44px; min-height:44px; }
 .lg-app .parade-actions { height:44px; }
}
.lg-app.lg-reduce-motion :is(.unfuse-half,.unfuse-found,.parade-form > svg) { animation:none!important; }
@media(prefers-reduced-motion:reduce) { .lg-app :is(.unfuse-half,.unfuse-found,.parade-form > svg) { animation:none!important; } }

/* A shallow shelf supports the form folders; it never covers teaching ink. */
.lg-app [data-activity="parade"] .parade-spots::before { content:""; position:absolute; left:-5px; right:-5px; bottom:-7px; height:12px; border-radius:4px 4px 8px 8px; background:linear-gradient(#fffaf0 0 22%,#c9bda4 22% 64%,#a89478 64%); box-shadow:0 4px 0 #2b1e1220; }
.lg-app .parade-star::before,.lg-app .parade-reference::before { content:""; position:absolute; top:0; left:50%; translate:-50% -25%; width:22px; height:10px; border:1.6px solid #4a3620; border-radius:4px; background:linear-gradient(#fffaf0,#c9bda4); z-index:1; pointer-events:none; }
.lg-app .parade-reference::before { width:14px; height:6px; }
/* Short landscape reserves a real row for a comparison hint. An overlay at
   y=88 would collide with the top of a letter card after a retry. */
@media(orientation:landscape) and (max-height:450px) {
 .lg-app .lg-play:is([data-activity="unfuse"],[data-activity="parade"]) > .learning-hint { position:relative; left:auto; top:auto; transform:none; flex:0 0 auto; margin:0 auto 6px; padding:2px 10px; }
 .lg-app .lg-play:is([data-activity="unfuse"],[data-activity="parade"]) .learning-compare { min-width:36px; height:34px; padding:0 4px; }
 .lg-app .lg-play:is([data-activity="unfuse"],[data-activity="parade"]) .learning-compare > svg { width:48px; height:34px; }
}

/* Matching seed tray and orchard: fixed-proportion play objects above scenery. */
.lg-app .lg-play[data-activity="pairs"] .play-stage {
 width:min(680px,96%); max-height:min(480px,112vw); background:none; border:0; box-shadow:none;
}
.lg-app .lg-play[data-activity="pairs"] .pairs-grid {
 inset:8% 10% 40%; padding:6px; gap:14px; grid-template-columns:repeat(2,minmax(0,1fr));
 grid-auto-rows:min-content;
}
.lg-app .lg-play[data-activity="pairs"] .pairs-card {
 position:relative; width:clamp(72px,24vw,112px); max-width:100%; aspect-ratio:104 / 110; align-self:center; transform:none;
 filter:drop-shadow(0 4px 0 rgb(43 30 18 / .16)); transition:translate 180ms ease-out; touch-action:none;
}
.lg-app .lg-play[data-activity="pairs"] .pairs-card.is-selected {
 translate:0 -5px; outline:3px solid #ffe49a; outline-offset:3px; filter:drop-shadow(0 7px 0 rgb(43 30 18 / .25));
}
.lg-app .lg-play[data-activity="pairs"] .pairs-card.is-matched {
 opacity:1; transform:none; pointer-events:auto; animation:orchard-settle 240ms ease-out;
 outline:3px solid #f3c955; outline-offset:0; translate:0 0;
}
/* Drag and tap use the same two-card match. A receiving rim marks any
   nearby card; it does not give the answer away. */
.lg-app .lg-play[data-activity="pairs"] .pairs-card.is-dragging { z-index:3; translate:0 -5px; transition:none; animation:none; filter:drop-shadow(0 9px 0 rgb(43 30 18 / .25)); }
.lg-app .lg-play[data-activity="pairs"] .pairs-card.is-near { outline:4px solid #ffe49a; outline-offset:4px; }
.lg-app .lg-play[data-activity="pairs"] .pairs-grid[data-pair-count="3"] { grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.lg-app .pairs-garden { position:absolute; z-index:1; left:50%; bottom:19%; display:flex; gap:12px; translate:-50% 0; }
.lg-app .pairs-pot { display:block; width:52px; }
.lg-app .pairs-pot > svg { display:block; width:100%; }
.pairs-sprout { opacity:0; transform:translateY(6px) scale(.8); transform-origin:36px 54px; transition:opacity 180ms,transform 240ms ease-out; }
.is-grown .pairs-sprout { opacity:1; transform:none; }
.lg-app .orchard-listen { position:absolute; right:-2px; bottom:-3px; display:grid; place-items:center; width:28px; height:28px; border-radius:50%; background:#fffaf0; border:2px solid #4a3620; pointer-events:none; }
.lg-app .orchard-listen svg { display:block; width:18px; height:18px; }
.lg-app .orchard-next { position:absolute; z-index:4; width:80px; height:48px; min-height:44px; padding:4px 16px; border:3px solid #4a3620; border-radius:22px; background:linear-gradient(#ffa06e,#e8743c); box-shadow:0 4px 0 #7a3512; cursor:pointer; }
.lg-app .orchard-next[hidden],.lg-app .catch-result[hidden] { display:none; }
.lg-app .pairs-next { bottom:3%; left:50%; translate:-50% 0; }
.lg-app .lg-play[data-activity="catch"] .play-stage { width:min(700px,96%); max-height:min(510px,120vw); border:0; border-radius:40px; box-shadow:0 6px 0 #a89478; }
.lg-activity-art > .is-orchard-tree { top:-4%; width:auto; height:100%; aspect-ratio:150 / 380; }
.lg-activity-art > .is-orchard-tree.is-left { left:0; transform:translateX(-35%); }
.lg-activity-art > .is-orchard-tree.is-right { right:0; transform:translateX(35%) scaleX(-1); }
.lg-app .lg-play[data-activity="catch"] .catch-basket { width:clamp(122px,36vw,166px); bottom:3%; filter:none; }
.lg-app .lg-play[data-activity="catch"] .catch-faller { width:clamp(66px,23vw,104px); padding:0; border:0; background:none; pointer-events:auto; cursor:pointer; touch-action:none; }
.lg-app .lg-play[data-activity="catch"] .catch-choice { width:clamp(72px,24vw,112px); max-width:27%; transform:none; translate:-50% 0; }
.lg-app .lg-play[data-activity="catch"] .catch-choice.is-dragging { z-index:3; filter:drop-shadow(0 5px 0 rgb(43 30 18 / .18)); }
.lg-app .lg-play[data-activity="catch"] .catch-basket.is-near { filter:drop-shadow(0 -3px 0 #ffe49a) drop-shadow(0 3px 0 #c69434); }
.lg-app .catch-result { position:absolute; inset:0; z-index:3; pointer-events:none; }
.lg-app .catch-replay { position:absolute; bottom:15%; left:40%; transform:translateX(-50%); width:clamp(112px,34vw,148px); border:0; padding:0; background:none; cursor:pointer; pointer-events:auto; }
.lg-app .catch-replay > svg { display:block; width:100%; }
.lg-app .catch-replay .orchard-listen { top:3%; bottom:auto; right:0; }
.lg-app .catch-next { bottom:8%; left:auto; right:2%; width:64px; pointer-events:auto; }
.lg-app .lg-play[data-activity="catch"] .is-harvested .catch-basket { z-index:1; left:40%; bottom:7%; width:clamp(150px,43vw,180px); }
.lg-app .lg-play:is([data-activity="catch"],[data-activity="pairs"]) button:focus-visible { outline:4px solid var(--lg-focus-on-dark); outline-offset:4px; }
.lg-app .lg-play:is([data-activity="catch"],[data-activity="pairs"]) button:active { translate:0 2px; }
.lg-app .lg-play[data-activity="pairs"] .pairs-next:active { translate:-50% 2px; }
.lg-app .lg-play[data-activity="catch"] .catch-faller:active { translate:0 0; }
.lg-app .lg-play[data-activity="catch"] .catch-choice:active { translate:-50% 0; }
@keyframes orchard-settle { from { scale:1.04; } to { scale:1; } }
@media(min-width:601px) {
 .lg-app .lg-play[data-activity="pairs"] .pairs-grid[data-pair-count="3"] { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .lg-app .lg-play[data-activity="pairs"] .pairs-card { width:120px; }
 .lg-app .pairs-pot { width:64px; }
}
@media(orientation:landscape) and (max-height:450px) {
 .lg-app .lg-play:is([data-activity="pairs"],[data-activity="catch"]) .play-stage { max-height:none; flex:1 1 0; margin:0 auto; }
 .lg-app .lg-play[data-activity="pairs"] .pairs-grid { inset:10% 20% 22%; gap:8px; padding:0; }
 .lg-app .lg-play[data-activity="pairs"] .pairs-card { width:clamp(44px,18vh,68px); }
 .lg-app .lg-play[data-activity="pairs"] .pairs-grid[data-pair-count="3"] { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .lg-app .pairs-garden { left:10%; top:14%; bottom:auto; flex-direction:column; gap:3px; }
 .lg-app .pairs-pot { width:34px; }
 .lg-app .pairs-next { left:auto; right:5%; top:50%; bottom:auto; translate:0 -50%; width:64px; }
 .lg-app .lg-play[data-activity="pairs"] .pairs-next:active { translate:0 calc(-50% + 2px); }
 .lg-app .orchard-listen { width:20px; height:20px; bottom:-2px; }
 .lg-app .orchard-listen svg { width:14px; height:14px; }
 .lg-app .lg-play[data-activity="catch"] .catch-basket { width:108px; bottom:0; }
 .lg-app .lg-play[data-activity="catch"] .catch-faller { width:62px; }
 .lg-app .lg-play[data-activity="catch"] .catch-choice { width:72px; }
 .lg-app .lg-play[data-activity="catch"] .is-harvested .catch-basket { bottom:8%; width:120px; }
 .lg-app .catch-replay { width:96px; bottom:20%; }
 .lg-app .catch-next { left:auto; right:5%; top:50%; bottom:auto; transform:translateY(-50%); width:64px; }
}
.lg-reduce-motion .pairs-sprout,.lg-reduce-motion .lg-play[data-activity="pairs"] .pairs-card { animation:none!important; transition:none; }
@media(prefers-reduced-motion:reduce) { .pairs-sprout,.lg-app .lg-play[data-activity="pairs"] .pairs-card { animation:none!important; transition:none; } }

.lg-app .catch-basket-front { display:none; }
.lg-app .lg-play[data-activity="catch"] .is-harvested .catch-basket-front { display:block; z-index:4; }

/* Night changes the orchard air, not the readability of paper fruit or baskets. */
.lg-app[data-garden-phase="night"] .is-catch { --orchard-air-top:#6064a0; --orchard-air-mid:#4a4d84; --orchard-air-ground:#a89478; }


/* Optional Burst uses the same seed-tray material as matching. Keep the active
   grid balanced and a small, inert receipt separate from the next question. */
.lg-app .lg-play[data-activity="burst"] .play-stage {
 width:min(640px,96%); min-height:0; max-height:min(500px,112vw); margin:0 auto 24px;
 background:none; border:0; box-shadow:none; overflow:visible; mask-image:none; -webkit-mask-image:none;
}
.lg-app .burst-head {
 position:absolute; top:8%; left:50%; transform:translateX(-50%); display:flex;
 align-items:center; gap:14px; z-index:3;
}
.lg-app .burst-ring { width:48px; height:48px; filter:drop-shadow(0 3px 0 rgb(43 30 18 / .16)); }
.lg-app .burst-ring-fill { transition:stroke-dashoffset 220ms linear; }
.lg-app .burst-pause {
 display:grid; place-items:center; width:48px; height:48px; padding:10px; border:3px solid #4a3620;
 border-radius:16px; background:linear-gradient(#fffaf0,#e5dcc8); color:#4a3620;
 box-shadow:0 4px 0 #c9bda4; cursor:pointer;
}
.lg-app .burst-pause > svg { width:24px; height:24px; }
.lg-app .burst-grid {
 position:absolute; inset:26% 12% 25%; display:grid; grid-template-columns:repeat(6,minmax(0,1fr));
 grid-template-rows:repeat(2,minmax(0,1fr)); gap:10px; place-items:center; padding:0; z-index:2;
}
.lg-app .burst-tile {
 grid-column:span 2; width:100%; height:100%; max-width:104px; max-height:110px;
 min-width:44px; min-height:44px; padding:0; border:0; background:none; cursor:pointer;
 filter:drop-shadow(0 4px 0 rgb(43 30 18 / .2)); transition:translate 140ms ease-out;
}
.lg-app .burst-tile > svg { display:block; width:100%; height:100%; }
.lg-app .burst-grid[data-count="4"] { grid-template-columns:repeat(4,minmax(0,1fr)); }
.lg-app .burst-grid[data-count="5"] .burst-tile:nth-child(4) { grid-column:2 / span 2; }
.lg-app .burst-grid[data-count="5"] .burst-tile:nth-child(5) { grid-column:4 / span 2; }
.lg-app .burst-grid:is([data-count="1"],[data-count="2"],[data-count="3"]) { grid-template-rows:1fr; }
.lg-app .burst-grid[data-count="1"] .burst-tile { grid-column:3 / span 2; }
.lg-app .burst-grid[data-count="2"] { grid-template-columns:repeat(4,minmax(0,1fr)); }
.lg-app .burst-receipt {
 position:absolute; left:50%; bottom:10%; transform:translateX(-50%); display:flex; align-items:center;
 gap:10px; height:58px; padding:3px 12px 3px 5px; border-radius:14px;
 background:linear-gradient(#fffaf0,#e5dcc8 76%,#c9bda4); box-shadow:0 4px 0 #a89478; z-index:4; pointer-events:none;
}
.lg-app .burst-caught { display:block; width:54px; height:58px; transform-origin:0 0; }
.lg-app .burst-caught > svg { display:block; width:100%; height:100%; }
.lg-app .burst-count { min-width:26px; color:#4a3620; font-size:24px; font-weight:900; text-align:center; font-variant-numeric:tabular-nums; }
.lg-app :is(.burst-tile,.burst-pause):active { translate:0 3px; }
.lg-app :is(.burst-tile,.burst-pause):focus-visible { outline:4px solid var(--lg-focus-on-dark); outline-offset:3px; border-radius:16px; }
.lg-app .play-stage.is-paused .burst-grid { opacity:.3; pointer-events:none; }
.lg-app .play-stage.is-paused .burst-ring-fill { transition:none; }

/* The cabinet accepts a folder with a forgiving rim. It only lights during a
   deliberate drag; the Arabic display and the existing Next stay primary. */
.lg-app [data-activity="parade"] .parade-spot { position:relative; touch-action:none; cursor:pointer; }
.lg-app [data-activity="parade"] .parade-spot.is-dragging { z-index:5; filter:drop-shadow(0 8px 0 rgb(43 30 18 / .2)); }
.lg-app .parade-display.is-near .parade-star { outline:4px solid #ffe49a; outline-offset:6px; border-radius:18px; }
.lg-app .parade-star > svg { transform-origin:0 0; }
@media(max-width:350px) {
 .lg-app .burst-head { gap:10px; }
 .lg-app .burst-ring,.lg-app .burst-pause { width:44px; height:44px; }
 .lg-app .burst-grid { gap:8px; }
 .lg-app .burst-receipt { height:48px; bottom:9%; }
 .lg-app .burst-caught { width:46px; height:48px; }
 .lg-app .burst-count { font-size:22px; }
}
@media(orientation:landscape) and (max-height:450px) {
 .lg-app .lg-play[data-activity="burst"] .play-stage { max-height:none; margin:0 auto; flex:1 1 0; }
 .lg-app .burst-head { left:10%; top:16%; bottom:24%; transform:none; flex-direction:column; justify-content:center; gap:8px; }
 .lg-app .burst-ring,.lg-app .burst-pause { width:44px; height:44px; }
 .lg-app .burst-grid { inset:13% 26% 22%; gap:8px; }
 .lg-app .burst-receipt { left:auto; right:11%; bottom:27%; transform:none; height:auto; flex-direction:column; gap:0; padding:4px; }
 .lg-app .burst-caught { width:46px; height:48px; }
 .lg-app .burst-count { font-size:22px; }
}
.lg-app.lg-reduce-motion .burst-ring-fill { transition:none; }
@media(prefers-reduced-motion:reduce) { .lg-app .burst-ring-fill { transition:none; } }

/* Reach (2026-10-02): no toddler target under ~52px. */
.lg-app .garden-paths .drawing-color, .lg-app .trace-tools .drawing-color { min-width: 52px; min-height: 52px; }
.lg-app .discovery-tool { min-height: 56px; }
