/* Keep instructions attached to the thing the child can move. */
.story-layout,.guided-practice{position:relative}.name-matching{overflow:visible}.name-matching .living-arena{border-radius:23px 0 0 23px;overflow:hidden}.name-matching .story-panel{border-radius:0 23px 23px 0;overflow:visible;gap:18px}.name-game{position:relative;z-index:2}.name-game .name-instruction{font:400 clamp(28px,3vw,38px)/1.2 Andika,sans-serif;letter-spacing:0;margin:14px 0 8px;color:#214735}.name-game .name-leadin{font:400 21px/1.45 Andika,sans-serif;margin:0 auto;max-width:290px;color:#4c6650}.name-steps{display:flex;gap:9px;justify-content:center}.name-steps span{width:30px;height:30px;border:2px solid #c7d5b8;border-radius:50%;display:grid;place-items:center;font:400 18px Andika,sans-serif;color:#607757;background:#f1f4e8}.name-steps .current{background:#ffdc78;border-color:#ad7a25;color:#3c4e2e}.name-steps .done{background:#dcecc6;color:#356a3e}.name-game .name-tiles{margin-top:25px;gap:18px}.name-tile{position:relative}.name-tile:not(:disabled):not(.guide-source){background:#f5edcf;border-color:#c5b58d;border-bottom-color:#a89d79}.name-tile.guide-source{outline:4px solid #c4872e;outline-offset:5px;background:#ffda78;box-shadow:0 7px 0 #efdca8}.name-tile.guide-source:before{content:'↓';position:absolute;top:-36px;left:50%;transform:translateX(-50%);font:700 30px Andika,sans-serif;color:#87541e}.show-me{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:10px 17px;min-height:51px;border-radius:16px;background:#e8efdc;color:#285137;border:2px solid #c6d6b7;font:400 21px Andika,sans-serif;margin-top:24px}.show-me svg{width:26px;height:26px}.show-me[hidden]{display:none}.name-feedback:empty{min-height:0;margin:0}.name-feedback{font-size:20px;margin-top:12px}.name-dropzones{top:auto;bottom:19px;left:8%;right:8%;gap:16px}.name-dropzones>b{display:none}.name-dropzones .name-slot{min-width:125px;min-height:72px;font-size:31px;background:#fff9e6eF;color:#2c4c35;border-color:#739760;border-width:3px;box-shadow:0 4px 0 #17392e45}.name-dropzones .name-slot.guide-target,.name-slot.guide-target{background:#fff0b4;color:#27442e;outline:5px solid #ffcf59;outline-offset:5px;border:3px dashed #8d5d27;box-shadow:0 0 0 11px #fff4cd70,0 5px 0 #17392e60}.name-dropzones .name-slot.name-placed{outline:none;background:#e2efc9;color:#284a32;box-shadow:0 4px 0 #17392e45;border-color:#6b9355}.name-matching .arena-tools{top:16px;right:16px;bottom:auto}.name-matching .arena-beat{top:36px}.name-guide{position:absolute;inset:0;z-index:8;pointer-events:none;overflow:visible}.guide-arrow{width:100%;height:100%;overflow:visible}.guide-arrow-halo{fill:none;stroke:#fff9de;stroke-width:12px;stroke-linecap:round;opacity:.92}.guide-arrow-line{fill:none;stroke:#a57025;stroke-width:4px;stroke-dasharray:8 10;stroke-linecap:round}.guide-example{position:absolute;transform:translate(-50%,-50%);pointer-events:none}.guide-example[hidden]{display:none}.guide-example-word{display:block;font:400 33px Andika,sans-serif;background:#ffdc80;color:#2b4d34;border:3px solid #a6782b;border-radius:16px;padding:10px 22px;box-shadow:0 7px 16px #183d3040}.guide-example-hand{position:absolute;right:-16px;bottom:-30px;width:47px;height:58px;transform:rotate(-12deg);filter:drop-shadow(0 2px 0 white)}.guide-example-hand svg{width:100%;height:100%;fill:#fff9e4;stroke:#244732;stroke-width:1.7}.activity-cue{font:400 23px/1.35 Andika,sans-serif;color:#526b51;text-align:center;margin:0!important;display:flex;align-items:center;justify-content:center;gap:10px}.activity-cue svg{width:28px;height:28px;flex-shrink:0}.story-step-1{gap:14px}.story-step-2,.story-step-4{gap:10px}.next-control{height:76px;min-width:116px;display:flex;align-items:center;justify-content:center;gap:7px;padding:10px 14px;width:auto}.next-control span{font:400 22px Andika,sans-serif;white-space:nowrap}.next-control svg{width:31px}.next-ready{outline:4px solid #8fac68;outline-offset:5px}.guided-practice{display:grid;grid-template-columns:1.1fr 1fr;gap:45px;position:relative;height:auto;min-height:540px;padding:40px}.practice-match-picture{position:relative;width:100%;height:360px;border-radius:25px;overflow:hidden;border:3px solid #66865b}.practice-match-picture img{width:100%;height:100%;object-fit:cover}.practice-match-picture .name-slot{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);background:#fff4ce;color:#284c34}.guided-practice .name-game{align-self:center}.guided-practice .name-tiles{margin-top:30px}.guided-practice .name-tile{font-size:42px;min-width:150px}
@media(max-width:950px){.name-game .name-instruction{font-size:29px}.name-game .name-leadin{font-size:19px}.name-tile{min-width:105px;font-size:31px;padding-inline:13px}.name-dropzones{left:6%;right:6%}.name-dropzones .name-slot{min-width:105px;font-size:27px}.show-me{font-size:20px}}
@media(max-width:700px){.name-matching .living-arena{border-radius:18px 18px 0 0;height:300px}.name-matching .story-panel{border-radius:0 0 18px 18px;padding:16px 18px 18px;gap:11px}.name-matching .reading-line{font-size:30px!important}.name-dropzones{bottom:16px;left:9%;right:9%}.name-dropzones .name-slot{min-width:104px;min-height:60px;font-size:25px}.name-matching .arena-beat{top:25px;font-size:27px}.name-matching .arena-tools{top:9px;right:9px}.name-matching .motion-toggle{min-width:42px;min-height:42px;font-size:20px}.name-game .name-instruction{font-size:29px;margin:8px 0 4px}.name-game .name-leadin{font-size:19px}.name-game .name-tiles{margin-top:28px}.name-steps span{width:26px;height:26px;font-size:16px}.name-tile{min-height:65px}.show-me{min-height:46px;margin-top:16px;padding:6px 15px}.name-feedback{font-size:18px}.name-guide{z-index:4}.guide-example-word{font-size:28px;padding:8px 16px}.guide-arrow-halo{stroke-width:9px}.guide-arrow-line{stroke-width:3px;stroke-dasharray:6 9}.next-control{min-width:104px;height:62px;padding:8px 11px;gap:4px}.next-control span{font-size:19px}.next-control svg{width:28px}.activity-cue{font-size:21px}.guided-practice{display:flex;gap:18px;padding:18px 20px;min-height:0}.practice-match-picture{height:270px;flex:none}.guided-practice .name-tile{font-size:34px;min-width:130px}.guided-practice .name-tiles{margin-top:27px}}
@media(prefers-reduced-motion:reduce){.guide-example{display:none}.name-tile{animation:none!important}}

.name-instruction.cue-speaking{background:#fff0be;border-radius:12px;box-shadow:0 0 0 6px #fff0be}

/* Listening has one visible destination and a replay button; no answer arrow. */
.hear-name{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:64px;padding:10px 24px;margin:0 0 16px;border:3px solid #c78b16;border-radius:18px;background:#ffdf78;color:#263f32;font-family:inherit;font-weight:800;font-size:1.3rem;cursor:pointer}
.hear-name svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:2.5}
.name-slot.name-hidden{min-width:100px;font-size:2.5rem}
.name-slot.name-hidden:disabled{opacity:.48}
.practice-settings h3{font-size:1.5rem;margin:0 0 20px}
.practice-settings h4{font-size:1.1rem;margin:24px 0 8px}
.practice-table-wrap{overflow-x:auto}
.practice-table{width:100%;border-collapse:collapse;font-size:.9rem;text-align:left;line-height:1.45}
.practice-table th,.practice-table td{padding:10px 8px;border-bottom:1px solid #d5ded3;vertical-align:top}
.practice-table th:first-child{min-width:120px}
.practice-table td{text-align:center}
.practice-table th small{display:block;font-weight:400;font-size:.8rem;color:#52645a;margin-top:4px}

.name-tile.prompt-wait{opacity:.6;cursor:wait;transform:none}
