:root{--paper:#f7f8f1;--ink:#142b23;--forest:#173f32;--lime:#b9ed65;--muted:#51655b;--line:#d9ddd2}*{box-sizing:border-box}body{background:var(--paper);min-height:100vh;color:var(--ink);flex-direction:column;margin:0;font-family:Segoe UI,Arial,sans-serif;display:flex}a{color:inherit;text-decoration:none}a:focus-visible{outline-offset:4px;outline:3px solid #427b62}.shell{width:min(1180px,100% - 64px);margin-inline:auto}.skip-link{z-index:3;background:#fff;padding:12px;position:absolute;top:-100px;left:12px}.skip-link:focus{top:12px}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:84px;display:flex}.brand{letter-spacing:-.045em;align-items:center;font-size:22px;font-weight:800;display:inline-flex}.brand-mark{background:var(--forest);width:34px;height:34px;color:var(--lime);border-radius:50% 50% 50% 12%;place-items:center;margin-right:9px;font-size:16px;display:grid}.brand-domain{color:var(--muted)}.nav-link{border:1px solid var(--forest);border-radius:999px;align-items:center;gap:10px;padding:10px 18px;font-weight:650;display:inline-flex}.nav-link:hover{background:var(--forest);color:#fff}.home,.practice{flex:1}.hero{grid-template-columns:1fr .9fr;align-items:center;gap:clamp(32px,6vw,90px);padding-block:66px;display:grid}.hero h1,.practice h1{letter-spacing:-.075em;margin:0;font-size:clamp(54px,7vw,104px);font-weight:650;line-height:.98}.hero h1 em{color:#397b62;letter-spacing:-.075em;font:italic 400 1.03em/.98 Georgia,serif;display:block}.hero-copy p{max-width:370px;color:var(--muted);margin:25px 0 30px;font-size:18px;line-height:1.6}.primary-button{background:var(--forest);color:#fff;border-radius:7px;align-items:center;gap:28px;min-height:54px;padding:0 21px;font-weight:700;display:inline-flex}.primary-button span{color:var(--lime)}.primary-button:hover{background:#265744}.graph-art{background:var(--forest);min-width:0;height:clamp(320px,36vw,455px);color:var(--lime);border-radius:22px;position:relative;overflow:hidden}.graph-grid{background:linear-gradient(90deg,#0000 calc(50% - .5px),#bed7ac66 calc(50% - .5px) calc(50% + .5px),#0000 calc(50% + .5px)),linear-gradient(#0000 calc(70% - .5px),#bed7ac66 calc(70% - .5px) calc(70% + .5px),#0000 calc(70% + .5px)),repeating-linear-gradient(90deg,#ddf2c21c 0 1px,#0000 1px 27px),repeating-linear-gradient(#ddf2c21c 0 1px,#0000 1px 27px);position:absolute;inset:25px;overflow:hidden}.graph-curve{border:2px solid var(--lime);border-radius:50%;width:76%;height:185%;position:absolute;bottom:30%;left:12%}.graph-dot{background:var(--lime);border-radius:50%;width:10px;height:10px;position:absolute;top:calc(45% - 5px);box-shadow:0 0 0 5px #b9ed6533}.graph-dot-left{left:calc(22% - 5px)}.graph-dot-right{right:calc(22% - 5px)}.axis-x,.axis-y{color:#d8e8ce;font:italic 17px Georgia,serif;position:absolute}.axis-y{top:3px;left:calc(50% + 8px)}.axis-x{top:calc(70% + 7px);right:5px}.graph-equation{font:italic 24px Georgia,serif;position:absolute;bottom:36px;left:38px}.subjects{grid-template-columns:1fr 1fr;gap:18px;padding-bottom:58px;display:grid}.subject,.empty-state{border:1px solid var(--line);background:#fff;border-radius:17px}.subject{align-items:center;gap:16px;padding:20px;display:flex}.subject-icon{background:var(--lime);width:46px;height:46px;color:var(--forest);border-radius:12px;flex:0 0 46px;place-items:center;font-size:22px;font-weight:700;display:grid}.subject-icon-paper{background:#e5ede0}.subject h2{margin:0 0 5px;font-size:18px}.subject p,.empty-state p{color:var(--muted);margin:0;line-height:1.5}.practice{padding-block:60px}.practice h1{margin-bottom:30px;font-size:clamp(52px,7vw,82px)}.empty-state{text-align:center;justify-items:center;padding:52px 20px;display:grid}.empty-state h2{margin:18px 0 8px}.empty-state a{text-underline-offset:4px;margin-top:22px;font-weight:650;text-decoration:underline}.site-footer{border-top:1px solid var(--line);min-height:72px;color:var(--muted);justify-content:space-between;align-items:center;gap:12px;font-size:14px;display:flex}.footer-brand{color:var(--forest);font-weight:750}@media (max-width:760px){.shell{width:calc(100% - 36px)}.site-header{min-height:68px}.hero{grid-template-columns:1fr;padding-block:40px}.hero h1{font-size:clamp(46px,10vw,74px)}.graph-art{height:320px}.subjects{grid-template-columns:1fr;padding-bottom:38px}.practice{padding-block:40px}}.site-header nav{align-items:center;gap:8px;display:flex}.site-header nav form{margin:0}.nav-link,.primary-button{font:inherit;cursor:pointer;font-weight:700}button.nav-link{color:var(--forest);background:0 0}button.nav-link:hover{background:var(--forest);color:#fff}.login-shell{flex:1;place-items:center;padding:24px;display:grid}.login-card{border:1px solid var(--line);background:#fff;border-radius:20px;width:min(100%,430px);padding:clamp(24px,6vw,42px)}.login-card h1{letter-spacing:-.055em;margin:24px 0;font-size:36px;line-height:1.1}.login-form{gap:16px;display:grid}.login-form label{gap:7px;font-weight:650;display:grid}.login-form input{min-width:0;font:inherit;border:1px solid #81958a;border-radius:7px;padding:11px}.login-form p{color:#a32b32;margin:0}.login-form button{border:0;justify-content:space-between}
