.resource-toolbar { display:flex; flex-wrap:wrap; align-items:center; gap:1rem; margin-bottom:1.25rem; }
.resource-toolbar .search-input { width:100%; max-width:360px; }
.resource-toolbar span { color:var(--text-muted); font-size:.8rem; }
.resource-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; max-width:1100px; }
.resource-card { display:flex; flex-direction:column; padding:1.5rem; margin:0; }
.resource-category { color:var(--accent-h); font-size:.72rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; margin-bottom:.85rem; }
.resource-card h2 { font-size:1.25rem; line-height:1.35; margin:0 0 .5rem; }
.resource-meta { color:var(--text-muted); font-size:.78rem; }
.resource-card p { color:var(--text-muted); font-size:.9rem; line-height:1.7; margin:1.25rem 0 .75rem; }
.resource-card ul { padding-left:1.2rem; font-size:.85rem; line-height:1.9; margin:0 0 1.5rem; }
.resource-actions { margin-top:auto; }
.resource-status { font-size:.8rem; line-height:1.5; margin-top:.75rem; color:var(--text-muted); overflow-wrap:anywhere; }
.resource-status:empty { display:none; }
.resource-status a { color:var(--text); text-decoration:underline; }
.resource-note { max-width:800px; margin-top:1.5rem; font-size:.8rem; line-height:1.6; color:var(--text-muted); }
#page-resources button:focus-visible, #page-resources a:focus-visible, #resource-search:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
.resource-empty { padding:2rem; text-align:center; color:var(--text-muted); }
@media(max-width:700px) { .resource-grid { grid-template-columns:1fr; } .resource-card { padding:1.2rem; } }
