@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#243e37;--muted:#6d7b72;--cream:#faf9f4;--orange:#dc7552;--line:#e1e5db}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,select{touch-action:manipulation}button{cursor:pointer}header{height:96px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 6%;background:var(--cream)}.brand{font-family:Manrope,sans-serif;font-weight:800;font-size:23px;letter-spacing:-1px;display:flex;align-items:center;gap:9px}.logo{font-size:38px;color:var(--orange)}.branddot{color:var(--orange);margin-left:-9px}nav{display:flex;align-items:center;gap:30px;font-size:14px}nav a:hover,.textlink:hover{color:var(--orange)}.tiny{background:#edf0df;border-radius:5px;font-size:9px;padding:4px 6px;margin-left:4px}#favcount{border-radius:50%;background:#e9ece3;font-size:11px;padding:4px 7px}main{max-width:1440px;margin:auto}.hero{display:grid;grid-template-columns:1.1fr 1fr;min-height:585px;padding:68px 7% 46px;overflow:hidden}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.7px;display:flex;gap:9px;align-items:center}.eyebrow>span{width:7px;height:7px;border-radius:50%;background:var(--orange)}h1,h2,h3{font-family:Manrope,sans-serif}h1{font-size:58px;line-height:1.12;letter-spacing:-2.7px;margin:24px 0}h1 em{font-style:normal;color:var(--orange);position:relative}h1 em:after{content:'';position:absolute;bottom:-7px;left:0;width:100%;height:8px;border-top:2px solid #dc755277;border-radius:50%}.hero p{color:var(--muted);line-height:1.8}.actions{display:flex;align-items:center;gap:27px;margin:28px 0}.btn{border:0;padding:15px 22px;display:inline-flex;gap:28px;justify-content:space-between;align-items:center;border-radius:7px;font-weight:600;font-size:13px}.dark{background:var(--ink);color:white}.dark:hover{background:#3d5a4b}.textlink{font-size:13px;font-weight:600}.trust{display:flex;gap:20px;font-size:10px;color:var(--muted);margin-top:32px}.hero-art{position:relative;min-height:470px}.orbit{position:absolute;border:1px solid #dde3d4;border-radius:50%;width:440px;height:440px;left:10px;top:0}.orbit2{width:360px;height:360px;top:40px;left:50px}.paper{background:white;box-shadow:0 15px 40px #253c3620;border:1px solid #e2e5dc}.hero-paper{position:absolute;width:285px;height:380px;top:49px;left:90px;padding:27px;transform:rotate(-9deg)}.paper-brand{font-size:9px;font-weight:700;letter-spacing:1px;margin-bottom:18px}.paper small{font-size:8px;color:#b58050}.paper h3{font-size:23px;line-height:1.2;margin:10px 0}.paper-line{font-size:7px;border-top:1px solid #eee;padding-top:12px}.paper p{font-size:8px}.flowers{font-size:34px;color:#d99565;white-space:nowrap;margin:13px 0}.flowers span{font-size:17px;display:inline-block;float:right;color:#507965;border:1px solid #cfdbce;padding:6px 10px;border-radius:5px}.mini-equation{font-size:24px;margin-top:20px;color:#425b4e}.mini-equation i{font-style:normal;border-bottom:1px dashed #889b89}.paper-foot{font-size:7px;text-align:right;margin-top:20px;color:#899889}.sticker{position:absolute;right:0;top:12px;z-index:2;background:#f1d776;border-radius:13px;padding:17px 19px;transform:rotate(9deg);font-size:12px;font-weight:600;line-height:1.5;box-shadow:0 4px 0 #d8bf6720}.sticker span{font-size:28px;float:right;padding-left:8px}.pencil{position:absolute;height:310px;width:62px;right:8px;top:146px;transform:rotate(19deg)}.scribble{position:absolute;font-size:60px;left:20px;top:20px;color:#7f9b81}.round-note{position:absolute;bottom:1px;left:12px;border-radius:50%;background:#dee8d6;width:100px;height:100px;text-align:center;padding:20px;font-size:23px;transform:rotate(-12deg);font-weight:700}.round-note span{color:#719473;font-size:19px}.levels-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 7%;display:flex;justify-content:space-between;align-items:center;gap:30px}.levels-section h2{font-size:22px;margin:7px 0}.levels{display:flex;gap:10px;flex-wrap:wrap}.level{width:63px;height:65px;border:1px solid var(--line);border-radius:10px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font-weight:800;font-size:19px}.level small{font-size:8px;font-weight:400;color:var(--muted)}.level:nth-child(-n+3){background:#f3eedf}.level:nth-child(n+4):nth-child(-n+6){background:#e9efe6}.level:nth-child(n+7){background:#f1e7df}.level.active{border:2px solid var(--ink)}.catalogue{padding:65px 7%}.sectionhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}h2{font-size:35px;line-height:1.25;letter-spacing:-1.1px;margin:15px 0}.sectionhead p{font-size:13px;color:var(--muted);line-height:1.8}.toolbar{display:flex;gap:10px}.search{display:flex;align-items:center;gap:12px;flex:1;background:white;border:1px solid var(--line);border-radius:6px;padding:0 16px}.search span{font-size:27px}.search input{background:none;border:0;outline:none;width:100%;font-size:12px}.toolbar select{max-width:160px}select{border:1px solid var(--line);padding:13px 12px;border-radius:6px;background:white;color:var(--ink);font-size:12px}.category-strip{display:flex;gap:8px;overflow:auto;padding:20px 0;scrollbar-width:thin}.chip{white-space:nowrap;padding:8px 13px;font-size:11px;border:1px solid var(--line);background:transparent;border-radius:30px}.chip.active{background:var(--ink);color:white;border-color:var(--ink)}.resultline{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin:5px 0 20px}.plain{border:0;background:none;color:var(--muted);font-size:11px;padding:0}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.card{border:1px solid var(--line);border-radius:11px;overflow:hidden;background:white;position:relative;transition:transform .2s}.card:hover{transform:translateY(-5px);box-shadow:0 8px 20px #2340370c}.card-image{height:205px;background:#edf0e4;display:flex;justify-content:center;align-items:center;overflow:hidden;cursor:pointer}.card:nth-child(4n+2) .card-image{background:#f1e7db}.card:nth-child(4n+3) .card-image{background:#e5ecec}.card:nth-child(4n+4) .card-image{background:#f1ebdd}.card canvas{width:132px;height:187px;box-shadow:0 4px 12px #22382e20;transform:rotate(-4deg);background:white}.card:nth-child(even) canvas{transform:rotate(4deg)}.card-body{padding:17px 16px}.card-meta{display:flex;justify-content:space-between;font-size:9px;font-weight:600;color:#7c8675}.card h3{font-size:14px;margin:10px 0 8px;line-height:1.4}.card-bottom{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:var(--muted)}.card-bottom span:last-child{color:#567459}.heart{position:absolute;right:11px;top:11px;border:0;background:white;border-radius:50%;width:30px;height:30px;font-size:18px;color:var(--ink);z-index:1}.heart.saved{color:var(--orange)}.more{display:flex;margin:32px auto 0;border:1px solid #bdc6b6;background:transparent}.generator{margin:0 7% 65px;background:#e9eedf;border-radius:18px;padding:45px;display:grid;grid-template-columns:1fr 1.15fr;gap:70px}.generator p{font-size:13px;line-height:1.8;color:var(--muted);max-width:330px}.generator h2{font-size:38px}.generator-doodle{font-size:50px;color:#759371;display:block;margin-top:20px}.generator-doodle i{font-style:normal;color:var(--orange);margin:0 20px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.formgrid label{font-size:11px;font-weight:600;display:flex;flex-direction:column;gap:8px}.formgrid .wide{grid-column:span 2}.generator select{font-size:13px;width:100%;padding:14px}.generator form>.btn{width:100%;margin:22px 0 12px}.generator small{display:block;text-align:center;color:var(--muted);font-size:9px}.about{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;padding:0 7% 55px}.about span{font-size:9px;letter-spacing:1px;color:#939b87}.about h3{font-size:16px}.about p{font-size:12px;line-height:1.8;color:var(--muted)}footer{border-top:1px solid var(--line);padding:35px 7%;display:flex;flex-wrap:wrap;gap:25px;align-items:center;font-size:10px;color:var(--muted)}footer .brand{font-size:18px}footer span{margin-left:auto}dialog{border:0;border-radius:15px;padding:0;color:var(--ink);max-width:1120px;width:95vw;max-height:92vh;box-shadow:0 20px 80px #0003}dialog::backdrop{background:#1d302e99;backdrop-filter:blur(3px)}.modalhead{padding:15px 25px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:12px}.close{border:0;background:none;font-size:30px;color:var(--ink)}.modalbody{display:grid;grid-template-columns:340px 1fr}.modalbody aside{padding:30px}.modalbody h2{font-size:27px}.modalbody p{font-size:13px;line-height:1.7;color:var(--muted)}.modalbody .btn{width:100%;margin:6px 0;justify-content:center}.outline{background:white;border:1px solid var(--line)}.toggle{display:flex;gap:8px;align-items:center;font-size:12px;margin:22px 0 15px}.preview{background:#e8eae2;padding:28px;display:flex;justify-content:center;align-items:flex-start}.preview canvas{width:100%;height:auto;max-width:560px;box-shadow:0 4px 20px #0001}.small{font-size:10px!important}#sheetTags{display:flex;gap:6px;flex-wrap:wrap}#sheetTags span{font-size:10px;background:#ecf0e6;padding:6px 9px;border-radius:4px}#similar button{border:0;border-bottom:1px solid var(--line);background:white;width:100%;text-align:left;padding:12px 0;color:var(--ink);font-size:12px}#infoDialog{padding:35px;max-width:650px;font-size:14px;line-height:1.8}#infoDialog .close{float:right}#infoDialog a{text-decoration:underline}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:13px 23px;background:var(--ink);color:white;border-radius:9px;display:none;z-index:30;font-size:13px}.empty{grid-column:1/-1;text-align:center;padding:50px;color:var(--muted)}:focus-visible{outline:3px solid #db8055;outline-offset:3px}@media(min-width:1450px){header,footer{padding-left:calc((100vw - 1240px)/2);padding-right:calc((100vw - 1240px)/2)}}@media(max-width:1000px){nav{gap:15px}.brand{font-size:19px}h1{font-size:46px}.hero{padding-top:50px}.hero-paper{left:40px}.orbit{left:-20px}.sticker{right:-20px}.grid{grid-template-columns:repeat(3,1fr)}.levels-section{flex-direction:column;align-items:flex-start}.generator{gap:30px;padding:30px}.toolbar{flex-wrap:wrap}.search{min-width:100%;height:48px}}@media(max-width:700px){header{height:auto;min-height:80px;align-items:flex-start;flex-direction:column;gap:14px;padding:18px 6%}nav{width:100%;justify-content:space-between;font-size:11px;gap:6px}.tiny,.navlabel{display:none}.hero{display:flex;flex-direction:column;padding:35px 7% 25px}.hero h1{font-size:45px}.hero-art{min-height:415px;margin-top:25px;max-width:400px;width:100%;align-self:center}.hero-paper{left:60px;width:260px;height:350px}.pencil{right:-5px;height:260px}.orbit{width:360px;height:360px;left:0}.orbit2{width:300px;height:300px;left:30px}.round-note{bottom:0;left:0;width:85px;height:85px;font-size:20px;padding:15px}.trust{gap:12px;font-size:9px}.levels-section{padding:25px 7%;gap:15px}.levels{gap:7px}.level{width:57px;height:60px}.catalogue{padding:40px 6%}.sectionhead{align-items:flex-start;flex-direction:column;gap:0}.sectionhead h2{font-size:29px}.sectionhead p{margin:0 0 10px}.toolbar select{flex:1;min-width:90px;max-width:unset;padding:10px 6px;font-size:10px}.grid{grid-template-columns:repeat(2,1fr);gap:12px}.card-image{height:175px}.card canvas{width:109px;height:155px}.card-body{padding:13px 10px}.card h3{font-size:12px}.card-meta{font-size:8px}.card-bottom{font-size:9px}.generator{margin:0 6% 40px;display:block;padding:25px}.generator-intro h2{font-size:32px}.generator-doodle{display:none}.generator form{margin-top:25px}.about{grid-template-columns:1fr;gap:15px}footer{gap:15px}footer span{margin-left:0}.modalbody{grid-template-columns:1fr}.modalbody aside{padding:23px}.preview{padding:15px}.modalbody h2{font-size:24px}.modalhead{padding:12px 18px}}
#heroCompanion{position:absolute;width:140px;height:140px;bottom:1px;right:58px;z-index:3;transform:rotate(9deg)}#generatorCompanion{display:block;width:120px;height:120px;margin:8px 0 -10px}.programme{margin:0 7% 65px;padding-top:5px}.programme-bar{display:flex;justify-content:space-between;gap:15px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:20px}.programme-tabs{display:flex;flex-wrap:wrap;gap:8px}.programme-tabs .chip{min-width:50px;font-weight:600}.programme-year{white-space:nowrap;color:#75866e;font-size:11px;background:#eaf0e3;padding:10px;border-radius:6px}.programme-caption h3{margin:23px 0 8px;font-size:21px}.programme-caption p,.programme-note{font-size:12px;line-height:1.8;color:var(--muted)}.programme-note{max-width:850px;margin-bottom:25px}.programme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.programme-card{border:1px solid var(--line);border-radius:14px;padding:22px;background:white;display:flex;flex-direction:column;align-items:flex-start}.programme-card canvas{width:105px;height:83px;margin-bottom:8px}.programme-card h3{font-size:16px;margin:0 0 10px}.programme-card p{font-size:12px;color:var(--muted);line-height:1.8;margin-top:0}.programme-skills{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto;padding-top:10px}.programme-skills .chip{white-space:normal;text-align:left;font-size:10px;background:#f3f5ee}.programme-skills .chip:hover{background:#e2ebd8}.programme-bottom{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;background:#f0f2e9;border-radius:12px;padding:28px;margin-top:25px}.programme-bottom h3{font-size:15px;margin-top:0}#programmeSources{display:flex;flex-direction:column;gap:10px;font-size:12px}#programmeSources a:hover{text-decoration:underline}.programme-bottom small{font-size:9px;line-height:1.6;display:block;margin-top:18px;color:var(--muted)}.coverage p{font-size:11px;line-height:1.8;color:var(--muted)}@media(max-width:1100px){header nav{gap:15px;font-size:12px}.tiny{display:none}}@media(max-width:700px){.programme{margin:0 6% 40px}.programme-grid,.programme-bottom{grid-template-columns:1fr}.programme-bar{flex-direction:column;align-items:flex-start}.programme-tabs{gap:6px}.programme-tabs .chip{min-width:43px}.programme-card{padding:20px}.programme-bottom{gap:20px;padding:22px}#heroCompanion{width:115px;height:115px;right:12px;bottom:5px}#generatorCompanion{width:90px;height:90px}header nav{flex-wrap:wrap;justify-content:flex-start;gap:10px 18px;font-size:11px}.programme-card canvas{width:95px;height:75px}}
/* A cheerful palette with calm reading areas. */
:root{--cream:#fffcf5;--ink:#203d48;--muted:#566b72;--orange:#c75232;--line:#e3e8e4;--coral:#f1836b;--mint:#a8dfc5;--sky:#aed9f4;--lilac:#d0bbed;--sun:#f8d474}html{scroll-behavior:smooth;scroll-padding-top:25px}header{background:#fffef9;border-bottom:3px solid #f5d990}header .logo{color:#cf583d}nav a{position:relative}nav a:after{content:'';position:absolute;bottom:-7px;left:0;width:0;height:3px;background:#eb9a70;border-radius:3px;transition:width .2s}nav a:hover:after{width:100%}.hero{background:radial-gradient(ellipse at 82% 32%,#d9eff3 0,transparent 47%),radial-gradient(ellipse at 18% 5%,#ffebbd 0,transparent 51%);position:relative}.hero-copy{position:relative;z-index:2}.hero-copy .eyebrow{background:#fff4d9;border:1px solid #f0d99f;border-radius:30px;padding:9px 12px;width:fit-content}.hero h1 em{color:#c6533a}.hero .dark{background:#286b7a;box-shadow:0 5px 0 #194e5b}.hero .dark:hover{background:#215c69}.trust span{background:#fffdf5;border-radius:20px;padding:7px 9px;border:1px solid #e3e9df}.trust{gap:9px}.orbit1{background:#d4ece745;border:2px dashed #8fbbb670}.orbit2{border:1px solid #99bec25c}.sticker{background:#ffda75;box-shadow:4px 5px 0 #dfa35633}.round-note{background:#bce6c8;color:#254d47;box-shadow:5px 5px 0 #83b58d2b}.scribble{color:#d7834f}.hero-paper{border-top:5px solid #e68d6a;border-radius:4px}.paper-foot{color:#9b6246}.tiny{background:#ffe3a5;color:#715626}.levels-section{background:#fff6df;border-color:#f1dca8}.level{border-radius:13px;transition:transform .2s,box-shadow .2s,border-color .2s}.level:nth-child(8n+1){background:#ffddad}.level:nth-child(8n+2){background:#ffd0d0}.level:nth-child(8n+3){background:#d9cef3}.level:nth-child(8n+4){background:#bfe4f6}.level:nth-child(8n+5){background:#bce8d1}.level:nth-child(8n+6){background:#e2efaf}.level:nth-child(8n+7){background:#ffdea3}.level:nth-child(8n){background:#edc8e1}.level small{color:#40565a}.level:hover{transform:translateY(-6px) rotate(-3deg);box-shadow:0 7px 0 #203d4810}.level.active{box-shadow:0 4px 0 #203d4824;border-color:#286b7a}.catalogue{background:linear-gradient(180deg,#fffcf5,#f7fbff)}.catalogue h2{color:#234d5b}.category-strip .chip:nth-child(5n+2){background:#fff0ce}.category-strip .chip:nth-child(5n+3){background:#e5f4ed}.category-strip .chip:nth-child(5n+4){background:#e8f1ff}.category-strip .chip:nth-child(5n+5){background:#f1eafa}.category-strip .chip.active,.programme-tabs .chip.active{background:#286b7a;color:white;border-color:#286b7a}.chip{transition:background .2s,transform .2s,box-shadow .2s}.chip:hover{transform:translateY(-2px);box-shadow:0 3px 7px #203d4812}.card{border-color:#dbe5e9;border-radius:15px;transition:transform .25s,box-shadow .25s,border-color .25s}.card:hover{transform:translateY(-7px);box-shadow:0 13px 24px #234d5b17;border-color:#a2c6ca}.card .card-image{background:#d9efe3}.card:nth-child(6n+2) .card-image{background:#ffe4b7}.card:nth-child(6n+3) .card-image{background:#d9eafa}.card:nth-child(6n+4) .card-image{background:#eadcf6}.card:nth-child(6n+5) .card-image{background:#fbdad4}.card:nth-child(6n) .card-image{background:#e7efbd}.card canvas{transition:transform .35s}.card:hover canvas{transform:rotate(0) scale(1.05)}.heart{transition:transform .18s,background .18s}.heart:hover{transform:scale(1.16);background:#fff0eb}.heart.saved{background:#fff0eb;color:#b73e35}.card-meta span:last-child{background:#e5f4ee;padding:3px 6px;border-radius:4px;color:#305d55}.card-bottom span:last-child{color:#286b7a}.generator{background:linear-gradient(130deg,#d8f0e5,#e1edff);border:1px solid #bfd9d7;position:relative;overflow:hidden;box-shadow:0 8px 30px #2759630b}.generator:after{content:'✦';position:absolute;right:18px;top:8px;font-size:65px;color:#8aa9cc40;pointer-events:none}.generator .dark{background:#286b7a}.generator h2{color:#245e64}.generator select{border-color:#bad0cf}.programme-year{background:#ffdfa0;color:#694c15}.programme-card:nth-child(1){border-top:5px solid #eda080;background:linear-gradient(180deg,#fff5e9,#fff 70%)}.programme-card:nth-child(2){border-top:5px solid #78bd9f;background:linear-gradient(180deg,#eaf8ef,#fff 70%)}.programme-card:nth-child(3){border-top:5px solid #a998d5;background:linear-gradient(180deg,#f2ecfa,#fff 70%)}.programme-bottom{background:#eaf2fa;border:1px solid #d5e2ee}.about>div{padding:21px;border-radius:12px;background:#fff0d6}.about>div:nth-child(2){background:#e1f1e8}.about>div:nth-child(3){background:#eee7f8}.about{gap:20px}.about span{color:#677463}footer{background:#e9f2ee;border-top:3px solid #afd3bf}.btn{transition:transform .2s,box-shadow .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn:active,.level:active{transform:translateY(1px)}.more{background:white;border-color:#9fbfc7;color:#286b7a}.modalhead{background:#e9f3f5}.modalbody #sheetTags span{background:#e7f1fa}.modalbody #sheetTags span:nth-child(2){background:#f5e5fb}.modalbody #sheetTags span:nth-child(3){background:#fff0cb}.preview{background:linear-gradient(145deg,#dceae5,#e5eafa)}.motion-toggle{border:1px solid #9bb9ae;background:white;border-radius:20px;font-size:11px;color:#355d50;padding:8px 12px;cursor:pointer}.motion-toggle:hover{background:#f6fff9}
/* Only decorative elements move continuously; the content stays steady. */
.hero-paper{animation:paperFloat 7s ease-in-out infinite}.sticker{animation:stickerFloat 6s ease-in-out infinite}.pencil{animation:pencilFloat 8s ease-in-out infinite}.scribble{animation:starTwinkle 4s ease-in-out infinite}.round-note{animation:noteFloat 6.5s ease-in-out infinite}#heroCompanion{animation:owlFloat 5.5s ease-in-out infinite}#generatorCompanion{animation:butterflyFloat 5s ease-in-out infinite}.hero-copy{animation:welcomeIn .7s ease-out both}.reveal-visible{animation:sectionIn .6s ease-out both}.card-enter{animation:cardIn .45s ease-out both;animation-delay:var(--enter-delay,0ms)}.celebration-dot{position:fixed;width:9px;height:12px;top:0;left:0;border-radius:3px;pointer-events:none;z-index:100;animation:confettiFall 850ms ease-out forwards;transform:translate(var(--start-x),var(--start-y));will-change:transform,opacity}.love-pop{animation:lovePop .45s ease-out!important}@keyframes paperFloat{0%,100%{transform:translateY(0) rotate(-9deg)}50%{transform:translateY(-9px) rotate(-7deg)}}@keyframes stickerFloat{0%,100%{transform:translateY(0) rotate(9deg)}50%{transform:translateY(-7px) rotate(5deg)}}@keyframes pencilFloat{0%,100%{transform:translateY(0) rotate(19deg)}50%{transform:translateY(8px) rotate(22deg)}}@keyframes starTwinkle{0%,100%{transform:rotate(0) scale(1)}50%{transform:rotate(18deg) scale(1.1)}}@keyframes noteFloat{0%,100%{transform:translateY(0) rotate(-12deg)}50%{transform:translateY(-6px) rotate(-8deg)}}@keyframes owlFloat{0%,100%{transform:translateY(0) rotate(9deg)}50%{transform:translateY(-10px) rotate(-2deg)}}@keyframes butterflyFloat{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-8px) rotate(5deg)}}@keyframes welcomeIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes sectionIn{from{opacity:.5;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes cardIn{from{opacity:.4;translate:0 12px}to{opacity:1;translate:0 0}}@keyframes lovePop{50%{transform:scale(1.3)}}@keyframes confettiFall{0%{opacity:1;transform:translate(var(--start-x),var(--start-y)) rotate(0)}100%{opacity:0;transform:translate(var(--end-x),var(--end-y)) rotate(var(--turn))}}.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}html.motion-paused{scroll-behavior:auto}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(max-width:700px){.hero-copy .eyebrow{font-size:8px;letter-spacing:1px}.trust{flex-wrap:wrap;gap:6px}.trust span{padding:5px 7px}.about>div{padding:20px}.programme-card{border-radius:12px}}
.methods{padding:45px 7% 55px;background:linear-gradient(180deg,#fff7e8,#f9fcff);margin-bottom:30px;border-top:1px solid #f0dfb6;border-bottom:1px solid #e4edf4}.method-banner{display:flex;gap:20px;align-items:center;background:#e5f3ed;border-radius:12px;padding:15px 23px;margin-bottom:25px}.method-banner>span{color:#bd7249;font-size:42px}.method-banner p{font-size:12px;line-height:1.8;margin:0;color:#43645c}.method-banner strong{display:block;color:#244d49}.method-count{font-size:12px;color:var(--muted);margin:20px 0}.method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.method-card{border:1px solid #dce7df;border-top:4px solid #82bea8;text-align:left;border-radius:14px;background:#fff;padding:20px;display:flex;flex-direction:column;align-items:flex-start;transition:transform .2s,box-shadow .2s;color:var(--ink)}.method-card:nth-child(4n+2){border-top-color:#e5ae68}.method-card:nth-child(4n+3){border-top-color:#9db5df}.method-card:nth-child(4n){border-top-color:#b59acc}.method-card:hover{transform:translateY(-5px);box-shadow:0 10px 22px #234d5b13}.method-card canvas{width:70px;height:62px;align-self:center;margin-bottom:10px}.method-label{font-size:9px;color:#687d73}.method-card h3{font-size:14px;line-height:1.5;margin:10px 0}.method-card p{font-size:11px;color:var(--muted);line-height:1.7;margin-top:0}.method-open{font-size:10px;color:#286b7a;font-weight:700;margin-top:auto;padding-top:15px}.method-sources{border-top:1px solid #dce5da;margin-top:30px;padding-top:20px;font-size:11px;color:var(--muted);line-height:1.8}.method-sources a{display:inline-block;margin-right:20px;color:#286b7a;text-decoration:underline}.method-dialog-body{padding:30px}.method-example{font-size:19px;background:#fff1d7;border-radius:8px;padding:15px 20px;color:#775332}.method-lesson-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:25px;align-items:center}.method-illustration canvas{width:100%;height:auto;border:1px solid #e3e9df;border-radius:12px}.method-progress{height:5px;background:#e5ecdf;border-radius:8px;margin-top:10px;overflow:hidden}.method-progress span{display:block;background:#64a993;height:100%;transition:width .3s}.method-step>span{font-size:11px;font-weight:600;color:#689984}.method-step h3{font-size:20px;margin:10px 0}.method-step p{font-size:14px;line-height:1.9;color:#4d6565}.method-controls{display:flex;gap:10px;margin-top:20px}.method-controls .btn{font-size:11px;padding:12px 15px;gap:10px}.method-controls button:disabled{opacity:.4;cursor:default;transform:none}.method-tip{background:#eef3fd;border-left:4px solid #9bb2d9;padding:18px 20px;border-radius:8px;font-size:12px;line-height:1.8;margin:25px 0}.method-tip strong{display:block;color:#33547f;margin-bottom:4px}.method-practice-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:30px}.method-try,.method-train{border:1px solid #dde7df;border-radius:12px;padding:20px}.method-try{background:#f1faf3}.method-train{background:#faf7ff}.method-practice-layout h3{font-size:17px;margin:0 0 12px}.method-practice-layout p{font-size:12px;line-height:1.8}#methodCheckForm label{font-size:11px;display:block;margin-bottom:8px}#methodCheckForm>div{display:flex;gap:8px}#methodAnswer{border:1px solid #bdd1c5;border-radius:7px;width:100%;min-width:0;padding:10px;font-size:13px;background:white}#methodCheckForm button{padding:10px 13px;font-size:11px;white-space:nowrap}#methodFeedback{min-height:20px}.method-success{color:#286641;font-weight:600}.method-retry{color:#875e32}.method-try #methodSolution{background:white;padding:12px;border-radius:6px;color:#365b4c}.method-train .chip{margin:4px 6px 4px 0;background:white}.method-train>.btn{margin-top:20px;font-size:12px}#methodPractice{font-size:12px;line-height:1.8}@media(max-width:1000px){.method-grid{grid-template-columns:repeat(3,1fr)}header nav{gap:12px;font-size:11px}.method-lesson-layout{grid-template-columns:1fr 1fr}}@media(max-width:700px){.methods{padding:35px 6%}.method-grid{grid-template-columns:repeat(2,1fr);gap:12px}.method-card{padding:15px}.method-card h3{font-size:12px}.method-label{font-size:8px}.method-dialog-body{padding:20px}.method-lesson-layout,.method-practice-layout{grid-template-columns:1fr;gap:18px}.method-example{font-size:16px}.method-dialog-body h2{font-size:25px}.method-banner{padding:15px;gap:12px}.method-banner>span{font-size:30px}.method-sources a{display:block;margin-top:7px}}
.courses{padding:50px 7% 60px;background:linear-gradient(140deg,#edf7ff,#f9f3ff 68%,#fff8e9);border-top:1px solid #e0e8f2;border-bottom:1px solid #e5e4f2}.courses h2{color:#31547d}.course-welcome{display:grid;grid-template-columns:1.25fr 1fr;gap:35px;border:1px solid #d1dfe6;border-radius:17px;background:#ffffffb5;padding:28px;margin-bottom:22px}.course-welcome h3{font-size:21px;line-height:1.4;margin:13px 0}.course-welcome p{font-size:12px;line-height:1.9;color:var(--muted);margin-bottom:0}.course-welcome .eyebrow{font-size:9px;letter-spacing:1px;color:#477b91}.course-dashboard{align-self:center;background:#f0f7f2;border:1px solid #d4e7d9;border-radius:12px;padding:22px}.course-dashboard strong{font-size:14px;display:block}.course-dashboard small{display:block;font-size:10px;line-height:1.8;color:#52756a}.course-progress-track{height:9px;background:#d8e8dc;border-radius:8px;overflow:hidden;margin:17px 0}.course-progress-track span{height:100%;background:linear-gradient(90deg,#69b99b,#71b1cb);display:block;transition:width .35s}#courseResume{background:white;color:#34636b;margin-bottom:22px;border-color:#adc6d2;width:100%}#courseResume[hidden]{display:none}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:25px}.course-card{background:white;border:1px solid #dce3ef;border-radius:16px;padding:22px;text-align:left;display:flex;flex-direction:column;align-items:flex-start;color:var(--ink);position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s}.course-card:before{content:'';height:5px;background:#a3cbb9;position:absolute;top:0;left:0;width:100%}.course-card:nth-child(3n+2):before{background:#cab1e4}.course-card:nth-child(3n):before{background:#eac485}.course-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #2c527816}.course-card canvas{align-self:center;width:95px;height:75px;margin:3px 0 12px}.course-meta{display:flex;gap:8px;justify-content:space-between;align-items:center;width:100%;font-size:9px;color:#667885}.course-status{background:#f0f2f8;border-radius:20px;padding:5px 7px;white-space:nowrap}.course-passed{background:#e4f5e9;color:#326849;border-radius:20px;padding:5px 7px;white-space:nowrap}.course-card h3{font-size:16px;line-height:1.5;margin:15px 0 9px}.course-card p{font-size:12px;color:var(--muted);line-height:1.7;margin-top:0}.course-tools{font-size:10px;color:#80729c;margin-top:auto;padding-top:7px}.course-card-action{font-size:11px;color:#356e89;font-weight:700;margin-top:18px}.course-revision{display:grid;grid-template-columns:1fr 1.3fr;gap:30px;background:#fff9e9;border:1px solid #efdfb7;padding:27px;border-radius:15px;margin-top:30px}.course-revision h3{font-size:20px;margin:12px 0}.course-revision p{font-size:12px;line-height:1.8;color:var(--muted)}#courseRevision{display:flex;flex-direction:column;gap:9px}.revision-task{border:1px solid #e0dcc6;background:white;border-radius:8px;padding:12px 15px;text-align:left;display:flex;align-items:center;gap:15px;color:var(--ink);transition:transform .2s}.revision-task:hover{transform:translateX(3px)}.revision-task>span{color:#9d733c;font-size:10px;white-space:nowrap}.revision-task strong{font-size:12px;line-height:1.5}.course-disclaimer{font-size:10px;line-height:1.9;color:#6b7e87;margin:25px 0 0}.course-dialog-body{padding:30px}.course-dialog-body>h2{font-size:28px}.course-dialog-body>p{font-size:15px;color:#566f76}.course-tabs{display:flex;gap:8px;border-bottom:1px solid #d9e5ec;padding-bottom:14px;margin:25px 0}.course-tabs button{background:#f0f4f9;border:1px solid #dfe8ed;border-radius:8px;padding:12px 17px;font-size:12px;font-weight:600;color:#486574;cursor:pointer}.course-tabs button.active{background:#315f80;border-color:#315f80;color:white}.course-intro{background:#f3f7ff;border-left:4px solid #9db7dd;padding:20px;border-radius:8px}.course-intro h3{font-size:18px;margin:0 0 10px}.course-intro p,.course-lesson-step p{font-size:13px;line-height:1.9}.course-intro p{margin-bottom:0}.course-lesson-step{display:grid;grid-template-columns:1fr 1.1fr;gap:28px;align-items:center;margin:25px 0;padding:20px 0;border-bottom:1px solid #e4e9eb}.course-lesson-step h3{font-size:19px;line-height:1.5;margin:10px 0}.course-lesson-step canvas{width:100%;height:auto;border:1px solid #e2e7de;border-radius:10px}.course-advice{background:#eef6ec;border:1px solid #d9e6d3;padding:20px;border-radius:10px;margin:20px 0;font-size:12px;line-height:1.9}.course-advice strong{color:#3a6c54;font-size:14px;display:block}.course-advice button{margin-top:15px}.course-memo{background:#fff9e7;border:1px solid #e8d9af;border-radius:12px;padding:25px}.memo-example{font-weight:700;font-size:24px;color:#95663a;margin:0 0 20px}.course-memo>div{display:flex;align-items:flex-start;gap:15px;margin:15px 0}.course-memo>div>span{border-radius:50%;background:#efdb9e;color:#684e26;width:28px;height:28px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-weight:700;font-size:12px}.course-memo p{font-size:13px;line-height:1.8}.course-memo>div p{margin:0}.course-memo .memo-example{font-size:24px}.memo-tip{border-top:1px solid #e9d8ac;padding-top:17px;margin-bottom:0}.course-panel-actions{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.quiz-counter{font-size:12px;color:#547f8c;letter-spacing:.5px}.course-quiz-options{border:0;margin:0 0 20px;padding:0}.course-quiz-options legend{font:700 21px/1.5 Manrope,sans-serif;margin-bottom:20px;color:#2c526a}.course-quiz-options label{display:flex;gap:13px;align-items:center;border:1px solid #dce4eb;background:#f8faff;border-radius:10px;padding:18px;margin-bottom:12px;cursor:pointer;font-size:14px;line-height:1.6}.course-quiz-options input{accent-color:#3a728b;width:18px;height:18px;flex-shrink:0}.course-quiz-options label:has(input:checked){border-color:#6295b0;background:#eaf5fa}.course-quiz-options label.quiz-correct{background:#eaf7ec;border-color:#76ac89}.course-quiz-options label.quiz-incorrect{background:#fff1e6;border-color:#dbad81}.course-quiz-options label:has(input:disabled){cursor:default}#coursePanel button:disabled{opacity:.55;cursor:default;transform:none}.quiz-feedback{padding:20px;border-radius:10px;margin:20px 0;font-size:13px;line-height:1.8}.quiz-feedback.good{background:#e9f6e9;color:#346445}.quiz-feedback.retry{background:#fff4df;color:#815c27}.quiz-feedback p{margin:8px 0 0}.course-quiz-result{text-align:center;background:#f0f7ff;border-radius:14px;padding:25px}.course-quiz-result canvas{width:105px;height:93px}.course-quiz-result h3{font-size:24px;margin:10px 0}.course-quiz-result p{font-size:13px;line-height:1.8}.course-quiz-result .quiz-score{font-size:21px;font-weight:700;color:#366e82}.course-corrections{margin:22px 0}.course-corrections>div{padding:15px 0;border-bottom:1px solid #e0e8e7;font-size:13px;line-height:1.8}.course-corrections p{color:var(--muted);margin:5px 0}.course-training-links{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin:20px 0}.course-training-links p{font-size:13px;line-height:1.8}.course-training-links button{text-align:left}.course-panel-actions button{font-size:12px}@media(max-width:1100px){header{height:auto;min-height:96px;padding-top:15px;padding-bottom:15px;gap:14px;flex-wrap:wrap}header nav{flex-wrap:wrap;gap:12px 18px;max-width:100%}.course-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:800px){.course-grid{grid-template-columns:repeat(2,1fr)}.course-welcome{grid-template-columns:1fr;gap:20px}}@media(max-width:700px){.courses{padding:35px 6% 40px}.course-welcome{padding:20px}.course-welcome .eyebrow{font-size:8px;letter-spacing:.5px}.course-welcome h3{font-size:19px}.course-grid{gap:12px}.course-card{padding:15px}.course-meta{font-size:8px;flex-wrap:wrap}.course-card h3{font-size:13px}.course-card p{font-size:10px}.course-tools{font-size:8px}.course-card-action{font-size:10px}.course-revision{grid-template-columns:1fr;padding:20px;gap:15px}.revision-task{gap:10px}.revision-task strong{font-size:11px}.course-dialog-body{padding:20px}.course-dialog-body>h2{font-size:25px}.course-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px}.course-tabs button{padding:11px 9px;font-size:11px}.course-lesson-step{grid-template-columns:1fr;gap:12px;margin:18px 0}.course-lesson-step h3{font-size:18px}.course-quiz-options legend{font-size:19px}.course-quiz-options label{padding:15px;font-size:13px}.course-memo{padding:20px}.course-quiz-result h3{font-size:21px}.course-panel-actions{flex-direction:column}.course-panel-actions button{justify-content:center}}
.progression{padding:50px 7% 55px;background:linear-gradient(150deg,#f0f9ee,#fff7e9 55%,#f6f3ff);border-top:1px solid #dce9d7;border-bottom:1px solid #ede0c6}.progression h2{color:#3f6756}.progression-intro{background:#ffffffba;border:1px solid #d6e4d1;border-radius:14px;padding:25px;margin:0 0 25px}.progression-intro>strong{font-size:18px}.progression-intro p{font-size:13px;line-height:1.9;color:var(--muted)}.progression-steps{display:flex;gap:10px;flex-wrap:wrap}.progression-steps span{font-size:11px;background:#dfeece;padding:10px 14px;border-radius:25px}.progression-steps span:nth-child(2){background:#ffedc3}.progression-steps span:nth-child(3){background:#deeafa}.progression-steps span:nth-child(4){background:#eddef9}#progressionCount{font-size:12px;color:#647868;margin:22px 0}.skill-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.skill-card{border:1px solid #d6e4d6;border-top:4px solid #8cb995;border-radius:13px;background:white;display:flex;flex-direction:column;text-align:left;align-items:flex-start;padding:20px;color:var(--ink);transition:transform .2s,box-shadow .2s}.skill-card:nth-child(3n+2){border-top-color:#b9a4cd}.skill-card:nth-child(3n){border-top-color:#d8ae74}.skill-card:hover{transform:translateY(-4px);box-shadow:0 8px 18px #29493412}.skill-category{background:#edf3e7;padding:5px 8px;font-size:9px;border-radius:5px;color:#5e7b57}.skill-card h3{font-size:15px;line-height:1.5;margin:13px 0 8px}.skill-card p{font-size:12px;line-height:1.8;color:var(--muted);margin-top:0}.skill-resources{font-size:10px;color:#788b6d;margin-top:auto}.skill-state{font-size:10px;background:#f5f1e8;color:#8e724c;padding:6px 9px;border-radius:15px;margin:12px 0}.skill-open{font-size:11px;color:#3d715e}.progression-disclaimer{font-size:10px;color:var(--muted);line-height:1.9;margin:25px 0 0}.progression-dialog-body{padding:30px}.progression-dialog-body>h2{font-size:27px}.progression-dialog-body>p{font-size:13px;line-height:1.8;color:var(--muted)}.progression-section-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin:25px 0 20px}.progression-section-head h3{font-size:18px}.progression-section-head button{font-size:11px;gap:10px;padding:12px 15px}.skill-examples{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.skill-example{background:#f5f9ef;border:1px solid #dce7d6;border-radius:10px;padding:20px}.skill-example:nth-child(2n){background:#fff8eb;border-color:#eadcba}.skill-example:last-child{grid-column:1/-1}.skill-example-question{font-size:13px;line-height:1.8;margin:13px 0;white-space:pre-line}.skill-example canvas{display:block;width:100%;height:auto;max-width:420px;margin:auto}.skill-example details{background:white;border-radius:7px;padding:12px;font-size:12px;line-height:1.8}.skill-example summary{cursor:pointer;font-weight:600;color:#48775e}.skill-example details>strong{display:block;margin-top:10px}.skill-example details p{margin-bottom:0}.skill-stages{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:20px 0 30px}.skill-stage{background:#fff;border:1px solid #dce4d8;border-radius:10px;padding:17px;display:flex;flex-direction:column;align-items:flex-start}.stage-number{background:#e9f2de;border-radius:50%;width:30px;height:30px;display:flex;align-items:center;justify-content:center;font-weight:700;color:#5b7d44}.skill-stage:nth-child(2) .stage-number{background:#ffedc0}.skill-stage:nth-child(3) .stage-number{background:#dae8f8}.skill-stage:nth-child(4) .stage-number{background:#eaddf5}.skill-stage h3{font-size:14px;line-height:1.6;margin:14px 0 8px}.skill-stage p{font-size:11px;color:var(--muted);line-height:1.8;flex:1}.skill-stage .btn{width:100%;font-size:10px;text-align:left;gap:5px;padding:10px;margin:5px 0}.skill-training{background:#eef5fb;border:1px solid #d6e2ec;border-radius:12px;padding:25px;margin:20px 0}.skill-training h3{font-size:18px;line-height:1.8;white-space:pre-line}.skill-training p{font-size:13px;line-height:1.8}.skill-training canvas{display:block;width:100%;max-width:520px;height:auto;background:white;border-radius:9px;margin:15px 0}.skill-answer-form{display:flex;gap:12px;align-items:flex-end;margin-top:20px}.skill-answer-form label{font-size:11px;display:flex;flex:1;flex-direction:column;gap:8px}.skill-answer-form input{border:1px solid #b7ccd2;padding:13px;border-radius:7px;background:white;width:100%;font-size:14px;min-width:0}.skill-feedback{background:white;border-radius:10px;padding:18px;margin:18px 0;border-left:4px solid #a6c4ad}.skill-feedback strong{font-size:14px;color:#45725a}.skill-feedback p{font-size:12px;margin:8px 0}.skill-manual-check{display:flex;gap:10px;flex-wrap:wrap}.skill-confirm{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.9;background:#fff6df;padding:15px;border-radius:9px}.skill-confirm input{margin-top:5px;accent-color:#659f77}.course-extra-skills{background:#f0f6e9;border:1px solid #dbe6d0;border-radius:12px;padding:20px;margin-bottom:20px}.course-extra-skills h3{font-size:17px;margin-top:0}.course-extra-skills .btn{display:flex;gap:10px;text-align:left;margin:10px 0;font-size:12px}.card-stage{display:block;font-size:9px;color:#687f6c;font-weight:400;line-height:1.7;margin-top:8px}button[hidden]{display:none!important}@media(max-width:1000px){.skill-stages{grid-template-columns:repeat(2,1fr)}.skill-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.progression{padding:35px 6% 40px}.progression-intro{padding:20px}.progression-steps{gap:7px}.progression-steps span{font-size:9px;padding:8px 11px}.skill-grid{grid-template-columns:repeat(2,1fr);gap:12px}.skill-card{padding:15px}.skill-card h3{font-size:12px}.skill-card p{font-size:10px}.skill-resources,.skill-state,.skill-open{font-size:9px}.progression-dialog-body{padding:20px}.progression-dialog-body>h2{font-size:24px}.progression-section-head{flex-direction:column;align-items:flex-start}.skill-examples{grid-template-columns:1fr}.skill-example:last-child{grid-column:auto}.skill-example{padding:17px}.skill-stage{padding:13px}.skill-stage h3{font-size:12px}.skill-stage p{font-size:10px}.skill-stage .btn{font-size:9px}.skill-training{padding:18px}.skill-training h3{font-size:16px}.skill-answer-form{flex-direction:column;align-items:stretch}.skill-training>.btn{font-size:11px}.skill-confirm{font-size:11px}}
header{height:auto;min-height:96px;gap:18px;flex-wrap:wrap;padding-top:16px;padding-bottom:16px}header nav{flex-wrap:wrap;column-gap:18px;row-gap:15px}

/* Homepage: illustrated, accessible guided introduction. */
.home-intro{gap:40px;align-items:center}.home-intro h1{font-size:clamp(38px,4vw,57px);line-height:1.12}.home-intro .hero-copy>p{max-width:550px;font-size:17px;line-height:1.75}.home-promises{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.home-promises span{padding:10px 14px;border-radius:12px;background:#ffdf72;color:#394027;font-weight:800;font-size:14px}.home-promises span+span{background:#c7b6f1;color:#3e3265}.home-demo{min-width:0;background:#fff;border:2px solid #293f49;border-radius:28px;box-shadow:10px 12px 0 #badfd2;transform:rotate(1deg);overflow:hidden}.demo-top{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:20px 22px;background:#ebf7f1;border-bottom:1px solid #d8e5dc;font-size:11px;letter-spacing:.6px;font-weight:800}.demo-top strong{background:#ffdf72;padding:8px 10px;border-radius:20px;letter-spacing:0;font-size:12px}.demo-stage{position:relative;min-height:392px;padding:25px 28px 20px}.home-demo #heroCompanion{position:absolute;width:75px;height:75px;right:14px;top:1px;z-index:2;animation:tourOwl 4s ease-in-out infinite;pointer-events:none}.demo-spark{position:absolute;left:15px;top:12px;color:#ef9a38;font-size:28px;animation:starTwinkle 4s infinite}.demo-scene{animation:tourEnter .55s ease both}.demo-scene[hidden]{display:none!important}.demo-illustration{height:185px;margin:0 0 20px;border-radius:18px;background:#f2efff;display:flex;align-items:center;justify-content:center;position:relative}.demo-scene>small{font-size:11px;font-weight:800;color:#925018;letter-spacing:1px}.demo-scene h2{font-size:23px;line-height:1.25;margin:10px 0}.demo-scene p{font-size:14px;line-height:1.65;margin:0 0 12px;color:#536871}.demo-scene>a{font-size:13px;font-weight:800;color:#254c43;text-decoration:underline;text-underline-offset:4px}.demo-levels{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:28px 24px 15px}.demo-levels>span{text-align:center;padding:10px 3px;border-radius:10px;background:white;box-shadow:0 3px 0 #d8cff0;font-weight:800;font-size:15px}.demo-levels>.selected{background:#ffc95b;animation:tourSelect 3s ease-in-out infinite}.demo-subjects{grid-column:1/-1;text-align:center;font-size:11px;font-weight:700}.demo-example{background:#fff0d9;padding:24px;gap:15px}.demo-book{font-size:43px}.demo-example>div{display:flex;flex-direction:column;gap:10px;font-size:12px}.demo-example b{font-size:15px}.demo-example strong{background:#bce4ca;border-radius:9px;padding:8px;font-size:16px}.demo-settings{background:#e7f3ff;display:grid;grid-template-columns:1fr 1fr;padding:27px 22px 14px;gap:9px}.demo-settings>div{background:#fff;padding:9px 12px;border-radius:9px;display:flex;flex-direction:column;gap:4px}.demo-settings span{font-size:10px;color:#64767e}.demo-settings b{font-size:13px}.demo-settings>strong{grid-column:1/-1;font-size:10px;text-align:center;color:#316787}.demo-print{background:#eaf6eb;gap:12px}.demo-sheet{background:white;box-shadow:4px 6px 0 #c9deca;width:155px;padding:15px;transform:rotate(-5deg);display:flex;flex-direction:column;gap:10px;animation:tourPaper 5s ease-in-out infinite}.demo-sheet small{font-size:6px}.demo-sheet b{font-size:14px}.demo-sheet span{font-size:6px}.demo-sheet i{font-style:normal;font-size:12px;border-bottom:1px dashed #becac2;padding-bottom:4px}.demo-sheet strong{font-size:8px;color:#597268}.demo-answer{background:#ffdf72;padding:14px;border-radius:14px;font-size:11px;line-height:2;transform:rotate(6deg)}.demo-answer b{font-size:18px}.demo-print-icon{position:absolute;bottom:12px;right:18px;font-size:29px}.demo-controls{padding:10px 24px;display:flex;justify-content:space-between;align-items:center;gap:10px}.demo-steps{display:flex;gap:8px}.demo-steps button{width:32px;height:32px;border:1px solid #ccd5d0;border-radius:50%;background:#fff;color:#34554b;font-weight:800;cursor:pointer}.demo-steps button[aria-pressed=true]{background:#304b42;color:#fff;border-color:#304b42}.demo-controls>#demoPlayback{background:transparent;border:0;text-decoration:underline;text-underline-offset:4px;color:#52665f;font-size:11px;cursor:pointer;padding:10px 0}.demo-caption{text-align:center;font-size:11px;color:#596f64;margin:0;padding:8px 12px 18px}.demo-controls button:focus-visible{outline:3px solid #be581e;outline-offset:4px}@keyframes tourEnter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes tourOwl{50%{transform:translateY(-6px) rotate(4deg)}}@keyframes tourSelect{50%{transform:scale(1.08)}}@keyframes tourPaper{50%{transform:rotate(-2deg) translateY(-4px)}}.home-demo.tour-paused *{animation-play-state:paused!important}@media(max-width:1000px){.home-intro{gap:28px}.demo-stage{padding:25px 20px 20px}.demo-top{padding:16px;font-size:10px}.demo-top strong{font-size:10px}.demo-example{padding:18px;gap:10px}}@media(max-width:700px){.home-intro{padding-top:36px;gap:28px}.home-demo{width:100%;max-width:470px;align-self:center;transform:none;box-shadow:6px 7px 0 #badfd2}.home-promises span{font-size:12px}.demo-stage{min-height:405px}.demo-scene h2{font-size:22px}.demo-controls{padding:10px 20px}.demo-top{gap:8px}.demo-illustration{height:185px}}@media(prefers-reduced-motion:reduce){.demo-scene,.home-demo *{animation:none!important}}

/* Original illustrations explain titles and introductory copy. */
h1>.content-illustration,h2>.content-illustration{display:block;width:156px;height:104px;object-fit:contain;margin:0 0 14px;filter:drop-shadow(0 5px 0 #203d480a)}h1>.content-illustration{width:126px;height:84px}h3>.content-illustration{display:block;width:102px;height:68px;object-fit:contain;margin:0 0 10px}p>.content-illustration{float:left;width:66px;height:44px;object-fit:contain;margin:1px 13px 5px 0}p.has-content-illustration:after{content:"";display:block;clear:both}.about h3>.content-illustration{width:150px;height:100px}.card h3>.content-illustration,.course-card h3>.content-illustration,.method-card h3>.content-illustration{width:90px;height:60px}dialog h2>.content-illustration{width:120px;height:80px}.home-intro{padding-top:38px}.home-intro .hero-copy>h1>.content-illustration{display:block;width:102px;height:68px}.home-intro .hero-copy>p>.content-illustration{width:84px;height:56px}.sectionhead{align-items:center}@media(max-width:700px){h2>.content-illustration{width:132px;height:88px}h3>.content-illustration{width:90px;height:60px}p>.content-illustration{width:60px;height:40px;margin-right:10px}.about h3>.content-illustration{width:132px;height:88px}}@media print{.content-illustration{display:none!important}}
.account-section{padding:65px 7%;background:linear-gradient(135deg,#edf5ff,#f4edff);border-top:1px solid #d9e2ef;scroll-margin-top:20px}.account-controls{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin:20px 0}.account-controls label{font-weight:800}.account-section select,.account-child-form input{padding:12px;border:1px solid #a8b9c5;background:white;border-radius:10px;font:inherit;max-width:100%}.account-section details>summary{cursor:pointer;padding:12px 0;font-weight:700}.account-child-form{display:flex;flex-wrap:wrap;gap:15px;align-items:end;background:#fff;padding:22px;border-radius:18px}.account-child-form label{display:flex;flex-direction:column;gap:8px}.account-overview{margin-top:25px;padding:25px;border-radius:24px;background:#fff;border:2px solid #bdacd9}.account-overview>strong{display:block;color:#406858}.account-overview progress{display:block;width:100%;height:24px;accent-color:#487d61;margin:16px 0}.account-overview p,.account-rule{font-size:14px;line-height:1.7}.account-subject{margin-top:35px}.account-subject>h3{font-size:24px}.account-route{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;position:relative}.account-unit{position:relative;padding:22px;background:#fff;border:2px solid #d4c9e6;border-radius:20px;min-width:0}.account-unit.is-validated{border-color:#70aa87;background:#f2fff5}.account-unit.is-started{border-color:#e0b46c}.account-unit-number{display:flex;width:36px;height:36px;border-radius:50%;background:#dfd3f5;align-items:center;justify-content:center;font-weight:800;margin-bottom:12px}.is-validated .account-unit-number{background:#467f5f;color:white}.account-unit h3{font-size:20px}.account-unit-status{display:inline-block;padding:7px 10px;border-radius:10px;background:#eee9f6;font-size:12px;font-weight:800}.is-validated .account-unit-status{background:#cdecd5}.account-unit p{font-size:13px}.account-unit small{display:block;line-height:1.5}.account-unit-actions{display:flex;flex-direction:column;gap:10px;margin-top:16px}.account-unit-actions .btn{font-size:12px;padding:12px;justify-content:center}.account-skill-link{display:block;padding:9px 0;text-align:left;color:#28594e;background:none;border:0;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font:inherit;font-size:12px}.account-coverage,.account-history,.account-delete{padding:20px;background:#fff;border-radius:18px;margin-top:25px}.account-coverage p,.account-delete p{font-size:14px;line-height:1.7}.account-history li{padding:8px 0;font-size:13px}.account-delete label{display:block;margin:10px 0}.account-delete input{margin-right:10px}#accountQuizDialog{width:min(760px,94vw);max-height:90vh;border:0;border-radius:24px;padding:35px;overflow-y:auto}#accountQuizDialog::backdrop{background:#223b4acc}#accountQuizContent h2{font-size:28px;line-height:1.25}#accountQuizClose{float:right;position:sticky;top:0;z-index:2;background:#fff;border:1px solid #bbc9c1;border-radius:50%;width:36px;height:36px;cursor:pointer}.account-question{padding:20px;margin:25px 0;border:1px solid #c9d8d0;border-radius:16px;min-width:0}.account-question legend{font-weight:800;white-space:pre-line;padding:0 8px}.account-question small{display:block;color:#5e756d;margin-bottom:12px}.account-question canvas{max-width:100%;height:auto;display:block}.account-choice{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid #d4d9e6;border-radius:10px;margin:8px 0;background:#f9f7ff;cursor:pointer}.account-choice input{accent-color:#477d60;width:18px;height:18px;flex-shrink:0}.account-question input[type=text]{max-width:100%;padding:10px;border-radius:8px;border:1px solid #a8b9b1;font:inherit}.account-correction{border-bottom:1px solid #dce6df;padding:14px 0}.account-correction summary{cursor:pointer;white-space:pre-line;font-weight:700}.account-section button:disabled{opacity:.55;cursor:default}@media(max-width:1000px){.account-route{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.account-section{padding:40px 6%}.account-route{grid-template-columns:1fr}.account-controls{align-items:stretch;flex-direction:column}.account-controls select{width:100%;margin-top:10px}.account-child-form{flex-direction:column;align-items:stretch}#accountQuizDialog{padding:22px}.account-question{padding:14px}.account-overview{padding:20px}}
.recovery-code{display:block;word-break:break-all;background:#f2edf9;border:2px dashed #ac95ce;border-radius:15px;padding:20px;margin:20px 0;font-size:18px;line-height:1.8;user-select:all}#accountQuizContent>.btn{margin:8px 8px 8px 0}.account-child-form>p[role=alert]{flex-basis:100%;color:#9c382a;margin:0}
.preview-navigation{display:flex;align-items:center;justify-content:center;gap:18px;margin:0 0 18px;padding:12px;background:#fff;border-radius:14px;position:sticky;top:0;z-index:2}.preview-navigation .btn{padding:8px 16px}.preview-navigation button:disabled{opacity:.4;cursor:default}.quiz-passage{background:#fff7e7;border-left:4px solid #e7bb65;padding:18px;line-height:1.8;white-space:pre-line;font-family:Georgia,serif}.difficulty-guide{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0 26px}.difficulty-guide article{background:#fff;padding:18px;border:1px solid #d4e3e8;border-radius:18px}.difficulty-guide strong{display:block;color:#285966;margin-bottom:8px}.difficulty-guide p{font-size:14px;line-height:1.65;margin:0}.skill-example-question{white-space:pre-line}.quiz-passage .content-illustration{width:48px;height:48px} @media(max-width:700px){.difficulty-guide{grid-template-columns:1fr}.preview-navigation{gap:10px;font-size:12px}}

.preview{flex-direction:column;align-items:center;min-width:0}.preview-navigation{width:100%;box-sizing:border-box;flex-shrink:0}.preview canvas{max-width:100%;height:auto}.modalbody{min-width:0}

.preview-navigation .btn{width:auto;flex:0 0 auto}.preview-navigation span{white-space:nowrap;flex:0 1 auto}

.brand{gap:10px;letter-spacing:-.8px;color:#244e73}.brand-mark{width:44px;height:44px;flex-shrink:0;object-fit:contain}.brand-wordmark{font-family:Manrope,sans-serif;font-size:21px;font-weight:800;line-height:1.12;white-space:nowrap}.brand-wordmark strong{color:#d97560;font-weight:800}footer>a:first-child{display:inline-flex;align-items:center;gap:10px}footer .brand-mark{width:38px;height:38px}@media(max-width:600px){.brand-mark{width:36px;height:36px}.brand-wordmark{font-size:18px}}
.feedback-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:#fff6e8;color:#8a5b2a;border:1px solid #eddbc4;border-radius:20px;font-size:12px;font-weight:600;padding:9px 12px;cursor:pointer;margin-top:12px}.feedback-btn:hover{background:#ffe9c7}.feedback-item{display:flex;flex-direction:column;gap:0;align-items:stretch}.feedback-item>.method-card,.feedback-item>.course-card{width:100%;flex:1}.feedback-item>.feedback-btn{align-self:flex-start;margin:8px 8px 12px}.feedback-dialog{max-width:560px;width:calc(100% - 30px);padding:35px;border:0;border-radius:22px;color:#244551}.feedback-dialog h2{font-size:28px}.feedback-dialog label{display:block;margin:15px 0 8px;line-height:1.6}.feedback-dialog select,.feedback-dialog textarea{width:100%;padding:12px;border:1px solid #c9dce4;border-radius:10px;font:inherit}.feedback-dialog small{display:block;color:#6d7f87;line-height:1.6;margin:16px 0}.feedback-stars{border:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.feedback-stars legend{padding:0 0 10px}.feedback-stars label{margin:0}.feedback-stars input{position:absolute;opacity:0;width:1px;height:1px}.feedback-stars span{display:block;border:1px solid #d5e0e5;border-radius:10px;padding:9px 11px;cursor:pointer}.feedback-stars input:checked+span{background:#ffe1a1;border-color:#b47a23;color:#744a0b}.feedback-stars input:focus-visible+span{outline:3px solid #286b7a}.feedback-honey{position:absolute;left:-9999px}.dialog-feedback{margin:22px}#sheetDialog .dialog-feedback{margin:16px 0}.uploaded-library{padding:45px 7%;background:#edf6f8}.uploaded-library>.toolbar{margin:22px 0}.uploaded-library input,.uploaded-library select{padding:12px;border:1px solid #bfd4dc;border-radius:9px;min-width:0}.uploaded-library input{flex:1}.uploaded-cover{min-height:140px;display:block;width:100%;border:0;background:linear-gradient(130deg,#ffe6b3,#e0f0e8);color:#285966;font-size:23px;font-weight:700}.uploaded-card p{font-size:13px;line-height:1.7;color:#647780}.uploaded-card label{display:block;font-size:12px;margin-top:18px}.uploaded-card select{display:block;width:100%;margin-top:7px}.uploaded-dialog{max-width:1050px;width:calc(100% - 24px);border:0;border-radius:20px;padding:35px}.uploaded-preview{width:100%;height:65vh;border:1px solid #d3e2e8;border-radius:12px;margin-top:22px}.uploaded-dialog h2{padding-right:25px;font-size:28px}@media(max-width:600px){.feedback-dialog,.uploaded-dialog{padding:25px}.uploaded-library .toolbar{flex-direction:column}.feedback-stars span{padding:8px}.uploaded-preview{height:55vh}}

.feedback-item>.skill-card{width:100%;flex:1}
.feedback-dialog>.dialog-close,.uploaded-dialog>.dialog-close{position:absolute;right:14px;top:12px;width:40px;height:40px;border:0;border-radius:50%;background:#edf4f6;color:#285966;font-size:24px;line-height:1;display:flex;align-items:center;justify-content:center;z-index:3}
