/* NEO AI hub — additive layer over research.min.css. No @import, no webfont:
   the origin CSP is default-src 'self' and font-src 'self', so an external font
   request is a blocked request and a layout that depends on it is a broken page. */
.hub .r-deck{max-width:70ch;font-size:17px;line-height:1.65;color:var(--ink-2,#b9c6e4);margin:10px 0 0}
.hub .r-vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hub .r-langwrap{display:inline-flex;align-items:center;margin:0 10px}
.hub .r-enonly{margin:14px 0 0;padding:9px 13px;border:1px solid rgba(255,255,255,.14);
  border-radius:10px;font-size:13px;color:var(--ink-2,#b9c6e4);background:rgba(255,255,255,.03)}
.hub .r-enonly b{font-family:var(--mono,monospace);font-size:10px;letter-spacing:2px;
  border:1px solid rgba(255,255,255,.22);border-radius:4px;padding:1px 5px;margin-right:8px}
.hub .r-cards{list-style:none;padding:0;margin:0;display:grid;gap:14px;
  grid-template-columns:repeat(auto-fit,minmax(268px,1fr))}
.hub .r-card a{display:block;height:100%;padding:18px 20px;border:1px solid rgba(255,255,255,.12);
  border-radius:14px;text-decoration:none;transition:border-color .25s,transform .25s}
.hub .r-card a:hover{border-color:rgba(120,175,255,.5);transform:translateY(-2px)}
.hub .r-card h3{margin:0 0 6px;font-size:17px;display:flex;align-items:center;gap:9px}
.hub .r-card p{margin:0;font-size:13.5px;line-height:1.55;color:var(--ink-3,#8b9bc0)}
.hub .r-badge{font-family:var(--mono,monospace);font-size:9.5px;letter-spacing:1.4px;
  border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:2px 7px;color:var(--ink-3,#8b9bc0)}
.hub .r-sec{margin:34px 0}
.hub .r-body h2{margin:30px 0 10px}
.hub .r-body h3{margin:22px 0 8px;font-size:17px}
.hub .r-body p,.hub .r-body li{max-width:74ch}
.hub .r-tw{overflow-x:auto;margin:14px 0}
.hub .r-tw table{border-collapse:collapse;width:100%;font-size:13.5px}
.hub .r-tw th,.hub .r-tw td{border:1px solid rgba(255,255,255,.11);padding:8px 11px;
  text-align:left;vertical-align:top}
.hub .r-tw caption{text-align:left;font-family:var(--mono,monospace);font-size:10.5px;
  letter-spacing:1.8px;text-transform:uppercase;color:var(--ink-3,#8b9bc0);padding-bottom:7px}
.hub .r-gloss dt{font-weight:600;margin:16px 0 4px;scroll-margin-top:90px}
.hub .r-gloss dd{margin:0;font-size:14px;line-height:1.6;color:var(--ink-2,#b9c6e4);max-width:74ch}
.hub .r-toc{border-left:2px solid rgba(255,255,255,.14);padding:2px 0 2px 14px;margin:22px 0}
.hub .r-toc p{font-family:var(--mono,monospace);font-size:10px;letter-spacing:2px;
  text-transform:uppercase;color:var(--ink-3,#8b9bc0);margin:0 0 6px}
.hub .r-toc ul{list-style:none;padding:0;margin:0}
.hub .r-toc li{font-size:13.5px;line-height:1.9}
.hub .r-toc li.l2{padding-left:14px}
.hub .r-cc{font-family:var(--mono,monospace);font-size:10.5px;padding:0 3px;border-radius:3px;
  border:1px solid rgba(255,255,255,.18);color:var(--ink-3,#8b9bc0)}
.hub .r-ccE{color:#9fe2ff}.hub .r-ccA{color:#bcd2ff}.hub .r-ccD{color:#ffd98a}.hub .r-ccO{color:#ff9fb0}
.r-redact{font-family:var(--mono,monospace);font-size:.92em;padding:0 5px;border-radius:4px;
  border:1px dashed rgba(255,255,255,.34);color:var(--ink-3,#8b9bc0);white-space:nowrap}
.hub .r-erratum{border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:18px 20px}
.hub .r-erratum h2{margin-top:0;font-size:18px}
.hub .r-meta{font-family:var(--mono,monospace);font-size:11px;letter-spacing:1.4px;
  color:var(--ink-3,#8b9bc0)}
.hub .r-sev-blocking{color:#ff9fb0}.hub .r-sev-medium{color:#ffd98a}
.hub .r-idlist{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:9px}
.hub .r-idlist li{border:1px solid rgba(255,255,255,.13);border-radius:999px;padding:5px 12px;font-size:13px}
.hub .r-cta{margin:22px 0}
.hub pre{overflow-x:auto;padding:13px 15px;border:1px solid rgba(255,255,255,.11);border-radius:10px;
  font-size:13px;line-height:1.55}
.hub blockquote{margin:18px 0;padding:12px 18px;border-left:3px solid rgba(120,175,255,.55);
  background:rgba(255,255,255,.03);border-radius:0 10px 10px 0}
.hub blockquote p{margin:0;font-size:16px}
html[dir="rtl"] .hub .r-toc{border-left:0;border-right:2px solid rgba(255,255,255,.14);
  padding:2px 14px 2px 0}
html[dir="rtl"] .hub blockquote{border-left:0;border-right:3px solid rgba(120,175,255,.55);
  border-radius:10px 0 0 10px}
