.sg-page{max-width:1080px}.sg-intro{margin:12px 0 22px}.sg-intro h1{margin:4px 0 8px;font-size:clamp(2rem,5vw,3.2rem);letter-spacing:-.04em}.sg-intro>p:last-child{margin:0;color:#55634c;font-size:1.06rem}
.sg-game{max-width:760px;margin:0 auto;background:#f7f8f2;border:1px solid #ccd4c3;border-radius:20px;overflow:hidden;box-shadow:0 10px 40px #1c211a08}.sg-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;background:#edf1e7}.sg-modes{display:flex;gap:6px}.sg-modes button{border:1px solid #b7c4ab;border-radius:10px;padding:10px 17px;background:transparent;color:#36442d;font:inherit;font-weight:750;min-height:48px;cursor:pointer}.sg-modes button span{display:block;font-size:.73rem;font-weight:500;margin-top:2px}.sg-modes button[aria-pressed=true]{background:#1c211a;color:#e2f7a5;border-color:#1c211a}.sg-best{margin:0;font-size:.78rem;color:#55634c;text-align:right}.sg-best strong{display:block;font-size:1.45rem;color:#26351d;font-variant-numeric:tabular-nums}
.sg-stats{display:grid;grid-template-columns:repeat(4,1fr);padding:14px 20px 12px;text-align:center}.sg-stats span{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;color:#627157}.sg-stats strong{display:block;font-size:1.7rem;line-height:1.15;margin-top:4px;color:#1c211a;font-variant-numeric:tabular-nums}.sg-time-track{height:4px;background:#e1e8d9}.sg-time-track span{display:block;width:100%;height:100%;background:#617f3b}
.sg-board{padding:18px 24px 4px}.sg-board h2{text-align:center;font-size:1.16rem;margin:0 0 14px}.sg-readings{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sg-reading{background:#fff;border:1px solid #dce2d5;border-radius:12px;text-align:center;padding:11px 6px;min-width:0}.sg-reading>span{display:block;font-size:.76rem;line-height:1.4}.sg-reading b{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;color:white;margin-right:4px;font-size:.72rem}.sg-a{border-top:3px solid #a64e17}.sg-a b{background:#a64e17}.sg-b{border-top:3px solid #1a6870}.sg-b b{background:#1a6870}.sg-reading>strong{display:flex;justify-content:center;align-items:center;gap:5px;height:44px;font-size:2.2rem;line-height:1;font-variant-numeric:tabular-nums;color:#1c211a;margin-top:6px}.sg-fraction{display:inline-flex;flex-direction:column;align-items:center;font-size:.55em;line-height:1.05;vertical-align:middle}.sg-fraction span:first-child{border-bottom:1.5px solid currentColor;padding:0 3px 2px}.sg-fraction span:last-child{padding-top:2px}.sg-grid{display:block;width:min(100%,400px);height:auto;margin:12px auto 10px}.sg-main-label{font:700 11px system-ui,sans-serif;letter-spacing:.8px;fill:#3e5132}.sg-answers{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.sg-answers button{min-height:58px;border-radius:11px;border:1px solid #6f815f;background:#fff;color:#25331e;font-size:1rem;font-weight:800;letter-spacing:.03em;cursor:pointer;box-shadow:0 3px 0 #bdc9b1}.sg-answers button:hover:enabled{background:#e7f0da}.sg-answers button:active:enabled{box-shadow:none;translate:0 2px}.sg-answers button:disabled{opacity:.6;cursor:default;box-shadow:none}.sg-answers kbd{display:inline-block;font:600 .65rem system-ui,sans-serif;margin-left:5px;border:1px solid #c1cbb8;border-radius:3px;padding:1px 4px;color:#68775d}.sg-diagram-note{text-align:center;font-size:.75rem;color:#66745d;margin:11px 0 5px}.sg-feedback{margin:10px 24px 0;padding:13px 16px;background:#e9eedf;border-radius:11px;min-height:75px;color:#34442a}.sg-feedback strong{font-size:.95rem}.sg-feedback p{font-size:.87rem;line-height:1.5;margin:5px 0 0}.sg-feedback[data-result=incorrect]{background:#f5e9dd;color:#704025}.sg-feedback[data-result=correct]{background:#e4edda;color:#314f20}.sg-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;padding:15px 24px 0}.sg-actions button{min-height:46px}.sg-keyboard{text-align:center;font-size:.74rem;color:#66745d;margin:13px 15px 17px}.sg-game [hidden],.sg-results[hidden]{display:none!important}
.sg-results{max-width:760px;margin:24px auto;padding:28px;border:1px solid #c6d2b9;background:#eff4e7;border-radius:18px}.sg-results h2{margin:7px 0 20px;font-size:1.6rem}.sg-result-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;font-size:.78rem;color:#526247}.sg-result-stats strong{display:block;font-size:1.8rem;color:#21321b;margin-top:5px}.sg-save-note{font-size:.84rem;color:#526247}.sg-guide{max-width:760px;margin:38px auto}.sg-guide h2{font-size:1.65rem}.sg-guide h3{font-size:1.1rem;margin-top:25px}.sg-guide p{line-height:1.7;color:#4d5b44}.sg-guide .sg-source{font-size:.8rem}.sg-page .keep-going{max-width:760px;margin:25px auto}.sg-page button:focus-visible,.sg-page a:focus-visible{outline:3px solid #506d25;outline-offset:4px}
@media(min-width:700px){.sg-board{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;column-gap:20px}.sg-board h2{grid-column:1/-1}.sg-readings{grid-column:1;grid-row:2;grid-template-columns:1fr;gap:14px}.sg-grid{grid-column:2;grid-row:2;margin:0;width:100%}.sg-answers{grid-column:1/-1;margin-top:14px}.sg-diagram-note{grid-column:1/-1}.sg-reading>span{font-size:.78rem}.sg-reading>strong{font-size:2.3rem;height:48px}}
@media(max-width:480px){.sg-intro{margin-bottom:15px}.sg-intro>p:last-child{font-size:.92rem}.sg-top{padding:12px;gap:8px}.sg-modes button{padding:9px 12px;font-size:.9rem}.sg-best{font-size:.67rem}.sg-best strong{font-size:1.25rem}.sg-stats{padding:11px 8px}.sg-stats strong{font-size:1.5rem}.sg-stats span{font-size:.64rem}.sg-board{padding:14px 12px 2px}.sg-board h2{font-size:1rem;margin-bottom:10px}.sg-readings{gap:8px}.sg-reading{padding:8px 4px}.sg-reading>span{font-size:.63rem}.sg-reading b{width:16px;height:16px;font-size:.65rem;margin-right:1px}.sg-reading>strong{font-size:1.9rem;margin-top:4px;height:35px}.sg-grid{width:280px;max-width:100%;margin:7px auto}.sg-answers{gap:7px}.sg-answers button{min-height:52px;font-size:.88rem}.sg-answers kbd{display:none}.sg-feedback{margin:8px 12px 0;padding:11px 13px}.sg-feedback p{font-size:.8rem}.sg-results{padding:22px 18px}.sg-result-stats{gap:7px}.sg-result-stats strong{font-size:1.45rem}.sg-keyboard{font-size:.68rem}.sg-guide{margin-top:30px}}
.sg-results{scroll-margin-top:130px}
@media(prefers-reduced-motion:reduce){.sg-answers button:active:enabled{translate:none}}

.sg-game[data-mode=practice] #sgTimer{font-size:1rem;line-height:1.7}
