/* Only the emulator's sliders escape the site's ordinary input geometry. */
#emulator input[type="range"] { min-height: 0; padding: 0; }
#emulator:fullscreen, .player-stage:fullscreen { border-radius: 0; }
.player-stage:fullscreen #emulator { min-height: 0; height: 100%; }
.version-summary { padding: 10px 0; }
.version-summary strong { display: block; font-size: 13px; overflow-wrap: anywhere; }
.source-details { font-size: 12px; margin-top: 16px; color: var(--muted); }
.source-details p { margin-block: 8px; overflow-wrap: anywhere; }
.library-intro { padding-block: 32px 22px; }
.library-intro h1 { font-size: clamp(30px, 4vw, 42px); }
.library-intro p { margin-top: 8px; }
.discovery-layout { padding-bottom: 50px; }
.discovery-form { padding: 20px; border: 1px solid var(--line); border-radius: 14px; background: #f0f1e9; }
.discovery-form label { display: block; font-size: 12px; font-weight: 600; margin-bottom: 7px; }
.discovery-search { display: flex; gap: 10px; align-items: center; }
.discovery-search input { min-width: 0; flex: 1; }
.discovery-search .button { min-height: 43px; }
.discovery-filters { display: grid; grid-template-columns: 1fr 1fr 1fr auto; gap: 18px; align-items: end; margin-top: 18px; }
.discovery-filters > div, .discovery-filters select { min-width: 0; }
.discovery-filters .check-label { display: flex; margin: 0; min-height: 43px; white-space: nowrap; }
.discovery-footer { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 12px; margin-top: 12px; }
.discovery-footer p { font-size: 11px; }
.platform-shortcuts { display: flex; flex-wrap: wrap; gap: 9px; margin-block: 16px; }
.platform-shortcuts a { border: 1px solid var(--line); border-radius: 20px; padding: 7px 14px; font-size: 12px; min-height: 38px; }
.platform-shortcuts a:hover { border-color: var(--blue); }
#search-status { min-height: 26px; margin-block: 8px; font-size: 12px; }
#catalog-results { scroll-margin-top: 18px; }
#catalog-results .browse-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
#catalog-results[aria-busy="true"] .game-grid { opacity: .65; }
.search-suggestions { background: var(--paper); border: 1px solid var(--line); border-radius: 12px; max-width: 490px; padding: 6px; margin-top: 7px; box-shadow: 0 6px 20px #17251a14; }
.search-suggestions a { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; padding: 10px; min-height: 44px; border-radius: 7px; font-size: 14px; }
.search-suggestions a:hover, .search-suggestions a:focus-visible { background: #e9edfb; }
.search-suggestions small { color: var(--muted); font-size: 10px; }
.player-diagnostics { margin-top: 16px; padding: 12px 16px; border: 1px solid #46533e; border-radius: 10px; font-size: 12px; }
.player-diagnostics summary { min-height: 24px; color: #e2eadb; }
.player-diagnostics p { color: #b9c7b3; margin-block: 10px; }
.player-diagnostics pre { white-space: pre-wrap; overflow-wrap: anywhere; max-height: 280px; overflow: auto; font-size: 11px; background: #0e1413; padding: 12px; border-radius: 6px; }
.player-diagnostics button { margin-right: 8px; background: #29362d; color: #e2eadb; border: 1px solid #46533e; padding: 9px 13px; border-radius: 7px; }
@media(max-width: 1000px) {
  #catalog-results .browse-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .discovery-filters { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media(max-width: 650px) {
  #catalog-results .browse-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .discovery-form { padding: 14px; }
  .discovery-search { flex-wrap: wrap; }
  .discovery-search input { flex-basis: 100%; }
  .discovery-filters { gap: 12px; }
  .discovery-filters .check-label { white-space: normal; }
  .library-intro { padding-block: 24px 16px; }
  .search-suggestions { max-width: 100%; }
}
