/* Outliers Admin — dense data layer over the game's design system */

.adminbody { background: #F6F5F0; }

.topbar__inner--admin { max-width: 72rem; }
.wordmark--admin em { font-style: normal; color: var(--ink-faint); font-weight: 400; margin-left: 0.15rem; }
.wordmark__gem--admin { background: var(--ink); }

.adminnav { display: flex; gap: 0.2rem; align-items: center; }
.adminnav__link {
  padding: 0.35rem 0.75rem;
  border-radius: 2rem;
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--ink-soft);
  text-decoration: none;
}
.adminnav__link:hover { background: var(--gold-soft); color: var(--ink); }
.adminnav__link--active { background: var(--ink); color: var(--paper); }
.adminnav__link--out { color: var(--gold-deep); }

.adminpage { max-width: 72rem; margin: 0 auto; padding: 1.5rem 1rem 4rem; }

.aheading {
  font-family: var(--font-display);
  font-size: 1.3rem;
  font-weight: 700;
  margin: 1.6rem 0 0.6rem;
}
.aheading:first-child { margin-top: 0; }
.aheading small { font-family: var(--font-ui); font-size: 0.8rem; font-weight: 600; color: var(--ink-faint); margin-left: 0.4rem; }

/* stat tiles */
.atiles { display: grid; grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr)); gap: 0.5rem; }
.atile {
  background: var(--paper-raised);
  border: 1px solid var(--line);
  border-radius: 0.6rem;
  padding: 0.8rem 1rem;
}
.atile b { display: block; font-family: var(--font-display); font-size: 1.7rem; font-weight: 700; }
.atile small { font-size: 0.7rem; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ink-faint); }

/* CSS bar charts */
.chartcard { background: var(--paper-raised); border: 1px solid var(--line); border-radius: 0.6rem; padding: 1rem; }
.bars { display: flex; align-items: stretch; gap: 3px; height: 120px; }
.bars__day { flex: 1; height: 100%; display: flex; flex-direction: column-reverse; gap: 1px; min-width: 6px; }
.bars__seg { border-radius: 2px 2px 0 0; }
.bars__seg--human { background: var(--gold-bright); }
.bars__seg--bot { background: #D8D4C8; }
.bars__seg--signup { background: var(--ink); }
.bars__labels { display: flex; justify-content: space-between; font-size: 0.68rem; color: var(--ink-faint); margin-top: 0.4rem; }
.chartlegend { display: flex; gap: 1rem; font-size: 0.75rem; color: var(--ink-soft); margin-top: 0.6rem; }
.chartlegend i { display: inline-block; width: 0.7rem; height: 0.7rem; border-radius: 2px; margin-right: 0.3rem; vertical-align: -0.05em; }

/* dense tables */
.atable { width: 100%; border-collapse: collapse; background: var(--paper-raised); border: 1px solid var(--line); border-radius: 0.6rem; overflow: hidden; font-size: 0.86rem; }
.atable th {
  text-align: left; padding: 0.5rem 0.75rem;
  font-size: 0.68rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase;
  color: var(--ink-faint); border-bottom: 1px solid var(--line); background: #FBFAF6;
}
.atable td { padding: 0.45rem 0.75rem; border-bottom: 1px solid var(--line); vertical-align: middle; }
.atable tr:last-child td { border-bottom: none; }
.atable tr:hover td { background: #FBF8EF; }
.atable td.num, .atable th.num { text-align: right; font-variant-numeric: tabular-nums; }
.atable a { text-decoration: none; font-weight: 600; }
.atable a:hover { color: var(--gold-deep); }

.tablewrap { overflow-x: auto; }

/* badges */
.badge {
  display: inline-block; padding: 0.1rem 0.5rem; border-radius: 1rem;
  font-size: 0.7rem; font-weight: 700; letter-spacing: 0.04em;
}
.badge--bot { background: #EEEBE2; color: var(--ink-soft); }
.badge--human { background: var(--gold-soft); color: var(--gold-deep); }
.badge--open { background: #E7F0E7; color: #3D6B3D; }
.badge--closed { background: #EEEBE2; color: var(--ink-soft); }
.badge--banned { background: var(--red-soft); color: var(--red); }
.badge--rarest { background: var(--gold-soft); color: var(--gold-deep); }

/* filter bar */
.afilters { display: flex; gap: 0.5rem; align-items: center; margin-bottom: 0.8rem; flex-wrap: wrap; }
.afilters a { font-size: 0.82rem; font-weight: 600; color: var(--ink-soft); text-decoration: none; padding: 0.3rem 0.7rem; border-radius: 2rem; border: 1px solid var(--line-strong); background: var(--paper-raised); }
.afilters a.on { background: var(--ink); color: var(--paper); border-color: var(--ink); }
.afilters input {
  font: inherit; font-size: 0.85rem; padding: 0.35rem 0.7rem;
  border: 1px solid var(--line-strong); border-radius: 2rem; background: var(--paper-raised);
}

.agrid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; align-items: start; }
@media (max-width: 760px) { .agrid2 { grid-template-columns: 1fr; } }

.wordcell { font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; }
