/* PLAY CERIA 4.0 — joyful, consistent design system */
:root{--bg:#fffaf2;--surface:#fff;--surface-2:#f6f4ff;--text:#26324b;--muted:#6f7890;--line:#e8e7f1;--brand:#6655cf;--brand-strong:#5140b4;--brand-soft:#eeeaff;--coral:#ff817e;--yellow:#ffc95e;--blue:#70c6ee;--purple:#aa95ec;--shadow:0 18px 50px rgba(54,48,112,.11);--shadow-soft:0 8px 24px rgba(54,48,112,.07);--radius:28px;--focus:#f2a900}
:root[data-theme="dark"]{--bg:#151629;--surface:#22243b;--surface-2:#292b49;--text:#f7f5ff;--muted:#b9bad0;--line:#3a3b59;--brand:#b3a5ff;--brand-strong:#c8bfff;--brand-soft:#373256;--shadow:0 18px 50px rgba(0,0,0,.28);--shadow-soft:0 8px 24px rgba(0,0,0,.2)}
html{scroll-padding-top:100px}body{font-family:"Nunito","Avenir Next",ui-rounded,system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);font-size:16px;line-height:1.62}a,a:hover{text-decoration:none}button{touch-action:manipulation}.container{width:min(1220px,calc(100% - 48px))}.site-header{background:color-mix(in srgb,var(--bg) 94%,transparent);border-bottom:1px solid color-mix(in srgb,var(--line) 80%,transparent)}.header-inner{min-height:82px}.brand-mark-image{width:49px;height:49px;display:block;filter:drop-shadow(0 4px 7px #5545a52a)}.brand-copy strong{font-size:20px;font-weight:1000;letter-spacing:-.045em}.brand-copy small{font-size:10px;letter-spacing:.1em}.primary-nav{gap:20px}.primary-nav>a{font-size:14px;font-weight:850;padding:10px 2px}.primary-nav>a.active{color:var(--brand);position:relative}.primary-nav>a.active:after{content:"";position:absolute;left:0;right:0;bottom:2px;height:3px;border-radius:3px;background:var(--coral)}.nav-actions{gap:9px}.language-select,.filter-select{min-height:44px;border:1.5px solid var(--line);border-radius:14px;font-size:13px;padding:9px 13px}.button{min-height:46px;border-radius:16px;font-weight:950;font-size:14px;box-shadow:none}.button-primary{background:linear-gradient(135deg,#705ee0,#5949c3);box-shadow:0 5px 0 #493ca9,0 10px 22px #6655cf2b;color:white}.button-primary:hover{background:linear-gradient(135deg,#7b69e8,#5c4bc6);color:white;transform:translateY(-1px)}.button-light{background:#fff;color:#4b438e;border:1.5px solid #e7e2ff;box-shadow:0 4px 0 #e1dcf9}.button-outline{border:1.5px solid var(--brand);color:var(--brand);background:var(--surface);box-shadow:0 4px 0 color-mix(in srgb,var(--brand) 14%,transparent)}.button-large{min-height:56px;padding:16px 24px;border-radius:18px;font-size:16px}.button-small{min-height:38px;padding:9px 13px}.icon-button{border-radius:14px;width:42px;height:42px}
/* Homepage hero */
.hero-section{position:relative;isolation:isolate;overflow:hidden;border:0;background:radial-gradient(circle at 78% 20%,#fff1b8 0 9%,transparent 27%),radial-gradient(circle at 5% 85%,#dff5f2 0 10%,transparent 28%),linear-gradient(120deg,#fff0d8 0%,#f0eaff 52%,#e4f6ff 100%)}.hero-section:before,.hero-section:after{content:"";position:absolute;z-index:-1;border-radius:50%;pointer-events:none}.hero-section:before{width:440px;height:440px;right:-150px;top:-230px;background:#ffc6c355}.hero-section:after{width:260px;height:260px;left:36%;bottom:-195px;background:#9be1cf55}.hero-grid{min-height:585px;padding-block:60px 68px;grid-template-columns:1.02fr .98fr;gap:28px}.hero-copy{position:relative;z-index:2}.hero-eyebrow{padding:9px 14px;border-radius:99px;background:#fff;border:1px solid #ffffff;box-shadow:0 4px 15px #594a9910;color:#6250c3;font-size:11px;letter-spacing:.11em}.hero-copy h1{max-width:680px;margin:21px 0 20px;font-size:clamp(44px,5.8vw,76px);line-height:.99;letter-spacing:-.065em;font-weight:1000;color:#27304c}.hero-description{font-size:clamp(17px,1.55vw,20px);line-height:1.7;color:#5e6680;max-width:590px}.hero-actions{margin-top:30px;gap:14px}.trust-points{margin-top:28px;gap:10px}.trust-points span{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;background:#ffffffb8;color:#59647b;font-size:12px}.trust-points b{color:#21a67d}.hero-visual{position:relative;display:grid;place-items:center;min-width:0}.hero-visual img{display:block;width:min(100%,660px);height:auto;max-height:490px;object-fit:contain;filter:drop-shadow(0 18px 22px #483c851c)}.hero-sparkle{position:absolute;color:#ffb64c;font-size:44px;z-index:1}.hero-sparkle-one{right:6%;top:13%}.hero-sparkle-two{left:49%;bottom:13%;color:#9a83e9}
/* Reassuring section rhythm and headings */
.section{padding-block:76px}.section-heading{margin-bottom:30px}.section-heading-centered{text-align:center;margin-inline:auto;max-width:800px}.section-heading-centered>p{margin-inline:auto;max-width:690px}.section-heading h2{font-size:clamp(29px,3.2vw,42px);font-weight:1000;letter-spacing:-.05em;line-height:1.12;color:var(--text)}.section-heading p{font-size:16px;line-height:1.7;color:var(--muted)}.eyebrow{font-size:11px;letter-spacing:.1em;font-weight:1000}.eyebrow-icon{font-size:17px}.age-pathways{padding-top:65px;padding-bottom:65px;background:var(--bg)}.age-track-grid{gap:20px;margin-top:31px}.age-track-card{min-height:190px;padding:22px;grid-template-columns:128px 1fr;gap:17px;border:0;border-radius:27px;box-shadow:0 7px 0 #30325c14,0 16px 34px #30325c0d;transition:box-shadow .2s,border-color .2s;outline-offset:4px}.age-track-card:hover,.age-track-card:focus-visible{transform:none;box-shadow:0 8px 0 #30325c19,0 21px 38px #30325c18;outline:3px solid #fff}.age-track-little{background:linear-gradient(135deg,#ffe7ab,#ffc6c8)}.age-track-primary{background:linear-gradient(135deg,#c9f0ff,#d7ccff)}.age-track-teen{background:linear-gradient(135deg,#d9d1ff,#b8eddf)}.age-track-art{width:124px;min-height:132px;padding:5px;border-radius:23px;background:#ffffffa6;overflow:hidden}.age-track-art img{width:100%;height:100%;max-height:130px;object-fit:contain;display:block}.age-track-copy{gap:8px}.age-track-age{display:inline-flex;align-items:center;justify-self:start;padding:5px 10px;border-radius:99px;background:#ffffffb9;color:#435072;font-size:10px;letter-spacing:.09em;font-weight:1000}.age-track-copy strong{font-size:clamp(19px,1.8vw,24px);font-weight:1000;color:#27324c}.age-track-copy small{font-size:14px;line-height:1.5;color:#495773}.age-track-link{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:1000;color:#5242b1;margin-top:3px}.age-track-link span{width:23px;height:23px;display:grid;place-items:center;border-radius:50%;background:#fff9;font-size:14px}
/* Four-step learning journey */
.learning-journey-section{padding-block:72px;background:linear-gradient(180deg,#f7f4ff 0%,#fffaf4 100%)}.journey-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch;margin-top:36px}.journey-step{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-height:230px;padding:23px 22px 25px;border:1.5px solid #ffffff;border-radius:24px;box-shadow:0 8px 0 #3e38600c,0 13px 28px #51458a0d;overflow:hidden}.journey-step:after{content:"";position:absolute;width:128px;height:128px;right:-50px;bottom:-58px;border-radius:50%;background:#ffffff58}.journey-step-explore{background:linear-gradient(145deg,#fff1bd,#ffe0c9)}.journey-step-discover{background:linear-gradient(145deg,#dff5ff,#e2e0ff)}.journey-step-create{background:linear-gradient(145deg,#e1f7e8,#d1f0f5)}.journey-step-play{background:linear-gradient(145deg,#f0e4ff,#ffddea)}.journey-step-number{font-size:11px;font-weight:1000;letter-spacing:.1em;color:#6d6493}.journey-step-art{width:64px;height:64px;margin:13px 0 14px;display:grid;place-items:center;border-radius:21px;background:#ffffffb5;box-shadow:0 5px 12px #453d6510;font-size:34px}.journey-step h3{position:relative;z-index:1;font-size:20px;font-weight:1000;margin:0 0 7px;color:#2f3653}.journey-step p{position:relative;z-index:1;font-size:14px;line-height:1.55;color:#626c82;margin:0}.journey-connector{display:none}
/* Special learning spaces */
.special-spaces-section{background:#fffaf2}.special-spaces-heading{align-items:center}.special-spaces-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.special-space-card{position:relative;display:grid;grid-template-columns:116px 1fr;align-items:center;gap:16px;min-height:170px;padding:19px;border:1.5px solid #fff;border-radius:26px;color:#2e3852;box-shadow:0 7px 0 #34334e0b,0 14px 26px #34334e0c;transition:box-shadow .18s}.special-space-card:hover,.special-space-card:focus-visible{color:#2e3852;text-decoration:none;transform:none;box-shadow:0 8px 0 #34334e12,0 18px 32px #34334e16;outline:3px solid #fff}.special-space-maths{background:linear-gradient(135deg,#fff0bd,#ffe0cb)}.special-space-stories{background:linear-gradient(135deg,#e1f3ff,#e9e1ff)}.special-space-creative{background:linear-gradient(135deg,#dff5e7,#d3f1f2)}.special-space-illustration{position:relative;display:grid;place-items:center;height:116px;border-radius:24px;background:#ffffffa8;font-size:50px}.special-space-illustration i,.special-space-illustration b{position:absolute;display:grid;place-items:center;width:33px;height:33px;border-radius:50%;background:#fff;box-shadow:0 4px 8px #242c4a18;font-style:normal;font-size:18px}.special-space-illustration i{right:5px;top:7px;color:#eb8b39}.special-space-illustration b{left:5px;bottom:7px;color:#7460d6}.special-space-copy{display:grid;gap:6px;min-width:0}.special-space-copy strong{font-size:19px;line-height:1.2;font-weight:1000}.special-space-copy small{font-size:13px;line-height:1.5;color:#626b80}.special-space-copy em{font-style:normal;font-size:13px;font-weight:1000;color:#5848bd;margin-top:4px}
/* Activity shelves and discoverable cards */
.learning-section{background:linear-gradient(180deg,#fffaf2,#fff4eb)}.games-section{background:linear-gradient(180deg,#f2f0ff,#f8f6ff)}.activity-section-heading{align-items:center;margin-bottom:28px}.activity-section-heading h2{margin:9px 0}.activity-section-heading>div>p{max-width:640px}.section-step-dot{display:inline-grid;place-items:center;width:28px;height:28px;margin-right:7px;border-radius:50%;background:#fff;color:#5b4ac3;box-shadow:0 3px 8px #3c357018;font-size:12px;letter-spacing:0}.section-step-dot-play{background:#fff0d4;color:#c06b26}.button-view-all{white-space:nowrap;min-height:48px;padding:12px 18px}.games-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}.game-card.game-card-link{min-width:0;overflow:hidden;border:1.5px solid #e9e7f3;border-radius:25px;background:var(--surface);color:var(--text);box-shadow:0 6px 0 #403b6210,0 13px 28px #403b620c;transition:box-shadow .18s,border-color .18s;transform:none;text-decoration:none}.game-card-link:hover,.game-card-link:focus-visible{color:var(--text);text-decoration:none;transform:none;border-color:#d8d1ff;box-shadow:0 7px 0 #403b6216,0 18px 33px #403b6219}.game-card-link:focus-visible{outline:4px solid #ffd06d;outline-offset:4px}.game-card-link .game-art{height:210px;flex:0 0 210px;display:grid;place-items:center;isolation:isolate}.game-art-blue{background:linear-gradient(145deg,#bfeeff,#d8d0ff)}.game-art-purple{background:linear-gradient(145deg,#e6d6ff,#c8e6ff)}.game-art-coral{background:linear-gradient(145deg,#ffd6bf,#ffc0d1)}.game-art-green{background:linear-gradient(145deg,#d2f4d5,#bdece4)}.game-art-orange{background:linear-gradient(145deg,#ffe3a5,#ffc79b)}.game-art-pink{background:linear-gradient(145deg,#ffd9ec,#e5d4ff)}.game-art-teal{background:linear-gradient(145deg,#c4f1ed,#c8e8ff)}.game-art-orbit{position:absolute;width:180px;height:180px;border:2px dashed #ffffff91;border-radius:50%;transform:rotate(-22deg)}.game-art-orbit:before,.game-art-orbit:after{content:"";position:absolute;border-radius:50%;background:#ffffff55}.game-art-orbit:before{width:34px;height:34px;right:-13px;top:25px}.game-art-orbit:after{width:19px;height:19px;left:3px;bottom:27px}.game-card-link .game-art-icon{position:relative;z-index:1;display:grid;place-items:center;width:128px;height:128px;border:5px solid #ffffffb8;border-radius:38px;background:#ffffff9c;font-size:79px;line-height:1;filter:drop-shadow(0 8px 4px #4f47751c);box-shadow:0 8px 20px #4c43791a}.game-age-badge,.game-stage-badge{z-index:2;border:1px solid #ffffffa8;background:#ffffffdc;color:#45506c;border-radius:999px;font-size:10px;font-weight:1000;letter-spacing:.03em;box-shadow:0 3px 9px #31304e12}.game-age-badge{left:13px;top:13px;padding:7px 10px}.game-stage-badge{right:13px;top:auto;height:auto;min-height:0;max-height:none;width:auto;max-width:58%;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;line-height:1.1;bottom:13px;padding:7px 11px}.game-card-link .game-card-body{padding:19px 20px 20px;display:flex;flex-direction:column;flex:1;gap:0}.game-card-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#8188a0;font-size:10px;font-weight:1000;letter-spacing:.055em}.game-category-label{padding:5px 9px;border-radius:99px;background:#f1efff;color:#6758be}.game-duration-label{white-space:nowrap}.game-card-link h3{margin:12px 0 8px;color:#2a3450;font-size:21px;line-height:1.2;letter-spacing:-.035em;font-weight:1000}.game-card-link p{margin:0 0 17px;min-height:65px;color:#69738b;font-size:14px;line-height:1.55}.card-cta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;min-height:47px;padding:8px 10px 8px 15px;border-radius:14px;background:#f0edff;color:#5848b8;font-size:14px;font-weight:1000}.card-cta-arrow{display:grid;place-items:center;width:29px;height:29px;border-radius:10px;background:#6655cf;color:#fff;font-size:18px}.game-card-link:hover .card-cta{background:#e9e4ff;color:#4838a7}.game-card-link:hover .card-cta-arrow{background:#5140b4}.pagination{gap:12px;margin-top:30px}.pagination-button{border:1.5px solid var(--line);border-radius:15px;background:var(--surface);box-shadow:0 4px 0 #2927510d;font-weight:950}.pagination-button:not(:disabled):hover{background:#eeeaff;border-color:#cfc6ff}.pagination-info{font-size:13px;font-weight:900;color:var(--muted)}
/* All activities library */
.all-games-hero,.page-hero{background:radial-gradient(circle at 90% 10%,#ffe7a5 0 10%,transparent 28%),linear-gradient(120deg,#eeeaff,#e8f7ff 62%,#fff0df);padding-block:64px}.all-games-hero h1,.page-hero h1{font-size:clamp(38px,5vw,60px);letter-spacing:-.06em;line-height:1.05;font-weight:1000;color:#2b3452}.all-games-hero p,.page-hero p{font-size:18px;line-height:1.7;color:#606b83;max-width:760px}.all-games-main{background:var(--bg)}.all-games-filter-panel{display:grid;grid-template-columns:minmax(220px,1.6fr) repeat(3,minmax(145px,1fr)) auto;gap:12px;align-items:end;margin:28px 0 20px;padding:20px;border:1.5px solid #ece9f8;border-radius:24px;background:#fff;box-shadow:0 8px 24px #4b458b0d}.filter-field{display:grid;gap:7px;color:#4c5570;font-size:12px;font-weight:950}.search-box{min-height:50px;border:1.5px solid #e5e3f0;border-radius:15px;background:#fafaff;padding-inline:14px}.search-box input{font-size:15px}.filter-select{width:100%;min-height:50px;background:#fafaff;font-size:14px}.button-clear-filters{min-height:50px;background:#fff1ed;color:#ba5e51;border:1px solid #ffddd4;border-radius:14px;padding:11px 15px;white-space:nowrap}.library-results-row{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:16px 2px 20px;color:var(--muted)}.library-results-row p{margin:0;color:var(--text);font-weight:1000;font-size:15px}.library-results-row span{font-size:12px}.all-games-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.empty-state{padding:42px;border-radius:24px;background:#fff;border:1px dashed #d9d4ee;font-size:17px;font-weight:850}
/* Learning cards, single source of truth, no duplicated labels */
.topic-section-heading{max-width:780px;margin:0 auto 22px;text-align:center}.topic-section-heading .game-round-meta{display:inline-flex;padding:8px 14px;border-radius:99px;background:#eeeaff;color:#5949b4;font-size:11px;font-weight:1000;letter-spacing:.08em}.topic-helper{font-size:15px;line-height:1.6;color:var(--muted)}.topic-selected-card{width:min(100%,780px);min-height:175px;padding:25px 30px;margin:16px auto 24px;border:1.5px solid #e5e1fa;border-radius:26px;background:linear-gradient(120deg,#f4f0ff,#eff9ff);display:grid;grid-template-columns:140px 1fr;justify-items:stretch;align-items:center;text-align:left;gap:20px;box-shadow:0 7px 0 #413b6a0b}.topic-selected-visual{display:grid;place-items:center;min-height:125px;border-radius:23px;background:#ffffffbd;font-size:clamp(56px,7vw,80px);font-weight:1000;color:#5143ae}.topic-selected-copy{display:flex;flex-direction:column;align-items:flex-start;gap:7px}.topic-selected-title{font-size:clamp(25px,3vw,32px);font-weight:1000;color:#293452;margin:0}.topic-selected-subtitle{font-size:13px;font-weight:900;color:#776bb3;margin:0}.topic-selected-detail{font-size:15px;line-height:1.6;color:#626e87;margin:0}.topic-listen-button{min-height:42px;padding:9px 15px;border:0;border-radius:13px;background:#6655cf;color:white;font-size:13px;font-weight:1000;box-shadow:0 4px 0 #4c3da9}.topic-flashcard-grid{width:100%;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin:18px auto 24px}.topic-card-shell{display:grid;grid-template-rows:1fr auto;min-width:0;gap:9px}.topic-flashcard{width:100%;min-height:165px;padding:16px 12px;border:1.5px solid #e9e7f2;border-radius:24px;background:#fff;box-shadow:0 6px 0 #3f3a6610,0 12px 24px #3f3a660b;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;color:#2b3652;cursor:pointer;transition:border-color .15s,box-shadow .15s}.topic-flashcard:hover,.topic-flashcard.is-selected{border-color:#c9c0ff;background:#fbfaff;transform:none;box-shadow:0 7px 0 #6251c51b,0 15px 27px #6251c514}.topic-flashcard:focus-visible{outline:4px solid #ffd16e;outline-offset:3px}.topic-flashcard-icon{display:grid;place-items:center;width:88px;height:88px;border:4px solid #fff;border-radius:26px;background:linear-gradient(145deg,#fff1c7,#e4e1ff);box-shadow:0 5px 14px #4b456415;font-size:50px;line-height:1}.topic-flashcard-label{font-size:17px;font-weight:1000;color:#35405d;text-align:center}.topic-flashcard-text{min-height:165px;gap:8px}.topic-flashcard-number{font-size:clamp(54px,7vw,74px);font-weight:1000;line-height:1;color:#5948bc}.topic-flashcard-text .topic-flashcard-label{display:none}.topic-flashcard-swatch{width:74px;height:74px;border:5px solid #fff;border-radius:24px;box-shadow:0 5px 14px #3a385522}.topic-learn-chip{justify-self:center;min-height:36px;min-width:94px;padding:7px 15px;border:1.5px solid #ddd8f7;border-radius:99px;background:#f4f1ff;color:#5849b4;font-size:12px;font-weight:1000;cursor:pointer}.topic-learn-chip:hover{background:#e9e4ff;border-color:#bfb5f2}.topic-learn-dialog{width:min(92vw,540px);max-width:540px;border:0;border-radius:28px;padding:0;background:#fff;color:#293451;box-shadow:0 25px 90px #1f1b4c4d}.topic-learn-dialog::backdrop{background:#17172a8a;backdrop-filter:blur(4px)}.topic-learn-dialog-inner{position:relative;padding:30px;display:grid;justify-items:center;text-align:center;gap:12px}.topic-dialog-close{position:absolute;right:15px;top:15px;width:42px;height:42px;border:0;border-radius:14px;background:#f1effb;color:#4e467b;font-size:23px;cursor:pointer}.topic-dialog-art{display:grid;place-items:center;width:118px;height:118px;border-radius:32px;background:linear-gradient(145deg,#fff0c8,#e4e0ff);font-size:70px}.topic-dialog-kicker{margin:8px 0 0;color:#7768be;font-size:11px;font-weight:1000;letter-spacing:.12em;text-transform:uppercase}.topic-dialog-title{margin:0;color:#293451;font-size:29px;font-weight:1000}.topic-dialog-fact{margin:0;color:#647089;font-size:16px;line-height:1.7}.topic-dialog-listen{min-height:47px;padding:11px 19px;border:0;border-radius:15px;background:#6655cf;color:white;font-size:14px;font-weight:1000;box-shadow:0 4px 0 #4a3ba6;cursor:pointer}.topic-lesson-footer{max-width:780px;margin:24px auto 0;padding:20px 24px;border:1.5px solid #e7e4f4;border-radius:24px;background:linear-gradient(120deg,#fff5d8,#f0edff);gap:16px}.topic-lesson-footer .topic-helper{font-size:14px}
/* Readable story sequencing */
.story-sequence-board{width:min(100%,920px);margin:15px auto 25px;padding:25px;border:1.5px solid #e5e1f7;border-radius:28px;background:linear-gradient(145deg,#fff6df,#f0edff);box-shadow:0 8px 0 #403a660d}.story-sequence-heading{font-size:clamp(25px,3vw,34px);font-weight:1000;color:#2e3958;margin:0 0 8px}.story-sequence-intro{font-size:15px;line-height:1.65;color:#647089;margin:0 0 19px}.story-sequence-scenes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.story-sequence-scene{display:grid;align-content:start;gap:10px;padding:15px;border:1px solid #fff;border-radius:19px;background:#ffffffc9;box-shadow:0 4px 12px #35345d0b}.story-sequence-scene-visual{display:grid;place-items:center;min-height:88px;border-radius:16px;background:linear-gradient(140deg,#e2f5ff,#fff0c8);font-size:48px}.story-sequence-scene strong{font-size:15px;line-height:1.3;color:#303b59}.story-sequence-scene p{font-size:13px;line-height:1.55;color:#68728a;margin:0}.story-sequence-scene button{justify-self:start;min-height:35px;padding:6px 11px;border:0;border-radius:11px;background:#eeeaff;color:#5849b8;font-size:12px;font-weight:1000;cursor:pointer}.story-sequence-actions{display:flex;justify-content:center;margin-top:19px}.story-sequence-actions button{min-height:48px;padding:11px 20px;border:0;border-radius:15px;background:#6655cf;color:white;font-size:14px;font-weight:1000;box-shadow:0 4px 0 #493aa5;cursor:pointer}
/* Game shell, question cards and controls */
.game-breadcrumb{padding-top:18px;font-size:13px;color:var(--muted)}.game-breadcrumb a{color:#5c50b6;font-weight:900}.game-intro{align-items:center;padding-block:22px 28px}.game-intro-copy h1{font-size:clamp(32px,4.5vw,51px);font-weight:1000;letter-spacing:-.055em;color:var(--text);line-height:1.05}.game-intro-copy>p{font-size:16px;line-height:1.65;color:var(--muted)}.game-intro-emoji{width:126px;height:126px;display:grid;place-items:center;border:5px solid #fff;border-radius:34px;background:linear-gradient(145deg,#fff0c5,#dcd7ff);font-size:68px;box-shadow:0 8px 0 #3b37600e,0 18px 30px #3b376011}.game-facts span{padding:12px 14px;border-radius:16px;background:var(--surface);border:1px solid var(--line)}.game-facts small{font-size:10px;color:var(--muted);font-weight:900}.game-facts b{font-size:13px;line-height:1.35}.paired-activity-banner{border:1.5px solid #e7e3fa;border-radius:20px;background:linear-gradient(120deg,#f1edff,#eaf7ff);padding:14px 18px}.game-shell{border:1.5px solid #e3e0f0;border-radius:28px;background:#fff;box-shadow:0 9px 0 #34305012,0 20px 50px #3430500c;overflow:hidden}.game-shell-header{min-height:62px;background:#f8f6ff;border-bottom:1px solid #eeebf7;padding:10px 18px}.game-shell-header strong{font-weight:1000;color:#35405e}.game-live-dot{background:#57c99c}.game-sound-toggle{min-height:42px;padding:8px 13px;border:1.5px solid #dfdaf7;border-radius:13px;background:#fff;color:#5948b5;font-size:13px;font-weight:950}.game-stage{padding:clamp(22px,4vw,42px);min-height:390px;background:radial-gradient(circle at 95% 4%,#fff0c3 0 7%,transparent 20%),linear-gradient(180deg,#fff,#fcfbff)}.game-prompt{font-size:clamp(25px,3.6vw,38px);font-weight:1000;line-height:1.25;color:#2e3955}.game-visual{font-size:clamp(50px,7vw,76px)}.game-choices{gap:15px}.choice-button{min-height:104px;border:2px solid #e9e7f3;border-radius:21px;background:#fff;box-shadow:0 5px 0 #403a600d;color:#303b59}.choice-button:hover{border-color:#cfc7ff;background:#faf9ff;transform:none}.choice-button .choice-label{font-weight:1000}.choice-button.choice-number{min-height:125px}.game-shell-footer{padding:13px 18px;background:#f9f8ff}.exit-game-link{color:#5949b9;font-weight:950}.game-after-note{border-radius:20px;background:#fff2ca;padding:14px 18px;margin-top:16px}.game-details-grid{margin-block:25px 55px}.info-panel{border:1.5px solid var(--line);border-radius:22px;background:var(--surface);padding:22px}.info-panel h2{font-weight:1000}
/* Responsive layouts */
@media(max-width:1050px){.special-spaces-grid{grid-template-columns:1fr 1fr}.special-space-card:last-child{grid-column:1/-1}.all-games-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.all-games-filter-panel .search-box{grid-column:1/-1}.games-grid,.all-games-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.hero-grid{min-height:auto;grid-template-columns:1fr;padding-block:46px 36px;gap:8px}.hero-copy h1{font-size:clamp(42px,8vw,62px)}.hero-visual img{max-height:360px;width:min(100%,500px)}.age-track-grid{grid-template-columns:1fr}.age-track-card{grid-template-columns:122px 1fr;min-height:160px}.journey-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.journey-step{min-height:205px}.special-spaces-grid{grid-template-columns:1fr}.special-space-card:last-child{grid-column:auto}.section-heading-row{align-items:flex-start}.topic-selected-card{grid-template-columns:110px 1fr}.story-sequence-scenes{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.container{width:min(100% - 30px,560px)}.header-inner{min-height:68px}.brand-mark-image{width:43px;height:43px}.primary-nav{top:64px;left:12px;right:12px;border:1px solid var(--line);border-radius:20px;padding:16px;background:var(--surface)}.primary-nav>a{font-size:15px}.section{padding-block:53px}.hero-grid{padding-block:37px 25px}.hero-copy h1{font-size:45px;line-height:1.02}.hero-description{font-size:16px}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hero-actions .button{min-height:52px;padding:12px 14px;font-size:14px}.trust-points{gap:7px;margin-top:18px}.trust-points span{font-size:10px;padding:7px 9px}.hero-visual img{max-height:290px}.age-pathways{padding-block:48px}.age-track-card{grid-template-columns:88px 1fr;min-height:140px;padding:14px;gap:12px;border-radius:22px}.age-track-art{width:86px;min-height:95px}.age-track-art img{max-height:94px}.age-track-copy strong{font-size:18px}.age-track-copy small{font-size:12px}.age-track-link{font-size:12px}.journey-steps{gap:10px}.journey-step{min-height:190px;padding:15px;border-radius:19px}.journey-step-art{width:51px;height:51px;font-size:28px;margin:10px 0}.journey-step h3{font-size:16px}.journey-step p{font-size:12px}.special-space-card{grid-template-columns:84px 1fr;min-height:130px;padding:14px;border-radius:20px}.special-space-illustration{height:84px;font-size:38px}.special-space-copy strong{font-size:17px}.special-space-copy small{font-size:12px}.activity-section-heading{display:grid;grid-template-columns:1fr;gap:14px}.button-view-all{justify-self:start}.games-grid,.all-games-grid{grid-template-columns:1fr 1fr;gap:12px}.game-card-link .game-art{height:145px;flex-basis:145px}.game-card-link .game-art-icon{width:82px;height:82px;border-radius:25px;font-size:50px}.game-card-link .game-card-body{padding:12px}.game-card-meta{font-size:8px;gap:5px}.game-category-label{padding:4px 6px}.game-card-link h3{font-size:15px;margin:9px 0 6px}.game-card-link p{font-size:12px;line-height:1.45;min-height:67px}.card-cta{min-height:39px;padding:6px 7px 6px 10px;font-size:11px;border-radius:12px}.card-cta-arrow{width:25px;height:25px}.game-age-badge,.game-stage-badge{font-size:8px;padding:5px 7px;line-height:1.1}.game-stage-badge{top:auto;bottom:10px;height:auto;max-height:none;width:auto;max-width:58%;white-space:nowrap}.all-games-hero,.page-hero{padding-block:42px}.all-games-hero h1,.page-hero h1{font-size:39px}.all-games-hero p,.page-hero p{font-size:15px}.all-games-filter-panel{grid-template-columns:1fr 1fr;padding:13px;gap:9px;border-radius:20px}.all-games-filter-panel .search-box{grid-column:1/-1}.filter-field{font-size:11px}.filter-select,.search-box{min-height:47px;font-size:13px}.button-clear-filters{grid-column:1/-1;min-height:44px}.library-results-row{align-items:flex-start;flex-direction:column;gap:4px}.library-results-row span{font-size:11px}.pagination{gap:6px;flex-wrap:wrap}.pagination-button{min-width:43px;min-height:43px;padding:7px 10px;font-size:12px}.pagination-info{font-size:11px}.game-intro{padding-block:15px 18px}.game-intro-emoji{width:76px;height:76px;border-radius:23px;font-size:42px}.game-intro-copy h1{font-size:32px}.game-intro-copy>p{font-size:14px}.game-facts{gap:7px}.game-facts span{padding:8px 10px}.game-shell{border-radius:21px}.game-shell-header{padding:9px 11px}.game-shell-header strong{font-size:12px}.game-shell-age{display:none}.game-sound-toggle{min-height:37px;padding:6px 9px;font-size:11px}.game-stage{padding:19px 13px;min-height:340px}.game-prompt{font-size:23px}.choice-button{min-height:78px;padding:9px;border-radius:16px}.choice-button .choice-label{font-size:19px}.choice-text-large .choice-label{font-size:clamp(28px,6vw,38px)}.choice-button.choice-number{min-height:95px}.topic-selected-card{grid-template-columns:1fr;text-align:center;justify-items:center;padding:18px}.topic-selected-visual{min-height:95px;width:100%;font-size:60px}.topic-selected-copy{align-items:center}.topic-selected-detail{font-size:14px}.topic-flashcard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.topic-flashcard{min-height:130px;border-radius:19px}.topic-flashcard-icon{width:70px;height:70px;border-radius:20px;font-size:40px}.topic-flashcard-label{font-size:14px}.topic-flashcard-text{min-height:130px}.topic-flashcard-number{font-size:57px}.topic-learn-dialog-inner{padding:25px 20px}.topic-dialog-art{width:92px;height:92px;font-size:55px}.topic-dialog-title{font-size:24px}.topic-dialog-fact{font-size:14px}.topic-lesson-footer{padding:15px}.story-sequence-board{padding:15px}.story-sequence-scenes{grid-template-columns:1fr 1fr;gap:8px}.story-sequence-scene{padding:10px;gap:7px}.story-sequence-scene-visual{min-height:70px;font-size:36px}.story-sequence-scene strong{font-size:13px}.story-sequence-scene p{font-size:11px}.story-sequence-scene button{font-size:11px}.game-shell-footer{align-items:flex-start;gap:8px;flex-direction:column}}
@media(max-width:390px){.games-grid,.all-games-grid{grid-template-columns:1fr}.game-card-link .game-art{height:170px;flex-basis:170px}.game-card-link .game-art-icon{width:96px;height:96px;font-size:59px}.game-card-link h3{font-size:18px}.game-card-link p{min-height:0;font-size:13px}.card-cta{font-size:13px}.journey-step{min-height:174px}.hero-copy h1{font-size:40px}.hero-actions{grid-template-columns:1fr}.all-games-filter-panel{grid-template-columns:1fr}.all-games-filter-panel .search-box{grid-column:auto}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* All-games directory component names used by the PHP template */
.all-games-hero-inner{width:min(1220px,calc(100% - 48px));margin-inline:auto;display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:28px}.all-games-hero-inner>div:first-child{min-width:0}.breadcrumb-light{display:flex;gap:9px;align-items:center;margin-bottom:17px;color:#7b8197;font-size:12px}.breadcrumb-light a{color:#5b4cba;font-weight:900}.all-games-hero-pills{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.all-games-hero-pills span{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border:1px solid #ffffffb8;border-radius:99px;background:#ffffffa8;color:#4c5570;font-size:12px;font-weight:950}.all-games-hero-art{position:relative;min-height:245px;display:grid;place-items:center;isolation:isolate}.directory-stack{position:absolute;display:grid;place-items:center;width:142px;height:142px;border:8px solid #fff;border-radius:37px;box-shadow:0 12px 28px #403a701e;font-size:76px}.directory-stack-back{left:18%;top:21%;background:linear-gradient(145deg,#ffe29e,#ffb7c0);transform:rotate(-13deg)}.directory-stack-front{right:18%;bottom:12%;background:linear-gradient(145deg,#caeaff,#d8caff);transform:rotate(11deg)}.directory-orbit{position:absolute;z-index:-1;width:235px;height:190px;border:2px dashed #8b7ce477;border-radius:50%;transform:rotate(-20deg)}.directory-star{position:absolute;color:#f2ae40;font-size:39px}.directory-star-one{top:12%;right:18%}.directory-star-two{bottom:10%;left:15%;color:#8a76df}.library-heading{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:20px}.library-heading h2{font-size:clamp(28px,3vw,39px);font-weight:1000;letter-spacing:-.04em;margin:8px 0}.library-heading p{max-width:650px;color:var(--muted);font-size:15px;margin:0}.library-total{display:grid;place-items:center;min-width:94px;min-height:94px;padding:12px;border-radius:26px;background:linear-gradient(145deg,#ffe5a9,#ffd1d9);color:#3a4260;box-shadow:0 6px 0 #3a365018}.library-total strong{font-size:34px;font-weight:1000;line-height:1}.library-total small{font-size:11px;font-weight:950}.library-filter-panel{display:grid;grid-template-columns:minmax(230px,1.5fr) repeat(3,minmax(145px,1fr)) auto;align-items:end;gap:12px;margin:25px 0 20px;padding:20px;border:1.5px solid #e8e5f4;border-radius:24px;background:#fff;box-shadow:0 8px 25px #4b458b0e}.library-search{display:flex;align-items:center;gap:10px;min-height:51px;padding:0 14px;border:1.5px solid #e5e3f1;border-radius:15px;background:#fafaff;color:#766cb2}.library-search>span:first-child{font-size:24px;line-height:1}.library-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#303b59;font-size:15px}.library-search input::placeholder{color:#9298aa}.library-filter-panel .filter-field{display:grid;gap:7px;color:#4c5570;font-size:12px;font-weight:950}.library-filter-panel .filter-select{width:100%;min-height:51px;background:#fafaff;font-size:13px}.library-filter-panel .button-clear-filters{min-height:51px;white-space:nowrap}.all-games-library{padding-top:55px}.all-games-main .all-games-grid{margin-top:10px}
@media(max-width:1050px){.all-games-hero-inner{grid-template-columns:1fr .55fr}.library-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.library-search{grid-column:1/-1}.library-filter-panel .button-clear-filters{grid-column:1/-1}}
@media(max-width:700px){.all-games-hero-inner{width:min(100% - 30px,560px);grid-template-columns:1fr;gap:0}.all-games-hero-art{min-height:165px}.directory-stack{width:100px;height:100px;border-radius:28px;font-size:54px;border-width:6px}.directory-stack-back{left:25%;top:10%}.directory-stack-front{right:24%;bottom:7%}.directory-orbit{width:185px;height:140px}.all-games-hero-pills{gap:6px}.all-games-hero-pills span{font-size:10px;padding:7px 9px}.library-heading{align-items:flex-start}.library-total{min-width:76px;min-height:76px;border-radius:20px}.library-total strong{font-size:28px}.library-total small{font-size:9px}.library-filter-panel{grid-template-columns:1fr 1fr;padding:13px;gap:9px}.library-search{grid-column:1/-1;min-height:47px}.library-filter-panel .filter-field{font-size:11px}.library-filter-panel .filter-select{min-height:46px;font-size:12px}.library-filter-panel .button-clear-filters{grid-column:1/-1;min-height:44px}.all-games-library{padding-top:40px}}
@media(max-width:390px){.library-filter-panel{grid-template-columns:1fr}.library-search,.library-filter-panel .button-clear-filters{grid-column:auto}.library-heading{gap:10px}.library-total{min-width:66px;min-height:66px}}
/* Detail dialog actions: clear hierarchy and generous touch targets */
.topic-dialog-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:11px;margin-top:5px}
.topic-dialog-listen,.topic-dialog-read-fact{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:11px 18px;border:0;border-radius:15px;font-size:14px;font-weight:1000;cursor:pointer}
.topic-dialog-listen{background:#6655cf;color:#fff;box-shadow:0 4px 0 #4a3ba6}
.topic-dialog-read-fact{background:#fff0cf;color:#73511b;box-shadow:0 4px 0 #f0d9a9}
.topic-dialog-listen:focus-visible,.topic-dialog-read-fact:focus-visible,.topic-dialog-close:focus-visible,.topic-learn-chip:focus-visible{outline:4px solid #ffd16e;outline-offset:3px}
.game-card-link .game-art-icon,.age-track-art img,.hero-visual img{transition:none;transform:none}
@media(hover:hover){.game-card-link:hover .game-art-icon,.age-track-card:hover img,.hero-visual img:hover{transform:none}}
@media(max-width:700px){.topic-dialog-actions{width:100%;display:grid;grid-template-columns:1fr}.topic-dialog-listen,.topic-dialog-read-fact{width:100%}}
