/* The AI Directory (tools/report_directory.py): hub, category and listing pages. */
.sec-directory .sec-k { color: #0a3d91; }
.dir-crumb { font: bold 11.5px/1.4 Arial, Helvetica, sans-serif; letter-spacing: .12em; text-align: center; margin: 4px 0 2px; }
.dir-crumb a { color: #555; text-decoration: none; }
.dir-crumb a:hover { text-decoration: underline; }
.dir-index { list-style: none; padding: 0; margin: 10px 0 18px; display: flex; flex-wrap: wrap; gap: 6px 14px; }
.dir-index li { font: bold 13px/1.4 Arial, Helvetica, sans-serif; }
.dir-index .n { color: #777; font-weight: normal; }
.dir-cat { border-top: 2px solid #000; margin: 22px 0 0; padding-top: 6px; scroll-margin-top: 12px; }
.dir-cat h2 { margin: 0; }
.dir-cat h2 a { color: inherit; text-decoration: none; }
.dir-cat h2 a:hover { text-decoration: underline; }
.dir-line { color: #555; margin: 2px 0 10px; }
.dir-grid { display: grid; gap: 14px 22px; grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr)); }
.dir-e { border-top: 1px solid #ddd; padding-top: 8px; min-width: 0; }
.dir-e h3 { font: bold 16px/1.25 Arial, Helvetica, sans-serif; margin: 0 0 2px; }
.dir-e h3 a { color: #000; }
.dir-site { font: 12px/1.3 Arial, Helvetica, sans-serif; color: #666; margin: 0 0 4px; overflow-wrap: anywhere; }
.dir-sum { margin: 0; line-height: 1.4; }
.dir-one { max-width: 680px; margin: 0 auto; }
.dir-site.big { font-size: 15px; text-align: center; margin: 0 0 14px; }
.dir-sum.big { font-size: 18px; line-height: 1.5; }
.dir-meta { color: #555; font-size: 13px; margin: 10px 0 0; }
.dir-cta { border: 1px solid #ccc; background: #f7f7f2; padding: 10px 14px; margin: 18px 0; }
.dir-cta p { margin: 0; }
.dir-others { margin: 22px 0 0; font-size: 14px; line-height: 1.7; }
