/* Catálogo de produtos */
.catalog-head { margin: 1rem 0 1.4rem; }
.catalog-head h1 { margin: .8rem 0 0; font-size: clamp(2.4rem, 6vw, 4rem); }
.catalog-bar { position: sticky; top: 64px; z-index: 50; display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; padding: .75rem; margin-bottom: 1rem; background: rgba(8,9,12,.82); backdrop-filter: blur(12px); border: 1px solid var(--line); border-radius: 14px; }
.catalog-bar .products-search { flex: 1 1 260px; max-width: none; margin: 0; }
.catalog-select select { height: 46px; padding: 0 2.2rem 0 1rem; border-radius: 999px; background: var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%2352ff78' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 1rem center; -webkit-appearance: none; appearance: none; border: 1px solid var(--line); color: #fff; font-family: var(--mono); font-size: .8rem; cursor: pointer; }
.catalog-select select:focus { outline: none; border-color: var(--toxic); box-shadow: 0 0 0 4px rgba(82,255,120,.14); }
.catalog-select select option { background: #14161c; }
.status-chips { display: flex; gap: .4rem; flex-wrap: wrap; }
.schip { height: 40px; padding: 0 .95rem; border-radius: 999px; background: var(--surface); border: 1px solid var(--line); color: var(--text-muted); font-family: var(--mono); font-size: .75rem; font-weight: 700; letter-spacing: .5px; cursor: pointer; transition: .2s; }
.schip i { margin-right: .35rem; }
.schip:hover { color: #fff; border-color: rgba(255,255,255,.3); }
.schip.active { color: #fff; border-color: var(--primary-color); background: rgba(255,59,59,.15); }
.schip.s-ok.active { border-color: var(--toxic); background: rgba(82,255,120,.12); color: var(--toxic); }
.schip.s-warn.active { border-color: var(--warning); background: rgba(255,185,56,.12); color: var(--warning); }
.schip.s-bad.active { border-color: var(--bad); background: rgba(255,84,104,.12); color: #ff8d9a; }
/* trilho de jogos */
.game-rail { position: relative; margin-bottom: 1.4rem; }
.game-rail .list { display: flex; flex-wrap: nowrap; overflow-x: auto; gap: .5rem; padding: .3rem .1rem .7rem; scrollbar-width: thin; scrollbar-color: var(--primary-color) transparent; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 24px, #000 calc(100% - 40px), transparent); mask-image: linear-gradient(90deg, transparent 0, #000 24px, #000 calc(100% - 40px), transparent); }
.game-rail .list a.sort { flex: 0 0 auto; display: inline-flex; align-items: center; gap: .55rem; padding: .5rem .9rem; border-radius: 10px; background: var(--surface) !important; border: 1px solid var(--line) !important; color: var(--text-muted); font-family: var(--mono); font-size: .78rem; font-weight: 700; white-space: nowrap; text-decoration: none; transition: .2s; opacity: 1; }
.game-rail .list a.sort img { height: 20px; width: auto; max-width: 56px; object-fit: contain; filter: grayscale(.4) brightness(1.2); }
.game-rail .list a.sort:hover { color: #fff; transform: translateY(-2px); }
.game-rail .list a.sort.active { color: #fff; border-color: var(--toxic) !important; background: rgba(82,255,120,.10) !important; box-shadow: 0 0 18px rgba(82,255,120,.12); }
.game-rail .list a.sort.active img { filter: none; }
/* cards */
.catalog-item[hidden] { display: none !important; }
.card-meta-text { color: var(--text-muted); font-size: .72rem; font-family: var(--mono); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 100%; }
.catalog-grid .product-card-visual { min-height: 100%; }
.catalog-grid .catalog-item { animation: itemIn .45s var(--ease) both; }
@keyframes itemIn { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
@media (max-width: 767px) {
  .catalog-bar { top: 56px; padding: .6rem; }
  .status-chips { width: 100%; overflow-x: auto; flex-wrap: nowrap; scrollbar-width: none; } .status-chips::-webkit-scrollbar { display: none; } .schip { flex: 0 0 auto; }
  .catalog-select { flex: 1 1 100%; } .catalog-select select { width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .catalog-grid .catalog-item { animation: none; } }

/* Jogos: no desktop quebram em linhas (2 visíveis + "ver todos"); no celular, rolagem lateral sem barra */
.game-rail .list { flex-wrap: wrap; overflow: hidden; max-height: 94px; scrollbar-width: none; -webkit-mask-image: none; mask-image: none; padding: .2rem .1rem; transition: max-height .35s var(--ease); position: relative; }
.game-rail.expanded .list { max-height: 1200px; }
.game-rail .list::-webkit-scrollbar { display: none; }
.game-rail:not(.expanded).has-more .list { -webkit-mask-image: linear-gradient(#000 calc(100% - 22px), transparent); mask-image: linear-gradient(#000 calc(100% - 22px), transparent); }
.rail-toggle { display: none; margin: .35rem 0 0; padding: .45rem 1rem; border: 1px dashed rgba(82,255,120,.45); border-radius: 8px; background: rgba(82,255,120,.06); color: var(--toxic); font-family: var(--mono); font-size: .75rem; font-weight: 700; letter-spacing: 1px; cursor: pointer; transition: .2s; }
.rail-toggle:hover { background: rgba(82,255,120,.14); border-style: solid; }
.rail-toggle i { margin-left: .4rem; transition: transform .25s; } .game-rail.expanded .rail-toggle i { transform: rotate(180deg); }
.game-rail.has-more .rail-toggle { display: inline-block; }
@media (max-width: 767px) {
  .game-rail .list { flex-wrap: nowrap; overflow-x: auto; max-height: none; -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 36px), transparent); mask-image: linear-gradient(90deg, #000 calc(100% - 36px), transparent); }
  .game-rail.has-more .rail-toggle { display: none; }
}
