.page-research main { --research-heading-size:1.55rem; --research-panel-padding:32px; --research-section-gap:32px; }
.page-research .research-panel { min-width:0; padding:var(--research-panel-padding); margin:0 0 var(--research-section-gap); background:var(--soft); border:1px solid var(--line); border-radius:4px; }
.page-research .research-intro { padding:var(--research-panel-padding); margin-bottom:var(--research-section-gap); }
.page-research .research-section-title { color:var(--ink); font-size:var(--research-heading-size); font-weight:600; line-height:1.3; letter-spacing:-.015em; margin:0 0 12px; }
.page-research .research-section .section-note { font-size:15px; line-height:1.75; margin:0 0 24px; max-width:1050px; }
.page-research .research-content h3 { font-size:18px; line-height:1.35; }
.page-research .research-card:hover { box-shadow:none; border-color:#bdcbc7; }
.cmds-atlas { margin:0; padding:0; border:0; color:var(--ink); }
.cmds-atlas .atlas-eyebrow { margin:0 0 13px; color:var(--accent); font-size:10px; font-weight:600; letter-spacing:.15em; text-transform:uppercase; line-height:1.4; }
.atlas-heading { margin:0 0 24px; }
.page-research .atlas-heading .research-section-title,.page-research .atlas-explorer-heading .research-section-title { margin:0; }
.atlas-results-jump { font-size:12px; text-decoration:none; color:var(--accent); }
.atlas-results-jump:hover { text-decoration:underline; }
.atlas-stream-heading { display:flex; justify-content:space-between; align-items:center; margin:0 0 16px; gap:15px; }
.atlas-stream-heading h3 { font-size:11px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; margin:0; }
.atlas-stream-heading p { font-size:11px; color:var(--muted); margin:0; }
.atlas-streams { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.cmds-atlas button { font-family:inherit; cursor:pointer; color:var(--ink); }
.atlas-stream { border:1px solid var(--line); border-radius:4px; text-align:left; padding:20px; background:white; min-width:0; }
.atlas-stream:hover { border-color:#819c96; background:#f8faf8; }
.atlas-stream[aria-pressed="true"] { border-color:var(--accent); box-shadow:inset 3px 0 0 var(--accent); background:#f0f5f2; }
.atlas-stream-meta { display:flex; align-items:baseline; justify-content:space-between; margin-bottom:13px; }
.atlas-stream-number { color:var(--muted); font-size:10px; letter-spacing:.08em; }
.atlas-stream-count { font-size:25px; font-weight:500; color:var(--accent); line-height:1; }
.atlas-stream-count small { font-weight:400; font-size:10px; color:var(--muted); margin-left:5px; }
.atlas-stream-title { display:block; font-size:16px; line-height:1.35; font-weight:600; margin-bottom:8px; }
.atlas-stream-description { display:block; color:var(--muted); font-size:12px; line-height:1.65; min-height:40px; }
.atlas-explorer-heading { display:flex; align-items:baseline; justify-content:space-between; gap:24px; margin:0 0 24px; }
.atlas-results-jump { flex-shrink:0; }
.atlas-tools { background:var(--paper); border:1px solid var(--line); border-radius:4px; padding:20px; margin:0 0 24px; }
.atlas-controls { display:flex; align-items:center; gap:17px; flex-wrap:wrap; }
.atlas-search-label { flex:1 1 230px; min-width:0; }
#map-search { width:100%; font-family:inherit; font-size:12px; padding:10px 12px; border:1px solid #cbd5d2; border-radius:3px; background:white; color:var(--ink); }
.atlas-status-label { display:flex; align-items:center; gap:8px; font-size:11px; color:var(--muted); }
#map-status { font-family:inherit; font-size:11px; color:var(--ink); padding:9px 23px 9px 10px; border:1px solid var(--line); border-radius:3px; background:var(--soft); max-width:230px; }
.cmds-atlas #map-reset { font-size:11px; color:var(--accent); border:0; background:transparent; padding:7px 0; }
.atlas-timeline { display:flex; align-items:center; gap:15px; padding:18px 0 12px; }
.cmds-atlas #map-play { width:30px; height:30px; display:grid; place-items:center; border:0; border-radius:50%; color:white; background:var(--ink); font-size:10px; flex-shrink:0; }
.atlas-slider-wrap { flex:1; min-width:0; }
#map-year { width:100%; display:block; cursor:pointer; accent-color:var(--accent); margin:0; height:15px; }
.atlas-year-labels { display:flex; justify-content:space-between; margin:5px 4px 0; color:var(--muted); font-size:10px; }
#map-year-output { font-size:11px; color:var(--accent); min-width:80px; text-align:right; }
.atlas-summary { display:flex; justify-content:space-between; align-items:start; gap:17px; padding-bottom:0; font-size:11px; color:var(--muted); }
.atlas-summary p { margin:0; line-height:1.8; }
.atlas-summary strong { color:var(--ink); font-weight:600; }
.cmds-atlas #map-download { font-size:11px; color:var(--accent); padding:0; border:0; background:transparent; white-space:nowrap; }
.cmds-atlas #map-download:hover { text-decoration:underline; }
.atlas-layout { display:grid; grid-template-columns:minmax(0,1fr); align-items:start; gap:24px; }
.atlas-threads { min-width:0; }
.atlas-paper-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 26px; }
.atlas-categories { display:flex; flex-wrap:wrap; gap:7px; padding:0 0 14px; border-bottom:1px solid var(--line); }
.atlas-categories button { font-size:11px; border:1px solid var(--line); background:white; border-radius:3px; padding:7px 10px; }
.atlas-categories button[aria-pressed="true"] { color:white; background:var(--accent); border-color:var(--accent); }

.map-graph-instruction { font-size:11px; color:var(--muted); line-height:1.7; margin:13px 0 7px; }
.map-graph-summary { color:var(--accent); font-size:11px; margin:0 0 10px; }
.map-graph-scroll { min-width:0; background:var(--paper); border:1px solid var(--line); border-radius:4px; overflow-x:auto; overflow-y:hidden; scrollbar-width:thin; scrollbar-color:#c5d1cd white; }
#research-map-svg { display:block; width:100%; min-width:1080px; height:auto; }
.map-node { cursor:pointer; outline:none; }
.map-node:hover .node-circle,.map-node:focus-visible .node-circle { stroke-width:3px; }
.map-node:focus-visible text { font-weight:700; }
.map-mobile-hint { display:none; color:var(--muted); font-size:11px; margin:8px 0; }
.map-legend { display:flex; flex-wrap:wrap; gap:12px 21px; margin:10px 0 0; font-size:10px; color:var(--muted); }
.map-legend span { display:inline-flex; align-items:center; gap:7px; }
.map-legend i { display:block; width:7px; height:7px; border:1px solid currentColor; border-radius:50%; }
.map-topic-details { margin-top:19px; color:var(--accent); font-size:12px; }
.map-topic-details summary { cursor:pointer; }
#map-topic-directory { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:20px; margin:20px 0 0; }
.map-topic-group h4 { font-size:10px; font-weight:600; letter-spacing:.04em; margin:0 0 12px; text-transform:uppercase; }
.map-topic-group button { border:0; background:transparent; padding:4px 0; width:100%; text-align:left; display:block; font-size:11px; line-height:1.6; }
.map-topic-group button span { color:var(--muted); }
.map-topic-group button:hover,.map-topic-group button[aria-pressed="true"] { color:var(--accent); text-decoration:underline; }
.atlas-results { background:var(--paper); border:1px solid var(--line); border-radius:4px; padding:24px; min-width:0; scroll-margin-top:100px; }
.atlas-results .atlas-eyebrow { margin-bottom:8px; font-size:9px; }
.atlas-results h3 { margin:0 0 8px; font-size:20px; line-height:1.3; font-weight:600; letter-spacing:-.3px; }
#map-result-count { font-size:11px; color:var(--muted); margin:0 0 17px; line-height:1.6; }
.atlas-selection { display:flex; flex-wrap:wrap; gap:5px; margin-bottom:12px; }
.atlas-selection:empty { display:none; }
.atlas-selection button { border:1px solid #c4d2c8; border-radius:3px; font-size:10px; padding:4px 7px; background:white; color:var(--accent); text-align:left; }
.atlas-paper { padding:16px 0; border-top:1px solid var(--line); }
.atlas-paper-meta { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:0 0 8px; color:var(--muted); font-size:10px; }
.atlas-paper-status { background:#e5ede8; padding:1px 5px; border-radius:2px; color:#4c6860; font-size:9px; }
.atlas-paper-status.review { background:#eee9df; color:#7d694a; }
.atlas-paper h4 { margin:0 0 7px; font-size:13px; line-height:1.5; font-weight:600; }
.atlas-paper h4 a { color:var(--ink); text-decoration:none; }
.atlas-paper h4 a:hover { color:var(--accent); text-decoration:underline; }
.atlas-paper-journal { color:var(--muted); margin:0 0 9px; font-size:11px; line-height:1.7; }
.atlas-paper-ai { border-left:2px solid #9bb3a5; padding-left:9px; margin:9px 0; font-size:11px; color:#536a5f; line-height:1.7; }
.atlas-paper-links { display:flex; gap:14px; color:var(--accent); font-size:10px; }
.atlas-paper-links a { text-decoration:none; }
.atlas-paper-links a:hover { text-decoration:underline; }
.cmds-atlas #map-show-more { width:100%; padding:10px; border:1px solid #bfcdc4; border-radius:3px; background:white; color:var(--accent); font-size:11px; margin-top:10px; }
.atlas-empty { color:var(--muted); font-size:12px; padding:15px 0; line-height:1.7; }
.atlas-source-details { border-top:1px solid var(--line); margin:24px 0 0; padding-top:16px; font-size:12px; color:var(--muted); }
.atlas-source-details summary { cursor:pointer; color:var(--accent); }
.atlas-source-note { color:var(--muted); font-size:11px; line-height:1.8; margin:12px 0 0; max-width:1050px; }
.cmds-atlas [hidden] { display:none !important; }
.cmds-atlas button:disabled { cursor:default; opacity:.45; }
.cmds-atlas button:focus-visible,.cmds-atlas input:focus-visible,.cmds-atlas select:focus-visible,.map-graph-scroll:focus-visible { outline:2px solid #72959a; outline-offset:3px; }
.visually-hidden { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@media(max-width:1100px) { .atlas-layout { grid-template-columns:minmax(0,1fr); }.atlas-paper-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 25px; }.atlas-stream { padding:18px; } }
@media(max-width:800px) { .page-research main { --research-panel-padding:24px; --research-section-gap:24px; } }
@media(max-width:780px) { .atlas-streams { grid-template-columns:repeat(2,minmax(0,1fr)); }.atlas-explorer-heading { flex-direction:column; align-items:start; gap:13px; }.atlas-status-label { flex:1; }.atlas-search-label { flex-basis:100%; }.atlas-summary { font-size:10px; } }
@media(max-width:520px) { .page-research main { --research-heading-size:22px; --research-panel-padding:18px; }.atlas-stream-heading { flex-direction:column; align-items:start; gap:6px; }.atlas-streams { grid-template-columns:1fr; }.atlas-stream { padding:18px; }.atlas-stream-title { font-size:16px; }.atlas-stream-description { font-size:12px; min-height:0; }.atlas-stream-count { font-size:23px; }.atlas-stream-count small { font-size:10px; }.atlas-tools { padding:16px; }.atlas-categories { gap:6px; }.atlas-categories button { padding:7px 8px; font-size:10px; }.atlas-paper-list { grid-template-columns:1fr; }.atlas-results { padding:18px; }.atlas-summary { flex-direction:column; gap:8px; }.atlas-controls { gap:12px; }.atlas-search-label { flex-basis:100%; }.atlas-status-label { flex:1 1 100%; }.atlas-timeline { display:grid; grid-template-columns:30px minmax(0,1fr); gap:12px; align-items:center; }#map-year-output { grid-column:2; justify-self:end; } }
@media print { .atlas-controls,.atlas-timeline,.atlas-categories,#map-download,#map-reset,#map-show-more { display:none; }.atlas-layout { grid-template-columns:1fr; }.atlas-results { position:static; } }

@media(max-width:1250px) { .map-mobile-hint { display:block; } }
@media(max-width:1100px) { #map-topic-directory { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:600px) { #map-topic-directory { grid-template-columns:repeat(2,minmax(0,1fr)); }.map-legend { gap:10px 14px; } }
@media print { .map-graph-scroll { overflow:visible; }#research-map-svg { min-width:0; }.map-topic-details,.map-mobile-hint { display:none; } }
