/* NEXA English Studio — editorial education palette, WCAG-minded typography, responsive screens. */
#mainContent:has(.nexa-english-hero){--nx-ink:#152d4b;--nx-muted:#536b82;--nx-teal:#087c80;--nx-gold:#cf9d43;color:var(--nx-ink)}
#mainContent:has(.nexa-english-hero) .learn-panel{box-shadow:0 14px 45px rgba(12,35,61,.055);border:1px solid #e2eaf0;border-radius:23px}
#mainContent:has(.nexa-english-hero) p,#mainContent:has(.nexa-english-hero) li{font-size:14px;line-height:1.75;color:#51647c}
#mainContent:has(.nexa-english-hero) h2{font-size:clamp(19px,2vw,26px);line-height:1.32;letter-spacing:-.5px;color:#152d4b}
#mainContent:has(.nexa-english-hero) h3{font-size:16px;color:#203e5e}
#mainContent:has(.nexa-english-hero) .learn-eyebrow{font-size:11px;color:#157f82;letter-spacing:1.5px}
#mainContent:has(.nexa-english-hero) .learn-btn{font-size:13px;font-weight:750;min-height:46px;border-radius:13px;padding:10px 17px}
#mainContent:has(.nexa-english-hero) .learn-btn.primary{background:linear-gradient(115deg,#036d79,#178f91);border-color:#036d79;box-shadow:0 8px 22px #0e829127;color:white}
#mainContent:has(.nexa-english-hero) .learn-btn.primary:hover{background:linear-gradient(115deg,#07545b,#0a777c)}
#mainContent:has(.nexa-english-hero) .learn-btn.light{background:#f2e8d4;border-color:#ead9bb;color:#745222}
#mainContent:has(.nexa-english-hero) .learn-textarea{font:500 15px/1.85 'DM Sans',sans-serif;color:#1b334c;border:1.5px solid #b9cbd5;border-radius:15px;background:#fbfdfd;padding:16px;min-height:114px;resize:vertical;width:100%;transition:border .2s,box-shadow .2s;box-sizing:border-box}
#mainContent:has(.nexa-english-hero) .learn-textarea:focus{outline:none;border-color:#168a8d;box-shadow:0 0 0 4px rgba(24,135,137,.13);background:#fff}
#mainContent:has(.nexa-english-hero) .learn-select{font-size:13px;height:47px;border-radius:12px;border-color:#cbd8df;background:#fff}
#mainContent:has(.nexa-english-hero) .learn-mini-help{font-size:13px;background:#eff8f7;color:#35596a;border:1px solid #d9ece8;line-height:1.8}
#mainContent:has(.nexa-english-hero) .learn-chip{font-size:12px}
.nexa-english-hero{position:relative;display:flex;overflow:hidden;min-height:250px;align-items:center;justify-content:space-between;padding:31px 42px;margin-bottom:17px;color:#fff;border-radius:25px;background:radial-gradient(circle at 89% 10%,#308c93b0,transparent 38%),linear-gradient(116deg,#0e2a4b,#164662 54%,#075d67);box-shadow:0 17px 40px #06304d24;isolation:isolate}
.nexa-english-hero:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent 0 34px,rgba(255,255,255,.018) 35px 36px);z-index:-1}
.nexa-english-hero>div:first-child{position:relative;z-index:2;max-width:680px}
.nexa-english-kicker{font-size:11px;letter-spacing:2.2px;font-weight:850;color:#f2cc8d;text-transform:uppercase}
.nexa-english-hero h1{font-family:Manrope,'DM Sans',sans-serif;font-size:clamp(29px,3.35vw,49px);line-height:1.13;letter-spacing:-1.65px;margin:14px 0 12px;color:white;font-weight:850}
.nexa-english-hero h1 em{font-style:normal;color:#b5ebdd}
.nexa-english-hero p{max-width:580px;color:#d5e8ea!important;font-size:14px!important;margin:0 0 23px}
.nexa-hero-markers{display:flex;flex-wrap:wrap;gap:9px}
.nexa-hero-markers button{font-size:11px;font-weight:650;padding:8px 12px;border:1px solid #ffffff40;color:#f7f7fa;background:#ffffff14;border-radius:99px;cursor:pointer}
.nexa-hero-markers button:hover{background:#ffffff31;border-color:#ffffff9a}
.nexa-english-ornament{position:relative;display:grid;place-items:center;width:155px;height:155px;flex-shrink:0;border-radius:34px;transform:rotate(-9deg);background:linear-gradient(140deg,#fffaf0,#e9f6ee);color:#0d6b70;box-shadow:19px 19px 0 #ffffff10,0 21px 50px #0003;margin:0 38px 0 8px}
.nexa-english-ornament span{font-weight:900;font-size:65px;letter-spacing:-5px}
.nexa-english-ornament i{position:absolute;top:-19px;right:-20px;color:#efc271;font-style:normal;font-size:37px}
.nexa-english-ornament b{position:absolute;bottom:-17px;left:-10px;display:grid;place-items:center;border-radius:50%;width:51px;height:51px;background:#eac27c;color:#174960;font-size:25px}
.nexa-eng-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:17px 0 0;padding:6px;border-radius:18px;background:#ebf2f2;box-shadow:inset 0 1px 4px #0633410a}
.nexa-eng-tab{display:flex;justify-content:center;gap:8px;align-items:center;min-height:56px;border:1px solid transparent;color:#355469;border-radius:13px;background:transparent;font:750 12px/1.3 Manrope,'DM Sans',sans-serif;cursor:pointer;transition:.16s ease}
.nexa-eng-tab span{font-size:17px;color:#248b85}
.nexa-eng-tab:hover{background:#f6fdfb;color:#0b555f}
.nexa-eng-tab.active{background:#fff;border-color:#d2e2dc;box-shadow:0 7px 21px #064c6020;color:#096b73}
.nexa-eng-tab:focus-visible,.nexa-writing-mode button:focus-visible{outline:3px solid #17a8a5;outline-offset:2px}
.nexa-eng-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:12px 0 22px;font-size:12px;color:#7592a4}
.nexa-eng-breadcrumb button{background:none;border:none;font:750 12px Manrope,sans-serif;color:#13777e;cursor:pointer;padding:6px 0}
.nexa-eng-breadcrumb strong{color:#40586e}
.nexa-eng-dashboard{margin-left:auto!important}
.nexa-english-studio{display:grid;grid-template-columns:minmax(0,1.07fr) minmax(0,.93fr);gap:20px;align-items:start}
.nexa-writing-editor{padding:30px!important;background:#fff}
.nexa-panel-label{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.nexa-panel-icon{width:49px;height:49px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(140deg,#d9f0ed,#e8f8ef);font-size:24px;color:#087e85}
.nexa-panel-label span:last-child{display:grid;gap:3px}
.nexa-panel-label b{font-size:12px;letter-spacing:1.1px;color:#1c6571}
.nexa-panel-label small{font-size:11px;color:#7c91a1}
.nexa-writing-editor h2{font-size:29px!important;margin:0 0 11px;letter-spacing:-1px!important}
.nexa-editor-lead{margin:0 0 18px}
.nexa-writing-mode{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:18px 0 15px}
.nexa-writing-mode button{flex:1;min-width:125px;padding:11px;border-radius:12px;background:#f4f8f8;border:1px solid #d5e2e6;color:#476478;font-weight:750;font-size:12px;cursor:pointer}
.nexa-writing-mode button.active{background:#e3f5f0;border-color:#57b9a7;color:#006c71}
.nexa-writing-mode.compact{margin:9px 0;gap:6px}
.nexa-writing-mode.compact button{font-size:11px;padding:9px}
.nexa-topic-card{border-left:4px solid #b79a5a;background:#fff9ec;border-radius:8px 13px 13px 8px;padding:15px 17px;margin:13px 0 22px}
.nexa-topic-card>strong{color:#6e5129;font-size:12px;letter-spacing:.4px}
.nexa-assigned-topic{font-size:14px!important;color:#473b27!important;margin:8px 0 12px;font-weight:650}
.nexa-writing-tip{background:#eff8f5;border-radius:12px;padding:14px 16px;color:#316a68;font-size:13px;margin:15px 0}
.nexa-editor-label{font-size:13px!important;color:#1b4564!important;margin-bottom:9px}
#mainContent:has(.nexa-english-hero) .nexa-writing-textarea{min-height:275px;background:repeating-linear-gradient(#fff 0 37px,#d8eaec 38px,#fff 39px);line-height:39px;padding:5px 19px;resize:vertical}
.nexa-word-meter{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin:12px 2px;font-size:11px;color:#718497}
.nexa-word-meter span:first-child{color:#0c7e80;font-weight:850;font-size:13px}
.nexa-word-meter .nexa-over-limit{color:#c43d46!important}
.nexa-writing-actions{display:flex;flex-wrap:wrap;gap:9px;margin:20px 0 15px}
.nexa-writing-privacy{font-size:11px!important;color:#73859b!important;line-height:1.7!important;border-top:1px solid #eaf1f3;padding-top:14px}
.nexa-evaluation-empty{min-height:350px;display:flex;flex-direction:column;justify-content:center;text-align:center;align-items:center;padding:29px}
.nexa-empty-symbol{display:grid;place-items:center;font-size:40px;color:#168480;width:90px;height:90px;border-radius:28px;background:#e9f6f2;transform:rotate(-7deg);margin-bottom:23px}
.nexa-evaluation-empty h3{font-size:22px!important;margin:0 0 11px}
.nexa-evaluation-empty p{max-width:360px}
.nexa-checklist{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin-top:14px}
.nexa-checklist span{background:#edf7f5;color:#13736d;border:1px solid #cfe9e4;border-radius:99px;font-size:10px;padding:7px 10px;font-weight:750}
.nexa-report-card{padding:23px!important}
.nexa-report-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}
.nexa-report-heading h2{margin:8px 0 4px;font-size:21px!important}
.nexa-report-heading p{font-size:11px!important;margin:0}
.nexa-score-orb{min-width:83px;height:83px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:conic-gradient(#198e89 0 72%,#f1eee0 72% 100%);border:7px solid #e8f1eb;border-radius:50%;color:#fff;background:linear-gradient(130deg,#087e88,#175b67);box-shadow:0 7px 22px #087e882a}
.nexa-score-orb strong{font-size:27px;font-weight:900;line-height:1}
.nexa-score-orb small{font-size:11px;line-height:1.4}
.nexa-report-rubric{display:grid;gap:12px;padding:18px 0;margin:12px 0 15px;border-top:1px solid #eff3f4;border-bottom:1px solid #eff3f4}
.nexa-rubric-label{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:#36546c;margin-bottom:6px}
.nexa-rubric-label b{color:#097c7f}
.nexa-rubric-track{height:8px;border-radius:99px;background:#e9eef1;overflow:hidden}
.nexa-rubric-track i{display:block;height:100%;background:linear-gradient(90deg,#116878,#34b9a3);border-radius:99px}
.nexa-feedback-note{padding:14px 16px;background:#f0f8f6;border-radius:11px;font-size:12px!important;color:#3e6874!important}
.nexa-corrected-block{padding:17px;background:#effaf4;border:1px solid #d2efe0;border-radius:15px;margin:18px 0}
.nexa-corrected-title{display:flex;justify-content:space-between;align-items:center;gap:7px}
.nexa-corrected-block h3{margin:0!important;color:#0b6c59!important}
.nexa-corrected-block p{margin:10px 0!important;color:#1c594e!important;font-size:14px!important}
.nexa-corrected-block small{color:#618b7d;font-size:11px}
.nexa-feedback-columns{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.nexa-feedback-columns>div{background:#f6f9fa;border-radius:13px;padding:13px 15px}
.nexa-feedback-columns h3{font-size:13px!important}
.nexa-feedback-columns h3 span{color:#0b827b}
.nexa-feedback-columns li,#mainContent:has(.nexa-english-hero) .nexa-report-card li{font-size:12px!important;line-height:1.65!important;margin:7px 0}
.nexa-report-card ul,.nexa-report-card ol{padding-left:20px}
.nexa-report-card .learn-suggestion{background:#fffbf1;border:1px solid #eee3c5;padding:13px 15px;border-radius:12px}
.nexa-report-card .learn-suggestion strong{color:#8d6829;font-size:12px}
.nexa-report-card .learn-suggestion p{font-size:12px!important;margin:8px 0 0}
.nexa-report-card .learn-suggestion b{color:#137967}
.nexa-subheading{font-size:14px!important;margin:23px 0 12px}
.nexa-eval-limitation{font-size:10px!important;color:#77899d!important;margin-top:22px}
.nexa-audit-panel{padding:20px!important;margin-top:15px}
.nexa-audit-panel h2{font-size:19px!important}
.nexa-audit-panel .learn-audit-line strong{font-size:12px;color:#264f66}
.nexa-original-sentence{font-size:13px!important}
.nexa-fixed-sentence{color:#107661!important;font-weight:700;font-size:12px!important}
.nexa-feedback-error{padding:12px;background:#fff2e8;border:1px solid #f0d6bf;color:#845529;border-radius:12px;margin-bottom:12px;font-size:12px}
.nexa-vocab-page{padding:28px!important;max-width:100%!important}
.nexa-vocab-header,.nexa-vocab-feature{display:flex;gap:20px;justify-content:space-between}
.nexa-vocab-header h2{font-size:28px!important;margin:7px 0}
.nexa-vocab-header p{margin:0}
.nexa-vocab-icon{display:grid;place-items:center;width:76px;height:76px;flex-shrink:0;border-radius:24px;background:linear-gradient(140deg,#f6e3ac,#f1b96e);color:#2d4657;font-size:29px;font-weight:900}
.nexa-vocab-controls{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0}
.nexa-vocab-feature{flex-wrap:wrap;display:grid;grid-template-columns:1.2fr .8fr;gap:18px}
.nexa-vocab-word{background:linear-gradient(128deg,#0f5362,#126d71);color:white;border-radius:19px;padding:25px}
.nexa-vocab-word span{font-size:11px;letter-spacing:1.2px;color:#d6e8da;font-weight:800}
.nexa-vocab-word h2{font-size:38px!important;color:white!important;margin:9px 0 14px}
.nexa-vocab-word p{color:#e1f2ee!important;font-size:16px!important;margin:0}
.nexa-vocab-definitions{display:grid;gap:10px}
.nexa-vocab-definitions>div{border:1px solid #e4eee9;border-radius:14px;background:#f9fcfb;padding:16px}
.nexa-vocab-definitions strong{color:#0a686f;font-size:12px;letter-spacing:.5px}
.nexa-vocab-definitions p{margin:7px 0 0!important}
.nexa-vocab-examples{grid-column:1/-1;border-left:4px solid #c39848;border-radius:10px;background:#fff9eb;padding:18px 22px}
.nexa-vocab-examples strong{font-size:13px;color:#795d2f}
.nexa-vocab-examples p{font-size:13px!important;color:#625842!important;margin:8px 0!important}
.nexa-vocab-compose{margin-top:25px;border-top:1px solid #e5eeee;padding-top:18px}
.nexa-vocab-compose h3{font-size:20px!important;margin:0 0 8px}
.nexa-vocab-compose p{margin:0 0 13px}
.nexa-mini-evaluation{background:#eff8f5;border:1px solid #cee7de;padding:17px;margin:18px 0;border-radius:15px}
.nexa-mini-heading{display:flex;justify-content:space-between;gap:12px;align-items:center}
.nexa-mini-heading strong{font-size:14px;color:#125f67}
.nexa-mini-heading span{color:#0f7d7a;font-size:12px;font-weight:850}
.nexa-mini-evaluation ul{padding-left:19px}
.nexa-mini-evaluation li{font-size:12px!important;margin:8px 0}
.nexa-own-grammar{border-top:1px solid #e1edf1;padding-top:21px;margin-top:25px}
.nexa-own-grammar h3{margin:0 0 8px!important;font-size:20px!important}
.nexa-own-grammar p{font-size:13px!important;margin-bottom:12px}
#mainContent:has(.nexa-english-hero) .learn-lesson-content p{font-size:14px}
#mainContent:has(.nexa-english-hero) .learn-lesson-list>button{font-size:13px;min-height:46px}
#mainContent:has(.nexa-english-hero) .learn-lesson-list>button strong{font-size:12px}
#mainContent:has(.nexa-english-hero) .learn-exercise{max-width:100%}
#mainContent:has(.nexa-english-hero) .learn-answer strong{font-size:14px}
@media(max-width:1120px){.nexa-english-ornament{margin-right:3px}.nexa-eng-tab{font-size:11px}.nexa-english-studio{grid-template-columns:1fr}}
@media(max-width:780px){.nexa-english-hero{padding:29px 25px;min-height:210px}.nexa-english-ornament{width:106px;height:106px;margin:0 6px}.nexa-english-ornament span{font-size:49px}.nexa-eng-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.nexa-writing-editor{padding:23px!important}.nexa-vocab-feature{grid-template-columns:1fr}.nexa-vocab-examples{grid-column:auto}}
@media(max-width:530px){.nexa-english-hero{min-height:auto;padding:28px 21px}.nexa-english-hero h1{font-size:30px}.nexa-english-ornament{display:none}.nexa-eng-tabs{grid-template-columns:repeat(2,minmax(0,1fr));padding:5px}.nexa-eng-tab{justify-content:flex-start;padding:10px 11px;min-height:49px}.nexa-eng-breadcrumb{gap:7px}.nexa-english-studio{gap:15px}.nexa-writing-editor{padding:19px 17px!important}.nexa-writing-editor h2{font-size:23px!important}.nexa-writing-mode button{min-width:100px}.nexa-writing-actions .learn-btn{width:100%}.nexa-vocab-page{padding:20px 17px!important}.nexa-vocab-header h2{font-size:23px!important}.nexa-vocab-icon{width:52px;height:52px;font-size:22px;border-radius:15px}.nexa-vocab-controls{grid-template-columns:1fr}.nexa-vocab-word h2{font-size:30px!important}.nexa-feedback-columns{grid-template-columns:1fr}.nexa-score-orb{min-width:70px;height:70px}.nexa-report-card{padding:17px!important}}

/* Universal section navigation */
.nexa-route-toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:space-between;padding:9px 13px;margin:-7px 0 22px;background:#f6fafb;border:1px solid #dde9eb;border-radius:14px;box-shadow:0 3px 13px #17435c08}
.nexa-route-toolbar button{border:1px solid #cbdfe1;border-radius:10px;background:#fff;color:#1d6874;min-height:37px;padding:7px 14px;font:750 12px Manrope,sans-serif;cursor:pointer}
.nexa-route-toolbar button:hover{background:#e8f5f3}
.nexa-route-path{font-size:12px;color:#60758a;font-weight:700;text-align:center}
.nexa-route-path span{margin:0 8px;color:#acbfcb}
@media(max-width:540px){.nexa-route-toolbar{gap:8px}.nexa-route-path{order:3;width:100%;text-align:left}}

.nexa-mini-review-note{font-size:11px!important;color:#688090!important;margin-top:15px!important}
