@import "https://fonts.googleapis.com/css2?family=Fredoka:wght@500;600;700&family=Nunito:wght@500;600;700;800;900&display=swap";:root{color:#172e32;font-synthesis:none;--green:#668f20;--blue:#277ea1;--purple:#6951a1;--ink:#172e32;--cream:#fffdf3;background:#d9e7b5;font-family:Nunito,system-ui,sans-serif}*{box-sizing:border-box}html{min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;margin:0}button{font:inherit}button:focus-visible{outline-offset:3px;outline:4px solid #ffe064}.sound-toggle{z-index:18;color:#315346;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffff7db;border:1px solid #1e443033;border-radius:999px;align-items:center;gap:8px;min-height:44px;padding:8px 13px;font-size:13px;font-weight:900;transition:transform .2s,background .2s;display:inline-flex;position:fixed;top:18px;right:18px;box-shadow:0 7px 18px #1f3e2a29}.sound-toggle:hover{background:#fff;transform:translateY(-2px)}.sound-toggle>span:first-child{font-size:20px}.garden-page{background-image:linear-gradient(#f5ffeb14,#1a411314),url(./sunny-garden-JLpJf77J.png);background-position:50%;background-size:cover;background-attachment:fixed;min-height:100vh;overflow-x:hidden}.home-page{place-items:center;padding:26px 28px 20px;display:grid}.home-shell{width:min(1280px,100%)}.home-hero{text-align:center;color:var(--ink);margin:0 auto 24px;position:relative}.brand-mark{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#315c38;background:#fffff7ad;border:1px solid #1837232e;border-radius:999px;align-items:center;gap:8px;padding:7px 13px;font-weight:900;display:flex;position:absolute;top:4px;left:12px}.brand-mark span:first-child{font-size:22px}.hero-kicker{color:#4e762e;letter-spacing:.14em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffad;border-radius:999px;margin:0 0 6px;padding:6px 15px;font-size:13px;font-weight:900;display:inline-block}.home-hero h1{letter-spacing:-.035em;color:#173435;text-shadow:0 2px #ffffffbf;margin:0;font-family:Fredoka,sans-serif;font-size:clamp(39px,4.2vw,66px);line-height:.98}.home-hero h1 em{color:#657f22;font-style:normal}.hero-subtitle{color:#345046;text-shadow:0 1px #fff;margin:12px 0 0;font-size:clamp(16px,1.5vw,20px);font-weight:800}.game-grid{grid-template-columns:repeat(3,1fr);gap:clamp(18px,2.4vw,34px);display:grid}.game-card{color:#fff;text-align:left;cursor:pointer;background:#fff;border:2px solid #ffffffdb;border-radius:30px;min-width:0;padding:0;transition:transform .26s,box-shadow .26s;position:relative;overflow:hidden;box-shadow:0 20px 46px #19361338,0 3px 8px #1936132b}.game-card:hover{transform:translateY(-9px)scale(1.015);box-shadow:0 29px 55px #1936134a,0 4px 10px #1936132b}.game-card-preview{background:radial-gradient(circle at 60% 20%,#ffffff4d,#0000 25%),linear-gradient(160deg,#477d29,#123f31);place-items:center;height:clamp(210px,24vw,315px);display:grid;position:relative;overflow:hidden}.game-card-preview img{object-fit:cover;filter:saturate(1.08)contrast(1.03);width:100%;height:100%;transition:transform .55s,filter .35s}.game-card:hover .game-card-preview img{filter:saturate(1.18)contrast(1.05);transform:scale(1.055)}.preview-shine{pointer-events:none;background:linear-gradient(125deg,#fff3,#0000 28% 72%,#0f2f1429);position:absolute;inset:0}.game-card--tic .game-card-preview{background:radial-gradient(circle at 55% 20%,#7adbf259,#0000 30%),linear-gradient(145deg,#275d4a,#123d3b)}.game-card--kitten .game-card-preview{background:linear-gradient(#ffe7a71a,#344b2033),radial-gradient(circle at 65% 20%,#b9dc80,#4f833c 60%,#2d5b2d)}.game-card-body{background:linear-gradient(145deg,#7daa22,#5f851c);min-height:172px;padding:22px 25px 24px;position:relative}.game-card--tic .game-card-body{background:linear-gradient(145deg,#2e90ad,#236985)}.game-card--kitten .game-card-body{background:linear-gradient(145deg,#725cad,#58458f)}.game-card h2{letter-spacing:-.02em;margin:0 0 5px;font-family:Fredoka;font-size:clamp(25px,2.2vw,33px)}.game-card p{color:#ffffffe6;max-width:82%;margin:0;font-size:15px;font-weight:700;line-height:1.35}.game-number{opacity:.7;font-size:14px;font-weight:900;position:absolute;top:20px;right:23px}.play-pill{background:#ffffff2e;border-radius:999px;align-items:center;gap:9px;min-height:40px;margin-top:16px;padding:8px 15px;font-size:14px;font-weight:900;display:inline-flex}.play-pill span{font-size:20px;transition:transform .2s}.game-card:hover .play-pill span{transform:translate(4px)}.wood-sign{color:#49341f;text-align:center;background:linear-gradient(90deg,#9d693a,#ddaa65 12%,#c78a49 80%,#8b5a30);border-radius:8px;width:fit-content;margin:22px auto 0;padding:9px 30px;font-family:Fredoka;font-size:18px;box-shadow:0 6px 13px #362a113d}.inner-page{padding:26px}.game-shell{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffef4d1;border:1px solid #ffffffa8;border-radius:32px;width:min(980px,100%);margin:0 auto;padding:18px 24px 28px;box-shadow:0 24px 60px #183f1e33}.wide-game-shell{width:min(1180px,100%)}.game-header{border-bottom:1px solid #193a321f;grid-template-columns:190px 1fr 70px;align-items:center;gap:15px;min-height:110px;padding-bottom:17px;display:grid}.game-header-actions{flex-direction:column;align-items:stretch;gap:7px;display:flex}.game-heading-copy{text-align:center}.game-eyebrow,.mini-label{letter-spacing:.16em;text-transform:uppercase;color:#6b862e;font-size:11px;font-weight:900}.game-header--blue .game-eyebrow{color:#267c9b}.game-header--purple .game-eyebrow{color:#7154aa}.game-header h1{letter-spacing:-.025em;margin:0;font-family:Fredoka;font-size:clamp(34px,4vw,54px);line-height:1}.game-header p{color:#536866;margin:7px 0 0;font-size:15px;font-weight:700}.header-bee{font-size:38px;transform:rotate(-8deg)}.back-button{color:#315346;cursor:pointer;background:#ffffffbf;border:1px solid #2046372e;border-radius:14px;min-height:44px;padding:9px 15px;font-weight:900;transition:transform .2s,background .2s;box-shadow:0 4px 10px #1d372c14}.back-button:hover{background:#fff;transform:translate(-3px)}.instructions-button{color:#655528;cursor:pointer;background:#fff7ccc7;border:1px solid #5b522a30;border-radius:14px;min-height:42px;padding:8px 13px;font-weight:900;transition:transform .2s,background .2s;box-shadow:0 4px 10px #3b381d12}.instructions-button:hover{background:#fff5bd;transform:translateY(-2px)}.instructions-button span{color:#fff;background:#e7b93e;border-radius:50%;place-items:center;width:21px;height:21px;margin-right:4px;display:inline-grid}.game-stats{justify-content:center;gap:12px;margin:18px 0;display:flex}.game-stats span{text-align:center;color:#4a5f35;background:#678e251c;border-radius:999px;min-width:112px;padding:7px 14px;font-size:13px;font-weight:800}.game-stats strong{color:var(--ink);margin-left:4px}.memory-grid{perspective:1000px;grid-template-columns:repeat(4,1fr);gap:13px;width:min(760px,100%);margin:0 auto;display:grid}.memory-card{aspect-ratio:1.1;cursor:pointer;perspective:700px;background:0 0;border:0;padding:0}.memory-card-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .45s cubic-bezier(.2,.8,.2,1);display:block;position:relative}.memory-card.is-visible .memory-card-inner{transform:rotateY(180deg)}.memory-face{backface-visibility:hidden;border:2px solid #ffffffb8;border-radius:19px;place-items:center;display:grid;position:absolute;inset:0;box-shadow:0 8px 15px #2546212b}.memory-back{color:#fff;background:radial-gradient(circle at 30% 20%,#a9cb58,#0000 27%),linear-gradient(145deg,#769e2d,#4f7a1e)}.memory-back>span{font-size:44px}.memory-back small{opacity:.84;font-size:11px;font-weight:900;position:absolute;bottom:11px}.memory-front{color:#2d4e3c;background:linear-gradient(145deg,#fffef8,#edf6d8);transform:rotateY(180deg)}.memory-front strong{font-family:Fredoka;font-size:clamp(17px,2.2vw,28px)}.memory-card.is-matched .memory-front{background:linear-gradient(145deg,#fffce9,#d9f2a9);box-shadow:0 0 0 3px #8dc84e,0 8px 15px #2546212b}.reset-link{color:#527324;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #76962f;min-height:42px;margin:19px auto 0;font-weight:900;display:block}.clothing-visual{background:radial-gradient(circle at 35% 25%, white, color-mix(in srgb, var(--item-color) 25%, white) 58%, color-mix(in srgb, var(--item-color) 52%, white));border-radius:30%;place-items:center;display:inline-grid;box-shadow:inset 0 0 0 1px #ffffffb3,0 9px 20px #2a413124}.clothing-visual--medium{width:75%;height:75%;font-size:clamp(42px,6vw,68px)}.clothing-visual--large{width:112px;height:112px;font-size:72px}.clothing-visual--xlarge{width:150px;height:150px;margin:15px auto 8px;font-size:98px}.skirt-garment{filter:drop-shadow(0 7px 5px #46205a38);width:68%;height:72%;display:block;position:relative}.skirt-waist{z-index:2;background:linear-gradient(90deg,#74429f,#c37bde 47%,#714099);border-radius:7px 7px 4px 4px;height:18%;position:absolute;top:8%;left:23%;right:23%;box-shadow:inset 0 3px 3px #ffffff47}.skirt-fabric{clip-path:polygon(23% 0,77% 0,100% 100%,0 100%);background:linear-gradient(100deg,#703d9a,#b762cf 27%,#7e43a8 52%,#c475d8 76%,#6e398f);border-radius:0 0 18% 18%;position:absolute;inset:22% 5% 4%;overflow:hidden;box-shadow:inset 0 -8px 8px #441d5629}.skirt-fabric i{background:#ffffff47;width:2px;position:absolute;top:0;bottom:0;transform:rotate(-5deg)}.skirt-fabric i:first-child{left:29%}.skirt-fabric i:nth-child(2){left:50%;transform:none}.skirt-fabric i:nth-child(3){left:70%;transform:rotate(5deg)}.tic-layout{grid-template-columns:minmax(300px,.87fr) minmax(340px,1.13fr);gap:24px;margin-top:23px;display:grid}.question-card,.board-card,.kitten-scene{background:#ffffffbd;border:1px solid #ffffffe6;border-radius:26px;box-shadow:0 10px 25px #2141321a}.question-card{text-align:center;padding:23px}.question-card h2{margin:5px 0 15px;font-family:Fredoka;font-size:22px}.answer-options{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.answer-options button{color:#23556a;cursor:pointer;background:#f7fcfd;border:2px solid #b6d4db;border-radius:13px;min-height:46px;padding:7px;font-weight:900;transition:transform .18s,border-color .18s}.answer-options button:hover:not(:disabled){border-color:#2d94b2;transform:translateY(-2px)}.answer-options button:disabled{cursor:default;opacity:.68}.feedback{text-align:center;min-height:26px;margin-top:13px;font-weight:900}.feedback--correct{color:#438622;animation:.3s feedback-pop}.feedback--wrong{color:#c34d63;animation:.3s shake}.feedback--neutral{color:#72817c;font-size:13px}.board-card{padding:20px}.turn-indicator{justify-content:center;gap:10px;margin-bottom:15px;display:flex}.turn-indicator span{color:#71807a;background:#edf1ef;border-radius:999px;padding:7px 14px;font-weight:800}.turn-indicator span.active{color:#1f6e86;background:#d8f2f6;box-shadow:inset 0 0 0 2px #8fcbd7}.turn-indicator b{font-family:Fredoka;font-size:18px}.tic-board{grid-template-columns:repeat(3,1fr);gap:8px;width:min(400px,100%);margin:0 auto;display:grid}.tic-board button{aspect-ratio:1;color:#227c98;background:linear-gradient(145deg,#f9ffff,#e2f1ef);border:2px solid #afcfd4;border-radius:16px;font-family:Fredoka;font-size:clamp(38px,6vw,68px);font-weight:700;transition:transform .17s,background .17s;box-shadow:0 5px 9px #2857551c}.tic-board.can-play button:not(:disabled){cursor:pointer;border-color:#38a7be;animation:1.25s infinite alternate cell-ready}.tic-board.can-play button:not(:disabled):hover{background:#d7f4f6;transform:scale(1.05)}.tic-board button.mark-o{color:#6851a3}.tic-board button.winning{background:#dff1a9;border-color:#86b53c;animation:.45s feedback-pop}.board-hint{text-align:center;color:#70817c;margin:13px 0 0;font-size:12px;font-weight:800}.kitten-scene{background:#fcfff2bf;margin-top:22px;padding:20px 24px 17px;overflow:hidden}.progress-row{color:#5b6470;justify-content:space-between;font-size:13px;font-weight:900;display:flex}.progress-track{background:#e2dfd6;border-radius:999px;height:9px;margin:6px 0 16px;overflow:hidden}.progress-track span{border-radius:inherit;background:linear-gradient(90deg,#8368bb,#af84d0);height:100%;transition:width .5s;display:block}.question-bubble{background:#ffffffe8;border-radius:25px;align-items:center;gap:17px;width:fit-content;max-width:100%;margin:0 auto;padding:9px 20px 9px 9px;display:flex;box-shadow:0 8px 20px #32472a1f}.question-bubble .clothing-visual{flex:none;width:80px;height:80px;font-size:54px}.question-bubble h2{margin:2px 0 0;font-family:Fredoka;font-size:clamp(19px,2.3vw,28px)}.path-area{background-image:linear-gradient(#2456210a,#264b1d24),url(./sunny-garden-JLpJf77J.png);background-position:50% 64%;background-size:cover;border-radius:24px;min-height:390px;margin:10px -14px 0;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #fff9,inset 0 -40px 70px #2c531f26}.path-line{filter:blur(1px);border:34px solid #bfa1684d;border-color:#0000 #bfa1684d #bfa1684d #0000;border-radius:48%;height:43%;position:absolute;top:45%;left:4%;right:4%;transform:rotate(-7deg)}.kitten{z-index:6;aspect-ratio:1;object-fit:cover;object-position:center 38%;border:4px solid #ffffffd4;border-radius:42% 48% 45% 50%;width:clamp(88px,10vw,124px);transition:left .68s cubic-bezier(.2,.78,.18,1),top .68s cubic-bezier(.2,.78,.18,1);position:absolute;transform:translate(-50%,-76%);box-shadow:0 12px 18px #233c1c4d,0 0 0 3px #7ca63c33}.kitten.is-jumping{animation:.7s cubic-bezier(.2,.72,.2,1) kitten-hop}.finish-flag{z-index:3;filter:drop-shadow(0 6px 4px #35471838);font-size:58px;position:absolute;top:4%;right:2.5%}.rock-options{z-index:4;position:absolute;inset:0}.word-rock,.trail-rock{aspect-ratio:1.38;width:clamp(108px,15%,156px);transform:translate(-50%, -50%) rotate(var(--rock-rotation));filter:drop-shadow(0 10px 7px #30381c4d);background-position:50%;background-size:cover;border-radius:46% 54% 49% 51%/52% 46% 54% 48%;position:absolute}.trail-rock{z-index:1;opacity:.72;filter:saturate(.76)drop-shadow(0 8px 5px #30381c3d);width:clamp(84px,12%,126px)}.word-rock{z-index:4;color:#352b22;cursor:pointer;text-shadow:0 1px 2px #ffffffe0,0 0 8px #ffffffa6;border:2px solid #ffffff7a;min-height:76px;padding:14px 9px;font-family:Fredoka;font-size:clamp(15px,1.8vw,22px);font-weight:700;transition:transform .22s,filter .22s,box-shadow .22s}.word-rock:hover:not(:disabled){transform:translate(-50%, calc(-50% - 6px)) rotate(var(--rock-rotation)) scale(1.045);filter:brightness(1.09)drop-shadow(0 13px 8px #30381c59)}.word-rock.is-wrong{animation:.34s rock-shake;box-shadow:inset 0 0 0 5px #d85e72,0 0 24px #d64c6373}.word-rock.is-correct{animation:.4s rock-pop;box-shadow:inset 0 0 0 5px #8ac244,0 0 29px #cce96f}.modal-backdrop{z-index:20;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#152d266b;place-items:center;padding:20px;animation:.2s fade-in;display:grid;position:fixed;inset:0}.result-modal{text-align:center;background:linear-gradient(145deg,#fffef5,#eaf6d2);border:3px solid #ffffffe6;border-radius:30px;width:min(460px,100%);padding:32px;animation:.35s cubic-bezier(.2,.9,.3,1.2) modal-in;box-shadow:0 25px 75px #142e1e57}.result-modal--blue{background:linear-gradient(145deg,#fff,#dcf4f7)}.result-modal--purple{background:linear-gradient(145deg,#fff,#ebe2f7)}.celebration{font-size:31px;animation:.8s infinite alternate celebrate}.result-modal h2{margin:8px 0 5px;font-family:Fredoka;font-size:31px}.result-modal p{color:#62716a;margin:0 0 20px;font-weight:800}.instructions-backdrop{z-index:30}.instructions-modal{background:linear-gradient(145deg,#fffef6,#eef5d9);border:3px solid #ffffffeb;border-radius:30px;width:min(520px,100%);padding:30px;animation:.3s cubic-bezier(.2,.9,.3,1.14) modal-in;box-shadow:0 25px 75px #142e1e57}.instructions-icon{background:#fff3b1;border-radius:18px;place-items:center;width:54px;height:54px;margin:0 auto 8px;font-size:31px;display:grid;box-shadow:0 6px 15px #62521e1f}.instructions-modal>p{text-align:center;margin:0}.instructions-modal h2{text-align:center;margin:4px 0 18px;font-family:Fredoka;font-size:29px}.instructions-modal ol{color:#465d54;margin:0 0 22px;padding-left:27px}.instructions-modal li{padding:6px 0 6px 5px;font-weight:800;line-height:1.4}.instructions-modal li::marker{color:#6f9630;font-family:Fredoka;font-size:18px;font-weight:900}.instructions-modal .primary-button{margin:0 auto;display:block}.modal-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.primary-button,.secondary-button{cursor:pointer;border-radius:14px;min-height:46px;padding:10px 20px;font-weight:900}.primary-button{color:#fff;background:#668f26;border:0;box-shadow:0 6px 13px #39591f40}.result-modal--blue .primary-button{background:#277f9c}.result-modal--purple .primary-button{background:#7155a8}.secondary-button{color:#41534c;background:#fff;border:2px solid #a8b4ae}@keyframes feedback-pop{50%{transform:scale(1.06)}}@keyframes shake{25%{transform:translate(-5px)}50%{transform:translate(5px)}75%{transform:translate(-3px)}}@keyframes cell-ready{to{box-shadow:0 0 0 3px #38a7be1f,0 7px 12px #28575526}}@keyframes fade-in{0%{opacity:0}}@keyframes modal-in{0%{opacity:0;transform:translateY(18px)scale(.96)}}@keyframes celebrate{to{transform:translateY(-4px)rotate(2deg)}}@keyframes kitten-hop{0%{transform:translate(-50%,-76%)scale(.96)}46%{transform:translate(-50%,-132%)rotate(-6deg)scale(1.07);box-shadow:0 25px 25px #233c1c2e}to{transform:translate(-50%,-76%)scale(1)}}@keyframes rock-shake{25%{transform:translate(calc(-50% - 6px), -50%) rotate(var(--rock-rotation))}50%{transform:translate(calc(-50% + 6px), -50%) rotate(var(--rock-rotation))}75%{transform:translate(calc(-50% - 3px), -50%) rotate(var(--rock-rotation))}}@keyframes rock-pop{50%{transform:translate(-50%, -54%) rotate(var(--rock-rotation)) scale(1.08)}}@media (width<=900px){.home-page{padding:22px}.brand-mark{width:fit-content;margin:0 auto 8px;position:static}.game-grid{grid-template-columns:repeat(2,1fr)}.game-card:last-child{grid-column:1/-1;justify-self:center;width:calc(50% - 10px)}.game-card-preview{height:245px}.game-header{grid-template-columns:165px 1fr 45px}.tic-layout{grid-template-columns:1fr 1fr;gap:15px}}@media (width<=680px){.garden-page{background-attachment:scroll}.home-page,.inner-page{padding:14px}.home-hero{margin-bottom:18px}.home-hero h1{font-size:39px}.hero-subtitle{max-width:310px;margin:9px auto 0}.game-grid{grid-template-columns:1fr;gap:17px}.game-card:last-child{grid-column:auto;width:100%}.game-card{border-radius:23px;grid-template-columns:44% 56%;display:grid}.game-card-preview{height:215px}.game-card-body{min-height:215px;padding:21px 18px}.game-card h2{font-size:25px}.game-card p{max-width:100%;font-size:13px}.wood-sign{margin-top:16px;padding:8px 18px;font-size:15px}.game-shell{border-radius:24px;padding:13px 12px 20px}.game-header{grid-template-columns:1fr 38px;padding-bottom:13px}.game-header-actions{flex-direction:row;grid-column:1/-1;width:100%}.game-header-actions>button{flex:1}.game-heading-copy{text-align:left}.game-header h1{font-size:35px}.game-header p{font-size:13px}.header-bee{font-size:30px}.memory-grid{gap:7px}.memory-face{border-radius:12px}.memory-back>span{font-size:27px}.memory-back small{display:none}.memory-front strong{font-size:14px}.clothing-visual--medium{font-size:38px}.tic-layout{grid-template-columns:1fr}.question-card{padding:17px}.clothing-visual--xlarge{width:112px;height:112px;margin-top:10px;font-size:72px}.board-card{padding:15px}.tic-board{width:min(340px,100%)}.kitten-scene{padding:15px 12px}.question-bubble{gap:10px;padding-right:12px}.question-bubble .clothing-visual{width:66px;height:66px;font-size:44px}.path-area{background-position:50% 65%;min-height:365px;margin-left:-12px;margin-right:-12px}.kitten{border-width:3px;width:84px}.finish-flag{font-size:42px;top:3%}.path-line{top:45%}.rock-options{inset:0}.word-rock{width:102px;min-height:70px;font-size:14px}.trail-rock{width:78px}.sound-toggle{padding:7px 9px;top:10px;right:10px}.sound-toggle-label{display:none}}@media (width<=390px){.home-page{padding:10px}.home-hero h1{font-size:34px}.game-card{grid-template-columns:41% 59%}.game-card-preview,.game-card-body{height:190px;min-height:190px}.play-pill{margin-top:10px}.memory-grid{grid-template-columns:repeat(3,1fr)}.memory-card{aspect-ratio:1}.answer-options{gap:5px}.answer-options button{font-size:13px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
