@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Lora:ital,wght@0,400;0,500;0,600;1,400&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#263f36;background:#f6f5ef;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.45}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #c49647;outline-offset:5px}header{max-width:1280px;margin:auto;padding:28px 45px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e2e4da}.brand{display:flex;gap:13px;align-items:center;text-decoration:none;font-family:Lora,Georgia,serif;font-size:26px;font-weight:600;letter-spacing:-1px}.brand-icon{display:flex;align-items:center;justify-content:center;border-radius:13px;background:#244e42;color:#f5f4e8;width:46px;height:46px;font-size:30px;font-style:italic;letter-spacing:-6px;padding-right:6px}.brand-icon span{font-size:23px;transform:translateY(5px)}.brand-sub{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:1.9px;margin-top:5px;color:#7b857c}.quiet{border:1px solid #dce0d6;background:transparent;padding:11px 16px;border-radius:9px;color:#58665c;display:flex;gap:8px;align-items:center}main{max-width:680px;margin:46px auto 36px;padding:0 20px}.intro{text-align:center;margin-bottom:31px}.eyebrow{font-size:10px;letter-spacing:2px;color:#637d66;display:inline-flex;align-items:center;gap:7px;font-weight:700}.eyebrow i,.dot{width:6px;height:6px;border-radius:50%;background:#769278;display:inline-block}h1{font-family:Lora,Georgia,serif;font-weight:400;font-size:42px;letter-spacing:-1.5px;margin:16px 0 10px}.intro p{font-size:14px;color:#8a8f83;margin:0}.practice-top{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1.6px;color:#778171;margin-bottom:19px}.practice-top>span:last-child{font-size:11px;letter-spacing:.3px}.dot{width:5px;height:5px;margin-right:5px}.card-stage{position:relative;perspective:1400px;margin:0 3px 24px;height:312px}.paper{position:absolute;inset:0;background:#e9eade;border:1px solid #d8ddcf;border-radius:18px}.paper-one{transform:translateY(10px) rotate(-1.5deg);margin:0 8px}.paper-two{transform:translateY(5px) rotate(1deg);margin:0 4px;background:#efeee4}.card{position:relative;width:100%;height:100%;border:0;background:transparent;padding:0;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.2,.7,.2,1);color:#263f36;border-radius:17px;box-shadow:0 12px 35px #263f3608}.card.flipped{transform:rotateY(180deg)}.card:disabled{opacity:1}.face{position:absolute;inset:0;border:1px solid #dce1d4;background:#fefef9;border-radius:17px;display:flex;align-items:center;justify-content:center;flex-direction:column;backface-visibility:hidden;-webkit-backface-visibility:hidden;padding:35px 35px 48px;overflow:auto}.front{background:radial-gradient(ellipse at 50% 100%,#f4f5e9,transparent 65%),#fefef9}.back{transform:rotateY(180deg);background:#eaf0e4}.card-language{font-size:10px;letter-spacing:2px;color:#7e8977;position:absolute;top:27px}.word{font-family:Lora,Georgia,serif;font-size:42px;line-height:1.25;overflow-wrap:anywhere}.word.long{font-size:23px;line-height:1.45}.flip-hint{position:absolute;bottom:25px;font-size:11px;color:#929789;letter-spacing:.3px}.flip-hint>span{font-size:17px;margin-right:5px}.word-detail{font-size:10px;text-transform:uppercase;letter-spacing:1.6px;color:#6d7e68;margin:12px 0 0}.example{font-family:Lora,Georgia,serif;font-style:italic;line-height:1.5;color:#74816a;font-size:13px;margin-top:14px;max-width:90%}.self-check{text-align:center;font-size:12px;color:#899080;margin:25px 0 19px}.actions{display:grid;grid-template-columns:1fr 1fr;gap:13px}.review{display:flex;align-items:center;gap:14px;text-align:left;padding:18px 21px;border-radius:11px;border:1px solid #dddccf;font-size:14px;font-weight:500;transition:transform .15s,background .15s}.review:hover:not(:disabled){transform:translateY(-2px)}.review small{display:block;font-size:10px;font-weight:400;margin-top:5px;opacity:.7}.again{background:#f1eee3;color:#867044}.remember{background:#244e42;color:#f4f6ec;border-color:#244e42}.thumb{width:23px;display:flex;align-items:center}.thumb svg{width:23px;height:23px;stroke:currentColor;fill:none;stroke-width:1.6}.review kbd{margin-left:auto;color:inherit;opacity:.5;border-color:currentColor}.session{display:flex;align-items:center;gap:28px;margin-top:31px;padding:22px 0;border-top:1px solid #e0e3d7;border-bottom:1px solid #e0e3d7}.stat-label{font-size:9px;letter-spacing:1.5px;color:#929886}.session p{margin:6px 0 0;font-size:11px;color:#8b9382}.session strong{font-size:21px;font-weight:500;color:#3d5847;margin-right:4px}.progress-wrap{flex:1;font-size:10px;color:#8b9382}.progress-track{height:4px;background:#e1e6d7;border-radius:10px;margin:8px 0 10px;overflow:hidden}#progress-bar{height:100%;background:#6f8b66;width:0;transition:width .3s}.text-button{border:0;background:none;color:#77816f;font-size:11px;padding:5px}.keyboard{text-align:center;color:#9aa08e;font-size:10px;margin-top:24px;display:flex;gap:8px;justify-content:center;align-items:center}kbd{font:10px 'DM Sans',sans-serif;border:1px solid #dce0d3;padding:2px 5px;border-radius:4px}.keyboard>span{margin:0 4px}.notice{text-align:center;min-height:16px;font-size:11px;color:#7c886e;margin:15px 0 0}footer{max-width:1190px;padding:21px 0;margin:0 auto;border-top:1px solid #e2e4da;display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#929986}footer>span{font:italic 13px Lora,Georgia,serif}footer>div{display:flex;align-items:center;gap:24px}footer a{text-decoration:none}footer .text-button{font-size:10px}dialog{border:1px solid #d9dfd1;background:#fafbf4;color:#314b3d;border-radius:18px;width:min(490px,calc(100% - 30px));padding:30px;max-height:90vh}dialog::backdrop{background:#233b31aa;backdrop-filter:blur(4px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:15px}h2{font:400 24px Lora,Georgia,serif;margin:0}.close{border:0;background:none;font-size:28px;color:#73816c;padding:0 4px}.muted,dialog p{font-size:13px;color:#7b8472;line-height:1.7}fieldset{padding:0;border:0;margin:25px 0}legend{font-size:12px;margin-bottom:12px;font-weight:600}.option{display:flex;gap:12px;align-items:center;border:1px solid #dce0d1;padding:14px;border-radius:9px;margin-bottom:9px;font-size:13px;cursor:pointer}input{accent-color:#244e42}.option small,.toggle-row small{display:block;font-size:11px;font-weight:400;color:#8b927f;margin-top:5px;line-height:1.5}.toggle-row{display:flex;align-items:center;justify-content:space-between;font-size:13px}.toggle-row input{width:20px;height:20px}.setting-note{font-size:11px}.done{width:100%;padding:13px;background:#244e42;color:#fff;border:0;border-radius:8px;margin-top:15px}.reset{display:block;border:0;background:none;color:#9c795e;margin:18px auto 0;font-size:11px}@media(max-width:650px){header{padding:20px}.brand{font-size:23px}.brand-sub{font-size:8px}.brand-icon{width:40px;height:40px}main{margin:32px auto 20px}h1{font-size:33px}.card-stage{height:300px}.face{padding-left:22px;padding-right:22px}.word{font-size:36px}.review{padding:16px 12px;gap:9px;font-size:13px}.review kbd{display:none}.session{gap:15px}.keyboard{font-size:9px;gap:5px}footer{margin:0 20px;padding:20px 0;gap:20px;align-items:flex-start}footer>div{flex-direction:column;align-items:flex-end;gap:8px}.quiet{padding:9px 11px}.word.long{font-size:20px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
