:root {
  --games-bg: #0f1214;
  --games-panel: rgba(17, 23, 25, .84);
  --games-panel-strong: rgba(12, 16, 18, .94);
  --games-line: rgba(143, 209, 106, .24);
  --games-line-soft: rgba(255, 255, 255, .08);
  --games-text: #f5f7f8;
  --games-muted: #aeb8be;
  --games-accent: #8fd16a;
  --games-gold: #f0c35a;
}
html { min-height: 100%; }
body {
  min-height: 100vh;
  color: var(--games-text);
  font-family: Inter, Arial, Helvetica, sans-serif;
  background:
    linear-gradient(90deg, rgba(15,18,20,.64), rgba(15,18,20,.34) 48%, rgba(15,18,20,.56)),
    linear-gradient(0deg, rgba(15,18,20,.72), rgba(15,18,20,.18) 44%, rgba(15,18,20,.52)),
    url('/assets/games-radio-style-bg.png') center / cover fixed no-repeat #101416;
}
a { color: var(--games-accent); }
a:hover, a:focus { color: #b7ec99; }
.games-request-hero {
  border-bottom: 1px solid var(--games-line);
  background: rgba(15, 18, 20, .9);
  backdrop-filter: blur(10px);
}
.games-request-hero__inner {
  max-width: 1180px;
  margin: 0 auto;
  min-height: 78px;
  padding: 12px 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}
.games-request-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--games-text);
  text-decoration: none;
}
.games-request-brand:hover { color: var(--games-text); text-decoration: none; }
.games-request-mark {
  width: 42px;
  height: 42px;
  border-radius: 8px;
  display: grid;
  place-items: center;
  color: #101416;
  font-family: Rajdhani, Inter, sans-serif;
  font-weight: 800;
  font-size: 26px;
  background: linear-gradient(135deg, var(--games-accent), var(--games-gold));
  box-shadow: 0 10px 30px rgba(143, 209, 106, .22);
}
.games-request-brand strong {
  display: block;
  font-family: Rajdhani, Inter, sans-serif;
  font-size: 28px;
  line-height: .95;
  letter-spacing: .02em;
}
.games-request-brand small {
  display: block;
  margin-top: 3px;
  color: var(--games-muted);
  font-size: 13px;
}
.games-request-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}
.games-request-nav a {
  color: #101416;
  background: var(--games-accent);
  border: 1px solid rgba(143,209,106,.7);
  text-decoration: none;
  font-weight: 800;
  padding: 9px 11px;
  border-radius: 6px;
  white-space: nowrap;
  font-size: 14px;
}
.games-request-nav a.is-active {
  background: var(--games-gold);
  border-color: rgba(240,195,90,.85);
}
.games-request-page { margin-top: 24px; }
.games-tool-card,
.games-request-page table {
  border: 1px solid var(--games-line);
  border-radius: 8px;
  background: var(--games-panel);
  box-shadow: 0 18px 45px rgba(0,0,0,.28);
  overflow: hidden;
}
.games-browse-tools {
  display: grid;
  gap: 12px;
}
.games-tool-card {
  padding: 14px;
}
.games-tool-card__label {
  margin-bottom: 9px;
  color: var(--games-gold);
  font-weight: 800;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: .08em;
}
.games-search-form {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(150px, 210px) auto;
  gap: 10px;
  align-items: center;
}
.form-control {
  color: var(--games-text);
  background-color: rgba(10,13,15,.92);
  border-color: var(--games-line-soft);
  border-radius: 6px;
  box-shadow: none;
}
.form-control:focus {
  border-color: var(--games-accent);
  box-shadow: 0 0 0 2px rgba(143,209,106,.18);
}
.btn-success {
  color: #101416;
  background: var(--games-accent);
  border-color: var(--games-accent);
  border-radius: 6px;
  font-weight: 800;
}
.games-chip-group,
.games-letter-group {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.games-chip-group .games-tool-card__label,
.games-letter-group .games-tool-card__label {
  width: 100%;
  margin-bottom: 2px;
}
.games-chip-group a,
.games-letter-group a {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 5px 9px;
  border: 1px solid var(--games-line-soft);
  border-radius: 6px;
  color: var(--games-text);
  background: rgba(255,255,255,.04);
  text-decoration: none;
  font-weight: 700;
}
.games-letter-group a { min-width: 32px; justify-content: center; }
.games-chip-group a:hover,
.games-letter-group a:hover {
  border-color: var(--games-accent);
  background: rgba(143,209,106,.12);
}
.table { margin-bottom: 0; }
.table>tbody>tr>th,
.table>thead>tr>th {
  background: rgba(143,209,106,.16);
  color: #edf5f1;
  vertical-align: bottom;
  border: 0;
  border-bottom: 1px solid var(--games-line);
  font-weight: 800;
}
.table>tbody>tr>td,
.table>tbody>tr>th,
.table>thead>tr>td,
.table>thead>tr>th {
  border-top: 1px solid var(--games-line-soft);
  padding: 11px 12px;
}
.table-striped>tbody>tr:nth-of-type(odd) { background-color: rgba(255,255,255,.025); }
.table-hover>tbody>tr:hover { background-color: rgba(143,209,106,.08); }
.games-pagination { color: var(--games-muted); font-weight: 700; }
.games-muted { color: var(--games-muted); }
.games-request-footer {
  margin-top: 28px;
  padding: 18px 0 26px;
  color: var(--games-muted);
  font-size: 13px;
}
.games-request-footer .container {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
  align-items: center;
  justify-content: center;
}
.games-request-footer span { color: var(--games-text); font-weight: 800; }
.narrow { width: 1px; white-space: nowrap; }
.nobr { white-space: nowrap; }
.djsrow > div {
  margin-top: 10px;
  padding: 20px;
  border: 1px solid var(--games-line);
  border-radius: 8px;
  background: var(--games-panel);
}
@media (max-width: 760px) {
  .games-request-hero__inner { align-items: flex-start; flex-direction: column; }
  .games-request-nav { justify-content: flex-start; }
  .games-search-form { grid-template-columns: 1fr; }
  .games-request-brand strong { font-size: 24px; }
  .table { font-size: 13px; }
}
.games-request-brand img {
  display: block;
  width: min(331px, 76vw);
  height: auto;
}
.games-request-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(5, 8, 10, .68);
  backdrop-filter: blur(6px);
}
.games-request-modal.is-open { display: flex; }
.games-request-modal__dialog {
  position: relative;
  width: min(460px, 100%);
  border: 1px solid rgba(143,209,106,.38);
  border-radius: 8px;
  background: rgba(17, 23, 25, .96);
  box-shadow: 0 24px 80px rgba(0,0,0,.45);
  padding: 22px 24px 20px;
  color: var(--games-text);
}
.games-request-modal__dialog h2 {
  margin: 0 38px 10px 0;
  color: var(--games-gold);
  font-family: Rajdhani, Inter, Arial, sans-serif;
  font-size: 28px;
  line-height: 1;
}
.games-request-modal__dialog p {
  margin: 0;
  color: #d8e0e2;
  font-size: 15px;
  line-height: 1.5;
}
.games-request-modal__close {
  position: absolute;
  top: 10px;
  right: 12px;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(143,209,106,.36);
  border-radius: 6px;
  background: rgba(255,255,255,.04);
  color: var(--games-accent);
  font-size: 26px;
  line-height: 28px;
  font-weight: 700;
}
.games-request-modal__close:hover,
.games-request-modal__close:focus {
  border-color: var(--games-gold);
  color: var(--games-gold);
  outline: none;
}
.games-admin-brand {
  padding: 20px 15px 14px;
}
.games-admin-brand img {
  display: inline-block;
  width: min(331px, 76vw);
  height: auto;
}
.games-admin-login-page {
  min-height: 100vh;
  background:
    linear-gradient(rgba(7, 10, 12, .42), rgba(7, 10, 12, .62)),
    url("/assets/games-radio-style-bg.png") center/cover fixed,
    #080d0f;
}
.games-admin-login {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 28px;
}
.games-admin-login__dialog {
  width: min(440px, 100%);
  border: 1px solid rgba(143,209,106,.42);
  border-radius: 8px;
  background: rgba(12, 17, 19, .94);
  box-shadow: 0 24px 80px rgba(0,0,0,.45);
  padding: 24px;
  color: var(--games-text);
}
.games-admin-login__dialog img {
  display: block;
  width: min(331px, 100%);
  height: auto;
  margin: 0 auto 16px;
}
.games-admin-login__dialog h1 {
  margin: 0 0 8px;
  color: var(--games-gold);
  font-family: Rajdhani, Inter, Arial, sans-serif;
  font-size: 32px;
  line-height: 1;
}
.games-admin-login__dialog p,
.games-admin-login__dialog a {
  color: #d8e0e2;
}
.games-admin-login__message {
  padding: 10px 12px;
  border: 1px solid rgba(240,195,90,.38);
  border-radius: 6px;
  background: rgba(240,195,90,.09);
}
.games-admin-login__dialog label {
  display: block;
  margin: 14px 0 6px;
  color: var(--games-muted);
  font-weight: 800;
}
.games-admin-login__dialog input {
  width: 100%;
  height: 44px;
  border: 1px solid rgba(143,209,106,.34);
  border-radius: 6px;
  background: rgba(255,255,255,.06);
  color: var(--games-text);
  padding: 0 12px;
}
 .games-admin-login__dialog form button {
  width: 100%;
  margin: 18px 0 12px;
  border: 0;
  border-radius: 6px;
  background: var(--games-gold);
  color: #111;
  font-weight: 900;
  padding: 12px 16px;
}
.games-admin-login__dialog form {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  margin-top: 18px;
}
.games-admin-login__dialog form label {
  margin: 8px 0 0;
}
.games-admin-login__dialog form input {
  display: block;
  margin: 0 0 4px;
  font-size: 16px;
  line-height: 1.2;
}
.games-admin-login__dialog form button {
  margin-top: 14px;
  border: 1px solid rgba(240,195,90,.48);
  background: linear-gradient(180deg, #f1c85f, #d9a93b);
  color: #101416;
  font-family: Rajdhani, Inter, Arial, sans-serif;
  font-size: 20px;
  line-height: 1;
  letter-spacing: 0;
  text-transform: uppercase;
  box-shadow: 0 10px 24px rgba(0,0,0,.28);
}
.games-admin-login__dialog form button:hover,
.games-admin-login__dialog form button:focus {
  background: linear-gradient(180deg, #ffd879, #e2b54a);
  color: #080d0f;
  outline: 2px solid rgba(143,209,106,.45);
  outline-offset: 2px;
}
.games-admin-login__dialog > .games-request-modal__close {
  width: 34px;
  height: 34px;
  margin: 0;
  padding: 0;
  border: 1px solid rgba(143,209,106,.36);
  background: rgba(255,255,255,.04);
  color: var(--games-accent);
  font-family: Inter, Arial, sans-serif;
  font-size: 26px;
  line-height: 28px;
  text-transform: none;
  box-shadow: none;
}
