:root{color-scheme:light;--ink:#182c25;--green:#244e3e;--paper:#fffef7;--cream:#f5f3e9;--line:#d2d4c4;--mute:#506054;--sun:#f5c957;--serif:"Iowan Old Style","Palatino Linotype",Georgia,serif;font:16px/1.5 "DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--cream)}
*{box-sizing:border-box}body{margin:0;min-height:100vh}[hidden]{display:none!important}button,input{font:inherit;color:inherit}button,summary{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,.choice:has(:focus-visible){outline:3px solid #a86a0a;outline-offset:4px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.mast{border-bottom:1px solid var(--line)}.mast-inner{max-width:1080px;margin:auto;min-height:68px;padding:0 30px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;font-weight:750;letter-spacing:-.04em;font-size:21px}.book{width:25px;height:23px;border:2px solid var(--green);border-radius:2px 5px 3px 2px;background:linear-gradient(90deg,var(--green) 0 5px,transparent 5px);transform:rotate(-6deg)}.exam,.eyebrow,.cover-bottom,.topic{font:650 .72rem/1.35 "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.1em}.exam{background:#ece9db;border:1px solid #dbd9c9;border-radius:5px;padding:5px 8px;white-space:nowrap}.layout{max-width:1080px;margin:48px auto;padding:0 30px}.login{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,8vw,96px);align-items:center}.cover{background:#194232;color:#fff8db;position:relative;overflow:hidden;border-radius:5px 18px 18px 5px;box-shadow:5px 7px 0 #e1d9bc,6px 8px 0 #b3ac91;min-height:480px;display:flex;flex-direction:column;justify-content:space-between}.binding{position:absolute;inset:0 auto 0 10px;width:5px;border-inline:1px solid #ffffff2a}.cover-text{padding:44px 36px 0}.eyebrow{margin:0 0 14px}.cover .eyebrow,.cover-bottom{color:#ebce7a}.cover h1,.login-form h2,.notebook h2,#summary h1{font-family:var(--serif);font-weight:500;letter-spacing:-.05em;line-height:1.03}.cover h1{font-size:clamp(43px,5.4vw,73px);margin:0}.cover-meta{color:#ecedde;margin:18px 0 0}.cover-meta span{padding:0 4px;color:var(--sun)}#curve{width:100%;height:160px;display:block;opacity:.92}.cover-bottom{border-top:1px solid #ffffff38;padding:12px 30px;display:flex;justify-content:space-between}.login-form{max-width:370px}.login-form h2{font-size:43px;margin:0}.login-form>p:not(.eyebrow):not(.error){color:var(--mute);margin:14px 0 28px}.login-form label{display:block;font-weight:650;margin-bottom:7px}.login-form input{width:100%;padding:13px 15px;border:1px solid #919a89;background:var(--paper);border-radius:7px;min-height:49px;margin:0 0 12px}
.primary,.secondary{border-radius:7px;min-height:47px;padding:10px 18px;border:1px solid var(--green);font-weight:650}.primary{color:white;background:var(--green)}.primary span{margin-left:12px}.primary:hover:enabled{background:#183a2d}.primary:disabled{background:#e2e5d9;color:#627163;border-color:#ced2c5;cursor:default}.secondary{background:var(--paper)}.login-form .primary{width:100%}.text-button{border:0;background:transparent;color:var(--mute);text-decoration:underline;text-underline-offset:4px;font-size:.9rem;padding:10px 2px;min-height:44px}.error,.problem{color:#8b3528}.work{display:grid;grid-template-columns:245px minmax(0,1fr);gap:25px;align-items:start}.notebook{border:1px solid var(--line);border-top:5px solid var(--green);border-radius:8px;background:#eeeede;padding:23px 20px}.notebook h2{font-size:36px;margin:0}.note-title>p:last-child{margin:4px 0 20px;color:var(--mute)}.count{display:flex;justify-content:space-between;font-size:.88rem}.notebook .eyebrow{margin-bottom:6px}progress{display:block;appearance:none;width:100%;height:7px;border:0;border-radius:6px;overflow:hidden;margin:8px 0 15px;background:#d4d8c3;color:var(--green)}progress::-webkit-progress-bar{background:#d4d8c3}progress::-webkit-progress-value{background:var(--green)}progress::-moz-progress-bar{background:var(--green)}summary{font-weight:650;padding:8px 0;min-height:44px}#numbers{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;padding-bottom:10px}#numbers button{min-height:37px;background:var(--paper);border:1px solid var(--line);border-radius:5px}#numbers .done{background:#d7e3ca}#numbers [aria-current=true]{outline:2px solid var(--green);outline-offset:-2px;font-weight:800}.paper{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:clamp(20px,4vw,42px);box-shadow:0 3px 0 #e5e3d5}.paper-top{display:flex;align-items:center;gap:12px;justify-content:space-between}.paper-top .eyebrow{margin:0;color:var(--green)}.topic{letter-spacing:0;text-align:right;color:var(--mute);font-weight:500}.paper h1{font:500 clamp(22px,2.4vw,30px)/1.34 var(--serif);letter-spacing:-.018em;margin:20px 0 24px}.paper h1:focus{outline:none}fieldset{padding:0;border:0;margin:0;display:grid;gap:9px}.choice{background:#fffef9;border:1px solid var(--line);border-radius:8px;display:flex;align-items:center;gap:12px;padding:10px 13px;min-height:48px;cursor:pointer}.choice input{position:absolute;opacity:0;width:1px;height:1px}.letter{display:grid;place-items:center;min-width:26px;height:26px;border:1px solid #bfc6b7;border-radius:50%;font:600 .78rem ui-monospace,monospace}.choice:has(:checked){background:#f9edc8;border-color:#a98032}.choice.correct{border-color:#568064;background:#e9f1e3}.choice.wrong{border-color:#b37764;background:#fbede6}.choice.locked{cursor:default}.choice small{margin-left:auto;color:var(--ink);text-align:right;font-weight:650}.actions{display:flex;align-items:center;gap:20px;margin-top:24px}.feedback,.confirm{margin-top:20px;border-left:3px solid #729071;padding:12px 15px;background:#f0f3e8}.feedback p,.confirm p{margin:0}.feedback .eyebrow{margin-bottom:6px}.next{margin-top:18px}.problem{max-width:660px;padding:10px 20px;margin:20px auto;background:#fff5e8;border:1px solid #d6b7a5;border-radius:8px}#loading{text-align:center;margin:60px}#stats{display:flex;gap:12px;margin:24px 0}#stats div{flex:1;border:1px solid var(--line);border-radius:6px;text-align:center;padding:10px}#stats strong{font:32px var(--serif);display:block}
@media(max-width:740px){.mast-inner{min-height:54px;padding:0 18px}.layout{margin:22px auto;padding:0 15px}.login,.work{display:block}.cover{min-height:0;margin:0 2px 28px 0}.cover-text{padding:20px 24px 0}.cover h1{font-size:36px}.cover h1 br{display:none}.cover h1 br:after{content:" "}.cover h1{max-width:330px}.cover-text .eyebrow{margin-bottom:7px}.cover-meta{margin:8px 0}.cover-bottom{padding:7px 21px}.cover canvas#curve{position:absolute;right:-9px;bottom:32px;width:41%;height:72px;opacity:.5}.login-form{max-width:none}.login-form h2{font-size:32px}.login-form>p:not(.eyebrow):not(.error){margin:8px 0 16px}.notebook{padding:12px 15px;margin-bottom:14px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;border-top-width:3px}.notebook h2{font-size:25px}.notebook .eyebrow,.note-title>p:last-child{display:none}.note-progress{min-width:100px;align-self:center}.note-progress progress{margin:3px 0}.notebook details{grid-column:1}.notebook summary,.notebook .text-button{font-size:.83rem}.notebook .text-button{align-self:start}.notebook nav#numbers{grid-template-columns:repeat(5,minmax(29px,1fr))}.paper{padding:21px 16px}.paper h1{margin:16px 0}.actions{margin-top:16px}.eyebrow{font-size:.68rem}.confirm button{margin-top:8px}.paper-top{gap:6px}.cover .cover-text h1 br{display:initial}}@media(min-width:741px){.work{margin-top:40px}}@media(max-width:360px){.layout{padding:0 10px}.paper{padding:16px 12px}.topic{max-width:46%}}
