/* GS - GameScape Online: weekly tournament. Square neon glass; gold/silver/bronze/neon tiers. */
.gst-hero { display: flex; gap: 14px; margin-bottom: 12px; }
.gst-cover {
  flex: none; width: 92px; height: 124px; object-fit: cover;
  border: 1px solid rgb(224 60 255 / 60%); border-radius: 2px; background: #0a0820;
  box-shadow: 0 0 16px rgb(224 60 255 / 30%);
}
.gst-hero__t { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.gst-eyebrow { margin: 0; font: 700 10px/1.3 "Orbitron", system-ui, sans-serif; letter-spacing: .16em; text-transform: uppercase; color: #22e4ff; }
.gst-game { margin: 0; font: 800 18px/1.2 "Orbitron", system-ui, sans-serif; color: #fff; }
.gst-plat { margin: 0; font-size: 12.5px; color: #a9f3ff; }
.gst-left { display: flex; align-items: center; gap: 5px; margin: 2px 0 0; font-size: 12.5px; color: #f3b3ff; }
.gst-acts { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; }
.gst-acts .gsl-send, .gst-acts .gsl-act { min-height: 32px; padding: 0 12px; font-size: 12px; text-decoration: none; display: inline-flex; align-items: center; gap: 5px; }
.gst-board { margin: 0 0 8px; padding: 0; list-style: none; }
.gst-row {
  display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; align-items: center; gap: 8px;
  padding: 7px 10px; margin-bottom: 5px;
  border: 1px solid rgb(120 140 255 / 18%); border-radius: 2px;
  background: linear-gradient(180deg, rgb(255 255 255 / 6%), rgb(255 255 255 / 0%) 60%), rgb(5 4 15 / 45%);
}
.gst-r1 { border-color: rgb(255 215 106 / 70%); box-shadow: 0 0 12px rgb(255 215 106 / 25%); }
.gst-r2 { border-color: rgb(215 224 240 / 60%); }
.gst-r3 { border-color: rgb(224 160 112 / 60%); }
.gst-row.is-me { border-left: 3px solid #e03cff; }
.gst-rank { font: 800 14px/1 "Orbitron", system-ui, sans-serif; color: #22e4ff; }
.gst-r1 .gst-rank { color: #ffd76a; } .gst-r2 .gst-rank { color: #d7e0f0; } .gst-r3 .gst-rank { color: #e0a070; }
.gst-who { display: flex; flex-direction: column; min-width: 0; }
.gst-pts { font: 700 13px/1 "Orbitron", system-ui, sans-serif; color: #f3b3ff; white-space: nowrap; }
.gst-note { font-size: 12px; }
.gst-link { margin-bottom: 10px; }
.gst-admin { margin-top: 12px; padding-top: 10px; border-top: 1px dashed rgb(120 140 255 / 30%); }
.gst-admin .gsl-act { min-height: 30px; padding: 0 10px; font-size: 12px; }
.gst-upcoming { margin: 8px 0 0; padding: 0; list-style: none; font-size: 12.5px; }
.gst-upcoming li { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; padding: 5px 0; border-bottom: 1px solid rgb(120 140 255 / 12%); }
.gst-upcoming li .gsl-act { margin-left: auto; }

/* home banner */
.gst-banner {
  display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 18px;
  margin: 0 0 26px; padding: 16px 18px;
  border: 1px solid rgb(224 60 255 / 45%); border-radius: 3px;
  background:
    linear-gradient(180deg, rgb(255 255 255 / 9%) 0%, rgb(255 255 255 / 0%) 60px),
    radial-gradient(600px 240px at 0% 0%, rgb(224 60 255 / 16%), transparent 70%),
    linear-gradient(135deg, rgb(16 12 44 / 92%), rgb(7 6 22 / 94%));
  box-shadow: 0 0 22px rgb(224 60 255 / 18%), 0 12px 30px rgb(0 0 0 / 45%), inset 0 1px 0 rgb(255 255 255 / 18%);
}
.gst-banner .gst-hero { margin: 0; }
.gst-banner .gst-cover { width: 120px; height: 162px; }
.gst-banner .gst-game { font-size: 22px; }
.gst-banner__side .gst-board { max-height: 230px; overflow-y: auto; }
.gst-banner .gsl-send { display: inline-flex; align-items: center; gap: 6px; height: 36px; padding: 0 16px; border: 0; border-radius: 2px;
  background: linear-gradient(180deg, rgb(255 255 255 / 25%), rgb(255 255 255 / 0%) 55%), linear-gradient(90deg, #22e4ff, #4f7bff 45%, #e03cff);
  color: #fff; font: 700 12px/1 "Orbitron", system-ui, sans-serif; letter-spacing: .1em; text-transform: uppercase; text-decoration: none; }
.gst-banner .gsl-act { display: inline-flex; align-items: center; min-height: 36px; padding: 0 12px; border: 1px solid rgb(120 140 255 / 32%); border-radius: 2px;
  background: rgb(5 4 15 / 55%); color: #fff; font: 600 12px/1 "Exo 2", system-ui, sans-serif; text-decoration: none; }
.gst-banner .gsl-userlink { all: unset; cursor: pointer; font-weight: 700; font-size: 13px; color: #a9f3ff; }
.gst-banner .gsl-idle { font-size: 11.5px; color: rgb(215 222 255 / 55%); }
.gst-banner .gsl-empty { padding: 16px; text-align: center; color: rgb(215 222 255 / 60%); list-style: none; }
@media (width < 900px) { .gst-banner { grid-template-columns: 1fr; } }

/* trophies */
.gst-cup { margin-left: 4px; font-size: 14px; vertical-align: -1px; }
.gst-gold { color: #ffd76a; filter: drop-shadow(0 0 4px rgb(255 215 106 / 70%)); }
.gst-silver { color: #d7e0f0; filter: drop-shadow(0 0 4px rgb(215 224 240 / 60%)); }
.gst-bronze { color: #e0a070; filter: drop-shadow(0 0 4px rgb(224 160 112 / 60%)); }
.gst-top10 { color: #22e4ff; filter: drop-shadow(0 0 4px rgb(34 228 255 / 70%)); }
.gst-counts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; margin-bottom: 8px; }
.gst-count { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 8px 4px; border: 1px solid rgb(120 140 255 / 22%); border-radius: 2px; background: rgb(5 4 15 / 45%); }
.gst-count .mdi { font-size: 22px; }
.gst-count b { font: 800 16px/1 "Orbitron", system-ui, sans-serif; color: #fff; }
.gst-count span { font-size: 10.5px; color: rgb(215 222 255 / 65%); text-transform: uppercase; letter-spacing: .1em; }
.gst-count.is-zero { opacity: .4; filter: grayscale(1); }
.gst-trophies { margin: 0; padding: 0; list-style: none; }
.gst-trophy { display: flex; align-items: center; gap: 8px; padding: 6px 8px; margin-bottom: 4px; border: 1px solid rgb(120 140 255 / 18%); border-radius: 2px; background: rgb(5 4 15 / 45%); font-size: 13px; color: #e8ebff; }
.gst-trophy .gsl-idle { margin-left: auto; font-size: 11.5px; color: rgb(215 222 255 / 55%); }
.gst-trophy .mdi { font-size: 18px; }
