/* Shared Wardogs Now identity. Faction and warning colours remain separate from the brand accent. */
:root {
  --bg: #171717; --panel: #222221; --raised: #2c2c2a;
  --ink: #f3f0e8; --mid: #bdbdb5; --dim: #aaa99f; --line: #3c3c38;
  --accent: #bbff00; --accent-ink: #182000; --gold: var(--accent);
  --font-sans: "IBM Plex Sans", "Segoe UI", sans-serif;
  --font-mono: "IBM Plex Mono", Consolas, monospace;
}
body { font-family: var(--font-sans); }
button, input, select, textarea { font-family: var(--font-sans); }
code, pre, kbd, .joinbox code, .pv-join code { font-family: var(--font-mono); }
body header.site { background: var(--bg); }
.bar { min-height: 80px; gap: 24px; }
.wd-logo { width: 230px; }
.nav a, .account button, .account-menu summary, .staff a, .btn, .more, .tag, .idx, .kicker,
.tabs a, .field > span, .list-head, .info dt, th:not(.rcon-main *), .board-head,
.adm .panel > h2, .adm .panel > header h2, .adm .panel h3, .adm .card .k, .adm .card .to {
  text-transform: none; letter-spacing: 0; font-weight: 500;
}
.nav-desk a { padding: 0 18px; font-size: 15px; }
.btn { border-radius: 3px; padding: 11px 17px; min-height: 44px; font-size: 15px; }
.btn.small { font-size: 14px; }
.btn.primary, .go, .findplayer button { background: var(--accent); border-color: var(--accent); color: var(--accent-ink); }
.btn.primary:hover, .go:hover { background: #caff3d; border-color: #caff3d; color: var(--accent-ink); }
.btn:not(.primary):hover { background: var(--raised); }
.tag, .idx, .kicker { font-size: 14px; }
.list-head, .field > span, .info dt, th:not(.rcon-main *), .source, .item .sub { font-size: 13px; }
.field input, .field select, .field textarea, .search input { background: var(--bg); border-radius: 3px; }
.sec-head h2 { color: var(--ink); text-transform: none; letter-spacing: -.02em; font-size: 28px; font-weight: 500; }
.pagehead h1 { text-transform: none; font-weight: 600; line-height: 1.1; }
.item.is-featured { box-shadow: none; }
.list { border-left: 0; border-right: 0; background: transparent; }
.list-head { background: var(--panel); }
.community-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; list-style: none; padding: 0; margin: 0; }
.community-card { padding: 24px; background: var(--panel); min-width: 0; display: flex; flex-direction: column; align-items: start; }
.community-card-heading { display: flex; align-items: center; gap: 16px; min-width: 0; width: 100%; }
.community-card-heading > div { min-width: 0; }
.community-card .identity-media { width: 64px; height: 64px; }
.community-card h3 { margin: 0; font-size: 22px; font-weight: 500; line-height: 1.3; overflow-wrap: anywhere; }
.community-card p { color: var(--mid); margin: 18px 0; font-size: 15px; line-height: 1.65; overflow-wrap: anywhere; }
.community-details { list-style: none; display: flex; flex-wrap: wrap; gap: 6px 14px; margin: 0 0 18px; padding: 0; font-size: 13px; color: var(--dim); }
.community-details .recruiting { color: var(--accent); }
.community-card > .more { margin-top: auto; }
.availability-note { display: block; margin-top: 4px; color: var(--mid); font: 400 12px/1.4 var(--font-sans); text-align: right; }
.copy-feedback { margin: 8px 0 0; color: var(--mid); font-size: 13px; white-space: normal; }
.copy-id { display: block; width: 100%; min-width: 0; margin-top: 6px; padding: 9px; background: var(--bg); border: 1px solid var(--line); color: var(--ink); font: 400 13px/1.4 var(--font-mono); }
.adm .panel > h2, .adm .panel > header h2 { color: var(--ink); font-size: 20px; }
.adm .panel h3 { font-size: 17px; }
.dispatches .item, .dispatches > li { background: transparent; }
.article { max-width: 780px; }
.article-head h1 { font-size: clamp(32px, 4vw, 52px); line-height: 1.12; text-transform: none; font-weight: 600; }
.article-body { font-size: 18px; line-height: 1.8; }
.article-body h2, .article-body h4 { text-transform: none; letter-spacing: 0; }
.statbar dt, .rankbadge span, .player-head .tag { text-transform: none; letter-spacing: 0; }
.meta-line, .srv-grid .joinbox, .statbar dd { font-variant-numeric: tabular-nums; }
body.rcon-page, body.rcon-page.rcon-style-hq { background: var(--bg); }
body.rcon-page :is(.rcon-main, .rcon-theme, .rcon-shell, .rcon-dialog-root, .rcon-toast-stack),
body.rcon-page.rcon-style-hq,
body.rcon-page.rcon-style-hq :is(.rcon-main, .rcon-theme, .rcon-shell, .rcon-dialog-root, .rcon-toast-stack) {
  --bg-0: #171717; --bg-1: #222221; --bg-2: #2c2c2a; --bg-3: #33332f;
  --bg0: #171717; --bg1: #222221; --bg2: #2c2c2a; --line: #3c3c38; --line2: #484842;
  --text-hi: #f3f0e8; --text-mid: #bdbdb5; --hi: #f3f0e8; --mid: #bdbdb5; --dim: #aaa99f;
  --bg-deep: #171717; --bg-panel: #222221; --bg-alt: #2c2c2a; --bg-hover: #33332f;
  --border: #3c3c38; --border-soft: #484842;
  --text-primary: #f3f0e8; --text-secondary: #bdbdb5; --text-dim: #aaa99f;
  --gold: #bbff00; --gold-tint: rgb(187 255 0 / .08); --accent: #bbff00; --accent-2: #bbff00; --accent-hot: #bbff00;
  --font: "IBM Plex Sans", "Segoe UI", sans-serif; --sans: var(--font); --display: var(--font);
  --mono-face: "IBM Plex Mono", Consolas, monospace; --mono: var(--mono-face); --technical: var(--mono-face);
  --online: #7bc462; --live: #7bc462; --ok: #7bc462; --warnc: #e8a33d;
}
.rcon-main .b, .rcon-main :is(.rcon-label, .rcon-kicker, .rcon-rail-nav a, .rcon-tabs a) { text-transform: none; letter-spacing: 0; }
.rcon-main :is(label, .field > span, .kicker, .state, .b, table.t thead th, .pill) { font-family: var(--font-sans); text-transform: none; letter-spacing: 0; }
@media (max-width: 1000px) { .community-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 700px) {
  .community-cards { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .community-card { padding: 22px; }
  .availability-note { text-align: left; }
  .wd-logo { width: 190px; }
  .bar { gap: 12px; }
  .btn.small { min-height: 44px; }
}
