:root{--paper:#f6f5ef;--ink:#233b32;--muted:#67776c;--green:#255d48;--mint:#dce9dc;--line:#dedfd5;--white:#fffefa;--radius:24px}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:DM Sans,system-ui,sans-serif;font-size:16px;line-height:1.55}button,input,select{font:inherit}a,button,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:1px solid var(--line);border-radius:12px;padding:12px 20px;background:var(--white);color:var(--ink);font-weight:600;min-height:46px;transition:background .15s,transform .15s}button:hover:not(:disabled){background:#eaf0e5}button:active:not(:disabled){transform:translateY(1px)}button:disabled{cursor:wait;opacity:.55}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #a6883e;outline-offset:4px}a{color:inherit;text-decoration:none}h1,h2,p{margin-top:0}h1{font-family:Libre Baskerville,Georgia,serif;font-weight:400;font-size:clamp(32px,4.6vw,52px);line-height:1.22;letter-spacing:-1.5px;margin-bottom:20px}h2{font-size:19px;font-weight:600;letter-spacing:-.3px}input:not([type=checkbox]),select{width:100%;padding:13px 15px;border-radius:10px;border:1px solid #bfc9bc;color:var(--ink);background:var(--white);font-size:18px;min-height:50px}label{display:block;font-size:14px;font-weight:500;margin-bottom:20px}label input,label select{margin-top:8px}.shell{max-width:1080px;margin:auto;padding:0 40px}.masthead{gap:24px;min-height:112px;border-bottom:1px solid var(--line)}.brand,.masthead{display:flex;align-items:center}.brand{gap:12px;font-size:19px;letter-spacing:-.6px;font-weight:700}.brand-icon{background:var(--green);color:var(--paper);width:36px;height:36px;border-radius:12px 12px 12px 3px;display:inline-flex;align-items:center;justify-content:center;font-size:25px;gap:3px}.brand-icon span{color:#a9c5a7;transform:translateY(-3px)}.tagline{color:var(--muted);margin-left:auto}.masthead .text-button,.tagline{font-size:13px}.eyebrow{display:block;font-size:11px;letter-spacing:1.7px;text-transform:uppercase;font-weight:700;color:var(--green);margin-bottom:18px}.lede{color:var(--muted);font-size:18px;line-height:1.7;max-width:490px}.home-intro{display:flex;justify-content:space-between;align-items:flex-start;padding:58px 0 34px}.home-intro h1{max-width:590px}.home-intro .text-button{white-space:nowrap}.text-button{border:0;background:transparent;padding:8px 10px;text-decoration:underline;text-decoration-color:#a4b29e;text-underline-offset:5px;font-size:14px}.primary{background:var(--green);color:#fff;border-color:var(--green);width:100%;display:flex;justify-content:center;align-items:center;gap:28px;padding:15px 22px}.primary:hover:not(:disabled){background:#184735}.panel{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:32px}.dashboard{display:grid;grid-template-columns:1.05fr 1fr;gap:22px}.hero-stat{border-radius:var(--radius);background:var(--mint);padding:32px}.hero-stat>strong{display:block;font-size:90px;line-height:1.1;font-weight:500;letter-spacing:-6px;margin:12px 0 16px}.hero-stat>strong>span{font-size:22px;letter-spacing:-1px;color:#719174;margin-left:16px}.hero-stat p{font-size:14px;max-width:310px;margin-bottom:24px}.meter{height:6px;background:#bed3bc;border-radius:8px;overflow:hidden}.meter span{display:block;background:var(--green);height:100%}.small{font-size:12px!important}.hero-stat .small{margin-top:13px;margin-bottom:0;color:#526c56}.start-panel{display:flex;flex-direction:column;justify-content:center}.mini-stats{display:flex;justify-content:space-between;gap:10px;margin-bottom:30px}.mini-stats strong{display:block;font-size:33px;font-weight:500;line-height:1.2}.mini-stats span{font-size:11px;color:var(--muted)}.mode{display:flex;gap:9px;align-items:center;justify-content:center;margin:19px 0 0;font-size:13px}.mode input{accent-color:var(--green);width:17px;height:17px;margin:0}.start-panel .small{text-align:center;margin:6px 0 0}.muted{color:var(--muted)}.progress-section,.timeline-section{margin-top:40px}.ability-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.ability{padding:22px 18px 22px 0}.ability+.ability{padding-left:22px;border-left:1px solid var(--line)}.ability p{font-size:13px;margin-bottom:12px}.ability strong{font-size:30px;font-weight:500;display:block;line-height:1.1;margin-bottom:8px}.ability span{font-size:12px;color:var(--muted)}.future{display:flex;flex-direction:column;justify-content:center}.timeline{padding:0;list-style:none;margin:0}.timeline li{display:grid;grid-template-columns:90px 1fr 30px 125px;gap:15px;align-items:center;margin-bottom:15px;font-size:12px}.timeline small{color:var(--muted)}.timeline-track{height:6px;background:#e6e9df;border-radius:6px}.timeline-track i{display:block;height:100%;background:var(--green);border-radius:6px}.welcome{padding:70px 0;min-height:65vh}.signin{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:center}.signin h1{max-width:480px}.signin .panel h2{font-size:22px;margin-bottom:28px}.sample{margin-top:45px;display:flex;flex-direction:column;border-left:3px solid #c3d3bb;padding-left:22px;gap:4px}.sample>span:first-child{font-family:Georgia,serif;font-size:35px}.sample>span:nth-child(2){color:var(--muted);font-size:19px}.sample small{font-size:11px;letter-spacing:1px;text-transform:uppercase;margin-top:12px;color:var(--muted)}.settings{max-width:580px;margin:50px auto}.settings h1{font-size:32px}.practice-area{max-width:630px;margin:32px auto 60px}.practice-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.practice-top .eyebrow{margin:0}.flashcard{min-height:460px;text-align:center;padding:36px 45px}.flashcard .word{font-size:64px;margin:12px 0;overflow-wrap:anywhere}.meaning{font-size:27px;color:var(--muted);margin-bottom:32px}.example{text-align:left;padding:22px;background:#f2f4ec;border-radius:14px;margin:24px 0}.example .eyebrow{font-size:10px;margin-bottom:10px}.example p{font-size:16px;margin-bottom:8px}.example p:last-child{font-size:14px;color:var(--muted);margin-bottom:0}.verdict{font-size:16px;min-height:24px;color:var(--muted);margin-bottom:20px}.verdict.correct{color:var(--green)}.verdict.incorrect{color:#995b34}.prompt{font-family:system-ui,sans-serif;font-size:36px;letter-spacing:0;line-height:1.5;margin:30px 0 12px;overflow-wrap:anywhere}.options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:26px 0}.options button{padding:18px 10px;font-size:20px;font-weight:400}.button-row{display:flex;justify-content:center;gap:14px;margin-top:18px}.flashcard form input{text-align:center;font-size:25px;margin:12px 0 16px}.notice{background:#fbedd3;border:1px solid #e2c593;border-radius:16px;padding:18px 24px;margin:20px 0;color:#614f2b}.notice p{margin-bottom:0}.notice .button-row{justify-content:flex-start;flex-wrap:wrap}.notice .text-button{margin-top:8px}.finish{text-align:center}.finish h1{font-size:36px;margin-top:24px}.finish-icon{display:inline-grid;place-items:center;background:var(--mint);border-radius:50%;width:64px;height:64px;font-size:30px}.summary-numbers{display:flex;justify-content:center;gap:40px;margin:28px 0}.summary-numbers strong{display:block;font-size:40px;line-height:1.2}.summary-numbers span{display:block;font-size:12px;color:var(--muted)}.finish .text-button{margin-top:12px}.loading{padding:80px 0;text-align:center}.loading,footer{color:var(--muted)}footer{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);font-size:11px;margin-top:60px;padding:24px 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width:700px){.shell{padding:0 22px}.masthead{min-height:85px;gap:12px}.brand{font-size:16px;gap:8px}.tagline{display:none}.masthead .text-button{margin-left:auto}.home-intro{padding-top:38px;gap:12px}.home-intro h1{font-size:34px;letter-spacing:-1px}.home-intro>.text-button{font-size:12px;padding:4px 0}.lede{font-size:16px}.dashboard{grid-template-columns:1fr;gap:15px}.hero-stat{padding:26px}.hero-stat>strong{font-size:74px}.panel{padding:26px}.mini-stats{margin-bottom:24px}.ability-grid{grid-template-columns:1fr 1fr}.ability.future{grid-column:1/-1;border-left:0;padding:16px 0;border-top:1px solid var(--line)}.ability.future p{margin-bottom:4px}.timeline li{grid-template-columns:78px 1fr 20px;gap:10px}.timeline small{grid-column:2/4;margin-top:-10px}.signin{grid-template-columns:1fr;gap:35px;padding:40px 0}.sample{display:none}.welcome h1{font-size:38px}.flashcard{padding:26px 22px}.flashcard .word{font-size:54px}.practice-top{gap:6px}.practice-top .eyebrow{font-size:10px;letter-spacing:.8px}.button-row{gap:3px}.settings{margin:30px 0}.settings h1{font-size:30px}footer{margin-top:40px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.practice-mode{justify-content:flex-end;margin:0 0 12px}@media (max-width:700px){.start-panel{order:-1}}