.public-search{margin:0 0 28px;padding:16px;border:1px solid var(--line);border-radius:11px;background:var(--surface)}.public-search>label{display:block;margin-bottom:7px;color:#9eabb6;font-size:11px;font-weight:700}.public-search>div{display:flex;align-items:center;gap:8px}.public-search input{flex:1}.public-search a{padding:0 8px;color:var(--muted);font-size:11px}.directory-section{margin-top:50px}.directory-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.directory-heading h2{margin:0 0 4px;font-size:28px}.directory-heading p,.directory-heading>span{margin:0;color:var(--muted);font:400 10px DM Mono,monospace}.directory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.directory-card{display:flex;min-width:0;min-height:210px;flex-direction:column;padding:19px;border:1px solid var(--line);border-radius:11px;background:linear-gradient(145deg,var(--surface-2),var(--surface));transition:transform .16s,border-color .16s}.directory-card:hover{border-color:#3b4a59;transform:translateY(-2px)}.directory-card-top,.directory-card footer{display:flex;justify-content:space-between;gap:12px;color:#71808d;font:400 9px DM Mono,monospace}.directory-card h3{margin:16px 0 8px;font-size:16px;line-height:1.35}.directory-card h3 a{color:#e3eaf0;text-decoration:none}.directory-card h3 a:hover{color:var(--accent)}.directory-card>p{display:-webkit-box;overflow:hidden;margin:0 0 18px;color:var(--muted);font-size:11px;line-height:1.65;-webkit-box-orient:vertical;-webkit-line-clamp:3}.directory-card footer{margin-top:auto;padding-top:12px;border-top:1px solid var(--line-soft)}.public-pagination{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:25px}.public-pagination a{padding:8px 12px;border:1px solid var(--line);border-radius:7px;color:var(--accent);font-size:11px;text-decoration:none}.public-pagination span{color:var(--muted);font:400 10px DM Mono,monospace}
@media(max-width:900px){.directory-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.public-search>div{align-items:stretch;flex-direction:column}.public-search a{text-align:center}.directory-grid{grid-template-columns:1fr}.directory-heading{align-items:flex-start;flex-direction:column}}
