:root{color-scheme:dark;--bg:#0d0d0e;--surface:#151516;--surface2:#1d1d1f;--fg:#e9e9ea;--muted:#a5a5a8;--stroke:#48484b;--link:#d7d7df}
:root[data-theme=light]{color-scheme:light;--bg:#f7f6f2;--surface:#fffefa;--surface2:#eff1f0;--fg:#26333e;--muted:#536370;--stroke:#b7c1c7;--link:#22597e}
*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font:15px/1.65 system-ui,Arial,sans-serif}a{color:var(--link);text-underline-offset:3px}a:hover{text-decoration-thickness:2px}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #9ca9b1;outline-offset:3px}.skip{position:absolute;top:-80px;left:8px;background:var(--surface);padding:10px;z-index:4}.skip:focus{top:8px}
.top{padding:15px clamp(18px,3vw,50px);border-bottom:1px solid var(--stroke);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px}.brand{font:18px/1.2 Georgia,serif;text-decoration:none;letter-spacing:.14em;color:var(--fg)}.brand span{color:var(--muted);letter-spacing:.04em}.top nav{display:flex;gap:17px;flex-wrap:wrap;font-size:13px}.top button,.search-line button,.math-grid button{background:var(--surface2);color:var(--fg);border:1px solid var(--stroke);border-radius:5px;padding:8px 14px;min-height:42px}
main{width:min(1320px,calc(100% - 36px));margin:auto}.hero{padding:62px 0 34px;border-bottom:1px solid var(--stroke)}.eyebrow{font:600 11px/1.5 system-ui;letter-spacing:.14em;color:var(--muted);text-transform:uppercase}.hero h1{font:normal clamp(54px,8vw,94px)/1.12 Georgia,'Times New Roman',serif;letter-spacing:-.035em;margin:9px 0 16px}.lead{font-size:clamp(16px,1.8vw,21px);max-width:950px;color:var(--fg);line-height:1.65}.panel{padding:32px 0;border-bottom:1px solid var(--stroke)}.section-head{display:flex;justify-content:space-between;align-items:end;flex-wrap:wrap;gap:12px}h2{font:normal clamp(26px,3vw,38px)/1.2 Georgia,serif;margin:4px 0 18px}h3{font:normal 23px/1.25 Georgia,serif;margin:0 0 7px}.muted{color:var(--muted);font-size:13px}.search-line{display:flex;gap:9px;margin:7px 0 15px}.search-line input{flex:1;min-width:0;font:19px/1.3 Georgia,serif}.search-line input,.options input,.options select,.math-grid input{background:var(--surface);color:var(--fg);border:1px solid var(--stroke);border-radius:6px;padding:11px 13px;min-height:44px}.search-line button{font-weight:600;padding-inline:23px}.options{display:grid;grid-template-columns:auto minmax(160px,1fr) auto minmax(160px,1fr);align-items:center;gap:10px;font-size:13px}.results{display:grid;gap:12px;margin-top:17px}.result-item,.empty{border:1px solid var(--stroke);background:var(--surface);padding:16px 19px;border-radius:7px}.result-item h3{font-size:22px}.result-item p{margin:6px 0}.result-item .kind{color:var(--muted);font:600 11px/1.6 system-ui;letter-spacing:.1em;text-transform:uppercase}.result-item nav{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:12px;font-size:13px}.term{font:19px/1.5 Georgia,serif}.methods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.methods article{border:1px solid var(--stroke);padding:20px;background:var(--surface);border-radius:7px;min-width:0}.methods article p{color:var(--muted);font-size:14px}.math-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:end;max-width:940px}.math-grid label{display:grid;gap:5px}.math-grid input{width:100%}#math-output{display:inline-block;background:var(--surface2);border:1px solid var(--stroke);padding:12px 22px;border-radius:7px;font:26px Georgia,serif}.resource-links{display:flex;flex-wrap:wrap;gap:12px 22px}footer{padding:24px 0 60px;color:var(--muted);font-size:12px}@media(max-width:800px){.methods{grid-template-columns:repeat(2,minmax(0,1fr))}.options{grid-template-columns:1fr 2fr}.math-grid{grid-template-columns:repeat(3,1fr)}.math-grid button{grid-column:1/-1}}@media(max-width:540px){.methods{grid-template-columns:1fr}.search-line{flex-wrap:wrap}.search-line input,.search-line button{flex-basis:100%}.options{grid-template-columns:1fr}.math-grid{grid-template-columns:1fr}.math-grid button{grid-column:auto}.top nav{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.top button,.search-line,.options,.math-grid button{display:none!important}body{background:white;color:black}.panel{break-inside:avoid}}
