:root{--text:#192438;--muted:#637185;--bg:#eef2f7;--card:#ffffff;--line:#dce4ef;--blue:#3a62dc;--blue-soft:#edf1ff;--purple:#7755cf;--green:#20846c;--orange:#c77628;--pink:#c85c79;--shadow:0 3px 18px #26365607}body{font-size:17px;line-height:1.65;background:radial-gradient(ellipse at top right,#e7eaff,transparent 45%),var(--bg)}.sidebar{width:218px;padding:28px 13px 20px;background:var(--bg);color:var(--text);border-right-color:var(--line)}.brand{font-size:27px;padding:0 13px 27px}.brand small{font-size:11px}.nav-link{font-size:16px;height:48px;padding:0 12px;gap:11px;border-radius:12px;color:var(--muted)}.nav-caption{font-size:11px;letter-spacing:1.5px}.subnav{margin-left:22px}.subnav a{font-size:14px;padding:7px 10px}.side-foot{font-size:12px;padding:14px 10px 0}.side-foot small{font-size:11px}.shell{margin-left:218px}header{height:70px;padding:0 28px;font-size:14px;background:#ffffff80}.prototype{font-size:12px;padding:4px 10px}.avatar{font-size:13px}.icon-button{font-size:27px}main{max-width:1550px;padding:26px 28px 36px}h1{font-size:36px;letter-spacing:-1px;line-height:1.3}h2{font-size:23px;line-height:1.4}h3{font-size:19px;line-height:1.4}p{font-size:17px;line-height:1.75}.card{padding:23px;border-radius:20px;border:1px solid #dfe6f0;box-shadow:var(--shadow)}.card>h2,.card-title h2{font-size:23px}.card>p,.card p{font-size:17px;color:var(--muted)}.card .fine,.fine{font-size:13px;line-height:1.7}.badge{font-size:12px;padding:4px 10px;border-radius:8px;white-space:normal}.eyebrow{font-size:12px;letter-spacing:1.6px;margin-bottom:8px}.btn{font-size:15px;font-weight:600;min-height:44px;padding:10px 18px;border-radius:12px}.text-btn{font-size:14px}.actions{margin-top:16px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.course-section{margin-top:20px}.ws-heading{margin-bottom:20px}.ws-heading p{margin-top:8px;color:var(--muted);font-size:16px}.ws-storage{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:12px 16px;background:#ffffffa6;border:1px solid #dce5ef;border-radius:14px;margin-bottom:20px;font-size:13px}.ws-storage strong{font-size:13px;font-weight:600}.ws-storage small{display:block;font-size:12px;margin-left:14px;color:var(--muted)}.save-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);margin-right:7px}.save-error{color:#b63b3b}.ws-storage .btn{font-size:13px;min-height:37px;padding:6px 13px}.ws-hero{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);gap:24px;padding:28px 30px;border-radius:23px;background:linear-gradient(115deg,#253f8a,#485bba 65%,#7166bf);color:white;margin-bottom:20px;box-shadow:0 9px 28px #384b8c1a}.hero-kicker{font-size:11px;letter-spacing:2px;color:#cdd9ff}.ws-hero h2{font-size:34px;line-height:1.4;margin:10px 0 12px;letter-spacing:-.8px}.ws-hero p{font-size:16px;color:#e0e7ff;max-width:650px;margin-bottom:20px}.ws-hero .btn{background:#fff;color:#354f9e}.hero-summary{align-self:center;border:1px solid #ffffff27;background:#ffffff12;border-radius:18px;padding:23px;display:grid;gap:6px}.hero-summary>span{font-size:14px;color:#e3eaff}.hero-summary strong{font-size:29px;line-height:1.4}.hero-summary small{font-size:13px;color:#ced9ff}.hero-rule{height:1px;background:#ffffff30;margin:10px 0}.ws-launch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.ws-card{display:grid;grid-template-columns:45px minmax(0,1fr);gap:14px;border-radius:20px;border:1px solid #d5deef;padding:23px 21px;background:#fff}.ws-card h2{font-size:23px;line-height:1.45;margin:5px 0 8px}.ws-card p{font-size:15px;color:#526580;line-height:1.7}.domain-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#fff;color:#4364ba;font-size:24px;font-weight:600;box-shadow:0 2px 8px #00000008}.domain-label{font-size:10px;letter-spacing:1.7px;font-weight:700;color:#536db0}.domain-english{background:linear-gradient(140deg,#e6edff,#f1f5ff)}.domain-reading{background:linear-gradient(140deg,#eee6f8,#f8f1ff);border-color:#e0d5ee}.domain-reading .domain-icon,.domain-reading .domain-label,.domain-reading .card-cta{color:#8153a6}.domain-body{background:linear-gradient(140deg,#dff0e9,#eff8f3);border-color:#cde4da}.domain-body .domain-icon,.domain-body .domain-label,.domain-body .card-cta{color:#2d8168}.card-cta{grid-column:2;display:flex;justify-content:space-between;font-size:14px;color:#3b5fbb;margin-top:4px}.ws-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.ws-two>*{min-width:0}.section-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:16px}.section-head h2{font-size:22px}.support-list a{display:flex;gap:14px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line)}.support-list a:last-child{border:0;padding-bottom:0}.support-list strong{font-size:17px}.support-list p{font-size:14px;margin-top:3px}.support-list b{margin-left:auto;color:#8a98b0}.support-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;font-size:24px;flex:none}.support-icon.orange{background:#fff0db;color:#b66a21}.support-icon.purple{background:#ece5fb;color:#7a50bc}.support-icon.green{background:#e0f2e8;color:#2c8765}.support-icon.blue{background:#e7edff;color:#3a62dc}.fact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:22px 0}.fact-grid>div{background:var(--bg);border-radius:13px;padding:15px;text-align:center}.fact-grid strong{display:block;font-size:30px;line-height:1.3;color:#3e5ba2}.fact-grid span{font-size:12px;display:block;margin-top:8px;color:var(--muted)}.ws-tabs{margin:20px 0}.ws-tabs a{font-size:15px;padding:9px 18px}.rank-board{background:linear-gradient(130deg,#f3f5fa,#e5eafa);border:1px solid #d0daed;border-radius:20px;padding:24px}.rank-current{display:flex;gap:20px;align-items:center}.rank-shield{width:76px;height:86px;clip-path:polygon(50% 0,95% 20%,88% 72%,50% 100%,12% 72%,5% 20%);background:linear-gradient(140deg,#ecf3ff,#95a8ca 55%,#d4dded);display:grid;place-items:center;font-size:40px;color:#526789;flex:none}.rank-current span{font-size:12px;color:#62728f}.rank-current h2{font-size:30px;margin:4px 0}.rank-current p{font-size:14px;color:#64738b}.rank-ladder{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin:22px 0 14px}.rank-ladder>div{border-radius:12px;border:1px solid #d2dbe9;background:#ffffff7a;text-align:center;padding:13px 5px;display:flex;flex-direction:column;align-items:center}.rank-ladder>div.current{border:2px solid #6680b1;background:#fff;padding:12px 4px;box-shadow:0 3px 12px #46628a15}.rank-ladder span{display:grid;place-items:center;width:26px;height:26px;background:#dce4f2;border-radius:50%;font-size:12px;margin-bottom:8px;color:#50698c}.rank-ladder strong{font-size:14px}.rank-ladder small{font-size:10px;color:#6c7a91;margin-top:4px}.rank-board details{font-size:13px}.rank-board details p{font-size:14px;margin-top:10px}.course-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:20px}.course-days button{padding:13px 11px;border:1px solid var(--line);border-radius:13px;background:var(--card);text-align:left;color:var(--text);min-height:100px}.course-days button.active{background:#eaf0ff;border-color:#7996e1;box-shadow:inset 0 3px 0 #597ad0}.course-days span,.course-days small{display:block;font-size:11px;color:var(--muted)}.course-days strong{display:block;font-size:15px;line-height:1.4;margin:5px 0}.course-workspace{display:grid;grid-template-columns:255px minmax(0,1fr);gap:20px;align-items:start}.route-card{border:1px solid var(--line);border-radius:18px;background:#f8faff;padding:20px;position:sticky;top:20px}.route-card h2{font-size:21px}.route-card ol{padding:0;margin:18px 0;list-style:none}.route-card li{margin:6px 0}.route-card button{width:100%;display:flex;gap:10px;align-items:center;padding:10px 6px;border:0;border-radius:11px;background:transparent;text-align:left}.route-card button.active{background:#e7edfb}.route-card button strong{font-size:15px;display:block}.route-card button small{font-size:11px;display:block;color:var(--muted);margin-top:1px}.step-circle{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;border:1px solid #cad5e8;font-size:13px;flex:none;background:#fff;color:#71829b}.step-circle.done{background:#e0f0e8;color:#2f8766;border-color:#b8dbc9}.time-box{background:#eaf0fb;border-radius:13px;padding:15px;font-size:12px}.time-box strong{display:block;font-size:21px;color:#4563a2;margin:5px 0}.time-box small{display:block;font-size:11px;line-height:1.7;color:#718096}.active-lesson h2{font-size:29px;margin-bottom:15px}.auto-label{font-size:12px;color:#39856c;display:inline-block;margin-top:8px}.ws-field{display:flex;flex-direction:column;gap:7px;font-size:14px;color:var(--text);min-width:0;margin:15px 0}.ws-field input,.ws-field select,.ws-field textarea{width:100%;max-width:100%;min-width:0;border:1px solid #cdd8e9;background:#f8faff;border-radius:11px;padding:12px;color:var(--text);font-size:17px;min-height:48px}.ws-field textarea{margin:0;min-height:128px;line-height:1.8;resize:vertical}.ws-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 17px}.inline-feedback{font-size:14px;line-height:1.7;background:#eff4fb;color:#47617e;border-left:3px solid #91add7;padding:12px 15px;border-radius:0 10px 10px 0;margin-top:12px}.phrase-stack{font-size:24px;line-height:1.85;padding:20px 23px;background:#f0f4fe;border-radius:13px;color:#314774;margin:20px 0}.phrase-stack>div+div{border-top:1px solid #dce4f3}.exercise-question{margin:22px 0;border:1px solid #d7e1ef;border-radius:15px;padding:18px;min-width:0}.exercise-question h3,.exercise-question legend{font-size:19px;margin-bottom:10px}.answer-option{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;background:var(--bg);margin-top:9px;font-size:18px;cursor:pointer}.answer-option:has(input:checked){background:#e8efff;outline:1px solid #91ace7}.answer-option input{width:20px;height:20px;flex:none;accent-color:#5274d0}.task-toggle{display:block;padding:15px 20px;background:#edf2fc;border:1px solid #c5d4ed;border-radius:13px;font-size:17px;color:#476395;margin-top:22px;width:100%;text-align:left}.task-toggle.checked{background:#e6f3eb;border-color:#b1d6c0;color:#327a57}.step-title{font-size:22px;margin:4px 0 8px}.step-state{margin:0 0 16px;padding:10px 12px;border-radius:12px;background:#edf1ff;color:#2d4cb5;font-size:15px}.lesson-nav{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.lesson-nav [data-course-continuation]:empty{display:none}.evidence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.evidence-grid>div{padding:17px;background:var(--bg);border-radius:13px}.evidence-grid span{display:block;font-size:13px;color:var(--muted)}.evidence-grid strong{display:block;font-size:23px;margin-top:6px}.score-panel{padding:17px;background:#eaf2ed;border-radius:12px;color:#397154;font-size:17px}.word-card{border-bottom:1px solid var(--line);padding:15px 0;font-size:20px}.word-card p{margin-top:10px}.error-row{border-bottom:1px solid var(--line);padding:18px 0}.error-row p{font-size:15px}.reader-intro{display:grid;grid-template-columns:1.8fr 1fr;gap:24px;padding:23px;border-radius:20px;background:#eee6f6;border:1px solid #ddd0ec}.reader-intro h2{font-size:25px;margin:10px 0}.reader-intro p{font-size:15px;color:#756383}.reader-intro details{font-size:14px;align-self:center;color:#705580}.reader-intro details p{margin-top:10px;font-size:14px}.goal-display{display:flex;gap:20px;align-items:center;margin:20px 0}.goal-display strong{font-size:54px;color:#4d846e}.goal-display span{font-size:14px;color:var(--muted)}.assessment-row{font-size:16px;padding:12px 0}.assessment-row p{font-size:14px;line-height:1.7}.soft-note{font-size:14px;line-height:1.8}.sleep-record{background:linear-gradient(145deg,#f2edfb,#fff)}.sleep-feedback{background:#efeaf8;border-radius:15px;padding:22px;color:#63537c;font-size:19px;line-height:1.9}.event-row{display:flex;flex-wrap:wrap;gap:8px 18px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}.event-row span{color:var(--muted)}.event-row strong{font-weight:500}.legacy-records{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;max-height:55vh;overflow:auto}.nutrition-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:20px}.food-row{display:grid;grid-template-columns:minmax(0,1fr) 100px 40px;gap:9px;margin:12px 0;align-items:end}.food-row select,.food-row input{font-size:15px;min-height:44px;max-width:100%;min-width:0;border:1px solid #ccd8e9;border-radius:9px;padding:8px;background:var(--card);color:var(--text)}.food-row button{min-height:44px;border:0;border-radius:9px;color:#a15d50;background:#f8e9e4}.food-estimate{padding:24px;border-radius:18px;background:linear-gradient(140deg,#f9ebd8,#fff4e4);color:#95602b}.food-estimate .estimate-number{font-size:34px;font-weight:650;display:block;line-height:1.4;margin:7px 0}.food-estimate p{color:#967045;font-size:15px}.recipe-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.recipe-card{padding:21px;border:1px solid #e6dfd0;background:#fffdf8;border-radius:17px}.recipe-card h3{font-size:21px;margin:10px 0}.recipe-card p,.recipe-card li{font-size:14px;line-height:1.8;color:#786f61}.recipe-card ul,.recipe-card ol{padding-left:20px}.recipe-card details{margin-top:13px;font-size:14px;border-top:1px solid #e8e0d1;padding-top:12px}.meal-days{display:flex;flex-wrap:wrap;gap:8px;margin:17px 0}.meal-days button{border:1px solid #dfd5c1;border-radius:10px;padding:9px 17px;background:#fffaf0;font-size:14px}.meal-days button.active{background:#b77a35;border-color:#b77a35;color:#fff}.nutrition-feedback-list{padding-left:20px;font-size:15px;line-height:1.9}.shopping-list{display:flex;flex-wrap:wrap;gap:8px}.shopping-list span{padding:7px 12px;border-radius:9px;background:#f3ede2;font-size:13px}dialog{width:min(600px,94vw);padding:30px}dialog p{font-size:16px}dialog h2{font-size:25px}footer{font-size:12px;padding:0 28px 26px}.model-label{font-size:13px}.dark{--bg:#171d29;--card:#232c3c;--text:#edf2fb;--muted:#a2afc5;--line:#3a465a;--blue-soft:#293a5d;--sidebar:#1a2231;--shadow:none;background:#171d29}.dark .sidebar,.dark header{background:var(--bg);color:var(--text)}.dark .nav-link.active{background:var(--blue);color:#fff}.dark .subnav a.active{background:var(--blue-soft);color:var(--blue)}.dark .ws-storage,.dark .rank-board,.dark .route-card,.dark .reader-intro,.dark .sleep-record{background:#283348;border-color:#3d4d68}.dark .ws-card{background:#293a52;border-color:#3e526f}.dark .domain-reading{background:#382e4c}.dark .domain-body{background:#233e38}.dark .ws-card p,.dark .ws-card h2,.dark .domain-label,.dark .card-cta{color:#d6e0f5}.dark .rank-ladder>div,.dark .rank-ladder>div.current,.dark .course-days button.active,.dark .route-card button.active,.dark .time-box,.dark .ws-field input,.dark .ws-field textarea,.dark .ws-field select,.dark .phrase-stack,.dark .inline-feedback,.dark .answer-option:has(input:checked),.dark .score-panel,.dark .sleep-feedback{background:#2b3c57;color:#d9e5fb}.dark .rank-current p,.dark .rank-current span,.dark .rank-ladder small,.dark .reader-intro p{color:#becbe0}.dark .food-estimate,.dark .recipe-card,.dark .meal-days button,.dark .shopping-list span{background:#3a342b;color:#ead7b6;border-color:#5c503e}.dark .recipe-card p,.dark .recipe-card li,.dark .food-estimate p{color:#ccbfa7}.dark .task-toggle{background:#30405c;color:#d8e4fb}.dark .task-toggle.checked{background:#28483e}.dark .reader-intro details{color:#d4c6ed}.dark .fact-grid strong{color:#adc1f2}.dark .step-circle{background:#35455e;color:#dce8fe}.dark .step-circle.done{background:#31574a}.dark .support-list b{color:#b7c8df}
@media(min-width:1600px){main{padding-top:30px}.ws-hero{padding:30px 34px}.ws-hero h2{font-size:38px}.ws-card{padding:25px}.card{padding:25px}}
@media(max-width:1200px){.ws-launch-grid{gap:13px}.ws-card{grid-template-columns:1fr;padding:20px}.card-cta{grid-column:1}.domain-icon{width:38px;height:38px}.ws-card h2{font-size:21px}.course-days{grid-template-columns:repeat(4,minmax(0,1fr))}.rank-ladder strong{font-size:12px}.rank-ladder small{font-size:9px}.recipe-grid{grid-template-columns:1fr}.recipe-card{display:block}.ws-hero h2{font-size:30px}.course-workspace{grid-template-columns:230px minmax(0,1fr);}}
@media(max-width:950px){.sidebar{width:180px}.shell{margin-left:180px}.nav-link{font-size:14px}.brand{font-size:24px}.subnav a{font-size:13px}main{padding:22px}.ws-two,.nutrition-grid{grid-template-columns:1fr}.ws-hero{grid-template-columns:1fr}.hero-summary{display:none}.rank-ladder{grid-template-columns:repeat(4,minmax(0,1fr))}.course-workspace{grid-template-columns:1fr}.route-card{position:static}.route-card ol{display:flex;flex-wrap:wrap;gap:5px}.route-card li{flex:1 1 130px}.route-card .time-box{display:none}.route-card .fine{margin-top:8px}.reader-intro{grid-template-columns:1fr}.ws-launch-grid{grid-template-columns:1fr}.ws-card{grid-template-columns:45px minmax(0,1fr)}.card-cta{grid-column:2}.ws-card h2{font-size:23px}.ws-card p{font-size:16px}}
@media(max-width:620px){body{font-size:16px}.sidebar{display:none}.shell{margin-left:0}header{height:60px;padding:0 17px;font-size:12px}main{padding:20px 15px 28px}.ws-heading h1{font-size:28px}.ws-heading p{font-size:14px}.ws-storage{padding:12px;align-items:flex-start}.ws-storage small{font-size:10px;margin-left:0}.ws-storage strong{font-size:11px}.ws-storage .btn{font-size:11px;padding:5px 8px;white-space:nowrap}.ws-hero{padding:23px;border-radius:19px}.ws-hero h2{font-size:29px}.ws-hero p{font-size:15px}.ws-card{padding:20px 18px;gap:12px}.ws-card h2{font-size:22px}.ws-card p{font-size:15px}.card{padding:20px}.card>h2,.section-head h2{font-size:21px}.card>p,.card p{font-size:16px}.card .fine,.fine{font-size:12px}.section-head{align-items:flex-start;flex-wrap:wrap}.rank-board{padding:19px}.rank-current{gap:12px}.rank-current h2{font-size:27px}.rank-current p{font-size:12px}.rank-shield{width:58px;height:68px}.rank-ladder{grid-template-columns:repeat(3,minmax(0,1fr))}.rank-ladder strong{font-size:13px}.rank-ladder small{font-size:10px}.rank-board details p{font-size:13px}.course-days{grid-template-columns:repeat(3,minmax(0,1fr))}.course-days button{padding:11px 9px}.course-days strong{font-size:14px}.course-days span,.course-days small{font-size:10px}.ws-fields{grid-template-columns:1fr}.ws-field{margin:10px 0}.ws-field input,.ws-field select,.ws-field textarea{font-size:16px}.ws-tabs{gap:6px}.ws-tabs a{font-size:13px;padding:8px 13px}.active-lesson h2{font-size:26px}.phrase-stack{font-size:21px;padding:15px}.exercise-question{padding:14px}.exercise-question legend,.exercise-question h3{font-size:17px}.answer-option{font-size:17px;padding:11px}.route-card{padding:17px}.route-card li{flex:1 1 125px}.route-card button{padding:8px 4px}.route-card button strong{font-size:14px}.evidence-grid{gap:8px}.evidence-grid>div{padding:13px 10px}.evidence-grid strong{font-size:18px}.evidence-grid span{font-size:11px}.fact-grid>div{padding:13px 8px}.fact-grid strong{font-size:27px}.fact-grid span{font-size:11px}.reader-intro{padding:20px}.reader-intro h2{font-size:22px}.sleep-feedback{padding:18px;font-size:17px}.food-row{grid-template-columns:minmax(0,1fr) 80px 36px;gap:6px}.food-row select,.food-row input{font-size:16px}.btn{font-size:14px}.mobile-nav{height:78px;padding:8px 4px max(13px,env(safe-area-inset-bottom))}.mobile-nav a{font-size:10px!important;width:16.66%!important}.mobile-nav a span{font-size:21px}.mobile-nav{background:#f8faffed}.dark .mobile-nav{background:#1c2535f5}footer{font-size:11px;padding:0 17px 100px}.section-title h2{font-size:21px}.section-title span{font-size:11px}.model-stage{height:400px}.badge{font-size:11px}}
.panel{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:23px;margin-top:20px}.nutrition-grid>.panel{margin-top:0}.panel h3{margin:18px 0 10px}.panel h2{margin-bottom:13px}.panel .muted{font-size:14px;color:var(--muted);line-height:1.8;margin:14px 0}.panel details{margin-top:18px}.panel summary{font-size:15px}.panel [data-new-draft],.panel [data-nutrition-add]{border:1px solid #d9c49f;background:#fbf1df;color:#926127;border-radius:11px;padding:10px 15px;font-size:14px;min-height:44px;margin-top:10px}.food-row label{display:grid;min-width:0;gap:6px;font-size:12px}.food-row button{font-size:11px;padding:3px}.recipe-card .estimate-number{font-size:21px;font-weight:600;color:#a16d34}.recipe-card h4{font-size:15px;margin:17px 0 6px}.panel .shopping-list{padding-left:20px}.panel .shopping-list li{font-size:13px;margin-right:20px}.section-heading{margin-bottom:17px}.section-heading h2{font-size:25px}.section-heading p{color:var(--muted)}.dark .panel [data-new-draft],.dark .panel [data-nutrition-add]{background:#51402c;color:#edd7b4;border-color:#6d573b}@media(max-width:620px){.panel{padding:19px}.food-row button{font-size:10px}.panel summary{font-size:14px}}
/* Keep shared page typography from breaking independent reader/body modules. */
.ts-reader-head{height:auto;padding:0;background:transparent;border:0;color:inherit}.ts-reader-foot{padding:16px 0;font-size:14px;color:inherit}.ts-reader-page p{font-size:inherit!important;line-height:inherit!important;color:inherit}.ts-reader-page h2,.ts-reader-page h3{color:inherit}.ts-reader-head h3{font-size:25px}.tbv{max-width:none;display:grid;grid-template-columns:320px minmax(0,1fr);column-gap:28px;align-content:center;padding:22px}.tbv>*:not(.tbv-stage){grid-column:2}.tbv-stage{grid-column:1;grid-row:1 / span 8;width:100%;height:430px;margin:0}.tbv-header{height:auto;padding:0;background:transparent;border:0;align-items:flex-start;margin-bottom:12px}.tbv-eyebrow{font-size:11px!important}.tbv h3{font-size:25px}.tbv-control,.tbv-hint,.tbv-disclaimer,.tbv-note{font-size:14px!important}.tbv-metrics strong{font-size:27px}.tbv-metrics span{font-size:13px}.tbv-date-ends{font-size:12px}.tbv-pill{font-size:12px}.dark .tbv{background:#233c34;border-color:#466254;--tbv-ink:#d7ebdf;--tbv-muted:#acc8b7}.dark .tbv-header{background:transparent}.dark .tbv-pill{background:#385647;color:#d8ebdf}.dark .tbv-disclaimer,.dark .tbv-note,.dark .tbv-hint,.dark .tbv-control{color:#b7d1c1}.dark .tbv-stage{background:#f0f5eb}@media(max-width:1050px){.tbv{grid-template-columns:260px minmax(0,1fr);gap:18px}.tbv-stage{height:400px}.tbv-metrics{grid-template-columns:1fr 1fr;gap:15px}.tbv-header{flex-wrap:wrap}.tbv h3{font-size:23px}}@media(max-width:750px){.tbv{display:block;padding:18px}.tbv-stage{max-width:360px;height:400px;margin:15px auto}.tbv-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.tbv-metrics strong{font-size:22px}.tbv-metrics span{font-size:11px}.tbv-control,.tbv-hint,.tbv-disclaimer,.tbv-note{font-size:12px!important}.ts-reader-head h3{font-size:22px}.ts-reader-foot{padding:16px 0}}
.reading-guide{display:grid;grid-template-columns:minmax(230px,1fr) minmax(0,1.5fr);gap:24px;background:linear-gradient(110deg,#f8f4fc,#fff)}.reading-guide h2{font-size:24px}.guide-current{padding-left:24px;border-left:1px solid #e3d8ee}.guide-current p{font-size:16px;margin-top:10px}.guide-current .fine{font-size:12px}.guide-current h3{font-size:22px}.dark .reading-guide{background:#302d40}.dark .guide-current{border-color:#51465e}@media(max-width:850px){.reading-guide{grid-template-columns:1fr}.guide-current{padding:20px 0 0;border:0;border-top:1px solid #e3d8ee}}
/* Reading is now a primary workspace, not a small card below the dashboard. */
body[data-domain=reading] main{max-width:1800px;padding:20px 24px 30px}body[data-domain=reading] .ws-heading{margin-bottom:14px}body[data-domain=reading] .ws-heading h1{font-size:30px}body[data-domain=reading] .ws-heading .eyebrow{margin-bottom:3px}body[data-domain=reading] .ws-heading p{font-size:14px;margin-top:5px}.reading-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:14px}.reading-toolbar strong{font-size:13px;color:var(--green)}.reading-toolbar small{display:block;font-size:12px;color:var(--muted)}.reading-toolbar .actions{margin:0}.reading-toolbar .btn{font-size:14px}.reading-secondary{margin-top:20px;border:1px solid var(--line);border-radius:17px;background:var(--card);overflow:hidden}.reading-secondary>summary{padding:17px 21px;font-size:16px;font-weight:600}.reading-secondary>summary span{font-size:12px;font-weight:400;color:var(--muted);margin-left:12px}.reading-secondary-body{padding:0 20px 20px}.ts-reader{padding:20px 23px}.ts-reader-info{margin:7px 0 0;font-size:12px;color:#647263}.ts-reader-info summary{font-size:12px}.ts-reader-info .ts-reader-notice{margin:8px 0 0}.ts-reader-status{min-height:0;margin:7px 0;font-size:12px}.ts-reader-controls{padding:9px 0}.ts-reader-page{height:calc(100vh - 290px);height:calc(100dvh - 290px);min-height:560px;max-height:none;padding:32px clamp(18px,4vw,64px);--reader-text-width:34em}.ts-reader-page>p,.ts-reader-page>h2,.ts-reader-page>h3{max-width:var(--reader-text-width);margin-left:auto;margin-right:auto}.ts-reader-wide .ts-reader-page{--reader-text-width:46em}.ts-reader-page .ts-reader-empty{max-width:38em;margin:auto}.ts-reader-foot{padding:12px 0 4px}.ts-reader-help{font-size:11px;margin-top:6px}.ts-reader-controls button{min-height:40px;font-size:14px}.ts-reader-controls select{font-size:15px}.reading-focus .sidebar,.reading-focus .shell>header,.reading-focus .shell>footer,.reading-focus #mobile-nav{display:none!important}.reading-focus .shell{margin-left:0}.reading-focus main{max-width:none!important;padding:12px 18px 20px!important}.reading-focus .ws-heading{display:none}.reading-focus .reading-toolbar{margin-bottom:10px}.reading-focus .ts-reader{border-radius:15px;padding:14px 22px}.reading-focus .ts-reader-info,.reading-focus .ts-reader-help{display:none}.reading-focus .ts-reader-page{height:calc(100vh - 205px);height:calc(100dvh - 205px);min-height:380px}.reading-focus .reading-secondary{display:none}.dark .ts-reader-info,.dark .ts-reader-status{color:#c1cbbb}.reading-secondary[open]>summary{border-bottom:1px solid var(--line);margin-bottom:20px}@media(max-width:850px){body[data-domain=reading] main{padding:18px}.ts-reader-controls>div{justify-content:flex-start}.ts-reader-page{min-height:480px;padding:26px 22px}}@media(max-width:620px){body[data-domain=reading] main{padding:17px 10px 25px}body[data-domain=reading] .ws-heading h1{font-size:25px}body[data-domain=reading] .ws-heading p{font-size:12px}.reading-toolbar{gap:9px;align-items:flex-start}.reading-toolbar strong{font-size:11px}.reading-toolbar small{font-size:10px;max-width:135px}.reading-toolbar .btn{font-size:12px;padding:8px 11px}.reading-toolbar .actions{gap:5px}.ts-reader{padding:14px 12px}.ts-reader-head h3{font-size:21px}.ts-reader-head{gap:8px}.ts-reader-head small{font-size:10px}.ts-reader-import{font-size:13px;padding:8px 12px}.ts-reader-controls>div{gap:5px}.ts-reader-controls button{font-size:12px;padding:7px 10px;min-height:38px}.ts-reader-controls select{max-width:75vw;font-size:14px}.ts-reader-page{height:70vh;height:70dvh;min-height:420px;padding:22px 16px}.ts-reader-info summary{font-size:11px}.reading-secondary>summary{font-size:14px;padding:15px}.reading-secondary>summary span{display:block;margin-left:18px;margin-top:4px;font-size:11px}.reading-secondary-body{padding:0 12px 12px}.reading-focus main{padding:8px 8px 12px!important}.reading-focus .ts-reader{padding:10px}.reading-focus .ts-reader-page{height:calc(100vh - 245px);height:calc(100dvh - 245px);min-height:340px}.reading-focus .ts-reader-head small{display:none}.reading-focus .reading-toolbar small{display:none}.reading-focus .reading-toolbar{align-items:center}.reading-focus .reading-toolbar strong{font-size:10px}.reading-focus .ts-reader-controls{padding:7px 0}}
.bp-plan{margin-bottom:16px}.bp-ex{padding:16px 0;border-top:1px solid var(--line)}.bp-ex h3{font-size:18px;margin:0 0 6px}.bp-gear{font-size:17px;line-height:1.75;margin:16px 0 22px;color:var(--text)}.bp-log{display:flex;flex-wrap:nowrap;align-items:flex-end;gap:8px;margin:12px 0 8px;max-width:100%}.bp-sets{display:contents}.bp-weight,.bp-sets label{display:grid;gap:4px;flex:0 1 88px;width:88px;min-width:64px;font-size:12px;color:var(--muted)}.bp-weight input,.bp-sets input{width:100%;min-width:0;min-height:40px;border:1px solid #cdd8e9;border-radius:10px;padding:8px;background:#f8faff;color:var(--text);font-size:16px}.bp-banner{background:#fff6e8;border-radius:12px;padding:12px 14px;margin:12px 0;color:#8a5a16}.dark .bp-banner{background:#3d3426;color:#f0d7b0}.dark .bp-weight input,.dark .bp-sets input{background:#2b3c57;color:#d9e5fb;border-color:#3d4d68}@media(max-width:620px){.bp-gear{font-size:16px}.bp-log{flex-wrap:wrap}.bp-weight,.bp-sets label{flex:0 1 72px;width:72px;min-width:64px}}
.reading-book-switch{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:10px 15px;border:1px solid #dcd1e8;background:#f4edf9;border-radius:12px;margin-bottom:14px;font-size:14px}.reading-book-switch[hidden]{display:none}.reading-book-switch small{font-size:12px;color:var(--muted)}.reading-book-switch .btn{font-size:13px;padding:7px 12px;min-height:36px;margin-left:auto}.dark .reading-book-switch{background:#382e47;border-color:#544763}@media(max-width:620px){.reading-book-switch{font-size:12px;padding:9px 11px}.reading-book-switch small{font-size:10px}.reading-book-switch .btn{font-size:11px;padding:6px 9px}.reading-focus .reading-book-switch small{display:none}}
.adjust-board ul{margin:8px 0 0;padding-left:1.2em}.adjust-board li{margin:4px 0}.listen-line,.tutor-line{margin:10px 0;padding:10px 12px;border:1px solid var(--line);border-radius:12px}.tutor-thread{max-height:320px;overflow:auto}.tutor-line span{display:block;font-size:12px;color:var(--muted)}.tutor-panel .actions{flex-wrap:wrap}.phonics-box,.shadow-box,.pending-lesson{margin-top:12px}.phonics-box p,.shadow-line{margin:8px 0}.shadow-line{padding:10px 12px;border:1px solid var(--line);border-radius:12px}.shadow-box audio{width:100%;margin-top:8px}.pending-lesson{border:1px dashed var(--line)}
.course-days button{height:132px;min-height:132px;overflow:hidden}
.course-days strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:1.4;max-height:2.8em}
.course-days button.is-pending,.course-days button.is-pending.active{background:#e7ebf2;border-color:#d5dbe6;box-shadow:none;color:#7d8796}
.course-days button.is-pending strong,.course-days button.is-pending span,.course-days button.is-pending small{color:#7d8796}
.dark .course-days button.is-pending,.dark .course-days button.is-pending.active{background:#2c3342;border-color:#3d4658;box-shadow:none;color:#9aa3b2}
.dark .course-days button.is-pending strong,.dark .course-days button.is-pending span,.dark .course-days button.is-pending small{color:#9aa3b2}
.route-card .actions{min-width:0;max-width:100%}
.route-card .short-day{width:100%;max-width:100%;white-space:normal;height:auto;min-height:40px;line-height:1.35;text-align:center;justify-content:center;overflow-wrap:anywhere;box-sizing:border-box;border:1px solid var(--line);background:#fff;padding:8px 10px}
.dark .route-card .short-day{background:#243044;border-color:#3d4658}
.bp-demo{display:grid;gap:8px;margin:10px 0 12px;max-width:420px}.bp-demo-media{width:min(100%,360px);height:auto;aspect-ratio:360/200;object-fit:contain;background:#f7fbf8;border:1px solid var(--line);border-radius:14px;display:block}.bp-demo-meta{display:flex;gap:8px;align-items:center;margin:0;font-size:12px;color:var(--muted)}.bp-demo-kind{display:inline-flex;align-items:center;border-radius:999px;padding:2px 8px;background:#e7f3ee;color:#1f6b56;font-weight:600}.bp-demo-tips{margin:0;color:var(--text);font-size:15px;line-height:1.65}.bp-demo-fallback{margin:0;padding:10px 12px;border-radius:12px;background:#fff6e8;color:#8a5a16;font-size:14px;line-height:1.6}.bp-demo-fallback[hidden]{display:none}.bp-demo[data-bp-demo-state="fallback"] .bp-demo-media{display:none}.dark .bp-demo-media{background:#1e2c28;border-color:#3d4d68}.dark .bp-demo-kind{background:#23463c;color:#d5f3e6}.dark .bp-demo-fallback{background:#3d3426;color:#f0d7b0}.dark .bp-demo-tips{color:var(--text)}

.read-board{margin-bottom:16px}.read-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.read-cell{border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:var(--bg)}.read-cell h3{margin:0 0 8px;font-size:16px}.read-cell p{margin:4px 0}.read-bar{height:8px;border-radius:99px;background:var(--line);overflow:hidden;margin:8px 0}.read-bar>span{display:block;height:100%;background:var(--purple)}.read-board .btn:disabled,.read-daily .btn:disabled{opacity:.45;cursor:not-allowed}.read-board [hidden],.read-daily [hidden]{display:none!important}.reading-focus .read-board{display:none}@media(max-width:620px){.read-grid{grid-template-columns:1fr}}.read-daily{margin:0 0 16px}.read-daily h3{margin:14px 0 6px}.read-daily blockquote{margin:8px 0;padding:10px 12px;border-left:3px solid var(--purple);background:var(--bg);border-radius:0 12px 12px 0}.read-daily blockquote p{margin:0}.read-daily .read-guide-nav{margin-top:8px}.read-daily a.btn{cursor:pointer}
.today-card{padding:16px 18px}.today-rows{display:grid}.today-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line);color:inherit}.today-row:first-child{border-top:0;padding-top:2px}.today-row strong{display:block;font-size:16px}.today-row p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.today-row .btn{min-height:36px;pointer-events:none}.today-more{display:flex;flex-wrap:wrap;gap:12px 18px;margin-top:14px}.today-more .text-btn{font-size:14px}body[data-domain=home] .ws-heading{margin-bottom:10px}body[data-domain=home] .ws-heading p{margin-top:4px;font-size:14px}.cefr-ladder{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:14px 0 0;padding:0}.cefr-ladder li{border:1px solid var(--line);border-radius:999px;padding:6px 12px;background:var(--bg);color:var(--text);font-size:13px}.read-meter{display:flex;align-items:center;gap:8px}.read-meter .read-bar{flex:1;margin:8px 0}.read-meter [data-reading-percent]{min-width:3em;font-size:13px;color:var(--muted)}.side-account{display:flex;align-items:center;gap:8px;margin-bottom:12px;color:var(--text);font-size:13px}.side-account .avatar{width:26px;height:26px;border-width:0;font-size:11px}footer{flex-wrap:wrap;align-items:center;row-gap:6px}.demo-foot{flex:1 0 100%;width:100%;margin:4px 0 0;font-size:11px;line-height:1.6;color:var(--muted)}#private-file-sync-host:empty{display:none}.demo-foot pre{white-space:pre-wrap;font-size:10px}.demo-foot .text-btn{font-size:11px}[data-account-card] form{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin-top:8px}[data-account-card] .ws-field{flex:1 1 220px;margin:0}[data-demo-sync]:disabled{opacity:.55;cursor:not-allowed}.course-days .course-day-card{display:flex;flex-direction:column;min-width:0;height:156px;min-height:156px;overflow:hidden;border:1px solid var(--line);border-radius:13px;background:var(--card);text-align:left}.course-days .course-day-main{height:auto;min-height:0;flex:1;width:100%;border:0;background:transparent;box-shadow:none;overflow:hidden;padding:13px 11px 0;text-align:left;color:inherit}.course-days .course-title-toggle{height:auto;min-height:28px;width:100%;border:0;background:transparent;color:var(--muted);font-size:11px;line-height:1.2;text-align:left;padding:0 11px 8px;cursor:pointer}.course-days .course-day-card.is-title-open{height:auto;overflow:visible}.course-days .course-day-card.is-title-open strong{display:block;-webkit-line-clamp:unset;line-clamp:unset;max-height:none;overflow:visible}.course-days .course-day-card:has(.course-day-main.active){background:#eaf0ff;border-color:#7996e1;box-shadow:inset 0 3px 0 #597ad0}.course-days .course-day-main.active{background:transparent;border-color:transparent;box-shadow:none}.course-days .course-day-card.is-pending,.course-days .course-day-card:has(.is-pending){background:#e7ebf2;border-color:#d5dbe6;box-shadow:none;color:#7d8796}.course-days .course-day-main.is-pending{background:transparent;box-shadow:none;color:#7d8796}.active-lesson .lesson-title,.pending-lesson .lesson-title{margin:0 0 15px}.active-lesson .lesson-title-toggle,.pending-lesson .lesson-title-toggle{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;max-height:2.8em;width:100%;text-align:left;border:0;background:transparent;padding:0;font:inherit;font-size:29px;line-height:1.35;color:inherit;cursor:pointer}.pending-lesson .lesson-title-toggle{font-size:23px}.active-lesson .lesson-title.is-title-open .lesson-title-toggle,.pending-lesson .lesson-title.is-title-open .lesson-title-toggle{-webkit-line-clamp:unset;line-clamp:unset;max-height:none;display:block}.active-lesson .lesson-title-hint,.pending-lesson .lesson-title-hint{display:inline-block;margin-top:4px;border:0;background:transparent;color:var(--muted);font-size:12px;padding:0;cursor:pointer}.backup-copy-box{width:100%;min-height:88px;margin-top:10px;font-size:12px;line-height:1.5}#backup-preview{margin-top:12px}#backup-preview ul{margin:8px 0 0;padding-left:1.2em}.side-foot .side-backup{display:block;margin:8px 0;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.dark .course-days .course-day-card:has(.course-day-main.active){background:#2b3c57}.dark .course-days .course-day-card.is-pending,.dark .course-days .course-day-card:has(.is-pending){background:#2c3342;border-color:#3d4658;color:#9aa3b2}.dark .course-days .course-day-main.is-pending{color:#9aa3b2}@media(max-width:620px){.active-lesson .lesson-title-toggle{font-size:26px}}
.course-week-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 12px}.course-week-nav p{margin:0;flex:1;text-align:center;font-size:14px;color:var(--text)}.course-week-nav .btn{min-height:36px;padding:6px 12px}.course-week-nav .btn:disabled{opacity:.4;cursor:default}@media(max-width:620px){.course-week-nav{gap:6px}.course-week-nav .btn{padding:6px 8px;font-size:13px}.course-week-nav p{font-size:13px}}
.dark .support-icon.blue,.dark .support-icon.green,.dark .support-icon.purple,.dark .support-icon.orange{background:var(--blue-soft);color:var(--text)}@media(min-width:621px){body[data-domain=english] .ws-tabs{display:none}}@media(max-width:620px){body[data-domain=home] main{padding-top:12px}body[data-domain=home] .ws-heading h1{font-size:24px}.today-card{padding:12px 14px}.today-row{padding:8px 0;gap:8px}.today-row strong{font-size:15px}.today-row p{font-size:12px}.header-tools a.avatar{display:grid}}
.today-body{display:grid}.bp-supplement{margin:12px 0;border:1px solid var(--line);border-radius:14px;background:var(--card);padding:2px 14px 12px}.bp-supplement>summary{font-size:15px;font-weight:600;padding:10px 0;color:var(--text)}.bp-supplement-track{list-style:none;margin:2px 0 8px;padding:0}.bp-supplement-slot{margin:0;padding:0 0 12px 14px;border-left:2px solid #c9d4e6}.bp-supplement-slot h3{font-size:14px;margin:0 0 4px;color:var(--text)}.bp-supplement-slot ul{margin:0;padding-left:1.1em}.bp-supplement-slot li{font-size:14px;line-height:1.55;color:var(--text)}.bp-supplement fieldset,.bp-supplement [data-supplement-vitamin-line]{font-size:14px;line-height:1.55;color:var(--text);margin:8px 0 0}.bp-vit-options{display:grid;gap:8px;margin-top:8px}.bp-vit{display:flex;gap:8px;align-items:flex-start;margin:0;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--bg);font-size:14px;line-height:1.45;color:var(--text)}.bp-vit input{margin-top:3px}.bp-vit.is-off{opacity:.42;filter:grayscale(1);color:var(--muted)}.bp-vit:has(input:checked){border-color:var(--blue);background:var(--blue-soft);opacity:1;filter:none;color:var(--text)}.bp-supplement [data-supplement-weekend-label]{font-size:14px;font-weight:600;margin:0 0 2px;color:var(--text)}.bp-supplement [data-supplement-weekend]{font-size:14px;line-height:1.55;margin:0 0 6px;color:var(--text)}.today-body .bp-supplement{margin:0 0 4px 52px;background:transparent}.dark .bp-supplement{background:#243044}.dark .today-body .bp-supplement{background:transparent}.dark .bp-vit{background:#1c2838;border-color:#3d4d68}.dark .bp-vit:has(input:checked){background:#2b3c57}.dark .bp-supplement-slot{border-left-color:#3d4d68}@media(max-width:620px){.today-body .bp-supplement{margin-left:0}.bp-supplement-slot li,.bp-vit{font-size:13px}}
