/* The actual tool interface is the cover; captions sit directly below it. */
.sc-resources-page .sc-gallery-filters { gap:18px; align-items:center; }
.sc-resources-page .sc-category-strip { gap:5px; }
.sc-resources-page .sc-category-strip a { padding:7px 12px; }
.sc-resources-page .sc-gallery-sort { flex-shrink:0; }
.sc-resource-cards { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:30px 22px; }
.sc-resource-card { min-width:0; }
.sc-resource-preview { position:relative; display:block; aspect-ratio:16 / 10; overflow:hidden; background:#22252b; border-radius:6px; }
.sc-resource-preview img { display:block; width:100%; height:100%; max-width:none; object-fit:cover; object-position:center; }
.sc-resource-preview::after { content:""; position:absolute; inset:0; border:1px solid #ffffff14; border-radius:inherit; pointer-events:none; }
.sc-resource-open { position:absolute; right:10px; bottom:10px; display:grid; place-items:center; width:30px; height:30px; border-radius:4px; color:#edeef1; background:#17191de6; opacity:0; transition:opacity .15s; }
.sc-resource-open svg { width:17px; height:17px; fill:none; }
.sc-resource-card:hover .sc-resource-open, .sc-resource-card:focus-within .sc-resource-open { opacity:1; }
.sc-resource-card a:focus-visible { outline:2px solid #a7bde6; outline-offset:3px; }
.sc-resource-placeholder { display:flex; align-items:center; justify-content:center; flex-direction:column; gap:12px; height:100%; color:#909cab; font-size:12px; }
.sc-resource-placeholder svg { width:44px; height:44px; fill:none; color:#a8b5c7; }
.sc-resource-card-content { padding:12px 1px 0; }
.sc-resource-card-meta { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:18px; line-height:1.5; }
.sc-resource-card-category { font-size:11px; color:#9a9faa; }
.sc-resource-card h2 { font-family:"Segoe UI","Microsoft YaHei",sans-serif; font-size:15px; font-weight:550; line-height:1.55; margin:5px 0 0; }
.sc-resource-card h2 a { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; overflow-wrap:anywhere; color:#edeef1; }
.sc-resource-card h2 a:hover { color:#bacdef; }
@media(max-width:1399px) { .sc-resource-cards { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:1100px) {
  .sc-resource-cards { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 20px; }
  .sc-resources-page .sc-gallery-filters { flex-wrap:wrap; gap:14px; }
}
@media(max-width:760px) {
  .sc-resources-page .sc-catalog.container { padding-bottom:30px; }
  .sc-resources-page .sc-gallery-filters { margin-bottom:20px; }
  .sc-resources-page .sc-category-strip { flex-wrap:wrap; overflow:visible; gap:5px; }
  .sc-resources-page .sc-category-strip a { padding:6px 10px; min-height:30px; font-size:11px; }
  .sc-resource-cards { gap:24px 14px; }
  .sc-resource-card-content { padding-top:9px; }
  .sc-resource-card-category { font-size:10px; }
  .sc-resource-card h2 { font-size:13px; margin-top:4px; }
  .sc-resource-placeholder { gap:7px; font-size:10px; }
  .sc-resource-placeholder svg { width:28px; height:28px; }
}
@media(hover:none) { .sc-resource-open { opacity:1; right:6px; bottom:6px; width:24px; height:24px; } }
@media(prefers-reduced-motion:reduce) { .sc-resource-open { transition:none; } }
