/* English Compass AI combined stylesheet; original source order retained. */

/* source: styles.css */
:root{--ink:#152e3d;--teal:#147f78;--deep:#123c46;--cream:#f9faf6;--muted:#667a82;--line:#dbe7e4;--mint:#e5f6f0;--gold:#ffcc7b}*{box-sizing:border-box}body{margin:0;background:var(--cream);font:15px/1.55 system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}button:disabled{cursor:not-allowed;opacity:.5}.shell{max-width:1190px;padding:0 26px;margin:auto}header{height:76px;background:white;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}nav{display:flex;height:100%;align-items:center;justify-content:space-between;gap:14px}.brand{font-weight:850;font-size:22px;letter-spacing:-1px;white-space:nowrap}.brand span{color:var(--teal)}.brand i{font-style:normal;color:#eeb967}.navlinks{display:flex;gap:32px;color:#4b636a;font-size:14px}.navbuttons,.buttons{display:flex;gap:10px;flex-wrap:wrap}button{border:0;border-radius:40px;padding:12px 20px;font-weight:700}.primary{background:var(--teal);color:white}.primary:hover{background:#106861}.outline{border:1px solid #cfdedb;color:var(--ink);background:#fff}.soft{color:#0f6b64;background:var(--mint)}.textbtn{background:transparent;color:var(--teal);padding:9px}.eyebrow{text-transform:uppercase;font-weight:850;font-size:12px;letter-spacing:2px;color:var(--teal)}h1,h2,h3{letter-spacing:-1px;line-height:1.15;margin:10px 0}h1{font-size:clamp(40px,5.5vw,70px)}h2{font-size:clamp(27px,3.3vw,39px)}h3{font-size:20px}p{color:var(--muted);line-height:1.75}.hero{padding:88px 0 72px;display:grid;grid-template-columns:1.08fr .92fr;gap:52px;align-items:center}.hero p{font-size:18px;max-width:580px}.hero-panel{background:linear-gradient(140deg,#0f4852,#138378);padding:35px;border-radius:34px;color:white;min-height:385px;box-shadow:0 20px 50px #134c5433}.hero-panel p{color:#d6f0e8}.hero-big{font:50px/1.05 Georgia,serif;margin:43px 0 35px}.speech{border:1px solid #ffffff60;border-radius:19px;padding:17px;background:#ffffff13}.section{padding:62px 0}.section-tint{background:#eaf5f0;box-shadow:0 0 0 100vmax #eaf5f0;clip-path:inset(0 -100vmax)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:23px;padding:25px;box-shadow:0 6px 25px #133d4808}.feature{min-height:215px}.feature .emoji{font-size:26px}.feature p{font-size:14px}.muted{color:var(--muted)}.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{background:#e9f6f0;color:#126a64;border-radius:30px;font-size:12px;padding:6px 12px;font-weight:750}.ribbon{background:var(--deep);color:white;padding:42px;border-radius:27px;display:flex;justify-content:space-between;align-items:center;gap:24px}.ribbon p{color:#d0e2e2}.ribbon .primary{background:var(--gold);color:var(--ink)}.wizard{max-width:900px;margin:50px auto 95px}.progress{display:flex;gap:8px;margin:23px 0}.progress>div{height:7px;background:#dce8e4;border-radius:8px;flex:1}.progress>.active{background:var(--teal)}.question{font-size:26px;font-weight:800;letter-spacing:-.6px;margin:20px 0}.option{display:block;width:100%;padding:17px;margin:11px 0;text-align:left;color:var(--ink);border-radius:14px;background:#fff;border:1px solid var(--line);font-weight:600}.option:hover,.option.selected{border:1px solid var(--teal);background:#f0faf6}.navbottom{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:25px}.notice{background:#fff5e1;border:1px solid #f3d59f;color:#78581c;border-radius:14px;padding:12px 16px;font-size:13px}.success{background:#e8f7ed;border:1px solid #bde2c7;color:#206c48;border-radius:14px;padding:12px 16px;font-size:13px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.formgrid label{display:grid;gap:7px;font-weight:750;font-size:13px}.formgrid label.wide{grid-column:1/-1}input,select,textarea{width:100%;border:1px solid #d2e2de;background:white;padding:14px;border-radius:13px;color:var(--ink)}textarea{resize:vertical;min-height:125px}.dashboard{padding:40px 0 90px;display:grid;grid-template-columns:240px 1fr;gap:22px}.dashsidebar{align-self:start;position:sticky;top:100px}.dashsidebar button{display:block;width:100%;text-align:left;background:transparent;color:var(--ink);border-radius:12px;margin-top:6px}.dashsidebar button.active{background:#e6f5ee;color:#0d776c}.dashmain{min-width:0}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.stat{background:#fff;border:1px solid var(--line);border-radius:19px;padding:20px}.stat strong{font-size:34px;line-height:1.2;color:var(--teal);display:block}.line{border-top:1px solid var(--line);margin:25px 0}.item{padding:17px 0;border-bottom:1px solid var(--line)}.item:last-child{border:0}.itemrow{display:flex;align-items:center;justify-content:space-between;gap:12px}.lesson-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.lesson-card{background:white;border:1px solid var(--line);padding:24px;border-radius:20px}.level{font-size:13px;color:var(--teal);font-weight:800}.bar{height:9px;border-radius:20px;background:#e0eae7;overflow:hidden}.bar>span{display:block;height:100%;background:var(--teal)}.dialog{background:#f1f7f4;border-radius:17px;padding:16px;margin:12px 0}.dialog.user{background:#eaf1fc;margin-left:16%}.dialog.ai{margin-right:16%}.layout2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.small{font-size:13px}.loading{opacity:.7}.media-card .kind{font-size:12px;color:var(--teal);font-weight:800;letter-spacing:1px}.blank{padding:22px;background:#eef4f2;border-radius:17px;color:var(--muted)}footer{border-top:1px solid var(--line);padding:24px 0;font-size:12px;color:#7a8f93}.footrow{display:flex;justify-content:space-between;gap:18px}@media(max-width:900px){.navlinks{display:none}.hero{grid-template-columns:1fr}.grid{grid-template-columns:1fr 1fr}.dashboard{grid-template-columns:1fr}.dashsidebar{position:static}.dashsidebar .menubuttons{display:flex;overflow:auto;gap:5px}.dashsidebar button{white-space:nowrap}.formgrid,.layout2{grid-template-columns:1fr}}@media(max-width:600px){header{height:68px}.shell{padding:0 16px}.brand{font-size:19px}.navbuttons .outline{display:none}.hero{padding:50px 0}.hero-big{font-size:42px}.grid,.lesson-grid,.stats{grid-template-columns:1fr}.ribbon{display:block}.ribbon button{margin-top:12px}.question{font-size:22px}}

/* Branded member access, private learning account, and spoken-English studio. */
.auth-inline{display:inline-flex;align-items:center;justify-content:center;padding:11px 20px;border-radius:35px;font-weight:750;text-align:center}
a.primary.auth-inline{background:var(--teal);color:white}
a.outline.auth-inline{background:#fff;color:var(--ink);border:1px solid #cadbd7}
.nav-extra{font-size:13px;font-weight:750;padding:9px 14px}
.auth-layout{display:grid;grid-template-columns:.93fr 1.07fr;gap:42px;padding:58px 0 96px;align-items:stretch;min-height:600px}
.auth-aside{background:linear-gradient(150deg,#12394a,#116a67);color:#fff;padding:50px 40px;border-radius:28px;display:flex;flex-direction:column;justify-content:center}
.auth-aside h1{font:clamp(37px,4.2vw,57px)/1.1 Georgia,serif;letter-spacing:-2px;margin:18px 0 22px}
.auth-aside p{font-size:16px;color:#daf1e8;max-width:440px}
.auth-benefit{padding:13px 0;color:#e5f7ee;border-bottom:1px solid #ffffff32;font-weight:600;font-size:14px}
.auth-card{padding:40px;align-self:center;max-width:560px;width:100%}
.auth-card h2{font-size:34px;margin:14px 0 12px}
.auth-card form{display:grid;gap:16px;margin-top:24px}
.auth-card label,.account-page label{display:grid;gap:7px;font-size:13px;font-weight:750}
.auth-card label input,.account-page label input{font-size:15px}
.auth-names{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.auth-wide{width:100%;border-radius:12px;min-height:49px;margin-top:7px}
.auth-switch{font-size:14px;text-align:center;margin:18px auto 8px}
.auth-switch a{color:var(--teal);font-weight:750;text-decoration:underline;text-underline-offset:3px}
.auth-message{margin:0}
.auth-gate{max-width:730px;margin:85px auto 120px;padding:46px;text-align:center}
.auth-gate .buttons{justify-content:center;margin:30px 0 18px}
.auth-gate h2{font-size:37px}
.auth-icon{font-size:44px;color:var(--teal)}
.account-page{padding:60px 0 100px}
.account-page h1{font-size:clamp(34px,4vw,52px)}
.account-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:30px 0}
.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:18px}
.account-grid .card{padding:30px}
.account-grid form{display:grid;gap:15px;margin-top:22px}
.account-grid .buttons{margin-top:23px}
.account-actions{display:flex;gap:10px;justify-content:flex-end;padding:18px 0}
.sync-note{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#1a756b}
.sync-dot{width:9px;height:9px;border-radius:100%;background:var(--teal);display:inline-block}
.auth-sidebar-link{display:block;color:var(--teal);padding:8px 11px;font-weight:750;text-decoration:none}
.voice-settings{margin-top:12px}
.voice-settings h3{margin:11px 0}
.voice-controls{display:grid;grid-template-columns:1.5fr 1fr;gap:16px;margin:20px 0}
.voice-controls label{font-size:13px;font-weight:750;display:grid;gap:7px}
.voice-settings .buttons{margin-top:12px}
.voice-settings .small{margin-bottom:0}
@media(max-width:940px){.auth-layout{gap:20px}.auth-aside{padding:30px}.auth-card{padding:30px}}
@media(max-width:740px){.auth-layout{display:block;padding:26px 0 60px}.auth-aside{min-height:250px;margin-bottom:18px}.auth-aside h1{font-size:34px}.auth-card{max-width:none}.account-grid,.account-stats{grid-template-columns:1fr}.account-page{padding-top:35px}.voice-controls{grid-template-columns:1fr}.nav-extra{display:none}}
@media(max-width:520px){.auth-names{grid-template-columns:1fr}.auth-aside{padding:26px}.auth-card,.auth-gate{padding:24px}.auth-gate{margin:38px auto 75px}.account-stats{gap:9px}.account-page h1{font-size:33px}}
@media(max-width:600px){
  .navbuttons #nav-start{display:none}
  .navbuttons #nav-account,.navbuttons .nav-extra{display:inline-flex!important;font-size:12px;padding:9px 12px}
}

/* English Compass public results and monthly learning plans */
.result-hero{background:linear-gradient(140deg,#0c444c,#163c48);border-radius:25px;color:#fff;padding:clamp(26px,5vw,62px);margin:34px 0 0}.result-hero h1{font-size:clamp(42px,6vw,80px);line-height:1.05}.result-hero h1 span{color:#eebc6d}.result-hero .eyebrow{color:#bde8df}.result-sub{max-width:680px;color:#e4efed;font-size:19px}.result-note{color:#d2e8e4;font-size:14px;margin-top:22px;max-width:740px}.result-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:26px 0}.result-tile{background:#ffffff12;border:1px solid #ffffff35;border-radius:16px;padding:20px;display:grid;gap:6px}.result-tile span{font-size:12px;color:#c2e2dd}.result-tile strong{font-size:27px}.result-hero .outline{color:#fff;border-color:#ffffff7a;background:#ffffff12}.pricing-page{padding-top:35px}.pricing-page h1{font-size:clamp(32px,5vw,56px)}.pricing-banner{margin:22px 0 35px;background:#ecf6f2;color:#145f58;padding:15px 20px;border-radius:14px;font-weight:650}.pricing-title{margin:35px 0 18px}.pricing-title h2{margin-bottom:5px}.pricing-title p{color:#697e85;margin:0}.price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.price-grid-exams{grid-template-columns:repeat(2,minmax(0,1fr))}.price-card{display:flex;flex-direction:column;gap:12px;min-height:310px;position:relative}.price-card.recommended{border:2px solid #147e78;box-shadow:0 12px 28px #147e781c}.price-card h3{font-size:24px}.price-card-head p{margin:7px 0}.price-card-foot{margin-top:auto}.price-card-foot button{width:100%}.pricing-tag{display:inline-flex;background:#def4eb;border-radius:30px;padding:5px 11px;font-size:12px;color:#0b655c;margin:0 6px 11px 0;font-weight:800}.price-line{display:flex;align-items:baseline;gap:5px}.price-line strong{font-size:40px;letter-spacing:-1.6px;color:#173d47}.price-line span{color:#788b8c}.price-detail{font-size:14px;color:#54727d;line-height:1.6;flex:1}.signup-plan{border-radius:15px;padding:16px;background:#f1f9f5;border:1px solid #c7e5dc;margin:14px 0;color:#16584f}.signup-plan strong{display:block;font-size:17px}.signup-plan p{margin:7px 0;font-size:13px}.signup-plan a{text-decoration:underline;font-weight:750;color:#0d6c65}.checkout-amount{background:#edf7f3;border-radius:15px;padding:25px;margin:25px 0;display:grid;gap:4px}.checkout-amount strong{font-size:42px;color:#16746c}.checkout-amount small{color:#698182}@media(max-width:850px){.price-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.price-grid,.price-grid-exams,.result-tiles{grid-template-columns:1fr}.result-hero{border-radius:18px}.price-card{min-height:auto}}

/* English Compass original natural acquisition and mission studio */
.method-hero{margin:38px 0 10px;border-radius:28px;background:linear-gradient(115deg,#0b424a,#216d6a);padding:clamp(28px,5vw,58px);color:#fff}
.method-hero .eyebrow{color:#bfeee2}.method-hero h1{font-size:clamp(38px,5vw,65px);max-width:800px}.method-hero h1 span{color:#f5c37c}
.method-hero p{max-width:710px;color:#d5ece6;font-size:17px}
.method-hero .outline{background:#fff;color:#164c4d;border-color:#fff}
.method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:25px}
.method-card{min-height:190px;padding:25px}.method-card h3{margin:15px 0 7px}.method-card p{color:#637882;font-size:14px;line-height:1.58}
.method-count{display:inline-flex;align-items:center;justify-content:center;width:31px;height:31px;border-radius:9px;background:#def2ec;color:#16786e;font-weight:750;font-size:12px;flex-shrink:0}
.method-modes{display:flex;gap:9px;flex-wrap:wrap;margin:22px 0}.method-modes button{min-width:112px}
.method-rhythm-header,.rhythm-row{display:flex;align-items:center;justify-content:space-between;gap:15px}.method-rhythm-header h3{margin:0}
.rhythm-list{margin:20px 0}.rhythm-row{justify-content:flex-start;padding:12px 0;border-bottom:1px solid #e4eeee}
.rhythm-row b{flex:1;font-size:14px}.rhythm-row>span:last-child{font-size:13px;color:#5d747a}
.method-footnote{padding:10px 0 45px}.method-mission{max-width:900px;margin-inline:auto;padding-top:55px}
.method-mission h1{font-size:clamp(32px,5vw,50px)}.method-mission-header{display:grid;gap:16px;margin-bottom:26px}.method-mission-header p{color:#617781}
.method-progress{display:flex;gap:5px}.method-progress i{height:6px;background:#d6e9e4;flex:1;border-radius:10px}.method-progress i.active{background:#168176}
.method-step{padding:clamp(20px,4vw,35px)}.method-step h2{font-size:30px;margin:4px 0 25px}.method-step button{max-width:100%}
.method-scene{background:#e9f6f1;border-radius:18px;padding:25px;border:1px solid #d0ece1;margin-bottom:17px;text-align:center}
.method-scene strong{display:block;margin-top:15px;color:#0e5e58}.method-emoji{font-size:70px;line-height:1.2}
.method-quote{font-family:Georgia,serif;font-size:clamp(19px,2.4vw,27px);color:#164d50;padding:22px;background:#edf6f3;border-radius:14px;margin:18px 0;line-height:1.5}
.method-term-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:19px 0}
.method-term{border:1px solid #d0e2df;padding:15px;border-radius:13px;display:grid;gap:7px}.method-term b{color:#0c6f68}.method-term small{color:#6c8186}
.method-options{display:grid;gap:10px;margin:20px 0}.method-options .option{text-align:left}.method-options .selected{border-color:#157c74;background:#eaf8f2}.method-options .correct-answer{border-color:#168471;background:#e7f8ef}.method-options .incorrect-answer{border-color:#cb8b81}
.method-step textarea{width:100%;min-height:140px;margin-top:15px}.method-done{margin:65px auto;text-align:center;max-width:760px}.method-done .buttons{justify-content:center}
@media(max-width:860px){.method-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.method-term-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.method-grid,.method-term-grid{grid-template-columns:1fr}.method-card{min-height:unset}.method-mission{padding-top:26px}}

/* Free video lesson lab: open-ended 15-minute modules */
.ec-video-sample{max-width:930px;margin:auto}.ec-video-sample h1{font-size:clamp(33px,4vw,53px)}.ec-video-panel{margin:27px 0 18px;padding:clamp(20px,4vw,32px)}.ec-video-frame{position:relative;aspect-ratio:16/9;background:#102d37;border-radius:17px;overflow:hidden;margin:22px 0}.ec-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.ec-quiz-group{border:1px solid #d6e6e1;border-radius:14px;padding:17px 18px;margin:19px 0}.ec-quiz-group legend{padding:0 5px}.ec-quiz-option{display:flex;gap:10px;align-items:center;margin:12px 0;cursor:pointer;padding:8px;border-radius:9px}.ec-quiz-option:hover{background:#ecf7f2}.ec-quiz-option input{width:18px;height:18px;flex:none}.ec-quiz-feedback{padding:13px 0;border-top:1px solid #e1ece8}.ec-quiz-feedback p{margin:6px 0}.ec-video-sample .buttons{margin-top:22px}.ec-video-sample textarea{margin-top:12px}
/* Branded company access and QA hub. No privileged business records are embedded here. */
.ec-qa-header{max-width:890px;padding-bottom:24px}.ec-qa-header h1{font-size:clamp(37px,4.7vw,60px)}.ec-qa-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.ec-qa-card{display:flex;flex-direction:column;align-items:flex-start;gap:11px;min-height:355px}.ec-qa-card h2{margin:0}.ec-qa-card p{margin:0 0 8px}.ec-qa-card .auth-inline{margin-top:auto}.ec-qa-card .outline.auth-inline{margin-top:0}@media(max-width:750px){.ec-qa-grid{grid-template-columns:1fr}.ec-qa-card{min-height:auto}}

/* English Compass 2026 premium homepage, learning preview and auth refresh */
:root{--ink:#20343a;--teal:#0d776f;--deep:#123e42;--cream:#f7f8f4;--muted:#64787a;--line:#e2e9e3;--mint:#e5f2e9;--gold:#f4c983}
body{font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:var(--cream);letter-spacing:-.01em}
header{background:rgba(255,255,252,.94);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid #e9ede7}
header .brand{font-size:24px;letter-spacing:-1.2px}
header .navlinks{gap:24px;color:#536a6c;font-weight:550}
header .navlinks a:hover{color:#0c7970}
button,.auth-inline{transition:background-color .18s ease,box-shadow .18s ease,transform .18s ease}
button:hover,.auth-inline:hover{transform:translateY(-1px)}
.primary{background:#087c71;box-shadow:0 6px 16px #087c7115}
.primary:hover{background:#08685f;box-shadow:0 10px 20px #087c7128}
.outline{background:#fff;border-color:#d3dfd9}
.ec-home{overflow:hidden}
.ec-home .ec-hero-new{display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:min(6vw,70px);min-height:640px;padding:82px 0 98px}
.ec-hero-copy{position:relative;z-index:2;max-width:625px}
.ec-pill-label{display:inline-flex;align-items:center;gap:10px;padding:10px 15px;background:#e5f4e9;border:1px solid #cde7d9;border-radius:100px;font-size:11px;color:#117269;letter-spacing:1.6px;font-weight:850;margin-bottom:25px}
.ec-live-dot{display:inline-block;height:7px;width:7px;flex:none;border-radius:50%;background:#31c79b;box-shadow:0 0 0 4px #31c79b24}
.ec-hero-copy h1{font:normal clamp(52px,5.1vw,80px)/1.035 Georgia,'Times New Roman',serif;letter-spacing:-3.8px;color:#18383c;margin:0 0 25px}
.ec-hero-copy h1 em{font-style:italic;color:#08776c;font-weight:400}
.ec-hero-copy .ec-lead{font-size:18px;line-height:1.75;color:#5e7275;max-width:530px;letter-spacing:0;margin:0 0 27px}
.ec-hero-actions{display:flex;gap:13px;align-items:center;flex-wrap:wrap;margin-bottom:26px}
.ec-hero-cta{padding:17px 25px;font-size:14px;border-radius:11px;box-shadow:0 12px 26px #087c7130}
.ec-hero-secondary{padding:16px 22px;font-size:14px;border-radius:11px}
.ec-trust-line{display:flex;flex-wrap:wrap;gap:9px 19px;font-size:11px;color:#6b7d7b;font-weight:650}
.ec-trust-line b{color:#159c84;margin-right:5px;font-size:13px}
.ec-display{height:540px;max-width:530px;width:100%;position:relative;display:flex;align-items:center;justify-content:center;margin:0 auto}
.ec-display::before{content:'';position:absolute;inset:65px 5px 30px 45px;border-radius:48% 52% 53% 47%;background:radial-gradient(circle at 24% 30%,#d5e9db,#a9d5c8 51%,#7caea7);opacity:.9;transform:rotate(-16deg)}
.ec-orbit{position:absolute;border:1px solid #b6d5ce;border-radius:50%;pointer-events:none}
.ec-orbit-outer{width:510px;height:435px;transform:rotate(20deg);opacity:.65}
.ec-orbit-inner{width:380px;height:380px;transform:rotate(-20deg);opacity:.65}
.ec-coach-preview{width:385px;max-width:calc(100% - 40px);background:white;box-shadow:0 28px 75px #163a3f36;border:1px solid #e1eae4;border-radius:24px;padding:26px;z-index:1;transform:rotate(-2deg);margin-top:10px}
.ec-preview-top{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #edf0ec;padding-bottom:15px;margin-bottom:26px}
.ec-preview-logo{font:bold 26px/1 Georgia,serif;color:#124b4a;letter-spacing:-2px}.ec-preview-logo span{color:#0e8a79}
.ec-preview-badge{display:inline-flex;align-items:center;gap:9px;font-size:9px;font-weight:850;letter-spacing:1.1px;color:#63847a}
.ec-preview-step,.ec-ticket-label{font-size:10px;font-weight:850;letter-spacing:1.7px;color:#168073}
.ec-coach-preview h3{font:normal 30px/1.2 Georgia,serif;margin:9px 0 25px;letter-spacing:-1px;color:#15383c}
.ec-chat-row{display:flex;gap:9px;align-items:end;margin:15px 0}
.ec-chat-own{justify-content:flex-end}
.ec-avatar{border-radius:50%;display:grid;place-items:center;flex:none;width:29px;height:29px;font-size:12px;font-weight:850;color:#fff}
.ec-avatar-coach{background:#147b72}.ec-avatar-me{background:#f0c47d;color:#3c4b42;font-size:10px}
.ec-message{padding:13px 15px;border-radius:14px;font-size:13px;line-height:1.5;max-width:255px;letter-spacing:0}
.ec-msg-coach{background:#edf7f2;color:#30524d;border-bottom-left-radius:4px}.ec-msg-own{background:#eef0ed;color:#29494c;border-bottom-right-radius:4px}
.ec-note{display:flex;align-items:center;gap:8px;font-size:11px;color:#4d7770;background:#f8faf7;padding:10px 12px;border-radius:10px;margin:22px 0 14px}
.ec-check-mark{display:grid;place-items:center;background:#d2f2e2;color:#0a9478;border-radius:50%;width:20px;height:20px;flex:none;font-weight:900}
.ec-audio-visual{height:40px;border:1px solid #e9efea;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:4px}
.ec-audio-visual span{width:3px;height:11px;border-radius:8px;background:#0f8574;opacity:.55}
.ec-audio-visual span:nth-child(3n){height:23px;opacity:.88}.ec-audio-visual span:nth-child(4n){height:28px}.ec-audio-visual span:nth-child(5n){height:15px}
.ec-floating{position:absolute;background:#fff;border:1px solid #dce9e4;box-shadow:0 15px 35px #14383a24;border-radius:15px;z-index:2}
.ec-float-upper{right:0;top:31px;padding:12px 16px;font-weight:850;letter-spacing:1px;font-size:10px;color:#275a50;display:flex;gap:8px;align-items:center;transform:rotate(3deg)}
.ec-float-bottom{left:0;bottom:30px;padding:16px;display:flex;gap:13px;align-items:center;transform:rotate(2deg);min-width:237px}
.ec-float-bottom strong{display:block;color:#1b4241;font-size:13px;line-height:1.2}.ec-float-bottom small{display:block;font-size:11px;color:#84918c;margin-top:5px}
.ec-sticker-icon{width:39px;height:39px;border-radius:12px;background:#fff0d4;color:#ab7332;display:grid;place-items:center;font-size:22px}
.ec-highlights{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid #e5eee8;border-radius:20px;margin-bottom:110px;padding:26px 12px;box-shadow:0 12px 24px #163a3f08}
.ec-highlights>div{display:flex;flex-direction:column;align-items:center;gap:5px;border-right:1px solid #e3ebe5;text-align:center;padding:8px}.ec-highlights>div:last-child{border:0}
.ec-highlights strong{font:normal 30px/1.1 Georgia,serif;color:#173e3c}.ec-highlights span{font-size:11px;color:#82918d;letter-spacing:.15px}
.ec-section-top{display:flex;gap:60px;align-items:end;justify-content:space-between;margin-bottom:34px}
.ec-section-top>div{flex:1}.ec-section-top>p{max-width:345px;font-size:15px;color:#637874;margin-bottom:6px}
.ec-section-index{display:block;color:#0e7f71;font-size:11px;letter-spacing:2.3px;font-weight:850;margin-bottom:14px}
.ec-section-top h2,.ec-choice h2{font:normal clamp(32px,3.9vw,53px)/1.12 Georgia,serif;letter-spacing:-2.2px;color:#17383b;margin:0}
.ec-section-top h2 em,.ec-choice h2 em{font-style:italic;color:#117c71;font-weight:400}
.ec-how-section{padding-bottom:115px}
.ec-step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.ec-step{background:white;border:1px solid #e0eae5;border-radius:18px;padding:30px 28px 28px;min-height:300px;box-shadow:0 8px 22px #14383a07}
.ec-step-num{color:#0f8776;font-size:13px;font-weight:850;letter-spacing:1px}.ec-step-num span{color:#9ba9a1;font-size:10px;letter-spacing:1.7px;margin-left:6px}
.ec-step-glyph{font:normal 59px/1 Georgia,serif;color:#0e8172;margin:25px 0 18px}
.ec-step h3{font:normal 24px/1.2 Georgia,serif;margin:0 0 10px;color:#19393d;letter-spacing:-.5px}.ec-step p{margin:0;color:#70827d;font-size:13px;line-height:1.75}
.ec-learning-banner{background:#123a3c;border-radius:30px;overflow:hidden;color:#fff;display:grid;grid-template-columns:1fr 1fr;min-height:458px;position:relative;margin:0 0 110px}
.ec-learning-copy{padding:64px 54px;position:relative;z-index:2}
.ec-banner-eyebrow{color:#9cdec9;font-size:11px;letter-spacing:2px;font-weight:850}
.ec-learning-copy h2{font:normal clamp(42px,4.6vw,61px)/1.05 Georgia,serif;letter-spacing:-2px;margin:24px 0;color:#fff}.ec-learning-copy h2 em{font-style:italic;color:#9edcca}
.ec-learning-copy p{max-width:425px;color:#c1d8d2;font-size:15px;line-height:1.75}
.ec-learning-list{display:flex;flex-wrap:wrap;gap:12px 22px;color:#cdebe2;font-size:12px;font-weight:650;margin:26px 0}
.ec-white-btn{background:#fff;color:#164b47;border-radius:11px;padding:14px 21px;font-size:13px}
.ec-learning-art{position:relative;min-height:420px;display:flex;justify-content:center;align-items:center}
.ec-art-circle{position:absolute;border:1px solid #ffffff24;border-radius:50%;width:420px;height:420px}
.ec-art-circle-one{background:#ffffff05}.ec-art-circle-two{width:310px;height:310px;border-color:#ffffff38}
.ec-lesson-ticket{position:relative;transform:rotate(5deg);background:#f9faf7;color:#22473e;border:1px solid #f7fcf9;border-radius:20px;width:335px;max-width:80%;padding:28px;box-shadow:0 26px 35px #0b25284f}
.ec-ticket-top{display:flex;justify-content:space-between;color:#89a199;font-size:9px;letter-spacing:1px;font-weight:850;border-bottom:1px solid #dde7df;padding-bottom:15px;margin-bottom:32px}
.ec-ticket-label{margin-bottom:12px}.ec-lesson-ticket strong{font:normal 33px/1.15 Georgia,serif;display:block;letter-spacing:-.8px}.ec-lesson-ticket p{font-size:12px;color:#778d84;margin:16px 0 28px}
.ec-ticket-bottom{display:flex;align-items:center;gap:13px;padding-top:16px;border-top:1px solid #e2e9e3;color:#7b9087;font-size:9px;letter-spacing:1px;font-weight:750}.ec-ticket-play{height:36px;width:36px;display:grid;place-items:center;background:#0d8073;color:white;border-radius:50%;font-size:12px}
.ec-choice{display:grid;grid-template-columns:1fr .88fr;gap:70px;align-items:center;padding:0 0 120px}.ec-choice p{max-width:545px;color:#70837d}.ec-choice-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:24px}.ec-choice-actions button{border-radius:11px}
.ec-level-strip{background:#fff;border:1px solid #e5ede6;border-radius:20px;padding:35px 34px 28px;box-shadow:0 12px 30px #14383a0a}
.ec-level-label{font-size:11px;letter-spacing:1.5px;font-weight:850;color:#8a9d93;margin-bottom:33px}
.ec-levels{display:flex;justify-content:space-between;gap:4px}.ec-levels span{border:1px solid #d1e8dd;border-radius:50%;height:41px;width:41px;display:grid;place-items:center;font-size:13px;font-weight:800;color:#147a70;background:#f6fbf8}
.ec-levels span:nth-child(n+4){background:#0d8375;color:white;border-color:#0d8375}
.ec-level-caption{display:flex;justify-content:space-between;font-size:11px;color:#8b9f95;margin-top:12px}.ec-level-rule{height:4px;border-radius:10px;background:linear-gradient(90deg,#d5eadd,#0e8677);margin:25px 0 16px}.ec-level-strip p{font-size:12px;margin:0}
/* Consistent editorial account screens */
.auth-layout{grid-template-columns:1fr 1fr;gap:28px;min-height:620px;align-items:center;padding:50px 0 90px}
.auth-aside{background:radial-gradient(circle at 90% 10%,#2e7f75,#123b41 58%);border-radius:25px;min-height:510px;box-shadow:0 18px 35px #0e363a24;padding:58px 47px}
.auth-aside h1{font:normal clamp(42px,4vw,57px)/1.11 Georgia,serif;letter-spacing:-2.4px}
.auth-aside .auth-benefit{border-color:#ffffff22;font-size:13px}
.auth-card{max-width:540px;border:1px solid #e6ece7;box-shadow:0 15px 36px #12383d0a;border-radius:23px;padding:42px}
.auth-card h2{font:normal 40px/1.1 Georgia,serif;letter-spacing:-1.5px;margin:18px 0 8px}
.auth-card label input{border-radius:10px;padding:15px 16px}
.auth-wide{font-size:14px;min-height:52px}
@media(max-width:1080px){.ec-home .ec-hero-new{gap:20px}.ec-hero-copy h1{font-size:clamp(49px,5.8vw,72px)}.ec-display{height:515px}.ec-coach-preview{max-width:88%}.ec-float-upper{right:8px}.ec-float-bottom{left:2px}}
@media(max-width:860px){.ec-home .ec-hero-new{grid-template-columns:1fr;padding:65px 0 40px;gap:30px}.ec-hero-copy{max-width:680px}.ec-display{max-width:555px;min-height:450px;height:490px}.ec-highlights{margin-bottom:75px}.ec-step-grid{grid-template-columns:1fr 1fr}.ec-section-top{gap:22px}.ec-learning-banner{grid-template-columns:1fr}.ec-learning-art{min-height:330px}.ec-lesson-ticket{transform:rotate(1deg)}.ec-choice{grid-template-columns:1fr;gap:28px;padding-bottom:70px}}
@media(max-width:620px){.ec-hero-copy h1{font-size:clamp(47px,11vw,60px);letter-spacing:-2.2px}.ec-hero-copy .ec-lead{font-size:16px}.ec-hero-cta,.ec-hero-secondary{width:100%;max-width:none}.ec-hero-actions{gap:10px}.ec-trust-line{display:grid;gap:4px}.ec-display{height:455px;max-width:100%}.ec-display::before{inset:50px 0 10px}.ec-coach-preview{max-width:87%;padding:21px;transform:rotate(-1deg)}.ec-preview-top{margin-bottom:18px}.ec-coach-preview h3{font-size:25px}.ec-chat-row{margin:10px 0}.ec-msg-own,.ec-msg-coach{font-size:11px}.ec-float-upper{font-size:8px;top:12px;right:0}.ec-float-bottom{bottom:2px;left:0;padding:10px 13px;min-width:0}.ec-float-bottom strong{font-size:11px}.ec-float-bottom small{font-size:9px}.ec-highlights{grid-template-columns:repeat(2,1fr);padding:20px 4px;margin:15px 0 75px}.ec-highlights>div:nth-child(2){border-right:0}.ec-highlights>div:nth-child(-n+2){border-bottom:1px solid #e3ebe5}.ec-highlights>div{padding:14px 5px}.ec-section-top{display:block}.ec-section-top>p{max-width:none}.ec-step-grid{grid-template-columns:1fr}.ec-step{min-height:auto;padding:24px}.ec-step-glyph{margin:12px 0}.ec-how-section{padding-bottom:65px}.ec-learning-banner{border-radius:22px;margin-bottom:75px}.ec-learning-copy{padding:42px 26px}.ec-learning-copy h2{font-size:46px}.ec-learning-art{min-height:290px}.ec-lesson-ticket{max-width:83%;padding:24px}.ec-choice h2{font-size:40px}.ec-choice-actions button{width:100%}.ec-level-strip{padding:28px 20px}.ec-levels span{width:35px;height:35px;font-size:11px}.auth-layout{display:block;padding:22px 0 60px}.auth-aside{min-height:300px;padding:36px 27px;margin-bottom:18px}.auth-aside h1{font-size:38px}.auth-card{padding:30px 23px}.auth-card h2{font-size:34px}}
@media(prefers-reduced-motion:reduce){button,.auth-inline{transition:none}}

/* English Compass AI — transparent homepage pricing, October 2026 */
.ec-home-pricing{padding:20px 0 96px;scroll-margin-top:95px}
.ec-pricing-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin:0 0 29px}
.ec-pricing-heading h2{font:normal clamp(34px,4.3vw,53px)/1.13 Georgia,serif;letter-spacing:-1.8px;margin:14px 0 0;color:#183e3d}
.ec-pricing-heading h2 em{font-style:italic;color:#158173}
.ec-pricing-heading>p{max-width:370px;margin:0 0 2px;font-size:14px;line-height:1.75}
.ec-home-price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.ec-home-price{background:#fff;border:1px solid #dfe9e4;border-radius:22px;padding:27px;min-width:0;display:flex;flex-direction:column;min-height:286px;box-shadow:0 8px 28px #0b3c3b0b;transition:border-color .15s,transform .15s}
.ec-home-price:hover{border-color:#95c9bc;transform:translateY(-2px)}
.ec-level-pill{display:inline-flex;align-self:flex-start;border-radius:30px;padding:6px 11px;background:#e8f4ee;color:#116b62;font-size:11px;font-weight:800;letter-spacing:.2px}
.ec-home-price h3{font:normal 25px/1.15 Georgia,serif;letter-spacing:-.55px;color:#183a38;margin:20px 0 7px}
.ec-home-price>p{font-size:13px;line-height:1.65;margin:0 0 12px;flex-grow:1}
.ec-home-price-amount{display:flex;align-items:baseline;gap:7px;margin:4px 0 16px}
.ec-home-price-amount strong{font-size:35px;line-height:1;font-weight:820;color:#137d70;letter-spacing:-1.4px}
.ec-home-price-amount span{font-size:12px;color:#748880}
.ec-home-price>a{display:block;color:#0b7267;font-size:13px;font-weight:800;border-top:1px solid #e9f0ec;padding-top:14px}
.ec-home-price>a:hover{text-decoration:underline}
.ec-exam-price{background:#103c40;color:#fff;border-radius:23px;padding:28px 35px;display:flex;justify-content:space-between;align-items:center;gap:32px;margin-top:20px}
.ec-exam-price h3{font:normal 28px Georgia,serif;letter-spacing:-.75px;margin:7px 0}
.ec-exam-price p{font-size:13px;color:#d0e7e0;line-height:1.6;margin:5px 0;max-width:640px}
.ec-exam-price .ec-section-index{color:#a8ddd0}
.ec-exam-price-action{display:flex;flex-direction:column;align-items:flex-end;gap:12px;white-space:nowrap}
.ec-exam-price-action strong{font-size:27px}
.ec-exam-price-action small{font-size:12px;font-weight:500;color:#d4e6df}
.ec-home-price-cta{display:inline-flex;align-items:center;justify-content:center;border-radius:13px;padding:13px 18px;text-align:center;font-weight:800;font-size:13px;white-space:normal}
.ec-pricing-bottom{display:flex;align-items:center;justify-content:space-between;gap:28px;border-radius:23px;padding:28px 32px;background:#ebf7ef;margin-top:22px}
.ec-pricing-bottom strong{color:#124d45;font-size:19px}
.ec-pricing-bottom p{margin:4px 0 0;max-width:640px;font-size:13px}
.ec-pricing-bottom .primary{background:#0d7c70;color:#fff;max-width:285px}
.ec-pricing-footnote{font-size:11px!important;color:#798981!important;margin:15px 4px 0!important}
@media(max-width:920px){.ec-home-price-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ec-pricing-heading{display:block}.ec-pricing-heading>p{max-width:640px;margin-top:17px}}
@media(max-width:650px){.ec-home-pricing{padding:15px 0 60px}.ec-home-price-grid{grid-template-columns:1fr}.ec-home-price{min-height:238px;padding:23px}.ec-home-price h3{margin-top:15px}.ec-pricing-heading h2{font-size:39px}.ec-exam-price,.ec-pricing-bottom{flex-direction:column;align-items:flex-start;padding:25px 22px;gap:15px}.ec-exam-price-action{align-items:flex-start}.ec-pricing-bottom .primary{max-width:none;width:100%}}
@media(prefers-reduced-motion:reduce){.ec-home-price{transition:none}.ec-home-price:hover{transform:none}}

/* English Compass AI — level- and interest-matched media cards */
.ec-media-head{margin:0 0 28px}
.ec-media-head h2{font:normal clamp(34px,4vw,49px)/1.14 Georgia,serif;letter-spacing:-1.2px;margin:12px 0}
.ec-media-head p{max-width:850px}
.ec-media-inline-link{display:inline-flex;align-items:center;padding:12px 18px;border-radius:30px;font-weight:750;font-size:13px}
.ec-media-match-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ec-media-match{display:flex;flex-direction:column;min-width:0;padding:23px}
.ec-media-match-top{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;font-size:11px;color:#708783;text-transform:capitalize}
.ec-media-match-tag{align-self:flex-start;background:#e9f8f0;color:#0f6a5f;padding:5px 10px;border-radius:22px;font-size:11px;font-weight:800;margin-top:18px}
.ec-media-match h3{font:normal 26px/1.15 Georgia,serif;letter-spacing:-.5px;margin:15px 0 7px}
.ec-media-match>p{font-size:13px;flex:1}
.ec-media-match-tip{border-top:1px solid #e7efeb;padding:13px 0 0}
.ec-media-match-tip strong{font-size:11px;color:#0d7367;text-transform:uppercase;letter-spacing:.8px}
.ec-media-match-tip p{font-size:12px;line-height:1.6;margin:6px 0 0}
.ec-media-match>a{font-size:13px;color:#0c796f;font-weight:800;margin-top:15px}
.ec-media-disclaimer{margin-top:21px}
@media(max-width:960px){.ec-media-match-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.ec-media-match-grid{grid-template-columns:1fr}.ec-media-head h2{font-size:36px}}


/* English Compass AI - mobile-first speaking assessment */
.ec-recorder-button{min-height:46px;min-width:168px;touch-action:manipulation}
.ec-recorder-button.is-recording{border-color:#a93d3d!important;background:#fff0ed!important;color:#a12c2c!important}
.ec-mic-status{font-size:13px;line-height:1.55;margin:14px 0 4px;padding:12px 15px;background:#eef6f1;border-radius:10px;color:#19584e}
.ec-mic-status[data-tone="recording"]{background:#fff0ed;color:#a12c2c}
.ec-mic-status[data-tone="error"]{background:#fff0ed;color:#a12c2c}
.ec-mic-status[data-tone="success"]{background:#e7f6ea;color:#116944}
.ec-mic-playback{border-radius:13px;border:1px solid #c8e1d7;background:#f5fbf8;padding:13px 16px;margin:14px 0 8px;display:grid;gap:10px}
.ec-mic-playback[hidden]{display:none!important}
.ec-mic-playback-label{font-size:12px;letter-spacing:.35px;font-weight:800;color:#145649}
.ec-mic-playback audio{display:block;width:100%;max-width:520px;min-height:48px}
.ec-delete-record{justify-self:start;min-height:44px}
@media(max-width:650px){.ec-recorder-button{width:100%}.ec-mic-playback{padding:12px}.ec-delete-record{width:100%;justify-self:stretch}.wizard .buttons:has([data-ec-record]){display:flex;flex-direction:column;align-items:stretch}.wizard .buttons:has([data-ec-record]) button{width:100%;min-height:48px}}

/* 2026-10-30 sitewide keyboard and reading-accessibility refinement */
.ec-accessible-skip{position:fixed;z-index:99999;top:-100px;left:12px;background:#fff;color:#103f3d;padding:12px 17px;border:3px solid #aa7739;border-radius:8px;font-weight:850;text-decoration:none}
.ec-accessible-skip:focus{top:9px}
a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #d99a44!important;outline-offset:3px}
button:disabled{cursor:not-allowed}
@media(prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}


/* source: study-plan.css */
/* English Compass AI weekly study-plan layer. Inherits existing typography and palette. */
.ec-plan h2{font:normal clamp(32px,4vw,47px)/1.11 Georgia,serif;letter-spacing:-1.3px;margin:10px 0 15px;color:#183d3d}
.ec-plan-intro{max-width:760px;color:#627a75;line-height:1.7}
.ec-plan-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:25px 0 24px}
.ec-plan-meta>div{background:#f3f9f5;border:1px solid #d9e9df;border-radius:14px;padding:15px;min-width:0}
.ec-plan-meta span{display:block;color:#6d8680;font-size:11px;margin-bottom:8px}
.ec-plan-meta strong{display:block;color:#23544e;font-size:14px;line-height:1.3;overflow-wrap:anywhere}
.ec-plan-progress-label{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:18px 0 9px;color:#23564f;font-size:13px}
.ec-plan-progress-label span{color:#728982}
.ec-plan-progress{height:11px;background:#e1ece6;border-radius:15px;overflow:hidden}
.ec-plan-progress span{height:100%;display:block;background:linear-gradient(90deg,#26a491,#0d8073);transition:width .22s ease;border-radius:15px}
.ec-plan-footnote{font-size:12px;line-height:1.5;color:#70827a;margin:10px 0 22px}
.ec-plan-notice{margin-bottom:24px;line-height:1.6}
.ec-plan-notice a{text-decoration:underline;text-underline-offset:2px;font-weight:700;color:#166f65}
.ec-plan-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:20px;align-items:start;margin-top:25px}
.ec-plan-days{display:grid;gap:9px;position:sticky;top:20px}
.ec-plan-day{width:100%;text-align:left;border:1px solid #e0e8e2;background:#fff;border-radius:13px;padding:13px 14px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:#244d46;cursor:pointer;transition:border-color .15s ease,background .15s ease}
.ec-plan-day.selected{background:#e7f5ee;border-color:#0d8174;box-shadow:inset 4px 0 #0d8174}
.ec-plan-day b{display:block;font-size:13px}
.ec-plan-day small{display:block;color:#78918a;font-size:11px;margin-top:4px}
.ec-plan-day-count{font-size:12px;color:#1d7268;font-weight:750;white-space:nowrap}
.ec-plan-detail{background:#fff;border:1px solid #e2e9e4;border-radius:19px;padding:23px;min-width:0}
.ec-plan-day-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e8eee9;padding-bottom:17px;margin-bottom:20px}
.ec-plan-day-heading .eyebrow{font-size:10px}
.ec-plan-day-heading h3{margin:8px 0 0;font:normal 27px Georgia,serif;color:#1a4842}
.ec-plan-daily-time{background:#e7f5ec;color:#247767;border-radius:20px;padding:8px 13px;font-size:12px;font-weight:750;white-space:nowrap}
.ec-plan-block{background:#fbfdfa;border:1px solid #e4ece5;border-radius:14px;padding:21px;margin:13px 0}
.ec-plan-block.completed{background:#f1faf3;border-color:#bedfc8}
.ec-plan-block-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:9px}
.ec-plan-skill{font-size:10px;font-weight:850;letter-spacing:1.2px;text-transform:uppercase;color:#158276}
.ec-plan-duration{font-size:11px;color:#708981}
.ec-plan-block h4{font-size:17px;font-weight:740;color:#244e47;margin:6px 0 9px}
.ec-plan-block p{font-size:13px;line-height:1.7;color:#627971;margin-bottom:14px}
.ec-plan-actions{display:flex;gap:9px;flex-wrap:wrap}
.ec-plan-actions button{font-size:12px;padding:10px 13px;min-width:145px;border-radius:10px}
.ec-plan-block .ec-plan-done-note{font-size:11px;color:#2d8b67;margin:10px 0 0}
.ec-plan-help{border:1px solid #e4eae5;padding:18px 20px;margin-top:17px;border-radius:13px;background:#f7faf8}
.ec-plan-help strong{color:#2c6057;font-size:14px}
.ec-plan-help p{font-size:12px;line-height:1.65;color:#69817a;margin:9px 0 14px}
.ec-plan-help button{font-size:12px}
.ec-plan-cloud-status{font-size:11px;color:#73857c;margin-top:17px}
.ec-plan-today-card{display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid #cfe7dc;background:linear-gradient(110deg,#effaf3,#f9fbf6);border-radius:18px;padding:22px 25px;margin-bottom:24px}
.ec-plan-today-card h3{margin:6px 0 8px;font:normal 25px Georgia,serif;color:#254e48}
.ec-plan-today-card p{font-size:12px;color:#688076;margin:0}
.ec-plan-today-card button{flex-shrink:0;font-size:12px;padding:12px 15px}
@media(max-width:1000px){.ec-plan-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.ec-plan-layout{grid-template-columns:175px minmax(0,1fr)}.ec-plan-detail{padding:18px}}
@media(max-width:720px){.ec-plan-layout{grid-template-columns:1fr}.ec-plan-days{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.ec-plan-day{padding:11px}.ec-plan-day-heading{flex-wrap:wrap}.ec-plan-today-card{display:block}.ec-plan-today-card button{margin-top:17px;width:100%}}
@media(max-width:420px){.ec-plan-meta{gap:7px}.ec-plan-meta>div{padding:12px}.ec-plan-meta strong{font-size:12px}.ec-plan-days{gap:6px}.ec-plan-day b{font-size:12px}.ec-plan-block{padding:15px}.ec-plan-actions button{width:100%}}
@media(prefers-reduced-motion:reduce){.ec-plan-progress span,.ec-plan-day{transition:none}}


/* source: ec-i18n.css */
/* EN/ES site-wide switch, available even when the main navigation collapses. */
.ec-language-switch{display:inline-flex;align-items:center;justify-content:center;gap:3px;flex-shrink:0;padding:4px;border-radius:30px;background:rgba(20,127,120,.065);border:1px solid rgba(20,127,120,.22);height:36px;white-space:nowrap;line-height:1}
.ec-language-switch button{display:inline-flex!important;align-items:center;justify-content:center;min-width:34px;min-height:28px;height:28px;padding:4px 7px!important;border:0;border-radius:24px;background:transparent;color:#285d61;font:700 11px/1 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.2px;cursor:pointer;box-shadow:none}
.ec-language-switch button.is-active{background:#147f78;color:white}
.ec-language-switch button:focus-visible{outline:3px solid #f0bf69;outline-offset:2px}
.ec-language-switch span{font-size:11px;opacity:.45;color:#526e72}
.ec-lang-toplinks{display:flex;align-items:center;gap:16px;margin-left:auto}
header .navbuttons .ec-language-switch{order:-1}
.ec-company .cc-top-actions .ec-language-switch{margin-right:6px}
@media(max-width:620px){
  header nav .navbuttons{gap:6px;flex-wrap:nowrap}
  header nav .navbuttons .primary{padding:10px 11px;font-size:12px;white-space:nowrap}
  header nav .ec-language-switch{height:32px;padding:2px;gap:1px}
  header nav .ec-language-switch button{min-width:29px;height:26px;min-height:26px;padding:3px!important;font-size:10px}
  .ec-lang-toplinks{gap:8px}
  .cc-top-actions{gap:7px}
  .ec-company .cc-top-actions .ec-language-switch{margin-right:0}
}
@media(max-width:375px){.ec-language-switch{gap:0}.ec-language-switch button{min-width:26px!important;font-size:10px!important}.ec-language-switch span{display:none}}


/* source: ec-header.css */
/* English Compass AI — restrained, accessible navigation, October 2026. */
.ec-shell-header{
  height:74px;
  position:sticky;
  top:0;
  z-index:80;
  overflow:visible;
  background:rgba(255,255,255,.98);
  border-bottom:1px solid #dde9e6;
  box-shadow:0 3px 22px rgba(14,53,54,.045);
}
.ec-shell-header .ec-nav{
  height:100%;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
}
.ec-shell-header .brand{
  flex:0 0 auto;
  font-size:22px;
  letter-spacing:-1.1px;
  white-space:nowrap;
  line-height:1.1;
}
.ec-shell-header .navlinks{
  display:flex;
  align-items:center;
  gap:3px;
  margin:0 0 0 auto;
  flex:0 1 auto;
}
.ec-shell-header .navlinks a{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:10px 12px;
  color:#37545b;
  border-radius:10px;
  font-size:13px;
  font-weight:700;
  text-decoration:none;
  white-space:nowrap;
  transition:color .15s ease,background .15s ease;
}
.ec-shell-header .navlinks a:hover,
.ec-shell-header .navlinks a[aria-current="page"]{
  background:#edf7f3;
  color:#0e6b62;
}
.ec-shell-header .navbuttons{
  display:flex;
  align-items:center;
  flex:0 0 auto;
  gap:10px;
  flex-wrap:nowrap;
}
.ec-shell-header .navbuttons #ec-nav-extra{display:none!important}
.ec-shell-header #nav-account{
  order:1;
  color:#26464c;
  background:transparent;
  border:1px solid transparent;
  font-size:13px;
  padding:10px 11px;
  font-weight:720;
  border-radius:12px;
  min-height:42px;
  white-space:nowrap;
}
.ec-shell-header #nav-account:hover{background:#f0f6f3}
.ec-shell-header .navbuttons .ec-language-switch{
  order:2;
  margin:0;
  height:36px;
  border:1px solid #d0e4dd;
  background:#f6faf8;
}
.ec-shell-header #nav-start{
  order:3;
  min-height:42px;
  border-radius:12px;
  padding:11px 17px;
  font-size:13px;
  white-space:nowrap;
  box-shadow:0 4px 13px rgba(19,119,110,.15);
}
.ec-shell-header .ec-menu-toggle{
  display:none;
  order:4;
  flex:none;
  position:relative;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  min-width:44px;
  min-height:44px;
  padding:0;
  border:1px solid #d7e5e1;
  background:#f8fbf9;
  color:#163d40;
  border-radius:12px;
  box-shadow:none;
  touch-action:manipulation;
}
.ec-shell-header .ec-menu-toggle:hover,
.ec-shell-header .ec-menu-toggle[aria-expanded="true"]{
  background:#eaf6f1;
  border-color:#b4d5c9;
}
.ec-menu-lines{display:flex;flex-direction:column;gap:4px;align-items:center}
.ec-menu-lines span{width:18px;height:2px;border-radius:2px;background:#315a5c;display:block}
.ec-shell-header .ec-mobile-panel{
  display:none;
  position:absolute;
  z-index:90;
  top:calc(100% + 8px);
  right:max(15px,calc((100vw - 1190px)/2 + 25px));
  width:min(372px,calc(100vw - 30px));
  max-height:min(78vh,590px);
  overflow:auto;
  padding:12px;
  background:#fff;
  border:1px solid #d7e8e2;
  border-radius:18px;
  box-shadow:0 21px 60px rgba(14,45,46,.16);
}
.ec-shell-header .ec-mobile-panel[hidden]{display:none!important}
.ec-shell-header .ec-mobile-panel a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  min-height:45px;
  padding:12px 14px;
  color:#294c4e;
  border-radius:11px;
  font-size:14px;
  font-weight:670;
  text-decoration:none;
}
.ec-shell-header .ec-mobile-panel a:hover,
.ec-shell-header .ec-mobile-panel a[aria-current="page"]{
  color:#0e6c62;
  background:#f1f8f5;
}
.ec-shell-header .ec-mobile-panel .ec-mobile-divider{height:1px;background:#e6eeea;margin:10px 3px}
.ec-shell-header .ec-mobile-panel .ec-mobile-primary{
  background:#147f78;
  color:white;
  min-height:48px;
  justify-content:center;
  text-align:center;
  font-weight:780;
  margin-top:6px;
}
.ec-shell-header .ec-mobile-panel .ec-mobile-primary:hover{background:#106a64;color:white}
.ec-shell-header .ec-mobile-panel .ec-mobile-secondary{font-weight:720}
.ec-shell-header .ec-menu-toggle:focus-visible,
.ec-shell-header .navlinks a:focus-visible,
.ec-shell-header .navbuttons button:focus-visible,
.ec-shell-header .ec-mobile-panel a:focus-visible{
  outline:3px solid #f0bd64;
  outline-offset:2px;
}
@media(max-width:1120px){
  .ec-shell-header .navlinks{display:none}
  .ec-shell-header .ec-menu-toggle{display:inline-flex}
}
@media(max-width:760px){
  .ec-shell-header{height:66px}
  .ec-shell-header .brand{font-size:20px}
  .ec-shell-header .ec-nav{gap:10px}
  .ec-shell-header .navbuttons{gap:8px}
  .ec-shell-header .navbuttons #nav-account,
  .ec-shell-header .navbuttons #nav-start{display:none!important}
  .ec-shell-header .navbuttons .ec-language-switch{height:34px}
  .ec-shell-header .navbuttons .ec-language-switch button{min-width:29px}
  .ec-shell-header .ec-mobile-panel{display:block}
}
@media(min-width:761px) and (max-width:1120px){
  .ec-shell-header .ec-mobile-panel{display:block}
}
@media(max-width:390px){
  .ec-shell-header .brand{font-size:18px;letter-spacing:-.9px}
  .ec-shell-header .ec-nav{gap:6px}
  .ec-shell-header .navbuttons{gap:6px}
  .ec-shell-header .ec-menu-toggle{width:40px;min-width:40px;height:42px}
}
@media(prefers-reduced-motion:reduce){
  .ec-shell-header .navlinks a{transition:none}
}


/* source: ec-learning-studio.css */
/* English Compass AI bilingual course studio — responsive, accessible and isolated. */
.ec-studio{padding-top:38px;padding-bottom:100px;color:#153c40;max-width:1190px;margin:auto}
.ec-studio *{box-sizing:border-box}
.ec-studio-top{padding:22px 0 32px;max-width:900px}
.ec-studio-top h1{font:normal clamp(37px,4.8vw,61px)/1.1 Georgia,serif;letter-spacing:-2px;margin:11px 0 18px;color:#123d3c}
.ec-studio-top>p{max-width:780px;font-size:16px;line-height:1.8}
.ec-studio-kicker{font-size:11px;font-weight:850;letter-spacing:1.7px;text-transform:uppercase;color:#117a70}
.ec-studio-language{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:27px 31px;border:1px solid #e0ece7;border-radius:24px;background:#fff;box-shadow:0 10px 34px #083e3a0a}
.ec-studio-language h2{font:normal 31px Georgia,serif;letter-spacing:-.8px;margin:7px 0}
.ec-studio-language p{font-size:13px;margin:5px 0 0}
.ec-studio-switch{display:flex;gap:5px;padding:5px;background:#eaf4f0;border-radius:14px;flex-shrink:0}
.ec-studio-switch button{border:0;border-radius:10px;background:transparent;color:#345c5e;padding:13px 18px;white-space:nowrap;font-size:14px}
.ec-studio-switch button.selected{background:#106f67;color:#fff;box-shadow:0 3px 10px #0c645b24}
.ec-studio-levels{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0 9px}
.ec-studio-levels button{border:1px solid #d4e5df;background:#fff;color:#1a5550;border-radius:11px;padding:9px 16px;min-height:47px;font-weight:800;font-size:15px}
.ec-studio-levels button small{font-size:11px;font-weight:600;margin-left:3px}
.ec-studio-levels button.selected{background:#126d64;color:#fff;border-color:#126d64}
.ec-studio-hint,.ec-studio-footnote,.ec-studio-disclosure{color:#718585;font-size:12px;line-height:1.6;margin:7px 0 24px}
.ec-studio-ai{border:1px solid #b9ded3;background:linear-gradient(110deg,#eefbf3 0,#f8fdf8 70%,#f9faf6);border-radius:25px;padding:28px 30px;margin:28px 0}
.ec-studio-ai-head{display:flex;justify-content:space-between;align-items:start;gap:20px}
.ec-studio-ai h2,.ec-studio-result-title h2,.ec-studio-grammar-intro h2{font:normal clamp(25px,3vw,36px) Georgia,serif;letter-spacing:-.9px;margin:7px 0 10px}
.ec-studio-ai-head p{font-size:13px;max-width:790px;margin:0 0 15px;line-height:1.75}
.ec-studio-badge{display:inline-flex;border:1px solid #d9eae4;padding:5px 10px;border-radius:20px;background:#f3faf7;color:#24645a;font-size:10px;font-weight:760;line-height:1.3;white-space:normal}
.ec-studio-ai-head>.ec-studio-badge{white-space:nowrap;background:#e5f1ed}
.ec-studio-ai-form label{display:block;font-weight:750;font-size:13px}
.ec-studio-ai-form textarea{display:block;width:100%;margin:9px 0 13px;min-height:90px;border:1px solid #bad7cc;background:#fff;border-radius:14px;padding:14px 16px;resize:vertical;font-size:14px;line-height:1.65}
.ec-studio-request-actions{display:flex;justify-content:space-between;align-items:end;gap:16px}
.ec-studio-request-actions label{font-size:12px;color:#516c67}
.ec-studio-request-actions select{display:block;max-width:200px;min-width:150px;margin:6px 0 0;border:1px solid #cbdcd7;border-radius:11px;padding:12px;font-size:14px;background:#fff;color:#183f3b}
.ec-studio-request-actions button{padding:13px 25px;border-radius:12px;min-height:45px}
.ec-studio-request-outcome{margin-top:21px;padding:17px 20px;background:#fff;border:1px solid #d7e8e3;border-radius:14px}
.ec-studio-request-outcome>strong{color:#1b6b59}
.ec-studio-request-outcome p{font-size:13px;margin:6px 0;color:#57766e}
.ec-studio-request-quote{padding:8px 0 0;white-space:pre-wrap;word-break:break-word;font-style:italic;font-size:13px}
.ec-studio-tabs{display:flex;gap:10px;flex-wrap:wrap;padding:0 0 24px;border-bottom:1px solid #d6e6df;margin-bottom:28px}
.ec-studio-tabs a{display:inline-flex;align-items:center;border:1px solid #d4e4dd;border-radius:12px;padding:10px 17px;background:#fff;color:#34635a;font-size:13px;font-weight:750}
.ec-studio-tabs a.active{background:#126e63;color:#fff;border-color:#126e63}
.ec-studio-stages{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:8px 0 12px}
.ec-studio-stage{background:#fff;text-align:left;border:1px solid #dce7e2;border-radius:15px;padding:16px;min-height:119px;display:flex;flex-direction:column;align-items:start;gap:10px;color:#174b49}
.ec-studio-stage strong{font-size:14px}
.ec-studio-stage span{font-size:12px;line-height:1.4;color:#67817a;font-weight:450}
.ec-studio-stage.active{border-color:#168071;background:#eaf8f0;box-shadow:0 0 0 1px #16807130}
.ec-studio-write-tabs{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:16px 0 26px}
.ec-studio-write-tabs button{text-align:left;display:flex;align-items:flex-start;flex-direction:column;gap:9px;background:white;border:1px solid #dae7e1;color:#174640;padding:18px;border-radius:16px}
.ec-studio-write-tabs button small{font-size:12px;line-height:1.45;color:#698078}
.ec-studio-write-tabs button.selected{border-color:#138476;background:#eaf8f2}
.ec-studio-grammar-intro{display:flex;gap:24px;justify-content:space-between;align-items:center;padding:26px 30px;border-radius:21px;background:#123f41;color:#fff;margin:10px 0 30px}
.ec-studio-grammar-intro .ec-studio-kicker{color:#a7e1c8}
.ec-studio-grammar-intro h2{color:#fff;margin:8px 0;font-size:31px}
.ec-studio-grammar-intro p{margin:0;color:#d4e7e0;font-size:13px;max-width:740px}
.ec-studio-grammar-price{flex:0 0 205px;display:flex;flex-direction:column;align-items:flex-end;gap:3px;text-align:right}
.ec-studio-grammar-price strong{font-size:35px;color:#fbf2d3}
.ec-studio-grammar-price small{color:#e5eede;font-size:13px}
.ec-studio-grammar-price span{font-size:10px;color:#b9ded1}
.ec-studio-result-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:23px}
.ec-studio-result-title h2{margin-bottom:5px}
.ec-studio-result-title p{margin:0;font-size:13px}
.ec-studio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ec-studio-unit{border:1px solid #dce9e4;background:#fff;border-radius:19px;padding:22px;min-width:0;display:flex;flex-direction:column;box-shadow:0 5px 24px #102f2808}
.ec-studio-card-meta{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:9px}
.ec-studio-unit h3{font:normal 24px/1.2 Georgia,serif;color:#183f3e;margin:10px 0}
.ec-studio-unit p{font-size:13px;line-height:1.6;margin:0 0 18px;flex:1;overflow-wrap:anywhere}
.ec-studio-card-bottom{display:flex;justify-content:space-between;align-items:end;flex-wrap:wrap;gap:12px;border-top:1px solid #ebf0ed;padding-top:15px}
.ec-studio-card-bottom>span{font-size:11px;color:#6e877c}
.ec-studio-card-bottom button{padding:10px 15px;border-radius:10px;font-size:12px;min-height:40px}
.ec-studio-more{display:block;margin:24px auto 0;padding:11px 20px}
.ec-studio-empty{padding:35px;border:1px dashed #cbded5;border-radius:18px;color:#64837a}
.ec-studio-lesson{max-width:940px}
.ec-studio-back{display:inline-flex;color:#126e62;font-size:13px;font-weight:750;margin-bottom:20px}
.ec-studio-lesson-head{margin:12px 0 32px}
.ec-studio-lesson-head h1{font:normal clamp(33px,5vw,52px)/1.1 Georgia,serif;letter-spacing:-1.2px}
.ec-studio-lesson-head>p{max-width:800px}
.ec-studio-reading,.ec-studio-lesson-task,.ec-studio-check,.ec-studio-lock,.ec-studio-question{border-radius:22px;background:#fff;border:1px solid #dbe8e2;padding:28px;margin:19px 0}
.ec-studio-reading h2,.ec-studio-lesson-task h2,.ec-studio-check h2,.ec-studio-lock h2{font:normal 29px Georgia,serif;margin:10px 0 18px}
.ec-studio-passage{font-size:17px;line-height:1.92;white-space:pre-line;margin:20px 0 22px;color:#1b4344}
.ec-studio-reading button{padding:11px 18px}
.ec-studio-lesson-task p{font-size:15px;color:#2e625b}
.ec-studio-criteria{display:flex;gap:7px;flex-wrap:wrap;margin:17px 0}
.ec-studio-lesson-task label{display:block;margin:19px 0 8px;font-size:13px;font-weight:800}
.ec-studio-lesson-task textarea{display:block;width:100%;border:1px solid #cbdcd3;background:#fdfefd;border-radius:12px;padding:16px;line-height:1.7;resize:vertical;margin-bottom:18px}
.ec-studio-save-state{font-size:12px;color:#17744e;margin-top:12px}
.ec-studio-choices{display:flex;flex-direction:column;align-items:stretch;gap:9px;margin:15px 0}
.ec-studio-choices button{text-align:left;white-space:normal;padding:13px 15px;border-radius:11px}
.ec-studio-correct{font-weight:800;color:#176c4f}
.ec-studio-incorrect{font-weight:800;color:#975b12}
.ec-studio-next,.ec-studio-lock-links{display:flex;gap:12px;flex-wrap:wrap;margin:27px 0}
.ec-studio-inline{display:inline-flex;align-items:center;justify-content:center;padding:12px 19px;border-radius:12px;min-height:45px;font-size:13px;font-weight:760}
.ec-studio-lock p{font-size:14px}
.ec-studio-lesson-hint{font-size:12px!important;color:#718680!important}
.ec-studio-dashboard-cta{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:22px 25px;border:1px solid #cbe6d8;border-radius:17px;background:linear-gradient(110deg,#e9f8f0,#fff);margin-bottom:20px}
.ec-studio-dashboard-cta strong{display:block;font:normal 24px Georgia,serif;line-height:1.2;margin:8px 0}
.ec-studio-dashboard-cta p{font-size:12px;margin:0}
.ec-studio-dashboard-cta>a{white-space:nowrap}
.ec-studio-placement{max-width:900px}
.ec-studio-placement>h1{font:normal 43px/1.13 Georgia,serif}
.ec-studio-question h2{font:normal 29px Georgia,serif}
.ec-studio-question textarea{width:100%;padding:14px;border:1px solid #ccdcd7;border-radius:13px;margin:10px 0 17px}
@media(max-width:1000px){.ec-studio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ec-studio-stages{grid-template-columns:repeat(3,minmax(0,1fr))}.ec-studio-language h2{font-size:28px}}
@media(max-width:650px){.ec-studio{padding-top:22px;padding-bottom:65px}.ec-studio-language{display:block;padding:23px 19px}.ec-studio-switch{margin-top:18px;width:100%;justify-content:stretch}.ec-studio-switch button{flex:1}.ec-studio-levels{gap:6px}.ec-studio-levels button{padding:8px 10px;flex:1;min-width:65px;font-size:13px}.ec-studio-levels button small{display:block;font-size:9px;margin:0}.ec-studio-ai{padding:21px 18px}.ec-studio-ai-head{flex-direction:column;gap:4px}.ec-studio-ai-head>.ec-studio-badge{margin-bottom:14px}.ec-studio-request-actions{align-items:stretch;flex-direction:column}.ec-studio-request-actions select{max-width:none;width:100%}.ec-studio-request-actions button{width:100%}.ec-studio-tabs{gap:7px}.ec-studio-tabs a{font-size:12px;padding:9px 12px}.ec-studio-grid{grid-template-columns:1fr}.ec-studio-stages{grid-template-columns:1fr 1fr}.ec-studio-stage{min-height:113px;padding:14px}.ec-studio-write-tabs{grid-template-columns:1fr}.ec-studio-grammar-intro{flex-direction:column;align-items:start;padding:23px 21px}.ec-studio-grammar-price{flex:initial;align-items:start;text-align:left}.ec-studio-reading,.ec-studio-lesson-task,.ec-studio-check,.ec-studio-lock{padding:22px 18px}.ec-studio-dashboard-cta{flex-direction:column;align-items:start}.ec-studio-dashboard-cta>a{white-space:normal}.ec-studio-top h1{font-size:39px;letter-spacing:-1.2px}}
@media(prefers-reduced-motion:reduce){.ec-studio *{scroll-behavior:auto!important;transition:none!important}}
.ec-studio-placement-actions{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:12px 0 17px;flex-wrap:wrap}
.ec-studio-dialect{display:inline-flex;align-items:center;gap:9px;font-size:12px;font-weight:750;color:#42645c}
.ec-studio-dialect select{border:1px solid #d1e2dc;border-radius:10px;padding:11px;background:#fff;color:#173f3c;font-size:13px}
.ec-studio-speaking-capture{border-top:1px solid #e2eee8;padding-top:19px;margin-top:20px}
.ec-studio-speaking-capture label{font-size:12px;font-weight:750}
.ec-studio-home-promo{border-radius:22px;border:1px solid #cde4d8;background:#f0f9f3;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 30px;margin:20px 0 40px}
.ec-studio-home-promo h3{font:normal clamp(22px,2.5vw,30px)/1.2 Georgia,serif;color:#174e46;margin:10px 0}
.ec-studio-home-promo p{font-size:13px;margin:6px 0 0;max-width:700px}
.ec-studio-home-promo>a{flex-shrink:0}
.ec-studio-pricing-addon{border:1px solid #cce4db;background:#f1faf5;border-radius:21px;padding:28px 30px;margin:40px 0 65px}
.ec-studio-pricing-addon h2{font:normal 32px Georgia,serif;color:#195a50;margin:8px 0}
.ec-studio-pricing-addon p{font-size:14px;max-width:850px}
@media(max-width:650px){.ec-studio-home-promo{flex-direction:column;align-items:start;padding:22px 19px}.ec-studio-home-promo>a{width:100%;white-space:normal}.ec-studio-placement-actions{align-items:start}.ec-studio-dialect{width:100%;justify-content:space-between}.ec-studio-pricing-addon{padding:24px 19px}}
.ec-studio-spanish-dashboard h2{font:normal clamp(27px,3.5vw,38px)/1.17 Georgia,serif;color:#155148;margin:11px 0}
.ec-studio-spanish-dashboard p{font-size:14px;line-height:1.7}
.ec-studio-spanish-stats{display:flex;gap:13px;margin:20px 0}
.ec-studio-spanish-stats div{flex:1;min-width:0;background:#fff;border:1px solid #dce8e2;border-radius:13px;padding:16px 17px}
.ec-studio-spanish-stats strong{display:block;font-size:29px;color:#167a6b}
.ec-studio-spanish-stats span{font-size:12px;color:#69837c}
.ec-studio-spanish-tasks{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0}
.ec-studio-spanish-tasks a,.ec-studio-spanish-course-list a{display:block;background:#fff;border:1px solid #dce9e3;border-radius:13px;padding:15px;font-weight:750;font-size:13px;color:#1d5d52;text-decoration:none}
.ec-studio-spanish-course-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:19px 0 23px}
.ec-studio-spanish-course-list strong{display:block;font-size:14px}
.ec-studio-spanish-course-list small{display:block;color:#6f827b;font-size:11px;margin-top:5px}
.ec-studio-spanish-dashboard label{display:block;font-size:13px;font-weight:800;margin-top:20px}
.ec-studio-spanish-dashboard textarea{width:100%;display:block;border:1px solid #cee1d8;border-radius:12px;margin:9px 0 14px;padding:13px 15px;line-height:1.65;resize:vertical;background:#fff}
#ec-studio-spanish-save{font-size:12px;color:#177b60}
@media(max-width:650px){.ec-studio-spanish-tasks,.ec-studio-spanish-course-list{grid-template-columns:1fr}.ec-studio-spanish-dashboard .ec-studio-inline{width:100%}}


/* source: ec-home-dual.css */
/* Bilingual English Compass AI homepage. Scoped; does not affect assessments or account screens. */
.ec-dual-home .ec-dual-hero{align-items:center;gap:clamp(25px,4vw,56px);padding-top:58px;padding-bottom:38px}
.ec-dual-eyebrow{display:inline-flex;align-items:center;letter-spacing:1.5px;font-size:11px;font-weight:850;color:#187a70;background:#e5f4eb;border-radius:30px;padding:9px 14px}
.ec-dual-hero #ec-hero-title{font-size:clamp(42px,5.1vw,75px);line-height:1.07;letter-spacing:-2.3px;margin:19px 0}
.ec-dual-hero .ec-lead{font-size:clamp(15px,1.5vw,19px);max-width:585px;line-height:1.73}
.ec-dual-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:25px 0 15px}
.ec-dual-hero-actions a{display:inline-flex;justify-content:space-between;align-items:center;gap:15px;border-radius:14px;min-height:52px;padding:12px 17px;font-weight:850;font-size:13px}
.ec-dual-proof{color:#536b70;font-size:12px;line-height:1.8}
.ec-dual-preview{background:linear-gradient(140deg,#153e43,#206a66);color:#fff;border-radius:27px;padding:30px;box-shadow:0 28px 65px rgba(16,63,68,.18)}
.ec-dual-preview>small{font-size:10px;letter-spacing:1.4px;font-weight:850;color:#baddd3}
.ec-dual-preview-card{border-radius:15px;padding:17px 20px;background:#f7f9f5;color:#174c49;margin-top:20px;box-shadow:0 8px 15px #0002}
.ec-dual-preview-card>span{font-size:10px;letter-spacing:1.4px;color:#3f8679;font-weight:900}
.ec-dual-preview-card h3{font:normal 25px Georgia,serif;margin:8px 0}
.ec-dual-preview-card p{font-size:12px;margin:0;color:#607e78}
.ec-dual-preview-es{background:#f8e8d3;margin-left:21px;color:#5b422f}
.ec-dual-preview-es>span{color:#92653a}
.ec-dual-preview-footer{text-align:center;color:#d5ece6;font-size:11px;margin-top:19px}
.ec-dual-courses{padding:25px 0 50px}
.ec-dual-intro{max-width:700px;margin-bottom:28px}
.ec-dual-intro h2{font:normal clamp(31px,3.4vw,47px)/1.2 Georgia,serif;margin:13px 0;color:#174447;letter-spacing:-1.2px}
.ec-dual-intro h2 em{color:#147f78}
.ec-dual-intro p{line-height:1.75;color:#546d72}
.ec-dual-course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.ec-dual-course{display:flex;flex-direction:column;min-width:0;border:1px solid #cbe5dc;background:linear-gradient(130deg,#eaf7f1,#fff 75%);border-radius:25px;padding:clamp(22px,3vw,37px)}
.ec-dual-course-es{border-color:#e4d6bc;background:linear-gradient(130deg,#fff0dd,#fff 75%)}
.ec-dual-course-label{font-size:11px;font-weight:900;letter-spacing:1.5px;color:#207a70}
.ec-dual-course-es .ec-dual-course-label{color:#956437}
.ec-dual-course h3{font:normal clamp(28px,3vw,43px) Georgia,serif;letter-spacing:-.9px;margin:15px 0}
.ec-dual-course p{line-height:1.7;color:#4a676b;margin:0 0 15px}
.ec-dual-course ul{padding-left:21px;line-height:1.9;font-size:14px;color:#425f61}
.ec-dual-course li::marker{color:#147f78}
.ec-dual-course-es li::marker{color:#c68845}
.ec-dual-course-ctas{display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin-top:auto;padding-top:10px}
.ec-dual-course-ctas a.primary{border-radius:12px;padding:13px 17px;font-size:13px;font-weight:850}
.ec-dual-course-es a.primary{background:#936136}
.ec-dual-textlink{color:#137b71;font-size:13px;font-weight:850}
.ec-dual-course-es .ec-dual-textlink{color:#946237}
.ec-dual-pricing-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:23px 0}
.ec-dual-pricing-compare>div{border:1px solid #d4e6df;border-radius:19px;background:#edf8f4;padding:24px}
.ec-dual-pricing-compare>div+div{background:#fff7e9;border-color:#e9dccb}
.ec-dual-pricing-compare small{font-weight:900;letter-spacing:1.3px;color:#147b70}
.ec-dual-pricing-compare>div+div small{color:#946439}
.ec-dual-pricing-compare h3{font:normal 24px Georgia,serif;margin:10px 0}
.ec-dual-pricing-compare p{font-size:13px;line-height:1.7}
.ec-dual-pricing-compare a{font-size:13px;font-weight:850;color:#17766d}
.ec-dual-english-prices{font:normal 28px Georgia,serif;margin:32px 0 15px;color:#16443f}
.ec-dual-bottom-actions{display:flex;gap:10px;flex-wrap:wrap}
.ec-dual-bottom-actions a,.ec-dual-home .ec-choice-actions a{display:inline-flex;min-height:46px;align-items:center;justify-content:center;border-radius:12px;padding:12px 16px}
.ec-dual-home a:focus-visible{outline:3px solid #e69b38;outline-offset:4px}
@media(max-width:950px){.ec-dual-home .ec-dual-hero{flex-direction:column;align-items:stretch}.ec-dual-home .ec-hero-copy{max-width:100%}.ec-dual-home .ec-display{width:100%}}
@media(max-width:700px){.ec-dual-home .ec-dual-hero{padding-top:30px}.ec-dual-hero #ec-hero-title{letter-spacing:-1.5px;font-size:clamp(39px,11vw,57px)}.ec-dual-hero-actions,.ec-dual-bottom-actions{flex-direction:column}.ec-dual-hero-actions a,.ec-dual-bottom-actions a{width:100%}.ec-dual-course-grid,.ec-dual-pricing-compare{grid-template-columns:1fr}.ec-dual-course{min-height:0}.ec-dual-courses{padding:20px 0 30px}.ec-dual-preview{padding:20px}.ec-dual-preview-es{margin-left:10px}}

/* Transparent monthly pricing on both language cards. */
.ec-dual-price-table{border-top:1px solid #c9dfd5;margin:18px 0 20px;padding-top:9px;display:grid;gap:1px}
.ec-dual-price-item{display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid #dce8dd;padding:9px 2px;font-weight:750;color:#1e514a}
.ec-dual-price-item strong{font-size:18px;white-space:nowrap;color:#165a53}
.ec-dual-price-item strong small{font-size:11px;font-weight:500;color:#677d76}
.ec-dual-compare-actions{display:flex;align-items:center;flex-wrap:wrap;gap:13px}
.ec-dual-compare-actions .primary{display:inline-flex;align-items:center;min-height:44px;border-radius:12px;padding:11px 14px;font-size:13px;font-weight:850}
.ec-dual-compare-actions .ec-dual-textlink{font-size:12px}
@media(max-width:620px){.ec-dual-price-item strong{font-size:16px}.ec-dual-compare-actions{flex-direction:column;align-items:stretch}.ec-dual-compare-actions .primary,.ec-dual-compare-actions .ec-dual-textlink{justify-content:center;text-align:center}}


/* Screen-recording QA: pricing action contrast and clean bilingual hero */
.ec-dual-pricing-compare .ec-dual-compare-actions a.primary,
.ec-dual-pricing-compare .ec-dual-compare-actions a.primary:visited{
  background:#087c71;
  color:#fff!important;
  text-decoration:none;
  border:1px solid #087c71;
}
.ec-dual-pricing-compare .ec-dual-compare-actions a.primary:hover,
.ec-dual-pricing-compare .ec-dual-compare-actions a.primary:focus-visible{
  color:#fff!important;
  background:#08655c;
}
.ec-dual-home .ec-display::before{
  content:none!important;
  display:none!important;
}
.ec-dual-home .ec-display{
  height:auto;
  min-height:0;
  max-width:530px;
  isolation:isolate;
  overflow:visible;
}
.ec-dual-home .ec-display .ec-dual-preview{
  width:100%;
  max-width:520px;
  position:relative;
  z-index:2;
  transform:none;
  box-sizing:border-box;
}
.ec-dual-home .ec-display .ec-dual-preview h3{color:inherit;}
.ec-dual-home .ec-studio-home-promo{display:none!important;}
@media(max-width:700px){
 .ec-dual-home .ec-display{width:100%;max-width:100%;}
 .ec-dual-home .ec-display .ec-dual-preview{max-width:100%;}
}


/* source: ec-spanish-enroll.css */
.ec-spanish-enrollment{padding-top:30px;padding-bottom:80px;max-width:1190px}.ec-spanish-steps{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:32px}.ec-spanish-steps span{font-size:12px;font-weight:750;border:1px solid #d2e7de;background:#f4faf6;color:#4b6d65;border-radius:100px;padding:9px 14px}.ec-spanish-steps .active{background:#157f74;color:#fff}.ec-spanish-intro{max-width:800px;margin-bottom:27px}.ec-spanish-intro h1{font:normal clamp(35px,4.5vw,55px)/1.14 Georgia,serif;letter-spacing:-1.3px;color:#134a42;margin:0 0 18px}.ec-spanish-intro p{font-size:16px;color:#4c6966;line-height:1.7}.ec-spanish-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.ec-spanish-plan{display:flex;flex-direction:column;padding:23px;background:#fff;border:1px solid #d2e4dc;border-radius:22px;gap:13px}.ec-spanish-plan.recommended{background:#eef8f2;border-color:#198373}.ec-spanish-plan small{color:#18796c;font-weight:800}.ec-spanish-plan h3{font:normal 24px Georgia,serif;color:#164b43;margin:0}.ec-spanish-plan strong{font-size:31px;color:#134e46}.ec-spanish-plan strong span{font-size:13px;font-weight:500;margin-left:5px}.ec-spanish-plan p{font-size:13px;line-height:1.7;color:#4d6562;flex:1;margin:0}.ec-spanish-plan button{padding:12px 15px;border-radius:13px;font-weight:800;cursor:pointer}.ec-spanish-note{color:#59726a;font-size:13px;line-height:1.7;margin-top:23px}.ec-spanish-link{display:inline-flex;justify-content:center;align-items:center;text-align:center;padding:13px 18px;border-radius:13px;font-size:14px;font-weight:800}.ec-spanish-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.ec-spanish-info{padding:23px;border:1px solid #d2e2d8;background:#f6faf7;border-radius:18px}.ec-spanish-info p{margin:10px 0 0}.ec-spanish-actions button:disabled{padding:12px 17px;border-radius:13px;opacity:.6;cursor:not-allowed}@media(max-width:870px){.ec-spanish-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:590px){.ec-spanish-grid{grid-template-columns:1fr}.ec-spanish-actions{flex-direction:column}.ec-spanish-actions>*{width:100%}}

/* source: ec-course-gate.css */
.ec-catalog-privacy{max-width:1130px;padding-top:42px;padding-bottom:85px}.ec-catalog-head{max-width:780px}.ec-sample-kicker{font-size:11px;letter-spacing:1.35px;font-weight:850;color:#19776f}.ec-catalog-head h1,.ec-catalog-locked h1{font:normal clamp(34px,4vw,52px)/1.14 Georgia,serif;letter-spacing:-1.3px;color:#194945;margin:14px 0}.ec-catalog-head p,.ec-catalog-locked p{color:#526d6a;line-height:1.75;font-size:16px}.ec-catalog-samples{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin:32px 0}.ec-sample-card{padding:32px;border:1px solid #d5e7de;border-radius:23px;background:linear-gradient(145deg,#f0f8f5,#fff)}.ec-sample-card[lang="es"]{background:linear-gradient(145deg,#fff3e5,#fff);border-color:#e9dac5}.ec-sample-sentence{font:normal clamp(23px,3vw,30px)/1.5 Georgia,serif;color:#174b45;margin:18px 0 12px}.ec-sample-card>p:not(.ec-sample-sentence){font-size:13px;color:#68817b}.ec-sample-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.ec-sample-actions>a{display:inline-flex;align-items:center;justify-content:center;padding:12px 17px;font-weight:850;border-radius:12px;font-size:13px}.ec-catalog-cta{display:flex;gap:20px;justify-content:space-between;align-items:center;background:#f0f8f4;border:1px solid #d6e8de;border-radius:19px;padding:26px}.ec-catalog-cta>div{max-width:700px}.ec-catalog-cta h2{font:normal 25px Georgia,serif;margin:0 0 10px}.ec-catalog-cta p{color:#536f69;font-size:13px;line-height:1.7;margin:0}.ec-catalog-cta>a{display:inline-flex;padding:12px 16px;border-radius:12px;font-size:13px;font-weight:850;white-space:nowrap}.ec-subscribed-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:30px 0}.ec-subscribed-level{border:1px solid #d2e5dc;background:#fff;border-radius:18px;padding:24px}.ec-subscribed-level span{font-size:11px;font-weight:850;color:#167f74}.ec-subscribed-level h2{font:normal 25px Georgia,serif;margin:10px 0}.ec-subscribed-level p{font-size:13px;line-height:1.7;color:#526a65}.ec-catalog-locked{padding:35px;background:#f6faf7;border:1px solid #d4e5dc;border-radius:22px;max-width:780px}@media(max-width:760px){.ec-catalog-cta{flex-direction:column;align-items:start}.ec-subscribed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:570px){.ec-catalog-privacy{padding-top:27px}.ec-subscribed-grid{grid-template-columns:1fr}.ec-sample-actions{flex-direction:column}.ec-sample-actions>a{width:100%}.ec-catalog-cta{padding:20px}}

/* source: ec-launch-experience.css */
/* English Compass AI guided launch experience */
.ec-launch-home{margin:20px 0 50px;padding:clamp(24px,3.5vw,44px);background:linear-gradient(130deg,#123e45,#1e6863);border-radius:26px;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:28px}
.ec-launch-home-text{max-width:640px}.ec-launch-home h2{font:normal clamp(27px,3vw,39px)/1.22 Georgia,serif;margin:9px 0 12px}.ec-launch-home p{color:#d7e9e6;line-height:1.75;margin:0}.ec-launch-overline{font-size:11px;font-weight:850;letter-spacing:1.35px;text-transform:uppercase;color:#167c70}.ec-launch-home .ec-launch-overline{color:#a8e1ca}.ec-launch-home-actions{display:flex;flex-direction:column;gap:11px;min-width:235px}.ec-launch-home .ec-launch-btn{background:#f9fbf7;color:#164b46!important}.ec-launch-home .ec-launch-btn.outline{border:1px solid #b0d6ca;background:transparent;color:#fff!important}.ec-launch-home .ec-launch-link{padding:8px;text-align:center;color:#d5f4e8!important;font-size:13px;font-weight:800}
.ec-launch-page{max-width:1130px;padding-top:35px;padding-bottom:80px}.ec-launch-breadcrumb{display:flex;justify-content:space-between;gap:16px;color:#5e7471;font-size:12px;font-weight:750;margin-bottom:26px}.ec-launch-breadcrumb a{color:#11756b}.ec-launch-page h1{font:normal clamp(35px,4.4vw,55px)/1.14 Georgia,serif;letter-spacing:-1.25px;margin:14px 0;color:#153f40}.ec-launch-page p{line-height:1.75;color:#566d69}.ec-launch-preview-grid{display:grid;grid-template-columns:1.5fr 1fr;align-items:start;gap:22px}.ec-launch-primary,.ec-launch-side,.ec-plan-bottom{background:#fff;border-radius:24px;border:1px solid #d3e4dc;padding:clamp(21px,3.5vw,38px)}.ec-launch-primary h1{font-size:clamp(32px,4vw,46px)}.ec-launch-side{background:#f0f8f4}.ec-launch-side h2,.ec-plan-bottom h2{font:normal clamp(23px,2.6vw,31px)/1.3 Georgia,serif;margin:15px 0}.ec-launch-side-actions{display:flex;flex-direction:column;gap:12px;margin-top:19px}.ec-launch-btn{border-radius:12px;padding:13px 18px;display:inline-flex;align-items:center;justify-content:center;text-align:center;font-weight:850;font-size:13px;min-height:48px}.ec-launch-page .ec-launch-btn.outline{border:1px solid #aecdc3;background:#fff}.ec-launch-page a:focus-visible,.ec-demo-answer:focus-visible{outline:3px solid #e7b460;outline-offset:3px}
.ec-demo-question{padding:20px;background:#f0f8f4;border-radius:17px;border:1px solid #d6e8dc;margin:26px 0 16px;display:grid;gap:9px}.ec-demo-question>span{font-size:12px;font-weight:800;color:#477c70}.ec-demo-question strong{font:normal clamp(24px,3vw,32px) Georgia,serif}.ec-demo-options{display:flex;gap:12px;flex-wrap:wrap}.ec-demo-answer{min-width:95px;border-radius:13px;background:#fff;border:1px solid #9dc7b8;padding:14px 25px;font-size:17px;font-weight:800;color:#14544c}.ec-demo-answer:not(:disabled):hover{border-color:#157c70;background:#e7f8ef}.ec-demo-answer:disabled{opacity:.75}.ec-demo-answer.correct{border-color:#147f78;background:#e2f7ed;color:#14574c}.ec-demo-feedback{padding:18px 22px;border-radius:16px;background:#eff8f4;border:1px solid #b9ddc7;margin-top:21px}.ec-demo-feedback strong{color:#0a7366}.ec-demo-feedback p{margin:8px 0 0}.ec-launch-disclaimer{font-size:12px;margin-top:20px}
.ec-launch-plan-hero{display:flex;gap:20px;justify-content:space-between;align-items:center;margin-bottom:25px}.ec-launch-plan-hero>div:first-child{max-width:740px}.ec-plan-level{border:1px solid #d0e4dc;background:#eff8f4;padding:18px 23px;border-radius:21px;min-width:190px;text-align:center;display:grid;gap:5px}.ec-plan-level span{font-size:11px;letter-spacing:1.1px;font-weight:850;color:#3d8070}.ec-plan-level strong{font-size:38px;color:#165c54}.ec-plan-level small{font-size:11px;color:#53756a;max-width:220px}.ec-plan-form{background:#fff;border:1px solid #d4e5df;border-radius:19px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;padding:23px;margin-bottom:27px}.ec-plan-form label{display:grid;gap:7px;color:#3d5e59;font-weight:800;font-size:12px}.ec-plan-form select{width:100%;padding:12px;border:1px solid #bad3c9;border-radius:11px;background:white;font-size:14px;color:#174b45}
.ec-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ec-plan-day{border:1px solid #dbe8e1;border-radius:17px;background:#fff;padding:20px}.ec-plan-day>span{font-size:11px;letter-spacing:1px;font-weight:900;color:#187e70}.ec-plan-day h3{font:normal 20px/1.4 Georgia,serif;margin:8px 0}.ec-plan-day p{font-size:12px;color:#61756d;margin:0}.ec-launch-verb{margin-top:10px;display:inline-block;border-radius:99px;background:#e7f8ef;color:#137a69;font-size:10px;font-weight:800;padding:5px 9px}.ec-plan-bottom{margin-top:25px;display:flex;align-items:center;gap:23px;justify-content:space-between}.ec-plan-bottom>div:first-child{max-width:650px}.ec-plan-bottom p{font-size:13px;margin:0}
@media(max-width:920px){.ec-launch-home{flex-direction:column;align-items:start}.ec-launch-home-actions{width:100%;flex-direction:row;flex-wrap:wrap}.ec-launch-preview-grid{grid-template-columns:1fr}.ec-launch-plan-hero{align-items:start}.ec-plan-bottom{flex-direction:column;align-items:start}.ec-plan-bottom .ec-launch-side-actions{width:100%;flex-direction:row;flex-wrap:wrap}}
@media(max-width:620px){.ec-launch-page{padding-top:22px}.ec-launch-home-actions,.ec-plan-bottom .ec-launch-side-actions{flex-direction:column}.ec-launch-home .ec-launch-btn{width:100%}.ec-launch-plan-hero{flex-direction:column}.ec-plan-form,.ec-plan-grid{grid-template-columns:1fr}.ec-demo-options{display:grid;grid-template-columns:repeat(3,1fr)}.ec-demo-answer{min-width:0;padding:13px 8px}.ec-launch-primary,.ec-launch-side,.ec-plan-bottom{padding:22px}.ec-launch-home{border-radius:20px}}


/* source: ec-progress-insights.css */
/* Student practice insights based on actual stored entries */
.ec-progress-block{margin:26px 0;padding:clamp(20px,3vw,34px);border:1px solid #d2e6dc;background:linear-gradient(130deg,#f4fbf6,#fff);border-radius:24px}.ec-progress-kicker{font-size:11px;color:#137c71;font-weight:850;letter-spacing:1.2px}.ec-progress-block h2{font:normal clamp(26px,3vw,37px)/1.2 Georgia,serif;color:#164a44;margin:12px 0}.ec-progress-block h3{font:normal 23px Georgia,serif;color:#16453f}.ec-progress-block>p{color:#58716a;max-width:730px;line-height:1.7}.ec-progress-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:26px 0}.ec-progress-metrics article{padding:18px;background:white;border:1px solid #d8e7df;border-radius:16px}.ec-progress-metrics small{display:block;font-size:11px;color:#53776c;font-weight:800}.ec-progress-metrics strong{display:block;font-size:27px;margin:6px 0;color:#164f44}.ec-progress-metrics p{color:#657b71;font-size:11px;margin:0}.ec-progress-small{font-size:12px;color:#657e72}.ec-progress-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:20px}.ec-progress-btn{display:inline-flex;padding:13px 17px;align-items:center;justify-content:center;border-radius:12px;font-weight:800;font-size:13px}.ec-progress-pill{border:1px solid #d5e4d9;background:#fff;border-radius:99px;font-size:11px;font-weight:750;color:#657871;padding:8px 12px}.ec-progress-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.ec-progress-columns>div{background:white;border:1px solid #d8e7df;border-radius:16px;padding:21px}.ec-progress-columns ol{padding-left:19px;line-height:1.75;color:#486d64;font-size:13px}.ec-progress-breakdown{display:grid;gap:9px}.ec-progress-breakdown>div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #e0e9e2;padding-bottom:10px;font-size:13px}.ec-progress-breakdown strong{color:#176e63}.ec-progress-page{padding-top:30px;padding-bottom:70px}.ec-progress-back{font-size:12px;font-weight:800;color:#157b6e}@media(max-width:780px){.ec-progress-metrics{grid-template-columns:1fr}.ec-progress-columns{grid-template-columns:1fr}}

/* source: ec-daily-practice.css */
.ec-daily-main{padding-top:32px;padding-bottom:85px;max-width:1140px}.ec-daily-head{max-width:770px}.ec-daily-head a{font-size:13px;color:#18766c;font-weight:800}.ec-daily-head>span{display:block;color:#197b6f;font-size:11px;font-weight:850;letter-spacing:1.4px;margin-top:24px}.ec-daily-head h1{font:normal clamp(34px,4.1vw,54px)/1.14 Georgia,serif;color:#164b45;margin:12px 0}.ec-daily-head p{line-height:1.75;color:#57726a}.ec-daily-bar{border:1px solid #d2e7db;background:#f0f9f4;border-radius:18px;padding:20px;margin:25px 0;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.ec-daily-bar strong{font-size:25px;color:#14776c}.ec-daily-bar span{font-size:13px;color:#56756c}.ec-daily-track{width:100%;height:9px;border-radius:99px;background:#d7e8dd;overflow:hidden}.ec-daily-track i{height:100%;display:block;background:#178879;border-radius:99px;transition:width .2s}.ec-daily-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.ec-daily-task{border:1px solid #d5e5dc;border-radius:21px;background:white;padding:28px;display:flex;flex-direction:column;gap:9px}.ec-daily-num{color:#168071;font-weight:900;font-size:12px}.ec-daily-task h2{font:normal 25px Georgia,serif;color:#16473f;margin:2px 0}.ec-daily-task p{font-size:14px;color:#5a726b;line-height:1.75;flex:1}.ec-daily-task button,.ec-daily-register{border-radius:12px;border:1px solid #168173;background:#127e72;color:#fff;padding:12px 15px;min-height:46px;font-weight:850;font-size:13px;text-align:center;align-self:start}.ec-daily-task button.ec-daily-done{background:#e4f5e9;color:#11664e;border-color:#9fd2ba}.ec-daily-next{border-radius:19px;border:1px solid #d2e6da;background:#f0f8f2;padding:25px;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:25px}.ec-daily-next h2{font:normal 24px Georgia,serif;margin:0}.ec-daily-next p{color:#557166;font-size:13px;line-height:1.7}.ec-daily-next>div:last-child{display:flex;flex-direction:column;gap:8px;min-width:160px}.ec-daily-next a{color:#12796c;font-weight:800;font-size:13px}@media(max-width:760px){.ec-daily-grid{grid-template-columns:1fr}.ec-daily-next{flex-direction:column;align-items:start}}

/* source: ec-private-studio.css */
/* Private student dashboard — source bodies only arrive from authenticated API. */
.ec-private-page{max-width:1160px;padding-top:38px;padding-bottom:85px}
.ec-private-intro{max-width:810px}
.ec-private-eyebrow{font-size:11px;font-weight:850;letter-spacing:1.25px;color:#14796c;text-transform:uppercase}
.ec-private-intro h1{font:normal clamp(34px,4.5vw,52px)/1.15 Georgia,serif;color:#154a44;margin:12px 0 15px;letter-spacing:-.9px}
.ec-private-intro p{font-size:15px;line-height:1.75;color:#5b746d}
.ec-private-actions,.ec-private-topnav{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:25px 0}
.ec-private-link{display:inline-flex;justify-content:center;align-items:center;border-radius:12px;padding:12px 17px;border:1px solid #b9d5ca;font-weight:800;font-size:13px;min-height:43px}
.ec-private-link.primary{background:#147f78;color:white;border-color:#147f78}
.ec-private-topnav{border-block:1px solid #d8e7df;padding:12px 0;gap:6px}
.ec-private-topnav .ec-private-link{border:0;padding:10px 13px}
.ec-private-muted{font-size:13px;color:#5f766d;line-height:1.6}
.ec-private-error{background:#fff2ee;border:1px solid #efc2b8;color:#923b2a;border-radius:12px;padding:14px 18px;line-height:1.65}
.ec-private-language-tabs{display:flex;gap:10px;margin:26px 0 18px;flex-wrap:wrap}
.ec-private-language-tabs button{border:1px solid #b9d8c7;border-radius:12px;background:white;padding:12px 21px;font-weight:850;color:#27685c}
.ec-private-language-tabs button.selected{background:#147f78;color:white}
.ec-private-overview{display:flex;gap:16px;flex-wrap:wrap;align-items:center;padding:20px 23px;border-radius:17px;background:#eaf7ee;border:1px solid #d4e7d9;margin-bottom:18px}
.ec-private-overview strong{font:normal 27px Georgia,serif;color:#175c4e}
.ec-private-overview span{font-size:13px;color:#536b61}
.ec-private-level{margin:26px 0}
.ec-private-level>h2{font:normal 27px Georgia,serif;color:#174d45;margin-bottom:15px}
.ec-private-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.ec-private-card{padding:23px;border:1px solid #d2e7dc;background:white;border-radius:20px;display:flex;flex-direction:column;gap:12px}
.ec-private-card>span{font-size:11px;color:#157c69;font-weight:850;text-transform:uppercase}
.ec-private-card>h3{font:normal 21px/1.35 Georgia,serif;margin:0;color:#1b4b45;flex:1}
.ec-private-card>a{align-self:start}
.ec-private-lesson-section{background:white;border:1px solid #d2e5da;border-radius:19px;margin:20px 0;padding:24px 27px}
.ec-private-lesson-section h2{font:normal 24px Georgia,serif;color:#174e46;margin:0 0 14px}
.ec-private-lesson-section p,.ec-private-lesson-section li{line-height:1.8;color:#3c6055;font-size:15px}
.ec-private-lesson-body{white-space:pre-wrap}
.ec-private-options{display:flex;gap:9px;flex-wrap:wrap}
.ec-private-option{background:white;border:1px solid #a5cbbe;border-radius:12px;padding:11px 16px;text-align:left;color:#18544b;font-weight:700}
.ec-private-option:hover:not(:disabled){background:#e7f7ef}
.ec-private-check-status{padding:13px;border-radius:12px;background:#eef8f2;color:#157163}
.ec-private-check-status span{display:block;margin-top:5px;font-size:13px}
.ec-private-practice-form,.ec-ai-form{display:grid;gap:12px;background:#f0f9f4;border:1px solid #cee4d8;border-radius:21px;padding:27px;margin:24px 0}
.ec-private-practice-form h2{font:normal 25px Georgia,serif;margin:0;color:#18564a}
.ec-private-practice-form label,.ec-ai-form label{display:grid;gap:7px;color:#365e53;font-size:13px;font-weight:800}
.ec-private-practice-form textarea,.ec-ai-form textarea,.ec-ai-form select{background:white;border:1px solid #b1d0c2;border-radius:11px;padding:13px 15px;color:#184d43;width:100%;font:inherit}
.ec-private-save{padding:13px 22px;border-radius:12px;justify-self:start;min-height:45px;font-weight:850}
.ec-private-status{color:#486a60;font-size:13px}
.ec-ai-result{margin-top:25px}
.ec-ai-result details{background:white;border:1px solid #d5e5dc;border-radius:14px;padding:17px}
.ec-ai-result summary{cursor:pointer;font-weight:800}
.ec-ai-result details p{white-space:pre-wrap}
@media(max-width:870px){.ec-private-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:550px){.ec-private-cards{grid-template-columns:1fr}.ec-private-actions{flex-direction:column;align-items:stretch}.ec-private-link{width:100%}.ec-private-page{padding-top:22px}.ec-private-lesson-section,.ec-private-practice-form,.ec-ai-form{padding:20px}.ec-private-topnav{display:grid;grid-template-columns:1fr 1fr}.ec-private-topnav .ec-private-link{padding:10px 6px}}

/* The grammar add-on is an optional, clearly priced second item on the same checkout. */
.ec-private-grammar-offer{background:#f5fbf7;border:1px solid #c6e4d4;padding:15px 18px;border-radius:15px;margin:14px 0;max-width:650px}
.ec-private-grammar-label{display:flex;align-items:flex-start;gap:11px;line-height:1.6;font-size:13px;font-weight:650;color:#255a4a;cursor:pointer}
.ec-private-grammar-label input{width:19px;height:19px;flex:0 0 auto;accent-color:#117c70;margin-top:2px}
.ec-private-grammar-total{font-size:13px;font-weight:850;color:#185b52;margin:11px 0 0}


/* source: ec-learning-pathways.css */
.ec-path-page{max-width:1150px;padding-top:42px;padding-bottom:92px}.ec-path-head{max-width:880px}.ec-path-overline{font-size:11px;letter-spacing:1.4px;font-weight:900;color:#147d72}.ec-path-head h1{font:normal clamp(36px,4.7vw,60px)/1.15 Georgia,serif;letter-spacing:-1.7px;color:#153f43;margin:14px 0}.ec-path-head p{font-size:16px;line-height:1.8;color:#4d6a67}.ec-path-language{display:flex;gap:14px;align-items:center;flex-wrap:wrap;border:1px solid #d2e6dd;background:#eef8f3;padding:14px 19px;border-radius:15px;margin:25px 0}.ec-path-language>span{font-size:12px;color:#476e66}.ec-path-language strong{color:#0f6e64;font-size:16px}.ec-path-language a{margin-left:auto;font-size:12px;color:#0f776c;font-weight:800;text-decoration:underline}.ec-path-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin:26px 0}.ec-path-card{background:#fff;border:1px solid #d6e5de;border-radius:21px;padding:27px}.ec-path-card>span{font-size:11px;letter-spacing:1px;color:#17796e;font-weight:850}.ec-path-card h2{font:normal 29px/1.2 Georgia,serif;color:#1d4c46;margin:12px 0}.ec-path-card>p{line-height:1.75;color:#516c68}.ec-path-prompt{background:#eff8f3;border-radius:15px;padding:17px 19px;margin-top:22px}.ec-path-prompt small{color:#157366;font-weight:800;font-size:11px}.ec-path-prompt p{font:normal 17px/1.6 Georgia,serif;color:#285b52;margin:10px 0 0}.ec-path-note{padding:24px;border:1px solid #d4e7db;background:#f4faf6;border-radius:18px;margin:22px 0}.ec-path-note strong{color:#145447}.ec-path-note p{color:#546e65;font-size:13px;line-height:1.75;margin:9px 0 0}.ec-path-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.ec-path-actions a{border-radius:12px;padding:13px 20px;font-size:13px;font-weight:850;display:inline-flex;justify-content:center;align-items:center}.ec-reading-stages{display:grid;gap:12px;margin-top:24px}.ec-reading-stage{display:grid;grid-template-columns:48px 1fr 28px;gap:16px;align-items:center;padding:23px;background:#fff;border:1px solid #d3e5dc;border-radius:17px}.ec-reading-stage>span:first-child{font:normal 25px Georgia,serif;color:#127c6c}.ec-reading-stage h2{font:normal 23px Georgia,serif;color:#20534b;margin:0 0 7px}.ec-reading-stage p{font-size:13px;line-height:1.6;color:#57736a;margin:0}.ec-reading-stage>span:last-child{color:#157c71}.ec-path-prices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:27px}.ec-path-price{padding:20px;border:1px solid #d1e5da;background:#fff;border-radius:17px;display:grid;gap:7px}.ec-path-price strong{font:normal 27px Georgia,serif;color:#18534b}.ec-path-price span{color:#147b6f;font-size:21px;font-weight:850}.ec-path-price small{font-size:12px;color:#647c72}@media(max-width:760px){.ec-path-cards{grid-template-columns:1fr}.ec-path-prices{grid-template-columns:repeat(2,minmax(0,1fr))}.ec-path-language a{margin-left:0}}@media(max-width:500px){.ec-path-prices{grid-template-columns:1fr}.ec-path-actions{flex-direction:column}.ec-path-actions a{width:100%}.ec-reading-stage{grid-template-columns:32px 1fr;gap:12px}.ec-reading-stage>span:last-child{display:none}.ec-path-card{padding:21px}}

.ec-path-tabs{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:29px}.ec-path-tabs a{background:#fff;border:1px solid #cde3d8;color:#1d6960;border-radius:99px;padding:9px 15px;font-size:12px;font-weight:800}.ec-path-tabs a:hover,.ec-path-tabs a:focus-visible{background:#e7f7f0;border-color:#197c70}


/* source: ec-specialty-courses.css */
/* English Compass AI bilingual specialty course catalog */
.ec-addon-page{padding:36px 0 85px;max-width:1200px}.ec-addon-back{color:#14796b;font-size:13px;font-weight:800}.ec-addon-kicker{display:block;color:#157e70;font-size:11px;letter-spacing:1.3px;font-weight:900}.ec-addon-lead{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:24px 0}.ec-addon-lead>div:first-child{max-width:780px}.ec-addon-lead h1{font:normal clamp(34px,4.2vw,55px)/1.15 Georgia,serif;color:#164840;margin:12px 0}.ec-addon-lead p{line-height:1.75;color:#567369}.ec-addon-pricehero{background:linear-gradient(145deg,#e3f4ea,#fff);border:1px solid #cce4d6;border-radius:20px;padding:24px;min-width:236px;text-align:center;display:grid;gap:8px}.ec-addon-pricehero strong{font-size:25px;color:#146a5e}.ec-addon-pricehero span,.ec-addon-pricehero small{font-size:12px;color:#53766a}.ec-addon-picker{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin:22px 0 35px;padding:20px 24px;border:1px solid #d9e8de;border-radius:18px;background:white}.ec-addon-picker>div{display:grid;gap:9px}.ec-addon-picker>div>span{font-size:11px;font-weight:850;color:#456e62}.ec-addon-toggle{display:flex;gap:8px;flex-wrap:wrap}.ec-addon-toggle button{border-radius:12px;border:1px solid #c9dcd2;background:#f5faf7;color:#2e6156;padding:11px 16px;min-height:43px;font-size:13px;font-weight:850;cursor:pointer}.ec-addon-toggle button[aria-pressed="true"]{background:#176e61;color:white;border-color:#176e61}.ec-addon-category-head{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:15px}.ec-addon-category-head h2{font:normal clamp(26px,3vw,35px) Georgia,serif;color:#15483d;margin:0}.ec-addon-category-head span{font-size:12px;color:#668076}.ec-addon-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.ec-addon-card{background:white;border:1px solid #d7e7df;border-radius:22px;padding:26px;display:flex;flex-direction:column;gap:10px}.ec-addon-card-top{display:flex;justify-content:space-between;align-items:center}.ec-addon-category{font-size:11px;font-weight:900;letter-spacing:1px;color:#1b8275}.ec-addon-price{font-size:23px;font-weight:900;color:#155c52}.ec-addon-card h3{font:normal 27px/1.27 Georgia,serif;color:#164940;margin:8px 0 0}.ec-addon-card>p{line-height:1.75;color:#5c766f;font-size:14px;margin:0}.ec-addon-card ul{margin:8px 0 10px;padding-left:20px;font-size:13px;line-height:1.9;color:#476d60;flex:1}.ec-addon-bottom{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:11px;font-weight:800;color:#54776c}.ec-addon-unavailable{margin-top:8px;border:1px solid #aacfc2;background:#e2f0e9;color:#426b5d;padding:14px;border-radius:12px;font-weight:850;font-size:13px;cursor:not-allowed}.ec-addon-card .ec-addon-note{font-size:11px;color:#678177}.ec-addon-compare{display:flex;justify-content:space-between;gap:25px;align-items:center;padding:29px;background:#eaf5ed;border:1px solid #d2e5d7;border-radius:23px;margin-top:28px}.ec-addon-compare>div:first-child{max-width:670px}.ec-addon-compare h2{font:normal 28px Georgia,serif;color:#184b42;margin:12px 0}.ec-addon-compare p{line-height:1.7;font-size:13px;color:#55746a}.ec-addon-compare-actions{min-width:220px;display:flex;flex-direction:column;gap:12px}.ec-addon-link{display:flex;padding:13px 17px;align-items:center;justify-content:center;border-radius:12px;border:1px solid #a6c9ba;background:white;font-size:13px;font-weight:850;color:#205f52;text-align:center}.ec-addon-link.primary{background:#147869;color:white;border-color:#147869}.ec-addon-faq{max-width:900px;margin:40px auto}.ec-addon-faq h2{font:normal 30px Georgia,serif;color:#184a41}.ec-addon-faq details{border-bottom:1px solid #ccded6;padding:17px 0}.ec-addon-faq summary{font-weight:850;cursor:pointer;color:#2d5d51}.ec-addon-faq p{font-size:14px;line-height:1.75;color:#61786e}.ec-addon-page button:focus-visible,.ec-addon-page a:focus-visible{outline:3px solid #d4a65e;outline-offset:3px}@media(max-width:840px){.ec-addon-lead,.ec-addon-compare{flex-direction:column;align-items:stretch}.ec-addon-pricehero{min-width:0}.ec-addon-compare-actions{min-width:0}.ec-addon-grid{grid-template-columns:1fr}}@media(max-width:600px){.ec-addon-page{padding-top:24px}.ec-addon-card{padding:23px}.ec-addon-picker{padding:17px}.ec-addon-category-head{flex-direction:column;align-items:start}}

/* source: ec-skill-lab.css */
/* English Compass AI — reading and writing practice lab */
.ec-lab-page{max-width:1190px;padding:30px 0 80px}
.ec-lab-top{display:flex;gap:15px;justify-content:space-between;flex-wrap:wrap}
.ec-lab-back{color:#196e62;font-weight:800;font-size:13px;text-decoration:none}
.ec-lab-hero{display:grid;grid-template-columns:minmax(0,1fr) 225px;gap:28px;align-items:center;padding:34px 0}
.ec-lab-overline{font-weight:900;font-size:11px;letter-spacing:1.3px;color:#147b6c}
.ec-lab-hero h1{font:normal clamp(34px,4.3vw,56px)/1.13 Georgia,serif;color:#124e44;margin:14px 0}
.ec-lab-hero p{max-width:760px;font-size:15px;line-height:1.78;color:#507369}
.ec-lab-hero-stats{display:grid;gap:9px;border:1px solid #c9e3d5;border-radius:20px;background:#eff9f2;padding:24px;text-align:center}
.ec-lab-hero-stats strong{font-size:42px;color:#176c56}
.ec-lab-hero-stats span{font-weight:800;font-size:12px;color:#345e55}
.ec-lab-hero-stats small{font-size:11px;color:#607d71}
.ec-lab-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;background:#fff;border:1px solid #d4e7dd;border-radius:20px;padding:20px}
.ec-lab-control h2{font-size:12px;font-weight:900;color:#385e54;margin:0 0 12px}
.ec-lab-control.wide{grid-column:1/-1}
.ec-lab-chips{display:flex;gap:8px;flex-wrap:wrap}
.ec-lab-chip{border:1px solid #c7dbd2;background:#f6faf7;color:#1d6658;font-size:12px;font-weight:850;border-radius:12px;padding:10px 14px;min-height:43px;cursor:pointer}
.ec-lab-chip.selected{background:#166f5f;color:#fff;border-color:#166f5f}
.ec-lab-activity{margin:20px 0 28px;padding:clamp(20px,3vw,34px);background:#fff;border:1px solid #d3e3dd;border-radius:22px;box-shadow:0 14px 30px #13483d09}
.ec-lab-activity-head{display:flex;gap:16px;align-items:start;justify-content:space-between}
.ec-lab-activity-head h2{font:normal clamp(25px,2.8vw,37px) Georgia,serif;color:#144e42;margin:8px 0 21px}
.ec-lab-count{font-size:12px;font-weight:800;color:#356e62;background:#eaf5ee;border-radius:90px;padding:9px 13px;white-space:nowrap}
.ec-lab-pass{padding:25px;border-radius:16px;border:1px solid #d3e4db;background:#f4faf6;font-size:16px;line-height:1.95;color:#244d43;white-space:pre-wrap}
.ec-lab-question{margin:25px 0;padding:0;border:0;min-width:0}
.ec-lab-question legend{font-size:15px;font-weight:900;color:#184d42;line-height:1.5;margin-bottom:10px}
.ec-lab-choices{display:grid;gap:9px}
.ec-lab-choice{display:flex;gap:11px;align-items:center;padding:13px 15px;border-radius:12px;border:1px solid #d2e3d9;background:#fff;cursor:pointer;line-height:1.55;font-size:14px;color:#375d52}
.ec-lab-choice:has(input:checked){border-color:#167c6a;background:#eff9f2}
.ec-lab-choice input{width:18px;height:18px;accent-color:#16866f;flex-shrink:0}
.ec-lab-feedback{padding:12px 15px;border-radius:12px;font-size:13px;line-height:1.7;margin:10px 0}
.ec-lab-feedback.correct{background:#ebf9ef;color:#175b46}
.ec-lab-feedback.review{background:#fff4e7;color:#765222}
.ec-lab-result{margin-top:25px;border-radius:15px;padding:21px;background:#eaf6ef;border:1px solid #bcdbc8;outline:none;color:#245747}
.ec-lab-result strong{font-size:22px}
.ec-lab-result p{font-size:13px;line-height:1.7;margin:8px 0 0}
.ec-lab-result .ec-lab-guidance{margin-top:12px;font-size:14px;font-weight:750;color:#1d594b}
.ec-lab-alert{font-size:13px;font-weight:800;color:#a33c38;margin:0 0 15px}
.ec-lab-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px;align-items:center}
.ec-lab-primary,.ec-lab-secondary{display:inline-flex;justify-content:center;align-items:center;min-height:45px;padding:12px 17px;border-radius:12px;text-decoration:none;font-size:13px;font-weight:900;cursor:pointer}
.ec-lab-primary{background:#137964;color:#fff;border:1px solid #137964}
.ec-lab-secondary{background:#fff;color:#175f52;border:1px solid #a3cbbe}
.ec-lab-primary:disabled{opacity:.45;cursor:not-allowed}
.ec-lab-write-prompt{border-left:4px solid #1a826f;background:#edf8f1;padding:17px;font-size:15px;line-height:1.75;color:#264e43;border-radius:0 14px 14px 0}
.ec-lab-write-label{display:block;margin:22px 0 8px;font-size:13px;font-weight:900;color:#235747}
.ec-lab-activity textarea{display:block;width:100%;min-height:185px;border:1px solid #bfd8ce;border-radius:14px;padding:16px;font:inherit;font-size:15px;line-height:1.7;resize:vertical;color:#204c40;background:white}
.ec-lab-wordcount{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12px;color:#5b776b;margin:10px 0}
.ec-lab-tip{font-size:13px;line-height:1.7;background:#f7f9ed;border:1px solid #e4ebbc;color:#557048;padding:14px 16px;border-radius:13px}
.ec-lab-checklist{margin-top:26px;border-top:1px solid #d8e5dc;padding-top:20px}
.ec-lab-checklist h3{font:normal 25px Georgia,serif;color:#1e5448;margin:0}
.ec-lab-checklist p{font-size:13px;line-height:1.7;color:#638074}
.ec-lab-self{display:flex;gap:12px;margin:10px 0;align-items:center;border:1px solid #d4e5dd;padding:14px;border-radius:12px;font-size:13px;line-height:1.5;color:#355d51;cursor:pointer}
.ec-lab-self input{accent-color:#18866e;width:18px;height:18px;flex-shrink:0}
.ec-lab-example{margin-top:24px;border:1px solid #c9e2d7;background:#f2fbf6;border-radius:16px;padding:20px}
.ec-lab-example h3{font:normal 25px Georgia,serif;color:#185746;margin:0 0 10px}
.ec-lab-example p{white-space:pre-wrap;line-height:1.8;color:#385d50}
.ec-lab-example small{color:#638071;font-size:12px}
.ec-lab-end{border-radius:22px;border:1px solid #d2e6da;background:linear-gradient(135deg,#e9f7ee,#fff);padding:30px}
.ec-lab-end h2{font:normal 31px Georgia,serif;color:#165044;margin:0}
.ec-lab-end>p{max-width:800px;font-size:14px;line-height:1.75;color:#567469}
.ec-lab-privacy{font-size:11px!important;margin-top:20px!important}
.ec-lab-reference{font-size:12px;font-weight:800;color:#2a745e}
.ec-lab-page button:focus-visible,.ec-lab-page a:focus-visible,.ec-lab-page input:focus-visible,.ec-lab-page textarea:focus-visible{outline:3px solid #df9d54;outline-offset:3px}
@media(max-width:880px){.ec-lab-hero{grid-template-columns:1fr}.ec-lab-controls{grid-template-columns:1fr 1fr}.ec-lab-control.wide{grid-column:1/-1}}
@media(max-width:630px){.ec-lab-controls{grid-template-columns:1fr}.ec-lab-activity-head{flex-direction:column;align-items:start}.ec-lab-activity-head h2{margin-bottom:6px}.ec-lab-pass{padding:18px;font-size:15px}.ec-lab-end{padding:22px}}

/* source: ec-review-schedule.css */
/* English Compass AI — privacy-first practice review planner */
.ec-review-page{max-width:1150px;padding:32px 0 85px}
.ec-review-breadcrumb{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.ec-review-breadcrumb a{font-size:13px;font-weight:800;color:#147766;text-decoration:none}
.ec-review-hero{display:grid;grid-template-columns:minmax(0,1fr) 235px;align-items:center;gap:30px;margin:24px 0 26px}
.ec-review-kicker{font-size:11px;letter-spacing:1.4px;color:#148572;font-weight:900}
.ec-review-hero h1{font:normal clamp(34px,4.1vw,53px)/1.14 Georgia,serif;color:#16493e;margin:13px 0}
.ec-review-hero p{color:#55746a;line-height:1.8;max-width:790px;font-size:15px}
.ec-review-hero-side{background:#eaf6ee;border:1px solid #cae3d6;border-radius:18px;padding:18px;display:grid;gap:10px}
.ec-review-hero-side span{font-weight:850;font-size:12px;color:#346e5e}
.ec-review-hero-side small{font-size:11px;color:#5e786e}
.ec-review-language{display:flex;gap:8px}
.ec-review-language button{flex:1;border:1px solid #bbd9cb;border-radius:10px;background:#fff;min-height:44px;padding:9px;font-size:12px;font-weight:850;color:#27675b;cursor:pointer}
.ec-review-language button[aria-pressed="true"]{background:#167563;color:white;border-color:#167563}
.ec-review-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:24px 0 32px}
.ec-review-metrics article{border:1px solid #d2e4d9;background:white;border-radius:17px;padding:18px;display:grid;gap:9px}
.ec-review-metrics article strong{font-size:31px;color:#195c4c}
.ec-review-metrics article span{font-size:12px;color:#5e776b;line-height:1.4;font-weight:800}
.ec-review-plan,.ec-review-history,.ec-review-empty,.ec-review-privacy{border-radius:21px;border:1px solid #d5e6dc;padding:clamp(18px,3vw,31px);background:#fff}
.ec-review-plan h2,.ec-review-history h2,.ec-review-empty h3,.ec-review-privacy h2{font:normal clamp(25px,3vw,32px) Georgia,serif;color:#164a40;margin:0 0 13px}
.ec-review-plan>p,.ec-review-empty p,.ec-review-privacy p,.ec-review-history>p{font-size:13px;color:#60796f;line-height:1.75;max-width:870px}
.ec-review-tasks{padding:0;margin:20px 0 0;display:grid;gap:12px;list-style:none}
.ec-review-task{border:1px solid #dbe9df;border-radius:15px;padding:17px;display:flex;justify-content:space-between;gap:16px;align-items:center}
.ec-review-task h3{font-size:17px;color:#235549;margin:9px 0 4px}
.ec-review-task p{font-size:12px;color:#64786f;margin:0;line-height:1.6}
.ec-review-tag{display:inline-block;border-radius:100px;background:#eaf5ef;border:1px solid #c8e0d1;color:#266b52;font-size:10px;font-weight:900;padding:5px 10px}
.ec-review-tag.due{background:#fff1dc;border-color:#ecd1a5;color:#835c28}
.ec-review-task-end{display:grid;gap:10px;justify-items:end;min-width:145px}
.ec-review-task-end small{font-size:11px;color:#63786d}
.ec-review-action,.ec-review-alt{display:inline-flex;min-height:43px;align-items:center;justify-content:center;border-radius:11px;padding:11px 15px;text-decoration:none;font-size:12px;font-weight:900}
.ec-review-action{background:#127c69;color:white}
.ec-review-alt{background:white;color:#166f61;border:1px solid #b9d5c9}
.ec-review-cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:19px}
.ec-review-history{margin-top:22px}
.ec-review-section-head{display:flex;gap:14px;align-items:center;justify-content:space-between}
.ec-review-section-head>span{font-size:12px;font-weight:800;color:#527768}
.ec-review-history ul{padding:0;list-style:none;margin:15px 0}
.ec-review-history li{display:grid;grid-template-columns:160px minmax(0,1fr) 130px;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid #e6eee8}
.ec-review-history li span{font-size:12px;color:#678075}
.ec-review-history li strong{font-size:13px;color:#255c4e}
.ec-review-privacy{display:flex;gap:30px;align-items:start;justify-content:space-between;background:#f2f8f4;margin-top:24px}
.ec-review-privacy>div:first-child{max-width:730px}
.ec-review-privacy strong{font-size:12px;color:#3b6758;line-height:1.7}
.ec-review-privacy-actions{display:grid;min-width:215px;gap:11px}
.ec-review-privacy-actions button{cursor:pointer;min-height:43px;border-radius:11px;padding:10px 14px;font-size:12px;font-weight:850}
.ec-review-memory{background:#fff;border:1px solid #7dbdaa;color:#135d4c}
.ec-review-memory[aria-pressed="true"]{background:#dcefe5}
.ec-review-clear{background:#fff;border:1px solid #e5bfb0;color:#9b4b3e}
.ec-review-cancel{background:#f9fbf8;border:1px solid #d2dfd6;color:#527065}
.ec-review-notice{min-height:1.3em;font-size:12px;color:#316d58;margin:14px 0}
.ec-review-page button:focus-visible,.ec-review-page a:focus-visible{outline:3px solid #db9a51;outline-offset:3px}
@media(max-width:850px){.ec-review-hero{grid-template-columns:1fr}.ec-review-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.ec-review-privacy{flex-direction:column}.ec-review-privacy-actions{width:100%;min-width:0}}
@media(max-width:620px){.ec-review-metrics{grid-template-columns:1fr 1fr}.ec-review-task{flex-direction:column;align-items:start}.ec-review-task-end{justify-items:start}.ec-review-history li{grid-template-columns:1fr;gap:6px}.ec-review-hero h1{font-size:34px}}

/* source: ec-ai-recharge.css */
.ec-ai-recharge-page{max-width:970px;padding:40px 0 90px}.ec-ai-recharge-overline{font-size:11px;font-weight:850;letter-spacing:1.3px;color:#197b70}.ec-ai-recharge-page h1{font:normal clamp(34px,4.2vw,53px)/1.15 Georgia,serif;color:#16453d;letter-spacing:-1.2px;margin:14px 0}.ec-ai-recharge-lead{font-size:16px;color:#55736c;line-height:1.8;max-width:740px}.ec-ai-recharge-offer{display:grid;grid-template-columns:1fr 1fr;gap:16px;background:linear-gradient(125deg,#e6f6eb,#fff);border:1px solid #d0e7d9;border-radius:23px;padding:28px;margin:27px 0}.ec-ai-recharge-offer>div{display:grid;gap:5px}.ec-ai-recharge-offer strong{font-size:29px;color:#146957}.ec-ai-recharge-offer span{font-size:12px;color:#50736a}.ec-ai-recharge-choose{font-weight:800;font-size:13px;color:#2d5148;display:grid;gap:7px;max-width:370px}.ec-ai-recharge-choose select{border-radius:12px;padding:13px;font-size:15px;border:1px solid #a6cabc;background:white;color:#234d45}.ec-ai-recharge-balance{border:1px solid #d2e5dc;background:white;border-radius:18px;margin:25px 0;padding:23px;font-size:13px;color:#567067;line-height:1.75}.ec-ai-recharge-balance>div{display:flex;justify-content:space-between;gap:20px;padding:9px 0;border-bottom:1px solid #e6eee8}.ec-ai-recharge-balance strong{font-size:20px;color:#14796e}.ec-ai-recharge-balance small{display:block;margin-top:12px}.ec-ai-recharge-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.ec-ai-recharge-button{display:inline-flex;justify-content:center;align-items:center;padding:13px 17px;min-height:46px;border-radius:12px;font-size:13px;font-weight:850}.ec-ai-recharge-button:disabled{opacity:.6;cursor:not-allowed}.ec-ai-recharge-foot{font-size:12px;color:#617e70;line-height:1.7;margin-top:25px;max-width:800px}@media(max-width:570px){.ec-ai-recharge-offer{grid-template-columns:1fr;padding:22px}.ec-ai-recharge-actions{flex-direction:column;align-items:stretch}.ec-ai-recharge-button{width:100%}}
