.research-paths { margin-block: 38px; padding: 26px; border: 1px solid #83713c; background: #1d180f; }
.research-paths > h2 { margin-top: 0; }
.research-paths > p { font-size: 17px; }
#path-controls { display: flex; flex-wrap: wrap; gap: 10px; margin-block: 22px 12px; }
#path-controls button { font: inherit; font-size: 16px; padding: 10px 15px; min-height: 44px; color: #efe5cb; background: transparent; border: 1px solid #b19a60; cursor: pointer; }
#path-controls button[aria-pressed="true"] { background: #efe5cb; color: #241b10; border-color: #efe5cb; }
.research-paths :focus-visible { outline: 3px solid #e9bd50; outline-offset: 4px; }
.path-status { color: #d6c9af; min-height: 1.6em; }
.path-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.path-grid section { min-width: 0; }
.path-grid h3 { font-size: 21px; margin: 14px 0; }
.path-grid ol { margin: 0; padding-left: 22px; }
.path-grid li { padding: 8px 0 13px 4px; font-size: 17px; }
.path-grid li::marker { color: #e9bd50; }
.path-grid span { display: block; color: #d6c9af; font-size: 15px; line-height: 1.6; margin-top: 7px; }
.path-grid a { text-underline-offset: 4px; overflow-wrap: anywhere; }
.path-grid:has(section[hidden]) { grid-template-columns: 1fr; }
.path-grid:has(section[hidden]) ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px; }
@media(max-width: 720px) { .research-paths { padding: 20px 18px; } .path-grid, .path-grid:has(section[hidden]) ol { grid-template-columns: 1fr; gap: 8px; } #path-controls button { flex: 1 1 190px; } }
@media print { #path-controls, .path-status { display: none !important; } .research-paths { color: #000; background: #fff; border-color: #555; } .path-grid span { color: #333; } .path-grid { display: block; } .path-grid section { break-inside: avoid; } }
