:root { color-scheme:light dark; --bg:#fff; --fg:#202830; --muted:#536271; --line:#dae2e9; --accent:#175a83; --soft:#f3f6f8; }
* { box-sizing:border-box; }
body { margin:0; background:var(--bg); color:var(--fg); font-family:Georgia,'Times New Roman',serif; font-size:18px; line-height:1.7; }
main { max-width:860px; padding:52px 28px 32px; margin:auto; }
a { color:var(--accent); text-underline-offset:3px; }
a:focus-visible { outline:3px solid var(--accent); outline-offset:5px; }
.author-home,.status,.resources,.topics,footer { font-family:system-ui,sans-serif; }
.author-home { font-size:16px; }
header { margin-top:48px; padding-bottom:30px; border-bottom:1px solid var(--line); }
.status { color:var(--accent); font-size:14px; font-weight:600; line-height:1.6; }
h1 { font-size:clamp(29px,4.7vw,43px); line-height:1.2; letter-spacing:-.025em; margin:18px 0; overflow-wrap:break-word; }
.authors { color:var(--muted); font-size:17px; }
.resources { display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; }
.resources a { font-size:14px; border:1px solid var(--line); border-radius:5px; padding:8px 13px; text-decoration:none; }
.resources .primary { background:var(--accent); color:var(--bg); border-color:var(--accent); }
section { margin-top:32px; }
h2 { font-size:24px; margin:0 0 8px; }
p { margin:0 0 16px; }
.summary { font-size:20px; }
.topics { display:flex; flex-wrap:wrap; gap:8px; padding:0; margin:32px 0; list-style:none; }
.topics li { background:var(--soft); border-radius:4px; padding:3px 10px; color:var(--muted); font-size:14px; }
pre { background:var(--soft); border:1px solid var(--line); border-radius:6px; padding:20px; white-space:pre-wrap; overflow-wrap:anywhere; font-size:14px; line-height:1.65; }
footer { border-top:1px solid var(--line); margin-top:44px; padding-top:20px; font-size:14px; }
@media(prefers-color-scheme:dark) { :root { --bg:#151b21; --fg:#e4eaf0; --muted:#b0bdc9; --line:#364451; --accent:#8dc8ed; --soft:#202a33; } }
@media(max-width:520px) { main { padding:28px 20px; } header { margin-top:30px; } body { font-size:17px; } .summary { font-size:18px; } }
.project-figure,.project-table { margin:30px 0; }
.project-figure img { display:block; width:100%; height:auto; background:white; border:1px solid var(--line); border-radius:6px; }
figcaption { margin-top:10px; color:var(--muted); font-family:system-ui,sans-serif; font-size:14px; line-height:1.6; }
.table-scroll { overflow-x:auto; border:1px solid var(--line); border-radius:6px; }
.table-scroll:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
table { border-collapse:collapse; width:100%; font-family:system-ui,sans-serif; font-size:15px; font-variant-numeric:tabular-nums; }
caption { padding:16px; text-align:left; font-weight:600; color:var(--fg); background:var(--soft); }
th,td { padding:12px 16px; border-top:1px solid var(--line); text-align:left; vertical-align:top; }
thead th { color:var(--muted); font-size:14px; }
tbody th { font-weight:500; }
td { white-space:nowrap; }
.related-publication { border-top:2px solid var(--line); margin-top:40px; padding-top:26px; }
.related-publication h2 { line-height:1.3; }
.related-citation { margin-top:20px; }
.related-citation summary { cursor:pointer; color:var(--accent); font-family:system-ui,sans-serif; font-size:15px; }
