/* Sessão Gooner v1.9.12 — fileiras personalizadas + selo "Visto" (site todo, inclusive /player/). */
.sgp { --sgp-ink:#f5efe6; --sgp-cream:#e8d5b5; --sgp-muted:#9a8f84; --sgp-gold:#c4a574; --sgp-hot:#ff2a3c;
  display:block; margin:0 0 1.4rem; font-family:inherit; color:var(--sgp-ink); }
.sgp[hidden] { display:none !important; }
.sgp--player { margin:0.2rem 0 1.2rem; }
.sgp-row { margin:0 0 1.1rem; }
.sgp-row__head { display:flex; align-items:baseline; gap:.6rem; flex-wrap:wrap; margin:0 0 .6rem; }
.sgp-row__title { font-size:.78rem; letter-spacing:.14em; text-transform:uppercase; color:var(--sgp-muted); font-weight:650; }
.sgp-row__extra { font-size:.72rem; color:var(--sgp-gold); opacity:.85; }
.sgp-row__list { display:grid; grid-auto-flow:column; grid-auto-columns:minmax(160px, 220px); gap:.7rem;
  overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x proximity; -webkit-overflow-scrolling:touch;
  padding:0 0 .45rem; scrollbar-width:thin; scrollbar-color:rgba(232,213,181,.25) transparent; }
.sgp-row__list::-webkit-scrollbar { height:6px; }
.sgp-row__list::-webkit-scrollbar-thumb { background:rgba(232,213,181,.2); border-radius:6px; }
.sgp-card { all:unset; box-sizing:border-box; display:flex; flex-direction:column; cursor:pointer; scroll-snap-align:start;
  border:1px solid rgba(232,213,181,.12); border-radius:14px; overflow:hidden; background:#161210;
  transition:transform .15s ease, border-color .15s ease; min-width:0; }
.sgp-card:hover, .sgp-card:focus-visible { border-color:rgba(196,165,116,.55); transform:translateY(-2px); }
.sgp-card:focus-visible { outline:2px solid var(--sgp-gold); outline-offset:2px; }
.sgp-card__thumb { position:relative; display:block; width:100%; aspect-ratio:16/9; background:#0a0a0a; overflow:hidden; }
.sgp-card__thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.sgp-card__dur { position:absolute; right:.4rem; bottom:.4rem; padding:.12rem .38rem; border-radius:6px; font-size:.68rem;
  font-weight:700; background:rgba(0,0,0,.78); color:#fff; font-variant-numeric:tabular-nums; line-height:1.2; }
.sgp-card__play { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:2.3rem; height:2.3rem; border-radius:50%;
  display:flex; align-items:center; justify-content:center; background:rgba(0,0,0,.6); color:#fff; font-size:.9rem; padding-left:2px; box-sizing:border-box; }
.sgp-card__lock { position:absolute; left:.4rem; top:.4rem; padding:.14rem .45rem; border-radius:999px; font-size:.66rem; font-weight:800;
  background:rgba(0,0,0,.72); color:var(--sgp-gold); letter-spacing:.04em; }
.sgp-card--locked .sgp-card__thumb img { filter:blur(6px) brightness(.6); transform:scale(1.08); }
.sgp-card__body { display:flex; flex-direction:column; gap:.18rem; padding:.5rem .6rem .6rem; }
.sgp-card__title { font-size:.8rem; font-weight:650; line-height:1.3; color:var(--sgp-cream); display:-webkit-box; -webkit-line-clamp:2;
  -webkit-box-orient:vertical; overflow:hidden; word-break:break-word; }
.sgp-card__sub { font-size:.68rem; color:var(--sgp-muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.sgp-bar { position:absolute; left:0; right:0; bottom:0; height:4px; background:rgba(255,255,255,.18); z-index:3; pointer-events:none; display:block; }
.sgp-bar > i { display:block; height:100%; background:var(--sgp-hot, #ff2a3c); }
.sgp-badge { position:absolute; left:.4rem; bottom:.45rem; z-index:3; pointer-events:none; padding:.12rem .42rem; border-radius:6px;
  font:700 .64rem/1.3 system-ui, -apple-system, "Segoe UI", sans-serif; letter-spacing:.02em; background:rgba(0,0,0,.78); color:#e8d5b5; }
.sgp-badge[data-k="prog"] { color:#fff; background:rgba(255,42,60,.85); bottom:.7rem; }
[data-sgp="seen"] img { opacity:.55; filter:saturate(.7); transition:opacity .15s ease; }
[data-sgp="seen"]:hover img { opacity:.9; }
.sgp-toast { position:fixed; left:50%; bottom:1.4rem; transform:translateX(-50%); z-index:2147483000; padding:.55rem .95rem; border-radius:999px;
  background:rgba(20,17,15,.95); color:#f5efe6; border:1px solid rgba(196,165,116,.4); font:600 .82rem/1.3 system-ui, sans-serif;
  box-shadow:0 8px 24px rgba(0,0,0,.45); transition:opacity .5s ease; }
.sgp-toast.is-out { opacity:0; }
@media (max-width: 600px) {
  .sgp-row__list { grid-auto-columns:minmax(150px, 46vw); gap:.55rem; }
  .sgp-card__title { font-size:.76rem; }
}
