.catalog-view-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0;color:var(--muted);font-size:.88rem}
.catalog-view-controls[hidden]{display:none}
.catalog-view-controls select{max-width:100%;padding:7px 10px;border:1px solid var(--border);border-radius:10px;color:var(--text);background:var(--card)}
body[data-catalog-view] .resource-sections .card p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;line-height:1.45;min-height:4.35em;max-height:4.35em}
body[data-catalog-view=compact] .resource-sections .grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
body[data-catalog-view=compact] .resource-sections .card{min-height:150px;gap:10px;border-radius:14px}
body[data-catalog-view=compact] .resource-sections .card-visual{width:64px;min-width:64px}
body[data-catalog-view=compact] .resource-sections .game-icon{width:54px;height:54px}
body[data-catalog-view=compact] .resource-sections .card-visual span{font-size:2rem}
body[data-catalog-view=compact] .resource-sections .card-body{padding:12px 12px 12px 0}
body[data-catalog-view=compact] .resource-sections .card h2{font-size:1rem;margin:4px 0}
body[data-catalog-view=compact] .resource-sections .card p{-webkit-line-clamp:2;min-height:2.9em;max-height:2.9em;font-size:.84rem}
body[data-catalog-view=compact] .resource-sections .card-foot{flex-wrap:wrap;padding-top:8px}
body[data-catalog-view=list] .resource-sections .grid{grid-template-columns:minmax(0,1fr);gap:9px}
body[data-catalog-view=list] .resource-sections .card{min-height:84px;gap:12px;border-radius:13px}
body[data-catalog-view=list] .resource-sections .card-visual{width:64px;min-width:64px}
body[data-catalog-view=list] .resource-sections .game-icon{width:54px;height:54px}
body[data-catalog-view=list] .resource-sections .card-visual span{font-size:2rem}
body[data-catalog-view=list] .resource-sections .card-body{display:grid;grid-template-columns:minmax(130px,.8fr) minmax(160px,1.2fr) minmax(260px,1.6fr);gap:4px 16px;align-items:center;padding:12px 14px 12px 0}
body[data-catalog-view=list] .resource-sections .card-flags{grid-column:1/-1;min-height:0}
body[data-catalog-view=list] .resource-sections .card-flags:empty{display:none}
body[data-catalog-view=list] .resource-sections .card h2{font-size:1rem;margin:0}
body[data-catalog-view=list] .resource-sections .card p{display:block;white-space:nowrap;text-overflow:ellipsis;min-height:0;max-height:none;overflow:hidden;font-size:.86rem}
body[data-catalog-view=list] .resource-sections .card-foot{margin:0;padding:0;gap:8px;min-width:0}
body[data-catalog-view=list] .resource-sections .card-foot small{font-size:.75rem}
body[data-catalog-view=list] .resource-sections .card-actions{flex-shrink:1;min-width:0;max-width:100%}
@media(max-width:850px){
 body[data-catalog-view=list] .resource-sections .card-body{grid-template-columns:minmax(0,1fr);gap:6px}
 body[data-catalog-view=list] .resource-sections .card-foot{flex-wrap:wrap}
 body[data-catalog-view=list] .resource-sections .card-actions{margin-left:auto}
 body[data-catalog-view=compact] .resource-sections .grid{grid-template-columns:minmax(0,1fr)}
}

@media(max-width:650px){.module-actions .catalog-view-controls{grid-column:1/-1;justify-content:space-between;padding:4px 0}.module-actions .catalog-view-controls select{min-width:0;flex:1;width:160px}}
/* O botão também oferece uma alternativa acessível à rolagem automática. */
.catalog-paging{display:flex;flex-direction:column;align-items:center;gap:10px;margin:24px 0;padding:12px;text-align:center}
.catalog-paging[hidden],.catalog-load-more[hidden]{display:none!important}
.catalog-paging-count{margin:0;color:var(--muted,#52647b)}
.catalog-load-more{padding:12px 22px;min-height:44px;border:1px solid var(--border,#cbd5e1);border-radius:12px;background:var(--card,#fff);color:inherit;font:inherit;cursor:pointer}
.catalog-load-more:focus-visible{outline:3px solid #2563eb;outline-offset:3px}
