:root{--ink:#192941;--muted:#718092;--navy:#10233b;--navy2:#1d3856;--cream:#f8f7f3;--paper:#fffefa;--line:#e8e9e5;--coral:#e97867;--green:#4c8e77;--pale:#ecf1ee;--shadow:0 16px 50px rgba(23,36,54,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit}.hidden{display:none!important}.topbar{height:72px;background:var(--paper);border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 4vw;gap:5vw}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:19px;letter-spacing:-.04em;white-space:nowrap}.brandmark{width:32px;height:32px;background:var(--coral);color:white;display:grid;place-items:center;border-radius:9px;font-weight:700;font-size:14px;letter-spacing:-.05em}.topbar nav{display:flex;height:100%;gap:26px}.navlink{display:flex;align-items:center;text-decoration:none;color:var(--muted);font-size:13px;font-weight:700;position:relative;white-space:nowrap}.navlink.active{color:var(--navy)}.navlink.active:after{position:absolute;content:'';bottom:0;left:0;right:0;height:3px;background:var(--coral)}.topnote{margin-left:auto;color:#99a1aa;font-size:12px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.18em;color:var(--coral);display:flex;align-items:center;gap:12px}.eyeline{height:1px;width:28px;background:currentColor;opacity:.6}h1,h2,h3,p{margin-top:0}.welcome{min-height:calc(100vh - 72px);background:radial-gradient(circle at 90% 5%,#f3e6df,transparent 27%),var(--cream)}.welcome-inner{max-width:1120px;margin:auto;padding:74px 24px 55px}.welcome h1,.vocab-hero h1{font-family:'Playfair Display',serif;font-size:clamp(48px,6vw,76px);line-height:1.08;letter-spacing:-.045em;font-weight:500;margin:22px 0}.welcome h1 em,.vocab-hero h1 em{color:var(--coral);font-weight:500}.lead{font-size:17px;line-height:1.65;color:#617084;max-width:690px}.testgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:42px}.testcard{min-height:295px;text-align:left;background:var(--paper);border:1px solid #e7e7e1;border-radius:19px;padding:25px 30px;box-shadow:var(--shadow);display:flex;flex-direction:column;color:var(--ink)}.testcard.selected:hover{transform:translateY(-3px);border-color:var(--coral)}.testcard.locked{background:#f1f1ee;box-shadow:none;color:#8f979a}.test-top,.cardfoot{display:flex;justify-content:space-between;align-items:center}.badge{display:inline-block;border:1px solid #d8dbdd;background:#f3f3ef;padding:6px 9px;border-radius:5px;color:#899399;font-size:10px;letter-spacing:.1em;font-weight:700}.badge.coral{background:#fcece7;color:#c96352;border-color:#f7dcd4}.arrow{font-size:23px;color:var(--coral)}.testnum{font-family:'Playfair Display',serif;font-size:45px;margin-top:20px;color:#b6c9c6;line-height:1}.testcard h2{font-family:'Playfair Display',serif;font-size:28px;font-weight:500;margin:10px 0 3px}.testcard p{color:var(--muted);font-size:13px}.cardfoot{border-top:1px solid var(--line);padding-top:16px;margin-top:auto;color:#657488;font-size:12px;font-weight:700}.source-note{font-size:12px;color:#93a0ab;margin-top:24px}.source-note a{color:var(--coral)}.workspace{display:flex;min-height:calc(100vh - 72px)}.rail{width:235px;flex:none;background:var(--navy);color:#c8d3dc;padding:28px 16px;display:flex;flex-direction:column}.backlink{background:none;border:0;color:#91a4b6;text-align:left;padding:0 12px;margin-bottom:40px;font-size:12px}.backlink:hover{color:white}.rail-title{font-size:11px;letter-spacing:.17em;font-weight:700;color:white;padding:0 12px;margin-bottom:14px}.mini-progress{height:4px;background:#29415a;border-radius:9px;margin:0 12px}.mini-progress-bar{height:100%;background:var(--coral);border-radius:9px;width:0}.progress-caption{font-size:11px;color:#8ca0b3;margin:7px 12px 38px}.rail-label{font-size:10px;letter-spacing:.15em;color:#8399ae;font-weight:700}.rail-group{padding:0 5px}.rail-group .rail-label{padding:0 8px}.partnav-item{display:flex;width:100%;justify-content:space-between;align-items:center;text-align:left;background:transparent;border:0;color:#abc0d0;padding:11px 9px;border-radius:8px;font-size:12px;margin-top:3px}.partnav-item.active{background:#28415c;color:white}.partnav-item small{font-size:10px;color:#829aae}.partnav-item.active small{color:#e7b3ab}.partnav-item:hover{background:#263f59}.rail-vocab{margin-top:32px;border:1px solid #3f5a73;background:#1e3954;color:#e9f4f5;border-radius:10px;padding:12px;text-align:left;display:flex;align-items:center;gap:8px;font-size:12px;width:100%}.rail-vocab span{flex:1;font-weight:700}.rail-vocab small{display:block;font-size:10px;color:#91abbc;font-weight:400;margin-top:3px}.rail-bottom{margin-top:auto;color:#6f879d;font-size:10px;line-height:1.6;padding:30px 12px 0}.workmain{min-width:0;flex:1;padding:28px clamp(20px,3.5vw,55px) 44px;max-width:1800px}.work-head{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-bottom:24px}.work-head h1{font-family:'Playfair Display',serif;font-weight:500;font-size:38px;letter-spacing:-.03em;margin:6px 0 3px}.work-head p{color:var(--muted);font-size:12px;margin:0}.head-actions{display:flex;gap:8px}.outline-btn,.primary-btn{border-radius:8px;padding:11px 16px;font-size:12px;font-weight:700;white-space:nowrap}.outline-btn{background:white;border:1px solid #d8dfdf;color:var(--ink)}.primary-btn{background:var(--navy);border:1px solid var(--navy);color:white}.primary-btn:hover{background:#29445f}.exam-layout{display:grid;grid-template-columns:minmax(420px,1.35fr) minmax(320px,.85fr);gap:18px;align-items:start}.paper-panel,.mentor-panel{background:var(--paper);border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow);overflow:hidden}.panel-head{height:56px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 17px}.panel-head>div:first-child{display:flex;align-items:center;gap:9px;font-size:12px}.panel-head small{color:#a0a9af;margin-left:8px;font-size:10px}.dot{width:8px;height:8px;border-radius:50%;background:var(--green)}.paper-actions{display:flex;align-items:center;gap:9px;font-size:10px;color:var(--muted)}.paper-actions button,.question-pager button{border:1px solid var(--line);background:white;color:#596c7e;border-radius:5px;width:25px;height:25px;font-size:17px;line-height:1}.paper-body{height:min(70vh,780px);min-height:500px;background:#e8e9e6}.paper-body iframe{width:100%;height:100%;border:0;background:white}.empty-material{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:25px}.material-icon{font-family:'Playfair Display',serif;font-size:65px;color:#94aea6}.empty-material h3{font-family:'Playfair Display',serif;font-size:23px;font-weight:500;margin:13px 0}.empty-material p{max-width:310px;color:#72808c;line-height:1.5;font-size:12px}.empty-material a{font-size:11px;color:#667b8b;margin-top:13px}.audio-box{border-top:1px solid var(--line);padding:14px 16px;display:grid;grid-template-columns:1fr;gap:7px}.audio-box b{font-size:12px}.audio-box small{display:block;color:var(--muted);font-size:10px;margin-top:2px}.audio-box audio{width:100%;height:33px}.mentor-head{display:flex;gap:12px;align-items:center;padding:17px 20px;background:#eaf1ed;border-bottom:1px solid #dde8e1}.mentor-avatar{background:#b9d5c8;color:var(--navy);width:37px;height:37px;border-radius:50%;display:grid;place-items:center;font-size:20px}.mentor-head small{font-size:9px;letter-spacing:.15em;color:#749080;font-weight:700}.mentor-head h2{font-family:'Playfair Display',serif;font-size:17px;margin:1px 0;font-weight:500}.mentor-scroll{padding:18px 20px}.mentor-message{border-left:2px solid var(--coral);padding:3px 0 3px 12px;color:#56677c;font-size:12px;line-height:1.55;margin-bottom:20px}.question-row{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:700;margin-bottom:11px}.question-pager{display:flex;gap:5px}.choicegrid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.choice{border:1px solid #d9e1e1;background:white;border-radius:6px;min-height:35px;color:#405166;font-weight:700}.choice:hover,.choice.selected{border-color:#e99a8b;background:#fff1ed;color:#c45849}.choice.correct{border-color:var(--green);background:#e6f4ee;color:#317359}.choice.incorrect{border-color:#dd7665;background:#fce9e5}.answer-status{min-height:26px;font-size:11px;color:var(--green);padding-top:8px}.answer-status.error{color:#c76353}.mentor-actions{display:flex;gap:7px}.hint-btn{border:1px solid #e2e9e4;background:#f3f7f3;border-radius:7px;padding:10px 9px;font-size:11px;color:#527e68;font-weight:700;flex:1}.hint-btn.secondary{background:white;color:#617685}.hint-box{border-radius:8px;background:#f3f7f3;border:1px solid #dfe9e2;padding:12px;font-size:11px;line-height:1.55;margin:11px 0;color:#3d6953}.check-btn{border:0;background:var(--navy);color:white;border-radius:8px;padding:11px 14px;font-size:11px;font-weight:700;width:100%;margin-top:11px}.mentor-vocab{border-top:1px solid var(--line);margin-top:22px;padding-top:16px}.vocab-head{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.1em;color:#8f9aa2;font-weight:700}.vocab-head a{color:var(--coral);text-decoration:none;letter-spacing:0}.miniword{display:flex;gap:8px;align-items:center;padding:9px 0;border-bottom:1px solid #f0f1ee}.miniword div{flex:1}.miniword b{display:block;font-size:11px}.miniword small{display:block;font-size:10px;color:#8795a0}.miniword button{border:1px solid #e3e6e5;border-radius:5px;background:white;color:var(--coral);font-size:16px;width:24px;height:24px}.writing-note{background:#f7f4eb;padding:12px;border-radius:8px;font-size:11px}.writing-note p{font-size:10px;color:#737b7d;margin:4px 0 0}.writing-checklist{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:12px 0}.writing-checklist label{font-size:10px;background:#f4f7f4;padding:8px;border-radius:5px}.writing-area textarea{width:100%;min-height:240px;border:1px solid #d8e0dd;border-radius:8px;padding:12px;resize:vertical;font-size:13px;line-height:1.6;color:var(--ink)}.writing-area textarea:focus{outline:2px solid #9bbcae}.draft-meta{display:flex;justify-content:space-between;color:#8795a0;font-size:10px;margin-top:4px}.feedback{margin-top:10px;padding:12px;border-radius:8px;background:#f4f7f4;font-size:11px;line-height:1.5}.feedback ul{margin:7px 0;padding-left:18px}.feedback li{margin:3px 0}.feedback mark{background:#ffe6cf}dialog{border:0;border-radius:16px;box-shadow:0 25px 90px rgba(6,21,38,.25);width:min(480px,92vw);padding:0}dialog::backdrop{background:rgba(9,22,37,.65)}dialog form{position:absolute;right:13px;top:11px}.close-dialog{border:0;background:transparent;font-size:22px;color:#85919b}.dialog-content{padding:37px}.dialog-content h2{font-family:'Playfair Display',serif;font-size:31px;font-weight:500;margin:16px 0}.dialog-content p{font-size:12px;line-height:1.6;color:#657789}.download-link{display:block;background:#edf4ef;border-radius:8px;padding:11px;color:#2f6d56;text-decoration:none;font-size:12px;font-weight:700}.dropzone{display:flex;flex-direction:column;align-items:center;gap:5px;text-align:center;border:1.5px dashed #bccdc6;border-radius:9px;padding:22px;margin-top:12px;background:#fafcf9;color:#496e5b;cursor:pointer}.dropzone.drag{background:#e9f4ed}.dropzone span{font-size:25px}.dropzone b{font-size:12px}.dropzone small{font-size:10px;color:#8b9a96}.import-status{font-size:11px;color:#557863;margin-top:9px}.privacy-note{margin:13px 0 0!important;font-size:10px!important}.privacy-note a{color:#537e6d}
/* vocabulary */.vocab-page{background:#f8f7f3}.vocab-main{max-width:1340px;margin:auto;padding:0 26px 70px}.vocab-hero{padding:60px 24px 45px;background:radial-gradient(circle at 85% 20%,#f5dfd5,transparent 35%);border-bottom:1px solid var(--line)}.vocab-hero h1{margin:16px 0;font-size:clamp(48px,6vw,74px)}.vocab-hero p{max-width:610px;font-size:14px;line-height:1.7;color:#687b8b}.hero-stats{display:flex;gap:50px;margin-top:30px}.hero-stats div{display:flex;flex-direction:column}.hero-stats b{font-family:'Playfair Display',serif;font-size:27px;font-weight:500}.hero-stats span{font-size:10px;color:#8a98a2}.vocab-layout{display:grid;grid-template-columns:220px 1fr;gap:38px;padding-top:32px}.vocab-side .rail-label{color:#8c9aa1;margin-left:8px}.test-select{display:flex;align-items:center;gap:12px;width:100%;padding:13px 12px;border:1px solid #e0e5e2;background:white;border-radius:9px;margin-top:10px;text-align:left;color:var(--ink)}.test-select.active{border-color:#9fbbad;background:#f2f7f2}.test-select.disabled{opacity:.55}.test-select>b{font-family:'Playfair Display',serif;font-size:19px;color:#88aa98}.test-select span:nth-child(2){flex:1;font-size:12px;font-weight:700}.test-select small{display:block;color:#91a19a;font-weight:400;margin-top:3px;font-size:10px}.side-tip{background:#eaf0e9;padding:16px;border-radius:9px;margin-top:23px}.side-tip b{font-size:11px}.side-tip p{font-size:10px;line-height:1.6;color:#667e70;margin:5px 0 0}.side-tools{display:flex;flex-direction:column;gap:8px;margin-top:20px}.side-tools button,.side-tools label{border:1px solid #dce2de;background:white;border-radius:6px;padding:9px;font-size:10px;text-align:left;cursor:pointer;color:#597064}.word-controls{background:white;border:1px solid var(--line);border-radius:11px;padding:14px 17px;margin-bottom:15px}.level-tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);padding-bottom:11px}.level{border:0;background:transparent;color:#7c8b95;padding:9px 16px;border-radius:7px;font-size:12px;font-weight:700}.level.active{background:var(--navy);color:white}.level span{opacity:.58;font-weight:400}.filter-row{display:flex;gap:8px;margin-top:12px}.filter-row input,.filter-row select{border:1px solid #dfe5e2;background:#fdfdfb;border-radius:6px;padding:10px;font-size:11px;color:var(--ink)}.filter-row input{flex:1;min-width:0}.flash-btn{border:0;background:#e9f2ec;color:#3c765b;border-radius:6px;padding:9px 12px;font-size:11px;font-weight:700}.word-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.word-card{background:white;border:1px solid var(--line);border-radius:9px;padding:15px 17px;display:flex;align-items:center;gap:10px;min-height:78px}.word-card.learned{background:#f7faf7}.level-pill{font-size:9px;font-weight:700;padding:5px 6px;border-radius:4px;color:#5b8069;background:#e9f1e9;min-width:28px;text-align:center}.level-pill.A2{background:#e8f0f5;color:#5d7b92}.level-pill.B1{background:#fff0e8;color:#b77859}.word-info{flex:1;min-width:0}.word-info b{display:block;font-size:13px}.word-info span{display:block;font-size:11px;color:#778997;margin-top:2px}.word-actions{display:flex;gap:4px}.word-actions button{border:1px solid #e3e7e6;background:white;color:#b0b9bb;width:27px;height:27px;border-radius:5px;font-size:15px}.word-actions button.saved{color:var(--coral);border-color:#e8b0a8;background:#fff4f1}.word-actions button.known{color:var(--green);border-color:#aac9b9;background:#edf8f1}.word-empty{grid-column:1/-1;text-align:center;color:#8793a1;padding:55px}.flash-inner{padding:35px}.flash-inner>span:nth-child(2){float:right;color:#8794a1;font-size:11px}.flash-card{height:230px;border-radius:11px;border:1px solid #dfe8e0;background:#f4f8f4;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;margin-top:18px;cursor:pointer;padding:20px}.flash-card b{font-family:'Playfair Display',serif;font-size:31px;font-weight:500}.flash-card small{color:#82918d;margin-top:10px}.flash-actions{display:flex;gap:10px;margin-top:15px}.flash-actions button{flex:1;border:0;border-radius:7px;padding:11px;font-size:11px;font-weight:700;background:var(--navy);color:white}.flash-actions button:first-child{background:#e7f0e9;color:#4a7a5f}@media(max-width:1100px){.exam-layout{grid-template-columns:1fr}.paper-body{height:550px}.mentor-panel{max-width:none}.workmain{padding:24px}}@media(max-width:760px){.topbar{padding:0 14px;gap:18px}.topbar nav{gap:13px}.topnote{display:none}.welcome-inner{padding:45px 18px}.testgrid{grid-template-columns:1fr}.testcard{min-height:240px}.workspace{display:block}.rail{width:100%;padding:12px 16px;display:block}.backlink,.rail-title,.mini-progress,.progress-caption,.rail-bottom,.rail-vocab{display:none}.rail-group{padding:0}.rail-group .rail-label{display:none}#partNav{display:flex;overflow:auto;gap:6px}.partnav-item{white-space:nowrap;width:auto;padding:8px}.work-head{align-items:flex-start;flex-direction:column}.work-head h1{font-size:32px}.head-actions{width:100%}.head-actions button{flex:1}.exam-layout{display:block}.paper-panel{margin-bottom:14px}.paper-body{min-height:420px;height:58vh}.panel-head small{display:none}.vocab-main{padding:0 14px 40px}.vocab-hero{padding:35px 5px}.vocab-layout{grid-template-columns:1fr;gap:20px}.vocab-side{display:block}.vocab-side .rail-label,.side-tip{display:none}.test-select{max-width:300px}.side-tools{flex-direction:row}.word-list{grid-template-columns:1fr}.filter-row{flex-wrap:wrap}.filter-row input{flex-basis:100%}.hero-stats{gap:26px}}
/* Self-contained original mock */
.original-paper{height:min(72vh,850px);min-height:550px;overflow:auto;background:#fffefa;padding:28px clamp(20px,3vw,46px);font-size:14px;line-height:1.68;color:#253347}.original-paper h3{font-family:'Playfair Display',serif;font-size:24px;font-weight:500;margin:8px 0 17px;color:#192941}.original-paper p{margin:0 0 15px}.original-paper ol{padding-left:22px}.source-card{border:1px solid #e5e9e5;border-radius:9px;padding:13px 16px;margin-bottom:10px;background:white}.source-card b,.ad-grid b{color:#3d735e;font-size:12px}.source-card p{font-size:12px;margin:5px 0 0}.option-list{columns:2;font-size:12px}.option-list li{padding:3px 10px 3px 1px;break-inside:avoid}.ad-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ad-grid>div{border:1px solid #e5e9e5;border-radius:8px;padding:10px;background:white}.ad-grid p{font-size:11px;margin:4px 0 0}.bank-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin:8px 0 23px}.bank-grid span{background:#edf3ee;border-radius:4px;padding:6px;font-size:11px}.question-prompt{font-size:14px;font-weight:700;line-height:1.5;color:#24374b;margin:10px 0 16px}.choicegrid.descriptive{grid-template-columns:1fr}.choice.descriptive{text-align:left;font-weight:500;padding:9px 11px;min-height:43px}.choice.descriptive b{font-weight:700;margin-right:6px;color:var(--coral)}.original-paper blockquote{background:#f4f7f3;border-left:3px solid #9bbcae;padding:16px;margin:18px 0;line-height:1.7}.original-paper li{margin-bottom:5px}@media(max-width:760px){.original-paper{min-height:370px;height:50vh}.ad-grid{grid-template-columns:1fr}.bank-grid{grid-template-columns:repeat(2,1fr)}}
.transcript{margin-top:25px;background:#edf3ee;border:1px solid #d9e6dc;border-radius:8px;padding:10px 14px;font-size:12px}.transcript summary{cursor:pointer;color:#3f735c;font-weight:700}.transcript pre{white-space:pre-wrap;font:inherit;font-size:12px;line-height:1.65;color:#405364}.original-paper .ad-grid p{margin:4px 0 0}
/* Vocabulary practice space */
.study-dashboard{display:grid;grid-template-columns:1.05fr .95fr;gap:16px;padding-top:28px}.mission-card,.method-card{border-radius:16px;padding:25px 27px;min-height:285px}.mission-card{background:linear-gradient(125deg,#18354f,#284e61);color:white;box-shadow:var(--shadow)}.mission-card .eyebrow{color:#a8d9c7}.mission-card h2,.b1-routes h2{font-family:'Playfair Display',serif;font-size:31px;font-weight:500;margin:11px 0 7px}.mission-card p{font-size:12px;line-height:1.65;color:#d1e1e2;max-width:440px}.mission-stats{display:flex;gap:30px;margin:20px 0}.mission-stats div{display:flex;flex-direction:column}.mission-stats b{font-family:'Playfair Display',serif;font-size:25px;font-weight:500}.mission-stats span{font-size:10px;color:#abc9cd}.mission-card .primary-btn{background:#e9a28f;border-color:#e9a28f;color:#162b3f}.mission-card .primary-btn:hover{background:#f2b09e}.method-card{background:#eaf1eb;border:1px solid #d6e4d9}.method-card .eyebrow{color:#5d8d74}.method-step{display:flex;gap:15px;align-items:baseline;border-bottom:1px solid #d6e4d9;padding:12px 0}.method-step b{min-width:118px;font-size:12px;color:#315d49}.method-step span{font-size:11px;color:#607b6b;line-height:1.5}.method-card>small{display:block;color:#758a7d;font-size:10px;margin-top:13px;line-height:1.5}.b1-routes{margin-top:21px;padding:20px 25px;background:white;border:1px solid var(--line);border-radius:13px;display:flex;align-items:center;justify-content:space-between;gap:20px}.b1-routes h2{font-size:25px;margin:8px 0 4px}.b1-routes p{font-size:11px;color:var(--muted);line-height:1.5;margin:0;max-width:430px}.route-buttons{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end;max-width:510px}.route{border:1px solid #d9e5dc;background:#f7faf6;color:#557764;border-radius:18px;padding:8px 11px;font-size:10px;font-weight:700}.route.active{background:#2d634b;color:white;border-color:#2d634b}.word-card{flex-wrap:wrap}.word-card .study-word{border:0;background:#e7f1e9;color:#356b4c;font-size:10px;font-weight:700;width:auto;padding:6px 8px}.word-card .due-label{font-size:9px;color:#a67c5a;width:100%;padding-left:40px;margin-top:-5px}.study-dialog-inner,.focus-inner{padding:36px;max-height:85vh;overflow:auto}.study-dialog-inner>span:nth-child(2){float:right;font-size:11px;color:#81929a}.study-dialog-inner h2,.focus-inner h2{font-family:'Playfair Display',serif;font-weight:500;font-size:31px;margin:20px 0 10px}.study-dialog-inner p{font-size:13px;color:#617181;line-height:1.6}.study-dialog-inner input,.focus-inner textarea{width:100%;border:1px solid #d4e0d7;background:#fcfdfb;border-radius:8px;padding:12px;font-size:14px}.study-dialog-inner input:focus,.focus-inner textarea:focus{outline:2px solid #a8ccb3}.study-feedback{font-size:12px;line-height:1.55;min-height:30px;margin-top:12px}.study-feedback.correct{color:#2d7756}.study-feedback.almost{color:#b37639}.study-feedback.wrong{color:#ba5d4d}.study-rating{display:flex;gap:7px;margin-top:10px}.study-rating button{flex:1;border:1px solid #d5e0d6;border-radius:7px;background:#edf4ed;color:#37694c;padding:10px 5px;font-size:10px;font-weight:700}.study-rating button:first-child{background:#fcf0eb;color:#b96350;border-color:#f1d4c8}.study-skip{text-align:right;margin-top:13px}.study-skip button{background:none;border:0;color:#8a98a2;font-size:11px}.focus-inner>p{color:#6d7b87;font-size:13px;margin-bottom:20px}.focus-example{background:#eef5ef;border-left:3px solid #7eae92;padding:15px;border-radius:5px;font-size:13px;line-height:1.65}.focus-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.focus-grid>div{background:#f9faf6;border:1px solid #e8ece3;border-radius:7px;padding:11px}.focus-grid small{display:block;color:#8aa096;font-size:9px;letter-spacing:.1em;margin-bottom:5px}.focus-grid b{font-size:11px;color:#416454;line-height:1.45}.focus-note{font-size:11px;color:#6d7e7a;line-height:1.55;margin-bottom:22px}.focus-inner label{display:block;font-weight:700;font-size:11px;margin-bottom:7px}.focus-inner textarea{height:100px;resize:vertical;line-height:1.5}.focus-inner>small{display:block;color:#4f8663;margin-top:8px;font-size:10px}#studyDialog{width:min(510px,94vw)}#focusDialog{width:min(560px,94vw)}@media(max-width:950px){.study-dashboard{grid-template-columns:1fr}.b1-routes{display:block}.route-buttons{justify-content:flex-start;margin-top:15px}}@media(max-width:760px){.mission-card,.method-card{padding:20px;min-height:auto}.b1-routes{padding:18px}.mission-stats{gap:21px}.study-dialog-inner,.focus-inner{padding:28px 20px}.focus-grid{grid-template-columns:1fr}.study-rating{flex-direction:column}}
/* Paper-style exam surface with a separate, reusable coaching card */
.paper-panel{background:#f0f0ee;border-color:#d5d5d2;box-shadow:0 12px 35px rgba(20,30,40,.07)}.paper-panel .panel-head{background:#e9e9e7;border-color:#d6d6d3;color:#353b40}.paper-panel .dot{background:#353b40}.sheet-number{font-size:10px;letter-spacing:.15em;color:#777d80;font-weight:700}.paper-title-strip{background:white;border-bottom:1px solid #d0d0cd;padding:20px clamp(20px,3vw,46px) 16px;color:#161b1f}.paper-title-strip>span{display:block;border-top:4px solid #1d252b;padding-top:10px;font:700 10px Arial,sans-serif;letter-spacing:.14em}.paper-title-strip h2{font:700 23px Arial,sans-serif;letter-spacing:0;margin:11px 0 5px}.paper-title-strip p{font:12px/1.5 Arial,sans-serif;margin:0;color:#3d454b}.original-paper{background:white;color:#1b2228;font-family:Arial,Helvetica,sans-serif;font-size:13px;line-height:1.65}.original-paper h3{font:700 17px Arial,sans-serif;border-bottom:1px solid #aeb3b5;padding-bottom:6px;color:#1b2228}.original-paper .source-card{border:0;border-bottom:1px solid #d5d9d8;border-radius:0;padding:13px 0;background:white}.original-paper .source-card b,.original-paper .ad-grid b{color:#232a2f;font-size:12px}.original-paper .source-card p{font-size:12px}.original-paper .ad-grid>div{border:1px solid #959b9e;border-radius:0;background:white}.original-paper .bank-grid span{background:white;border:1px solid #c2c6c7;border-radius:0}.original-paper blockquote{background:#f7f7f7;border-left:3px solid #555;color:#24282b}.mentor-head{background:#eef1ed}.playbook{border:1px solid #dce7de;background:#f6faf6;border-radius:9px;margin-bottom:18px}.playbook summary{list-style:none;cursor:pointer;padding:12px 13px;display:flex;flex-direction:column;gap:4px}.playbook summary::-webkit-details-marker{display:none}.playbook summary span{font-size:9px;letter-spacing:.13em;color:#679174;font-weight:700}.playbook summary b{font:500 17px 'Playfair Display',serif;color:#244f38}.playbook-content{padding:0 14px 14px}.playbook-content ol{padding-left:17px;margin:2px 0 12px;font-size:11px;color:#4d6554;line-height:1.55}.playbook-content li{margin:5px 0}.playbook-watch{font-size:10px;line-height:1.5;background:#fff7ea;border-left:2px solid #d5ac6c;padding:8px 10px;color:#886940}.template-head{display:flex;justify-content:space-between;align-items:center;margin-top:15px;font-size:11px}.template-head button{border:1px solid #abc5ae;background:white;border-radius:5px;padding:5px 8px;color:#406d4b;font-size:10px}.playbook pre{white-space:pre-wrap;background:white;border:1px solid #dfe8dd;border-radius:7px;padding:12px;font:11px/1.55 Arial,sans-serif;color:#344538}.playbook-content p{font-size:10px;line-height:1.5;color:#60796a}.answer-sheet-label{border-top:1px solid #e6e9e6;padding-top:13px;margin-bottom:6px;color:#8b959a;font-size:9px;letter-spacing:.12em;font-weight:700}
/* Fourteen-day preparation route */
.mission-ribbon{display:flex;align-items:center;gap:15px;margin-top:27px;border:1px solid #dfe8dd;background:#eff5ef;border-radius:11px;padding:13px 17px;max-width:740px}.mission-ribbon>span,.mission-mini>b{background:#244f39;color:white;border-radius:6px;font-size:15px;font-weight:700;padding:11px 12px;white-space:nowrap}.mission-ribbon div{display:flex;flex-direction:column;flex:1}.mission-ribbon b,.mission-mini strong{font-size:12px}.mission-ribbon small,.mission-mini small{font-size:10px;color:#7b9381;margin-top:3px}.mission-ribbon a,.mission-mini a{font-size:11px;font-weight:700;color:#3e7854;text-decoration:none;white-space:nowrap}.mission-plan{max-width:1120px;margin:14px auto 0;padding:20px 24px 70px}.mission-plan-head{border-top:1px solid #e4e8df;padding-top:30px}.mission-plan h2{font:500 35px 'Playfair Display',serif;margin:9px 0 4px}.mission-plan p{font-size:12px;color:#74848a;line-height:1.6}.mission-days{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:18px}.mission-day{display:flex;gap:12px;align-items:flex-start;background:#fffefa;border:1px solid #e5e9e3;border-radius:8px;padding:12px;cursor:pointer;min-height:70px}.mission-day.today{border-color:#90b49c;background:#f4faf4}.mission-day.complete{opacity:.65}.mission-day input{margin:4px 0 0;accent-color:#3b7953}.mission-day-mark{font-size:11px;font-weight:700;color:#c67562;min-width:38px}.mission-day-copy{display:flex;flex-direction:column}.mission-day-copy strong{font-size:11px}.mission-day-copy small{font-size:10px;color:#8b989b;line-height:1.45;margin-top:3px}.mission-mini{display:flex;align-items:center;gap:12px;margin:20px 0 0;max-width:650px;background:#f0f5ef;border:1px solid #dfe8dd;border-radius:9px;padding:10px 12px}.mission-mini>b{font-size:12px;padding:8px}.mission-mini>span{display:flex;flex-direction:column;flex:1}@media(max-width:760px){.mission-ribbon,.mission-mini{flex-wrap:wrap}.mission-ribbon a{width:100%;padding-left:58px}.mission-days{grid-template-columns:1fr}.mission-plan{padding:20px 18px 50px}}
.paper-title-strip>small{display:block;color:#6f7376;font:700 10px Arial,sans-serif;letter-spacing:.06em;margin-top:3px}.original-paper .option-list li{background:#e8e8e8;margin:5px 9px 7px 0;padding:5px 8px;font-weight:700}.original-paper blockquote{background:#ededed;border:0;padding:24px;min-height:165px;margin:16px 0 28px}
/* Daily full cycles and optional independent exam mode */
.mission-cycle{display:block;min-height:0}.mission-cycle-head{display:flex;gap:12px;align-items:center;margin-bottom:9px}.mission-cycle-head strong{font-size:12px}.mission-cycle-head small{margin-left:auto;color:#87949a;font-size:10px}.mission-cycle-steps{display:grid;gap:5px}.mission-cycle-steps label{display:flex;gap:8px;align-items:flex-start;font-size:10px;line-height:1.4;cursor:pointer}.mission-cycle-steps label.complete{opacity:.55}.mission-cycle-steps input{margin:2px 0 0;accent-color:#3b7953}.mission-cycle-steps b,.mission-cycle-steps small{display:block}.mission-cycle-steps small{color:#7e8d93;margin-top:2px}.grammar-inline{display:block;font-size:10px;color:#3e7854;text-decoration:none;font-weight:700;margin-top:12px}.independent-mode .mentor-panel{display:none}.independent-mode .exam-layout{grid-template-columns:minmax(0,1fr)}.independent-mode .rail-vocab,.independent-mode #checkAnswer,.independent-mode .transcript,.independent-mode .writing-checklist,.independent-mode #reviewWriting{display:none!important}.independent-mode .topbar nav a:not(.active){display:none}.independent-mode .source-note{display:none}@media(max-width:760px){.mission-cycle-head{flex-wrap:wrap}}
.independent-mode .mentor-panel{display:block}.independent-mode .exam-layout{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr)}.independent-mode .mentor-head,.independent-mode .mentor-message,.independent-mode .playbook,.independent-mode .mentor-actions,.independent-mode .mentor-vocab{display:none!important}@media(max-width:1100px){.independent-mode .exam-layout{grid-template-columns:1fr}}
/* Rule-based grammar lab */
.grammar-main{max-width:1260px;margin:auto;padding:0 26px 80px}.grammar-hero{padding:65px 24px 45px;background:radial-gradient(circle at 85% 10%,#e5efe6,transparent 36%);border-bottom:1px solid var(--line)}.grammar-hero h1{font:500 clamp(48px,6vw,74px)/1.07 'Playfair Display',serif;letter-spacing:-.045em;margin:20px 0}.grammar-hero h1 em{color:#4c8e77}.grammar-hero p{max-width:690px;color:#677a86;line-height:1.7;font-size:14px}.grammar-hero-actions{display:flex;gap:10px;margin-top:24px}.grammar-hero-actions a{background:#244f39;color:white;text-decoration:none;padding:11px 15px;border-radius:8px;font-size:11px;font-weight:700}.grammar-hero-actions a+ a{background:white;color:#315f48;border:1px solid #cfe0d3}.grammar-summary{display:flex;align-items:center;gap:18px;padding:20px 25px;background:white;border:1px solid var(--line);border-radius:12px;margin-top:22px}.grammar-summary b{font:500 21px 'Playfair Display',serif}.grammar-summary span{font-size:11px;color:#7b8e93;flex:1}.grammar-filter{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0 18px}.grammar-filter button{border:1px solid #d6e4da;background:white;color:#54725f;border-radius:30px;padding:9px 13px;font-size:11px;font-weight:700}.grammar-filter button.active{background:#244f39;color:white}.grammar-layout{display:grid;grid-template-columns:210px 1fr;gap:28px}.grammar-side{align-self:start;position:sticky;top:20px;background:#eaf1eb;border-radius:12px;padding:20px;font-size:11px;color:#476152;line-height:1.6}.grammar-side b{font-size:13px}.grammar-side ol{padding-left:17px}.grammar-side p{border-top:1px solid #d4e2d7;padding-top:12px}.grammar-side a{font-weight:700;color:#2d7351}.grammar-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.grammar-card{background:white;border:1px solid #e3e8e2;border-radius:13px;padding:20px;box-shadow:var(--shadow)}.grammar-card-head{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.12em;color:#6c9b7b;font-weight:700}.grammar-card h2{font:500 24px 'Playfair Display',serif;margin:12px 0 15px}.grammar-rule{display:grid;grid-template-columns:1fr 1fr;gap:9px}.grammar-rule>div{padding:11px;background:#f4f8f3;border-radius:7px}.grammar-rule small,.grammar-words small{display:block;font-size:9px;letter-spacing:.1em;font-weight:700;color:#678975}.grammar-rule p{font-size:11px;line-height:1.55;margin:6px 0 0}.grammar-card blockquote{margin:13px 0;padding:11px 13px;border-left:3px solid #e2a08e;background:#fcf7f3;font-size:12px;line-height:1.5}.grammar-words{font-size:10px;color:#60766b;line-height:1.5}.grammar-words span{display:block;margin:4px 0}.grammar-words a{color:#3e7854;font-weight:700}.grammar-check{border-top:1px solid #e7ebe5;margin-top:15px;padding-top:13px}.grammar-check label{font-size:11px;font-weight:700}.grammar-check>div{display:flex;gap:7px;margin-top:9px}.grammar-check input{min-width:0;flex:1;border:1px solid #d6e2d8;border-radius:6px;padding:9px}.grammar-check button{border:0;border-radius:6px;background:#244f39;color:white;padding:9px;font-size:10px;font-weight:700}.grammar-check p{font-size:10px;margin:7px 0 0;min-height:12px}.grammar-check p.right{color:#2c7751}.grammar-check p.retry{color:#a36749}@media(max-width:1000px){.grammar-layout{grid-template-columns:1fr}.grammar-side{position:static}.grammar-list{grid-template-columns:1fr}}@media(max-width:760px){.grammar-main{padding:0 14px 60px}.grammar-hero{padding:38px 8px}.grammar-summary{padding:16px}.grammar-rule{grid-template-columns:1fr}.grammar-check>div{flex-wrap:wrap}}
.independent-mode #hintBox,.independent-mode #answerStatus,.independent-mode #writingFeedback{display:none!important}
/* First-page daily stage dashboard */
.day-dashboard{background:white;border:1px solid #e2e8e1;border-radius:16px;padding:23px 27px;margin-top:32px;box-shadow:var(--shadow)}.day-dashboard-head{display:flex;justify-content:space-between;gap:20px}.day-dashboard h2{font:500 28px 'Playfair Display',serif;margin:7px 0 4px}.day-dashboard p{font-size:11px;color:#7d8d93;margin:0}.day-time{text-align:right;display:flex;flex-direction:column;white-space:nowrap}.day-time b{font:500 29px 'Playfair Display',serif;color:#315f49}.day-time span{font-size:10px;color:#889794}.day-progress-track{height:8px;border-radius:10px;background:#e9efe9;overflow:hidden;margin:20px 0 6px}.day-progress-track span{display:block;height:100%;background:#4c8e77;width:0;transition:width .3s}.day-progress-meta{display:flex;justify-content:space-between;font-size:10px;color:#71858a;margin-bottom:16px}.day-stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.day-stage{display:flex;gap:9px;align-items:flex-start;border:1px solid #e8ede6;background:#fcfdfb;border-radius:8px;padding:10px}.day-stage>span{width:24px;height:24px;flex:none;border-radius:5px;background:#e8f0e9;color:#4f7b5f;display:grid;place-items:center;font-size:10px;font-weight:700}.day-stage.in-progress{border-color:#c8dbc9;background:#f5faf4}.day-stage.complete{border-color:#b8d5c2;background:#eff8f0}.day-stage>div{flex:1;min-width:0}.day-stage b{display:block;font-size:11px}.day-stage small{display:block;color:#869795;font-size:9px;line-height:1.4;margin-top:3px}.day-stage strong{font-size:9px;color:#688474;white-space:nowrap}.day-estimate-note{display:block;color:#94a19e;font-size:9px;margin-top:13px}@media(max-width:950px){.day-stages{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.day-dashboard{padding:17px}.day-stages{grid-template-columns:1fr}.day-dashboard-head{align-items:flex-start}.day-time b{font-size:23px}}
/* Attempt review */
.dashboard-review{display:inline-block;color:#3e7854;font-size:11px;font-weight:700;text-decoration:none;margin-top:13px}.review-button{text-decoration:none;display:inline-flex;align-items:center}.review-main{max-width:1240px;margin:auto;padding:0 26px 80px}.review-hero{padding:60px 20px 35px;background:radial-gradient(circle at 85% 10%,#f3e6df,transparent 35%);border-bottom:1px solid var(--line)}.review-hero h1{font:500 clamp(46px,6vw,70px)/1.08 'Playfair Display',serif;letter-spacing:-.045em;margin:20px 0}.review-hero h1 em{color:var(--coral)}.review-hero p{font-size:13px;line-height:1.6;color:#71818d;max-width:640px}.review-hero label{display:block;font-size:10px;font-weight:700;color:#678071;margin:21px 0 6px}.review-hero select{padding:10px;border:1px solid #d5dfd8;border-radius:7px;background:white;min-width:260px}.review-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:22px 0}.review-stats>div{border:1px solid #e5e9e4;border-radius:10px;background:white;padding:17px}.review-stats b{display:block;font:500 23px 'Playfair Display',serif}.review-stats span{display:block;color:#8b999f;font-size:10px;margin-top:4px}.review-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:25px}.review-layout h2{font:500 26px 'Playfair Display',serif;margin:22px 0 13px}.review-section,.review-question,.review-side-card{border:1px solid #e4e9e3;border-radius:10px;background:white;padding:16px;margin-bottom:8px}.review-section{display:flex;justify-content:space-between;gap:10px}.review-section b,.review-section small{display:block}.review-section b{font-size:12px}.review-section small{font-size:10px;color:#89999c;margin-top:5px}.review-section strong{font-size:12px;color:#4a8463;white-space:nowrap}.review-question b{font-size:11px}.review-question span{float:right;font-size:10px;color:#b57356}.review-question p{font-size:11px;line-height:1.5;margin:9px 0}.review-question small{font-size:10px;color:#748a7d;line-height:1.6}.review-empty{font-size:12px;color:#89999c}.review-side-card{padding:20px}.review-side-card h2{margin:0 0 14px}.review-trail{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #e9ece7;padding:8px 0;font-size:10px}.review-trail b{font-weight:600}.review-trail span{text-align:right;color:#57806b}.review-side-card p{font-size:10px;line-height:1.5;color:#779087}.review-side-card ol{padding-left:18px;font-size:11px;line-height:1.6;color:#526d5c}.review-side-card li{margin-bottom:7px}.review-side-card a{display:block;color:#3e7854;font-size:11px;font-weight:700;text-decoration:none;margin-top:10px}@media(max-width:950px){.review-layout{grid-template-columns:1fr}.review-stats{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.review-main{padding:0 14px 60px}.review-hero{padding:38px 6px}.review-stats{grid-template-columns:repeat(2,1fr)}}
.review-export{display:inline-block;margin-left:10px;border:0;border-radius:7px;padding:11px;background:#244f39;color:white;font-size:10px;font-weight:700}@media(max-width:600px){.review-export{display:block;margin:12px 0 0}}
.day-stage-mark{width:24px;height:24px;flex:none;border:0;border-radius:5px;background:#e8f0e9;color:#4f7b5f;display:grid;place-items:center;font-size:10px;font-weight:700;cursor:pointer}.day-stage.complete .day-stage-mark{background:#3d8058;color:white}.independent-mode .review-button{display:none}
/* Optional on-device pattern coach */
.local-teacher-intro{display:flex;align-items:center;justify-content:space-between;gap:25px;border:1px solid #d5e3d7;background:linear-gradient(110deg,#edf5ee,#f9fcf8);border-radius:13px;padding:20px 24px;margin-top:20px}.local-teacher-intro>div{max-width:720px}.local-teacher-intro b{display:block;font:500 23px 'Playfair Display',serif;margin:7px 0}.local-teacher-intro p{font-size:11px;color:#607a6a;line-height:1.6;margin:0}.local-teacher-intro button{border:0;border-radius:8px;background:#26573e;color:white;font-weight:700;font-size:11px;padding:11px 15px;white-space:nowrap}.local-teacher-intro button[aria-pressed="true"]{background:#e4efe6;color:#2c6644;border:1px solid #a9cbb1}.local-teacher-intro button:disabled{opacity:.55;cursor:not-allowed}.local-teacher-panel{border:1px solid #cfe2d2;background:#f5faf5;border-radius:9px;padding:13px;margin:0 0 16px}.local-teacher-panel.is-on{border-color:#a6d0ad;background:#f0f8f0}.local-teacher-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.local-teacher-head span{font-size:9px;letter-spacing:.12em;font-weight:700;color:#407450}.local-teacher-head b{font-size:9px;color:#4c8d5d}.local-teacher-panel p{font-size:11px;line-height:1.55;color:#496854;margin:10px 0}.local-teacher-panel p b,.local-teacher-panel p span{display:block}.local-teacher-panel p b{font-size:12px;margin-bottom:4px}.local-teacher-actions{display:flex;gap:6px;flex-wrap:wrap}.local-teacher-actions button{border:1px solid #bfd9c5;background:white;color:#37684a;border-radius:6px;padding:8px 9px;font-size:10px;font-weight:700}.local-teacher-actions button:disabled{opacity:.5;cursor:not-allowed}.local-teacher-panel>a{display:block;color:#3f8252;font-size:10px;font-weight:700;text-decoration:none;margin-top:10px}.local-teacher-panel [hidden]{display:none!important}.independent-mode .local-teacher-panel{display:none!important}.grammar-card{scroll-margin-top:90px}@media(max-width:760px){.local-teacher-intro{align-items:flex-start;flex-direction:column;padding:17px}.local-teacher-intro button{width:100%}}
.head-actions{flex-wrap:wrap;justify-content:flex-end}@media(max-width:760px){.head-actions>*{flex:1 1 135px!important;text-align:center;white-space:normal}.topbar{gap:10px}.topbar nav{gap:10px;overflow-x:auto;min-width:0;flex:1}.topbar .navlink{font-size:11px}}
/* 2026-10-15 readability pass: calmer first page, larger study text */
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.5}button,a,input,textarea,select{transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #7fbaa0;outline-offset:3px}
.welcome{background:radial-gradient(circle at 80% 0%,#f4e8df,transparent 32%),#f8f7f3}.welcome-inner{padding-top:48px;padding-bottom:28px}.welcome-topline{display:flex;align-items:center;gap:16px}.welcome-badge{display:inline-block;border-radius:99px;background:#e5f0e7;color:#2e6845;font-size:11px;font-weight:800;padding:6px 10px;white-space:nowrap}.welcome h1{font-family:Georgia,"Iowan Old Style",serif;font-size:clamp(48px,6vw,72px);line-height:1.02;margin:17px 0 12px;letter-spacing:-.05em}.welcome h1 em{color:#de7865}.welcome .lead{font-size:17px;line-height:1.45;color:#617383;margin:0}.welcome .testgrid{grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);gap:16px;margin-top:30px}.welcome .testcard{min-height:212px;padding:22px 25px;border-radius:15px}.welcome .testcard.selected{border-color:#dce5dd;background:linear-gradient(125deg,#fffefa 72%,#f2f7f0);box-shadow:0 14px 35px rgba(23,36,54,.08)}.welcome .testcard.locked{background:#f1f2ee;border-color:#e9eae5}.welcome .testnum{font-size:37px;margin-top:12px}.welcome .testcard h2{font-family:Georgia,"Iowan Old Style",serif;font-size:25px;margin:7px 0 4px}.welcome .testcard p{font-size:13px;line-height:1.5}.welcome .cardfoot{font-size:12px;padding-top:11px}.welcome .source-note{font-size:11px;margin-top:22px;line-height:1.5}
.day-dashboard{margin-top:20px;padding:22px 25px;border-radius:15px;box-shadow:0 10px 30px rgba(23,36,54,.04)}.day-dashboard h2{font-family:Georgia,"Iowan Old Style",serif;font-size:27px;margin:5px 0 3px}.day-dashboard p{font-size:12px}.day-time b{font-family:Georgia,"Iowan Old Style",serif;font-size:31px}.day-time span{font-size:11px}.day-progress-meta{font-size:11px;margin-bottom:13px}.day-stages{gap:9px}.day-stage{padding:11px 12px;background:#fbfcfa;align-items:center}.day-stage b{font-size:12px}.day-stage small{font-size:11px;line-height:1.35}.day-stage strong{font-size:10px}.dashboard-links{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-top:14px}.dashboard-links>a{color:#357351;text-decoration:none;font-size:12px;font-weight:700}.estimate-explainer{font-size:11px;color:#728b79;max-width:470px;text-align:right}.estimate-explainer summary{cursor:pointer;list-style:none;font-weight:700}.estimate-explainer summary::-webkit-details-marker{display:none}.estimate-explainer small{display:block;text-align:left;font-size:11px;line-height:1.5;margin-top:8px;padding:10px 12px;background:#f2f7f1;border-radius:7px}
.local-teacher-intro{margin-top:17px;padding:15px 20px;border-radius:11px;background:#eff5ef}.local-teacher-intro .eyebrow{font-size:10px}.local-teacher-intro p{font-size:12px;line-height:1.45;margin:5px 0 0}.local-teacher-intro button{font-size:12px;padding:10px 14px}.mission-plan{max-width:1120px;margin:3px auto 0;padding:0 24px 65px;border:0}.mission-plan>summary{display:flex;align-items:center;justify-content:space-between;gap:15px;cursor:pointer;list-style:none;border-top:1px solid #e2e6e0;padding:17px 2px;color:#405e4b}.mission-plan>summary::-webkit-details-marker{display:none}.mission-plan>summary span:first-child{display:flex;flex-direction:column}.mission-plan>summary small{font-size:9px;letter-spacing:.12em;color:#a17967;font-weight:700}.mission-plan>summary b{font-size:14px;margin-top:3px}.mission-expand{font-size:11px;font-weight:700;color:#477d57}.mission-plan[open] .mission-expand{font-size:0}.mission-plan[open] .mission-expand:after{content:'Collapse ↑';font-size:11px}.mission-plan-inner>p{font-size:12px;color:#72847a;margin:0 0 14px}.mission-days{margin-top:0}.mission-day{padding:14px}.mission-cycle-head strong{font-size:13px}.mission-cycle-steps label{font-size:11px}.mission-cycle-steps small{font-size:10px}
/* Study surfaces */
.work-head h1,.grammar-hero h1,.vocab-hero h1,.review-hero h1,.focus-inner h2,.study-dialog-inner h2{font-family:Georgia,"Iowan Old Style",serif}.work-head p,.partnav-item,.mentor-message,.playbook-content ol,.playbook-watch,.hint-box,.answer-status,.writing-note,.feedback,.focus-note{font-size:13px;line-height:1.6}.playbook summary b{font-family:Georgia,"Iowan Old Style",serif;font-size:19px}.playbook-content p,.writing-note p,.writing-checklist label,.miniword small{font-size:12px;line-height:1.5}.question-prompt{font-size:16px;line-height:1.55}.choice{font-size:14px;line-height:1.45}.choice.descriptive{font-size:13px}.hint-btn,.check-btn,.outline-btn,.primary-btn{font-size:12px}.writing-area textarea{font-size:15px;line-height:1.7}.draft-meta,.vocab-head{font-size:11px}.original-paper{font-size:15px;line-height:1.75}.original-paper .source-card p,.original-paper .ad-grid p,.original-paper .bank-grid span,.original-paper .option-list{font-size:13px;line-height:1.6}.paper-title-strip p{font-size:13px}.local-teacher-panel p{font-size:13px}.local-teacher-actions button{font-size:11px}.word-card .word-info b{font-size:15px}.word-card .word-info span,.focus-example,.focus-grid b,.study-dialog-inner p{font-size:13px;line-height:1.55}.word-card .due-label,.method-step span,.side-tip p{font-size:11px}.grammar-hero p,.review-hero p{font-size:15px}.grammar-rule p,.grammar-card blockquote,.grammar-check label,.grammar-words,.review-section b,.review-question p,.review-side-card ol{font-size:13px;line-height:1.6}.grammar-rule small,.grammar-words small,.grammar-check p,.review-section small,.review-question small,.review-trail,.review-side-card p{font-size:11px;line-height:1.5}.grammar-check button{font-size:11px}.review-stats span{font-size:11px}
@media(max-width:760px){.welcome-inner{padding-top:32px}.welcome .testgrid{grid-template-columns:1fr;gap:10px}.welcome .testcard{min-height:185px}.welcome .testcard.locked{min-height:125px}.welcome .testcard.locked .testnum{display:none}.welcome .testcard.locked .test-top{margin-bottom:8px}.day-dashboard{padding:18px}.dashboard-links{display:block}.estimate-explainer{text-align:left;margin-top:12px}.mission-plan{padding:0 18px 44px}.original-paper{font-size:14px}.local-teacher-intro{gap:12px}}
/* Primary action and progress share the first viewport on wider screens. */
.welcome-overview{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:24px;align-items:start}.welcome-primary{min-width:0}.welcome-primary h1{font-size:clamp(48px,5vw,68px)}.welcome-primary .testgrid{grid-template-columns:1fr;gap:9px;margin-top:25px}.welcome-primary .testcard.selected{min-height:205px}.welcome-primary .testcard.locked{min-height:105px;padding:15px 20px}.welcome-primary .testcard.locked .testnum{display:none}.welcome-primary .testcard.locked h2{font-size:20px;margin:7px 0 3px}.welcome-primary .testcard.locked p{margin:0;font-size:12px}.welcome-overview .day-dashboard{margin-top:0}.welcome-overview .day-stages{grid-template-columns:repeat(2,minmax(0,1fr))}.welcome-overview .day-stage{min-height:62px}.welcome-overview .day-stage strong{white-space:normal;text-align:right}.welcome-overview .day-progress-meta{gap:10px}.welcome-overview .day-progress-meta span{text-align:right}
@media(max-width:950px){.welcome-overview{grid-template-columns:1fr}.welcome-primary .testgrid{grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr)}.welcome-primary .testcard.locked{min-height:205px}.welcome-primary .testcard.locked .testnum{display:block}.welcome-overview .day-stages{grid-template-columns:repeat(3,minmax(0,1fr))}.welcome-overview .day-dashboard{margin-top:12px}}
@media(max-width:760px){.welcome-primary .testgrid{grid-template-columns:1fr}.welcome-primary .testcard.locked{min-height:100px}.welcome-primary .testcard.locked .testnum{display:none}.welcome-overview .day-stages{grid-template-columns:1fr 1fr}}
@media(max-width:530px){.welcome-overview .day-stages{grid-template-columns:1fr}.welcome-overview .day-stage{min-height:0}}
/* Daily mountain and post-attempt learning flow */
.mountain-journey{margin:14px 0 17px;padding:10px 12px 8px;border:1px solid #dce8dd;background:linear-gradient(180deg,#eef7f1,#fafcf8);border-radius:13px}.mountain-journey svg{width:100%;height:auto;max-height:160px;display:block}.mountain-trail{fill:none;stroke:#d47e61;stroke-width:3;stroke-dasharray:7 7;stroke-linecap:round}.mountain-hill{fill:#dbe9dc}.mountain-ridge{fill:#b8d1bd}.mountain-snow{fill:#fffefa}.mountain-rock{fill:#8b8277;stroke:#736b60;stroke-width:1}.mountain-journey figcaption{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:11px;color:#5c7061}.mountain-journey figcaption b{font-size:12px;color:#2d6545}.mountain-journey figcaption span{max-width:78%;text-align:right}
.review-flow{margin:25px 0 30px}.review-flow-head h2{font-family:Georgia,serif;font-size:28px;font-weight:500;margin:5px 0}.review-flow-head p{color:#647486;font-size:13px;line-height:1.55;max-width:780px}.evaluation-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:17px 0}.evaluation-strip>div,.writing-signals{background:#fffefa;border:1px solid #e1e7e0;border-radius:11px;padding:14px}.evaluation-strip b{display:block;font-family:Georgia,serif;font-size:25px}.evaluation-strip span{font-size:11px;color:#71817a}.writing-signals>b{font-size:13px}.writing-signals b small{font-weight:400;color:#788d80}.writing-signals>div{display:flex;flex-wrap:wrap;gap:7px;margin:11px 0}.writing-signals span{font-size:11px;border-radius:99px;padding:5px 9px}.signal-ok{background:#eaf4ea;color:#3e7751}.signal-miss{background:#fff0e7;color:#a96649}.writing-signals p{font-size:12px;color:#657789;margin:6px 0}.review-flow-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:15px 0}.review-flow .review-side-card{margin:0}.review-flow .review-side-card h2{font-family:Georgia,serif;font-size:21px;font-weight:500}.review-flow .review-side-card p{font-size:12px;line-height:1.6;color:#647486}.review-flow button{margin-top:9px}.flow-status{color:#71817a;font-size:12px;line-height:1.55;margin-top:9px}.repair-task{display:flex;gap:10px;padding:10px 0;border-top:1px solid #e8ece7;cursor:pointer}.repair-task input{accent-color:#4c8e77;width:17px;height:17px;flex:none}.repair-task b,.repair-task small{display:block}.repair-task b{font-size:12px}.repair-task small{font-size:11px;color:#708275;line-height:1.5;margin-top:2px}.proof-card{margin-top:15px!important}.proof-questions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:15px 0}.proof-questions label{display:flex;flex-direction:column;gap:5px;font-size:12px;line-height:1.4}.proof-questions input{padding:9px;border:1px solid #cad8ce;border-radius:7px;background:#fff}.proof-pass{color:#32764a!important;font-weight:700}#proofResult ol{font-size:12px;line-height:1.65;padding-left:20px;color:#4d6252}@media(max-width:760px){.review-flow-grid,.evaluation-strip,.proof-questions{grid-template-columns:1fr}.mountain-journey figcaption{flex-direction:column;gap:2px}.mountain-journey figcaption span{text-align:left;max-width:none}}
.mountain-shape{fill:#dbe9dc}.mountain-flag{fill:none;stroke:#bd6d55;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}.base-tent{fill:#f7d1a7;stroke:#a56f4c;stroke-width:1.4}#mountainClimber{fill:#315e4d;stroke:#315e4d;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.mountain-caption{display:flex;justify-content:space-between;gap:8px;color:#68816b;font-size:10px}.mountain-caption strong{color:#326a49;font-size:11px}.mountain-journey>p{margin:4px 0 0;font-size:10px;color:#708374;line-height:1.4}
/* Format and learning audit: readable paper, in-place help, visible evidence. */
[hidden]{display:none!important}.b1-term{appearance:none;display:inline;background:transparent!important;border:0;border-bottom:1px dotted #577b70;border-radius:0;padding:0;color:inherit;font:inherit;line-height:inherit;text-align:inherit;cursor:help;text-decoration:none}.b1-term:hover{background:#e9f2e9!important}.b1-term:focus-visible{outline:2px solid #4f8b6c;outline-offset:2px}.word-help-dialog{width:min(560px,94vw)}.word-help-dialog h2{font-size:30px;margin:12px 0}.word-help-dialog blockquote{margin:15px 0;padding:13px 17px;background:#edf4ec;border-left:3px solid #78a385;font-size:15px;line-height:1.6}.word-help-dialog small{display:block;color:#708478;margin-top:14px;font-size:11px}.word-help-dialog a{display:block;font-size:12px;margin-top:16px;color:#34764d}.word-help-actions{display:flex;flex-wrap:wrap;gap:8px}.choice-row{display:flex;gap:12px;align-items:center;border:1px solid #dbe3dc;border-radius:7px;padding:8px;background:white}.choice-row .choice{width:35px;min-width:35px;flex:none}.choice-copy{font-size:14px;line-height:1.5}.choicegrid.descriptive{grid-template-columns:1fr}.paper-question-list{margin-top:25px;border-top:2px solid #667461;padding-top:12px}.paper-question{margin:15px 0;line-height:1.6}.paper-question>b{margin-right:12px}.paper-options{padding-left:25px}.paper-options p{margin:4px 0;font-size:13px}.original-paper{height:min(76vh,940px);max-height:none}.answer-nav{margin-top:20px;font-size:12px;color:#d9e5df}.answer-nav summary{cursor:pointer;padding:10px 2px}.answer-nav-group{display:flex;flex-wrap:wrap;gap:5px;margin:9px 0}.answer-nav-group small{flex:0 0 100%;font-size:10px;color:#adbdc6}.answer-nav-group button{width:29px;height:29px;font-size:11px;color:#dbe7ed;border:1px solid #4a6276;background:transparent;border-radius:4px}.answer-nav-group button.answered{background:#466952;border-color:#63876f}.answer-nav-group button.current{outline:2px solid #eeb899;outline-offset:1px}.answer-nav-group button.uncertain{border-bottom:4px solid #e8b77b}.answer-nav-group button:disabled{opacity:.35}.flag-question{border:0;background:#f3f1e5;color:#817049;padding:6px 9px;border-radius:5px;font-size:11px;margin:0 0 12px}.session-bar{display:flex;justify-content:space-between;gap:10px;padding:11px 14px;background:#edf2ec;border-radius:8px;margin-bottom:15px;font-size:12px;line-height:1.5}.session-bar button,.revision-notice button{border:1px solid #769c80;background:white;border-radius:5px;font-size:11px;padding:6px 8px}.revision-notice{padding:12px;background:#fff0da;border:1px solid #ead5b5;border-radius:8px;margin-bottom:14px;font-size:12px;line-height:1.6}.teacher-rule{border-top:1px solid #cadfcf;margin-top:12px;padding-top:8px}.teacher-rule p:last-child{font-style:italic;background:#fffefa;padding:9px;border-radius:5px}.repair-task-detail{padding:14px 0;border-top:1px solid #e3e8df}.repair-task-detail>b{font-size:14px}.repair-task-detail label{display:block;font-size:12px;margin-top:10px;color:#536d5d}.repair-task-detail textarea{width:100%;min-height:70px;border:1px solid #cbd7cc;border-radius:6px;padding:9px;margin-top:5px}.repair-task-detail a{font-size:12px;color:#39764f}.repair-message{color:#a25c41}.repair-choices{display:flex;flex-wrap:wrap;gap:5px}.repair-choices .outline-btn{font-size:11px;white-space:normal;text-align:left}.review-question details{margin-top:10px;font-size:12px}.review-question summary{cursor:pointer;color:#3a7550}.repair-source{max-height:400px;overflow:auto;padding:16px;background:#fffefa;margin:10px 0;line-height:1.65}.repair-transcript,.draft-original{white-space:pre-wrap;line-height:1.7;font-family:inherit;font-size:13px;max-height:450px;overflow:auto}.activity-timeline{max-height:400px;overflow:auto;padding-left:19px;font-size:11px;line-height:1.6}.activity-timeline time{color:#829283}.writing-workbench{margin:15px 0!important}.writing-workbench>label{display:block;margin:16px 0 5px;font-size:13px}.writing-workbench textarea{width:100%;min-height:210px;border:1px solid #ced9ce;border-radius:8px;padding:14px;font-size:15px;line-height:1.65}.writing-workbench details{margin:12px 0;font-size:13px}.writing-workbench summary{cursor:pointer;color:#447851}.writing-rubric label{display:block;margin-top:10px;font-size:12px}.writing-rubric select{display:block;max-width:100%;width:100%;padding:8px;border:1px solid #ccd7cd;border-radius:5px}.writing-rubric textarea{min-height:90px}.writing-rubric input{accent-color:#477a51}.writing-workbench #revisionFeedback{font-size:12px;line-height:1.6}#studyUse label{display:block;margin-top:15px;font-size:12px}#studySentence{width:100%;min-height:85px;padding:10px;border:1px solid #c8d8ca;border-radius:7px;margin-top:7px}.backup-tools{padding:17px 0;margin:20px 0;border-top:1px solid #dce5dc;font-size:12px;color:#5e7666}.backup-tools summary{cursor:pointer}.backup-tools p{font-size:12px;margin:10px 0}.backup-tools input[type=file]{display:block;font-size:11px;max-width:100%;margin-top:6px}.backup-tools label{display:inline-block;vertical-align:top}.backup-tools button{margin-right:8px}#saveFailure{position:sticky;top:0;z-index:100;background:#fff0da;border:1px solid #bb7154;padding:12px;text-align:center;font-size:14px}.mission-day>a{display:block;color:#3a7650;margin-top:9px;font-size:11px}.mission-day>small{display:block;margin-top:8px;color:#92735c}.format-reference{margin:18px 0;font-size:12px;color:#63796a}.format-reference summary{cursor:pointer}.format-reference table{width:100%;border-collapse:collapse;margin:12px 0}.format-reference td,.format-reference th{text-align:left;padding:8px;border-bottom:1px solid #dce4d9}.study-glossary{margin:18px 0;background:#fffefa;border:1px solid #dee6dc;border-radius:10px;padding:16px;font-size:13px;line-height:1.65}.study-glossary summary{cursor:pointer;font-weight:700}.study-glossary table{border-collapse:collapse;width:100%;font-size:12px}.study-glossary td,.study-glossary th{padding:6px;border-bottom:1px solid #dce4d9;text-align:left}.independent-mode .b1-term{border:0;pointer-events:none}.independent-mode .session-bar{background:#edf0f2}@media(max-width:760px){.session-bar{flex-direction:column}.word-help-dialog .dialog-content{padding:27px 20px}.paper-body.original-paper{min-height:300px;height:58vh}.writing-workbench textarea{font-size:16px}.choice-row .choice{width:42px;min-width:42px;height:42px}.review-flow-grid{grid-template-columns:1fr}.format-reference{overflow-x:auto}.workmain{padding:18px 14px}.backup-tools .outline-btn{margin-top:9px}}

.welcome-start-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:17px}.teacher-rule[hidden]{display:none}.choice-copy{flex:1}.writing-workbench{scroll-margin-top:20px}.review-question{scroll-margin-top:20px}

.word-form-fact{display:block;margin-top:7px;color:#5c7862;font-size:11px;line-height:1.5}.partnav-item:disabled{opacity:.4;cursor:not-allowed}
/* Booklet hierarchy: restrained monochrome German paper, separate teaching controls. */
.paper-panel{background:#fff;border-radius:3px;border:1px solid #c8cdd2;box-shadow:0 3px 14px #1724360a}.paper-title-strip{background:#fff;color:#17202b;border-bottom:2px solid #333;padding:24px 30px 20px}.paper-title-strip h2{font-family:Arial,sans-serif;letter-spacing:0;font-weight:700}.original-paper{font-family:Arial,sans-serif!important;font-size:16px!important;line-height:1.65!important;color:#181818;background:white!important}.paper-question{break-inside:avoid;border-bottom:1px solid #dedede;padding:14px 0}.paper-options p{margin:3px 0}.choice{border-radius:3px}.choice.selected{outline:2px solid #273b50;outline-offset:1px}.model-teacher{border-top:1px solid #d5dfe0;margin-top:14px;padding-top:12px;font-size:13px}.model-teacher summary{cursor:pointer;font-weight:700}.model-teacher p{line-height:1.6;margin:10px 0}.model-teacher label{display:block;margin-top:12px}.model-teacher textarea,.model-teacher select{display:block;width:100%;margin:5px 0;padding:8px;border:1px solid #b9c6ca;border-radius:5px}.model-teacher button{margin:6px 5px 6px 0;border:1px solid #b9c6ca;border-radius:5px;padding:8px;background:white;color:#1d3856}.model-teacher code{overflow-wrap:anywhere}.model-teacher [hidden]{display:none!important}#teacherModelReply{white-space:pre-wrap;line-height:1.65;padding:10px 0}.setup-page{max-width:800px;margin:40px auto;padding:24px;line-height:1.7}.setup-page pre{overflow:auto;background:#edf1ee;padding:16px}.setup-page h2{margin-top:32px}
@media print{body{background:white}.topbar,.rail,.work-head,.mentor-panel,.welcome,.session-bar,.revision-notice,.audio-box,.panel-head,.transcript{display:none!important}.workspace,.workmain,.exam-layout{display:block!important;padding:0;margin:0}.paper-panel{border:0;box-shadow:none}.paper-body.original-paper{height:auto!important;max-height:none!important;overflow:visible!important}.word-help{border:0!important;color:inherit!important}.paper-title-strip{padding:0 0 15px}.paper-body{padding:20px 0!important}@page{size:A4;margin:18mm}}
