:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#233e34;background:#f5f5ee;font-synthesis:none;font-size:16px}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input{font:inherit}button{cursor:pointer;border:0;border-radius:8px;padding:14px 20px;background:#214f41;color:#fff;font-weight:600;transition:background .15s}button:hover{background:#306c58}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #b37d28;outline-offset:4px}a{color:inherit}h1,h2,h3{font-family:Georgia,serif;font-weight:400}h1{font-size:clamp(2.5rem,5vw,4.3rem);line-height:1.09;letter-spacing:-.045em;margin:14px 0 20px}h2{font-size:2rem;margin:12px 0 20px}h3{font-size:1.6rem}p{line-height:1.65}.brand{font-family:Georgia,serif;font-weight:700;font-size:2.5rem;text-decoration:none;letter-spacing:-.08em}.eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.16em;color:#637a67;margin-top:38px}.tag{font-size:.72rem;display:inline-block;background:#e7ebdf;border-radius:20px;padding:7px 13px;font-weight:600}.lede{font-size:1.1rem;color:#667769;margin-bottom:36px}.muted,small{color:#718075;font-size:.88rem}.plain{background:transparent;color:#315746;padding:10px 6px}.plain:hover{background:#e5eadd}.panel{padding:32px;background:#fffefa;border:1px solid #dfe4d8;border-radius:14px}.login{min-height:100vh;display:grid;grid-template-columns:1.2fr 1fr;gap:8vw;align-items:center;max-width:1200px;padding:8vh 50px;margin:auto}.intro>p{max-width:480px}.login .panel{max-width:410px;width:100%}.login .panel .eyebrow{margin-top:0}.login h1{font-size:clamp(3rem,5vw,5rem)}label{display:block;font-size:.85rem;font-weight:600;margin:24px 0 16px}input{display:block;background:#fff;border:1px solid #bdcbbc;border-radius:7px;padding:14px;width:100%;margin-top:8px;color:#233e34}.login form>button{width:100%;margin-top:10px}.layout{display:grid;grid-template-columns:235px 1fr;min-height:100vh}aside{border-right:1px solid #dce2d4;padding:34px 28px;display:flex;flex-direction:column;align-items:flex-start;background:#eef0e6;gap:22px}aside nav{display:grid;gap:10px;width:100%;margin-top:32px}aside nav button{text-align:left}aside>small{margin-top:auto;padding-top:50px;line-height:1.7}.content{width:100%;max-width:1140px;padding:32px 5vw 24px;margin:auto}header{display:flex;justify-content:space-between;border-bottom:1px solid #dce2d4;padding:4px 0 24px;font-size:.7rem;font-weight:600;letter-spacing:.08em;color:#718075;margin-bottom:40px}.hero{background:#214f41;color:#fbfbeb;display:flex;justify-content:space-between;align-items:center;padding:34px;border-radius:14px;gap:20px}.hero p{color:#c3d3c7;max-width:430px}.hero button{background:#dfbe80;color:#273f31}.hero .tag{background:#365f4e;color:#d9e4ce}.hero-word{font-family:Georgia,serif;font-size:3.2rem;font-style:italic;transform:rotate(-6deg);padding:25px}.hero-word span{display:block;font-size:1.1rem;text-align:center;margin-top:12px;color:#c3d3c7}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:24px 0 38px}.stats>div{border:1px solid #dce2d4;border-radius:10px;padding:22px}.stats strong{display:block;font-family:Georgia,serif;font-size:2rem;font-weight:400}.stats span{display:block;font-size:.8rem;color:#718075;margin-top:8px}.section-title{display:flex;align-items:center;justify-content:space-between}.section-title h2{font-size:1.6rem}.lesson{display:flex;align-items:center;gap:20px;text-align:left;background:#fffefa;color:#233e34;width:100%;border:1px solid #dfe4d8;padding:22px;margin:12px 0;border-radius:10px}.lesson:hover{background:#eaf0e3}.lesson small{display:block;margin-top:7px;font-weight:400}.lesson>span:last-child{margin-left:auto}.number{font-family:Georgia,serif;font-size:1.8rem;color:#83957b}.flashcard{max-width:700px;margin:40px auto;min-height:350px}.flashcard>h2{font-size:2.7rem;margin:36px 0}.flashcard form button{margin:10px 12px 0 0}.feedback>button{margin:12px 12px 0 0}blockquote{margin:24px 0;padding-left:18px;border-left:3px solid #d4bc80}.error{padding:14px 18px;background:#f5e5dc;border:1px solid #e1b4a0;border-radius:8px;color:#8a3929}.story{margin:28px 0}.sentence{display:block;width:100%;text-align:left;background:transparent;color:#233e34;padding:15px 18px;font-weight:400;font-size:1.08rem;line-height:1.65;border-bottom:1px solid #e1e5d9;border-radius:0}.sentence:hover{background:#e9eddf}.sentence small{display:block;margin-top:7px;color:#667769}.story+.panel{margin-bottom:28px}.panel>.eyebrow{margin-top:0}details{padding:20px 0}summary{cursor:pointer}footer{font-size:.72rem;color:#85907f;margin-top:56px;border-top:1px solid #dce2d4;padding-top:20px}@media(max-width:850px){.layout{grid-template-columns:1fr}aside{flex-direction:row;align-items:center;padding:18px 22px;gap:16px;border-right:0;border-bottom:1px solid #dce2d4;flex-wrap:wrap}aside .brand{font-size:2rem}aside nav{display:flex;order:3;margin:0;gap:12px}aside nav button{padding:10px 14px}aside>small{display:none}aside>button{margin-left:auto;font-size:.8rem}.content{padding:24px}header{margin-bottom:28px}.hero-word{display:none}.login{grid-template-columns:1fr;gap:32px;padding:40px 24px}.login .panel{max-width:none}.intro .eyebrow{margin-top:28px}.stats{gap:8px}.stats>div{padding:14px}.stats strong{font-size:1.6rem}.section-title{align-items:flex-start;gap:15px}.lesson{padding:18px 14px;gap:12px}.lesson>span:last-child{font-size:.75rem}.panel{padding:24px}.hero{padding:26px}.flashcard{margin-top:24px}}
