*{box-sizing:border-box}body{margin:0;background:#f5f7f2;color:#273e35;font:16px/1.85 -apple-system,BlinkMacSystemFont,"Helvetica Neue",sans-serif}aside{position:fixed;inset:0 auto 0 0;width:240px;background:#183f35;color:#eaf0e5;padding:34px 25px}.mark{font:44px Georgia}.mark span{color:#c8da9e}aside h2{font:21px Georgia;margin-bottom:0}aside p{font-size:12px;color:#b8cbbb}aside small{position:absolute;bottom:28px;font-size:11px;color:#acc4b5}nav{display:grid;gap:12px;margin-top:45px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}nav button{border:0;background:transparent;color:#dbe6db;text-align:left;padding:12px;border-radius:8px}nav .active,nav button:hover{background:#335b4c}main{margin-left:240px;padding:28px 46px 80px;max-width:1440px}header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #dce4d5;padding-bottom:18px;font-size:12px;letter-spacing:1.5px}.eyebrow{margin-top:34px;color:#819271;font-size:13px}h1{font-size:31px;line-height:1.6;margin:10px 0}h2{font-size:23px}h3{font-size:18px}.muted{color:#73816e;font-size:13px}.courses{display:flex;gap:15px;margin:26px 0}.courses button{flex:1;border:1px solid #d8e2ce;background:#e9eee1;text-align:left;border-radius:12px;padding:18px 23px;color:#3f6147}.courses .active{background:white;border-color:#62845a}.courses span{display:block;font-size:12px;margin-left:34px;color:#778970}.card{background:#fff;border:1px solid #e0e6d9;border-radius:13px;padding:25px;margin:17px 0}.row{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}.badge{background:#edf3e4;border-radius:20px;padding:5px 12px;color:#678157;font-size:12px}.btn,.secondary{border:0;background:#285e46;color:white;border-radius:7px;padding:10px 17px}.secondary{background:#eef3e7;color:#3f654b;border:1px solid #dbe5d2}.active-rate{background:#285e46;color:white}select,input{border:1px solid #d6e0ce;border-radius:7px;padding:8px;background:#fff;max-width:100%}.controls{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.words{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.word{border-radius:8px;background:#f6f8f1;padding:15px}.word b{display:block;font-size:20px}.play{border:0;border-radius:50%;width:34px;height:34px;background:#e3edd8;color:#3b6041;float:right}.sentence{border-bottom:1px solid #ecf0e6;padding:13px 0}.sentence p{margin:0}.question{padding:20px 0;border-top:1px solid #e4eadd}.options{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.option{background:#fff;color:#36523c;border:1px solid #d5dfcc;padding:9px 14px;border-radius:7px}.selected{background:#e5efda;border-color:#64875b}.feedback{padding:12px;background:#eff5e8;border-radius:7px}.wrong{background:#fff0e8;color:#945235}textarea{width:100%;min-height:140px;border:1px solid #d4dfcb;border-radius:8px;padding:13px}a{color:#39734c}table{width:100%;border-collapse:collapse;font-size:14px;margin:18px 0}th,td{text-align:left;border:1px solid #dee7d4;padding:9px 12px}th{background:#f0f5e8}.markdown{overflow-wrap:anywhere}.markdown h2{font-size:21px;margin-top:27px}.markdown h3{font-size:18px}.markdown p{margin:12px 0}.table-wrap{overflow-x:auto}.stats{display:flex;gap:14px;flex-wrap:wrap}.stat{background:#e9f1df;padding:18px;flex:1;border-radius:9px}.stat b{display:block;font-size:29px}.notice{border-left:3px solid #b7cd91;padding-left:14px;font-size:14px}#toast{position:fixed;bottom:22px;right:22px;padding:12px 22px;background:#173f35;color:#fff;border-radius:8px;max-width:90vw}button:focus-visible,a:focus-visible{outline:3px solid #dcb65e;outline-offset:3px}details summary{cursor:pointer}pre{white-space:pre-wrap;font:inherit}.voice-buttons{display:flex;gap:6px;flex-wrap:wrap}.voice-buttons button{font-size:12px;padding:5px 10px}@media(max-width:900px){aside{position:relative;width:auto;padding:12px}.mark,aside h2,aside p,aside small{display:none}nav{display:flex;gap:5px;margin:0}nav button{padding:8px;font-size:13px}main{margin:0;padding:20px}.words{grid-template-columns:repeat(2,1fr)}.courses button{padding:12px}h1{font-size:25px}.card{padding:19px}.courses span{margin-left:0}}
