/* English Go! v8.2 - lessons first, scalable readable mobile typography. */
:root{--eg8-base:20px}
html[data-text-scale="large"]{--eg8-base:20px}
html[data-text-scale="extra"]{--eg8-base:23px}
html[data-text-scale="max"]{--eg8-base:25px}
body{font-size:var(--eg8-base)!important;line-height:1.55}
button,input,select,textarea{font-size:inherit;line-height:1.48}
/* Small labels are never reduced to 11-13px as they were in v8.1. */
.subtitle,.small-note,.eg8-endnote,.match-feedback,.example-box small,.reading-note{font-size:max(16px,calc(var(--eg8-base)*.83))!important}
.eg8-nav{min-height:82px;padding-bottom:max(8px,env(safe-area-inset-bottom))}
.eg8-nav button{min-width:0;min-height:60px;padding:6px 1px!important;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}
.eg8-nav button span{font-size:clamp(15px,calc(var(--eg8-base)*.78),19px)!important;line-height:1.3;white-space:nowrap}
.eg8-nav button svg{width:24px;height:24px}
.top-level,.top-coins{font-size:clamp(16px,calc(var(--eg8-base)*.85),20px)!important}
.eg8-hero .hero-tag{font-size:clamp(15px,calc(var(--eg8-base)*.83),20px)!important;letter-spacing:0!important}
.eg8-hero .hero-big-sub{font-size:clamp(19px,calc(var(--eg8-base)*.99),25px)!important;line-height:1.42}
.eg8-hero .hero-big-sub span{font-size:clamp(17px,calc(var(--eg8-base)*.86),22px)!important}
.eg8-hero .hero-cta{font-size:clamp(17px,calc(var(--eg8-base)*.92),22px)!important;min-height:56px;padding:11px 13px!important;line-height:1.32}
.eg82-hero{min-height:275px!important;display:flex;align-items:center}
.eg82-hero .hero-copy{width:65%;z-index:2;position:relative}
.eg82-hero .hero-mascot-wrap{width:50%;opacity:.92}
.eg82-stats .achievement-stat strong{font-size:calc(var(--eg8-base) * 1.02)!important}
.eg82-stats .achievement-stat small,.eg82-stats .stat-tiny{font-size:max(16px,calc(var(--eg8-base)*.80))!important;line-height:1.38!important}
.eg82-section-head{margin-top:22px;margin-bottom:12px;align-items:center}
.eg82-section-head h2{font-size:calc(var(--eg8-base)*1.18)!important}
.eg82-section-head .eg8-kicker{font-size:max(16px,calc(var(--eg8-base)*.8))!important}
.eg82-section-head .eg8-link{font-size:max(16px,calc(var(--eg8-base)*.82))!important;max-width:45%;text-align:right;white-space:normal;line-height:1.4}
.eg82-continue{width:100%;min-height:126px;background:linear-gradient(110deg,#fff,#f9f5ff);border:1px solid #e9e1fa;box-shadow:0 8px 23px #6551a314;border-radius:23px;padding:12px;display:flex;align-items:center;gap:14px;text-align:left;min-width:0}
.eg82-continue-media{display:block;flex:0 0 91px;width:91px;height:95px;border-radius:17px;overflow:hidden;background:#eae5f7}
.eg82-continue-media img{width:100%;height:100%;object-fit:cover;display:block}
.eg82-continue-media .eg8-word-placeholder{padding:4px}
.eg82-continue-media .eg8-word-placeholder>*:not(.eg8-placeholder-icon){display:none!important}
.eg82-continue-media .eg8-placeholder-icon{font-size:35px}
.eg82-continue-copy{display:flex;flex-direction:column;min-width:0;flex:1;gap:3px}
.eg82-continue-kicker{color:#7257a8;font-size:max(16px,calc(var(--eg8-base)*.8));font-weight:850}
.eg82-continue-copy strong{font-size:calc(var(--eg8-base)*1.2);font-weight:900;color:#2c2852;overflow-wrap:anywhere;line-height:1.28}
.eg82-continue-copy>span:not(.eg82-continue-kicker){font-size:calc(var(--eg8-base)*.96);color:#4e4569;overflow-wrap:anywhere}
.eg82-continue-copy em{font-size:max(16px,calc(var(--eg8-base)*.8));font-style:normal;color:#6d668a}
.eg82-continue-arrow{flex:none;color:#6858aa}
.eg82-learning-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:13px}
.eg82-learning-card{border:1px solid #f0e9f8;box-shadow:0 6px 17px #6c5a9c0f;border-radius:22px;min-height:195px;padding:17px 13px;background:linear-gradient(150deg,#eaf8f4,#fafcff);display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;min-width:0}
.eg82-learning-card:nth-child(2){background:linear-gradient(150deg,#f5ebff,#fff8fa)}
.eg82-learning-emoji{font-size:32px;line-height:1.2}
.eg82-learning-card strong{font-size:calc(var(--eg8-base)*.98);line-height:1.35;font-weight:900;color:#3b365b}
.eg82-learning-card small{font-size:max(16px,calc(var(--eg8-base)*.83));line-height:1.4;color:#585274}
.eg82-card-link{font-size:max(16px,calc(var(--eg8-base)*.85));font-weight:850;color:#725bbf;margin-top:auto}
.eg82-library-link{width:100%;min-height:56px;margin-top:14px;border-radius:17px;background:#eee9ff;color:#544899;font-weight:850;border:1px solid #e0d6fb;font-size:max(17px,calc(var(--eg8-base)*.9));display:flex;align-items:center;justify-content:center;gap:10px;line-height:1.4;padding:9px 12px}
.eg82-mission{margin:17px 0 26px}.eg82-mission .quest-summary strong{font-size:calc(var(--eg8-base)*.99)!important}
.eg82-game-section{padding-top:19px;border-top:1px solid #e5e0f1}
.eg82-game-intro{color:var(--muted);font-size:calc(var(--eg8-base)*.85);line-height:1.5;margin:-4px 0 15px}
.eg8-tile-copy strong{font-size:calc(var(--eg8-base)*.99)!important;line-height:1.38}
.eg8-tile-copy small{font-size:max(16px,calc(var(--eg8-base)*.85))!important;line-height:1.43}
.eg8-tile-copy em{font-size:max(16px,calc(var(--eg8-base)*.78))!important;line-height:1.4}
.eg8-kicker,.eg8-match-meta,.eg8-match-labels,.eg8-challenge-banner small{font-size:max(16px,calc(var(--eg8-base)*.8))!important}
.eg8-link{font-size:max(16px,calc(var(--eg8-base)*.83))!important}
.eg8-allgames-cta{font-size:calc(var(--eg8-base)*.93)!important;min-height:56px}
.eg8-game-tile{min-height:197px;padding:16px 13px}
.eg8-match-grid .match-card{font-size:calc(var(--eg8-base)*.90)!important;line-height:1.35;min-height:92px;overflow-wrap:anywhere}
.feature-tile strong,.stage-copy strong,.level-card h3,.setting-row strong,.list-row strong,.verb-stage-copy strong,.lesson-play-top strong,.panel>b,.section-head h2{font-size:calc(var(--eg8-base)*1.05)!important;line-height:1.35}
.feature-tile small,.stage-copy small,.verb-stage-copy small,.setting-row small,.list-row small,.level-card p,.mission-dashboard small,.continue-label small,.continue-label>span,.progress-grid small,.badge-card small,.word-game-step,.eyebrow,.hero-tag,.reading-note,.label{font-size:max(16px,calc(var(--eg8-base)*.83))!important;line-height:1.48!important}
.choice-line button,.selector,.search,.btn,.word-chip,.option,.quiz-options button,.question-text,.builder-target{font-size:calc(var(--eg8-base)*.95)!important;line-height:1.48}
.translate,.example-box p,.main-word{font-size:calc(var(--eg8-base)*1.25)!important;line-height:1.45}
.pronun{font-size:calc(var(--eg8-base)*1.02)!important}
.lesson-stage{min-height:112px!important}
.lesson-stage .stage-copy small{line-height:1.4!important}
.study-card .study-visual{height:245px}
/* Font size chooser makes the current size visibly distinguishable. */
.eg8-font-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.eg82-size-option{min-width:0;min-height:73px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;border:2px solid #e1d9ef;border-radius:15px;background:var(--surface);color:var(--text);padding:8px 4px}
.eg82-size-option b{font-size:16px;line-height:1.35}
.eg82-size-option small{font-size:14px}
.eg82-size-selected{border-color:#8271d5;background:#eae4ff;color:#3c347d}
/* Prevent five-item nav and two-column tiles from clipping on narrow devices. */
@media(max-width:380px){.eg82-hero{min-height:255px!important}.eg82-hero .hero-copy{width:69%}.eg82-hero .hero-mascot-wrap{width:47%}.eg82-hero .hero-cta{font-size:16px!important}.eg8-nav button span{font-size:15px!important}.eg82-continue-media{flex-basis:79px;width:79px;height:86px}.eg82-learning-grid{gap:8px}.eg82-learning-card{padding:14px 10px}.eg8-home-featured{gap:8px}.eg8-game-tile{padding:14px 10px}.eg82-section-head h2{font-size:calc(var(--eg8-base)*1.06)!important}}
@media(max-width:350px){.eg82-learning-grid{grid-template-columns:1fr}.eg82-learning-card{min-height:135px}.eg82-hero .hero-copy{width:75%}.eg82-hero .hero-mascot-wrap{width:40%}.eg82-section-head .eg8-link{max-width:40%}.eg8-nav button span{font-size:14px!important}}
@media(prefers-reduced-motion:reduce){.eg82-continue,.eg82-learning-card{transition:none}}

/* Lesson level selectors and header actions need readable, touch-friendly type. */
.level-switch button,.verb-level-switch button{font-size:clamp(16px,calc(var(--eg8-base)*.83),22px)!important;min-height:46px;padding:10px 5px;line-height:1.25}
.lessons-title h1{font-size:calc(var(--eg8-base)*1.23)!important}
.lessons-title .back-btn,.lessons-title .search-open{min-width:43px;min-height:43px}
.lesson-adventure-banner b{font-size:calc(var(--eg8-base)*1.03)!important}
.lesson-adventure-banner small,.verb-lesson-cta small{font-size:max(16px,calc(var(--eg8-base)*.8))!important}
.verb-lesson-cta strong{font-size:calc(var(--eg8-base)*1.02)!important}
@media(max-width:355px){.level-switch button{font-size:15px!important}}

/* Word-specific, image-led illustrations. No category photo substitution. */
.eg82-picture{width:100%;height:100%;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 44% 40%,#fff 0%,transparent 52%),linear-gradient(135deg,#eaf8f3 0%,#f3f2ff 100%);isolation:isolate}
.eg82-tone-peach{background:radial-gradient(circle at 40% 41%,#fff5ea 0%,transparent 48%),linear-gradient(125deg,#ffe9e1,#fff5f8 60%,#f4eaff)}
.eg82-tone-sky{background:radial-gradient(circle at 47% 30%,#fff 0%,transparent 49%),linear-gradient(135deg,#e5f5ff,#f0f3ff 58%,#e5f9f6)}
.eg82-tone-sun{background:radial-gradient(circle at 47% 31%,#fff 0%,transparent 49%),linear-gradient(135deg,#fff1d7,#f7f4ff 56%,#e5faf0)}
.eg82-picture-orb{position:absolute;border:18px solid #fff8;border-radius:50%;z-index:0}
.eg82-orb-one{width:155px;height:155px;top:-67px;right:-42px}
.eg82-orb-two{width:95px;height:95px;bottom:-51px;left:-16px;border-width:12px}
.eg82-picture-illustration{position:relative;z-index:2;display:flex;gap:8px;align-items:center;justify-content:center;filter:drop-shadow(0 12px 15px #71678a27);font-size:clamp(87px,19vw,142px);line-height:1.2;text-align:center;min-width:0;max-width:98%;}
.eg82-picture-illustration.eg82-multi{font-size:clamp(52px,12vw,85px);gap:2px}
.eg82-picture-illustration.eg82-multi span:nth-child(2){transform:translateY(20px) rotate(6deg)}
.eg82-picture-illustration.eg82-multi span:nth-child(3){transform:translateY(-11px) rotate(-9deg)}
.eg82-picture-floor{position:absolute;z-index:1;width:57%;height:14px;border-radius:100%;bottom:28px;left:21%;background:#5b619e13;filter:blur(5px)}
.eg82-no-picture{height:100%;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:17px;text-align:center;background:linear-gradient(135deg,#f1f0ff,#ecf8fa);overflow:hidden}
.eg82-no-picture-badge{font-size:34px;color:#8a7fc6;font-weight:900;width:68px;height:68px;background:#fff9;display:grid;place-items:center;border-radius:21px}
.eg82-no-picture small{font-size:clamp(15px,calc(var(--eg8-base)*.75),19px);color:#605d91;font-weight:800;line-height:1.35}
.eg82-no-picture strong{font-size:clamp(24px,calc(var(--eg8-base)*1.4),35px);line-height:1.2;color:#464074;overflow-wrap:anywhere;max-width:95%}
.eg82-no-picture>span:last-child{font-size:clamp(18px,calc(var(--eg8-base)*.98),24px);line-height:1.4;color:#47606c;overflow-wrap:anywhere}
.eg82-continue-media .eg82-picture-illustration{font-size:50px}
.eg82-continue-media .eg82-picture-illustration.eg82-multi{font-size:27px;gap:0}
.eg82-continue-media .eg82-picture-floor{bottom:10px}
.eg82-continue-media .eg82-no-picture{padding:4px;gap:1px}
.eg82-continue-media .eg82-no-picture>*:not(.eg82-no-picture-badge){display:none}
.eg82-continue-media .eg82-no-picture-badge{width:61px;height:61px;font-size:25px;border-radius:12px}
.picture-image .eg82-picture-illustration{font-size:58px}
.picture-image .eg82-picture-illustration.eg82-multi{font-size:35px}
.picture-image .eg82-picture-floor{bottom:8px}
.quiz-reveal-art .eg82-picture-illustration{font-size:70px}
.study-card .study-visual img.eg82-exact-photo{object-fit:contain;background:linear-gradient(135deg,#f5f5ff,#e8f9f4)}
@media(max-width:390px){.eg82-picture-illustration{font-size:clamp(75px,20vw,115px)}.eg82-picture-illustration.eg82-multi{font-size:clamp(43px,12vw,70px)}.picture-image .eg82-picture-illustration{font-size:52px}.picture-image .eg82-picture-illustration.eg82-multi{font-size:31px}}

/* Newly added category cards never show broken/repeated generic image assets. */
.stage-art .eg82-stage-icon{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:clamp(32px,calc(var(--eg8-base)*1.6),44px);line-height:1;background:linear-gradient(135deg,#f3f0ff,#eaf8f2);border-radius:14px}
