@font-face{font-family:App;src:local('Inter'),local('DejaVu Sans');font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f3f5f7;color:#182e32;font-family:App,Arial,sans-serif;font-size:16px;line-height:1.55}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button,a,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #4775c8;outline-offset:4px}button{border:0}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(28px,3.2vw,42px);line-height:1.2;letter-spacing:-1.2px;margin-bottom:12px}h2{font-size:23px;line-height:1.3;letter-spacing:-.5px;margin-bottom:16px}h3{font-size:18px;line-height:1.35;margin-bottom:9px}p{margin-bottom:16px}.muted{color:#617078}.small-label{font-size:12px;letter-spacing:1.5px;font-weight:700}.demo-bar{min-height:34px;padding:7px 30px;background:#102c2e;color:#d3e2e1;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;letter-spacing:.6px}.demo-bar a{color:#d3ff73;letter-spacing:0}.shell{max-width:1600px;margin:auto;display:flex;min-height:calc(100vh - 34px)}.sidebar{width:256px;flex-shrink:0;padding:36px 24px;background:white;border-right:1px solid #e3e9e9;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:800;letter-spacing:-.6px;white-space:nowrap}.brand-mark{background:#153b39;color:#d3ff73;border-radius:12px;width:40px;height:44px;display:grid;place-items:center;font-size:22px;flex-shrink:0}.brand small{display:block;font-size:11px;letter-spacing:0;color:#627479;font-weight:400}.question{color:#268071}.sidebar nav{margin-top:54px;display:grid;gap:8px}.nav-item{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:12px;font-size:15px;color:#5e7075;min-height:48px}.nav-item.active{background:#e9f0ef;color:#153b39;font-weight:700}.nav-item:hover{background:#f0f4f3}.icon{width:21px;height:21px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.sidebar-bottom{margin-top:auto;padding:64px 10px 10px}.sidebar-bottom .small-label{font-size:10px;letter-spacing:1px}.sidebar-bottom p{font-size:14px;color:#6a7c80;line-height:1.9;margin-top:16px}.text-link{color:#236e62;font-weight:600;font-size:14px}.workspace{min-width:0;flex:1}.topbar{height:90px;border-bottom:1px solid #e3e9e9;display:flex;align-items:center;gap:18px;padding:0 44px}.topbar>.muted{margin-right:auto;font-size:14px}.mode-switch{background:#e5eae9;padding:4px;border-radius:10px;display:flex}.mode-switch button{background:none;padding:8px 13px;border-radius:7px;color:#526468;font-size:13px;min-height:38px}.mode-switch button.active{background:white;box-shadow:0 2px 4px #17312a0d;color:#183e38;font-weight:700}.avatar{display:grid;place-items:center;width:38px;height:38px;background:#e3eae1;border-radius:50%;color:#44623a;font-size:13px}.mobile-brand{display:none}main{padding:36px 44px 50px;max-width:1260px;margin:auto;min-height:70vh}main:focus{outline:none}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:28px}.eyebrow{color:#47766d;font-size:12px;letter-spacing:1.8px;font-weight:700;margin:0 0 10px}.page-head p{color:#63767c;margin-bottom:0}.date-pill{white-space:nowrap;color:#586e70;font-size:13px;border:1px solid #dce4e3;border-radius:8px;padding:8px 12px}.grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);gap:24px}.stack{display:flex;flex-direction:column;gap:24px}.hero{background:#153b39;border-radius:20px;padding:30px;color:#fff;position:relative;overflow:hidden}.hero .eyebrow{color:#b2d0ca}.hero h2{font-size:32px;line-height:1.2;margin:24px 0 12px;max-width:440px;letter-spacing:-.7px}.hero p{color:#c1d3d0;max-width:440px}.hero .tag{background:#2b504b;border-color:#42675e;color:#d6e5dc}.hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:24px}.hero small{color:#b7ceca}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:#153b39;color:white;padding:13px 20px;border-radius:11px;font-size:15px;font-weight:700;min-height:48px;text-align:center}.button:hover{filter:brightness(1.08)}.button.lime{background:#d3ff73;color:#153b39}.button.secondary{background:white;color:#254b46;border:1px solid #d9e2df}.button.ghost{background:#edf2f0;color:#315950}.button:disabled{opacity:.45;filter:none}.arrow{font-size:22px;line-height:1}.card{background:white;border:1px solid #e0e7e7;border-radius:18px;padding:24px}.card p:last-child{margin-bottom:0}.card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.card-top h2,.card-top h3{margin:0}.tag{display:inline-flex;align-items:center;gap:6px;border:1px solid #dce5e0;border-radius:6px;padding:4px 8px;font-size:12px;font-weight:600;color:#426c60;background:#f5f8f5}.tag.blue{background:#eef3fb;color:#436ba6;border-color:#dce6f5}.tag.amber{background:#fff7e5;color:#846021;border-color:#f1e4c7}.tag.gray{background:#f3f5f5;color:#617477}.course-title{font-size:23px;line-height:1.3;margin-bottom:9px}.course-meta{font-size:14px;color:#677b7e}.progress-track{height:6px;background:#e8eeeb;border-radius:9px;overflow:hidden;margin:18px 0 10px}.progress-track span{display:block;height:100%;background:#478477;border-radius:9px}.between{display:flex;justify-content:space-between;align-items:center;gap:12px}.small{font-size:13px}.session-date{display:flex;gap:15px;align-items:center;margin-bottom:20px}.calendar{background:#edf2f9;color:#43608b;min-width:52px;text-align:center;padding:6px;border-radius:9px;font-size:12px}.calendar strong{display:block;font-size:24px;line-height:1.2}.session-date p{margin:0;font-size:14px}.session-date strong{display:block;margin-bottom:3px}.steps-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px}.step-box{padding:13px;background:#f5f7f7;border-radius:10px}.step-box b{display:block;color:#528075;margin-bottom:5px;font-size:13px}.step-box span{font-size:13px;color:#5f7376}.section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:30px 0 16px}.section-head h2{margin:0}.scenarios{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.scenario{background:white;border:1px solid #e0e7e7;border-radius:16px;padding:22px;text-align:left;color:inherit;display:flex;flex-direction:column;align-items:flex-start;transition:transform .18s,box-shadow .18s;min-width:0}.scenario:hover{transform:translateY(-3px);box-shadow:0 10px 20px #163e3010}.scenario-symbol{height:46px;width:46px;border-radius:12px;background:#e9f1ed;color:#37745d;display:grid;place-items:center;margin-bottom:22px}.scenario:nth-child(2) .scenario-symbol{background:#eaf0f9;color:#4d73ac}.scenario:nth-child(3) .scenario-symbol{background:#fcf2df;color:#946d2e}.scenario h3{margin:14px 0 8px}.scenario p{color:#697b80;font-size:14px;flex:1}.scenario-foot{display:flex;justify-content:space-between;width:100%;font-size:13px;color:#45655c;align-items:center;margin-top:8px}.app-footer{padding:0 44px 25px;display:flex;justify-content:space-between;color:#6b7e80;font-size:12px}.app-footer span{color:#77888b}#mobile-nav{display:none}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.filter{padding:9px 15px;min-height:42px;border-radius:9px;background:white;border:1px solid #dce4e4;color:#50666a;font-size:14px}.filter.active{background:#153b39;color:white;border-color:#153b39}.level-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:22px}.level-option{background:white;border:1px solid #dce4e4;padding:18px;border-radius:13px;text-align:left;color:#3b5659}.level-option.active{background:#eaf2ef;border:2px solid #407869;padding:17px}.level-option b{display:block;font-size:16px;margin-bottom:5px}.level-option span{font-size:13px}.notice{padding:13px 16px;border-radius:10px;background:#eaf0f7;color:#45617d;font-size:13px;margin:18px 0}.course-row{display:flex;align-items:center;gap:18px;border-top:1px solid #e7eceb;padding:20px 0}.course-row:last-child{padding-bottom:0}.course-row p{margin:4px 0 0;font-size:14px;color:#677c7e}.course-row .button{margin-left:auto}.unit-num{background:#f0f4f3;border-radius:12px;width:42px;height:42px;display:grid;place-items:center;flex-shrink:0;font-weight:700;color:#567f70}.lesson-wrap{max-width:760px;margin:auto}.back{display:inline-flex;align-items:center;gap:8px;color:#4e7166;font-size:14px;margin-bottom:20px}.lesson-progress{display:flex;gap:7px;margin-bottom:25px}.lesson-progress span{height:5px;background:#dee6e2;border-radius:5px;flex:1}.lesson-progress span.done{background:#45836c}.lesson-card{padding:30px}.role-label{font-size:12px;color:#4b7d6c;letter-spacing:1px;font-weight:700}.english{font-size:24px;line-height:1.5;letter-spacing:-.3px;margin:18px 0}.dialogue{background:#f0f5f3;border-radius:14px;padding:22px;margin:20px 0}.audio-button{display:inline-flex;align-items:center;gap:8px;padding:8px 0;color:#306e5d;background:transparent;min-height:44px;font-size:14px;font-weight:600}details{color:#5d7470;font-size:14px;margin-top:12px}summary{cursor:pointer;min-height:32px}.answers{display:grid;gap:10px;margin-top:20px}.answer{border:1px solid #dae4df;background:white;border-radius:12px;text-align:left;padding:15px 18px;min-height:54px;color:#253f40;display:flex;gap:14px;align-items:center}.answer:hover:not(:disabled){background:#f1f6f3;border-color:#598a76}.answer .letter{border:1px solid #d7e1dc;border-radius:6px;min-width:27px;height:27px;display:grid;place-items:center;color:#768b80;font-size:12px}.answer.correct{background:#eaf5ed;border-color:#3c865a}.answer.wrong{background:#fff0ed;border-color:#c16b53}.answer:disabled{opacity:1}.feedback{padding:18px;border-radius:12px;background:#edf5ef;color:#295d42;margin:20px 0 0}.feedback.wrong{background:#fff4e9;color:#83562a}.feedback strong{display:block;margin-bottom:6px}.feedback p{font-size:14px;margin:0}.lesson-actions{display:flex;justify-content:space-between;align-items:center;margin-top:24px;gap:15px}.result-number{font-size:62px;font-weight:800;letter-spacing:-3px;color:#296554;line-height:1.2}.result-number small{font-size:23px;color:#809389;letter-spacing:0}.result-header{text-align:center;padding:10px 0 22px}.result-header h1{margin-top:18px;font-size:32px}.check-list{list-style:none;padding:0;margin:18px 0}.check-list li{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid #e5ebe8}.check{color:#377e5a;font-weight:bold}.skill-row{padding:17px 0;border-bottom:1px solid #e6ece9}.skill-row:last-child{border:0}.skill-row p{font-size:14px;color:#637b74;margin:6px 0 0}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.stat strong{font-size:35px;display:block;letter-spacing:-1px}.stat span{font-size:14px;color:#678078}.teacher-table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}.teacher-table th{font-size:12px;font-weight:500;color:#6a8179;padding:12px 10px;border-bottom:1px solid #e2e9e4}.teacher-table td{padding:16px 10px;border-bottom:1px solid #e9eeeb}.table-scroll{overflow:auto}.teacher-heading{display:flex;justify-content:space-between;gap:20px;align-items:center}.teacher-heading select{max-width:240px;padding:10px;border:1px solid #d6e0da;border-radius:8px;background:white;color:#23493c}.phrase{border-bottom:1px solid #e3ebe6;padding:18px 0}.phrase b{display:block;font-size:18px}.phrase p{font-size:14px;margin:5px 0}.row-actions{display:flex;gap:12px;flex-wrap:wrap}.empty{text-align:center;padding:40px 20px}.empty p{color:#6c8278}#toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(150%);opacity:0;background:#173d33;color:white;border-radius:12px;padding:14px 20px;box-shadow:0 4px 30px #12352b25;z-index:30;width:max-content;max-width:90vw;font-size:14px;transition:.2s;pointer-events:none}#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.concept-body{background:#153b39;color:#fff}.concept-body .demo-bar{position:sticky;top:0;z-index:3}.concept-content{max-width:1120px;padding:40px 34px;margin:auto}.concept-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:60px}.concept-logo{font-size:24px;font-weight:800}.concept-slide{padding:55px 0;border-bottom:1px solid #41645e;min-height:480px}.concept-slide .eyebrow{color:#b9e29a}.concept-slide h1{font-size:clamp(38px,6vw,72px);max-width:820px;line-height:1.1;letter-spacing:-2.5px}.concept-slide>p{font-size:21px;color:#c2d6cd;max-width:790px}.concept-slide h2{font-size:34px}.concept-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.concept-card{border:1px solid #41655b;background:#20463f;padding:24px;border-radius:15px}.concept-card .num{font-size:13px;color:#cbf585;letter-spacing:2px}.concept-card h3{margin-top:25px;font-size:22px}.concept-card p{font-size:15px;color:#c2d6cc}.concept-wide{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:30px}.concept-wide p,.concept-wide li{color:#c2d6cc;font-size:17px}.concept-wide li{margin-bottom:12px}.concept-pill{display:inline-flex;border:1px solid #537463;border-radius:30px;padding:8px 14px;margin:5px;color:#d6edce;font-size:14px}.concept-footer{padding:40px 0;font-size:14px;color:#b4cfc3}
@media(min-width:1400px){main{padding-top:44px}.hero{padding:36px}.hero h2{font-size:36px}}@media(max-width:1150px){.sidebar{width:220px;padding:30px 18px}.brand{font-size:16px;gap:8px}.brand-mark{width:32px;height:38px;font-size:19px}.topbar{padding:0 28px}main{padding:30px 28px}.grid{grid-template-columns:minmax(0,1.4fr) minmax(245px,1fr);gap:18px}.hero{padding:24px}.hero h2{font-size:29px}.card{padding:20px}.scenarios{gap:12px}.scenario{padding:18px}.hero-bottom{align-items:flex-start;flex-direction:column}.app-footer{padding:0 28px 25px}}@media(max-width:900px){.sidebar{display:none}.topbar{height:74px}.mobile-brand{display:block;font-weight:800;font-size:22px;letter-spacing:-.8px;margin-right:auto}.topbar>.muted{display:none}#mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fffffffa;backdrop-filter:blur(12px);border-top:1px solid #dce5df;padding:6px 12px calc(6px + env(safe-area-inset-bottom));z-index:20;justify-content:space-around}#mobile-nav .nav-item{display:flex;flex-direction:column;gap:4px;font-size:11px;padding:7px 8px;border-radius:9px;min-width:62px;min-height:54px}body{padding-bottom:82px}.app-footer{padding-bottom:16px}#toast{bottom:90px}.concept-body{padding-bottom:0}}@media(max-width:620px){.demo-bar{padding:7px 18px;font-size:9px;letter-spacing:.4px;gap:7px}.demo-bar a{font-size:11px}.topbar{padding:0 20px;gap:8px;height:auto;min-height:76px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.mobile-brand{font-size:23px}.mode-switch button{font-size:11px;padding:6px 8px;min-height:32px}.mode-switch{padding:3px}.desktop-only{display:none}main{padding:26px 20px 30px}.page-head{margin-bottom:23px;gap:10px}.page-head p{font-size:14px}h1{font-size:30px;letter-spacing:-1px}.date-pill{display:none}.grid{grid-template-columns:1fr;gap:18px}.stack{gap:18px}.hero{border-radius:18px;padding:24px}.hero h2{font-size:32px;margin-top:22px}.hero p{font-size:15px}.hero-bottom{flex-direction:row;align-items:center}.hero small{font-size:12px}.hero .button{padding:13px 16px}.card{border-radius:15px;padding:22px}.scenarios{grid-template-columns:1fr}.scenario{display:grid;grid-template-columns:46px 1fr;column-gap:16px;padding:20px}.scenario-symbol{grid-row:1/5;margin:0}.scenario .tag{justify-self:start}.scenario h3{margin:10px 0 6px}.scenario p{margin-bottom:8px}.scenario-foot{grid-column:2}.section-head{margin-top:26px}.section-head h2{font-size:22px}.section-head .text-link{font-size:12px}.app-footer{padding:0 20px 20px;font-size:11px}.app-footer span{max-width:180px;text-align:right}.level-picker{gap:7px}.level-option{padding:12px 9px}.level-option.active{padding:11px 8px}.level-option b{font-size:13px}.level-option span{font-size:12px}.course-row{gap:12px;flex-wrap:wrap}.course-row>div:nth-child(2){flex:1;min-width:180px}.course-row .button{margin-left:54px}.lesson-card{padding:22px}.english{font-size:22px}.lesson-actions .small{max-width:120px}.stats{gap:9px}.stat{padding:15px 12px}.stat strong{font-size:28px}.stat span{font-size:12px}.teacher-heading{align-items:flex-start;flex-direction:column}.concept-content{padding:24px}.concept-nav{margin-bottom:20px;gap:15px}.concept-logo{font-size:20px}.concept-nav .button{font-size:13px;padding:10px 12px}.concept-slide{padding:36px 0;min-height:0}.concept-slide h1{font-size:43px;letter-spacing:-1.5px}.concept-slide h2{font-size:29px}.concept-slide>p{font-size:18px}.concept-grid,.concept-wide{grid-template-columns:1fr;gap:15px}.concept-card h3{margin-top:12px}.concept-card{padding:21px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media print{.concept-body{background:white;color:#153b39}.concept-body .demo-bar,.concept-nav .button{display:none}.concept-content{padding:0;max-width:none}.concept-slide{break-after:page;min-height:0;padding:15px 0;border:0}.concept-slide p,.concept-slide li,.concept-card p,.concept-wide p,.concept-wide li{color:#304a40}.concept-card{background:#f4f7f4;border-color:#abc1b3}.concept-card .num,.concept-slide .eyebrow{color:#3e7257}.concept-slide h1{font-size:48px}.concept-pill{color:#304a40;border-color:#789483}.concept-footer{color:#304a40}}
/* Product rhythm and conversation states */
:root{--ink:#183b39;--accent:#d3ff73;--line:#dae3e3}body{font-family:Inter,'Segoe UI',Arial,sans-serif}.shell{min-height:100vh}.sidebar{position:sticky;top:0;height:100vh}.brand{letter-spacing:-.55px}.brand small{font-size:12px}.brand-mark{position:relative;border-radius:13px 13px 4px 13px}.sidebar-bottom .small-label{font-size:12px;letter-spacing:.9px}.sidebar-bottom{padding-left:4px}.topbar{height:86px}.mode-switch button{font-size:14px;min-height:44px}.eyebrow,.role-label{font-size:12px;line-height:1.7}.small,.tag,.footnote{font-size:14px}.page-head h1{font-weight:750;font-size:clamp(32px,3.5vw,46px);letter-spacing:-1.4px}.page-head{margin-bottom:30px}.home-grid{grid-template-columns:minmax(0,1.65fr) minmax(270px,1fr)}.hero{background:#173d3b;border:1px solid #244b47;border-radius:24px 24px 7px 24px;padding:30px 32px;box-shadow:0 12px 30px #173d3b0a}.hero .hero-kicker{font-size:12px;letter-spacing:1.6px;color:#bfd0c8;margin:30px 0 12px}.hero h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(35px,3.7vw,53px);line-height:1.12;letter-spacing:-1.4px;margin:0 0 22px;max-width:490px}.hero>p:not(.hero-kicker){font-size:16px;max-width:450px}.hero-index{color:#a3bdb6;font-size:12px;letter-spacing:2px}.hero-bottom{margin-top:30px}.hero .button{padding:15px 21px}.hero .tag{background:transparent;color:#e0ece5;border-color:#66847c}.course-card{display:flex;flex-direction:column;padding:29px}.course-card h2{font-size:29px;font-weight:650;line-height:1.25;letter-spacing:-.8px}.course-card .course-meta{line-height:1.8;font-size:14px}.course-card .progress-track{margin-top:auto}.inline-link{display:inline-block;margin-top:22px}.class-banner{display:flex;align-items:center;gap:20px;margin:24px 0 32px;padding:22px 24px;background:#e9edf5;border:1px solid #dbe2ee;border-radius:6px 20px 20px 20px}.class-banner .scenario-symbol{background:#dce5f4;margin:0;flex-shrink:0;color:#3f6090}.class-banner .eyebrow{color:#466084;margin:0 0 5px}.class-banner h3{font-size:19px;margin-bottom:5px}.class-banner p:not(.eyebrow){font-size:14px;color:#566a7d;margin:0;max-width:580px}.class-banner .button{margin-left:auto;flex-shrink:0;font-size:14px}.scenario{padding:24px;border-radius:18px;transition:transform .2s,box-shadow .2s,border-color .2s}.scenario:hover{border-color:#7e9c94;box-shadow:0 9px 24px #153b3910}.scenario-foot{flex-wrap:wrap;gap:12px;font-size:14px}.scenario-foot b{font-size:14px}.scenario h3{font-size:20px;letter-spacing:-.3px}.scenario .tag{font-size:12px}.scenario p{line-height:1.6}.app-footer{margin-top:10px;font-size:14px}.learning-cycle{display:grid;grid-template-columns:repeat(5,1fr);margin:0 0 26px;border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}.learning-cycle>div{padding:20px 16px;border-right:1px solid var(--line)}.learning-cycle>div:last-child{border:0}.learning-cycle b{display:block;color:#66887e;font-size:14px;margin-bottom:10px}.learning-cycle span{font-size:14px;line-height:1.5;display:block}.sample-quote{font-family:Georgia,'Times New Roman',serif;font-size:24px;line-height:1.5;padding:18px 22px;border-left:3px solid #537f70;background:#f1f5f3;margin:18px 0 20px}.footnote{color:#5a7074;line-height:1.65;margin:20px 0}.lesson-wrap>.card{margin-bottom:24px}.task-title{font-size:25px;line-height:1.4;letter-spacing:-.55px}.lesson-progress span{transition:background .3s}.lesson-card .english{margin:8px 0 0;font-size:24px}.conversation{display:flex;flex-direction:column;gap:13px;margin:20px 0}.speech{max-width:88%;background:#eaf0ef;border-radius:15px 15px 15px 3px;padding:16px 20px;align-self:flex-start}.speech.reply{align-self:flex-end;background:#e9eef6;border-radius:15px 15px 3px 15px}.speech>span{font-size:12px;color:#577172;font-weight:600}.speech p{font-size:18px;margin:5px 0 0;line-height:1.55}.audio-caption{font-size:14px;margin:0 0 8px}.phrase{padding:16px 0}.phrase p{color:#607675}.answer-check{margin-left:auto;color:#28724d;font-size:22px}.answer .letter{font-size:14px;flex-shrink:0}.feedback{animation:feedback-in .28s ease-out}.feedback p{font-size:16px;line-height:1.6}.phrase-built{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-height:100px;padding:16px;border:1px dashed #91a9a0;background:#f5f8f6;border-radius:14px;margin-top:18px}.phrase-built.solved{border:1px solid #46815d;background:#edf6ee}.word-bank{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 20px}.word{background:#fff;color:#203f39;border:1px solid #bfcec7;box-shadow:0 2px 0 #cbd7cf;border-radius:8px;min-height:46px;padding:9px 15px;font-size:18px;transition:transform .13s,background .13s}.word:hover:not(:disabled){background:#eaf1ed;transform:translateY(-2px)}.word:disabled{opacity:.35;box-shadow:none}.phrase-built .word{animation:word-in .18s ease-out}.phrase-built .word:disabled{opacity:1}.check-order{width:100%}.lesson-actions{min-height:50px}.result-seal{display:grid;place-items:center;margin:0 auto 20px;background:#d3ff73;color:#163d35;width:62px;height:62px;border-radius:50%;font-size:29px;animation:seal-in .5s cubic-bezier(.2,.7,.2,1.2)}.result-header .eyebrow{margin-bottom:10px}.result-header h1{font-size:30px}.result-number{font-size:70px}.skill-row .between{align-items:flex-start}.skill-row .tag{white-space:nowrap;font-size:12px}.role-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:22px 0}.role-cards>div{padding:19px;border-radius:13px;background:#f0f4f2}.role-cards>div:nth-child(2){background:#edf1f7}.role-cards p{margin:14px 0 0;font-size:16px}.criteria{padding-left:23px}.criteria li{padding-left:4px;margin:10px 0}.classroom-card .notice,.notice{font-size:14px}.stat small{font-size:19px;font-weight:400;color:#738c83}.progress-unit{padding:21px 0;border-top:1px solid var(--line)}.progress-unit h3{margin-bottom:17px}.skill-line{font-size:15px;margin:9px 0}.skill-line .check{margin-right:8px}.storage-card{display:flex;align-items:center;gap:26px;margin-top:26px}.storage-card p{font-size:14px;color:#607775;max-width:760px;margin:0}.storage-card button{flex-shrink:0}.select-label{display:flex;align-items:center;gap:12px;font-size:14px;margin-bottom:20px}.teacher-heading select{font-size:14px;min-height:44px;max-width:280px}.teacher-table th{font-size:14px}.fictional{border:1px solid #d5deed;margin-bottom:24px}.feedback-example{border-left:3px solid #69897c;padding:14px 20px;background:#f1f5f3;margin:18px 0}.feedback-example p{margin:10px 0 0}.empty>.icon{width:34px;height:34px;margin-bottom:15px}.empty h2{max-width:550px;margin:0 auto 15px}.empty p{max-width:550px;margin:0 auto 25px}dialog{max-width:530px;width:calc(100% - 32px);padding:30px;border:1px solid #ceded7;border-radius:20px;color:#173b35;box-shadow:0 20px 100px #09271c30}dialog::backdrop{background:#122d2aaa;backdrop-filter:blur(4px)}dialog h2{font-size:26px}dialog p{color:#547068}dialog .row-actions{margin-top:25px}.button{transition:background .18s,transform .18s,box-shadow .18s}.button:active:not(:disabled){transform:translateY(2px)}.button:hover:not(:disabled){box-shadow:0 5px 15px #173b3912}.screen-enter{animation:screen-in .28s ease-out}details summary{padding:8px 0;min-height:44px}details p{margin-top:12px}.nav-item{font-size:15px}.concept-body{background:#f3f5f7;color:#183b39}.concept-content{max-width:1160px}.concept-nav{margin-bottom:20px}.concept-nav .concept-logo{display:flex;align-items:center;gap:12px}.concept-slide{padding:48px 0;min-height:0;border-color:#d6e1dd}.concept-slide .eyebrow{color:#547b70}.concept-slide h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(40px,5.4vw,64px);line-height:1.15;letter-spacing:-1.5px;max-width:920px}.concept-slide>p{color:#516d65;font-size:19px}.concept-slide h2{font-size:32px}.concept-card{background:#fff;border-color:#dbe5df}.concept-card p,.concept-wide p,.concept-wide li{color:#546e65}.concept-card .num{color:#537d6b}.concept-card h3{font-size:21px}.concept-pill{color:#386252;border-color:#c2d3c8;background:#ecf3ed;font-size:14px}.concept-footer{color:#5b7269}.concept-dark{background:#173d3b;color:white;padding:35px;border-radius:22px;margin:25px 0 0}.concept-dark h2{font-size:28px}.concept-dark p{color:#d0dfd6}.concept-dark .learning-cycle{background:transparent;border-color:#527367;margin-top:24px}.concept-dark .learning-cycle>div{border-color:#527367}.concept-dark .learning-cycle b{color:#d3ff73}.concept-dark .learning-cycle span{color:#e0eade}.concept-nav .button{background:#173d3b}.concept-slide .row-actions{margin-top:25px}.concept-table{width:100%;border-collapse:collapse;font-size:16px}.concept-table td,.concept-table th{padding:16px;border-bottom:1px solid #d6e2db;text-align:left;vertical-align:top}.concept-table th{font-size:14px;color:#557467}.concept-table td:first-child{font-weight:600}.reveal{animation:screen-in .4s ease-out}.presentation-link{display:inline-flex;align-items:center;gap:10px;font-size:15px;color:#4d7161;margin:8px 0}.brand:hover .question{color:#83a936}
@keyframes screen-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes word-in{from{transform:translateY(5px);opacity:.4}to{transform:translateY(0);opacity:1}}@keyframes feedback-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes seal-in{from{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}
@media(min-width:1400px){.hero{padding:34px 36px}.hero h2{font-size:53px}.hero-bottom{margin-top:35px}.course-card{padding:32px}.scenarios{gap:20px}.scenario-symbol{margin-bottom:20px}}
@media(max-width:1150px){.home-grid{grid-template-columns:minmax(0,1.4fr) minmax(240px,1fr)}.hero h2{font-size:40px}.hero{padding:25px}.class-banner{flex-wrap:wrap}.class-banner>div{flex:1}.class-banner .button{margin-left:66px}.course-card{padding:23px}.learning-cycle{grid-template-columns:repeat(5,1fr)}.learning-cycle>div{padding:17px 12px}.learning-cycle span{font-size:14px}.storage-card{flex-direction:column;align-items:flex-start}.stat span{font-size:14px}}
@media(max-width:900px){.sidebar{display:none}.topbar{height:auto;min-height:80px}.mobile-brand{font-size:23px}.mode-switch button{font-size:14px;padding:8px 12px}.class-banner .button{margin-left:auto}.learning-cycle{grid-template-columns:repeat(5,1fr)}#mobile-nav .nav-item{font-size:12px;min-height:58px;padding:6px 8px}#mobile-nav .nav-item span{white-space:nowrap}.app-footer{padding-bottom:24px}}
@media(max-width:620px){.topbar{padding:16px 20px;display:flex;gap:13px}.mobile-brand{font-size:24px;width:100%;margin:0}.mode-switch{width:100%;border-radius:11px}.mode-switch button{font-size:14px;flex:1;min-height:44px}.home-grid{grid-template-columns:1fr}.page-head h1{font-size:34px}.page-head p{font-size:16px}.page-head .eyebrow{font-size:12px}.hero{padding:25px 24px;border-radius:22px 22px 6px 22px}.hero h2{font-size:40px;max-width:400px}.hero .hero-kicker{margin-top:27px}.hero p{font-size:16px}.hero-bottom{flex-wrap:wrap;gap:14px;align-items:center}.hero-bottom small{font-size:14px}.course-card h2{font-size:25px}.course-card h2 br{display:none}.course-card h2 br:after{content:' '}.course-card .course-meta{font-size:14px}.course-card .progress-track{margin-top:14px}.course-card{padding:23px}.class-banner{padding:21px;gap:14px;margin-top:19px}.class-banner>div{min-width:190px}.class-banner .scenario-symbol{display:none}.class-banner .button{margin-left:0;width:100%}.class-banner h3{font-size:20px}.class-banner p:not(.eyebrow){font-size:15px}.section-head{align-items:baseline;flex-wrap:wrap}.section-head .text-link{font-size:14px}.scenario{padding:21px;column-gap:15px}.scenario-symbol{margin:0}.scenario h3{font-size:20px}.scenario p{font-size:15px}.scenario-foot{margin-top:10px}.level-picker{grid-template-columns:1fr;gap:8px}.level-option{display:flex;align-items:center;justify-content:space-between;padding:14px 17px}.level-option.active{padding:13px 16px}.level-option b{font-size:16px;margin:0}.level-option span{font-size:14px}.learning-cycle{grid-template-columns:1fr}.learning-cycle>div{display:flex;align-items:center;gap:16px;border-right:0;border-bottom:1px solid var(--line);padding:14px 18px}.learning-cycle b{margin:0}.learning-cycle span{font-size:15px}.course-row>div:nth-child(2){min-width:150px}.task-title{font-size:23px;line-height:1.4;letter-spacing:-.4px}.lesson-card{padding:22px 19px}.lesson-card .dialogue{padding:17px}.lesson-card .english{font-size:21px}.lesson-actions{flex-wrap:wrap}.lesson-actions .small{max-width:none;font-size:14px}.lesson-actions .button{width:100%}.answers .answer{padding:14px 12px;gap:10px;font-size:16px}.phrase-built{padding:12px}.word{font-size:16px;padding:10px 13px}.speech{max-width:94%;padding:14px 17px}.speech p{font-size:17px}.speech>span{font-size:12px}.role-cards{grid-template-columns:1fr}.result-header h1{font-size:29px}.skill-row .between{flex-direction:column;gap:8px}.stats{gap:8px}.stat{padding:16px 11px}.stat strong{font-size:31px}.stat span{font-size:14px;line-height:1.5;display:block}.stat small{font-size:17px}.teacher-heading select{max-width:100%;width:100%}.select-label{align-items:flex-start;flex-direction:column;width:100%;gap:6px}.teacher-table{min-width:400px}.concept-nav{align-items:flex-start;flex-direction:column;gap:20px}.concept-slide{padding:35px 0}.concept-slide h1{font-size:43px}.concept-dark{padding:24px}.concept-table{min-width:600px}.concept-content{padding:24px 20px}.app-footer{font-size:12px}.app-footer span{max-width:none}.footnote{font-size:14px}.hero .tag{font-size:12px}.learning-cycle>div:last-child{border:0}}
@media(max-width:360px){main{padding-left:14px;padding-right:14px}.topbar{padding:14px}.hero{padding:22px 20px}.hero h2{font-size:36px}.stats{grid-template-columns:1fr}.stat{display:flex;gap:16px;align-items:center}.stat strong{min-width:72px}#mobile-nav{padding-left:2px;padding-right:2px}#mobile-nav .nav-item{font-size:12px;min-width:60px;padding:6px 4px}.result-header h1{font-size:26px}.small-label{letter-spacing:1px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:620px) and (max-height:740px){.topbar{padding-top:12px;padding-bottom:12px;gap:9px}.mobile-brand{font-size:22px}main{padding-top:20px}.page-head{margin-bottom:20px}.page-head h1{font-size:31px}.hero .hero-kicker{margin-top:19px}.hero h2{font-size:34px;margin-bottom:16px}.hero{padding:22px}.hero-bottom{margin-top:21px}.hero .button{padding:13px 17px}.hero-bottom small{font-size:13px}}
@media print{.concept-body{background:white;color:#153b39}.concept-dark{background:#edf2ef;color:#153b39}.concept-dark p,.concept-dark .learning-cycle span{color:#304a40}.concept-dark .learning-cycle b{color:#3e7257}.concept-nav,.row-actions,.presentation-link{display:none}.concept-slide{break-after:page}.concept-content{padding:0}}
