.switch-mod-games { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-bottom:30px; }
.switch-mod-game { padding:24px; border:1px solid #37543f; border-radius:14px; background:#14241b; color:var(--text-primary); }
.switch-mod-game strong { display:block; font-size:1.1rem; margin-bottom:8px; }
.switch-mod-game span { color:var(--text-secondary); font-size:.875rem; }
.switch-mod-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.switch-mod-card { display:flex; flex-direction:column; min-width:0; padding:26px; border:1px solid var(--border); border-radius:16px; background:var(--bg-secondary); }
.switch-mod-card[hidden] { display:none; }
.switch-mod-grid[hidden], #catalogue .section-header[hidden] { display:none; }
.switch-mod-filters > *, .switch-mod-games > * { min-width:0; }
.switch-mod-filters input, .switch-mod-filters select { min-width:0; max-width:100%; }
.switch-mod-card>img { width:100%; aspect-ratio:2/1; object-fit:contain; border-radius:10px; margin-bottom:20px; }
.switch-mod-card h3 { font-size:1.3rem; margin:0 0 8px; }
.switch-mod-kind { display:block; color:var(--accent-light); font-size:.8rem; margin-bottom:18px; }
.switch-mod-card p { margin-bottom:16px; font-size:.94rem; color:var(--text-secondary); }
.switch-mod-card h4 { font-size:.85rem; margin-bottom:6px; }
.switch-mod-card code { font-size:.78rem; word-break:break-word; }
.switch-mod-actions { display:flex; flex-wrap:wrap; gap:12px 18px; align-items:center; margin-top:auto; padding-top:16px; }
.switch-mod-actions .btn { font-size:.85rem; padding:11px 16px; }
.switch-mod-card details { margin-top:20px; padding-top:16px; border-top:1px solid var(--border); font-size:.85rem; }
.switch-mod-card summary { cursor:pointer; color:var(--text-primary); margin-bottom:12px; }
.switch-mod-card .switch-mod-hash { display:block; margin-top:12px; word-break:break-all; font-size:.7rem; }
.switch-mod-card .switch-mod-tags { display:flex; flex-wrap:wrap; gap:6px; margin:0 0 16px; padding:0; list-style:none; }
.switch-mod-tags li { font-size:.72rem; padding:4px 8px; background:#213329; border:1px solid #344b3b; border-radius:5px; color:#bfdec8; }
.switch-mod-filters { display:grid; grid-template-columns:minmax(180px,1fr) minmax(180px,280px); gap:20px; margin:24px 0 18px; }
.switch-mod-filters label { display:block; margin-bottom:8px; font-size:.875rem; font-weight:600; }
.switch-mod-filters input,.switch-mod-filters select { width:100%; min-height:48px; padding:12px; color:var(--text-primary); background:#101a13; border:1px solid #405547; border-radius:8px; font:inherit; }
.switch-mod-filters :focus-visible,.switch-mod-card summary:focus-visible { outline:2px solid var(--accent-light); outline-offset:3px; }
.switch-mod-count { color:var(--text-secondary); font-size:.875rem; margin-bottom:24px; }
.switch-mod-table { width:100%; border-collapse:collapse; margin:24px 0; font-size:.9rem; }
.switch-mod-table th,.switch-mod-table td { padding:16px; text-align:left; border-bottom:1px solid var(--border); vertical-align:top; }
.switch-mod-table td { color:var(--text-secondary); }
.switch-mod-table code { font-size:.75rem; word-break:break-all; }
@media(max-width:800px){.switch-mod-games,.switch-mod-grid { grid-template-columns:1fr; }.switch-mod-filters { grid-template-columns:1fr; }.switch-mod-card { padding:22px; }.switch-mod-table th,.switch-mod-table td { padding:12px 8px; }}
