/* Research Desk is a local administrator surface; uses the existing design tokens. */
.research-toolbar{display:flex;align-items:center;gap:1.3rem;flex-wrap:wrap;margin:1rem 0 1.5rem}
.research-toolbar .chip{margin-left:auto}
.research-banner{display:flex;align-items:center;justify-content:space-between;gap:2rem;background:linear-gradient(135deg,#102936,#11221e);overflow:hidden}
.research-banner h2{font-size:clamp(1.65rem,3vw,2.6rem);line-height:1.14;margin:.65rem 0 1rem}
.research-banner p{max-width:75ch}
.research-mascot{width:220px;height:175px;object-fit:cover;border-radius:14px;flex-shrink:0}
.research-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.research-card{display:flex;flex-direction:column;gap:.65rem;min-width:0}
.research-card .button{align-self:flex-start;margin-top:auto}
.research-card h3,.research-card p{margin:0}
.research-code{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font:12px/1.7 ui-monospace,monospace;max-height:680px;overflow:auto;padding:1rem;border:1px solid #304044;border-radius:8px;background:#09131c;color:#d5e6e8}
.research-compare{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:1.25rem;align-items:start}
.research-compare>*{min-width:0}.research-prose{max-height:700px;overflow:auto;padding-right:.8rem}
.research-prose p{overflow-wrap:anywhere}.research-finding{margin:1rem 0}.research-finding summary{cursor:pointer;line-height:1.6}
.research-lines{overflow:hidden}.research-line{display:grid;grid-template-columns:48px minmax(0,1fr);gap:1rem;padding:.2rem 0;border-bottom:1px solid #192a32}
.line-number{color:#86b4bd;font:11px/1.7 ui-monospace,monospace;text-align:right}.source-text{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.7 ui-monospace,monospace}
.research-line:target{background:#1a393c}.source-figure{display:block;max-width:100%;height:auto;background:#fff;padding:.6rem;margin:.6rem 0;border-radius:5px}
.research-banner code,.research-compare code{overflow-wrap:anywhere}
@media(max-width:1000px){.research-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.research-compare{grid-template-columns:1fr}}
@media(max-width:640px){.research-grid{grid-template-columns:1fr}.research-mascot{display:none}.research-banner{padding:1.3rem}.research-toolbar{gap:.8rem}.research-toolbar .chip{margin-left:0}.research-line{grid-template-columns:32px minmax(0,1fr);gap:.5rem}.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

.research-banner--memory{display:block}.research-banner--memory h2{max-width:30ch}.research-banner--memory .notice{margin:1.2rem 0;max-width:85ch}
