.tool-directory {clear: both; width: 100%; margin-top: 28px; padding-bottom: 24px; color: var(--site-text, #172033);}
.tool-directory-icon-defs {position: absolute; width: 0; height: 0; overflow: hidden; pointer-events: none;}
.tool-directory-grid {--tool-directory-columns: 4; display: grid; grid-template-columns: repeat(var(--tool-directory-columns), minmax(0, 1fr)); gap: 14px; align-items: start;}
.tool-directory-grid.is-masonry {grid-auto-rows: 1px; row-gap: 0;}
.tool-directory-grid.is-masonry > .tool-directory-card {align-self: start;}
.tool-directory-card {min-width: 0; padding: 16px 17px 12px; background: var(--site-surface, #fff); border: 1px solid var(--site-border, #e1e7ef); border-radius: 9px;}
.tool-directory-card h3 {display: flex; align-items: center; gap: 9px; font-size: 15px; font-weight: 650; line-height: 1.4; margin: 0 0 9px; overflow-wrap: anywhere;}
.tool-directory-card h3 svg {width: 20px; height: 20px; flex: 0 0 20px; fill: none; stroke: var(--site-muted, #667085); stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round;}
.tool-directory .tool-directory-description {max-width: none; margin: 0 0 9px; padding: 0; color: var(--site-muted, #667085); font-size: 12px; line-height: 1.7; overflow-wrap: anywhere;}
.tool-directory-list {list-style: none; padding: 0; margin: 0;}
.tool-directory-list li {margin: 0; padding: 0;}
.tool-directory-link {display: block; color: var(--site-accent, #2563eb); font-size: 13px; line-height: 1.5; padding: 6px 0; border-radius: 4px; overflow-wrap: anywhere; text-decoration: none;}
.tool-directory-link:hover {text-decoration: underline; text-underline-offset: 3px;}
.tool-directory-more {margin-top: 5px;}
.tool-directory-more summary {padding: 6px 0; cursor: pointer; color: var(--site-muted, #667085); font-size: 12px; line-height: 1.6;}
.tool-directory-more[open] summary {margin-bottom: 5px;}
.tool-directory :is(a, summary):focus-visible {outline: 2px solid var(--site-accent, #2563eb); outline-offset: 3px;}
.home-page .tool-directory {margin-top: 0; padding-bottom: 0;}
@media (max-width: 1079px) {
    .tool-directory-grid {--tool-directory-columns: 3; gap: 12px;}
}
@media (max-width: 760px) {
    .tool-directory-grid {--tool-directory-columns: 2; gap: 12px;}
}
@media (max-width: 520px) {
    .tool-directory-grid {gap: 10px;}
    .tool-directory-card {padding: 13px 12px 9px;}
    .tool-directory-card h3 {font-size: 13px; gap: 6px;}
    .tool-directory-card h3 svg {width: 18px; height: 18px; flex-basis: 18px;}
    .tool-directory-link {min-height: 44px; display: flex; align-items: center; font-size: 12px;}
    .tool-directory-more summary {min-height: 44px; display: list-item; padding: 10px 0; font-size: 12px;}
}
@media (max-width: 350px) {
    .tool-directory-grid {--tool-directory-columns: 1;}
    .tool-directory-link, .tool-directory-card h3 {font-size: 14px;}
}
@media (pointer: coarse) {
    .tool-directory-link, .tool-directory-more summary {min-height: 44px;}
}
