@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{--bg:#f4f6f7;--ink:#132b36;--muted:#52646d;--line:#dce2e5;--lime:#dcf795;--navy:#132b36}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.55}button,select{font:inherit}button,select,summary{cursor:pointer}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,select:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid #2e78d1;outline-offset:5px}button{touch-action:manipulation}header{max-width:1320px;margin:auto;padding:28px 48px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{text-decoration:none;color:var(--ink);display:flex;align-items:center;gap:12px;font-size:21px;font-weight:700;letter-spacing:-.6px}.brandmark{position:relative;background:var(--navy);color:var(--lime);font-family:Georgia,serif;font-size:42px;width:48px;height:48px;line-height:43px;text-align:center;border-radius:12px}.brandmark span{font-size:19px;position:absolute;right:5px;top:1px}.brand small{display:block;font-size:10px;letter-spacing:2px;font-weight:500;margin-top:2px}.edition{font-size:14px;color:var(--muted)}.edition span{padding:0 8px;color:#6c7c83}main{max-width:1200px;margin:54px auto 44px;display:grid;grid-template-columns:360px minmax(0,1fr);gap:90px;padding:0 28px}aside{padding-top:14px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.8px;color:#586f79}h1{font-family:'Manrope',sans-serif;font-size:39px;line-height:1.22;letter-spacing:-1.7px;font-weight:800;margin:20px 0}p.intro{color:var(--muted);font-size:17px;line-height:1.8;margin:0 0 36px}.progressbox{border-top:1px solid var(--line);padding-top:25px}.progresshead{display:flex;align-items:center;justify-content:space-between;font-size:14px;gap:8px}.progresshead strong{font-size:16px}.muted{font-weight:400;color:var(--muted)}progress{display:block;border:0;appearance:none;width:100%;height:6px;border-radius:8px;overflow:hidden;background:#e0e6e8}progress::-webkit-progress-bar{background:#e0e6e8;border-radius:8px}progress::-webkit-progress-value{background:#648f29;border-radius:8px}progress::-moz-progress-bar{background:#648f29;border-radius:8px}#overall{margin:14px 0 23px}.numbers{display:grid;grid-template-columns:1fr 1fr;gap:20px}.numbers>div+div{border-left:1px solid var(--line);padding-left:25px}.numbers strong{font:700 29px 'Manrope',sans-serif;display:block}.numbers span{font-size:13px;color:var(--muted)}.reviewbutton{display:flex;justify-content:space-between;align-items:center;background:var(--navy);color:#fff;border:0;border-radius:10px;padding:15px 19px;width:100%;margin-top:23px;font-size:14px;font-weight:600}.reviewbutton:hover{background:#254955}.reviewbutton span{font-size:20px;color:var(--lime)}.tip{display:flex;gap:15px;align-items:center;margin-top:32px}.tipnum{font-family:'Manrope',sans-serif;font-size:37px;font-weight:500;color:#516d79;letter-spacing:-2px}.tip p{font-size:14px;line-height:1.65;margin:0;color:var(--muted)}.tip strong{color:var(--ink);font-weight:600}.storage{font-size:12px;color:var(--muted);line-height:1.65;margin-top:25px;max-width:320px}.toolbar{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:24px}.toolbar label{display:block;letter-spacing:1.8px;font-size:11px;font-weight:700;margin-bottom:7px;color:var(--muted)}select{max-width:100%;background:transparent;color:var(--ink);border:1px solid #cbd5da;border-radius:8px;padding:9px 28px 9px 12px;font-size:14px}.toolbar>div:first-child{flex:1}.toolbar>div:first-child select{width:100%}.sessionhead{font-size:13px;display:flex;justify-content:space-between;color:var(--muted);margin-bottom:9px}#sessionlabel{font-weight:600;color:var(--ink)}#sessionprogress{height:3px;margin-bottom:20px}.card{width:100%;min-height:350px;border:1px solid #e0e6e8;border-radius:20px;background:#fff;box-shadow:0 9px 0 -3px #e6ecef,0 17px 0 -7px #dce4e9,0 12px 40px #18374408;display:flex;flex-direction:column;text-align:center;align-items:stretch;justify-content:space-between;padding:25px 28px 19px;transition:background .2s,transform .2s}.card:hover{transform:translateY(-2px)}.card.revealed{background:#eaf5d6;border-color:#d1e6b0}.cardtop{display:flex;justify-content:space-between;font-size:11px;letter-spacing:2px;color:#5b737e;font-weight:600}.cardcenter{display:flex;flex-direction:column;align-items:center;padding:25px 0 20px;gap:18px;overflow-wrap:anywhere}.word{font-family:'Manrope',sans-serif;font-size:66px;line-height:1.15;letter-spacing:-2px;font-weight:700}.revealed .word,.card.reverse .word{font-size:clamp(23px,3vw,38px);letter-spacing:-1px}.example{font-size:18px;color:#47616e;max-width:100%}.original{font-size:14px;color:#4c6339}.cardbottom{font-size:12px;color:#687f8a;display:flex;justify-content:center;align-items:center;gap:10px}.cardbottom span{font-size:19px}.audio{display:flex;justify-content:center;gap:24px;margin:27px 0 15px}.audio button{background:none;border:0;padding:7px 4px;color:#416271;font-size:16px}.audio button span{font-size:13px;margin-left:5px}.before{height:76px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:14px;color:var(--muted)}.rating{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rating button{border:1px solid #cbd6dc;border-radius:10px;padding:13px 8px;background:#fff;min-height:73px}.rating button:hover{filter:brightness(.97)}.rating strong{font-size:15px;display:block}.rating span{font-size:12px;display:block;color:#52636a;margin-top:2px}#remember{background:var(--lime);border-color:#c6e982}#again{background:#fff}.notice{font-size:13px;text-align:center;min-height:20px;color:#456073;margin:14px 0 0}.keyboard{text-align:center;color:var(--muted);font-size:12px;margin:10px 0}.keyboard span{margin:0 8px}kbd{font-family:inherit;display:inline-block;border:1px solid #c9d2d7;border-radius:4px;padding:0 5px;background:#fff;margin:0 3px}.below{max-width:1144px;margin:0 auto 30px;padding:0 28px}details{border-top:1px solid var(--line)}summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:22px 0;font-weight:600;font-size:15px;list-style:none}summary::-webkit-details-marker{display:none}summary>span+span{font-size:13px;font-weight:400;color:var(--muted)}summary b{font-size:20px;margin-left:20px;font-weight:400}.lessongrid{display:grid;grid-template-columns:repeat(10,1fr);gap:10px;padding:0 0 24px}.lessongrid button{position:relative;background:#fff;border:1px solid #d5dfe3;min-height:58px;border-radius:8px;font-size:15px}.lessongrid button.active{border:2px solid var(--navy)}.lessongrid button.seen{background:#eaf5d6}.lessongrid small{display:block;font-size:10px;color:var(--muted)}.method{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin:4px 0 15px}.method b{font-size:14px}.method p{font-size:14px;color:var(--muted);line-height:1.8}.sources{font-size:12px;color:var(--muted);line-height:1.9;padding:0 0 20px}.sources a{color:#345f76;text-underline-offset:3px}footer{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;padding:24px 48px 32px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}footer>span:first-child{font-weight:700}.done{text-align:center;background:white;border:1px solid var(--line);border-radius:20px;padding:42px 26px;min-height:430px}.doneicon{font-size:40px;background:var(--lime);border-radius:50%;width:72px;height:72px;display:inline-flex;align-items:center;justify-content:center}.done h2{font:700 30px 'Manrope',sans-serif;letter-spacing:-1px;margin:20px 0 12px}.done p{color:var(--muted);margin-bottom:28px}.primary,.secondary{border:0;border-radius:9px;padding:13px 22px;display:block;margin:12px auto;font-size:14px}.primary{background:var(--navy);color:white}.secondary{background:#edf1f3}.primary:hover{background:#284b5b}[hidden]{display:none!important}
@media(min-width:1500px){main{margin-top:70px}}@media(max-width:1000px){main{gap:40px;grid-template-columns:300px minmax(0,1fr)}h1{font-size:33px}.toolbar{gap:10px}.toolbar select{font-size:13px;padding-left:8px}.card{padding:22px}.word{font-size:56px}}
@media(max-width:760px){header{padding:20px 22px}.brand{font-size:18px}.brand small{font-size:9px;letter-spacing:1.3px}.brandmark{width:41px;height:41px;font-size:35px;line-height:38px}.edition{font-size:12px;max-width:76px;text-align:right}.edition span{display:none}main{display:flex;flex-direction:column;gap:24px;margin:25px auto;padding:0 20px}aside{display:contents}.eyebrow,h1,.intro,.tip,.storage{display:none}.progressbox{order:0;border:0;padding:0}.numbers{display:none}#overall{margin:10px 0 0}.progresshead{font-size:13px}.workspace{order:1}.reviewbutton{order:2;margin:0;padding:13px 18px}.toolbar{margin-bottom:18px;gap:14px}.toolbar label{font-size:10px}.toolbar select{font-size:13px;width:100%;padding:9px 22px 9px 8px}.toolbar>div{min-width:0;flex:1}.card{min-height:310px;padding:22px}.cardcenter{padding:20px 0}.word{font-size:59px}.example{font-size:17px}.cardtop{font-size:10px}.revealed .word,.card.reverse .word{font-size:28px}.audio{margin-top:24px;margin-bottom:5px}.before{height:64px;font-size:13px}.rating{gap:10px}.rating strong{font-size:14px}.rating span{font-size:11px}.keyboard{display:none}.notice{margin-top:10px}.below{padding:0 20px;margin-top:26px}.lessongrid{grid-template-columns:repeat(5,1fr);gap:8px}.method{grid-template-columns:1fr;gap:10px}summary{font-size:14px;padding:19px 0}summary>span+span{font-size:11px}summary b{margin-left:4px}footer{padding:20px;font-size:11px}.done{min-height:380px;padding:30px 20px}.sources{font-size:12px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.mobile-storage{display:none}@media(max-width:760px){.mobile-storage{display:block;font-size:12px;color:var(--muted);margin:0 0 20px}}
.scoreboard{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 15px}.scoreboard>div{border:1px solid var(--line);border-radius:10px;background:white;padding:12px 16px;display:flex;align-items:center;justify-content:space-between}.scoreboard span{font-size:14px;color:var(--muted)}.scoreboard strong{font-size:25px}.scoreboard>div:first-child{background:var(--navy);color:var(--lime)}.scoreboard>div:first-child span{color:white}.goal{font-size:14px;color:var(--muted);margin:0 0 17px}.answercard{border:1px solid #cadcb9;background:#f4f9eb;border-radius:20px;padding:24px}.answercard h2{font:700 34px 'Manrope',sans-serif;margin:6px 0}.answercard>p{margin:8px 0 16px}.choices{display:grid;gap:9px}.choice{width:100%;text-align:left;background:#fff;border:1px solid #cbd6c2;border-radius:9px;padding:12px 15px;font-size:16px;line-height:1.5;overflow-wrap:anywhere}.choice:not(:disabled):hover{background:#e5f5d1;border-color:#5a872d}.choice:disabled{opacity:1;cursor:default}.choice.correct-choice{background:#dcf795;border:2px solid #517c1e}.choice.wrong-choice{background:#ffe1dd;border:2px solid #a84235}.feedback{padding:18px;border:1px solid #abc97e;border-radius:12px;background:#edf9d9}.feedback.error{background:#fff0ed;border-color:#d89c94}.feedback p{font-size:16px}.feedback .primary{margin:14px 0 0;width:100%}.lessongrid{grid-template-columns:repeat(6,1fr)}.lessongrid button:nth-child(6n){border-color:#83a43b}.lessongrid small{font-size:11px}.answercard .eyebrow{display:block}@media(max-width:760px){.scoreboard{gap:7px}.scoreboard>div{padding:10px;flex-direction:column}.scoreboard strong{font-size:24px}.goal{font-size:14px}.answercard{padding:18px}.choice{font-size:16px}.lessongrid{grid-template-columns:repeat(3,1fr)}.lessongrid small{font-size:11px}}

/* Flash english logo */
header{background:#fff}.brand{min-width:0}.brand-logo{display:block;width:360px;height:90px;object-fit:cover;max-width:100%;flex-shrink:1}@media(max-width:760px){header{gap:10px;padding:15px 18px}.brand{flex:1}.brand-logo{width:250px;height:64px}.edition{flex-shrink:0}}

.voicecontrol{padding:16px 20px;margin:0 0 20px;background:#fff;border:1px solid var(--line);border-radius:12px}.voicecontrol label{display:flex;justify-content:space-between;gap:15px;font-size:14px;font-weight:600}.voicecontrol output{font-variant-numeric:tabular-nums;color:#335813}.voicecontrol input{display:block;width:100%;margin:8px 0 0;min-height:38px;accent-color:#416e21;cursor:pointer}.voicecontrol input:focus-visible{outline:3px solid #2e78d1;outline-offset:3px}.speedends{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.voicecontrol p{font-size:12px;color:var(--muted);margin:10px 0 0}
