/* Catalog search and game pages. Variables come from /css/emulator-shared.css, with fallbacks. */
.kz-cat-input,.kz-cat-select{font:inherit;color:var(--kz-text,#eee);background:var(--kz-surface,#1c1c26);border:1px solid var(--kz-muted,#8a8aa0);border-radius:var(--kz-radius,10px);padding:.6rem .8rem;min-height:44px}
.kz-cat-input{width:100%;box-sizing:border-box}
.kz-cat-filters{display:flex;flex-wrap:wrap;gap:.75rem;margin:.75rem 0}
.kz-cat-field{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;color:var(--kz-muted,#8a8aa0)}
.kz-cat-status{color:var(--kz-muted,#8a8aa0)}
.kz-cat-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem}
.kz-cat-card{display:flex;flex-direction:column;gap:.25rem;height:100%;padding:.6rem;box-sizing:border-box;text-decoration:none;color:var(--kz-text,#eee);background:var(--kz-surface,#1c1c26);border-radius:var(--kz-radius,10px);transition:transform .12s}
.kz-cat-card img{width:100%;height:auto;border-radius:6px}
.kz-cat-title{font-weight:700}
.kz-cat-meta{font-size:.85rem;color:var(--kz-muted,#8a8aa0)}
.kz-badge{align-self:flex-start;font-size:.75rem;padding:.1rem .5rem;border-radius:999px;background:var(--kz-accent,#7c5cff);color:#fff;text-transform:capitalize}
.kz-cat-input:focus-visible,.kz-cat-select:focus-visible,.kz-cat-card:focus-visible,.kz-btn:focus-visible{outline:3px solid var(--kz-accent,#7c5cff);outline-offset:2px}
.kz-cat-card:hover{transform:translateY(-2px)}
.kz-cat-suggest{margin-top:1.5rem}
/* Game page */
.kz-game{max-width:760px;margin:0 auto;padding:1rem 16px 3rem;font-family:var(--kz-font,system-ui,sans-serif);color:var(--kz-text,#eee);line-height:1.6}
.kz-game img.kz-cover{width:100%;height:auto;border-radius:var(--kz-radius,10px)}
.kz-credit{font-size:.8rem;color:var(--kz-muted,#8a8aa0)}
.kz-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.25rem 0}
.kz-btn{display:inline-block;padding:.75rem 1.25rem;min-height:44px;box-sizing:border-box;border-radius:var(--kz-radius,10px);text-decoration:none;font-weight:700;background:var(--kz-accent,#7c5cff);color:#fff;border:2px solid var(--kz-accent,#7c5cff);transition:transform .12s}
.kz-btn.kz-secondary{background:transparent;color:var(--kz-text,#eee)}
.kz-btn:active{transform:translateY(2px)}
.kz-box{padding:1rem;border:1px solid var(--kz-muted,#8a8aa0);border-radius:var(--kz-radius,10px);background:var(--kz-surface,#1c1c26);margin:1.5rem 0}
.kz-game table{border-collapse:collapse;width:100%}
.kz-game th,.kz-game td{text-align:left;padding:.4rem .6rem;border-bottom:1px solid var(--kz-muted,#8a8aa0)}
@media (prefers-reduced-motion:reduce){.kz-cat-card,.kz-btn{transition:none}.kz-cat-card:hover,.kz-btn:active{transform:none}}

/* Readable text links on dark pages (default blue fails contrast) */
.kz-game a:not(.kz-btn),.kz-catalog-footer a,.kz-cat-page a:not(.kz-cat-card):not(.kz-btn){color:var(--kz-accent-text,#a994ff)}
