.chess-lab{color:#183d39}.chess-intro{font-size:1.15rem;line-height:1.5;margin:0 0 1rem}.chess-levels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;margin-bottom:1rem}.chess-levels button{display:flex;flex-direction:column;gap:.2rem;align-items:flex-start;text-align:left;border:2px solid #a9c4b8;border-radius:14px;background:#fffdf6;color:#24564f;padding:.75rem}.chess-levels button[aria-current=step]{background:#d8eadc;border-color:#357866}.chess-levels small{color:#567469}.chess-layout{display:grid;grid-template-columns:minmax(0,440px) minmax(230px,1fr);align-items:start;gap:clamp(1rem,4vw,2rem)}.chess-board-wrap{min-width:0;overflow-x:auto}.chess-board{display:grid;grid-template-columns:repeat(8,1fr);width:100%;min-width:362px;aspect-ratio:1;border:5px solid #386d60;border-radius:13px;overflow:hidden;box-shadow:0 6px #c8bca1}.chess-square{position:relative;min-width:0;min-height:0;border:0;border-radius:0;padding:0;display:grid;place-items:center;color:#163c35}.chess-square.light{background:#f5e9ca}.chess-square.dark{background:#90b4a1}.chess-square:hover{filter:brightness(1.09)}.chess-square.found{background:#f1d77f}.chess-square.hinted{outline:3px solid #d7832b;outline-offset:-4px}.chess-square:focus-visible{z-index:1;outline:4px solid #b04e17;outline-offset:-4px}.chess-square-content{font-size:clamp(1.3rem,5vw,2.8rem);line-height:1}.chess-rank,.chess-file{position:absolute;font-size:clamp(.55rem,1.5vw,.8rem);font-weight:800}.chess-rank{top:3px;left:5px}.chess-file{bottom:2px;right:5px}.chess-legend{display:flex;flex-wrap:wrap;gap:.5rem 1rem;font-size:.95rem;margin:.8rem 0}.chess-details{background:#fffdf6;border:2px solid #e3dac7;border-radius:20px;padding:clamp(1rem,3vw,1.5rem)}.chess-step{font-weight:700;color:#537468;margin:0 0 .5rem}.chess-details h2{font-size:clamp(1.5rem,3vw,2rem);margin:0 0 .8rem}.chess-instruction{font-size:1.25rem;line-height:1.4;margin:.5rem 0 1.4rem}.chess-feedback{min-height:3rem;font-weight:700;color:#24564f}.chess-hint{padding:.9rem;background:#fff0c8;border-left:4px solid #c17729;border-radius:8px}.chess-actions{display:flex;flex-wrap:wrap;gap:.6rem}.chess-actions button{min-height:48px;border:2px solid #80aa96;border-radius:12px;background:#e2f0df;color:#183d39;font-weight:700;padding:.6rem .9rem}.chess-actions .chess-next{background:#225f52;border-color:#225f52;color:#fff}.chess-parent-note{font-size:.9rem;line-height:1.5;color:#5c7067;margin:1.5rem 0 0}@media(max-width:760px){.chess-layout{grid-template-columns:1fr}.chess-levels{grid-template-columns:repeat(2,minmax(0,1fr))}.chess-board-wrap{width:min(100%,520px);margin:auto}}@media(max-width:400px){.chess-levels button{padding:.5rem}.chess-levels strong{font-size:.9rem}.chess-legend{font-size:.82rem}}.word-lab{max-width:760px}.word-intro{font-size:1.15rem;margin-top:0}.family-picker{display:flex;align-items:center;gap:.75rem;font-weight:650}.family-picker select{min-height:48px;border:2px solid #a9c4b8;border-radius:12px;background:#fff;padding:.6rem .8rem;color:#173c38;font:inherit}.word-tabs{display:flex;flex-wrap:wrap;gap:.6rem;margin:1rem 0 1.6rem}.word-tabs button,.word-next{border:2px solid #a9c4b8;border-radius:12px;background:#fff;padding:.7rem 1rem;color:#173c38;min-height:48px}.word-tabs button[aria-pressed=true],.word-lab .choices button[aria-pressed=true]{background:#d5e8d9;border-color:#2d7460}.word-lab h2{font-size:clamp(1.35rem,3vw,2rem);line-height:1.3}.word-highlight{color:#a44b32}.word-ending{color:#a44b32;text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:3px}.word-next{margin-top:1.2rem}.word-builder{display:flex;align-items:center;font-size:clamp(3rem,10vw,5rem);font-weight:800;margin:1rem 0;color:#245d52}.word-builder span:first-child{min-width:1.2em;text-align:center;color:#ad5c37}.word-list,.word-away{color:#526d64}.word-away{border-top:1px solid #e3dac7;padding-top:1rem;margin-bottom:0}.time-lab{max-width:820px}.time-intro{font-size:1.15rem;margin-top:0}.time-tabs,.time-switch{display:flex;flex-wrap:wrap;gap:.6rem;margin:1rem 0 1.5rem}.time-tabs button,.time-switch button,.time-next{min-height:48px;border:2px solid #a9c4b8;border-radius:12px;background:#fff;padding:.7rem 1rem;color:#173c38}.time-tabs button[aria-pressed=true],.time-switch button[aria-pressed=true],.time-lab .choices button[aria-pressed=true]{background:#d5e8d9;border-color:#2d7460}.time-lab h2{font-size:clamp(1.35rem,3vw,2rem);line-height:1.3}.time-select{font-size:1.25rem;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.time-select select{font:inherit;padding:.5rem;border:2px solid #a9c4b8;border-radius:10px;background:#fff;color:#173c38}.time-note{color:#526d64}.time-sequence{font-weight:700;color:#245d52;line-height:2}.weekend-day{padding:.25rem .45rem;border-radius:8px;background:#f9e3bd}.time-clock{width:min(260px,80vw);display:block;margin:1rem auto}.time-next{margin-top:1rem}.win-confetti{position:absolute;inset:0;pointer-events:none;overflow:visible}.win-confetti i{position:absolute;top:45%;left:50%;width:9px;height:15px;border-radius:2px;background:var(--confetti-color);opacity:0;animation:win-confetti-burst 1.8s ease-out both}.win-confetti i:nth-child(3n){border-radius:50%;width:10px;height:10px}@keyframes win-confetti-burst{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}10%{opacity:1}45%{opacity:1;transform:translate(var(--confetti-x),var(--confetti-y)) rotate(var(--confetti-spin))}to{opacity:0;transform:translate(var(--confetti-x),110px) rotate(var(--confetti-spin)) scale(.6)}}@media(prefers-reduced-motion:reduce){.win-confetti{display:none}}.tic-game,.four-game{max-width:620px}.tic-board{display:grid;grid-template-columns:repeat(3,minmax(72px,1fr));gap:.55rem;width:min(100%,390px);margin:0 auto 1rem}.tic-cell{aspect-ratio:1;border:2px solid #a9c4b8;border-radius:16px;background:#e9f3e8;color:#173c38;font-size:clamp(2.5rem,12vw,4rem);font-weight:850}.tic-cell:not(:disabled):hover,.four-cell:not(:disabled):hover{background:#d5e8d9}.game-reset:focus-visible,.tic-cell:focus-visible,.four-cell:focus-visible{outline:4px solid #dc8c42;outline-offset:3px}.four-cell{aspect-ratio:1;border:2px solid #d8e5e8;border-radius:50%;background:#fffdf6;color:#173c38;font-size:clamp(1rem,4vw,1.5rem);font-weight:850}.four-column:focus-visible{outline:4px solid #dc8c42;outline-offset:3px;border-radius:12px}@media(max-width:440px){.tic-game,.four-game{padding:1rem}.four-board{min-width:300px}}.tic-board-wrap{position:relative;width:min(100%,390px);margin:0 auto 1rem}.tic-board-wrap .tic-board{width:100%;margin:0}.tic-cell.tic-mark-x{background:#fcece8;color:#9f3228;border-color:#c98176}.tic-cell.tic-mark-o{background:#e7f0fb;color:#245b91;border-color:#81a6cd}.tic-game .game-status.tic-mark-x{color:#9f3228}.tic-game .game-status.tic-mark-o{color:#245b91}.tic-cell.tic-cell-winner{background:#ffe6a2;border-color:#a46b0c;box-shadow:inset 0 0 0 3px #edb847;opacity:1}.tic-win-line{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.tic-win-line line{stroke:#a46b0c;stroke-width:2.5;stroke-linecap:round;stroke-dasharray:100;animation:tic-line-reveal .45s ease-out both}@keyframes tic-line-reveal{0%{stroke-dashoffset:100}to{stroke-dashoffset:0}}.tic-game{overflow:hidden}@media(prefers-reduced-motion:reduce){.tic-win-line line{animation:none}}.four-game{max-width:620px}.game-intro{margin-top:0;color:#526d64}.game-status{min-height:1.8em;margin:.75rem 0 1rem;font-size:1.2rem;font-weight:750;color:#275c55}.game-reset{min-height:48px;border:2px solid #a9c4b8;border-radius:12px;background:#fff;padding:.6rem 1rem;color:#173c38;font:inherit;font-weight:700}.game-reset:focus-visible,.four-column:focus-visible{outline:4px solid #dc8c42;outline-offset:3px}.four-board-wrap{overflow-x:auto;padding:.35rem}.four-board{display:grid;grid-template-columns:repeat(7,minmax(38px,1fr));gap:clamp(.2rem,1vw,.5rem);min-width:315px;padding:clamp(.5rem,2vw,1rem);border-radius:20px;background:#346f9d}.four-column{display:grid;grid-template-rows:repeat(6,1fr);gap:clamp(.2rem,1vw,.5rem);padding:0;border:0;background:none}.four-cell{aspect-ratio:1;border:2px solid #d8e5e8;border-radius:50%;background:#fffdf6;display:grid;place-items:center;color:#183d39;font-weight:800}.four-cell.red{background:#e58a54}.four-cell.yellow{background:#f2ce62}.four-instructions{color:#526d64;font-size:.95rem;margin:.5rem 0 1rem}@media(max-width:440px){.four-game{padding:1rem}.four-board{min-width:300px}}.four-game{overflow:hidden}.four-board-stage{position:relative;min-width:315px;--four-padding:clamp(.5rem,2vw,1rem)}.four-cell.four-cell-winner{border:3px solid #fff;box-shadow:0 0 0 3px #173c38;color:#173c38}.four-win-line{position:absolute;inset:var(--four-padding);width:calc(100% - 2 * var(--four-padding));height:calc(100% - 2 * var(--four-padding));pointer-events:none;overflow:visible}.four-win-line line{stroke:#fff;stroke-width:7;stroke-linecap:round;stroke-dasharray:500;animation:four-line-reveal .45s ease-out both}@keyframes four-line-reveal{0%{stroke-dashoffset:500}to{stroke-dashoffset:0}}@media(max-width:440px){.four-board-stage{min-width:300px}}@media(prefers-reduced-motion:reduce){.four-win-line line{animation:none}}.memory-lab{display:grid;gap:1rem}.memory-grid{display:grid;grid-template-columns:repeat(4,minmax(3.5rem,1fr));gap:.65rem;max-width:34rem;margin:0 auto;width:100%}.memory-card{min-height:clamp(4.4rem,15vw,6.5rem);border:2px solid #8c6346;border-radius:1rem;background:#f5dfbd;color:#4c372b;font-size:clamp(1.8rem,7vw,3rem);cursor:pointer;box-shadow:0 3px #d1b18b}.memory-card:hover{background:#f9e9d2}.memory-card:focus-visible,.memory-reset:focus-visible{outline:3px solid #315e58;outline-offset:3px}.memory-card.is-matched{background:#dcebd9;border-color:#628267}.memory-reset{justify-self:center;border:1px solid #315e58;border-radius:999px;padding:.65rem 1.1rem;background:#fff;color:#173c38;font:inherit;cursor:pointer}.memory-away{text-align:center;color:#52645d}.games-library{max-width:1040px;margin:0 auto}.games-library-tile{border-color:#aec9b7!important;background:linear-gradient(140deg,#fffdf6,#edf6e9)!important}.library-intro{margin:.15rem 0 1.1rem;color:#536f66;font-size:1.08rem;line-height:1.5}.games-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:1rem}.library-card{min-height:245px;display:flex;flex-direction:column;align-items:flex-start;gap:.55rem;position:relative;overflow:hidden;text-align:left;border:2px solid #d7ddcb;border-radius:22px;background:#fffdf7;padding:1.15rem;color:#173c38;box-shadow:0 5px #e0dfd2;transition:transform .14s ease,box-shadow .14s ease}.library-card:hover{transform:translateY(-3px);box-shadow:0 8px #e0dfd2}.library-card:focus-visible{outline:4px solid #dc8c42;outline-offset:3px}.library-card:after{content:"";position:absolute;width:150px;height:95px;right:-27px;top:20px;border-radius:55% 45% 48% 52%;background:#e8eee0;transform:rotate(-12deg);z-index:0}.library-card>*{position:relative;z-index:1}.library-mark{min-height:90px;align-self:stretch;display:grid;place-items:center;font-size:4rem;color:#37746a}.library-card.blocks .library-mark{color:#3c7c99;text-shadow:14px 0 #d79242,-14px 12px #76a47b}.library-card.snake .library-mark{color:#4e956e;font-size:4.8rem}.library-card.escape .library-mark{font-size:4rem}.library-card.checkers .library-mark{color:#a45845;text-shadow:12px 12px #4f7770,-12px 12px #e2b55f}.library-card strong{font-size:1.45rem;color:#214e47}.library-card small{font-size:1rem;line-height:1.4;color:#5e756d}.library-play{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:auto;padding-top:.5rem;color:#326c5c;font-weight:800}.library-play span{font-size:1.2rem}.games-library-top{display:flex;align-items:center;gap:.8rem;margin-bottom:.85rem;color:#527066;font-weight:750}.games-back{min-height:44px;border:2px solid #a7beb0;border-radius:12px;background:#fff;padding:.45rem .8rem;color:#24574d;font:inherit;font-weight:750}.games-back:hover{background:#eaf3e9}@media(max-width:560px){.library-card{min-height:220px}.library-mark{min-height:75px}}@media(prefers-reduced-motion:reduce){.library-card{transition:none}.library-card:hover{transform:none}}.falling-game{max-width:960px;margin:0 auto;border-radius:24px;padding:clamp(1rem,3vw,1.6rem);background:#fffdf6}.falling-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.2rem .2rem .8rem}.falling-heading h2{margin:.2rem 0;color:#173f42;font-size:clamp(1.5rem,3vw,2.15rem)}.falling-heading p{margin:.25rem 0;color:#5c746e;line-height:1.45}.falling-kicker{font-size:.74rem;letter-spacing:.12em;font-weight:900;color:#527669}.falling-spark{font-size:3rem;color:#d98a3c}.falling-settings{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;padding:.8rem;background:#f1f3e9;border-radius:16px}.falling-settings label{display:flex;align-items:center;gap:.5rem;font-weight:750;color:#274e49}.falling-settings select{min-height:46px;border:2px solid #a5bdb0;border-radius:10px;padding:.4rem .65rem;background:#fff;color:#173c38;font:inherit}.falling-toggle{position:relative;display:grid!important;grid-template-columns:auto auto;column-gap:.4rem!important;align-items:center;min-height:42px;padding:.2rem .5rem;background:#fff;border-radius:10px}.falling-toggle input{width:21px;height:21px;accent-color:#286856}.falling-toggle small{grid-column:2;font-size:.77rem;font-weight:500;color:#5f766e}.falling-action{min-height:46px;border:2px solid #91b0a3;border-radius:11px;background:#fff;padding:.5rem .85rem;color:#1b4c45;font-weight:750}.falling-action:hover,.falling-pad button:hover{background:#e8f2e8}.falling-instructions{margin:.8rem 0;color:#526d64;line-height:1.45}.falling-play{display:grid;grid-template-columns:minmax(250px,360px) minmax(130px,190px);justify-content:center;align-items:start;gap:1rem;margin:1rem auto;max-width:590px}.falling-board{position:relative;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));aspect-ratio:1/2;overflow:hidden;border:5px solid #345e61;border-radius:15px;background:#152f3b;box-shadow:inset 0 0 0 2px #759193,0 7px #cfddcf;outline:none;touch-action:manipulation}.falling-board:focus-visible{outline:4px solid #df8c3f;outline-offset:4px}.falling-cell{min-width:0;min-height:0;border:1px solid #5570783b;background:linear-gradient(145deg,#29485377,#19343e55)}.falling-cell.is-filled{border:2px solid #eef6d9aa;background:linear-gradient(145deg,color-mix(in srgb,var(--block-color),white 18%),var(--block-color) 60%,color-mix(in srgb,var(--block-color),black 17%));box-shadow:inset 0 0 0 2px #173c3c55,0 0 8px color-mix(in srgb,var(--block-color),transparent 45%);border-radius:4px}.falling-cell.is-ghost{border:2px dashed color-mix(in srgb,var(--block-color),white 20%);background:color-mix(in srgb,var(--block-color),transparent 76%);box-shadow:none}.falling-overlay{position:absolute;inset:0;display:grid;place-items:center;background:#102e38bb;color:#fff;font-size:clamp(1.4rem,5vw,2.5rem);font-weight:900;text-shadow:0 2px 6px #10282d}.falling-score{display:grid;gap:.65rem}.score-card,.next-card{display:grid;gap:.15rem;padding:.75rem .85rem;border:2px solid #d7dfce;border-radius:14px;background:#f6f5e9;color:#365650}.score-card strong{font-size:1.5rem;color:#194942}.score-card small,.next-card>span{color:#688077;font-size:.82rem}.next-piece{display:grid;grid-template-columns:repeat(4,18px);grid-template-rows:repeat(4,18px);gap:2px;justify-content:center;padding:.4rem}.next-piece i{border-radius:4px;background:transparent}.next-piece i.is-next{background:var(--block-color);box-shadow:inset 0 0 0 2px #fff8}.falling-pad{display:flex;justify-content:center;flex-wrap:wrap;gap:.5rem;margin:1rem auto .5rem}.falling-pad button{display:grid;place-items:center;min-width:64px;min-height:60px;border:2px solid #a1bcae;border-radius:14px;background:#f5f7ec;color:#1a4a43;font-size:1.5rem;font-weight:900;touch-action:manipulation}.falling-pad small{font-size:.72rem;font-weight:700}.falling-notice{min-height:1.6em;margin:.6rem 0 0;color:#255b4e;font-weight:750}@media(max-width:540px){.falling-game{padding:.9rem}.falling-play{grid-template-columns:minmax(220px,300px) 110px;gap:.6rem}.score-card,.next-card{padding:.5rem}.score-card strong{font-size:1.25rem}.falling-pad button{flex:1 1 16%;min-width:52px}}@media(max-width:390px){.falling-play{grid-template-columns:minmax(0,1fr) 92px}.falling-score{font-size:.9rem}.next-piece{grid-template-columns:repeat(4,15px);grid-template-rows:repeat(4,15px)}}@media(prefers-reduced-motion:reduce){.falling-game *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}.snake-game{max-width:610px;color:#183f38}.snake-intro{margin-top:0;color:#526d64;line-height:1.55}.snake-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.snake-toolbar label{display:flex;align-items:center;gap:.6rem;font-weight:750}.snake-toolbar select{min-height:48px;border:2px solid #a9c4b8;border-radius:12px;background:#fff;padding:.45rem .8rem;color:#173c38;font:inherit}.snake-score{display:flex;align-items:baseline;gap:.55rem;padding:.4rem .8rem;border-radius:12px;background:#f3f8eb;color:#315648}.snake-score strong{font-size:1.6rem;color:#173c38}.snake-status{min-height:1.6em;margin:.6rem 0;font-weight:750;color:#275c55}.snake-playfield{width:min(100%,480px);aspect-ratio:1;margin:.5rem auto;padding:2px;display:grid;grid-template-columns:repeat(16,1fr);grid-template-rows:repeat(16,1fr);gap:1px;border:4px solid #355b4f;border-radius:16px;background:#c9d9b1;touch-action:none;overflow:hidden}.snake-playfield:focus-visible{outline:4px solid #dc8c42;outline-offset:3px}.snake-cell{background:#e8efda;border-radius:2px}.snake-playfield.level-2{background:#c8d9ae}.snake-playfield.level-3{background:#b6d4ad}.snake-playfield.level-4{background:#b8d5c5}.snake-cell.snake-body{background:#57946d;border-radius:5px}.snake-cell.snake-head{position:relative;background:#265d48;border-radius:7px}.snake-cell.snake-head:after{content:"••";position:absolute;color:#fff8d8;font-size:clamp(7px,2.4vw,13px);line-height:1;letter-spacing:1px}.snake-cell.head-up:after{top:1px;left:50%;transform:translate(-50%)}.snake-cell.head-down:after{bottom:1px;left:50%;transform:translate(-50%)}.snake-cell.head-left:after{left:1px;top:50%;transform:translateY(-50%) rotate(90deg)}.snake-cell.head-right:after{right:1px;top:50%;transform:translateY(-50%) rotate(90deg)}.snake-cell.snake-fruit{background:#f3ad51;border-radius:50%;box-shadow:inset 0 0 0 2px #fff2c9}.snake-help{margin:.55rem 0;color:#526d64;font-size:.93rem;line-height:1.5}.snake-actions{display:flex;gap:.7rem;flex-wrap:wrap}.snake-action,.snake-pad button{min-height:52px;min-width:54px;border:2px solid #a9c4b8;border-radius:13px;background:#fff;padding:.55rem .9rem;color:#173c38;font:inherit;font-weight:750;touch-action:manipulation}.snake-action.primary{background:#285f50;border-color:#285f50;color:#fff}.snake-action:focus-visible,.snake-pad button:focus-visible,.snake-toolbar select:focus-visible{outline:4px solid #dc8c42;outline-offset:3px}.snake-pad{display:grid;grid-template-columns:repeat(3,58px);grid-template-rows:repeat(2,54px);justify-content:center;gap:.35rem;margin:1rem auto 0}.snake-pad button{padding:0;font-size:1.55rem;background:#eff6e7}.snake-pad button:active,.snake-action:active{transform:scale(.96)}@media(max-width:440px){.snake-game{padding:1rem}.snake-playfield{border-radius:11px}.snake-pad{grid-template-columns:repeat(3,64px);grid-template-rows:repeat(2,58px)}}@media(prefers-reduced-motion:reduce){.snake-action:active,.snake-pad button:active{transform:none}}.car-escape{max-width:920px;color:#203b39}.ce-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.ce-heading h2{margin:.05rem 0 .4rem;font-size:clamp(1.55rem,4vw,2.1rem)}.ce-kicker{margin:0;color:#59766d;font-size:.75rem;font-weight:850;letter-spacing:.1em}.ce-description{margin:.25rem 0 1rem;color:#526d64}.ce-theme,.ce-toolbar select,.ce-actions button,.ce-hint{min-height:44px;border:2px solid #b2c9bf;border-radius:12px;background:#fff;padding:.55rem .8rem;color:#234a43;font:inherit;font-weight:700}.ce-toolbar{display:flex;gap:.8rem;align-items:center;flex-wrap:wrap}.ce-toolbar label{display:flex;align-items:center;gap:.5rem;font-weight:750}.ce-level-copy{color:#63786f;font-size:.9rem}.ce-status{min-height:1.5em;margin:.85rem 0;color:#275c55;font-weight:800}.ce-play-area{display:grid;grid-template-columns:minmax(270px,min(68vw,480px)) minmax(220px,1fr);align-items:start;gap:clamp(1rem,3vw,2rem)}.ce-board-wrap{width:100%;padding:.65rem;border-radius:20px;background:linear-gradient(145deg,#517e76,#315e59);box-shadow:inset 0 2px 8px #163f3944}.ce-board{position:relative;display:grid;width:100%;aspect-ratio:1;grid-template-columns:repeat(6,1fr);grid-template-rows:repeat(6,1fr);gap:3px;overflow:hidden;border:3px solid #315e59;border-radius:12px;background-color:#f1ead8;background-image:linear-gradient(#c7d3c6 1px,transparent 1px),linear-gradient(90deg,#c7d3c6 1px,transparent 1px);background-size:calc(100% / 6) calc(100% / 6)}.ce-board:after{position:absolute;content:"";right:-1%;top:calc(100% * 2 / 6 + 3px);width:8%;height:calc(100% / 6 - 3px);background:#fff4d2;border:2px solid #cfaa55;border-right:0;border-radius:10px 0 0 10px;z-index:0}.ce-car{position:relative;z-index:1;grid-row:calc(var(--r) + 1) / span 1;grid-column:calc(var(--c) + 1) / span var(--len);min-width:0;min-height:0;padding:2px;border:3px solid transparent;border-radius:12px;background:var(--car-color);cursor:pointer;box-shadow:0 3px 4px #1b383945;transition:filter .12s ease}.ce-car.vertical{grid-row:calc(var(--r) + 1) / span var(--len);grid-column:calc(var(--c) + 1) / span 1}.ce-car.selected{border-color:#173f3d;filter:brightness(1.08);box-shadow:0 0 0 3px #fff,0 0 0 6px #d89a38,0 4px 7px #183d3c55}.ce-car.goal{outline:2px solid #fff}.ce-car.roadster{background:linear-gradient(135deg,#f0cc64,#db9f36)}.ce-car-art{display:block;width:100%;height:100%;overflow:visible;pointer-events:none}.ce-car.vertical .ce-car-art{position:absolute;width:calc(var(--len) * 100%);height:calc(100% / var(--len));left:50%;top:50%;transform:translate(-50%,-50%) rotate(90deg)}.ce-exit{position:absolute;right:-.1rem;top:calc(100% * 2 / 6 + 2px);width:11%;z-index:2;color:#705a21;font-size:clamp(.4rem,1vw,.65rem);font-weight:900;writing-mode:vertical-rl;letter-spacing:.04em;pointer-events:none}.ce-controls{padding:.4rem 0}.ce-controls h3{margin:.25rem 0;color:#24584f}.ce-controls p{color:#5a7168;font-size:.92rem;line-height:1.45}.ce-arrow-controls{display:grid;grid-template-columns:repeat(3,48px);grid-template-rows:repeat(2,46px);gap:.35rem;margin:1rem 0}.ce-arrow-controls button{border:2px solid #9cbbb0;border-radius:12px;background:#f9fffc;color:#234a43;font-size:1.35rem;font-weight:850;cursor:pointer}.ce-arrow-controls button:nth-child(1){grid-column:2}.ce-arrow-controls button:nth-child(2){grid-column:1;grid-row:2}.ce-arrow-controls button:nth-child(3){grid-column:3;grid-row:2}.ce-arrow-controls button:nth-child(4){grid-column:2;grid-row:2}.ce-arrow-controls button:disabled,.ce-actions button:disabled,.ce-hint:disabled{opacity:.45;cursor:not-allowed}.ce-actions{display:flex;flex-wrap:wrap;gap:.5rem}.ce-hint{margin-top:.65rem;background:#e8f5ed}.ce-hint-copy{min-height:2.8em;margin:.5rem 0}.ce-access-note{margin:1rem 0 0;color:#62786f;font-size:.88rem}.ce-car:focus-visible,.ce-arrow-controls button:focus-visible,.ce-actions button:focus-visible,.ce-hint:focus-visible,.ce-theme:focus-visible,.ce-toolbar select:focus-visible{outline:4px solid #d8902e;outline-offset:3px}@media(max-width:680px){.ce-heading{align-items:flex-start;flex-direction:column}.ce-play-area{grid-template-columns:1fr}.ce-board-wrap{max-width:480px;margin-inline:auto}.ce-controls{display:grid;grid-template-columns:1fr 1fr;column-gap:1rem}.ce-controls h3,.ce-controls>p:first-of-type,.ce-hint-copy{grid-column:1/-1}.ce-arrow-controls{grid-column:1;grid-row:3/5}.ce-actions{grid-column:2;grid-row:3;align-content:center}.ce-hint{grid-column:2;grid-row:4;align-self:center}}@media(prefers-reduced-motion:reduce){.ce-car{transition:none}}.checkers-game{--checkers-ink: #233247;color:var(--checkers-ink)}.checkers-intro,.checkers-help{max-width:62rem;line-height:1.55}.checkers-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin:1rem 0}.checkers-toolbar label{display:inline-flex;align-items:center;gap:.55rem;font-weight:650}.checkers-toolbar button{border:1px solid #708095;background:#fff;color:inherit;border-radius:.65rem;padding:.65rem .9rem;font:inherit;font-weight:700;cursor:pointer}.checkers-toolbar button:focus-visible,.checkers-square:focus-visible{outline:3px solid #ffbf47;outline-offset:2px;z-index:1}.checkers-status{min-height:1.5em;font-size:1.1rem;font-weight:750}.checkers-count{font-weight:700}.checkers-board{width:min(100%,34rem);aspect-ratio:1;display:grid;grid-template-rows:repeat(8,1fr);border:5px solid #334357;border-radius:.7rem;overflow:hidden;box-shadow:0 12px 30px #17253a24}.checkers-row{min-height:0;display:grid;grid-template-columns:repeat(8,minmax(0,1fr))}.checkers-square{position:relative;display:grid;place-items:center;min-width:0;border:0;padding:0;cursor:pointer}.checkers-square.light{background:#f4ead6}.checkers-square.dark{background:#567064}.checkers-square.selected{box-shadow:inset 0 0 0 4px #ffc857}.checkers-square.must-take:not(.selected){box-shadow:inset 0 0 0 2px #ffdd86}.checkers-square.target{background:#718f69}.checkers-piece{width:78%;height:78%;display:grid;place-items:center;border-radius:50%;box-shadow:inset 0 -5px #0003,0 2px 3px #0004;font-size:clamp(1.3rem,6vw,2.4rem);font-weight:900}.checkers-piece.red{color:#fff5eb;background:radial-gradient(circle at 35% 28%,#f28f75,#b83e32 70%);border:3px solid #8c2f2a}.checkers-piece.cream{color:#584127;background:radial-gradient(circle at 35% 28%,#fff9dd,#e3c994 72%);border:3px solid #b99d6b}.checkers-piece.king{text-shadow:0 1px 2px #0006}.checkers-dot{position:absolute;width:24%;height:24%;border-radius:50%;background:#e8f1bd;border:2px solid #425b3d;opacity:.95}.checkers-help{color:#42546a}@media(prefers-reduced-motion:no-preference){.checkers-piece{transition:transform .12s ease}.checkers-square:hover .checkers-piece{transform:translateY(-2px)}}@media(prefers-reduced-motion:reduce){.checkers-piece{transition:none}}@media(max-width:480px){.checkers-board{border-width:3px;border-radius:.35rem}.checkers-toolbar button{min-height:44px}}.teaching-support{display:grid;gap:.8rem;padding:1rem;border:1px solid #b8cec6;border-radius:.9rem;background:#f1f8f4}.teaching-support p{margin:0;line-height:1.5}.teaching-actions{display:flex;flex-wrap:wrap;gap:.6rem}.teaching-support button{min-height:44px;border:1px solid #315e58;border-radius:.8rem;padding:.65rem .9rem;background:#fff;color:#173c38;font:inherit;cursor:pointer}.teaching-support button:focus-visible,.teaching-support summary:focus-visible{outline:3px solid #315e58;outline-offset:3px}.teaching-support summary{cursor:pointer;padding:.6rem 0;font-weight:700}.teaching-support details[open]{display:grid;gap:.8rem}.story-sequence{display:grid;gap:1rem}.story-cards{display:grid;gap:.75rem;list-style:none;margin:0;padding:0}.story-cards li{display:grid;grid-template-columns:4.5rem minmax(0,1fr);gap:.4rem .8rem;align-items:center;padding:.9rem;border:1px solid #d0bcaa;border-radius:.9rem;background:#fffaf4}.story-position{color:#315e58;font-weight:700}.story-card-text{line-height:1.45}.story-controls{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:.55rem}.story-controls button,.story-reset{border:1px solid #315e58;border-radius:999px;padding:.55rem .85rem;background:#fff;color:#173c38;font:inherit;cursor:pointer}.story-controls button:disabled{opacity:.45;cursor:default}.story-controls button:focus-visible,.story-reset:focus-visible{outline:3px solid #315e58;outline-offset:3px}.story-reset{justify-self:center}.story-selector{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;font-weight:700}.story-selector select{min-height:44px;max-width:100%;font:inherit;padding:.5rem;border:1px solid #315e58;border-radius:.6rem;background:#fff;color:#173c38}.story-picture{display:inline-block;margin-right:.6rem;font-size:1.8rem}.story-conversation{display:grid;gap:.7rem}.story-conversation h3,.story-conversation p{margin:0}.story-predictions{display:flex;flex-wrap:wrap;gap:.6rem}.story-predictions button{min-height:44px;font:inherit;padding:.6rem .9rem;background:#fff;color:#173c38;border:1px solid #315e58;border-radius:.7rem;cursor:pointer}.story-predictions button[aria-pressed=true]{background:#dcece4;border-width:2px}.story-selector select:focus-visible,.story-predictions button:focus-visible{outline:3px solid #315e58;outline-offset:3px}.discovery-pack{max-width:820px}.discovery-intro,.discovery-idea{color:#526d64;font-size:1.1rem;line-height:1.5}.discovery-activities{display:flex;flex-wrap:wrap;gap:.65rem;margin:1.2rem 0}.discovery-activities button,.discovery-navigation>button{min-height:48px;border:2px solid #a9c4b8;border-radius:13px;background:#fff;padding:.65rem .9rem;color:#173c38;font:inherit;font-weight:700}.discovery-activities button[aria-pressed=true]{background:#d5e8d9;border-color:#2d7460}.discovery-pack h2{font-size:clamp(1.5rem,4vw,2.1rem);margin-bottom:.3rem}.discovery-safety{border-left:5px solid #dc8c42;background:#fff4df;padding:.8rem 1rem;line-height:1.5}.discovery-stages{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.45rem;list-style:none;padding:0;margin:1.4rem 0}.discovery-stages li{text-align:center;padding:.65rem .25rem;border-bottom:3px solid #ded8ca;color:#526d64;font-weight:700}.discovery-stages li[aria-current=step]{border-color:#2d7460;color:#173c38;background:#e9f3e8;border-radius:10px 10px 0 0}.discovery-stages li.done{border-color:#a9c4b8}.discovery-current{min-height:210px;border:1px solid #e3dac7;border-radius:16px;background:#fff;padding:1rem;line-height:1.55}.discovery-current h3{margin:.2rem 0;font-size:1.4rem}.discovery-entry{display:grid;gap:.4rem;margin:1rem 0;font-weight:700}.discovery-entry textarea{width:100%;max-width:100%;resize:vertical;border:2px solid #a9c4b8;border-radius:10px;padding:.7rem;color:#173c38;font:inherit}.discovery-navigation{display:flex;justify-content:space-between;gap:.7rem;margin-top:1rem}.discovery-navigation button:disabled{opacity:.5;cursor:not-allowed}.discovery-navigation .action{min-width:140px}.discovery-test-note,.discovery-reset-note{color:#526d64}.discovery-reset-note{margin-bottom:0}.discovery-pack button:focus-visible,.discovery-pack textarea:focus-visible{outline:4px solid #dc8c42;outline-offset:3px}@media(max-width:540px){.discovery-stages{gap:.15rem}.discovery-stages li{font-size:.82rem;padding:.55rem .1rem}.discovery-current{min-height:0}.discovery-navigation{align-items:stretch}.discovery-navigation button{flex:1}}.reading-lab{max-width:900px;margin:auto}.reading-picker{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;font-weight:700;margin:1rem 0}.reading-picker select{font:inherit;color:inherit;max-width:100%;padding:.7rem;border:2px solid #a9c4b8;border-radius:12px;background:#fff}.reading-stages{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.reading-stages button{min-height:48px;padding:.7rem;border:2px solid #a9c4b8;border-radius:12px;color:#183d39;background:#fffdf6}.reading-stages [aria-pressed=true]{background:#275c55;color:#fff}.reading-panel h2{margin-top:0}.reading-guide summary,.reading-panel summary{cursor:pointer;font-weight:700;padding:.7rem 0}.sound-card{font-size:6rem;text-align:center;background:#edf3e9;border:2px solid #aec4bb;border-radius:18px;max-width:230px;margin:1rem auto}.blend-letters,.reading-slots,.oral-counters{display:flex;justify-content:center;gap:.8rem;margin:1.5rem 0;flex-wrap:wrap}.blend-letters>span{min-width:75px;border:2px solid #d0d9ce;border-radius:14px;padding:.5rem;font-size:3rem;text-align:center}.blend-letters small{display:block;font-size:1rem;min-height:1.5rem}.blend-letters .connected{background:#d5e8d9;border-bottom:6px solid #275c55}.reading-slots button,.oral-counters button{min-width:70px;min-height:70px;font-size:2rem;background:#fffdf6;border:2px solid #aec4bb;border-radius:14px;color:#183d39}.reading-slots [aria-pressed=true]{outline:4px solid #dc8c42}.oral-counters [aria-pressed=true]{background:#d5e8d9}.reading-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin:1rem 0}.blend-word .action{margin:0 .5rem .7rem 0}.reading-target,.reading-sentence{font-size:2rem;letter-spacing:.08em}.meaning-card,.meaning-question{background:#edf3e9;border-radius:14px;padding:1rem;margin:1rem 0}.quiet{background:#fff!important}.reading-print{border:2px dashed #aec4bb;padding:1rem;margin-top:1rem}.print-letters,.print-words{display:flex;flex-wrap:wrap;gap:.6rem}.print-letters>div{width:150px;border:1px dashed #666;padding:.8rem;break-inside:avoid}.print-letters strong{display:block;font-size:3rem;text-align:center}.print-letters small{display:block}.print-words span{padding:1rem;border:1px dashed #666;min-width:110px;text-align:center;font-size:2rem;break-inside:avoid}.print-sentence{font-size:1.7rem}@media print{body{background:#fff;color:#000}.app header,.app footer,main>.back,main>h1,.reading-lab>p,.reading-picker,.reading-guide,.reading-stages,.reading-panel>*:not(div),.reading-panel>div>*:not(.reading-print){display:none!important}.reading-panel,.reading-print{border:0;padding:0;margin:0;background:#fff;color:#000}.reading-panel>div{display:block}.reading-print{display:block!important}.print-letters>div{width:140px}.reading-print h2{display:block}.reading-print{font-size:11pt}.print-words span{font-size:24pt}main{width:100%;padding:0}}.family-companion{max-width:900px;margin:auto;line-height:1.55}.family-intro{font-size:1.1rem}.family-session-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:1rem 0 1.5rem}.family-session-choices button{display:flex;flex-direction:column;text-align:left;gap:.4rem;background:#fffdf6;border:2px solid #aec4bb;border-radius:16px;padding:1rem;color:#183d39;min-height:100px}.family-session-choices strong{font-size:1.1rem}.family-session-choices [aria-pressed=true]{border:3px solid #275c55;background:#e9f3e8}.family-session li,.family-guidance li,.family-print-guide li,.family-reflection li{margin:.45rem 0}.family-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin:1rem 0}.family-guidance{margin:1.5rem 0}.family-guidance details{border-bottom:1px solid #aec4bb;padding:.5rem 0}.family-guidance summary{cursor:pointer;font-weight:700;min-height:48px;padding:.6rem 0}.family-print-guide{display:none;border:2px solid #aec4bb;border-radius:16px;padding:1.2rem;margin:1rem 0}.family-print-guide.is-open{display:block}.family-guide-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.family-reflection{margin-top:1.5rem}.family-return{border:2px solid #aec4bb;border-radius:14px;padding:1rem;margin-bottom:1rem;background:#e9f3e8}.family-return p{margin:0 0 .5rem}.family-return button{min-height:48px;border:1px solid #aec4bb;border-radius:10px;padding:.5rem .8rem;background:#fff;color:#183d39}.family-return-actions{display:flex;flex-wrap:wrap;gap:.6rem}a:focus-visible,summary:focus-visible,select:focus-visible{outline:4px solid #dc8c42;outline-offset:3px}@media(max-width:640px){.family-session-choices,.family-guide-columns{grid-template-columns:1fr}.family-actions button{width:100%}}@media print{.family-companion{color:#000;font-size:10pt;line-height:1.3;max-width:none}.family-companion>*{display:none!important}.family-companion[data-print-target=guide]>.family-print-guide{display:block!important;border:0;padding:0;margin:0}.family-companion[data-print-target=session]>.family-session{display:block!important;border:0;padding:0;margin:0}.family-guide-columns{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.family-companion h2{font-size:17pt}.family-companion h3{font-size:12pt;break-after:avoid}.family-companion li{margin:.3rem 0;break-inside:avoid}.family-companion .family-actions,.family-companion .teaching-support,.family-return{display:none!important}.family-print-guide ul{padding-left:1.2rem}}.create-lab{max-width:900px;margin:auto}.creation-field{display:grid;gap:.4rem;font-weight:700;margin:1rem 0}.creation-field input,.creation-field textarea{width:100%;min-width:0;border:2px solid #a9c4b8;border-radius:10px;padding:.7rem;font:inherit;font-weight:400;color:#183d39;background:#fff}.creation-field textarea{resize:vertical}.creation-tools,.creation-actions{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}.create-lab button,.create-lab select{min-height:48px;border:2px solid #a9c4b8;border-radius:10px;padding:.55rem .8rem;background:#fff;color:#183d39;font:inherit}.creation-tools button[aria-pressed=true]{border-color:#183d39;background:#e9f3e8;box-shadow:inset 0 0 0 1px #183d39}.creation-swatch{display:inline-block;width:16px;height:16px;border-radius:50%;margin-right:.4rem;vertical-align:middle}.creation-tools label{display:flex;gap:.4rem;align-items:center}.creation-canvas{display:block;width:100%;border:2px solid #a9c4b8;border-radius:12px;touch-action:none;cursor:crosshair}.creation-canvas:focus-visible{outline:4px solid #dc8c42;outline-offset:3px}.creation-cursor{display:none;pointer-events:none}.creation-canvas:focus .creation-cursor{display:block}.creation-storage{color:#526d64;font-size:.95rem}.creation-notice{min-height:1.5em;color:#275c55}.creation-preview{display:none;margin-top:1.5rem}.creation-preview.is-open{display:block}.creation-page{background:#fff;padding:1.2rem;border:1px solid #a9c4b8;color:#183d39;overflow-wrap:anywhere}.creation-page svg{width:100%;display:block;border:1px solid #a9c4b8}.creation-story p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}.creation-story h3{margin-bottom:.4rem}.creation-confirm{margin:1rem 0;padding:1rem;background:#fff4df;border:2px solid #dc8c42;border-radius:12px}.creation-confirm button{margin:.3rem}.create-lab input:focus-visible,.create-lab textarea:focus-visible,.create-lab select:focus-visible{outline:4px solid #dc8c42;outline-offset:2px}@media(max-width:440px){.create-lab{padding:1rem}.creation-page{padding:.7rem}.creation-tools button{flex:1 0 auto}}@media print{body:has(.create-lab){background:#fff}body:has(.create-lab) header,body:has(.create-lab) footer,body:has(.create-lab) main>.back,body:has(.create-lab) main>h1,body:has(.create-lab) .family-return,.creation-editor{display:none!important}body:has(.create-lab) main,.create-lab.panel{width:100%;max-width:none;border:0;padding:0;margin:0}.creation-preview{display:block!important;margin:0}.creation-page{padding:0;border:0;color:#000;font-size:11pt}.creation-page h2{font-size:20pt;break-after:avoid}.creation-page svg{max-height:110mm;width:100%;break-inside:avoid}.creation-story section{break-inside:avoid}.creation-story h3{break-after:avoid}.creation-story p{margin:.3rem 0 1rem}}:root{font-family:ui-rounded,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#253345;background:#f7f8f5;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #253345;--muted: #64717e;--line: #e2e7e1;--paper: #fff;--canvas: #f7f8f5;--green: #287a68;--green-dark: #1c5b50;--green-pale: #e7f3ed;--blue: #477bc2;--blue-pale: #eaf1fb;--coral: #d77358;--coral-pale: #fbede6;--gold: #c58d2d;--gold-pale: #faf1db;--lavender: #7667a6;--lavender-pale: #f0edf9}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--canvas);color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #d27a36;outline-offset:3px}a{color:inherit}.app{min-height:100vh;display:flex;flex-direction:column}.site-header{position:relative;z-index:2;height:74px;display:flex;justify-content:space-between;align-items:center;padding:0 clamp(1rem,4vw,3.5rem);background:#fffffff0;border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:.55rem;padding:.35rem .2rem;border:0;background:transparent;color:var(--ink);font-size:1.4rem;font-weight:900;letter-spacing:-.04em}.brand-mark{display:grid;place-items:center;width:2rem;height:2rem;border-radius:11px;background:var(--green);color:#fff;font-size:1rem;box-shadow:0 3px #1c5b50}.header-tagline{color:#687789;font-size:.9rem;font-weight:600}.header-spark{color:var(--coral);font-size:1.4rem}main{width:min(1240px,100%);margin:0 auto;padding:clamp(1.1rem,3.5vw,2.6rem);flex:1}.skip-link{position:absolute;left:.75rem;top:.5rem;z-index:10;transform:translateY(-150%);padding:.7rem 1rem;border-radius:10px;background:var(--ink);color:#fff}.skip-link:focus{transform:translateY(0)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.welcome-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(230px,.75fr);align-items:center;min-height:286px;overflow:hidden;padding:clamp(1.5rem,4vw,3rem);border:1px solid #dbeae2;border-radius:30px;background:linear-gradient(112deg,#e2f2e9,#eaf3f3 52%,#e8eff9)}.welcome-hero:before{position:absolute;z-index:-1;content:"";width:520px;height:520px;right:8%;top:-320px;border:1px solid rgba(40,122,104,.12);border-radius:50%;box-shadow:0 0 0 36px #ffffff24,0 0 0 76px #ffffff1f}.welcome-copy{position:relative;z-index:1;max-width:700px}.hero-eyebrow,.section-eyebrow,.group-label,.page-eyebrow{color:var(--green-dark);font-size:.72rem;font-weight:800;letter-spacing:.13em}.hero-eyebrow{display:inline-flex;align-items:center;gap:.5rem;padding:.42rem .7rem;border:1px solid rgba(40,122,104,.17);border-radius:999px;background:#ffffff8c}.hero-eyebrow span{color:var(--coral)}.welcome-hero h1{margin:.9rem 0 .65rem;max-width:680px;color:#243c45;font-size:clamp(2.25rem,5vw,3.65rem);line-height:1.02;letter-spacing:-.055em}.welcome-hero p{max-width:520px;margin:0;color:#536c70;font-size:clamp(1rem,1.7vw,1.17rem);line-height:1.55}.hero-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.35rem}.hero-action{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:48px;padding:.72rem 1.08rem;border:1px solid transparent;border-radius:13px;font-weight:800;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.hero-action:hover{transform:translateY(-2px)}.hero-action.primary{background:var(--green);color:#fff;box-shadow:0 4px 0 var(--green-dark)}.hero-action.primary:hover{background:#236d5e}.hero-action.secondary{border-color:#c7d9d4;background:#ffffffa8;color:var(--green-dark)}.hero-action.secondary:hover{background:#fff}.hero-art{position:relative;justify-self:center;width:min(100%,300px);height:225px}.orbit{position:absolute;left:50%;top:44%;border:1px solid rgba(40,122,104,.2);border-radius:50%;transform:translate(-50%,-50%) rotate(-26deg)}.orbit-one{width:240px;height:135px}.orbit-two{width:190px;height:205px;transform:translate(-50%,-50%) rotate(30deg)}.art-sun{position:absolute;left:40%;top:11%;display:grid;place-items:center;width:78px;height:78px;border:8px solid rgba(255,255,255,.6);border-radius:50%;background:#f3c36f;color:#fff;font-size:2.25rem;box-shadow:0 7px #dca951}.art-star{position:absolute;color:var(--coral);font-size:1.7rem}.star-one{top:12%;right:9%}.star-two{bottom:25%;left:7%;color:var(--blue)}.art-block{position:absolute;bottom:25%;left:32%;width:47px;height:47px;border:5px solid rgba(255,255,255,.78);border-radius:12px;background:#62a897;box-shadow:0 5px #357d6c;transform:rotate(-8deg)}.block-two{left:48%;bottom:25%;background:#ed936f;box-shadow:0 5px #cb6c50;transform:rotate(6deg)}.block-three{left:40%;bottom:45%;width:39px;height:39px;background:#8b9ed3;box-shadow:0 5px #687eb3;transform:rotate(5deg)}.art-caption{position:absolute;bottom:5%;left:50%;width:max-content;color:#5f7878;font-size:.76rem;font-weight:800;letter-spacing:.06em;transform:translate(-50%)}.art-caption b{padding:0 .35rem;color:var(--coral)}.activity-browser{margin-top:clamp(2.1rem,4.5vw,3.6rem)}.browse-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.05rem}.browse-heading h2{margin:.25rem 0 0;color:var(--ink);font-family:Nunito,ui-rounded,system-ui,sans-serif;font-size:clamp(1.55rem,3vw,2.1rem);line-height:1.15;letter-spacing:-.03em}.browse-count{padding:.42rem .7rem;border-radius:999px;background:#eef0ec;color:#64717e;font-size:.8rem;font-weight:700;white-space:nowrap}.catalog-tools{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:center;gap:1rem}.activity-search{display:flex;align-items:center;gap:.55rem;min-height:50px;padding:0 .85rem;border:1px solid #dce3df;border-radius:14px;background:#fff;color:#708075;box-shadow:0 2px 5px #283c3206}.activity-search:focus-within{border-color:#6caa96;box-shadow:0 0 0 3px #287a681a}.activity-search>span:first-child{color:var(--green);font-size:1.45rem;line-height:1}.activity-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:.95rem}.activity-search input::placeholder{color:#687681}.activity-search input:focus-visible{outline:0}.clear-search{display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:9px;background:#f0f3f0;color:var(--muted);font-size:1.3rem}.category-filters{display:flex;gap:.38rem;overflow-x:auto;padding:3px;scrollbar-width:thin}.category-filter{min-height:40px;padding:.55rem .78rem;border:1px solid transparent;border-radius:11px;background:transparent;color:#5e6d7c;font-size:.84rem;font-weight:700;white-space:nowrap}.category-filter:hover{background:#edf1ee;color:var(--ink)}.category-filter.is-active{border-color:#cbe4d8;background:var(--green-pale);color:var(--green-dark)}.result-count{min-height:1.35rem;margin:.8rem 0 1.3rem;color:#68747d;font-size:.84rem}.activity-groups{display:grid;gap:2rem}.activity-group{min-width:0}.group-heading{display:flex;align-items:flex-start;gap:.8rem;margin-bottom:.8rem}.group-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:14px;background:var(--green-pale);color:var(--green-dark);font-size:1.05rem;font-weight:900}.group-play .group-icon{background:var(--coral-pale);color:#a7523c}.group-puzzles .group-icon{background:var(--lavender-pale);color:var(--lavender)}.group-learn .group-icon{background:var(--blue-pale);color:var(--blue)}.group-family .group-icon{background:var(--gold-pale);color:#9b6a19}.group-make .group-icon{background:#fbece6;color:#b35c41}.group-label{margin:0 0 .16rem;color:#66736f;font-size:.64rem}.group-heading h2{margin:0;color:#2e3b48;font-family:Nunito,ui-rounded,system-ui,sans-serif;font-size:1.18rem;line-height:1.2;letter-spacing:-.02em}.group-heading p{margin:.2rem 0 0;color:var(--muted);font-size:.88rem;line-height:1.45}.activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.activity-card{position:relative;min-width:0;min-height:138px;display:flex;flex-direction:column;align-items:flex-start;gap:.6rem;padding:1rem;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--paper);color:var(--ink);text-align:left;text-decoration:none;box-shadow:0 2px 4px #20342e06;transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}.activity-card:after{position:absolute;content:"";right:-26px;top:-34px;width:92px;height:92px;border-radius:50%;background:#eaf3ed;opacity:.7;transition:transform .2s ease}.group-play .activity-card:after{background:var(--coral-pale)}.group-puzzles .activity-card:after{background:var(--lavender-pale)}.group-learn .activity-card:after{background:var(--blue-pale)}.group-family .activity-card:after{background:var(--gold-pale)}.group-make .activity-card:after{background:#fbece6}.activity-card:hover{z-index:1;transform:translateY(-3px);border-color:#b9d2c9;box-shadow:0 8px 18px #223e3417}.activity-card:hover:after{transform:scale(1.3)}.activity-icon{position:relative;z-index:1;display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--green-pale);color:var(--green-dark);font-size:1.35rem;font-weight:900}.group-play .activity-icon{background:var(--coral-pale);color:#a7523c}.group-puzzles .activity-icon{background:var(--lavender-pale);color:var(--lavender)}.group-learn .activity-icon{background:var(--blue-pale);color:var(--blue)}.group-family .activity-icon{background:var(--gold-pale);color:#9b6a19}.group-make .activity-icon{background:#fbece6;color:#b35c41}.activity-card-copy{position:relative;z-index:1;display:grid;gap:.25rem;width:100%}.activity-card-copy strong{font-size:1.04rem;font-weight:900;line-height:1.2}.activity-card-copy small{max-width:36ch;color:#65727e;font-size:.84rem;line-height:1.42}.activity-card-bottom{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;margin-top:auto}.activity-state{color:#57786e;font-size:.68rem;font-weight:800;letter-spacing:.03em}.activity-state.is-muted{color:#7c8490}.activity-arrow{margin-left:auto;color:#83918e;font-size:1rem;transition:transform .16s ease}.activity-card:hover .activity-arrow{transform:translate(2px,-2px);color:var(--green)}.activity-card.is-preparing{border-style:dashed;background:#fbfbf9}.empty-search{padding:3rem 1rem;border:1px dashed #ced9d2;border-radius:20px;background:#fff;text-align:center}.empty-search>span{color:var(--green);font-size:2rem}.empty-search h2{margin:.4rem 0}.empty-search p{margin:0 0 1rem;color:var(--muted)}.text-action{border:0;background:none;color:var(--green-dark);font-weight:800;text-decoration:underline;text-underline-offset:3px}.page-crumbs{display:flex;align-items:center;gap:.65rem;margin:0 0 1.2rem;color:#65736f;font-size:.84rem}.back-link{display:inline-flex;align-items:center;gap:.45rem;min-height:40px;padding:.5rem .7rem .5rem .1rem;border:0;background:none;color:var(--green-dark);font-weight:800}.back-link:hover{color:#153f37}.back-link span{font-size:1.12rem}.activity-page{min-width:0}.activity-page-heading{margin:0 0 1rem}.page-eyebrow{color:#66736f;font-size:.68rem}.activity-page-heading h1{margin:.2rem 0 0;color:var(--ink);font-size:clamp(1.8rem,3.8vw,2.65rem);line-height:1.08;letter-spacing:-.04em}.activity-page .games-library{max-width:none}.activity-page .games-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.activity-page .library-card{min-height:224px;gap:.45rem;padding:1rem;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 2px 5px #20342e09;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.activity-page .library-card:hover{transform:translateY(-3px);border-color:#b9d2c9;box-shadow:0 8px 18px #223e3417}.activity-page .library-card:after{width:128px;height:100px;right:-34px;top:7px;background:#edf3ef}.activity-page .library-mark{min-height:76px;font-size:3.5rem}.activity-page .library-card strong{color:var(--ink);font-size:1.17rem}.activity-page .library-card small{color:var(--muted);font-size:.88rem}.activity-page .library-play{color:var(--green-dark)}.activity-page .games-back{min-height:40px;padding:.4rem .7rem;border:1px solid #cddbd4;border-radius:10px}.activity-page .library-card:focus-visible{outline:3px solid #d27a36;outline-offset:3px}.activity-page .games-library .library-intro{color:var(--muted);font-size:1rem}.activity-page .puzzle-lab,.activity-page .family-companion,.activity-page .create-lab,.activity-page .reading-lab{max-width:none}.family-return{margin:0 0 1rem;padding:1rem;border:1px solid #e2d5a9;border-radius:16px;background:#fff9e8}.family-return p{margin:0 0 .7rem}.family-return-actions{display:flex;flex-wrap:wrap;gap:.55rem}.family-return-actions button{min-height:42px;padding:.5rem .75rem;border:1px solid #dccb94;border-radius:10px;background:#fff;color:#614e22;font-weight:700}.panel{border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 3px 12px #1f322d09}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:2rem;padding:1rem clamp(1rem,4vw,3.5rem);border-top:1px solid var(--line);color:#6f7a83;font-size:.8rem}.site-footer>span{font-weight:600}.pwa-status p{margin:0;text-align:right}.choices{display:flex;flex-wrap:wrap;gap:.65rem}.choices button,.action{min-width:60px;min-height:48px;padding:.65rem .9rem;border:1px solid #b8d4c9;border-radius:12px;background:#edf6f0;color:#25594d;font-weight:800}.choices button:hover,.action:hover{background:#deeee5}.feedback{min-height:2rem;color:var(--green-dark);font-size:1.08rem;font-weight:800}.number-lab{max-width:860px}.number-step{color:var(--muted);font-weight:700}.number-dots{display:grid;grid-template-columns:repeat(4,30px);gap:10px;align-content:center;justify-content:center;min-height:80px;margin:1.5rem auto}.number-dots span{width:30px;height:30px;border-radius:50%;background:var(--coral)}.number-compare{display:flex;justify-content:center;align-items:center;gap:clamp(1.5rem,8vw,5rem);flex-wrap:wrap}.number-compare .number-dots{max-width:170px}.number-path{display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap;margin:2rem auto}.number-path span{display:grid;place-items:center;width:clamp(48px,12vw,68px);height:clamp(48px,12vw,68px);border:1px solid #b7d2c6;border-radius:14px;background:#edf6f0;font-size:1.5rem;font-weight:800}.number-path .number-gap{border-style:dashed;background:#fff5e4;color:#a44b32}.number-away{margin-bottom:0;color:var(--muted)}@media(min-width:1250px){.activity-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:900px){.catalog-tools{grid-template-columns:1fr;gap:.55rem}.category-filters{margin:0 -.15rem}.activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.welcome-hero{grid-template-columns:minmax(0,1.4fr) minmax(180px,.7fr)}.hero-art{transform:scale(.86)}}@media(max-width:600px){.site-header{height:62px;padding-inline:1rem}.brand{font-size:1.2rem}.brand-mark{width:1.8rem;height:1.8rem}.header-tagline{max-width:11rem;font-size:.74rem;text-align:right}.header-spark{display:none}main{padding:1rem .9rem 1.4rem}.welcome-hero{grid-template-columns:1fr;min-height:auto;padding:1.35rem;border-radius:22px}.welcome-hero h1{max-width:15ch;font-size:clamp(2.2rem,10vw,3rem)}.welcome-hero p{font-size:.98rem}.hero-art{position:absolute;right:-49px;bottom:-60px;width:210px;height:170px;opacity:.3;transform:scale(.8)}.hero-actions{position:relative;z-index:1}.hero-action{min-height:46px;padding:.62rem .8rem;font-size:.88rem}.activity-browser{margin-top:2rem}.browse-heading{align-items:flex-start;flex-direction:column;gap:.5rem}.browse-count{font-size:.72rem}.activity-search{min-height:48px}.category-filters{gap:.15rem}.category-filter{min-height:39px;padding-inline:.65rem;font-size:.78rem}.result-count{margin:.55rem 0 1rem}.activity-groups{gap:1.5rem}.group-icon{flex-basis:38px;width:38px;height:38px;border-radius:12px}.group-heading{gap:.65rem}.group-heading h2{font-size:1.08rem}.group-heading p{font-size:.81rem}.activity-grid{grid-template-columns:1fr;gap:.55rem}.activity-card{min-height:104px;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:.75rem;padding:.8rem;border-radius:15px}.activity-card-copy{gap:.2rem}.activity-card-copy strong{font-size:.97rem}.activity-card-copy small{font-size:.79rem}.activity-card-bottom{grid-column:3;grid-row:1;width:auto;height:100%;flex-direction:column;align-items:flex-end;justify-content:space-between;margin:0}.activity-state{font-size:.57rem;text-align:right}.activity-arrow{font-size:1.05rem}.page-crumbs,.activity-page-heading{margin-bottom:.75rem}.activity-page-heading h1{font-size:2rem}.panel{border-radius:16px}.activity-page .games-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.activity-page .library-card{min-height:205px}.site-footer{flex-direction:column;align-items:flex-start;padding:.9rem 1rem}}@media(max-width:360px){.header-tagline{max-width:8.5rem}.hero-actions{align-items:stretch;flex-direction:column;max-width:210px}.activity-card{grid-template-columns:38px 1fr auto;gap:.55rem;padding:.7rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
