.research-page figure{margin:0}
.research-page :is(article,section,nav,details)[id]{scroll-margin-top:28px}
.research-page p{line-height:1.85}
.research-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28px,4.5vw,64px);align-items:center;padding:65px 0 42px}
.research-intro p{max-width:68ch}
.research-intro .research-lead{font-size:1.125rem;color:var(--ink);line-height:1.7}
.research-visual img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;box-shadow:0 8px 24px rgba(21,63,112,.1)}
.research-hero-image{width:100%;justify-self:stretch}
.research-index{display:flex;flex-wrap:wrap;gap:8px 26px;padding:20px 0;border-block:1px solid var(--line)}
.research-index a{display:flex;align-items:center;min-height:44px;color:var(--ink);font-size:.875rem;line-height:1.5}
.research-index a:hover{text-decoration:underline;text-underline-offset:5px}
.research-position{padding:42px 0 48px;max-width:1000px}
.research-position h2,.research-section-intro h2{font-size:clamp(1.7rem,2.6vw,2.25rem);line-height:1.2;max-width:32ch}
.research-position p{max-width:87ch}
.research-trace{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:28px}
.research-trace>div{border-left:2px solid var(--red);padding-left:16px}
.research-trace span{display:block;font:.75rem/1.6 Consolas,'Courier New',monospace;color:var(--muted);margin-bottom:7px}
.research-trace strong{font-size:.9375rem;line-height:1.6;font-weight:600;color:var(--ink)}
.research-dossier{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.35fr);gap:clamp(28px,6vw,84px);padding:48px 0;border-top:1px solid var(--line)}
.research-dossier-heading h2{font-size:clamp(1.5rem,2.3vw,2rem);line-height:1.25;max-width:25ch;letter-spacing:-.025em}
.research-dossier-heading>p{font-size:.9375rem;max-width:38ch}
.research-dossier-body{min-width:0;max-width:73ch}
.research-dossier-body>p{font-size:1rem;margin:0 0 20px}
.research-dossier-body a:not(.source-ref){text-decoration:underline;text-underline-offset:3px}
.research-result-line{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;padding:20px 0;margin:20px 0;border-block:1px solid var(--line);font-size:1.1rem;color:var(--ink)}
.research-result-line strong{letter-spacing:.035em}
.research-result-line>span[aria-hidden]{color:var(--red)}
.research-page .source-ref{font-size:.75rem;white-space:normal;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.research-page details{min-width:0}
.research-page summary{cursor:pointer;color:var(--ink);line-height:1.55;min-height:44px;padding:14px 0;font-size:.9375rem;font-weight:600}
.research-page summary::marker{color:var(--red)}
.research-page details p{font-size:.9375rem;margin:0 0 18px}
.research-detail{border-top:1px solid var(--line);margin-top:24px}
.research-inline-image{width:100%;margin-top:25px!important}
.research-hash,.research-glossary{border-top:1px solid var(--line);padding:48px 0}
.research-section-intro{max-width:77ch;margin-bottom:25px}
.research-hash-copy{display:grid;grid-template-columns:1fr 1fr;gap:35px}
.research-hash-copy p{margin:0 0 20px;font-size:.96875rem}
.hash-experiment{background:rgba(255,255,255,.24);border-block:1px solid var(--line);padding:26px 24px;margin:10px 0 30px}
.hash-inputs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}
.hash-inputs>div{min-width:0}
.hash-inputs label{display:block;font-weight:600;font-size:.875rem;color:var(--ink);margin-bottom:9px}
.hash-inputs input{display:block;width:100%;min-width:0;min-height:46px;padding:10px 12px;border:1px solid #91aec3;background:rgba(255,255,255,.5);font:inherit;color:var(--ink);border-radius:0}
.hash-inputs input:disabled{opacity:1;color:var(--ink)}
.hash-caption{display:block;font-size:.75rem;color:var(--muted);margin:18px 0 9px}
.hash-value{display:block;font:clamp(.875rem,1.3vw,1rem)/1.8 Consolas,'Courier New',monospace;overflow-wrap:anywhere;word-break:break-all;color:var(--ink);min-height:3.6em;letter-spacing:.025em}
.hash-value mark{background:#f4c7c6;color:#761321;padding:0}
.hash-actions{display:flex;gap:12px 24px;flex-wrap:wrap;margin:20px 0}
.hash-actions button{border:0;border-bottom:1px solid currentColor;border-radius:0;background:transparent;box-shadow:none;color:var(--ink);font-family:inherit;font-size:.875rem;font-weight:600;line-height:1.5;min-height:44px;padding:8px 0;cursor:pointer;text-align:left}
.hash-actions button:disabled{cursor:default;opacity:.5}
.hash-instruction,.hash-note{font-size:.8125rem;line-height:1.7!important;margin:15px 0 0}
.hash-status{font-size:.96875rem;font-weight:600;color:var(--ink);margin:16px 0 0;min-height:1.85em}
.hash-meaning{display:grid;grid-template-columns:1fr 1fr;gap:35px}
.hash-meaning h3{font-size:1rem;line-height:1.5;margin-bottom:8px}
.hash-meaning p{font-size:.9375rem;margin:0}
.glossary-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 40px;align-items:start}
.glossary-grid details{border-top:1px solid var(--line)}
.glossary-grid summary{padding:17px 0}
.glossary-grid details p{padding-left:18px}
.research-person{display:grid;grid-template-columns:minmax(0,190px) minmax(0,1fr);gap:45px;align-items:center;border-top:1px solid var(--line);padding:44px 0}
.research-person .research-portrait{width:100%;max-width:190px}
.research-person .research-portrait img{display:block;aspect-ratio:2/3;object-fit:contain}
.research-person-copy{max-width:75ch;min-width:0}
.research-person-copy h2{font-size:clamp(1.4rem,2.1vw,1.875rem);line-height:1.3;max-width:30ch}
.research-person-copy p{font-size:.96875rem}
.research-closing-line{color:var(--ink);font-weight:600}
@media(max-width:1000px){.research-hero{gap:28px}.research-dossier{gap:32px}.research-index{gap:2px 20px}}
@media(max-width:800px){.research-hero{grid-template-columns:1fr;padding-top:35px}.research-dossier{grid-template-columns:1fr;gap:12px;padding:36px 0}.research-dossier-heading h2{max-width:32ch}.research-dossier-heading>p{max-width:65ch}.research-dossier-body{max-width:none}.research-inline-image{margin-top:18px!important;margin-bottom:18px!important}.research-trace{gap:18px}.research-hash-copy{grid-template-columns:1fr;gap:0}.research-person{gap:28px}.research-person .research-portrait{max-width:170px}}
@media(max-width:650px){.research-person{grid-template-columns:1fr;gap:24px}.research-person .research-portrait{max-width:150px;justify-self:start}.research-hero{padding:32px 0}.research-intro .research-lead{font-size:1.0625rem}.research-index{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.research-index a{font-size:.8125rem}.research-position{padding:32px 0}.research-trace{grid-template-columns:1fr;gap:18px}.research-dossier-heading h2{font-size:1.6rem}.research-dossier-body>p{font-size:.96875rem}.research-hash,.research-glossary{padding:36px 0}.hash-inputs,.hash-meaning,.glossary-grid{grid-template-columns:1fr}.hash-inputs{gap:23px}.hash-experiment{padding:22px 16px;margin-inline:0}.hash-meaning{gap:20px}.hash-actions{gap:8px 20px}.hash-value{font-size:.9375rem}.research-result-line{font-size:1rem;gap:10px 14px}}
@media print{.research-hero,.research-dossier,.research-person,.research-hash-copy,.hash-meaning{display:block}.research-index,.hash-actions,.hash-inputs input,.hash-instruction{display:none}.research-visual{max-width:180px;break-inside:avoid}.research-dossier,.research-hash,.research-glossary{padding:24px 0}.research-dossier-heading{break-after:avoid}.research-detail,.glossary-grid details{break-inside:avoid}.research-person .research-portrait{max-width:130px}.hash-experiment{break-inside:avoid}}
