/* Interactive research exhibits. Deliberately scoped; the article themes stay independent. */
.earth-opening-grid:has(> .research-exhibit) { align-items:start; }
.research-exhibit { --exhibit-gold:#d7b87a; color:#f0ede5; align-self:start; min-width:0; margin-top:1rem; border:1px solid #384342; border-radius:10px; background:#0b1417; overflow:hidden; box-shadow:0 28px 70px #0003; }
.exhibit-heading { display:flex; justify-content:space-between; gap:1rem; align-items:center; padding:1rem 1.15rem; border-bottom:1px solid #ffffff16; }
.exhibit-heading span { color:#b6c4c3; font:9px/1.5 monospace; letter-spacing:.1em; }
.exhibit-heading span:first-child::before { content:''; display:inline-block; width:5px; height:5px; margin-right:8px; border-radius:50%; background:var(--exhibit-gold); box-shadow:0 0 12px #d7b87a77; }
.exhibit-stage { position:relative; isolation:isolate; aspect-ratio:1.2; background:radial-gradient(ellipse at 48% 35%,#28403f66,transparent 65%),linear-gradient(160deg,#121f25,#080d13 80%); cursor:grab; touch-action:pan-y; outline-offset:-4px; }
.exhibit-stage:active { cursor:grabbing; }
.exhibit-stage:focus-visible { outline:2px solid var(--exhibit-gold); }
.exhibit-stage canvas { position:absolute; inset:0; display:block; width:100%; height:100%; }
.exhibit-stage::after { content:''; position:absolute; inset:0; pointer-events:none; box-shadow:inset 0 0 65px #02070a55; }
.exhibit-annotation { position:absolute; z-index:1; left:1.15rem; top:1.1rem; pointer-events:none; }
.exhibit-annotation span { display:block; font:8px/1.5 monospace; letter-spacing:.12em; color:#a4bebd; }
.exhibit-annotation strong { display:block; color:#f0e7d5; font:400 1.2rem/1.3 'Anthropic Serif',Georgia,serif; margin-top:.35rem; }
.exhibit-drag { position:absolute; z-index:1; right:1rem; bottom:.9rem; color:#b9c7c7; font:8px/1.5 monospace; letter-spacing:.07em; pointer-events:none; }
.exhibit-toolbar { display:flex; flex-wrap:wrap; gap:.3rem; padding:.65rem .8rem; border-block:1px solid #ffffff16; background:#0b1216; }
.exhibit-modes { display:flex; gap:.25rem; margin-right:auto; }
.research-exhibit .exhibit-toolbar button { min-height:38px; border:1px solid transparent; padding:.5rem .65rem; border-radius:4px; color:#bdcac8; background:transparent; font:11px/1.3 'Anthropic Sans',sans-serif; cursor:pointer; }
.research-exhibit .exhibit-toolbar button[aria-pressed='true'] { color:#f0d49d; background:#d7b87a15; border-color:#d7b87a55; }
.research-exhibit .exhibit-toolbar button:hover { background:#ffffff0c; color:#fff; }
.research-exhibit button:focus-visible { outline:2px solid #f0d49d; outline-offset:2px; }
.research-exhibit .exhibit-toolbar button,.research-exhibit .exhibit-description,.research-exhibit .exhibit-description span,.research-exhibit .exhibit-description small { font-family:'Anthropic Sans',sans-serif!important; }
.research-exhibit .exhibit-heading span,.research-exhibit .exhibit-annotation span,.research-exhibit .exhibit-drag { font-family:monospace!important; }
.research-exhibit .exhibit-annotation strong { font-family:'Anthropic Serif',Georgia,serif!important; }
.research-exhibit .exhibit-toolbar button:disabled { opacity:.55; cursor:default; }
.research-exhibit .exhibit-description { margin:0; padding:.9rem 1.15rem; min-height:4.8em; color:#bdc9c8!important; font:11px/1.7 'Anthropic Sans',sans-serif; }
.exhibit-description small { display:block; color:#94aaa9; font-size:10px; margin-top:.25rem; }
.exhibit-expand { display:flex; gap:1rem; align-items:center; padding:.7rem 1.15rem; background:#0b1216; border-top:1px solid #ffffff16; color:#bdcac8; font:10px/1.5 monospace; }
.exhibit-expand[hidden] { display:none; }
.exhibit-expand input { flex:1; min-width:0; accent-color:#d7b87a; cursor:pointer; }
.exhibit-expand output { min-width:3ch; }
.research-exhibit[data-exhibit='universe'] .exhibit-stage { background:radial-gradient(ellipse at 50% 44%,#31223d70,transparent 66%),#070b14; }
.research-exhibit[data-exhibit='flood'] .exhibit-stage { background:radial-gradient(ellipse at 22% 7%,#8d928545,transparent 55%),linear-gradient(#20323c,#0d1c28 70%); }
.research-exhibit[data-exhibit='tafsir'] .exhibit-stage,.research-exhibit[data-exhibit='kings'] .exhibit-stage { background:radial-gradient(ellipse at 50% 36%,#6e503d3d,transparent 65%),linear-gradient(135deg,#1c1c1b,#0d1117); }
.research-placeholder-hero { min-height:0; padding-block:7rem 3rem; }
.research-placeholder-hero .page-hero-content { width:min(1440px,calc(100% - clamp(2.5rem,7vw,8rem))); max-width:none; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:start; }
.research-placeholder-hero .page-hero-content h1 { font-size:clamp(2.7rem,5.8vw,5.4rem); }
.research-placeholder-hero .research-exhibit { width:100%; }
@media(max-width:900px) { .earth-opening-grid:has(> .research-exhibit) { grid-template-columns:1fr; } .research-exhibit { width:min(100%,620px); margin:0 auto; } .research-placeholder-hero .page-hero-content { grid-template-columns:1fr; gap:2rem; } }
@media(max-width:480px) { .exhibit-heading { padding:.8rem; } .exhibit-heading span { font-size:8px; } .exhibit-stage { aspect-ratio:1; } .exhibit-annotation { top:.85rem; left:.85rem; } .exhibit-annotation strong { font-size:1.05rem; } .exhibit-toolbar { padding:.5rem; } .research-exhibit .exhibit-toolbar button { font-size:10px; padding:.45rem .5rem; } .research-exhibit .exhibit-description { padding:.8rem; } .exhibit-drag { font-size:7px; } }
@media(prefers-reduced-motion:reduce) { .research-exhibit * { scroll-behavior:auto; } }

/* Narrator labels follow their 3D nodes without depicting historical people. */
.exhibit-narrator { position:absolute; z-index:2; transform:translate(-50%,-50%); width:clamp(132px,34%,195px); padding:.55rem .35rem; text-align:center; pointer-events:none; background:#102126e8; border:1px solid #d7b87a65; border-radius:5px; color:#fff; }
.exhibit-narrator strong { display:block; font:500 clamp(11px,1.1vw,15px)/1.35 'Anthropic Sans',sans-serif!important; }
.exhibit-narrator small { display:block; margin-top:.2rem; font:10px/1.3 'Anthropic Sans',sans-serif!important; color:#d3dcda; }
.exhibit-narrator[hidden] { display:none; }
.research-exhibit[data-exhibit='hadith'] .exhibit-stage { aspect-ratio:1; }
.research-exhibit[data-exhibit='hadith'] .exhibit-annotation strong { font-size:1rem; }
