/* Source-first table directory. No editorial hero, sidebars or decorative CTA. */
.directory{padding-top:44px;padding-bottom:130px;min-height:calc(100vh - 155px)}
.directory-path{display:flex;gap:12px;align-items:center;font-size:10px;color:#93a096}
.directory-path a{color:#628071}.directory-path a:hover{text-decoration:underline}
.directory-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:34px 0 35px}
.directory-head h1{font-size:clamp(32px,3.7vw,49px);letter-spacing:-.06em;line-height:1.11;font-weight:740;margin:0;display:flex;align-items:center;gap:13px}
.directory-total{font:660 11px ui-monospace,Menlo,monospace;color:#5e846a;background:#ecf3ed;border:1px solid #dbe8dc;padding:6px 8px;border-radius:5px;letter-spacing:0}
.directory-head p{font-size:13px;color:#7a887f;margin:12px 0 0;line-height:1.6}
.directory-github{font-size:12px;font-weight:670;border-bottom:1px solid #aebfb1;color:#4d6a55;padding-bottom:5px;white-space:nowrap}
.directory-github:hover{color:#2c5538}
.directory-tools{display:flex;align-items:center;gap:13px;margin-bottom:20px}
.directory-search{background:white;display:flex;align-items:center;gap:11px;border:1px solid #dce4dd;border-radius:6px;height:43px;min-width:0;width:min(100%,460px);padding:0 12px;color:#819187}
.directory-search:focus-within{border-color:#77a389;box-shadow:0 0 0 3px #a2c5a029}
.directory-search input{font-size:13px;width:100%;min-width:0;flex:1;border:0!important;outline:0!important;background:none;color:#203127}
.directory-search input::placeholder{color:#a0aca2}
.directory-search kbd{display:grid;place-items:center;border-radius:3px;border:1px solid #e0e7e1;font:11px ui-monospace,Menlo,monospace;color:#95a69a;width:21px;height:22px}
.directory-filter{display:flex;gap:10px;align-items:center;white-space:nowrap;color:#7c8c81;font-size:11px}
.directory-filter select{font-size:12px;border:1px solid #dce4dd;background:#fff;border-radius:5px;padding:11px 29px 11px 11px;color:#3d5646}
.directory-results{margin-left:auto;color:#819083;font:11px ui-monospace,Menlo,monospace;white-space:nowrap}
.directory-table-scroll{width:100%}
.directory-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px}
.directory-table thead{background:#f2f5f2;color:#849188}
.directory-table th{padding:13px 17px;text-align:left;font-weight:650;border-top:1px solid #dfe6df;border-bottom:1px solid #dfe6df}
.directory-table th:nth-child(1){width:24%}
.directory-table th:nth-child(2){width:34%}
.directory-table th:nth-child(3){width:13%}
.directory-table th:nth-child(4){width:10%}
.directory-table th:nth-child(5){width:19%;text-align:right}
.directory-table tbody tr{background:#fff;border-bottom:1px solid #e4eae4;transition:background .15s}
.directory-table tbody tr:hover{background:#f2f7f2}
.directory-table tbody tr[hidden]{display:none}
.directory-table td{padding:20px 17px;vertical-align:middle;overflow-wrap:anywhere}
.directory-name{display:flex;align-items:center;gap:11px;white-space:normal;font-size:13px;color:#23362b}
.directory-name:hover{color:#478161}
.directory-name img{flex-shrink:0;border-radius:6px}
.directory-name strong{font-weight:700}
.directory-description{font-size:12px;color:#718175;line-height:1.55}
.directory-tag{font:11px ui-monospace,Menlo,monospace;color:#5c8066;padding:5px 8px;border-radius:3px;background:#edf3ee}
.directory-version{font:11px ui-monospace,Menlo,monospace;color:#708273}
.directory-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:18px;white-space:nowrap}
.directory-row-actions>a{color:#2e5240;font-size:12px;font-weight:690}
.directory-row-actions>a:hover{text-decoration:underline;text-underline-offset:3px}
.directory-row-actions button{background:transparent;border:0;padding:5px 0;color:#6c8674;font-size:11px;white-space:nowrap}
.directory-row-actions button:hover{color:#285d3d}
.directory-row-actions button span{margin-left:3px}
.directory-empty{padding:48px 20px;text-align:center;color:#6e8574;background:#fff;border-bottom:1px solid #e4eae4}
.directory-empty[hidden]{display:none}
.directory-empty p{font-size:14px;margin:0 0 15px}
.directory-empty button{border:0;background:transparent;text-decoration:underline;text-underline-offset:4px;color:#2b5a3c;font-size:12px}
.directory-foot{display:flex;justify-content:space-between;gap:15px;padding:15px 0;color:#94a399;font-size:10px}
.directory-help{margin-top:63px;padding-top:16px;border-top:1px solid #e1e7e1;display:flex;align-items:center;gap:20px;font-size:12px;color:#7c897f}
.directory-help a{font-weight:680;color:#4c7357;text-decoration:underline;text-underline-offset:4px}
@media(max-width:1024px){.directory-table th:nth-child(1){width:26%}.directory-table th:nth-child(2){width:30%}.directory-table th:nth-child(3){width:12%}.directory-table th:nth-child(4){width:12%}.directory-table th:nth-child(5){width:20%}.directory-table td{padding:17px 10px}.directory-table th{padding:12px 10px}.directory-row-actions{gap:12px;flex-wrap:wrap}}
@media(max-width:760px){.directory{padding-top:30px;padding-bottom:80px}.directory-head{align-items:start;margin:28px 0 27px;flex-direction:column;gap:16px}.directory-tools{flex-wrap:wrap}.directory-search{width:100%}.directory-results{margin-left:0}.directory-table thead{display:none}.directory-table,.directory-table tbody,.directory-table tr,.directory-table td{display:block;width:100%}.directory-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:13px;padding:16px;border:1px solid #e1e8e1;border-radius:6px;margin-bottom:10px}.directory-table td{padding:0!important}.directory-table td:nth-child(1){grid-column:1/-1}.directory-table td:nth-child(2){grid-column:1/-1}.directory-table td:nth-child(3){grid-column:1}.directory-table td:nth-child(4){grid-column:2;text-align:right}.directory-table td:nth-child(5){grid-column:1/-1;border-top:1px solid #edf0ed;padding-top:11px!important}.directory-row-actions{justify-content:flex-start}.directory-description{font-size:12px}.directory-name{font-size:15px}.directory-foot>span:last-child{display:none}}
@media(max-width:450px){.directory-search kbd{display:none}.directory-github{font-size:11px}.directory-tools{gap:11px}.directory-filter{flex:1}.directory-results{flex:none}.directory-head h1{font-size:36px}.directory-help{flex-wrap:wrap;gap:7px}}

/* Strengthen actionable text legibility in the dense table. */
.directory-description{color:#5b6e62}
.directory-row-actions button{color:#4b6d55}
.directory-foot{color:#6d8072}

/* Library polish: compact header, quiet search, single-purpose table. */
.library-view{display:flex;flex-direction:column;min-height:100svh}
.library-view main{flex:1}
.library-view .directory{min-height:0;padding-top:31px;padding-bottom:40px}
.library-view .directory-path{color:#a2aba3;font-size:9px;letter-spacing:.035em}
.library-view .directory-path a{color:#87988d}
.library-view .directory-head{display:block;margin:25px 0 25px}
.library-view .directory-head h1{font-size:clamp(33px,3.4vw,44px);line-height:1.12;letter-spacing:-.06em}
.library-view .directory-head p{margin:9px 0 0;font-size:13px;color:#6f7e73}
.library-view .directory-tools{margin:0 0 13px;gap:16px}
.library-view .directory-search{height:42px;width:min(100%,640px);max-width:640px;flex:1;padding-inline:13px;border-color:#e0e5de;box-shadow:0 1px 1px #192e1804}
.library-view .directory-search:focus-within{border-color:#749783;box-shadow:0 0 0 3px #89a99523}
.library-view .directory-search input{font-size:13px}
.library-view .directory-search kbd{font-size:11px;height:21px;width:21px}
.library-view .directory-results{font-size:11px;color:#718174}
.directory-category-controls[hidden]{display:none!important}
.directory-category-controls{min-width:0;flex:0 1 auto}
.directory-categories{display:flex;align-items:center;flex-wrap:wrap;gap:5px}
.directory-category-pill{background:transparent;color:#6d8171;border:1px solid #dce4dc;font-size:11px;line-height:1;padding:9px 12px;border-radius:5px;white-space:nowrap}
.directory-category-pill[aria-pressed=true]{background:#e7f0e7;color:#2b6041;border-color:#c7ddcb;font-weight:730}
.directory-category-pill:hover{border-color:#91b19c;color:#315e40}
.library-view .directory-table thead{background:#f6f8f5;color:#718176}
.library-view .directory-table th{padding:10px 13px;font-size:10px;border-color:#e6ebe5}
.library-view .directory-table tbody tr{border-color:#e9eee8}
.library-view .directory-table td{padding:13px;color:#28372b}
.library-view .directory-description{color:#627468;line-height:1.5;font-size:12px}
.library-view .directory-tag{font-size:10px;padding:5px 7px;background:#eff3ee}
.library-view .directory-version{font-size:11px;color:#67766b}
.library-view .directory-name{font-size:13px;gap:10px}
.library-view .directory-name img{width:27px;height:27px;border-radius:6px}
.library-view .directory-row-actions{gap:13px;flex-wrap:nowrap}
.library-view .directory-row-actions a{font-size:11px;font-weight:730}
.library-view .directory-row-actions .directory-copy{height:31px;width:31px;min-width:31px;display:grid;place-items:center;flex:none;border:1px solid #e1e8e0;border-radius:5px;background:#fafcfa;color:#648071;padding:0;transition:background .16s ease,border-color .16s ease,color .16s ease}
.library-view .directory-row-actions .directory-copy:hover{background:#eaf3ea;border-color:#bed8c5;color:#2a5d40}
.library-view .directory-row-actions .directory-copy svg{display:block}
.library-view .directory-help{margin-top:30px;padding-top:14px;gap:15px}
.library-view .footer-wrap{min-height:68px}
.library-view .footer-wrap>span{display:none}
.library-view .site-footer nav{gap:17px}
@media(max-width:900px){
 .library-view .directory-tools{flex-wrap:wrap}
 .library-view .directory-search{width:100%;max-width:none}
 .directory-category-controls{order:3;width:100%}
}
@media(max-width:760px){
 .library-view .directory{padding-top:24px;padding-bottom:36px}
 .library-view .directory-head{margin:23px 0 22px}
 .library-view .directory-head h1{font-size:35px}
 .library-view .directory-tools{gap:11px}
 .library-view .directory-table tbody tr{padding:15px;gap:10px}
 .library-view .directory-table td{padding:0!important}
 .library-view .directory-table td:nth-child(5){padding-top:11px!important}
 .library-view .directory-row-actions{justify-content:flex-start}
 .library-view .directory-help{margin-top:28px}
 .library-view .footer-wrap{min-height:67px}
}
@media(prefers-reduced-motion:reduce){
 .library-view .directory-row-actions .directory-copy{transition:none}
}
