@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800;900&display=swap');

:root{--ink:#293b32;--green:#617953;--cream:#f8f7f2;--line:#e4e7dd}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:16px 'DM Sans',sans-serif}header{height:100px;background:#fff;display:flex;align-items:center;padding:0 6%;gap:30px;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;font-size:14px;line-height:1.35;color:var(--ink);text-decoration:none}.brand b{font-size:21px}.logo{font-size:40px;color:var(--green)}nav{display:flex;gap:30px;margin-left:auto}a{color:inherit;text-underline-offset:5px}nav a{text-decoration:none;font-size:14px}.avatar{background:#ede4d6;border-radius:50%;padding:12px 17px;font-weight:700}button{font:inherit;cursor:pointer;border:0;border-radius:12px;padding:14px 22px;min-height:48px;background:var(--green);color:white;font-weight:600}button:hover{filter:brightness(.95)}button:focus-visible,a:focus-visible{outline:3px solid #cc8c39;outline-offset:4px}button.secondary,.parent{background:white;color:var(--ink);border:1px solid #d6ddcf}.parent{font-size:13px}main{max-width:1140px;margin:42px auto;padding:0 24px;min-height:70vh}h1,h2,h3,p{margin-top:0}h1{font:500 40px 'Literata',Georgia,serif;letter-spacing:-1px;margin-bottom:14px}h2{font-size:23px}h3{font-size:19px}p{line-height:1.7}.muted{color:#758075;font-size:14px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:700;color:#77846d}.welcome{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.welcome p{margin-bottom:0}.pill{background:#edf0e6;padding:9px 14px;border-radius:25px;font-size:12px}.hero{display:grid;grid-template-columns:1.4fr 1fr;background:#eaf0e1;border:1px solid #dde5d2;border-radius:24px;overflow:hidden;min-height:300px}.herotext{padding:36px 40px}.hero h2{font:500 34px 'Literata',Georgia,serif;max-width:400px;margin:15px 0}.hero p{color:#63715d;font-size:14px;max-width:400px}.scene{display:flex;align-items:center;justify-content:center;background:#e0e8d4;position:relative}.scene svg{width:90%;max-width:330px}.sectiontitle{display:flex;align-items:center;justify-content:space-between;margin:36px 0 20px}.sectiontitle h2{margin:0}.subjects{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}.subjects button{background:transparent;color:#758075;border:1px solid #dedfd7;font-size:13px;padding:10px 18px;min-height:40px}.subjects button.active{background:#617953;color:#fff;border-color:#617953}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.tile{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;text-align:left;color:var(--ink);min-height:180px;display:flex;flex-direction:column;align-items:flex-start;position:relative}.tile .icon{border-radius:13px;padding:10px;font-size:22px;background:#f5eddb;margin-bottom:20px}.tile h3{margin:0 0 8px}.tile p{font-size:12px;color:#7c8477;margin:0}.tile .arrow{position:absolute;right:20px;bottom:23px}.tile:nth-child(3n+2) .icon{background:#e9edf8}.tile:nth-child(3n) .icon{background:#f5e8e0}.note{background:#fff8e9;border:1px solid #eadfc7;padding:13px 18px;border-radius:12px;font-size:13px;line-height:1.6;margin:22px 0}.bottomnote{display:flex;align-items:center;gap:18px;padding:22px;background:#eef0e9;border-radius:16px;margin-top:24px}.bottomnote p{margin:0;font-size:14px}.back{background:transparent;color:var(--ink);padding-left:0;margin-bottom:20px}.activity{max-width:750px;margin:auto}.panel{background:#fff;border:1px solid var(--line);border-radius:22px;padding:36px;margin:22px 0}.panel p{font-size:19px}.controls{display:flex;gap:12px;flex-wrap:wrap;justify-content:space-between;margin-top:24px}.progressbar{height:7px;border-radius:9px;background:#e4e7dd;margin:20px 0}.progressbar span{display:block;height:100%;background:#81966f;border-radius:9px}.flash{min-height:240px;display:flex;align-items:center;justify-content:center;text-align:center;flex-direction:column}.flash h2{font:500 28px 'Literata',Georgia,serif}.answer{color:#526c42;border-top:1px solid var(--line);padding-top:20px;width:100%}.option{display:block;width:100%;text-align:left;margin:12px 0;background:#f0f2eb;color:var(--ink);border:1px solid var(--line)}.feedback{padding:18px;background:#edf2e6;border-radius:12px;margin-top:20px;line-height:1.6}textarea,input[type=text]{width:100%;font:inherit;padding:15px;border:1px solid #cad2c2;border-radius:10px;line-height:1.6}textarea{min-height:150px}label{display:block;margin-bottom:10px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.stats strong{font-size:32px;display:block;margin-bottom:10px}.timeline{display:flex;gap:12px;margin:25px 0;flex-wrap:wrap}.timeline div{flex:1;min-width:130px;border-top:3px solid #b8c6a7;padding-top:15px}.timeline b{display:block;font-size:24px;margin-bottom:10px}footer{max-width:1092px;margin:40px auto;padding:22px 0;border-top:1px solid var(--line);font-size:12px;color:#85907d}footer span{float:right}.empty{text-align:center;padding:60px}.small{font-size:13px}.list li{margin:16px 0;line-height:1.7}.printonly{display:none}@media(max-width:760px){header{padding:15px 20px;height:auto;gap:12px;flex-wrap:wrap}nav{order:3;width:100%;justify-content:center;padding-top:10px}.parent{margin-left:auto;padding:10px;font-size:11px}.avatar{display:none}main{margin-top:28px}.welcome{align-items:flex-start}.welcome .pill{display:none}h1{font-size:30px}.hero{grid-template-columns:1fr}.herotext{padding:28px}.hero h2{font-size:29px}.scene{height:190px}.scene svg{height:190px}.grid{grid-template-columns:1fr 1fr;gap:12px}.tile{padding:18px;min-height:170px}.tile h3{font-size:16px}.panel{padding:24px}.stats{grid-template-columns:1fr}.sectiontitle .muted{display:none}footer{margin:30px 24px}.controls button{flex:1}.panel p{font-size:17px}}@media print{header,footer,.noprint,.back{display:none!important}body{background:white;color:#111;font-family:Arial}main{margin:0;max-width:none;padding:0}.panel{border:0;padding:0;break-inside:avoid}.printonly{display:block}.timeline{break-inside:avoid}h1{font-size:26px}h2{font-size:20px}@page{size:A4;margin:17mm}}

.download{display:inline-block;background:#617953;color:white;border-radius:12px;padding:15px 22px;text-decoration:none;font-weight:600}
/* Milla's colourful time-travel clubhouse */

:root{--ink:#3e315d;--green:#7951c6;--cream:#fffaf2;--line:#e9def7}body{font-family:'Nunito','Trebuchet MS',sans-serif;background:#fffaf2;background-image:radial-gradient(#f0dfc2 1px,transparent 1px);background-size:22px 22px}header{border-bottom:3px solid #eee2fa;height:94px}.brand{font-weight:800}.brand b{font-size:23px;color:#7951c6}.logo{background:#f1e5ff;border-radius:18px;padding:0 10px;color:#a176dd}.avatar{background:#ffdf73;color:#73502c;box-shadow:0 3px 0 #e7bf4a}nav a{font-weight:800;font-size:15px}h1,h2,h3{font-family:'Nunito','Trebuchet MS',sans-serif;font-weight:900;letter-spacing:-.5px}h1{font-size:44px;color:#543782}.eyebrow{color:#77549d;font-weight:800;letter-spacing:1.2px}.muted{color:#726383}.welcome{margin-bottom:25px}.welcome p{font-size:17px}.pill{background:#fff0b5;color:#775328;font-weight:800;box-shadow:0 3px 0 #f0d675}.hero{background:#eee2ff;border:3px solid #ddc8fa;border-radius:30px;box-shadow:0 7px 0 #e8d9f6;grid-template-columns:1.1fr 1fr}.herotext{padding:32px 36px}.hero h2{font-family:'Nunito','Trebuchet MS',sans-serif;font-weight:900;font-size:39px;line-height:1.15;color:#593888;margin:15px 0}.hero p{color:#624b7a;font-size:16px;font-weight:600}.scene{background:#d9f1ff;padding:12px}.scene img{width:100%;height:100%;object-fit:contain;max-height:310px}.scene svg{display:none}button,.download{background:#8054ce;border-radius:16px;box-shadow:0 4px 0 #5f379f;border:2px solid transparent;font-weight:800;transition:transform .15s,box-shadow .15s;min-height:52px}button:hover{filter:none;transform:translateY(-3px);box-shadow:0 7px 0 #5f379f}button:active{transform:translateY(3px);box-shadow:0 1px 0 #5f379f}.parent{border:1px solid #e7ddf2;box-shadow:none;color:#775d8b;font-size:12px}.parent:hover{box-shadow:none}.secondary{background:#fff!important;color:#7951c6!important;border:2px solid #d9c5f5!important;box-shadow:0 4px 0 #e3d5f5!important}.sectiontitle h2{font-size:28px}.subjects button{box-shadow:none;background:white;font-weight:800;border:2px solid #e9dff4;color:#79638a}.subjects button.active{background:#f1e4ff;border-color:#b48cde;color:#7146a6}.grid{gap:21px}.tile{--tile:#efe3ff;--edge:#d4b7f2;--accent:#7951c6;background:var(--tile);border:2px solid var(--edge);border-bottom-width:6px;border-radius:24px;box-shadow:none;min-height:209px;padding:22px;overflow:hidden}.tile:nth-child(4n+2){--tile:#e1f4ff;--edge:#a9d9f2;--accent:#2879a9}.tile:nth-child(4n+3){--tile:#fff1c2;--edge:#efd485;--accent:#9a6817}.tile:nth-child(4n){--tile:#ffe5eb;--edge:#f1b5c6;--accent:#b7476d}.tile:nth-child(5){--tile:#e0f4e9;--edge:#a5d9be;--accent:#2f8060}.tile:nth-child(6){--tile:#ffead9;--edge:#eac19e;--accent:#a75e27}.tile:hover{box-shadow:0 6px 0 var(--edge);transform:translateY(-4px)}.tile .icon,.tile:nth-child(n) .icon{background:#ffffffa6;border:2px solid #ffffff;border-radius:19px;font-size:32px;width:66px;height:64px;display:flex;align-items:center;justify-content:center;padding:6px;margin-bottom:18px;transform:rotate(-5deg)}.tile h3{font-size:20px;color:var(--ink);max-width:180px;line-height:1.15}.tile p{color:#655471;line-height:1.5;font-weight:700;font-size:12px;padding-right:15px}.tile .arrow{color:var(--accent);background:#ffffffba;border-radius:50%;width:29px;height:29px;text-align:center;padding-top:4px;bottom:16px;right:15px}.tile::after{content:'✦';position:absolute;font-size:43px;right:20px;top:20px;color:var(--accent);opacity:.16}.bottomnote{background:#fff0c1;border:2px solid #f0da91;border-radius:23px;padding:18px 24px}.bottomnote img{height:87px;width:110px;object-fit:cover;object-position:20% 50%;border-radius:20px}.bottomnote p{font-size:15px;color:#76552e}.bottomnote b{font-size:18px}.panel{border:2px solid #e2d3f3;border-bottom:6px solid #e2d3f3;border-radius:26px;box-shadow:0 8px 24px #6e459508}.panel h2{color:#654097}.panel p{line-height:1.8}.activity{max-width:800px}.activity>.eyebrow{background:#efe3ff;display:inline-block;border-radius:30px;padding:9px 16px}.back{box-shadow:none;background:none;color:#735195}.back:hover{box-shadow:none}.progressbar{height:15px;background:#ece1f8;border:3px solid white;outline:1px solid #e8ddf1}.progressbar span{background:linear-gradient(90deg,#9c74db,#e59abf)}.flash{background:#fff5d9;border-color:#edda9e;min-height:310px}.flash h2{font-family:'Nunito','Trebuchet MS',sans-serif;font-weight:900;font-size:29px}.answer{background:#e7f5e7;border:2px solid #b8dbb3;border-radius:18px;color:#3e6a37;padding:18px;font-weight:700}.coach{display:flex;align-items:center;gap:14px;margin:22px 0;color:#71518e;font-weight:700;font-size:15px}.coach img{width:75px;height:65px;object-fit:cover;border-radius:18px}.coach span{background:#efe5ff;padding:12px 18px;border-radius:18px}.feedback{background:#e5f4df;border:2px solid #bcdbac;font-weight:700}.controls button{font-size:17px}textarea{border:2px solid #ddcbee;background:#fefbff}.stats strong{color:#9564cf}.stats .panel:nth-child(2){background:#eaf7ed}.stats .panel:nth-child(3){background:#fff2d1}footer{color:#8d729e;border-top:2px dashed #dfcdeb}footer span{color:#d49942}.note{color:#70572d}.celebration{font-size:55px;text-align:center;letter-spacing:15px;margin:10px 0 25px}
@media(max-width:760px){header{height:auto}.hero{grid-template-columns:1fr}.hero h2{font-size:34px}.scene{height:220px}.scene img{height:200px}h1{font-size:33px}.grid{gap:13px}.tile{padding:17px;min-height:210px}.tile h3{font-size:18px}.tile .icon{width:55px!important;height:55px!important;font-size:28px!important}.welcome p{font-size:15px}.coach{font-size:14px}.sectiontitle h2{font-size:25px}.bottomnote img{width:65px;height:65px}.herotext{padding:26px}.panel{padding:24px}.parent{margin-left:auto}nav{padding-top:10px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@media print{body{background:white}.coach{display:none}.panel{box-shadow:none;border:0}.download{display:none}}
/* Illustrated schoolbook: the supplied PDF's portraits and visual memory cues. */
.activity{max-width:940px}.chapter-tabs{display:flex;align-items:center;gap:12px;margin:25px 0}.chapter-tabs button{width:46px;min-height:46px;padding:0;border-radius:50%;background:#fff;color:#8460ad;border:2px solid #d6c1ed;box-shadow:none}.chapter-tabs button.selected{background:#8256bf;color:white;box-shadow:0 4px 0 #5b378c}.chapter-tabs span{margin-left:8px;font-size:14px;color:#806590;font-weight:700}.illustrated-lesson{background:white;border:3px solid #544260;border-radius:27px;padding:30px;box-shadow:5px 6px 0 #eadff5}.lesson-heading{display:flex;align-items:center;gap:15px;margin-bottom:26px}.lesson-heading h2{margin:0;font-size:27px;color:#44324f;line-height:1.25;background:linear-gradient(transparent 50%,#dff1ff 50%);padding-bottom:6px}.chapter-number{flex-shrink:0;background:#d5edff;border:2px solid #554067;border-radius:50%;font-size:27px;font-weight:900;width:51px;height:51px;text-align:center;padding-top:5px}.lesson-spread{display:grid;grid-template-columns:205px 1fr;gap:28px;align-items:start}.people{display:flex;flex-direction:column;align-items:center;gap:18px}.person{margin:0;text-align:center;width:170px}.person img{width:145px;height:170px;object-fit:contain;display:block;margin:auto}.person figcaption{border:2px solid #cfb572;background:#fff3c8;padding:7px 10px;border-radius:12px;transform:rotate(-2deg)}.person figcaption b{display:block;font-size:19px;color:#55412d}.person figcaption span{display:block;font-size:12px;margin-top:3px}.key-facts{padding:0;margin:0;list-style:none;display:grid;gap:16px}.key-facts li{display:flex;gap:12px;background:#fbf9ff;border:1px solid #e9def4;border-radius:17px;padding:16px}.key-facts li:nth-child(2){background:#f0f8ff;border-color:#d7e8f5}.key-facts li:nth-child(3){background:#fff9e9;border-color:#efdfb1}.fact-icon{font-size:28px;flex-shrink:0}.key-facts h3{font-size:18px;margin:0 0 5px;color:#624384}.key-facts p{font-size:17px!important;line-height:1.65!important;margin:0}.key-facts b{font-weight:900;color:#4c3377;background:#eee1ff;border-radius:5px;padding:0 3px;box-decoration-break:clone}.chapter-dates{margin-top:29px;border-top:2px dashed #ded4e8;padding-top:22px}.chapter-dates h3{color:#63507c}.date-ribbon{display:flex;list-style:none;padding:0;margin:18px 0 8px;position:relative;gap:0}.date-ribbon li{flex:1;min-width:0;text-align:center;position:relative;display:flex;align-items:center;flex-direction:column;gap:9px}.date-ribbon li:after{content:'';position:absolute;top:68px;left:0;width:100%;height:5px;background:#acd2ea;z-index:0}.date-ribbon li:last-child:after{border-radius:0 8px 8px 0}.date-bubble{font-weight:900;font-size:24px;border:2px solid #62768a;border-radius:13px;padding:6px 14px;background:#e3f4ff;color:#374b69;position:relative;z-index:1;white-space:nowrap}.date-node{position:relative;z-index:1;display:block;font-size:24px;background:#fff;width:38px;height:38px;border-radius:50%;line-height:38px}.date-event{font-size:14px;line-height:1.4;font-weight:800;max-width:125px;padding:0 5px}.scale-note{font-size:11px!important;color:#8c7c96;margin:12px 0 0!important;text-align:center}.memory-box{margin-top:25px;display:flex;gap:14px;background:#fff3c8;border:2px dashed #dcc16e;border-radius:18px;padding:17px}.memory-box>span{font-size:30px}.memory-box h3{font-size:17px;margin:0 0 7px;color:#7e591f}.memory-box p{font-size:17px!important;font-weight:800;margin:0;line-height:1.5!important}.whole-timeline{background:#fff;border:2px solid #d7c6eb;padding:20px;border-radius:20px;margin:28px 0}.whole-timeline summary{cursor:pointer;font-weight:800;color:#735196;line-height:1.6;min-height:32px}.whole-timeline .date-ribbon{flex-wrap:wrap;row-gap:25px}.whole-timeline .date-ribbon li{flex:0 0 33.333%;min-height:150px}.role-chain{display:flex;align-items:center;gap:10px;justify-content:center;flex-wrap:wrap;margin:24px 0 0;padding:18px;background:#eaf7ef;border-radius:16px}.role-chain span{font-weight:900}.role-chain i{font-size:13px;font-style:normal;color:#687b6d}.card-portrait{width:105px;height:115px;object-fit:contain;margin-bottom:12px;mix-blend-mode:multiply}.flash .answer{font-weight:600}.date-inline{display:inline-block;border:1px solid #82b6d5;background:#daf0ff;border-radius:8px;padding:0 7px;color:#285271;white-space:nowrap}.answer mark,.illustrated-lesson mark{background:#fff0a9;color:#654a26;border-radius:5px;padding:0 3px;box-decoration-break:clone}
@media(max-width:650px){.illustrated-lesson{padding:20px}.lesson-heading h2{font-size:23px}.lesson-spread{grid-template-columns:1fr;gap:20px}.people{flex-direction:row;justify-content:center;gap:12px}.person{width:135px}.person img{width:110px;height:125px}.person figcaption b{font-size:16px}.key-facts li{padding:14px}.key-facts p{font-size:16px!important}.chapter-tabs{gap:9px;flex-wrap:wrap}.chapter-tabs span{flex-basis:100%;margin:6px 0}.date-bubble{font-size:20px;padding:7px 10px}.date-event{font-size:12px}.date-ribbon li:after{top:65px}.whole-timeline .date-ribbon li{flex-basis:50%}.memory-box p{font-size:16px!important}.fact-icon{font-size:24px}.lesson-heading{gap:10px}.chapter-number{width:44px;height:44px;font-size:24px}.whole-timeline{padding:15px}}

.french-intro{display:flex;align-items:center;gap:25px;background:#fff5d7}.french-intro>img{width:155px;height:155px}.french-intro h2{font-size:30px}.french-intro p{font-size:17px}.french-grid{grid-template-columns:repeat(3,1fr)}.word-panel{text-align:center}.word-picture{width:170px;height:145px;object-fit:contain;display:block;margin:0 auto 20px}.word-letters{display:flex;justify-content:center;flex-wrap:wrap;gap:5px;margin:15px 0;font-size:43px;font-weight:900;color:#624189}.letter-part{border-radius:12px;padding:3px 10px;box-shadow:0 3px 0 #d5c0e6;background:#efe2ff}.part-1{background:#fff0ad;box-shadow:0 3px 0 #dfcb79}.part-2{background:#ddf2fb;box-shadow:0 3px 0 #afd2e0}.word-example{font-size:20px!important;color:#715d86}.word-panel .memory-box{text-align:left}.drawing-idea{text-align:left;background:#f4f9ee;border:2px dashed #c6dbb3;border-radius:18px;padding:17px;margin-top:20px}.drawing-idea summary{font-weight:800;cursor:pointer}.drawing-idea p{font-size:16px}.word-collection{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.word-collection button{font-size:18px}.word-clue{font-size:23px!important;font-weight:800;color:#67438e}.word-panel form{text-align:left;max-width:420px;margin:20px auto}.word-panel input{font-size:24px;letter-spacing:1px;border:2px solid #cbb3e8}.word-correction{font-size:33px;font-weight:900;color:#694493;margin-top:10px}.word-panel .feedback p{font-size:16px;margin-bottom:0}.dictation-result{border-bottom:2px dashed #e5d9ef;padding:12px 0}.dictation-result>b{font-size:23px}.story-pictures{display:flex;gap:12px;justify-content:center}.story-pictures img{width:28%;max-width:130px;height:115px}.story-text{line-height:2!important;font-size:21px!important}.story-text mark{background:#fff0a9;border-radius:5px;padding:1px 3px;color:#634721}.french-intro .eyebrow{font-size:12px}@media(max-width:650px){.french-grid{grid-template-columns:1fr 1fr}.french-intro{flex-direction:column-reverse;gap:5px}.french-intro>img{width:100px;height:100px}.word-letters{font-size:34px}.word-picture{width:140px;height:125px}.word-clue{font-size:20px!important}header nav{gap:20px}.story-text{font-size:18px!important}}
.subject-grid{grid-template-columns:repeat(4,1fr);gap:22px}.subject-tile{min-height:250px;padding:25px;justify-content:flex-start}.subject-tile h2{font-size:23px;margin:0 0 12px;line-height:1.15}.subject-tile .icon{font-size:40px!important;width:79px!important;height:76px!important}.subject-tile p{font-size:14px;margin-bottom:18px}.subject-status{margin-top:auto;background:#ffffffb3;padding:6px 10px;border-radius:14px;font-size:11px;font-weight:800;color:#675277}.subject-tile:nth-child(5){--tile:#e5f4df;--edge:#b9d6a7}.subject-tile:nth-child(6){--tile:#ffead9;--edge:#edc49f}.letter-game{background:#fff8dc;border-color:#ead395}.puzzle-word{font-size:46px;font-weight:900;letter-spacing:3px;color:#65458c;padding:15px 0 28px}.letter-options{display:flex;justify-content:center;gap:18px;margin:10px 0 30px}.letter-options button{font-size:30px;min-width:83px;min-height:78px;background:#b8e5f6;color:#355773;border-color:#8fc5da;box-shadow:0 5px 0 #8fc5da}.letter-options button:nth-child(2){background:#e5cef8;color:#614082;border-color:#c4a3e1;box-shadow:0 5px 0 #c4a3e1}.letter-options button:nth-child(3){background:#ffe2ac;color:#865c28;border-color:#e5c088;box-shadow:0 5px 0 #e5c088}.word-panel{background:linear-gradient(180deg,#fff9e5 0,#fff 250px)}.word-panel>.word-picture{width:205px;height:165px}.word-panel>.word-example{background:#eaf6ff;display:table;margin:20px auto;padding:12px 22px;border-radius:22px;font-weight:800;color:#41647d}.french-intro{background:#fff1c5;border-color:#e8d48b;box-shadow:4px 5px 0 #f0e2b1}.french-intro h2{color:#7f533b}.drawing-idea summary{font-size:17px}.french-grid .tile{min-height:190px}@media(max-width:900px){.subject-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:500px){.subject-tile{padding:18px;min-height:230px}.subject-tile h2{font-size:20px}.subject-tile .icon{width:65px!important;height:65px!important;font-size:32px!important}.subject-grid{gap:14px}.subject-tile p{font-size:12px}.puzzle-word{font-size:35px}.letter-options{gap:13px}.letter-options button{min-width:65px;font-size:26px}.word-panel>.word-picture{width:170px;height:140px}}

.word-audio{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin:24px 0 12px}.word-audio button{font-size:16px;padding:12px 17px;min-height:52px}.word-audio button:first-child{background:#299eaf;box-shadow:0 4px 0 #1d7c8a}.word-audio .audio-stop{font-size:13px;padding:10px;min-height:42px;align-self:center}.audio-speed{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:15px;font-size:13px;color:#786187;margin:15px 0 22px}.audio-speed label{margin:0}.audio-speed select{font:inherit;color:#61477b;background:#fff;border:1px solid #cfbce1;border-radius:10px;padding:8px;margin-left:5px}.audio-speed [role=status]{min-height:20px}.secret-audio{background:white;color:#846329;border:1px solid #e5cc89;box-shadow:none;font-size:13px;min-height:38px;padding:8px 12px;margin-top:12px}.listening-symbol{font-size:48px}.listening-panel{background:#e8f7fc}.listening-panel #listening-reveal{margin:25px 0}.listening-panel #listening-reveal p{font-size:16px}.french-grid .tile:nth-child(1){--tile:#dff4f8;--edge:#a3d5dc;--accent:#267783}@media(max-width:500px){.word-audio{gap:10px}.word-audio button{font-size:14px;padding:10px 12px}.word-audio button:first-child{flex-basis:100%;max-width:220px}.secret-audio{font-size:12px}}

.narrated-story{background:#f0e7fc;border:2px solid #d6c0ed;border-radius:22px;padding:22px;margin:25px 0}.narrated-story h3{color:#77509b}.narrated-story p{font-size:14px!important;margin:14px 0 0}.narrated-story a{font-weight:700}
/* A chronological story trail, with one illustrated event at a time. */
.time-adventure{--sky:#e4f3ff;--hill:#c8e2b2;position:relative;background:var(--sky);border:3px solid #b8cce5;border-radius:32px;overflow:hidden;margin:25px 0 18px;min-height:345px;box-shadow:0 7px 0 #e1d5ed}.time-aqua{--sky:#ddf6f5;--hill:#b5dece}.time-lavender{--sky:#eee5fc;--hill:#d7c5e7}.time-green{--sky:#edf7df;--hill:#c8dcab}.time-gold{--sky:#fff3ca;--hill:#ecdaa2}.time-peach{--sky:#ffe9db;--hill:#edc6ac}.time-stage{display:grid;grid-template-columns:240px 1fr;gap:25px;align-items:center;padding:32px 36px 45px;position:relative;z-index:2}.time-character{position:relative;display:flex;justify-content:center;align-items:center;animation:character-arrives .55s ease-out both}.time-character img{width:210px;height:265px;object-fit:contain;mix-blend-mode:multiply;filter:drop-shadow(0 8px 0 #ffffff75)}.time-medallion{position:absolute;right:5px;bottom:6px;background:#fff5ce;border:3px solid #d1ad66;border-radius:50%;width:65px;height:65px;text-align:center;font-size:34px;line-height:60px;transform:rotate(8deg)}.big-time-date{display:inline-block;font-size:42px;font-weight:900;line-height:1;background:white;border:3px solid #b7a3cf;border-radius:19px;padding:13px 22px;box-shadow:0 5px 0 #d4c2e6;transform:rotate(-3deg);color:#603e85}.time-caption{animation:chapter-arrives .4s ease-out both}.time-caption h2{font-size:27px;margin:23px 0 12px;line-height:1.2;color:#563b75}.time-caption>p{font-size:18px;font-weight:700;line-height:1.6;color:#604b74;margin:0 0 18px}.time-memory{background:#ffffffc9;border:2px dashed #bea4d5;padding:12px 15px;border-radius:16px;font-weight:800;font-size:15px;line-height:1.5}.time-cloud{background:#ffffffb0;position:absolute;width:100px;height:26px;border-radius:40px;top:35px}.time-cloud:before{content:'';background:inherit;position:absolute;width:43px;height:43px;border-radius:50%;top:-21px;left:22px}.cloud-one{left:23px}.cloud-two{right:30px;top:64px;transform:scale(.8)}.time-hills{position:absolute;background:var(--hill);height:85px;width:140%;border-radius:50% 60% 0 0;bottom:-30px;left:-20%;transform:rotate(-4deg)}.time-spark{position:absolute;font-size:35px;color:#d4a34e;z-index:1;animation:star-arrives .65s ease-out both}.spark-one{left:39%;top:35px}.spark-two{right:23px;bottom:55px;font-size:26px;animation-delay:.2s}.time-controls{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:25px 0}.time-controls span{color:#9174a8;font-weight:900;font-size:16px}.time-controls button[disabled]{opacity:.4;cursor:default;transform:none;box-shadow:none}.time-track{display:flex;gap:17px;overflow-x:auto;padding:18px 8px 20px;scroll-snap-type:x mandatory;position:relative;background:linear-gradient(transparent 90px,#dfcbed 90px,#dfcbed 101px,transparent 101px);border-radius:18px;scrollbar-color:#c4a6df #f5ecfc;scrollbar-width:thin}.time-stop{flex:0 0 125px;display:flex;flex-direction:column;align-items:center;gap:9px;background:#fff9ed;color:#624b77;border:2px solid #e1cfaf;border-radius:22px;padding:13px 9px;min-height:185px;box-shadow:0 4px 0 #e4d4b8;scroll-snap-align:center;position:relative}.time-stop:hover{box-shadow:0 7px 0 #d6c0e9}.time-stop.current-stop{background:#ece1ff;border-color:#9d74ca;box-shadow:0 5px 0 #b89bd4;transform:translateY(-5px)}.stop-number{font-size:10px;font-weight:900;color:#9a7caa;align-self:flex-start}.stop-date{font-size:24px;font-weight:900;white-space:nowrap;letter-spacing:-1px}.stop-icon{font-size:29px;background:#fff;border-radius:50%;width:48px;height:48px;line-height:48px}.stop-title{font-size:12px;line-height:1.3;color:#69517c}.mini-trail{display:flex;justify-content:center;gap:15px;margin:22px 0;position:relative;background:linear-gradient(transparent 77px,#b7d8ed 77px,#b7d8ed 83px,transparent 83px)}.mini-time-stop{flex:1;max-width:200px;background:#f3f9ff;color:#4d6382;border:2px solid #b8d6ed;border-radius:20px;padding:17px 12px;display:flex;align-items:center;flex-direction:column;gap:10px;box-shadow:0 4px 0 #c2d9ed}.mini-time-stop b{font-size:27px;line-height:1.1}.mini-time-stop>span:not(.mini-stop-icon){font-size:14px;line-height:1.3}.mini-stop-icon{font-size:31px}.mini-time-stop small{font-size:11px;color:#78559b;background:white;border-radius:12px;padding:5px 8px}.journey-link{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;text-align:left;background:#e8f4fb;color:#4c6284;border:2px solid #bbd7ed;box-shadow:0 5px 0 #c5dcee;padding:22px 26px;margin:28px 0;border-radius:23px}.journey-link>span{font-size:35px}.journey-link b{font-size:22px;display:block;color:#566591}.journey-link small{display:block;font-size:14px;margin-top:7px;font-weight:600}.illustrated-lesson{animation:chapter-arrives .35s ease-out both}.key-facts li{animation:chapter-arrives .4s ease-out both}.key-facts li:nth-child(2){animation-delay:.07s}.key-facts li:nth-child(3){animation-delay:.14s}.person img{animation:character-arrives .45s ease-out both}.word-panel .feedback{animation:chapter-arrives .3s ease-out both}.tile:hover .icon{animation:happy-tilt .35s ease-in-out 1}.word-correction{animation:star-arrives .35s ease-out both}
@keyframes chapter-arrives{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes character-arrives{from{opacity:0;transform:translateX(-15px) rotate(-4deg)}to{opacity:1;transform:translateX(0) rotate(0)}}@keyframes star-arrives{from{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes happy-tilt{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(6deg)}}
@media(max-width:650px){.time-stage{grid-template-columns:110px 1fr;gap:15px;padding:25px 18px 35px}.time-character img{width:115px;height:190px}.time-medallion{width:44px;height:44px;font-size:24px;line-height:39px;right:-5px;bottom:0}.big-time-date{font-size:33px;padding:10px 14px}.time-caption h2{font-size:21px;margin-top:19px}.time-caption>p{font-size:15px}.time-memory{font-size:13px;padding:10px}.time-stop{flex-basis:110px;min-height:175px}.stop-date{font-size:22px}.time-controls button{padding:12px 18px}.mini-trail{gap:10px}.mini-time-stop{padding:12px 6px;border-radius:15px}.mini-time-stop b{font-size:21px}.mini-time-stop>span:not(.mini-stop-icon){font-size:12px}.mini-time-stop small{font-size:10px;padding:4px}.journey-link{padding:20px 15px;gap:12px}.journey-link b{font-size:19px}.journey-link small{font-size:12px}.time-spark{display:none}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media print{.time-controls,.time-track,.journey-link{display:none}.time-adventure{box-shadow:none}.time-stage{padding:15px}}
.word-board{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:25px 0}.word-board-card{background:#fff;border:2px solid #e0cfee;border-bottom-width:6px;border-radius:25px;text-align:center;padding:19px 13px;display:flex;flex-direction:column;align-items:center;animation:chapter-arrives .35s ease-out both}.word-board-card:nth-child(3n+2){border-color:#b9dbe8;background:#f5fbff}.word-board-card:nth-child(3n){border-color:#ecdaa6;background:#fffdf4}.word-board-card>img{width:145px;height:110px;object-fit:contain;mix-blend-mode:multiply}.word-board-card>h2{font-size:26px;margin:12px 0 8px;color:#65458e;white-space:nowrap}.word-board-card>p{font-size:13px;line-height:1.5;color:#786887;margin:0 0 18px}.word-board-card>div{display:flex;align-items:center;gap:9px;margin-top:auto}.word-board-card button{padding:9px 12px;min-height:43px;font-size:12px}.word-board-card button:first-child{font-size:21px;width:46px}.board-footer{display:flex;justify-content:center;flex-wrap:wrap;gap:15px;margin:28px 0}.word-board-card:hover>img{animation:happy-tilt .3s ease-in-out 1}@media(max-width:650px){.word-board{grid-template-columns:repeat(2,1fr);gap:13px}.word-board-card{padding:14px 8px}.word-board-card>img{width:120px;height:95px}.word-board-card>h2{font-size:22px}.word-board-card>p{font-size:12px}.word-board-card>div{gap:6px}.word-board-card button{font-size:10px;padding:8px}.word-board-card button:first-child{width:38px;font-size:18px}.board-footer button{font-size:14px}}@media(prefers-reduced-motion:reduce){.word-board-card,.word-board-card:hover>img{animation:none!important}}
@media(min-width:1000px){.word-board{grid-template-columns:repeat(4,1fr);gap:16px}.word-board-card{padding:15px 9px}.word-board-card>img{width:130px;height:95px}.word-board-card>h2{font-size:23px}.word-board-card>p{font-size:12px}.word-board-card button{padding:8px;font-size:10px}}
/* Visual anchors beside every important idea. */
.lesson-spread{grid-template-columns:155px 1fr;gap:22px}.people .person{width:145px}.people .person img{width:130px;height:155px}.key-facts li.illustrated-fact{display:grid;grid-template-columns:150px 1fr;align-items:center;gap:17px;padding:15px;background:#fff;border:2px solid #ddcef0;box-shadow:0 3px 0 #eee5f6}.key-facts li.illustrated-fact:nth-child(2){border-color:#bcdbea;background:#fcfeff;box-shadow:0 3px 0 #e0f0f5}.key-facts li.illustrated-fact:nth-child(3){border-color:#e8d49f;background:#fffefa;box-shadow:0 3px 0 #f7efdb}.lesson-picture{margin:0;min-width:0;align-self:center}.history-sheet-window{position:relative;overflow:hidden;width:100%;aspect-ratio:4/3;border-radius:15px;background:white}.history-sheet-window img{position:absolute;width:200%;height:400%;max-width:none;object-fit:fill}.history-schema{display:block;width:100%;height:110px;object-fit:contain}.lesson-picture figcaption{font-size:11px;font-weight:800;color:#826397;text-align:center;line-height:1.4;padding:7px 2px 0}.fact-copy h3{font-size:18px!important}.fact-copy p{font-size:16px!important}.time-character .history-sheet-window{width:250px;min-width:210px;aspect-ratio:4/3;box-shadow:0 6px 0 #c9b9d5;border:3px solid white;border-radius:24px;transform:rotate(-3deg)}.time-character .history-sheet-window img{width:200%;height:400%;filter:none;mix-blend-mode:normal;object-fit:fill}.time-character:has(.history-sheet-window){padding-bottom:20px}.time-character:has(.history-sheet-window) .time-medallion{bottom:-5px;right:-10px}.key-facts .lesson-picture:hover{animation:happy-tilt .35s ease-out 1}@media(max-width:800px){.lesson-spread{grid-template-columns:1fr}.people{flex-direction:row;justify-content:center;gap:18px}.people .person{width:120px}.people .person img{width:105px;height:120px}.key-facts li.illustrated-fact{grid-template-columns:135px 1fr}.time-character .history-sheet-window{min-width:110px;width:125px;border-radius:16px}}@media(max-width:500px){.key-facts li.illustrated-fact{grid-template-columns:1fr;padding:18px}.lesson-picture{width:180px;justify-self:center}.history-schema{height:110px}.history-sheet-window{aspect-ratio:4/3}.fact-copy p{font-size:16px!important}.fact-copy h3{text-align:center;margin-top:8px!important}.lesson-picture figcaption{font-size:12px}.key-facts .lesson-picture:hover{animation:none}.time-character .history-sheet-window{min-width:105px;width:105px}}@media(prefers-reduced-motion:reduce){.key-facts .lesson-picture:hover{animation:none!important}}
/* Weekly maths homework: one action and one question at a time. */
.math-homework{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:20px;background:#fff4d5;border-color:#e9d59b}.math-homework h2{font-size:33px;color:#805b40}.math-homework p{font-size:17px}.math-hero-art{width:100%;max-height:250px}.maths-grid{grid-template-columns:repeat(4,1fr)}.math-classroom{background:#fff;border-style:dashed}.math-classroom p{font-size:16px}.full-tables{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:26px 0}.table-poster{background:white;border:3px solid #d1b7ed;border-bottom-width:7px;border-radius:25px;padding:22px 18px;position:relative}.table-poster h2{font-size:22px;margin:0;text-align:center;color:#73508e}.table-symbol{text-align:center;font-size:35px;margin:14px}.table-5{border-color:#99ccdb}.table-6{border-color:#e6c883}.table-poster ol{padding:0;list-style:none;margin:20px 0}.table-poster li{display:grid;grid-template-columns:1fr 20px 45px;align-items:center;padding:9px 12px;font-size:20px;font-weight:800;gap:5px;border-radius:11px;line-height:1.35}.table-poster li:nth-child(odd){background:#f3edfa}.table-5 li:nth-child(odd){background:#ecf7fc}.table-6 li:nth-child(odd){background:#fff5d8}.table-poster li i{font-style:normal;color:#ac8bbf}.table-poster li b{background:white;border-radius:8px;display:block;text-align:center;color:#68468b}.table-poster button{font-size:12px;padding:11px;width:100%}.math-toggle{font-size:14px}.math-table-tabs,.math-view-tabs{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.math-table-tabs button,.math-view-tabs button{background:white;color:#7f6395;border:2px solid #d9c7e9;box-shadow:0 3px 0 #e8ddf1}.math-table-tabs .selected,.math-view-tabs .selected{background:#e7d5fc;border-color:#ae89ce;color:#68408a;box-shadow:0 4px 0 #c4a8df}.math-view-tabs button{font-size:14px;min-height:44px}.math-visual,.math-exercise,.math-tip,.math-listening{text-align:center}.math-visual h2{font-size:23px}.fruit-groups{display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:15px;margin:25px 0}.fruit-basket{min-width:100px;padding:12px 13px 18px;border:3px solid #d2ac79;border-radius:15px 15px 28px 28px;background:linear-gradient(0deg,#f2d8b3 0,#fff5df 75%);animation:chapter-arrives .25s ease-out both}.fruit-basket small{font-size:11px;font-weight:800;color:#9b7954;display:block;margin-bottom:10px}.fruit-dots{display:grid;grid-template-columns:repeat(3,21px);justify-content:center;gap:7px}.fruit-dot{height:21px;width:21px;border-radius:45% 50% 48% 50%;background:#e7889a;border:2px solid #b35f77;position:relative}.fruit-dot:before{content:'';position:absolute;width:8px;height:5px;background:#87b37e;border-radius:50%;top:-4px;left:9px;transform:rotate(-30deg)}.empty-basket{font-size:42px}.empty-basket p{font-size:16px}.math-equation{font-family:'Nunito','Trebuchet MS',sans-serif;font-size:42px!important;font-weight:900;color:#68468b;line-height:1.4;margin:25px 0}.math-equation span{color:#b395c9;margin:0 5px}.math-equation b{display:inline-block;background:#fff1aa;border-radius:15px;padding:2px 15px;box-shadow:0 4px 0 #e3cc79}.math-result{font-size:29px!important;font-weight:900;margin:12px 0 0}.number-path{display:flex;gap:15px;overflow-x:auto;justify-content:flex-start;padding:20px 8px 22px;background:linear-gradient(transparent 72px,#c8dfb7 72px,#c8dfb7 77px,transparent 77px)}.path-step{flex:0 0 65px;display:flex;flex-direction:column;gap:15px;align-items:center;animation:chapter-arrives .25s ease-out both}.jump-label{font-size:13px;font-weight:900;color:#8e70a8;white-space:nowrap}.path-step b{font-size:23px;background:#f3faeb;border:3px solid #b5cea2;border-radius:50%;height:55px;width:55px;line-height:49px}.path-step:last-child b{background:#e2d0fa;border-color:#b99ad9;color:#7853a3}.math-tip select{font:inherit;font-size:20px;background:white;color:#785591;padding:12px 20px;border:2px solid #d5c1e7;border-radius:14px}.strategy-illustration{font-size:45px;display:block;margin:0 0 20px}.strategy-step{display:flex;align-items:center;text-align:left;gap:14px;margin:20px 0;border:2px solid #c5ddba;border-radius:20px;background:#f1f9e9;padding:16px}.strategy-step>b{background:white;border-radius:50%;padding:8px 14px;color:#75935a}.strategy-step p{font-size:18px;margin:0}.math-game-icon{font-size:48px;display:block}.math-exercise form{max-width:330px;margin:25px auto;text-align:left}.math-exercise input{font-size:30px;font-weight:800;text-align:center;margin:0 0 20px;border:2px solid #c7acdf}.math-exercise form>button{display:block;margin:auto}.math-answer-options{display:flex;justify-content:center;gap:17px;flex-wrap:wrap;margin:30px 0}.math-answer-options button{font-size:30px;min-width:83px;min-height:73px}.math-answer-options button:nth-child(2){background:#319bad;box-shadow:0 4px 0 #23798a}.math-answer-options button:nth-child(3){background:#d19b3d;box-shadow:0 4px 0 #a47529}.math-problem{font-size:23px;line-height:1.6;max-width:600px;margin:25px auto}.math-hint{font-size:14px;margin:22px 0 0}.math-review-chips{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.math-review-chips button{font-size:20px}.math-game-preview{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;margin:28px 0}.math-game-preview>span{background:#f5ecff;border:2px solid #e0cbee;border-radius:20px;padding:18px 20px;text-align:center;font-size:35px}.math-game-preview b{font-size:15px;display:block;margin-top:9px}.adult-prompt{background:#fff6d5;border:2px dashed #e3c879;border-radius:15px;text-align:left;padding:18px;margin:24px 0}.adult-prompt summary{cursor:pointer;font-weight:800}.adult-prompt p{font-size:28px!important;font-weight:900;text-align:center}.math-listening>p{font-size:17px}.maths-activity button:disabled{opacity:.45;cursor:default;transform:none;box-shadow:none}.math-hint-visual{background:#f9f4ff;border-radius:20px;padding:15px;margin:20px 0}.math-hint-visual>p{font-size:16px}.maths-activity .math-classroom p{font-size:16px}
@media(max-width:800px){.maths-grid{grid-template-columns:repeat(2,1fr)}.math-homework{grid-template-columns:1fr}.math-homework .math-hero-art{max-height:180px}.full-tables{grid-template-columns:1fr}.table-poster{max-width:390px;width:100%;margin:auto}.table-poster li{font-size:23px}.table-poster h2{font-size:25px}.table-poster button{font-size:15px}.math-table-tabs{gap:9px}.math-table-tabs button{font-size:14px;padding:12px}.math-homework h2{font-size:28px}.math-equation{font-size:35px!important}.fruit-groups{gap:10px}.fruit-basket{min-width:87px;padding:11px 8px}.math-problem{font-size:20px}.strategy-step p{font-size:16px}.math-visual .controls button{font-size:14px;padding:12px}.math-listening h2{font-size:22px}}
@media(prefers-reduced-motion:reduce){.fruit-basket,.path-step{animation:none!important}}

.install-app{font-size:13px;padding:10px 14px;background:#7951c6;white-space:nowrap}.install-app[hidden],#parent-install[hidden]{display:none!important}.install-panel details{margin-top:20px;border:1px solid #d8c8e8;border-radius:14px;padding:15px}.install-panel summary{cursor:pointer;font-weight:800}.install-panel pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f7f1fc;border-radius:12px;padding:15px;font-size:12px;line-height:1.7;color:#685178}.install-panel>p{font-size:16px}@media(max-width:760px){.install-app{order:4;width:100%;margin-top:5px}}
