/* Research hub + study pages. Uses the site's theme tokens, so light and dark both work. */
.rs-h1{font-size:clamp(34px,7vw,88px)!important;line-height:1!important;letter-spacing:-.03em!important}
.rs-h1.is-study{font-size:clamp(26px,4.4vw,52px)!important;line-height:1.1!important;letter-spacing:-.015em!important;max-width:24ch}
.rs-ph{padding-bottom:clamp(24px,4vw,48px)!important}
.rs-ph .lead{margin-top:16px}

/* hub: intro, search, chips, cards */
.rs-sec .wrap>*:first-child{margin-top:0}
.rs-intro{font-size:clamp(16px,1.5vw,19px);margin:0 0 12px;max-width:62ch}
.rs-how{border:1px solid var(--line);padding:12px 16px;margin:0 0 20px;max-width:62ch}
.rs-how summary{cursor:pointer;font:600 15px var(--body);min-height:24px}
.rs-how p{margin:12px 0 0;color:var(--muted);font-size:15px;line-height:1.6}
.rs-bar{display:grid;gap:12px;margin:0 0 22px}
#rq{width:100%;font:500 16px var(--body);color:var(--ink);background:var(--surface);border:1px solid var(--ink);padding:14px 16px;border-radius:0;-webkit-appearance:none;appearance:none}
#rq:focus{outline:2px solid var(--accent);outline-offset:2px}
.rs-chips{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 8px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.rs-chips button{flex:0 0 auto;font:500 12.5px var(--mono);text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--ink);background:var(--surface);color:var(--ink);padding:10px 14px;cursor:pointer;min-height:44px;white-space:nowrap}
.rs-chips button[aria-pressed=true]{background:var(--accent);color:var(--on-accent,#06121a)}
.rs-count{font:500 12.5px var(--mono);color:var(--muted);text-transform:uppercase;margin:0}
.rs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0}
.rc{display:flex;flex-direction:column;gap:10px;border:1px solid var(--ink);background:var(--surface);padding:18px;text-decoration:none;color:inherit;box-shadow:5px 5px 0 var(--sh);transition:transform .25s,box-shadow .25s}
.rc:hover,.rc:focus-visible{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--accent)}
.rc[hidden]{display:none}
.rc-top{display:flex;justify-content:space-between;gap:10px;font:500 11px var(--mono);text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.rc h3{font-size:clamp(18px,1.5vw,21px);line-height:1.22;margin:0}
.rc-foot{margin-top:auto;font:500 12px var(--mono);text-transform:uppercase;letter-spacing:.04em;color:var(--accent-ink,var(--accent))}
.rs-empty{margin:24px 0;color:var(--muted)}
@media(max-width:1000px){.rs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.rs-grid{grid-template-columns:1fr;gap:12px}.rc{padding:16px;box-shadow:4px 4px 0 var(--sh);gap:8px}.rc h3{font-size:18px}}

/* study page: status, contents, reading */
.art{max-width:720px}
.rs-note{border:1px solid var(--line);margin:0 0 20px;background:var(--surface)}
.rs-note summary{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;padding:12px 14px;cursor:pointer;font-size:14px;color:var(--muted);list-style:none;min-height:44px}
.rs-note summary::-webkit-details-marker{display:none}
.rs-note summary:after{content:"Details +";margin-left:auto;font:500 11px var(--mono);text-transform:uppercase;color:var(--ink)}
.rs-note[open] summary:after{content:"Hide −"}
.rs-badge{font:500 11px var(--mono);text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--ink);padding:5px 9px;color:var(--ink)}
.rs-note p{margin:0;padding:0 14px 14px;font-size:14.5px;line-height:1.6;color:var(--muted)}
.toc{display:flex;gap:8px;overflow-x:auto;margin:0 0 26px;padding:2px 2px 8px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.toc a{flex:0 0 auto;border:1px solid var(--line);border-radius:99px;padding:9px 14px;font-size:13.5px;text-decoration:none;color:var(--ink);white-space:nowrap;min-height:40px;display:inline-flex;align-items:center}
.toc a:hover,.toc a:focus-visible{border-color:var(--accent)}
.art h2{font-size:clamp(22px,2.4vw,30px);line-height:1.15;margin:40px 0 12px;scroll-margin-top:92px}
.art p,.art li{font-size:17px;line-height:1.65;margin:0 0 14px;overflow-wrap:anywhere}
.art ul,.art ol{padding-left:22px;margin:0 0 18px}
.art a{text-decoration:underline}
.rs-back{margin-top:44px!important}
#rp{position:fixed;top:0;left:0;height:3px;width:0;background:var(--accent);z-index:100;pointer-events:none}
@media(max-width:620px){.art p,.art li{font-size:16.5px}.art h2{margin-top:32px}}
