@font-face{font-family:Mali;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/mali-thai-700-normal-DjdebB47.woff2) format("woff2"),url(/assets/mali-thai-700-normal-HU8A-eti.woff) format("woff")}@font-face{font-family:Mali;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/mali-latin-700-normal-UA1FHiAM.woff2) format("woff2"),url(/assets/mali-latin-700-normal-DHEtm6Un.woff) format("woff")}@font-face{font-family:Mitr;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/mitr-thai-400-normal-CXWaAdVj.woff2) format("woff2"),url(/assets/mitr-thai-400-normal-CS4Do6aM.woff) format("woff")}@font-face{font-family:Mitr;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/mitr-thai-500-normal-CVdBrEVH.woff2) format("woff2"),url(/assets/mitr-thai-500-normal-CW_B5D-i.woff) format("woff")}@font-face{font-family:Mitr;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/mitr-thai-600-normal-DFYMNGrH.woff2) format("woff2"),url(/assets/mitr-thai-600-normal-DvC8ywyI.woff) format("woff")}@font-face{font-family:Mitr;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/mitr-latin-400-normal-CwbkLQ4a.woff2) format("woff2"),url(/assets/mitr-latin-400-normal-Cb18vPmZ.woff) format("woff")}@font-face{font-family:Mitr;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/mitr-latin-500-normal-BmClOow2.woff2) format("woff2"),url(/assets/mitr-latin-500-normal-B4JOhzAi.woff) format("woff")}@font-face{font-family:Mitr;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/mitr-latin-600-normal-kSdUWQ3Q.woff2) format("woff2"),url(/assets/mitr-latin-600-normal-CCDPiDpK.woff) format("woff")}.footer-ad{width:calc(100% - 32px);max-width:1000px;margin:40px auto 32px;padding-top:20px;border-top:1px solid #e9e4ed;box-sizing:border-box;text-align:center;clear:both}.footer-ad-label{display:block;font-size:11px;color:#746d7d;letter-spacing:.03em;margin-bottom:10px}.footer-ad-slot{width:100%;min-height:110px;border:1px dashed #d6d0de;border-radius:14px;background:#faf9fc;display:block;box-sizing:border-box;color:#81798a;font-size:13px}.app.home-v2 .footer-ad{margin-top:48px}@media(max-width:600px){.footer-ad{margin-top:32px;margin-bottom:24px}.footer-ad-slot{min-height:100px}}.games-page,.single-game{max-width:1200px;margin:auto}.games-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:36px 44px;border:3px solid white;border-radius:38px;background:linear-gradient(120deg,#e1f8ff,#f0e5ff 55%,#ffe2ef);margin-bottom:32px}.games-hero h1{font-size:38px;line-height:1.5;margin:12px 0}.games-hero img{width:180px;height:200px;object-fit:contain}.games-eyebrow{color:#8a3181;font-weight:600}.games-note{display:inline-block;margin-top:12px;font-size:14px}.games-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.game-card{background:#fff;border:2px solid white;border-radius:30px;overflow:hidden;color:#46266b;box-shadow:0 7px #e9def1;transition:transform .15s,box-shadow .15s}.game-card:hover{transform:translateY(-4px);box-shadow:0 11px #e9def1}.game-cover{height:215px;background:var(--cover);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.game-cover:before,.game-cover:after{content:"";position:absolute;width:160px;height:160px;border-radius:50%;background:#ffffff60;left:-55px;bottom:-75px}.game-cover:after{inset:-75px -60px auto auto}.game-cover>.animal{width:130px;height:130px;position:absolute;right:18px;bottom:28px}.cover-symbol{font-size:65px;position:absolute;left:32px;top:45px;transform:rotate(-12deg)}.cover-art{position:absolute;bottom:12px;left:22px;font-size:25px;letter-spacing:6px;background:#ffffffbd;border-radius:16px;padding:5px 14px}.game-number{position:absolute;top:14px;left:18px;font-size:13px;font-weight:600;background:#fff;border-radius:12px;padding:4px 10px}.game-card-copy{padding:22px}.game-card h2{font-size:23px;margin:8px 0}.game-card h3{font:inherit;font-weight:500;margin:6px 0}.game-card p{font-size:14px;line-height:1.8;color:#725b83;min-height:50px}.game-age{font-size:12px;color:#794b86}.game-skill{display:block;font-size:12px;color:#745191;margin:16px 0}.game-play{display:flex;align-items:center;justify-content:space-between;background:#f3eaff;padding:12px 16px;border-radius:15px;color:#743db2}.games-page>.account-hint{margin-top:32px}.game-heading{text-align:center;margin:24px 0}.game-heading h1{font-size:36px;margin:12px 0}.game-stage{border:2px solid #efdef8;border-radius:32px;background:#fff;text-align:center;padding:30px;max-width:850px;margin:auto}.game-stage h2{font-size:25px;margin:12px 0 18px}.game-stage>p{line-height:1.8}.game-stage>.button{margin-top:18px}.game-round{color:#80628f;font-size:14px}.game-question-art{font-size:70px;line-height:1.7;margin:20px auto;max-width:100%;overflow-wrap:anywhere}.game-question-art.pattern-art{font-size:clamp(27px,5vw,48px)}.game-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0}.game-options .answer-card{font-size:20px;min-height:105px;padding:18px;overflow-wrap:anywhere}.game-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:20px 0}.game-feedback{background:#e5f7e8;border-radius:18px;padding:16px;margin:20px 0}.game-finish img{display:block;width:180px;height:190px;object-fit:contain;margin:auto}.coding-board{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-width:360px;margin:24px auto}.coding-cell{aspect-ratio:1;background:#edf8e4;border:2px solid #d9eac9;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:45px}.coding-cell.visited{background:#fff0b5;border-color:#f3ca50}.coding-cell img{width:75%;height:85%;object-fit:contain;mix-blend-mode:multiply}.code-sequence{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;min-height:65px;background:#f6efff;border-radius:18px;padding:14px;align-items:center}.code-sequence span{background:#fff;border-radius:8px;padding:4px 9px;font-size:24px}.arrow-command{font-size:28px;min-width:64px}.memory-board{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;max-width:520px;margin:24px auto}.memory-card{aspect-ratio:1;border-radius:20px;border:3px solid #ceacef;background:#f3e8ff;color:#8950c7;font-size:42px}.memory-card.matched{background:#e3f8e7;border-color:#91cca0;opacity:1}.sequence-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0;list-style:none;counter-reset:step}.sequence-slots li{counter-increment:step;background:#f4edff;border:2px dashed #c5a5e0;border-radius:18px;padding:18px 8px;min-height:95px;overflow-wrap:anywhere}.sequence-slots li:before{content:counter(step);display:block;font-size:12px;color:#81618d;margin-bottom:8px}.single-game>.account-hint{text-align:center;margin-top:24px}.game-stage button:disabled{cursor:default}.game-stage button:focus-visible,.game-card:focus-visible{outline:3px solid #5f3687;outline-offset:4px}@media(max-width:950px){.games-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.games-hero{padding:28px}.games-hero h1{font-size:30px}.games-hero img{width:140px}}@media(max-width:600px){.games-hero{padding:24px 20px;gap:8px}.games-hero h1{font-size:25px}.games-hero img{width:90px;height:140px}.games-eyebrow{font-size:12px}.games-hero p,.games-note{font-size:13px}.games-grid{grid-template-columns:1fr;gap:24px}.game-cover{height:210px}.game-cover>.animal{right:40px;width:140px;height:140px}.cover-symbol{left:45px}.game-stage{padding:22px 14px}.game-heading h1{font-size:29px}.game-stage h2{font-size:22px}.game-options{gap:8px}.game-options .answer-card{padding:12px 5px;font-size:16px;min-height:85px}.memory-board{gap:8px}.memory-card{font-size:34px;border-radius:15px}.coding-board{max-width:290px}.game-question-art{font-size:48px}.sequence-slots{gap:8px}.sequence-slots li{font-size:14px}}@media(prefers-reduced-motion:reduce){.game-card{transition:none}.game-card:hover{transform:none}}.app .site-header #site-nav .support-nav{background:#ffe074;color:#502477;text-decoration:none}.app .site-header #site-nav .support-nav:hover,.app .site-header #site-nav .support-nav.active{background:#ffd34e;color:#402369}@media(max-width:1250px){.app .site-header{position:relative}.app .site-header .menu-toggle{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:48px;height:48px;background:#ffeaf4;color:#6b3197;border-radius:16px}.app .site-header #site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;padding:12px 18px;border-bottom:2px solid #f8d8eb;border-radius:0 0 24px 24px;box-shadow:0 8px 16px #57317514;z-index:100}.app .site-header #site-nav.open{display:flex;flex-direction:column;align-items:stretch;font-size:16px;gap:4px}.app .site-header #site-nav a{padding:16px}}:root{font-family:Tahoma,Segoe UI,sans-serif;color:#493259;background:#fff8ed;font-synthesis:none;--purple:#7947ce;--ink:#552786;--pink:#ea3d8f;--yellow:#fff0ad;--aqua:#cef3ef;--blush:#ffdeed;--radius:32px;--content:1170px;--shadow:#c4acd94a}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}button:disabled{cursor:not-allowed}img{max-width:100%}:focus-visible{outline:3px solid #392360;outline-offset:5px}h1,h2,h3,p{margin:0}h1{color:var(--ink);font-size:38px;line-height:1.45}h2{color:var(--ink);font-size:22px;line-height:1.5}p{line-height:1.85}button{border:0}a{text-decoration:none}.skip-link{position:fixed;top:-100px;left:12px;z-index:100;background:#fff;padding:16px}.skip-link:focus{top:8px}body{background-image:radial-gradient(#f8dfeb 2px,transparent 2px);background-size:32px 32px}.site-header{height:88px;padding:0 48px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:4px solid #f5c0e6;border-radius:0 0 30px 30px;gap:24px;position:relative;z-index:3}.brand{display:flex;align-items:center;gap:9px;color:#7439ca;font-size:32px;font-weight:800;letter-spacing:-1.3px;flex-shrink:0}.brand svg{width:28px;height:28px}.brand em{font-style:normal;color:#e8368a}.site-header nav{display:flex;align-items:center;gap:20px;font-size:14px}.site-header nav a{padding:16px 0}.site-header nav a:hover,.site-header nav a.active{color:var(--purple);text-decoration:underline;text-underline-offset:7px}.header-balance{width:160px}.menu-toggle{display:none}main{max-width:var(--content);margin:38px auto 90px;min-height:calc(100vh - 260px)}footer{min-height:58px;padding:20px 40px;display:flex;justify-content:space-between;gap:20px;font-size:12px;background:#fff;color:#705886}.hero{border:5px solid white;border-radius:46px;box-shadow:0 9px 0 var(--shadow);background:url(/assets/mirei-garden.png) center bottom/cover;display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:36px;align-items:center;min-height:510px}.hero h1{font-size:43px;line-height:1.4;margin:24px 0 18px;letter-spacing:-.5px}.hero-tag{display:inline-block;background:#fff6b9;border:2px solid #ffcf58;border-radius:24px;padding:9px 15px;color:#77520e;font-size:14px;font-weight:700;transform:rotate(-2deg)}.lead{font-size:19px;line-height:1.85}.hero .lead{padding:13px 17px;background:#ffffffdb;border-radius:18px}.hero-mirei{width:100%;height:430px;object-fit:contain;object-position:center bottom}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.button{min-height:60px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 24px;background:var(--purple);color:#fff;font-size:16px;font-weight:700;border:2px solid var(--purple);border-radius:24px;box-shadow:0 5px #583096;transition:transform .18s,box-shadow .18s;text-align:center}.button:hover{transform:translateY(-2px);box-shadow:0 7px #583096}.button:active{transform:translateY(3px);box-shadow:0 2px #583096}.button.secondary{background:#fff;border-color:#d0acf4;color:#6337a5;box-shadow:0 5px #d3b8e7}.button.secondary:hover{box-shadow:0 7px #d3b8e7}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}.candy-card{border:3px solid white;border-radius:32px;background:var(--yellow);box-shadow:0 7px #ebd57b;text-align:center;padding:26px 22px 40px}.candy-card:nth-child(3n+2){background:var(--aqua);box-shadow:0 7px #a4dcd7}.candy-card:nth-child(3n){background:var(--blush);box-shadow:0 7px #eeb3ce}.candy-card h2{margin:8px 0}.candy-card p{font-size:16px}.animal{display:inline-block;width:124px;height:124px;border-radius:28px;background-image:url(/assets/mirei-animal-friends.png);background-size:300% 200%;background-repeat:no-repeat;flex-shrink:0;vertical-align:middle}.animal.bunny{background-position:0 0}.animal.cat{background-position:50% 0}.animal.dino{background-position:100% 0}.animal.lion{background-position:0 100%}.animal.elephant{background-position:50% 100%}.animal.penguin{background-position:100% 100%}.page-heading{margin-bottom:24px}.page-heading p{margin-top:8px}.filters{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0}.chip{min-height:56px;padding:12px 22px;border-radius:24px;background:#fff;border:2px solid #dcc5ed;color:#60378b;font-weight:700;font-size:16px}.chip.selected{background:var(--purple);color:#fff;border-color:var(--purple)}.chip:hover{box-shadow:0 3px #d7c1e6}.course-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.course-card{padding:32px}.course-card .animal{width:136px;height:136px}.course-card h2{font-size:26px}.course-card .button{display:flex;margin:24px auto 0;max-width:250px}.age-label{font-weight:700;color:#684197;font-size:16px;margin-top:16px}.course-meta{display:flex;gap:24px;justify-content:center;margin:16px 0;color:#593d70}.lesson-status{display:inline-flex;gap:6px;align-items:center;border-radius:18px;padding:7px 11px;font-size:13px;color:#655477;background:#f1e8f8;white-space:nowrap}.lesson-status.published{background:#d5f4e0;color:#23643e}.lesson-status.archived{background:#ece8ee;color:#5b5163}.curriculum-note{margin:32px 0;text-align:center;font-size:14px;color:#715d7f}.back-link{display:inline-flex;align-items:center;gap:10px;min-height:48px;color:#673990;font-size:15px;font-weight:700}.level-intro{margin:20px 0 32px;padding:28px 34px;background:#f1e4fb;border:3px solid white;border-radius:32px;display:flex;justify-content:space-between;align-items:center;gap:24px}.level-intro h1{margin:6px 0}.level-intro .age-label{margin:0}.unit-list{display:grid;gap:18px}.unit{background:#fff;border:2px solid #ebdcef;border-radius:26px;overflow:hidden;box-shadow:0 4px #eee1eb}.unit-toggle{width:100%;display:flex;align-items:center;gap:22px;padding:16px 24px;text-align:left;color:var(--ink);background:#fff9de;min-height:110px}.unit:nth-child(3n+2) .unit-toggle{background:#e4f8f3}.unit:nth-child(3n) .unit-toggle{background:#ffe9f1}.unit-toggle .animal{width:70px;height:70px;border-radius:20px}.unit-number{font-size:24px;font-weight:700;color:#8d64a6;width:35px}.unit-heading{display:flex;flex-direction:column;gap:6px;flex:1}.unit-title{font-size:21px;font-weight:700}.unit-caption{font-size:14px;color:#765e87}.chevron{transition:transform .2s}.expanded .chevron{transform:rotate(180deg)}.unit-objective{padding:22px 26px 10px;color:#715d7f}.lesson-list{padding:6px 20px 22px;display:grid;gap:10px}.lesson-row{display:flex;align-items:center;gap:16px;padding:18px;border-radius:18px;border:1px solid #e8dcef;min-height:80px}.lesson-row:hover{background:#fbf4ff;border-color:#b389d6}.lesson-index{width:38px;height:38px;border-radius:50%;background:#f2e8ff;display:grid;place-items:center;color:var(--purple)}.lesson-copy{flex:1;min-width:0}.lesson-copy strong{display:block;font-size:17px}.lesson-copy>span{display:flex;align-items:center;gap:6px;font-size:13px;color:#796987;margin-top:6px}.state-panel{text-align:center;padding:54px 24px;background:#fff;border:3px solid #f0e1f5;border-radius:36px;margin:60px auto;max-width:740px}.state-panel h1{font-size:30px;margin:24px 0 16px}.state-panel p{margin:16px auto 26px;max-width:510px}.info-page{text-align:center;max-width:1000px;margin:auto}.info-page h1{margin:20px 0 10px}.reading-panel{background:#fff;border:3px solid #f0e1f5;border-radius:30px;padding:35px 45px;text-align:left;margin:30px 0}.reading-panel h2{margin:24px 0 12px}.reading-panel h2:first-child{margin-top:0}.friends-line{display:flex;flex-wrap:wrap;gap:24px;justify-content:center}.friends-line figure{margin:10px 0;text-align:center}.friends-line .animal{width:100px;height:100px}.friends-line figcaption{margin-top:8px;font-size:14px}.notice{text-align:center;padding:40px}@media(min-width:1500px){main{margin-top:48px}}@media(max-width:1250px){main{margin-left:32px;margin-right:32px}.hero{padding:30px}.hero h1{font-size:38px}.header-balance{width:60px}}@media(max-width:900px){.site-header{padding:0 26px}.header-balance{display:none}.hero{gap:0}.hero h1{font-size:32px}.hero-mirei{height:370px}.hero .lead{font-size:17px}.desktop-break{display:none}.feature-grid{gap:14px}.candy-card{padding:24px 16px 30px}.candy-card h2{font-size:19px}.feature-grid p{font-size:14px}.button{padding:13px 18px}.site-header nav{gap:14px;font-size:13px}}@media(max-width:600px){.site-header{height:74px;padding:0 18px;gap:10px;border-radius:0 0 26px 26px}.brand{font-size:26px;gap:5px}.brand svg{width:24px;height:24px}.menu-toggle{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:#f5eafb;color:#7040a5;border-radius:16px}.site-header nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;padding:12px 22px 22px;border-bottom:3px solid #ebc5e8;border-radius:0 0 24px 24px;box-shadow:0 8px 16px #57317514}.site-header nav.open{display:flex;flex-direction:column;align-items:stretch;font-size:16px;gap:0}.site-header nav a{padding:16px}main{margin:24px 16px 64px}.hero{grid-template-columns:1fr;border-radius:32px;padding:24px 20px 18px;background-position:38% bottom;background-size:auto 100%;gap:16px}.hero h1{font-size:29px;line-height:1.45;margin:24px 0 20px;letter-spacing:-.5px}.hero-tag{font-size:13px;padding:9px 12px}.hero .lead{font-size:17px;padding:12px;line-height:1.9}.hero-mirei{height:260px;width:100%;max-width:340px;margin:0 auto}.actions{gap:10px;margin-top:22px}.button{min-height:58px;padding:14px 19px;font-size:15px;border-radius:22px}.feature-grid{grid-template-columns:1fr;gap:22px;margin-top:30px}.candy-card{padding:25px 20px 40px}.feature-grid h2{font-size:21px}.feature-grid p{font-size:16px}.page-heading h1{font-size:29px}.page-heading .lead{font-size:17px}.filters{gap:8px;margin:22px 0}.chip{padding:10px 16px;font-size:14px}.course-grid{grid-template-columns:1fr;gap:24px}.course-card h2{font-size:26px}.level-intro{padding:22px;gap:12px}.level-intro .animal{width:74px;height:74px;border-radius:20px}.level-intro h1{font-size:27px;overflow-wrap:anywhere}.level-intro p{font-size:14px}.unit-toggle{padding:15px 14px;gap:12px}.unit-toggle .animal{width:56px;height:56px;border-radius:16px}.unit-number{font-size:18px;width:23px}.unit-title{font-size:17px}.unit-caption{font-size:12px}.unit-objective{padding:20px;font-size:14px}.lesson-list{padding:5px 10px 15px}.lesson-row{padding:14px 10px;gap:10px;flex-wrap:wrap}.lesson-copy strong{font-size:15px}.lesson-index{width:30px;height:30px}.lesson-status{font-size:12px;padding:6px 8px}.lesson-row .lesson-status{margin-left:40px}.lesson-copy{min-width:180px}.state-panel{padding:30px 20px;margin:32px auto}.state-panel h1{font-size:26px}.info-page h1{font-size:29px}.info-page .lead{font-size:17px}.reading-panel{padding:24px}.reading-panel h2{font-size:21px}.friends-line{gap:16px}.friends-line .animal{width:80px;height:80px}footer{padding:22px 20px;font-size:11px;gap:12px;flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.brand-image{display:flex;flex-direction:column;align-items:center;flex-shrink:0;width:250px;line-height:1}.wordmark-window{width:250px;height:54px;overflow:hidden;display:block}.wordmark-window img{display:block;width:250px;height:auto;max-width:none;transform:translateY(-13px)}.brand-tagline{display:flex;align-items:center;gap:8px;font:400 12px/1.2 Mitr,sans-serif;color:#7345af;white-space:nowrap}.brand-tagline svg{width:9px;height:9px;fill:#f454a2;stroke:none}.home-v2{background:#fff;color:#402369;min-height:100vh;font-family:Mitr,Tahoma,sans-serif}.home-v2 .site-header{height:90px;padding:0 5%;border:0;border-radius:0;background:#fff;max-width:1800px;margin:auto}.home-v2 .brand-image{width:320px}.home-v2 .wordmark-window{width:320px;height:65px}.home-v2 .wordmark-window img{width:320px;transform:translateY(-21px)}.home-v2 .brand-tagline{font-size:14px;gap:10px}.home-v2 .site-header nav{gap:7px;font-size:14px;font-weight:400}.home-v2 .site-header nav a{padding:12px 20px;border-radius:26px;white-space:nowrap}.home-v2 .site-header nav a.active{background:#ffe7f2;color:#d9287e;text-decoration:none}.home-v2 .site-header nav a:hover{background:#fff2f8;text-decoration:none}.home-v2 main{max-width:1800px;margin:0 auto 24px;padding:0 8px;min-height:0}.storybook-hero{position:relative;isolation:isolate;min-height:0;aspect-ratio:2.4;border-radius:28px;overflow:hidden;background:#bceaff url(/assets/mireiland-hero-v2.png) center/cover no-repeat}.storybook-copy{position:relative;z-index:1;margin-left:11%;padding-top:4.6%;max-width:45%}.storybook-copy h1{font-family:Mitr,Tahoma,sans-serif;font-size:clamp(36px,4.45vw,70px);font-weight:600;line-height:1.17;letter-spacing:-1.9px;color:#3e1767;white-space:nowrap;text-shadow:0 2px #ffffff50}.hero-heart{width:.7em;height:.7em;vertical-align:middle;fill:#ff65a6;stroke:#fff;stroke-width:1.5px;filter:drop-shadow(0 2px 0 #f64491)}.storybook-copy p{font-size:clamp(18px,1.7vw,27px);font-weight:400;line-height:1.45;margin:14px 0 22px;color:#472570;white-space:nowrap;letter-spacing:-.3px}.storybook-copy .actions{gap:16px;margin:0}.storybook-copy .button{font-family:Mitr,sans-serif;font-weight:500;font-size:clamp(19px,1.8vw,28px);min-height:66px;padding:14px 30px;gap:15px;border:0;border-radius:25px;background:#9355d3;box-shadow:none;color:#fff;transition:transform .18s,background-color .18s}.storybook-copy .button svg{width:25px;height:25px;stroke-width:4px}.storybook-copy .button.secondary{background:#fff;color:#7640b6;box-shadow:none}.storybook-copy .button:hover{transform:translateY(-3px);background:#8244c5;box-shadow:0 5px 12px #7640b628}.storybook-copy .button.secondary:hover{background:#fff5fc}.sky-note{position:absolute;z-index:0;color:#4ca7da;font:400 clamp(16px,1.45vw,24px)/1.1 "Mitr",sans-serif;transform:rotate(-13deg);text-align:center}.left-note{left:2.9%;top:8%}.right-note{right:16%;top:13%;font-size:clamp(14px,1.3vw,22px);transform:rotate(-10deg)}.storybook-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 6px 0}.storybook-card{position:relative;isolation:isolate;overflow:hidden;min-height:250px;border-radius:34px;display:flex;align-items:center;justify-content:flex-end;padding:22px 16px;background:radial-gradient(ellipse at 60% 45%,#fffad3,#fff3a5)}.storybook-card.little{background:radial-gradient(ellipse at 60% 45%,#dff,#a6f1fa)}.storybook-card.stars{background:radial-gradient(ellipse at 60% 45%,#ffeaf3,#ffd2e3)}.friend-art{position:absolute;z-index:-1;bottom:0;left:0;width:54%;aspect-ratio:1;background-image:url(/assets/mireiland-friends-v2.png);background-size:300% 100%;background-repeat:no-repeat}.friend-bunny{background-position:0 0}.friend-cat{background-position:50% 0}.friend-dino{background-position:100% 0}.storybook-card>div{width:51%;text-align:center}.storybook-card h2{font-family:Mitr,Tahoma,sans-serif;font-size:clamp(24px,2.25vw,36px);font-weight:600;line-height:1.3;color:#f48a00;white-space:nowrap;letter-spacing:-1.1px;-webkit-text-stroke:4px white;paint-order:stroke fill}.storybook-card.little h2{color:#168fce}.storybook-card.stars h2{color:#ed387a}.storybook-card p{font-size:clamp(16px,1.45vw,23px);line-height:1.4;margin-top:10px;color:#492b72;font-weight:400}.card-heart{position:absolute;width:34px;height:34px;fill:#ff6da6;stroke:#fff;stroke-width:2;left:5%;top:47%;transform:rotate(-20deg)}.stars .card-heart{left:43%;top:15%;transform:rotate(12deg)}.home-v2 footer{font-family:Mitr,sans-serif;color:#83658f;padding-top:20px}@media(min-width:1800px){.storybook-copy h1{font-size:78px}.storybook-card{min-height:300px}}@media(max-width:1150px){.home-v2 .site-header{padding:0 3%}.home-v2 .brand-image{width:260px}.home-v2 .wordmark-window{width:260px;height:55px}.home-v2 .wordmark-window img{width:260px;transform:translateY(-16px)}.home-v2 .brand-tagline{font-size:12px}.home-v2 .site-header nav a{padding:12px 14px}.storybook-copy .button{min-height:56px;padding:13px 22px;gap:10px}.storybook-copy p{margin:12px 0 18px}.storybook-card{min-height:210px;padding:16px 10px}.storybook-card h2{font-size:26px}.storybook-card p{font-size:17px}}@media(max-width:850px){.home-v2 .site-header nav{gap:0;font-size:12px}.home-v2 .site-header nav a{padding:12px}.home-v2 .brand-image{width:220px}.home-v2 .wordmark-window{width:220px;height:47px}.home-v2 .wordmark-window img{width:220px;transform:translateY(-13px)}.home-v2 .brand-tagline{font-size:10px;gap:6px}.storybook-copy{margin-left:8%;padding-top:5%;max-width:50%}.storybook-copy h1{font-size:35px;letter-spacing:-1px}.storybook-copy p{font-size:16px;line-height:1.5;margin:10px 0 16px}.storybook-copy .button{font-size:18px;min-height:54px;padding:12px 18px}.storybook-copy .actions{gap:10px}.sky-note{display:none}.storybook-features{gap:10px;margin:14px 0 0}.storybook-card{min-height:185px;border-radius:25px;padding:10px 7px}.storybook-card h2{font-size:21px;-webkit-text-stroke:3px white}.storybook-card p{font-size:14px}.card-heart{width:24px;height:24px}.friend-art{width:56%}}@media(max-width:600px){.brand-image{width:210px}.wordmark-window{width:210px;height:46px}.wordmark-window img{width:210px;transform:translateY(-12px)}.brand-tagline{font-size:10px;gap:6px}.home-v2 .site-header{height:84px;padding:0 16px}.home-v2 .site-header nav{font-size:16px;padding:12px 18px;top:80px;border-bottom:2px solid #f8d8eb}.home-v2 .site-header nav a{padding:16px}.home-v2 .menu-toggle{background:#ffeaf4;color:#6b3197}.home-v2 main{padding:0 8px}.storybook-hero{aspect-ratio:auto;min-height:695px;border-radius:26px;background-color:#b4e8fc;background-size:auto 360px;background-position:68% bottom}.storybook-copy{margin:0;padding:29px 20px 0;max-width:none}.storybook-copy h1{font-size:clamp(28px,7.6vw,44px);line-height:1.25;letter-spacing:-1.1px;white-space:normal}.hero-heart{width:.65em;height:.65em}.storybook-copy p{font-size:17px;line-height:1.6;margin:18px 0 20px;white-space:normal;max-width:350px}.storybook-copy .actions{gap:10px;flex-wrap:wrap}.storybook-copy .button{min-height:56px;font-size:18px;padding:13px 18px;border-radius:21px;gap:10px}.storybook-copy .button svg{width:20px;height:20px}.storybook-features{grid-template-columns:1fr;gap:14px;margin:14px 0 0}.storybook-card{min-height:210px;border-radius:28px;padding:18px 14px}.friend-art{width:53%;bottom:-2px}.storybook-card>div{width:52%}.storybook-card h2{font-size:29px;-webkit-text-stroke:3px white;letter-spacing:-1px}.storybook-card p{font-size:18px;line-height:1.45}.card-heart{width:29px;height:29px}.home-v2 footer{font-size:10px;padding:20px 16px}.home-v2 .brand-tagline{font-size:10px}.home-v2 .hero-tag{display:none}}@media(max-width:375px){.storybook-copy{padding:25px 16px 0}.storybook-copy h1{font-size:28px}.storybook-copy p{font-size:16px}.storybook-copy .button{font-size:17px;padding:13px 15px}.storybook-hero{min-height:670px;background-size:auto 340px}.storybook-card h2{font-size:26px}.storybook-card p{font-size:16px}.storybook-card{min-height:192px}}@media(prefers-reduced-motion:reduce){.storybook-copy .button{transition:none}.storybook-copy .button:hover{transform:none}}.storybook-copy h1,.storybook-card h2{font-family:Mali,Tahoma,sans-serif;font-weight:700}.storybook-copy h1{-webkit-text-stroke:1.2px #3e1767;letter-spacing:-2.4px}.friend-art{width:min(54%,240px)}@media(max-width:600px){.storybook-copy h1{-webkit-text-stroke:.7px #3e1767;letter-spacing:-1.2px}.friend-art{width:53%}}@media(min-width:851px){.storybook-copy{padding-top:4.9%}.storybook-copy h1{font-size:clamp(36px,3.9vw,68px)}}@media(max-width:600px){.storybook-card.stars h2{font-size:24px;letter-spacing:-1.2px}}@media(max-width:375px){.storybook-card.stars h2{font-size:22px}}@media(max-width:600px){.storybook-hero{background-image:url(/assets/mireiland-mobile-hero-v2.png);background-size:cover;background-position:center bottom}}.app:not(.home-v2){font-family:Mitr,Tahoma,sans-serif;color:#402369;min-height:100vh;background:linear-gradient(180deg,#fff 80px,#fff5fb 380px,#f5fbff)}.app:not(.home-v2) h1,.app:not(.home-v2) h2,.app:not(.home-v2) .unit-title{font-family:Mali,Tahoma,sans-serif;font-weight:700;line-height:1.45}.app:not(.home-v2) h1{color:#482271;font-size:clamp(28px,3vw,42px)}.app:not(.home-v2) p{line-height:1.85}.app:not(.home-v2) .site-header{height:90px;padding:0 5%;border:0;border-radius:0;max-width:1800px;margin:auto}.app:not(.home-v2) .site-header nav{gap:7px;font-size:14px;font-weight:400}.app:not(.home-v2) .site-header nav a{padding:12px 20px;border-radius:26px;white-space:nowrap}.app:not(.home-v2) .site-header nav a.active{background:#ffe7f2;color:#b72068;text-decoration:none}.app:not(.home-v2) .site-header nav a:hover{background:#fff2f8;text-decoration:none}.app:not(.home-v2) .button{font-family:inherit;font-weight:500;background:#9355d3;border:0;box-shadow:none;border-radius:24px;min-height:58px}.app:not(.home-v2) .button.secondary{background:#fff;color:#7640b6;border:1px solid #ead7f5}.app:not(.home-v2) .button:hover{transform:translateY(-2px);box-shadow:0 6px 16px #7640b620}.app:not(.home-v2) .page-heading{padding:32px 36px;border-radius:32px;background:linear-gradient(115deg,#e1f9ff,#f5eaff 65%,#ffe5f1);border:2px solid white}.app:not(.home-v2) .page-heading .lead{font-size:18px}.app:not(.home-v2) .chip{font-family:inherit;font-weight:400;border:1px solid #e6d5f2;min-height:52px;background:#fff}.app:not(.home-v2) .chip.selected{background:#9355d3;color:#fff;border-color:#9355d3}.app:not(.home-v2) .candy-card{border:2px solid white;box-shadow:0 8px 24px #77429c0b;background:radial-gradient(ellipse at top,#fffce0,#fff1aa);border-radius:34px}.app:not(.home-v2) .candy-card:nth-child(3n+2){background:radial-gradient(ellipse at top,#e6ffff,#b9f1fa)}.app:not(.home-v2) .candy-card:nth-child(3n){background:radial-gradient(ellipse at top,#fff0f7,#ffdaea)}.app:not(.home-v2) .course-card h2{font-size:28px;margin:8px 0 14px}.app:not(.home-v2) .age-label{font-weight:500;color:#744699}.app:not(.home-v2) .course-meta{font-size:15px}.app:not(.home-v2) .animal.bunny,.app:not(.home-v2) .animal.cat,.app:not(.home-v2) .animal.dino{background-image:url(/assets/mireiland-friends-v2.png);background-size:300% 100%;border-radius:0}.app:not(.home-v2) .course-card .animal{width:160px;height:160px}.app:not(.home-v2) .level-intro{background:linear-gradient(120deg,#e5faff,#f3e7ff,#ffe3f0);border:2px solid white;border-radius:32px}.app:not(.home-v2) .unit{border:1px solid #eddef3;box-shadow:0 5px 16px #77429c06;border-radius:26px}.app:not(.home-v2) .unit-toggle{font-family:inherit;background:#fff5ca}.app:not(.home-v2) .unit:nth-child(3n+2) .unit-toggle{background:#ddf8fd}.app:not(.home-v2) .unit:nth-child(3n) .unit-toggle{background:#ffe5f0}.app:not(.home-v2) .unit-number{font-family:Mali,sans-serif;color:#8752ae}.app:not(.home-v2) .unit-title{overflow-wrap:anywhere}.app:not(.home-v2) .lesson-row{border-color:#efdfef;border-radius:20px}.app:not(.home-v2) .lesson-copy strong{font-weight:500}.app:not(.home-v2) .state-panel,.app:not(.home-v2) .reading-panel{border:2px solid #fff;border-radius:32px;box-shadow:0 8px 32px #8752ae0c}.app:not(.home-v2) .state-panel{background:linear-gradient(145deg,#fff,#fff0f7)}.app:not(.home-v2) .state-panel>.animal,.app:not(.home-v2) .info-page>.animal{width:154px;height:154px}.app:not(.home-v2) .reading-panel h2{color:#7845ac}.app:not(.home-v2) .friends-line figure{padding:12px;border-radius:24px;background:#fff4d2}.app:not(.home-v2) .friends-line figure:nth-child(2n){background:#e5faff}.app:not(.home-v2) .friends-line figure:nth-child(3n){background:#ffe6f1}.app:not(.home-v2) footer{color:#83658f}@media(max-width:900px){.app:not(.home-v2) .site-header{padding:0 24px}.app:not(.home-v2) .site-header nav a{padding:12px}.app:not(.home-v2) .site-header nav{font-size:12px}}@media(max-width:600px){.app:not(.home-v2) .site-header{height:84px;padding:0 16px}.app:not(.home-v2) .site-header nav{top:80px;font-size:16px;padding:12px 18px;border-bottom:2px solid #f8d8eb}.app:not(.home-v2) .site-header nav a{padding:16px}.app:not(.home-v2) .menu-toggle{background:#ffeaf4;color:#6b3197}.app:not(.home-v2) .page-heading{padding:25px 22px}.app:not(.home-v2) .page-heading .lead{font-size:16px}.app:not(.home-v2) .course-card h2{font-size:26px}.app:not(.home-v2) .level-intro{padding:22px 18px}.app:not(.home-v2) .level-intro h1{font-size:25px}.app:not(.home-v2) .reading-panel{padding:25px 22px}.app:not(.home-v2) .friends-line{gap:10px}.app:not(.home-v2) .friends-line figure{padding:8px}.app:not(.home-v2) .unit-title{font-size:17px}}.app:not(.home-v2) .animal.lion,.app:not(.home-v2) .animal.elephant,.app:not(.home-v2) .animal.penguin{background-image:url(/assets/mireiland-friends-extra-v2.png);background-size:300% 100%;border-radius:0}.app:not(.home-v2) .animal.lion{background-position:0 0}.app:not(.home-v2) .animal.elephant{background-position:50% 0}.app:not(.home-v2) .animal.penguin{background-position:100% 0}.info-page>.about-mirei{display:block;width:clamp(160px,22vw,230px);height:auto;margin:0 auto 18px;object-fit:contain;mix-blend-mode:multiply}.app:not(.home-v2) .lesson-row.lesson-completed{background:#f1f2f4;border-color:#d9dce1;color:#4b5563}.lesson-row.lesson-completed .lesson-index{background:#e1e4e8;color:#535c69}.lesson-row.lesson-completed .lesson-copy strong,.lesson-row.lesson-completed .lesson-copy>span{color:#535c69}.lesson-row.lesson-completed .lesson-status{background:#e1e4e8;color:#4b5563}.app:not(.home-v2) .lesson-row.lesson-completed:hover{background:#e6e8ec;border-color:#a5acb6}.account-shell{text-align:center;max-width:760px;margin:auto}.account-shell>.animal{width:145px;height:145px}.account-shell h1{margin:18px 0 12px}.account-panel{padding:32px;background:#fff;border:2px solid #f2e5f7;border-radius:30px;max-width:760px;margin:28px auto;text-align:left}.account-panel h2{margin-bottom:18px}.account-panel label:not(.checkbox){display:grid;gap:8px;margin:20px 0}.account-panel input:not([type=checkbox]),.account-panel select{width:100%;min-height:52px;border:1px solid #ceb5e6;border-radius:16px;padding:12px 16px;color:#482271;background:#fff;font:inherit}.account-panel .checkbox{display:flex;align-items:flex-start;gap:12px;margin:16px 0}.checkbox input{width:22px;height:22px;flex-shrink:0;accent-color:#9355d3}.account-panel .button{margin-top:12px}.account-panel fieldset{border:1px solid #eddef3;border-radius:20px;padding:16px;margin:22px 0}.account-hint{font-size:14px;color:#765687;overflow-wrap:anywhere}.dev-mail{padding:20px;border-radius:20px;background:#fff4cf;margin-top:24px;font-size:14px}.dev-mail a{color:#67339e;text-decoration:underline;display:block;margin-top:12px}.form-error{padding:14px 20px;background:#ffe7ef;border-radius:16px;color:#9b2546;margin:16px 0}.family-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:20px 0}.family-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.family-grid h2{overflow-wrap:anywhere;margin:10px 0}.family-grid .button{margin-top:16px}.text-button{display:block;background:transparent;color:#683899;font:inherit;text-decoration:underline;margin:18px auto 0;min-height:44px}.family-next{display:flex;align-items:center;gap:24px;padding:28px;background:#e4f8fc;border-radius:30px;margin:28px 0}.family-next .button{margin-top:16px}.avatar-options{display:flex;flex-wrap:wrap;gap:8px}.avatar-options button{background:#fff5df;border:2px solid transparent;border-radius:20px;padding:8px}.avatar-options button[aria-pressed=true]{border-color:#9355d3;background:#f2dfff}.avatar-options .animal{width:70px;height:70px}.interest-options{display:flex;gap:18px;flex-wrap:wrap}.account-panel button:disabled{opacity:.6}@media(max-width:700px){.family-grid{grid-template-columns:1fr}.account-panel{padding:22px 18px}.family-toolbar{flex-wrap:wrap}.family-next{flex-direction:column;text-align:center;padding:24px 18px}.account-shell .lead{font-size:17px}.avatar-options .animal{width:60px;height:60px}.interest-options{gap:12px}.account-panel h2{font-size:23px}}.child-select{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%;padding:8px;background:transparent;color:inherit;font:inherit;border-radius:24px;min-height:200px}.child-select:hover{background:#ffffff40}.child-name{font:700 26px/1.5 Mali,sans-serif;overflow-wrap:anywhere;max-width:100%}.child-selected{outline:3px solid #9355d3;outline-offset:3px}.profile-controls{display:flex;justify-content:center;gap:24px;flex-wrap:wrap}.profile-controls .text-button{margin:12px 0 0}.delete-link{color:#ad2854}.profile-photo{width:124px;height:124px;object-fit:cover;border-radius:28px;flex-shrink:0}.photo-preview{text-align:center;margin-top:16px}.delete-dialog{border:2px solid #eedcf4;border-radius:28px;padding:30px;max-width:480px;width:calc(100% - 32px);color:#482271;font-family:Mitr,sans-serif;box-shadow:0 20px 80px #38145540}.delete-dialog::backdrop{background:#28113d70}.delete-dialog h2{font-family:Mali,sans-serif;margin-bottom:16px}.delete-dialog .danger{background:#b72c5e!important;color:#fff}.delete-dialog p{line-height:1.8}.crop-dialog{width:min(460px,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow:auto;border:2px solid #eddcf6;border-radius:28px;padding:24px;color:#482271;font-family:Mitr,sans-serif}.crop-dialog::backdrop{background:#28113d80}.crop-dialog h2{font-family:Mali,sans-serif;margin-bottom:10px}.crop-dialog>p{font-size:14px}.crop-stage{width:min(280px,100%);aspect-ratio:1;margin:18px auto;border-radius:24px;overflow:hidden;background:repeating-conic-gradient(#f0e6f5 0 25%,#fff 0 50%) 0/20px 20px;border:2px solid #cda8eb}.crop-stage canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}.crop-stage canvas:active{cursor:grabbing}.crop-dialog label{display:grid;grid-template-columns:130px 1fr;align-items:center;gap:12px;margin:16px 0;font-size:14px}.crop-dialog input{width:100%;accent-color:#9355d3;min-width:0}.crop-dialog .actions{justify-content:center}.crop-dialog .button{background:#9355d3;color:#fff;box-shadow:none}.photo-preview .profile-photo{border:3px solid white;box-shadow:0 3px 18px #58309620;background:#f7eefb;object-fit:contain}.social-auth{display:grid;gap:12px;margin:18px 0 28px}.social-button{font:inherit;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;width:100%;padding:14px 18px;border:1px solid #d4c6df;border-radius:16px;background:#fff;color:#38234e;min-height:56px}.social-button.facebook{background:#1877f2;color:#fff;border-color:#1877f2}.social-button:disabled{opacity:.65;cursor:not-allowed}.social-button small{flex-basis:100%;font-size:12px}.provider-mark{font:700 24px Arial}.auth-switch{text-align:center;margin-top:24px}.auth-switch a{text-decoration:underline}.account-connections{padding:16px;background:#f7f0ff;border-radius:18px;margin:20px 0}.account-connections summary{cursor:pointer}.admin-page{max-width:1100px;margin:auto}.admin-page h2{margin-top:32px}.admin-id{overflow-wrap:anywhere;font-size:13px}.admin-filters{display:flex;align-items:end;flex-wrap:wrap;gap:16px;margin:24px 0}.admin-page label{display:grid;gap:8px}.admin-page input,.admin-page select,.admin-page textarea,.delete-dialog textarea{font:inherit;padding:12px;border:1px solid #ceb5e6;border-radius:12px;width:100%;min-width:0}.admin-page textarea,.delete-dialog textarea{min-height:100px}.admin-users{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:18px}.admin-user-card,.admin-child{background:#fff;border:1px solid #eedcf5;border-radius:22px;padding:22px;display:grid;gap:12px;overflow-wrap:anywhere}.admin-user-card:hover{border-color:#9355d3;background:#faf5ff}.admin-status{width:fit-content;padding:4px 12px;border-radius:20px;background:#e3f8ed}.admin-status.suspended{background:#ffe0e8;color:#9b2546}.admin-pager{display:flex;gap:16px;align-items:center;justify-content:center;margin:22px 0}.admin-records article{padding:16px;border-bottom:1px solid #eadced;overflow-wrap:anywhere}.admin-records pre{white-space:pre-wrap;font-size:13px;overflow-wrap:anywhere}.admin-page .account-panel{max-width:none}.admin-page h1{overflow-wrap:anywhere}@media(max-width:600px){.admin-filters{display:grid;grid-template-columns:1fr}.admin-page .account-panel{padding:20px}}.report-number{font-size:32px;color:#753dad}.report-period{max-width:250px;margin:24px 0}.report-chart{display:flex;align-items:end;gap:3px;height:180px;padding:12px;background:#f6edff;border-radius:16px;margin:20px 0}.report-chart>div{flex:1;height:100%;display:flex;align-items:end;min-width:0}.report-chart span{display:block;width:100%;background:#ad70d8;border-radius:5px 5px 0 0;min-height:1px}.report-table{max-height:400px;overflow:auto}.report-table table{width:100%;border-collapse:collapse;text-align:left}.report-table th,.report-table td{padding:10px;border-bottom:1px solid #eadced}.coffee-button{background:#ffdd72!important;color:#482271!important}.family-admin-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 32px}.learning-welcome{display:flex;align-items:center;gap:32px;background:linear-gradient(120deg,#e6faff,#ffe8f4);border:3px solid white;border-radius:32px;padding:32px;margin:24px 0}.learning-welcome>.animal{width:180px;height:180px}.learning-welcome h2{font-size:32px;margin:12px 0}.learning-welcome .button{margin-top:20px}.preview-badge{display:inline-block;background:#fff0bb;color:#765115;border-radius:18px;padding:7px 14px;font-size:13px}.history-heading{margin:32px 0 20px}.learning-history{display:grid;gap:14px}.history-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 28px;border-radius:24px;background:#fff;border:1px solid #ecdcf3}.history-row:hover{border-color:#9355d3}.history-row strong{font-size:20px}.history-row p,.history-row small{color:#7c608b}.score-pill{background:#f2e5ff;padding:12px 18px;border-radius:18px;white-space:nowrap}.learning-player{max-width:900px;margin:auto}.learning-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px}.learning-player h1{margin:16px 0 8px}.learning-player progress{width:100%;height:15px;accent-color:#9355d3;margin:22px 0}.activity-panel{background:#fff;border:2px solid #f0e1f6;border-radius:32px;padding:32px;text-align:center}.activity-panel h2{margin:12px 0 26px}.activity-panel>.animal{width:160px;height:160px}.learning-word{font:700 44px Mali,sans-serif;margin:12px}.listen-button{display:block!important;margin:20px auto}.learning-story{font-size:24px;line-height:1.9!important;max-width:600px;margin:20px auto}.activity-panel details{margin:16px auto;font-size:13px;max-width:400px}.learning-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}.answer-card{background:#fff4ce;border:3px solid transparent;border-radius:24px;padding:18px 8px;min-height:80px;display:flex;flex-direction:column;align-items:center;gap:12px;color:#482271;font:500 20px Mitr,sans-serif}.answer-card:nth-child(2){background:#dff7ff}.answer-card:nth-child(3){background:#ffe4f0}.answer-card.chosen{border-color:#9355d3}.answer-card .animal{width:95px;height:95px}.matching-options{display:flex;justify-content:center;gap:18px;flex-wrap:wrap}.matching-options label{display:flex;flex-direction:column;align-items:center;gap:12px}.matching-options select{font:inherit;padding:12px;border:1px solid #bf93dc;border-radius:16px;color:#482271}.letter-answer{font:700 40px Mali,sans-serif;margin:20px}.letter-options{display:flex;gap:16px;justify-content:center}.letter-options .chip{font-size:28px;min-width:64px}.letter-options button:disabled{opacity:.35}.learning-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:24px 0}.learning-bottom>span{font-size:13px;color:#765c86}.learning-bottom button:disabled{opacity:.5}.practice-feedback{padding:16px 24px;background:#e8f9ea;border-radius:20px;margin-bottom:20px}.learning-result{text-align:center;max-width:750px;margin:auto;background:#fff;border-radius:32px;padding:40px 24px}.learning-result>.animal{display:block;margin:0 auto 20px;width:180px;height:180px}.learning-result h1{margin:22px 0}.result-score{font:700 80px Mali,sans-serif;color:#9254ce;margin:28px}.result-score span{font-size:30px}.learning-result .button{margin-top:28px}@media(max-width:600px){.learning-welcome{flex-direction:column;padding:24px;gap:16px}.learning-welcome h2{font-size:27px}.activity-panel{padding:22px 14px}.activity-panel h2{font-size:23px}.learning-options{gap:8px}.answer-card{font-size:16px;padding:14px 4px}.answer-card .animal{width:66px;height:66px}.learning-bottom{align-items:flex-start}.learning-bottom>span{max-width:125px}.learning-toolbar .chip{font-size:13px;padding:10px}.history-row{padding:18px;gap:12px}.score-pill{padding:10px;font-size:14px}.matching-options .animal{width:90px;height:90px}.matching-options label{font-size:13px}.learning-story{font-size:20px}}.learning-navigation{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.learning-bottom{flex-wrap:wrap}.learning-navigation .button{min-height:48px}.learning-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:24px}.learning-stat{background:#fff1cc;border:3px solid white;border-radius:28px;padding:22px 12px;text-align:center;display:flex;align-items:center;flex-direction:column}.learning-stat:nth-child(2){background:#dff7ff}.learning-stat:nth-child(3){background:#ffe5f1}.learning-stat:nth-child(4){background:#e9e0ff}.learning-stat .animal{width:76px;height:76px}.learning-stat h2{font-size:17px;margin:12px 0}.learning-stat strong{font:700 34px Mali,sans-serif}.learning-stat span{font-size:13px;margin-top:8px}@media(max-width:700px){.learning-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.learning-stat{padding:18px 8px}.learning-stat h2{font-size:15px}}.practice-welcome{background:linear-gradient(120deg,#f0e5ff,#fff3c9)}.practice-count{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:18px 0}.practice-count select{font:inherit;color:inherit;border:1px solid #ba93d6;border-radius:14px;padding:12px;background:#fff;max-width:100%}.quiz-review{text-align:left;margin:28px 0}.quiz-review h2,.quiz-review>p{text-align:center}.quiz-review-row{width:100%;display:flex;flex-direction:column;gap:8px;text-align:left;font:inherit;color:#482271;border:2px solid #dbc8ee;background:#fff5dc;border-radius:22px;padding:18px 22px;margin:12px 0;cursor:pointer}.quiz-review-row.is-correct{background:#eaf9ef;border-color:#b7dfc3}.quiz-review-row:focus-visible{outline:3px solid #9355d3;outline-offset:3px}.review-link{font-size:14px;text-decoration:underline}.review-explanation{padding:18px;background:#f2eaff;border-radius:20px;margin:18px 0}.review-explanation p{margin:8px 0}.history-filters{display:flex;gap:16px;flex-wrap:wrap;margin:20px 0}.history-filters label{display:flex;flex-direction:column;gap:8px}.history-filters select{font:inherit;color:inherit;padding:12px;border:1px solid #caa5e4;border-radius:14px;background:#fff}.history-pagination{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:24px 0}.history-pagination button:disabled{opacity:.45}.learning-visual{display:inline-block;width:150px;height:150px;max-width:100%}.answer-card .learning-visual{width:85px;height:85px}.lesson-shapes{display:flex;gap:12px;margin:16px 0}.lesson-shapes .learning-visual{width:65px;height:65px}@media(max-width:600px){.answer-card .learning-visual{width:60px;height:60px}}.curriculum-callout{display:flex;align-items:center;gap:24px;background:#ede3ff;border:3px solid white;border-radius:28px;padding:24px;margin:24px 0}.curriculum-callout>.animal{width:120px;height:120px}.curriculum-callout h2{margin:0}.curriculum-ages{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.curriculum-ages .selected{background:#9355d3;color:#fff}.curriculum-filters{display:flex;gap:20px;flex-wrap:wrap}.curriculum-filters label{display:flex;flex-direction:column;gap:8px;flex:1;min-width:200px}.curriculum-filters input,.curriculum-filters select{font:inherit;color:inherit;background:#fff;border:1px solid #ccb0e0;border-radius:14px;padding:12px;width:100%;min-width:0}.curriculum-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.curriculum-card{background:#fff;border:2px solid #ecdbf5;border-radius:26px;padding:24px;display:flex;flex-direction:column;align-items:flex-start}.curriculum-card:nth-child(3n+2){background:#fff8e3}.curriculum-card:nth-child(3n+3){background:#f0faff}.curriculum-card h3{font-size:23px;margin:12px 0}.curriculum-card ul{padding-left:24px}.curriculum-card details{width:100%;margin-bottom:18px}.curriculum-card .button{margin-top:auto}.lesson-progress{background:#f1e8ff;border-radius:12px;padding:8px 12px;font-size:14px}.learning-symbol{font-size:80px;line-height:1.6;overflow-wrap:anywhere}.option-symbol{font-size:52px;line-height:1.4;overflow-wrap:anywhere}.learning-instruction{font-size:22px;line-height:1.9;white-space:pre-line;overflow-wrap:anywhere}.teacher-tip{background:#fff4dc;border-radius:18px;padding:14px;max-width:none!important;text-align:left;font-size:16px!important}.teacher-tip summary{cursor:pointer}.letter-options{flex-wrap:wrap}.letter-answer,.answer-card{overflow-wrap:anywhere}@media(max-width:700px){.curriculum-grid{grid-template-columns:1fr}.curriculum-callout{flex-direction:column;text-align:center}.curriculum-card{padding:20px}.learning-instruction{font-size:18px}.option-symbol{font-size:38px}}.learning-result>.result-mirei{display:block;width:clamp(170px,24vw,240px);height:auto;object-fit:contain;margin:0 auto 24px}
