
:root{--g:#1f6f43;--g2:#e8f3ec;--ink:#1d2327;--mut:#5b646b;--line:#dde3e6;--warn:#8a5a00}
*{box-sizing:border-box}body{margin:0;font:17px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:#fbfcfb}
a{color:var(--g)}header.top{background:#fff;border-bottom:1px solid var(--line)}
.wrap{max-width:900px;margin:0 auto;padding:0 18px}
.nav{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:12px 0;flex-wrap:wrap}
.brand{font-weight:800;color:var(--ink);text-decoration:none}.nav a{font-size:15px}
.hero{background:linear-gradient(180deg,#eef7f1,#fbfcfb);padding:36px 0 18px}
h1{font-size:32px;line-height:1.2;margin:.2em 0 .4em}h2{font-size:24px;margin-top:1.6em}h3{font-size:19px}
.btn{display:inline-block;background:var(--g);color:#fff!important;text-decoration:none;font-weight:700;padding:13px 22px;border-radius:8px;border:0;cursor:pointer;font-size:17px}
.btn.alt{background:#fff;color:var(--g)!important;border:2px solid var(--g)}
.card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px;margin:16px 0}
.buy{border:2px solid var(--g);background:var(--g2)}
.price{font-size:34px;font-weight:800}.mut{color:var(--mut);font-size:15px}
.note{background:#fff8e6;border:1px solid #f0d99a;color:#5c4200;padding:10px 14px;border-radius:8px;font-size:15px}
.q{background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px;margin:14px 0}
.q p.stem{font-weight:600;margin:0 0 10px}.q label{display:block;padding:8px 10px;border:1px solid var(--line);border-radius:7px;margin:6px 0;cursor:pointer}
.q label:hover{background:#f4f8f5}.q input{margin-right:8px}
.q .ex{display:none;margin-top:10px;padding:10px;border-radius:7px;background:#f3f6f8;font-size:15px}
.q.done .ex{display:block}.q label.right{border-color:#2e8b57;background:#eaf7ef}.q label.wrong{border-color:#c0392b;background:#fdeeee}
.score{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line);padding:10px 0;font-weight:700}
ul.cols{columns:3;padding-left:18px}@media(max-width:640px){ul.cols{columns:2}h1{font-size:26px}}
footer{margin-top:40px;border-top:1px solid var(--line);background:#fff;padding:20px 0;font-size:14px;color:var(--mut)}
table{border-collapse:collapse;width:100%}td,th{border:1px solid var(--line);padding:6px 8px;text-align:left;font-size:15px}
