/* GDN Polyglot Kids — Monochrome Focus design v0.2.
 * Visual inspiration: focused lessons and generous negative space, independently created.
 * Keeps v0.1 teaching engine intact and provides a reversible layout layer. */
:root{color-scheme:dark;--canvas:#050607;--type:#f7f9f8;--muted:#8e959a;--soft:#121516;--line:#282d30;--accent:#c5f57a;--wrong:#ffc37c;background:var(--canvas);color:var(--type);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
html,body{background:var(--canvas);color:var(--type);min-height:100%;letter-spacing:-.02em}
button,a{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.container{max-width:920px;padding:0 32px}
.topbar{max-width:920px;height:80px;padding:0 32px;color:var(--type)}
.logo{font-weight:900;letter-spacing:-1.3px;font-size:24px}
.logo-dot{color:var(--accent)}
.version{color:#596068;font-size:11px}
.pill,.count{background:transparent;color:var(--muted);border:0;border-radius:0}
.top-right .pill{padding:0;color:var(--muted)}
.hero{display:block;box-shadow:none;background:transparent;border-radius:0;min-height:0;overflow:visible;margin-top:26px}
.hero-copy{padding:45px 0 20px}
.eyebrow,.hero .eyebrow{font-size:12px;color:var(--accent);font-weight:800;letter-spacing:.17em}
.hero h1{font-size:clamp(49px,7.4vw,82px);font-weight:820;letter-spacing:-.065em;line-height:1.05;margin:27px 0;max-width:810px}
.hero h1 em{color:var(--accent);font-style:normal}
.hero p{color:var(--muted);font-size:17px;line-height:1.7;max-width:640px}
.hero-art{display:none}
.section{margin:45px 0 55px}
.section-head{margin-bottom:14px}
.section h2{font-size:clamp(26px,4.2vw,39px);font-weight:800;letter-spacing:-.055em}
.section-head .subtle{display:none}
.profiles{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.profile{background:transparent;border:0;border-radius:0;padding:24px 0;text-align:left;box-shadow:none;min-height:112px;border-top:1px solid var(--line);color:var(--type)}
.profile:last-child{border-bottom:1px solid var(--line)}
.profile.active.orange,.profile.active.violet{background:transparent;border-color:var(--accent)}
.profile:hover,.profile.active:hover{background:transparent;box-shadow:none;transform:none}
.avatar,.orange .avatar,.violet .avatar{border-radius:50%;background:#141818;width:60px;height:60px;font-size:30px;flex-shrink:0}
.profile-info strong{font-size:clamp(17px,2.2vw,21px);color:var(--type);font-weight:800}
.profile-info small,.profile-info .profile-progress{color:var(--muted);font-size:12px}
.profile.active .profile-info .profile-progress{color:var(--accent)}
.profile-arrow{color:var(--accent);font-size:26px}
.missions{margin-top:55px}
.missions .section-head{margin-bottom:23px}
.missions .section-head .subtle{display:block;margin-top:10px;max-width:550px}
.lesson-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:43px;row-gap:0}
.lesson-card{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none;color:var(--type);padding:24px 0;min-height:135px;display:grid;grid-template-columns:60px 1fr;grid-template-rows:auto auto auto;align-content:center;column-gap:15px;transition:none}
.lesson-card:hover{background:transparent;box-shadow:none;transform:none}
.lesson-icon,.lesson-card:nth-child(2) .lesson-icon,.lesson-card:nth-child(3) .lesson-icon,.lesson-card:nth-child(4) .lesson-icon{grid-column:1;grid-row:1/4;margin:0;background:#171a1a;border-radius:50%;height:58px;width:58px;font-size:25px;align-self:center}
.lesson-order{font-size:11px;color:var(--accent);font-weight:700;letter-spacing:.08em}
.lesson-card strong{font-weight:800;font-size:24px;letter-spacing:-.05em;margin:4px 0;line-height:1.2}
.lesson-subtitle{color:var(--muted);font-size:13px}
.lesson-foot{grid-column:2;grid-row:4;border-top:0;margin:7px 0 0;padding:0;width:100%;font-size:12px;color:#808b8d}
.lesson-foot b{color:var(--accent);font-size:21px}
.roadmap{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;padding:20px 0 0;color:var(--muted);margin-top:20px}
.roadmap strong{color:var(--type);font-size:14px}
.roadmap p{color:var(--muted);line-height:1.6}
.parent{margin-top:25px}
.textlink,.back,.ghost{color:var(--muted);font-size:14px}
.textlink:hover,.back:hover{color:var(--accent)}
.reset-panel{border:1px solid #543838;background:transparent;border-radius:0;color:var(--type)}
.reset-panel p{color:var(--muted)}
.footer{max-width:920px;border-top:1px solid var(--line);margin-top:55px;color:#697173;padding:25px 32px;font-size:12px}
.lesson-page,.exercise-page,.finish-page{max-width:780px}
.lesson-page .back{margin:28px 0 0}
.intro-card,.question-card,.finish-card{background:transparent;border:0;border-radius:0;box-shadow:none;padding:55px 0}
.intro-card{text-align:left}
.intro-icon{font-size:35px;background:transparent;width:auto;height:auto;display:inline-block;margin:0 0 24px}
.intro-card h1,.finish-card h1{font-size:clamp(51px,7vw,74px);font-weight:830;line-height:1.03;letter-spacing:-.065em;margin:17px 0}
.intro-card .subtitle{font-size:22px;color:var(--muted);margin-bottom:33px}
.rule{background:transparent;border:0;border-left:2px solid var(--accent);border-radius:0;padding:0 0 0 22px;color:var(--type);font-size:18px;line-height:1.7}
.rule>span{display:none}
.rule strong{font-size:13px;color:var(--accent);font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.rule p{font-size:18px;line-height:1.55;margin-top:5px}
.intro-meta{justify-content:flex-start;color:var(--muted);margin:32px 0;font-size:13px}
.primary{background:var(--accent);color:#11150a;border:0;border-radius:16px;font-weight:850;box-shadow:none;transition:transform .12s ease,opacity .12s ease}
.primary:hover{filter:none;opacity:.92}
.primary:active{transform:scale(.985)}
.primary.huge{min-height:67px;padding:16px 25px;font-size:19px;letter-spacing:-.03em}
.intro-card .primary.huge{justify-content:space-between;text-align:left;max-width:550px;padding:20px 28px}
.vocab{background:transparent;border:0;border-radius:0;padding:0;margin:36px 0}
.vocab h3{color:var(--type);font-size:22px;letter-spacing:-.045em}
.vocab p{color:var(--muted);font-size:15px}
.vocab-grid{gap:0 18px;grid-template-columns:repeat(3,minmax(0,1fr))}
.vocab-word{background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;color:var(--type);padding:15px 3px;min-height:71px}
.vocab-word:hover{background:transparent;border-color:var(--accent)}
.vocab-word span{font-size:18px}
.vocab-word small{color:var(--muted);font-size:13px}
.exercise-nav{margin:8px 0 23px;display:flex;align-items:center}
.exercise-nav .pill{color:var(--muted);font-size:12px;text-align:right}
.progress-meta{color:var(--muted);font-size:13px;margin-bottom:11px}
.progress-meta span:last-child{color:var(--muted);opacity:.8}
.progress-track{height:5px;background:#242927;border-radius:30px;margin:0}
.progress-track>div{background:var(--accent);border-radius:30px}
.question-card{display:flex;flex-direction:column;min-height:min(680px,calc(100svh - 240px));padding:35px 0 0}
.question-top{display:block}
.question-top .eyebrow{color:var(--muted);font-weight:700;font-size:13px;letter-spacing:.055em}
.question-top h1{font-size:clamp(39px,5.2vw,58px);line-height:1.13;letter-spacing:-.055em;font-weight:850;max-width:680px;margin:35px 0}
.question-decoration{display:none}
.question-help{display:flex;gap:15px;flex-wrap:wrap;margin:0 0 26px}
.hint-button,.mode-button,.listen-button{background:transparent;color:#a4aab0;border:0;border-radius:0;font-size:14px;font-weight:700;padding:8px 0;text-align:left}
.hint-button:hover,.mode-button:hover,.listen-button:hover{background:transparent;color:var(--accent)}
.mode-button:disabled{opacity:.3}
.hint-panel{background:transparent;color:#d5d7c5;border:0;border-left:2px solid var(--accent);border-radius:0;font-size:15px;line-height:1.6;padding:0 0 0 15px;margin:8px 0 22px}
.answer-section{margin-top:auto}
.answer-tray{background:transparent;border:0;border-bottom:2px solid #3b4242;border-radius:0;min-height:100px;align-items:flex-start;padding:17px 0;gap:8px}
.placeholder{font-size:18px;color:#5b6364;font-weight:500}
.chosen-chip{background:var(--accent);color:#11150c;border:0;border-radius:12px;font-size:20px;min-height:50px;padding:12px 15px;font-weight:850}
.chosen-chip span{color:#344526}
.chosen-chip:disabled{opacity:.85}
.word-bank{display:flex;gap:12px;align-content:flex-start;min-height:95px;flex-wrap:wrap;margin:30px 0 23px}
.word-chip{background:#161a1b;color:var(--type);border:0;border-bottom:3px solid #363c3d;border-radius:12px;padding:14px 19px;font-size:20px;min-height:54px;font-weight:770}
.word-chip:hover:not(:disabled){background:#222826}
.word-chip:disabled{opacity:.18}
.typed-input{background:#121718;color:var(--type);border:1px solid #383f40;border-radius:14px;padding:18px 16px;font-size:21px}
.typed-input:focus{border-color:var(--accent)}
.typed-input::placeholder{color:#707879}
.field-label{color:var(--muted);font-size:15px}
.feedback{background:transparent;border:0;border-left:3px solid;border-radius:0;padding:7px 0 7px 17px;margin:5px 0 22px;font-size:15px}
.feedback.correct{color:var(--accent);border-color:var(--accent);background:transparent}
.feedback.wrong{color:var(--wrong);border-color:var(--wrong);background:transparent}
.feedback.reveal{color:#c4c3ff;border-color:#c4c3ff;background:transparent}
.feedback strong{font-size:19px}
.feedback p{font-size:19px;line-height:1.4}
.inline-audio{color:inherit;font-size:14px}
.question-actions{display:flex;align-items:stretch;gap:16px;margin:0 -10px 0;padding:12px 10px 8px;position:sticky;bottom:0;background:var(--canvas);z-index:2}
.question-actions .primary{min-width:0;flex:1}
.secondary{background:transparent;border:0;border-radius:0;color:var(--muted);font-weight:750;font-size:15px}
.secondary:disabled{opacity:.28}
.exercise-tip{display:none}
.finish-page{padding-top:15px}
.finish-card{text-align:center}
.finish-confetti{color:var(--accent);letter-spacing:7px}
.finish-card .eyebrow{color:var(--accent)}
.finish-icon{font-size:68px}
.finish-card p{color:var(--muted);font-size:18px;line-height:1.65}
.stars{color:var(--accent)}
.stars span{color:#383f40}
.score{color:var(--accent);font-size:64px}
.finish-actions>*{min-width:200px}
@media(max-width:750px){
.container{padding:0 24px}
.topbar{padding:0 24px;height:70px}
.hero{margin-top:7px;border-radius:0}
.hero-copy{padding:28px 0 4px}
.hero h1{font-size:clamp(43px,11vw,62px);letter-spacing:-.062em;line-height:1.08;margin:22px 0}
.hero p{font-size:16px;line-height:1.6;max-width:370px}
.hero-art{display:none}
.section{margin:44px 0}
.section h2{font-size:30px}
.profiles{display:flex;flex-direction:column;gap:0}
.profile{min-height:112px;padding:20px 0;border-top:1px solid var(--line)}
.profile:last-child{border-bottom:1px solid var(--line)}
.avatar{width:54px;height:54px;font-size:27px}
.profile-info strong{font-size:19px}
.profile-info small{font-size:13px}
.missions{margin-top:48px}
.lesson-grid{display:block}
.lesson-card{padding:21px 0;min-height:130px}
.lesson-card strong{font-size:23px}
.lesson-icon{width:54px;height:54px}
.lesson-foot{font-size:13px}
.roadmap{margin-top:0}
.footer{padding:20px 24px;margin-top:35px;gap:6px}
.intro-card,.finish-card{padding:37px 0}
.intro-card h1,.finish-card h1{font-size:clamp(48px,12vw,66px)}
.intro-card .subtitle{font-size:20px;margin-bottom:30px}
.rule p{font-size:17px}
.intro-meta{gap:14px}
.vocab-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 15px}
.vocab-word span{font-size:17px}
.exercise-nav{margin:0 0 26px}
.exercise-nav .pill{font-size:12px}
.progress-meta{font-size:13px}
.question-card{min-height:max(570px,calc(100svh - 205px));padding-top:37px}
.question-top h1{font-size:clamp(36px,10vw,51px);margin:37px 0 24px}
.question-help{margin:0 0 12px;gap:24px}
.answer-tray{min-height:108px}
.word-bank{gap:10px;margin:27px 0 25px}
.word-chip{padding:13px 16px;font-size:19px;min-height:53px}
.question-actions{margin:0 -6px;padding:11px 6px calc(8px + env(safe-area-inset-bottom))}
.question-actions .primary{min-height:64px;font-size:18px}
.chosen-chip{font-size:18px}
}
@media(max-width:390px){
.container{padding:0 20px}
.topbar{padding:0 20px}
.hero h1{font-size:43px}
.hero p{font-size:15px}
.section h2{font-size:27px}
.profile-info strong{font-size:18px}
.question-top h1{font-size:39px}
.word-chip{font-size:18px;padding:12px 15px}
.footer{padding:20px}
}
@media(max-height:700px){.question-card{min-height:530px}.question-top h1{margin:24px 0}.hero-copy{padding-top:14px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Full-screen exercise: remove nonessential footer during practice. */
.exercise-page + .footer,.finish-page + .footer{display:none}

/* Focused entry into time-sensitive Foxford exam preparation */
.exam-feature{display:flex;align-items:center;gap:17px;border:1px solid #315569;background:#10222b;border-radius:17px;padding:19px 20px;margin:28px 0 13px;color:#fff;min-height:91px;text-decoration:none}
.exam-feature-icon{font-size:29px;flex-shrink:0}
.exam-feature>span:nth-child(2){display:flex;flex-direction:column;gap:7px;flex:1}
.exam-feature strong{font-size:21px;letter-spacing:-.04em}
.exam-feature small{font-size:13px;color:#9eafb7;line-height:1.4}
.exam-feature b{font-size:25px;color:#a1e643}
.exam-feature:hover{border-color:#a1e643}
@media(max-width:390px){.exam-feature{padding:17px 15px}.exam-feature strong{font-size:19px}.exam-feature small{font-size:12px}}
