:root{--ink:#173f49;--teal:#176d78;--gold:#f1bd4b;--coral:#e56f58;--paper:#fff8df;--cream:#f8ecc8;--line:#214f55;--shadow:0 18px 45px rgba(15,52,58,.2);font-family:"Trebuchet MS","Segoe UI",sans-serif;color:var(--ink);background:#c9e4d7}
*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;min-width:320px;background:radial-gradient(circle at 20% 0,#fff1b7 0 8%,transparent 28%),linear-gradient(160deg,#b7e2d8,#f7e6b0 56%,#e8a46c);min-height:100vh}.app-shell{width:min(1480px,100%);margin:auto;padding:clamp(12px,2.6vw,36px)}button{font:inherit}.primary-button,.text-button,.buddy-card,.world-card,.search-zone,.action-tile{cursor:pointer;touch-action:manipulation}.primary-button{border:2px solid #7d342a;border-radius:999px;background:linear-gradient(#f58b64,#dc5a48);color:#fff;padding:13px 22px;font-weight:900;box-shadow:0 6px 0 #9d3e35;transition:.18s}.primary-button:hover,.primary-button:focus-visible{transform:translateY(-2px);box-shadow:0 8px 0 #9d3e35}.text-button{border:2px solid #69aaa8;border-radius:999px;background:#fff9e7;color:#235e65;padding:9px 14px;font-weight:900}.eyebrow{display:block;color:#34777b;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.loading-card{display:grid;place-items:center;gap:18px;min-height:70vh;text-align:center;font-size:1.2rem}.loading-orbit{width:76px;height:76px;border:9px dotted var(--coral);border-radius:50%;animation:spin 3s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}.topbar h1{margin:4px 0 8px;font-size:clamp(2.4rem,6vw,5rem);line-height:.88;letter-spacing:-.06em}.topbar p{margin:0;font-weight:800;color:#496e70}.collection-count{min-width:165px;padding:14px;text-align:center;background:var(--paper);border:4px solid #4e8c82;border-radius:25px;box-shadow:var(--shadow)}.collection-count strong{display:block;font-size:2rem}.collection-count span{font-weight:900;color:#547677}
.game-panel{padding:clamp(12px,2.4vw,30px);border:3px solid rgba(255,255,255,.85);border-radius:32px;background:rgba(255,249,225,.82);box-shadow:var(--shadow);backdrop-filter:blur(8px)}.hub-hero{position:relative;min-height:450px;border:6px solid #315b52;border-radius:27px;overflow:hidden;background:#173f49;box-shadow:inset 0 0 0 3px #e7c56c}.hub-hero>img{position:absolute;width:100%;height:100%;object-fit:cover;filter:saturate(1.04) contrast(1.03)}.hub-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,48,53,.92),rgba(12,48,53,.38) 50%,transparent 78%)}.hero-copy{position:relative;z-index:1;width:min(560px,92%);padding:clamp(32px,7vw,82px);color:#fff}.hero-copy .eyebrow{color:#ffe084}.hero-copy h2{margin:8px 0 14px;font-size:clamp(2rem,4.5vw,4rem);line-height:.98}.hero-copy p{font-size:1.1rem;font-weight:700;line-height:1.5}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:34px 4px 16px}.section-heading h2{margin:5px 0 0;font-size:clamp(1.6rem,3vw,2.7rem)}.section-heading p{max-width:480px;margin:0;color:#527477;font-weight:800}.section-heading.compact{margin-top:0}
.world-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.world-card{min-height:104px;padding:12px;border:3px solid #9fc5ae;border-radius:18px;background:#fff7da;color:var(--ink);font-weight:900;transition:.18s}.world-card span{display:block;margin-top:7px;font-size:.72rem;color:#557677}.world-card.is-active{border-color:#d97847;background:#ffe099;transform:translateY(-3px);box-shadow:0 7px 0 #bd6a3f}
.buddy-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.buddy-card{position:relative;display:flex;flex-direction:column;min-height:355px;padding:0;border:3px solid #a8cbb8;border-radius:24px;overflow:hidden;background:#fffaf0;color:var(--ink);text-align:left;box-shadow:0 9px 0 rgba(52,105,93,.17);transition:.18s}.buddy-card:hover,.buddy-card:focus-visible{transform:translateY(-5px);border-color:#e18a4d}.buddy-card.is-collected{border-color:#4d9d7e}.buddy-card-visual{display:grid;place-items:center;height:168px;background:radial-gradient(circle,#fff7c9,#bddfc9);overflow:hidden}.buddy-card-visual img{width:154px;height:154px;object-fit:contain;filter:drop-shadow(0 8px 7px rgba(20,52,58,.23))}.buddy-card-body{display:flex;flex:1;flex-direction:column;padding:15px}.buddy-card h3{margin:4px 0;font-size:1.55rem}.buddy-card .species{font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#697d78}.buddy-card p{font-size:.84rem;line-height:1.35;color:#496b6d}.buddy-card .interaction-label{margin-top:auto;padding-top:9px;border-top:1px dashed #9abeb0;font-weight:900;color:#7f5128}.collection-check{position:absolute;right:9px;top:9px;z-index:2;padding:5px 8px;border-radius:999px;background:#2d8b69;color:#fff;font-size:.72rem;font-weight:900}.word-shelf{margin-top:32px;padding:20px;border-radius:25px;background:#ead6a4;border:3px solid #c49753}.word-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.word-card{display:grid;grid-template-columns:58px 1fr;align-items:center;gap:9px;padding:10px;border-radius:16px;background:#fff9e9}.word-card img{width:58px;height:58px;object-fit:contain}.word-card strong{display:block}.word-card small{color:#687574}.empty-words{grid-column:1/-1;font-weight:800;color:#5e726f}
.journey-heading{display:flex;align-items:center;gap:18px}.journey-avatar{display:grid;place-items:center;width:112px;height:112px;flex:0 0 auto;border:4px solid #e6b94d;border-radius:27px;background:#e8f2d0}.journey-avatar img{width:104px;height:104px;object-fit:contain}.journey-heading h2{margin:3px 0;font-size:clamp(2rem,4vw,3.2rem)}.journey-heading p{max-width:700px;margin:0;color:#4b7071;font-weight:800}.journey-pandas{display:grid;grid-template-columns:48px 48px;align-items:center;margin-left:auto}.journey-pandas img{width:58px;height:58px;border:4px solid #fff;border-radius:50%;object-fit:cover;box-shadow:0 5px 12px rgba(20,58,61,.22)}.journey-pandas img+img{margin-left:-12px}.journey-pandas span{grid-column:1/-1;margin-top:4px;text-align:center;font-size:.68rem;font-weight:900}.stage-track{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0;padding:0;list-style:none}.stage-track li{padding:12px;border-radius:17px;background:#dce9df;color:#687b77;text-align:center;font-weight:900}.stage-track li span{display:inline-grid;place-items:center;width:28px;height:28px;margin-right:7px;border-radius:50%;background:#fff}.stage-track li.is-active{background:#ffdf83;color:#674713}.stage-track li.is-done{background:#b9e2c8;color:#245e4c}.stage-card,.result-card{padding:clamp(18px,3.5vw,36px);border:4px solid #aacdbb;border-radius:27px;background:#fffaf0;box-shadow:0 10px 24px rgba(23,63,73,.1)}.stage-card h3,.result-card h3{margin:5px 0 9px;font-size:clamp(1.7rem,3vw,2.8rem)}.stage-card>p{font-weight:700;color:#4d6d6d}.search-scene{position:relative;min-height:480px;margin:20px 0;border:5px solid #335e57;border-radius:24px;overflow:hidden;background:#1a4b55}.search-scene>img{position:absolute;width:100%;height:100%;object-fit:cover}.search-zones{position:absolute;inset:0}.search-zone{position:absolute;left:var(--zone-x);top:var(--zone-y);display:grid;place-items:center;width:62px;height:62px;transform:translate(-50%,-50%);border:3px solid rgba(255,255,255,.9);border-radius:50%;background:rgba(20,72,74,.32);color:#fff;box-shadow:0 5px 18px rgba(11,47,51,.3);font-size:1.5rem;backdrop-filter:blur(2px);transition:.18s}.search-zone:hover,.search-zone:focus-visible{transform:translate(-50%,-50%) scale(1.12);background:#e39b43}.search-zone.is-found{opacity:0}.found-visual{position:absolute;right:5%;bottom:4%;display:grid;place-items:center;width:min(350px,44%);height:80%;border-radius:42% 42% 18% 18%;background:radial-gradient(circle,rgba(255,250,218,.96),rgba(255,233,156,.75),transparent 72%)}.found-visual img{width:94%;height:94%;object-fit:contain;filter:drop-shadow(0 13px 9px rgba(13,46,50,.33))}.panda-companion-dock{display:grid;grid-template-columns:170px 1fr 170px;align-items:stretch;gap:12px}.panda-guide-card{display:flex;align-items:center;gap:8px;padding:8px;border:3px solid #8db8a8;border-radius:20px;background:#f6eed1;color:var(--ink);text-align:left;cursor:pointer}.panda-guide-card img{width:62px;height:62px;border-radius:15px;object-fit:cover}.panda-guide-card span{display:grid}.panda-guide-card small{font-weight:800;color:#5f7c77}.panda-dialogue{display:flex;flex-direction:column;justify-content:center;padding:13px 17px;border:3px solid #b7d6c7;border-radius:20px;background:#e8f4e9}.panda-dialogue p{margin:3px 0;color:#466c6d;font-weight:800}.stage-response{min-height:27px;font-weight:900!important;color:#2e7b61!important}
.interaction-area{margin:22px 0}.play-arena{position:relative;min-height:350px;padding:22px;border:4px solid #9fc8b3;border-radius:28px;background:radial-gradient(circle at 50% 25%,#fff7bd,#dff0d8 65%,#b9ded2);overflow:hidden}.play-title{margin-bottom:18px;color:#477370;font-size:.78rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:13px;max-width:900px;margin:auto}.action-tile{min-height:120px;padding:13px;border:4px solid #79aaa0;border-radius:22px;background:#fffaf0;color:var(--ink);font-weight:900;box-shadow:0 6px 0 #507f77;transition:.16s}.action-tile .action-icon{display:block;margin-bottom:6px;font-size:2.3rem}.action-tile.is-selected,.action-tile.is-done,.action-tile.is-matched{border-color:#dd8b3d;background:#ffe29a;transform:translateY(-3px);box-shadow:0 8px 0 #b96b31}.action-tile.is-error{border-color:#d75e56;animation:shake .35s}.mode-pair .action-tile:not(.is-selected):not(.is-matched) .action-icon{filter:grayscale(1);opacity:.35}.mode-toggle .action-grid{grid-template-columns:repeat(3,minmax(90px,1fr));max-width:580px}.mode-arrange .action-grid{display:flex;justify-content:center;flex-wrap:wrap}.mode-arrange .action-tile{width:170px}.progress-strip{height:22px;margin:25px auto 12px;max-width:650px;border:3px solid #46786f;border-radius:999px;background:#fff;overflow:hidden}.progress-fill{height:100%;width:var(--progress,0%);background:linear-gradient(90deg,#58b984,#f1ba45);transition:.25s}.slider-wrap{display:grid;gap:20px;max-width:760px;margin:58px auto 20px;text-align:center}.slider-wrap input{width:100%;accent-color:#e2724e}.slider-labels{display:flex;justify-content:space-between;font-weight:900;color:#557774}.target-button{position:absolute;left:var(--target-x,20%);top:var(--target-y,40%);width:95px;height:95px;border:5px solid #fff;border-radius:50%;background:#d88f47;color:#fff;font-size:2.4rem;box-shadow:0 0 0 10px rgba(255,220,111,.42);cursor:pointer;transition:left .22s,top .22s,transform .16s}.target-button:hover{transform:scale(1.08)}.activity-celebration{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle,rgba(255,238,130,.85),transparent 55%);animation:celebrate .7s ease-out}@keyframes celebrate{from{transform:scale(.3);opacity:1}to{transform:scale(1.4);opacity:0}}@keyframes shake{25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.collect-stage{display:grid;grid-template-columns:minmax(230px,36%) 1fr;align-items:center;gap:30px}.discovery-object{padding:20px;border:4px solid #dcab50;border-radius:25px;background:radial-gradient(circle,#fffbe7,#cfe7d6);text-align:center}.discovery-object img{display:block;width:100%;height:260px;object-fit:contain}.discovery-object span{font-weight:900}.word-preview{display:inline-grid;margin:10px 0 20px;padding:11px 18px;border-radius:17px;background:#ffe49c}.word-preview span{font-size:.7rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.word-preview strong{font-size:2rem}.word-preview small{font-weight:900;color:#705a27}.result-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;background:linear-gradient(135deg,#fff2b2,#d9f0dc)}.result-spark{font-size:4rem;color:#df8d3c}.result-card p{margin:0;color:#516e6e}
.buddy-voice-panel{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin-top:20px;padding:16px 20px;border:4px solid #315f61;border-radius:24px;background:linear-gradient(135deg,#173f49,#276f72);color:#fff;box-shadow:var(--shadow)}.buddy-voice-panel .eyebrow{color:#ffdc75}.voice-copy strong{display:block;margin:3px 0;font-size:1.3rem}.voice-copy p{margin:0;color:#def0eb;line-height:1.4}.voice-presence{display:flex;align-items:center;justify-content:center;gap:4px;width:58px;height:50px}.voice-presence span{width:6px;height:18px;border-radius:999px;background:#f4ca55;animation:wave 1.05s ease-in-out infinite}.voice-presence span:nth-child(2){height:34px;animation-delay:.12s}.voice-presence span:nth-child(3){height:26px;animation-delay:.24s}.voice-presence span:nth-child(4){height:42px;animation-delay:.36s}@keyframes wave{50%{transform:scaleY(.45);opacity:.55}}.voice-controls{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}.voice-controls small{flex-basis:100%;text-align:right;color:#cde6df;font-weight:800}.grownup-tools{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:16px 5px;color:#4e6f70;font-size:.84rem}
@media(max-width:1100px){.world-grid{grid-template-columns:repeat(3,1fr)}.buddy-grid{grid-template-columns:repeat(2,1fr)}.word-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.app-shell{padding:8px}.topbar{align-items:flex-start}.topbar p{display:none}.collection-count{min-width:108px}.game-panel{padding:10px;border-radius:23px}.hub-hero{min-height:430px}.hero-copy{padding:30px 20px}.section-heading{display:block}.section-heading p{margin-top:7px}.world-grid{grid-template-columns:repeat(2,1fr)}.buddy-grid,.word-grid{grid-template-columns:1fr}.journey-heading{flex-wrap:wrap;align-items:flex-start}.journey-pandas{margin-left:0}.stage-track{gap:5px}.stage-track li{padding:8px 4px;font-size:.72rem}.stage-track li span{display:block;margin:0 auto 4px}.search-scene{min-height:410px}.found-visual{width:60%;height:62%}.panda-companion-dock{grid-template-columns:1fr 1fr}.panda-dialogue{grid-column:1/-1;grid-row:2}.action-grid{grid-template-columns:repeat(2,1fr)}.collect-stage{grid-template-columns:1fr}.discovery-object img{height:190px}.result-card{grid-template-columns:auto 1fr}.result-card .primary-button{grid-column:1/-1}.buddy-voice-panel{grid-template-columns:auto 1fr;padding:13px}.voice-controls{grid-column:1/-1;justify-content:stretch}.voice-controls button{flex:1}.voice-controls small{text-align:center}.grownup-tools{align-items:flex-start;flex-direction:column}}

/* V1.8 adaptive play: visual goals and a no-stuck Buddy assistance path. */
.search-zone{width:72px;height:72px}.search-zone.is-hint{border-color:#fff4a8;background:#e39b43;box-shadow:0 0 0 10px rgba(255,230,112,.5),0 5px 18px rgba(11,47,51,.3);animation:buddyHint 1s ease-in-out infinite}.action-tile.is-hint:not(.is-done):not(.is-matched){border-color:#efaa3c;background:#fff0b7;box-shadow:0 0 0 8px rgba(255,217,96,.28),0 6px 0 #b47731;animation:buddyHint 1s ease-in-out infinite}.action-tile.is-confirmed{border-color:#4c9c78;background:#d8f2d8;box-shadow:0 6px 0 #38765b}.action-tile:disabled{cursor:default;opacity:1}.buddy-assist-panel{display:grid;grid-template-columns:74px 1fr auto;align-items:center;gap:14px;margin:14px 0;padding:12px 15px;border:3px solid #e1a542;border-radius:22px;background:#fff0b6}.buddy-assist-panel[hidden]{display:none!important}.buddy-assist-panel img{width:70px;height:70px;border-radius:18px;background:#fff;object-fit:contain}.buddy-assist-panel p{margin:3px 0;color:#576d6b}.buddy-assist-button{min-height:48px;padding:10px 16px;border:3px solid #8d6a25;border-radius:16px;background:#ffe08a;color:#573d13;font-weight:900;cursor:pointer}.buddy-assist-button:hover,.buddy-assist-button:focus-visible{background:#ffc85e;transform:translateY(-2px)}.slider-goal-guide{position:relative;height:34px;margin:10px 8px -42px;border:3px solid #618e83;border-radius:999px;background:linear-gradient(90deg,#7488a6,#f7e09b 50%,#f39b6f);overflow:hidden}.slider-goal-band{position:absolute;left:var(--goal-start);width:var(--goal-width);height:100%;background:repeating-linear-gradient(135deg,#58b984 0 9px,#89d39f 9px 18px);box-shadow:0 0 0 4px rgba(255,255,255,.7) inset}.slider-goal-band::after{content:"Buddy goal";position:absolute;inset:0;display:grid;place-items:center;color:#173f38;font-size:.68rem;font-weight:1000;white-space:nowrap}.slider-goal-band.is-hint{animation:buddyHint .8s ease-in-out infinite}.mode-slider.is-ready .slider-goal-band{background:#4fc07a}.slider-wrap input{position:relative;z-index:2;height:38px;cursor:pointer}.target-button{width:112px;height:112px}.mode-meter .action-tile{min-height:145px}.assist-note{display:flex;justify-content:center;gap:8px;margin:12px auto 0;color:#52736f;font-size:.8rem;font-weight:900}.assist-note span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#ffdf83;color:#674713}.grownup-tools>div{display:flex;flex-wrap:wrap;gap:8px}@keyframes buddyHint{50%{transform:scale(1.045);filter:brightness(1.08)}}

.inline-listen-button{display:inline-flex;align-items:center;gap:8px;min-height:48px;margin:4px 0 12px;padding:9px 15px;border:3px solid #315f61;border-radius:999px;background:#e7f5d2;color:#173f43;font-weight:1000;cursor:pointer;box-shadow:0 4px 0 rgba(29,76,71,.25)}
.inline-listen-button:hover,.inline-listen-button:focus-visible{background:#fff0a8;transform:translateY(-2px)}
.slider-goal-band::after{inset:3px;border:2px solid #174d3b;border-radius:999px;background:#fffbd8;color:#123c31;text-shadow:none;box-shadow:0 1px 0 #fff}
.sequence-preview{display:flex;justify-content:center;align-items:center;gap:10px;min-height:76px;margin:0 auto 18px;padding:10px;border:3px dashed #4d8076;border-radius:20px;background:rgba(255,255,255,.68);transition:.2s}
.sequence-preview.is-concealed{filter:blur(9px);opacity:.32;user-select:none}
.sequence-ghost{display:grid;grid-template-columns:auto auto;align-items:center;gap:5px;min-width:58px;min-height:52px;padding:7px 10px;border:3px solid #9bb9ad;border-radius:15px;background:#fff;color:#214f50;box-shadow:0 3px 0 #789b91}
.sequence-ghost small{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#356f6c;color:#fff;font-weight:1000}.sequence-ghost b{font-size:1.65rem}.sequence-ghost.is-complete{border-color:#2e8d61;background:#d7f2d0;opacity:.62}
.action-icon{transform:scale(var(--visual-scale,1))}.action-visual-shape{display:block;width:58px;height:58px;margin:0 auto 9px;background:var(--cue-color);filter:drop-shadow(0 4px 0 rgba(33,66,62,.22))}.shape-circle{border-radius:50%}.shape-triangle{clip-path:polygon(50% 3%,97% 94%,3% 94%)}.shape-star{clip-path:polygon(50% 0,61% 34%,98% 38%,69% 59%,79% 96%,50% 75%,21% 96%,31% 59%,2% 38%,39% 34%)}.pattern-striped{background:repeating-linear-gradient(135deg,var(--cue-color) 0 9px,#fff7cf 9px 15px)}
.action-tile.is-gated{border-color:#8a9895;background:#e7ece9;color:#5a6867;box-shadow:0 4px 0 #778481}.action-tile.is-gated .action-icon{filter:grayscale(1)}.action-tile.is-gated.is-ready{border-color:#d47c36;background:#ffe39c;color:#4b3518;box-shadow:0 7px 0 #a7612d;animation:buddyHint .9s ease-in-out infinite;cursor:pointer}.action-tile.is-neutral{border-style:dashed;background:#f3ead2}.action-tile.is-neutral-touched{background:#dff2e5;transform:scale(.97)}

@media(max-width:720px){.search-zone{width:78px;height:78px}.action-tile{min-height:132px}.buddy-assist-panel{grid-template-columns:64px 1fr}.buddy-assist-panel img{width:60px;height:60px}.buddy-assist-panel .buddy-assist-button{grid-column:1/-1}.target-button{width:120px;height:120px}.slider-wrap{margin-top:52px}.slider-goal-guide{margin-bottom:-40px}.sequence-preview{gap:6px;overflow-x:auto;justify-content:flex-start}.sequence-ghost{min-width:52px;padding:6px}.inline-listen-button{width:100%;justify-content:center}}
@media(max-width:360px){.action-grid{grid-template-columns:1fr 1fr}.action-tile{min-width:0;padding:9px}.stage-card{padding-left:12px;padding-right:12px}.sequence-preview{margin-left:-4px;margin-right:-4px}}
@media(max-width:420px){.topbar h1{font-size:2.45rem}.collection-count strong{font-size:1.5rem}.world-grid{grid-template-columns:1fr}.panda-guide-card{padding:5px}.panda-guide-card img{width:52px;height:52px}.action-grid{grid-template-columns:1fr}.search-scene{min-height:360px}.search-zone{width:52px;height:52px}.buddy-voice-panel{grid-template-columns:1fr}.voice-presence{display:none}}

/* V2.0 Buddy Memory Moment */
.memory-label{display:inline-block;margin-top:8px;padding:5px 9px;border-radius:999px;background:#e2f0d2;color:#356359;font-size:.72rem;font-weight:1000;text-transform:capitalize}
.stage-track{grid-template-columns:repeat(4,1fr)}
.memory-stage{border-color:#8dbba8;background:linear-gradient(180deg,#fffaf0,#eef7dc)}
.memory-area{position:relative;min-height:300px;margin:20px 0;padding:20px;border:4px solid #709d91;border-radius:28px;background:radial-gradient(circle at 50% 20%,#fff4bc,#dcefd8 72%);overflow:hidden}
.memory-look-card{text-align:center}.memory-look-label{display:inline-block;margin-bottom:16px;padding:8px 14px;border-radius:999px;background:#265f5c;color:#fff;font-weight:1000}
.memory-preview-pairs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:760px;margin:0 auto 22px}.memory-preview-pairs span{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:12px;border:3px solid #9ab8a8;border-radius:20px;background:#fff}.memory-preview-pairs b{display:grid;place-items:center;min-height:70px;border-radius:14px;background:#fff0b3;font-size:2.5rem}.memory-preview-pairs em{grid-column:1/-1;font-style:normal;font-weight:900;color:#4c706e}
.memory-preview-sequence{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:10px auto 22px}.memory-preview-token{display:grid;grid-template-columns:24px 1fr;align-items:center;gap:5px;min-width:86px;padding:10px;border:3px solid #84a99e;border-radius:18px;background:#fff;box-shadow:0 5px 0 #638d82}.memory-preview-token small{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#2e6e69;color:#fff;font-weight:1000}.memory-preview-token b{font-size:2.1rem}.memory-preview-token em{grid-column:1/-1;font-style:normal;font-size:.75rem;font-weight:900;color:#4c706e}
.memory-card-grid{display:grid;grid-template-columns:repeat(3,minmax(90px,1fr));gap:13px;max-width:680px;margin:auto}.memory-card{position:relative;min-height:140px;border:4px solid #628f86;border-radius:22px;background:#2f6d6a;color:#fff;box-shadow:0 7px 0 #345d59;cursor:pointer;transform-style:preserve-3d}.memory-card-back,.memory-card-face{position:absolute;inset:0;display:grid;place-items:center;border-radius:17px;backface-visibility:hidden}.memory-card-back{font-size:2.6rem}.memory-card-face{transform:rotateY(180deg);grid-template-rows:1fr auto;padding:10px;background:#fff2ba;color:#214b49}.memory-card-face b{font-size:2.7rem}.memory-card-face em{font-style:normal;font-weight:900}.memory-card.is-revealed,.memory-card.is-matched{transform:rotateY(180deg)}.memory-card.is-matched{border-color:#d9823b;box-shadow:0 7px 0 #ad642f}.memory-card.is-hint:not(.is-matched){box-shadow:0 0 0 9px rgba(255,214,80,.48),0 7px 0 #345d59;animation:buddyHint .9s infinite}
.memory-choice-row{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.memory-choice{min-width:120px;min-height:118px;padding:12px;border:4px solid #729d92;border-radius:22px;background:#fff;color:#234f4e;font-weight:900;box-shadow:0 6px 0 #537b73}.memory-choice b{display:block;font-size:2.8rem}.memory-choice.is-hint{border-color:#e29632;background:#fff0a9;animation:buddyHint .9s infinite}.memory-recall-trail{display:flex;justify-content:center;gap:9px;min-height:80px;margin-bottom:20px}.memory-recall-trail>span{display:grid;place-items:center;min-width:62px;padding:8px;border:3px solid #5f9183;border-radius:17px;background:#d9f1d7;font-size:2.1rem}
.memory-spatial-grid{display:grid;grid-template-columns:repeat(3,86px);grid-template-rows:repeat(3,86px);justify-content:center;gap:11px}.memory-space{display:grid;place-items:center;border:4px solid #759d94;border-radius:20px;background:#fff;color:#245754;font-size:2.4rem;box-shadow:0 5px 0 #5c7e77}.memory-space.is-glowing,.memory-space.is-remembered{border-color:#d48635;background:#ffe58e;box-shadow:0 0 0 8px rgba(255,221,96,.34),0 5px 0 #ae6e31}.memory-space.is-hint{animation:buddyHint .9s infinite}.memory-space.is-soft-miss{background:#e7eee9;transform:scale(.94)}
.memory-association-preview{display:grid;gap:9px;max-width:760px;margin:0 auto 22px}.memory-association-preview>span{display:grid;grid-template-columns:68px 1fr auto 68px 1fr;align-items:center;gap:9px;padding:8px;border:3px solid #9cb9ae;border-radius:18px;background:#fff}.memory-association-preview img{width:64px;height:64px;object-fit:contain;border-radius:13px;background:#f8efc9}.memory-association-preview i{font-size:1.5rem;font-style:normal;color:#d07d37}.memory-association-preview em{font-style:normal;font-weight:900;color:#4c706e}
.memory-association-recall{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px}.memory-association-column{display:grid;gap:10px}.memory-association-column button{display:grid;grid-template-columns:68px 1fr;align-items:center;gap:9px;min-height:84px;padding:8px;border:4px solid #78a096;border-radius:18px;background:#fff;color:#244f4e;font-weight:900;text-align:left;box-shadow:0 5px 0 #597e76}.memory-association-column img{width:66px;height:66px;object-fit:contain;border-radius:12px;background:#f8efc9}.memory-link-line{font-size:2rem;font-weight:1000;color:#b96c31}.memory-association-column button.is-selected{border-color:#d88437;background:#fff0b2}.memory-association-column button.is-matched{border-color:#3e936c;background:#d9f1d7;opacity:.66}.memory-association-column button.is-hint{animation:buddyHint .9s infinite}
.memory-pattern-line{display:flex;justify-content:center;gap:10px;margin:34px auto 28px}.memory-pattern-line>span{display:grid;place-items:center;width:82px;height:82px;border:4px solid #78a096;border-radius:21px;background:#fff;font-size:2.7rem}.memory-pattern-gap{border-style:dashed!important;background:#fff4c8!important;color:#7b5c22}.memory-pattern-gap.is-filled{border-style:solid!important;border-color:#3d926b!important;background:#d9f1d7!important}.memory-celebration{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;background:radial-gradient(circle,rgba(255,239,126,.88),transparent 62%);font-size:7rem;animation:celebrate .8s ease-out forwards}
@media(max-width:720px){.stage-track{grid-template-columns:repeat(4,1fr)}.memory-area{padding:12px}.memory-preview-pairs{grid-template-columns:1fr}.memory-card-grid{grid-template-columns:repeat(2,1fr)}.memory-spatial-grid{grid-template-columns:repeat(3,74px);grid-template-rows:repeat(3,74px)}.memory-association-recall{grid-template-columns:1fr 28px 1fr;gap:5px}.memory-association-column button{grid-template-columns:1fr;text-align:center}.memory-association-column img{margin:auto}.memory-association-column span{font-size:.72rem}.memory-pattern-line{gap:5px}.memory-pattern-line>span{width:55px;height:65px;font-size:2rem}.memory-preview-token{min-width:68px}.memory-choice{min-width:96px}}
@media(max-width:360px){.stage-track li{font-size:.62rem}.memory-spatial-grid{grid-template-columns:repeat(3,66px);grid-template-rows:repeat(3,66px)}.memory-card{min-height:120px}.memory-association-column button{padding:5px}.memory-association-column img{width:54px;height:54px}}

/* Release Candidate V1.0: relationship-first journey, Word Bank handoff, and mobile release fixes. */
button,a.primary-button{min-height:44px}.stage-track{grid-template-columns:repeat(5,minmax(0,1fr))}.know-buddy-layout{display:grid;grid-template-columns:minmax(220px,34%) 1fr;align-items:center;gap:clamp(20px,4vw,44px)}.know-buddy-portrait{display:grid;place-items:center;min-height:310px;border:4px solid #d6a343;border-radius:28px;background:radial-gradient(circle,#fff6bd,#d8ecd8);overflow:hidden}.know-buddy-portrait img{width:94%;height:300px;object-fit:contain;filter:drop-shadow(0 14px 10px rgba(20,52,58,.24))}.know-buddy-copy blockquote{margin:18px 0;padding:16px 19px;border-left:7px solid #e1764e;border-radius:0 18px 18px 0;background:#edf3d9;color:#295e5c;font-size:1.15rem;font-weight:900;line-height:1.5}.buddy-promise-button{min-height:52px;padding:12px 19px;border:3px solid #315f61;border-radius:18px;background:#ffe18b;color:#173f49;font:inherit;font-weight:900;cursor:pointer;box-shadow:0 5px 0 #a77031}.buddy-promise-button.is-waving{background:#cceccb;animation:buddyWave .6s ease-in-out}@keyframes buddyWave{50%{transform:rotate(-2deg) scale(1.04)}}.primary-button:disabled{cursor:not-allowed;filter:grayscale(.7);opacity:.55;transform:none;box-shadow:0 4px 0 #777}.memory-companion-ribbon{display:flex;align-items:center;gap:12px;margin:12px 0 -4px;padding:10px 14px;border:3px solid #88b4a1;border-radius:22px;background:#e8f3db}.memory-companion-ribbon img{width:72px;height:72px;border-radius:18px;background:#fff;object-fit:contain}.memory-companion-ribbon p{display:grid;gap:3px;margin:0}.memory-companion-ribbon strong{font-size:1.2rem}.memory-companion-ribbon span{color:#4d706d;font-weight:800}.result-actions{display:grid;gap:10px;min-width:220px}.result-actions a{text-align:center;text-decoration:none}.word-bank-button{background:linear-gradient(#4aa67e,#287e66);border-color:#195c4c;box-shadow:0 6px 0 #175344}.word-bank-button:hover,.word-bank-button:focus-visible{box-shadow:0 8px 0 #175344}.word-card{border:2px solid transparent}.word-card:hover{border-color:#d58b40}.grownup-tools{border-top:1px dashed rgba(48,103,99,.35);padding-top:10px}
@media(max-width:720px){.topbar{display:grid;grid-template-columns:1fr auto}.topbar p{display:block;grid-column:1/-1;font-size:.88rem;line-height:1.4}.collection-count{grid-column:2;grid-row:1/3}.hub-hero{min-height:370px}.hero-copy{padding:24px 18px}.stage-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:5px}.stage-track li{flex:0 0 92px;scroll-snap-align:start}.know-buddy-layout{grid-template-columns:1fr}.know-buddy-portrait{min-height:220px}.know-buddy-portrait img{height:215px}.result-card{grid-template-columns:auto 1fr}.result-actions{grid-column:1/-1;min-width:0}.result-actions>*{width:100%}.memory-companion-ribbon img{width:60px;height:60px}.journey-heading p{font-size:.86rem}.journey-pandas{margin-left:auto}.search-scene{min-height:380px}.panda-companion-dock{position:relative;z-index:2}}
@media(max-width:420px){.topbar h1{font-size:2.25rem}.collection-count{min-width:94px;padding:9px}.collection-count span{font-size:.7rem}.hub-hero{min-height:350px}.hero-copy h2{font-size:2.25rem}.journey-heading{gap:10px}.journey-avatar{width:88px;height:88px}.journey-avatar img{width:82px;height:82px}.journey-heading h2{font-size:1.85rem}.journey-pandas{grid-template-columns:38px 38px}.journey-pandas img{width:46px;height:46px}.stage-card,.result-card{border-width:3px}.memory-area{margin-left:-3px;margin-right:-3px}.memory-companion-ribbon span{font-size:.8rem}}
body{min-width:0}

/* Production V1.0 candidate: Game Park return, compact instructions and future-only ecosystem status. */
html,body{max-width:100%;overflow-x:hidden}img{max-width:100%}.game-park-link{display:inline-flex;align-items:center;min-height:44px;margin-bottom:8px;padding:8px 14px;border:2px solid #477d77;border-radius:999px;background:#fff8df;color:#205d63;font-weight:900;text-decoration:none}.game-park-link:hover,.game-park-link:focus-visible{background:#ffe79b}.game-instructions{margin:16px 4px 0;padding:13px 17px;border:3px solid #8ab5a4;border-radius:20px;background:#f2efd0}.game-instructions summary{min-height:44px;padding:10px 0;color:#245e62;font-weight:900;cursor:pointer}.game-instructions ol{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin:8px 0 4px;padding:0;list-style:none}.game-instructions li{padding:11px;border-radius:14px;background:#fff9e9;font-weight:800;line-height:1.35}.word-entry-ready{display:grid;place-items:center;min-height:58px;padding:10px 14px;border:3px solid #3d8a6d;border-radius:17px;background:#d9f0dd;color:#245c4d;font-weight:900;text-align:center}.result-actions .word-bank-button{display:none}
@media(max-width:720px){.game-instructions ol{grid-template-columns:1fr}}
