:root{--en-ink:#173c35;--en-mint:#c3ed8b;--en-paper:#f4f7ef}.english-portal{max-width:1180px;margin:0 auto;padding:26px 24px 60px;color:var(--en-ink)}.english-spotlight,.en-hero{display:grid;grid-template-columns:1.4fr 1fr;align-items:center;gap:30px;background:radial-gradient(ellipse at 85% 60%,#33715c 0,transparent 55%),#103c32;border-radius:30px;color:#f2f7e7;padding:56px;overflow:hidden}.english-eyebrow{font-size:11px;font-weight:800;letter-spacing:2px;color:#6e927e}.english-spotlight .english-eyebrow,.en-hero .english-eyebrow{color:#cee8ac}.english-spotlight h1,.en-hero h1{font-size:clamp(30px,4vw,52px);line-height:1.25;letter-spacing:-2px;margin:22px 0}.english-spotlight p,.en-hero p{line-height:1.9;color:#d0e3d5;max-width:490px}.english-hero-actions{display:flex;gap:8px;flex-wrap:wrap;margin:26px 0 16px}.english-primary,.english-hero-actions a,.english-hero-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border-radius:12px;padding:12px 17px;font:inherit;font-weight:800;text-decoration:none;cursor:pointer;border:1px solid #a7c2a34d}.english-primary,.english-hero-actions .english-primary{background:var(--en-mint);color:#163b2d;border:0}.english-hero-actions a,.english-hero-actions button{background:#fff1;color:#f4f7ec}.english-spotlight small{color:#adc9b7;font-size:11px}.english-flight-art{position:relative;min-height:285px;display:grid;place-items:center;isolation:isolate}.english-flight-art i{position:absolute;inset:14px;border:1px solid #bce1c450;border-radius:50%;transform:rotate(-28deg) scaleY(.66);box-shadow:0 0 0 35px #bce1c409,0 0 0 70px #bce1c408}.english-flight-art b{font-size:180px;line-height:1;color:#d8f3e1;transform:rotate(-35deg);text-shadow:-10px 20px 0 #041f2440;transition:transform .3s}.english-flight-art:hover b{transform:translateY(-12px) rotate(-28deg)}.english-flight-art>span{position:absolute;width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#c9efa1;color:#254834;box-shadow:0 8px 0 #618c6045;font-weight:900;font-size:24px;transform:rotate(-10deg)}.english-flight-art>span:nth-of-type(1){left:15%;top:8%}.english-flight-art>span:nth-of-type(2){right:2%;top:35%}.english-flight-art>span:nth-of-type(3){left:23%;bottom:0}.english-family-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:50px 0 23px}.english-family-heading h2{font-size:30px;letter-spacing:-1px;margin:8px 0}.english-family-heading p{color:#65776c;font-size:14px;line-height:1.7}.english-family-heading a{color:#25674d;white-space:nowrap}.english-family-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.english-family-card{text-align:left;background:#fff;border:1px solid #dce5db;border-radius:22px;overflow:hidden;cursor:pointer;padding:0;color:var(--en-ink);font:inherit;transition:transform .2s,box-shadow .2s}.english-family-card:hover{transform:translateY(-5px);box-shadow:0 16px 30px #1c473318}.english-family-card:focus-visible{outline:3px solid #1f7656;outline-offset:4px}.english-family-art{background:radial-gradient(circle at 75% 15%,#ffffff88,transparent),var(--family-color);height:155px;display:grid;place-items:center;position:relative}.english-family-art>span{font-size:75px;filter:drop-shadow(0 9px 0 #163b2d18);transition:transform .2s}.english-family-card:hover .english-family-art>span{transform:scale(1.09) rotate(-5deg)}.english-family-art>small{position:absolute;top:18px;left:18px;font-weight:800;opacity:.65}.english-family-copy{padding:23px}.english-family-copy small{font-size:11px;color:#63806e}.english-family-copy h3{font-size:21px;margin:10px 0}.english-family-copy p{font-size:13px;line-height:1.7;min-height:45px;color:#65776c}.english-family-copy b{display:block;border-top:1px solid #e7eee4;padding-top:15px;font-size:12px}.game-modal:has(.english-mode-picker){height:auto!important;max-width:560px!important}.english-mode-picker{display:grid;gap:15px;padding:20px}.english-mode-picker button{padding:15px;border:1px solid #b9cabc;border-radius:12px}.eco-match-check{padding:25px;min-height:250px;background:#edf4e8;border-radius:18px;text-align:center}.eco-match-check h3{font-size:23px}.eco-match-check p{font-size:11px;color:#667b68}.eco-match-links,.eco-match-answers{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:650px;margin:25px auto}.eco-match-links>div{display:grid;gap:8px}.eco-match-check button{min-height:48px;padding:10px;border:1px solid #abc5a7;border-radius:10px;background:#fff;font-size:16px;cursor:pointer}.eco-match-check button[aria-pressed=true]{background:#c8eaa7;border:2px solid #398048}
body:has(.en-main){margin:0;background:var(--en-paper);color:var(--en-ink);font-family:system-ui,-apple-system,'Malgun Gothic',sans-serif}body:has(.en-main) *{box-sizing:border-box}.en-header{max-width:1200px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:22px 25px}.en-brand{font-size:27px;font-weight:800;color:#244e3c;text-decoration:none;letter-spacing:-1px}.en-brand span{font-weight:500}.en-brand i{color:#80a951;font-size:20px;margin-left:3px}.en-header nav{display:flex;gap:8px;flex-wrap:wrap}.en-header nav a{padding:13px 10px;min-height:44px;color:#577362;text-decoration:none;font-size:13px}.en-header nav a[aria-current=page]{background:#dcead4;border-radius:10px;color:#214c3b;font-weight:800}.en-header button,.en-main button{font:inherit;border:1px solid #bfcfbc;padding:11px 15px;min-height:44px;border-radius:10px;background:#fff;color:#254e3c;cursor:pointer}.en-main button.english-primary{background:var(--en-mint);border:0}.en-main button:disabled{opacity:.55;cursor:not-allowed}.en-main a{color:#2c7351}.en-main{max-width:1180px;margin:auto;padding:0 24px 60px}.en-main h1{font-size:clamp(32px,4vw,50px);letter-spacing:-1.5px}.en-main p{line-height:1.8}.en-breadcrumb{font-size:11px;letter-spacing:1px;padding:12px 0 25px;color:#6d8772}.en-main .en-hero{margin-bottom:35px}.en-main .en-hero a{color:#d7ebc1}.en-main .en-hero a.english-primary{color:#173c35}.en-quiet{display:inline-block;padding:15px}.en-launch{display:grid;grid-template-columns:1fr 1fr;gap:40px;background:#fff;padding:36px;border:1px solid #dde6d7;border-radius:24px}.en-launch-form{display:grid;gap:14px}.en-main label{display:grid;gap:7px;font-size:13px;font-weight:700}.en-main select,.en-main input{width:100%;min-height:46px;padding:10px 12px;border:1px solid #bccfb7;border-radius:8px;background:#f9fcf5;color:#284638;font:inherit;font-size:16px}.en-muted{font-size:12px;color:#72816c}.en-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:28px 0}.en-metrics>div{padding:24px;background:#e4edda;border-radius:18px;display:grid;gap:10px}.en-metrics strong{font-size:30px;font-weight:700}.en-metrics strong i{font-size:13px;font-style:normal}.en-metrics span,.en-metrics a{font-size:11px}.en-games,.en-vocabulary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.en-games>a,.en-vocabulary article{display:block;position:relative;border:1px solid #dbe6d5;background:white;border-radius:18px;padding:23px;text-decoration:none}.en-games>a>span{font-size:34px}.en-games h3{font-size:18px}.en-games p{font-size:13px;color:#6a7d70}.en-games b{font-size:12px}.en-vocabulary h2{font-size:22px;letter-spacing:1px}.en-vocabulary article>div{display:grid;gap:8px;font-size:12px;color:#657c65;margin-bottom:15px}.en-vocabulary .en-favorite{position:absolute;right:10px;top:10px;font-size:20px}.en-search{max-width:450px;margin:25px 0}.en-review{max-width:760px;margin:20px auto}.en-question,.en-result{background:white;border:1px solid #d8e5d2;border-radius:24px;padding:36px;margin:25px 0}.en-question h2{font-size:32px}.en-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.en-question form{display:grid;gap:14px;margin-bottom:15px}.en-word-chips{display:flex;flex-wrap:wrap;gap:8px}.en-alert{background:#fff3d4;border:1px solid #e2ca86;padding:15px 20px;border-radius:12px;line-height:1.6;margin-bottom:20px}.en-history{padding:0;list-style:none}.en-history li{display:flex;flex-wrap:wrap;gap:20px;padding:15px;border-bottom:1px solid #d6e1d0;font-size:13px}.en-footer{max-width:1180px;margin:auto;border-top:1px solid #ccd9c4;padding:28px 24px;color:#70806a;font-size:12px;line-height:1.8}.en-footer a{color:#426c49;margin-right:22px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #367953;outline-offset:3px}
@media(max-width:800px){.english-spotlight,.en-hero{padding:30px;gap:12px;grid-template-columns:1fr}.english-flight-art{min-height:190px;max-width:320px;width:100%;margin:auto}.english-flight-art b{font-size:135px}.english-family-grid{grid-template-columns:1fr 1fr;gap:12px}.english-family-heading{align-items:start;flex-direction:column}.en-header{gap:10px;flex-wrap:wrap;padding:15px}.en-header nav{order:3;width:100%;justify-content:space-between;gap:0}.en-header nav a{font-size:12px;padding:12px 6px}.en-main{padding:0 15px 35px}.en-launch{grid-template-columns:1fr;padding:23px;gap:15px}.en-games,.en-vocabulary{grid-template-columns:1fr 1fr}.en-metrics{gap:8px}.en-metrics>div{padding:15px}.en-metrics strong{font-size:24px}.en-question,.en-result{padding:22px}.en-hero h1{margin-top:16px}.english-portal{padding:15px 12px 40px}.english-family-copy{padding:16px}.english-family-copy h3{font-size:18px}.english-family-art{height:125px}.english-family-copy p{min-height:66px}.english-family-heading h2{font-size:26px}}
@media(max-width:400px){.english-family-grid,.en-games,.en-vocabulary{grid-template-columns:1fr}.english-family-card{display:grid;grid-template-columns:105px 1fr}.english-family-art{height:100%;min-height:178px}.english-family-art>span{font-size:53px}.english-family-copy p{min-height:0}.english-spotlight{padding:25px}.en-metrics{grid-template-columns:1fr}.en-metrics>div{grid-template-columns:1fr 1fr}.en-header button{font-size:12px}.eco-match-check{padding:14px}.eco-match-check h3{font-size:19px}}
@media(prefers-reduced-motion:reduce){.english-family-card,.english-family-art>span,.english-flight-art b{transition:none}}
.english-portal .english-family-heading h2{color:#eef6e5}.english-portal .english-family-heading p{color:#a5bfae}.english-portal .english-family-heading a{color:#c6e6a9}body:has(.english-portal)>.eco-arcade-link{display:none}
.eco-lite .game-modal,.eco-lite .game-overlay{animation:none!important}.game-overlay:has(.sky-game) .game-modal{background:#e8f0e6!important}
/* Quality pass: coherent navigation, visible learning progress and recovery states. */
.english-game-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 22px;color:#d8eadb}
.english-family-heading#games{scroll-margin-top:90px}
.english-category{display:flex;gap:6px;flex-wrap:wrap}
.english-category button,.english-recent{min-height:44px;border-radius:24px;border:1px solid #9ebda755;background:#ffffff09;color:#dcebdc;padding:9px 15px;cursor:pointer;font:600 12px inherit}
.english-category button[aria-pressed=true]{background:#c3ed8b;color:#173c35;border-color:#c3ed8b}
.english-filter-count{font-size:12px;color:#b9d0bb}.english-recent{margin-left:auto}
.eco-match-steps{display:flex;gap:6px;padding:0;margin:0 0 10px;list-style:none}
.eco-match-steps li{display:flex;align-items:center;justify-content:center;gap:5px;flex:1;padding:7px 3px;border-radius:10px;background:#edf0e8;color:#708273;font-size:11px;border:1px solid #d4ddce}
.eco-match-steps li span{display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:#dde5d5;font-weight:800}
.eco-match-steps li.active{background:#244e3c;color:white;border-color:#244e3c}
.eco-match-steps li.active span{background:#c3ed8b;color:#244e3c}.eco-match-steps li.done{background:#dcebd4;color:#335e39}
.eco-match-check button:disabled{opacity:.48;cursor:not-allowed}.eco-match-check button[aria-pressed=true]{box-shadow:0 0 0 3px #a6ce8a55}
.safari-study .safari-card-back b{font-size:clamp(26px,4vw,38px)!important}.safari-study .safari-card-back small{font-size:11px!important}.safari-study .safari-card-front b{font-size:clamp(14px,2.4vw,21px)!important}.safari-study .safari-study-guide{font-size:11px;line-height:1.5}
.en-review-progress{display:block;width:100%;height:8px;accent-color:#4e8655;border:0;margin:0 0 22px;border-radius:10px;overflow:hidden}
.en-question h2:focus{outline:none}.en-feedback{border-left:4px solid #4f875b;background:#edf7e5;padding:14px 18px;border-radius:12px;margin-top:16px}
.en-feedback.retry{border-color:#c89043;background:#fff4dd}.en-feedback h3{margin:0}.en-feedback p{margin:9px 0}
.en-feedback button{margin:4px 6px 0 0}.en-feedback button:first-of-type{background:transparent}
.en-word-filter{display:flex;align-items:center;gap:16px;margin:18px 0}.en-word-filter span{font-size:13px;color:#587261}
.en-word-filter button[aria-pressed=true]{background:#d8edbd;border-color:#537b40}.en-empty{padding:28px;background:#eaf0e0;border-radius:15px}
.en-alert a{display:inline-flex;min-height:44px;align-items:center;margin-left:12px}
.en-footer{display:flex;flex-wrap:wrap;gap:8px 18px}.en-footer a{display:inline-flex;min-height:44px;align-items:center;margin:0}.en-footer p{flex-basis:100%;margin:2px 0}
.sky-session-status{font-variant-numeric:tabular-nums}
@media(max-width:680px){
 .english-spotlight{padding:24px;gap:0}.english-spotlight h1{font-size:31px;margin:12px 0}
 .english-spotlight .english-flight-art{min-height:100px;max-width:230px;margin:8px auto 0}.english-spotlight .english-flight-art b{font-size:90px}.english-spotlight .english-flight-art>span{width:28px;height:28px;font-size:16px}
 .english-family-heading{margin:28px 0 16px}.english-game-tools{gap:8px}.english-category{width:100%;display:grid;grid-template-columns:repeat(2,1fr)}
 .english-recent{margin-left:0;width:100%;text-align:left;border-radius:12px}.english-filter-count{width:100%}
 .eco-match-steps li{font-size:10px;padding:5px 2px}.en-question{margin:16px 0;padding:20px}.en-question h2{font-size:28px;line-height:1.4}
 .en-choices button{min-height:64px;font-size:17px}.en-header:has(+.en-main .en-review) nav{display:none}
}
@media(prefers-reduced-motion:no-preference){.en-feedback{animation:en-feedback-in .18s ease-out}@keyframes en-feedback-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}}
