/* Static public navigation and source attribution; no dependency on JavaScript. */
.portal-directory { margin: 12px clamp(18px, 4vw, 56px) 40px; padding: 24px; border: 1px solid var(--line, #c4d1d5); border-radius: 16px; background: var(--paper-strong, #fff); color: var(--ink, #071a24); }
.portal-directory > p { max-width: 78ch; line-height: 1.8; }
.portal-directory-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px 32px; }
.portal-directory h2 { margin: 0 0 12px; font-size: 1.5rem; }
.portal-directory h3 { margin: 8px 0; font-size: 1.05rem; }
.portal-directory ul { list-style: none; margin: 0; padding: 0; }
.portal-directory a, .portal-directory a:visited { display: block; padding: 9px 0; color: var(--ink, #071a24); text-decoration: underline; text-underline-offset: 3px; line-height: 1.5; overflow-wrap: anywhere; }
.portal-directory a:hover { text-decoration-thickness: 2px; }
.portal-directory a:focus-visible, .portal-evidence a:focus-visible { outline: 3px solid #078fb2; outline-offset: 3px; border-radius: 3px; }
.portal-evidence { margin: 32px 0; padding: 24px; border: 1px solid var(--line, #c4d1d5); border-radius: 12px; color: inherit; background: transparent; line-height: 1.8; overflow-wrap: anywhere; }
.portal-evidence h2 { font-size: 1.25rem; margin: 0 0 12px; }
.portal-evidence h3 { font-size: 1rem; margin: 20px 0 8px; }
.portal-evidence p { max-width: 90ch; }
.portal-evidence .portal-evidence-sources { display: block; margin: 8px 0; padding-left: 1.5em; }
.portal-evidence .portal-evidence-sources li { margin: 8px 0; }
.portal-evidence a, .portal-evidence a:visited { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
body[data-content-kind="method-example"] .comparison-table-wrap { overflow-x: auto; }
body[data-content-kind="method-example"] .study-table { min-width: 680px; }
body[data-content-kind="method-example"] .study-table th:first-child,
body[data-content-kind="method-example"] .study-table td:first-child { min-width: 7.5rem; white-space: nowrap; }
@media (max-width: 850px) { .portal-directory-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 540px) { .portal-directory-grid { grid-template-columns: 1fr; gap: 16px; } .portal-directory { padding: 20px; } .portal-directory a { min-height: 44px; } }
