/* Edge of Olympia — community portal shared theme.
   Greek/Olympia palette: Cinzel + Spectral, gold on dark marble. */
:root{
  --bg:#0c0e14; --panel:#141824; --panel2:#1b2030; --edge:#2a3145;
  --gold:#d9b25a; --gold-soft:#caa765; --ink:#e8e6df; --muted:#9aa0b0;
  --pvp:#d9534f; --safe:#4f9d69; --blue:#5aa6d9; --purple:#b58ad9;
  --shadow:0 10px 30px rgba(0,0,0,.45);
}
*{box-sizing:border-box}
body{margin:0;background:
    radial-gradient(1200px 600px at 50% -200px, #1a2030 0%, var(--bg) 60%),
    var(--bg);
  color:var(--ink);font-family:Spectral,Georgia,serif;line-height:1.6}
a{color:var(--gold);text-decoration:none}
a:hover{color:#f0d489}
.wrap{max-width:1100px;margin:0 auto;padding:0 20px}

/* ── site header / account menu ── */
header.site{border-bottom:1px solid var(--edge);background:rgba(12,14,20,.7);backdrop-filter:blur(6px);position:sticky;top:0;z-index:20}
header.site .bar{display:flex;align-items:center;gap:18px;padding:12px 0;flex-wrap:wrap}
header.site .brand{font-family:Cinzel;font-weight:900;font-size:20px;
  background:linear-gradient(180deg,#f4e4b6,#caa765 60%,#8a7038);-webkit-background-clip:text;background-clip:text;color:transparent}
header.site nav{display:flex;gap:20px;flex-wrap:wrap;font-family:Cinzel;font-size:13.5px;letter-spacing:.06em;margin-left:auto}
header.site nav a{color:var(--gold-soft)}
header.site nav a.active{color:#f4e4b6;border-bottom:2px solid var(--gold)}

/* ── search ── */
.searchbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0 0 20px}
.searchbar input,.searchbar select{
  background:var(--panel);border:1px solid var(--edge);color:var(--ink);
  font-family:Spectral,serif;font-size:14.5px;padding:9px 12px;border-radius:8px}
.searchbar input{min-width:220px}
.searchbar input:focus,.searchbar select:focus{outline:none;border-color:var(--gold-soft)}
.btn{font-family:Cinzel;font-weight:700;letter-spacing:.05em;cursor:pointer;
  background:linear-gradient(180deg,#e6c878,#b9923f);color:#241c08;border:1px solid #8a6a28;border-radius:8px;padding:9px 16px}
.btn:hover{filter:brightness(1.07)}
.btn.ghost{background:transparent;color:var(--gold);border:1px solid var(--edge)}

/* ── headings / sections ── */
.crest{font-size:12px;letter-spacing:.5em;color:var(--gold-soft);text-transform:uppercase;font-family:Cinzel}
h1.page{font-family:Cinzel;font-weight:900;font-size:clamp(30px,5vw,48px);margin:.1em 0 .15em;
  background:linear-gradient(180deg,#f4e4b6,#caa765 60%,#8a7038);-webkit-background-clip:text;background-clip:text;color:transparent}
h2{font-family:Cinzel;font-weight:700;font-size:24px;color:var(--gold);border-left:3px solid var(--gold);padding-left:12px;margin:0 0 18px}
section{padding:30px 0}

/* ── tables ── */
.tbl{width:100%;border-collapse:collapse;background:var(--panel);border:1px solid var(--edge);border-radius:12px;overflow:hidden}
.tbl th,.tbl td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--edge);font-size:14px}
.tbl th{font-family:Cinzel;font-size:12px;letter-spacing:.06em;color:var(--gold-soft);text-transform:uppercase;background:var(--panel2)}
.tbl tr:last-child td{border-bottom:none}
.tbl tr:hover td{background:rgba(217,178,90,.06)}
.tbl td.num{text-align:right;font-variant-numeric:tabular-nums}
.rank{font-family:Cinzel;color:var(--gold);font-weight:700}
.rank.r1{color:#f4e4b6} .rank.r2{color:#d8d8d8} .rank.r3{color:#cd9b63}

/* ── pills / badges ── */
.pill{display:inline-block;font-size:11px;font-family:Cinzel;letter-spacing:.06em;padding:2px 9px;border-radius:999px;border:1px solid currentColor}
.pill.pvp{color:var(--pvp)} .pill.test{color:var(--blue)} .pill.dev{color:var(--muted)}
.pill.on{color:var(--safe)} .pill.off{color:var(--muted)}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:middle}
.dot.on{background:var(--safe);box-shadow:0 0 6px var(--safe)} .dot.off{background:#444}

/* ── cards ── */
.card{background:var(--panel);border:1px solid var(--edge);border-radius:12px;padding:18px}
.muted{color:var(--muted)}
.gold{color:var(--gold)}
footer{border-top:1px solid var(--edge);padding:28px 0 50px;text-align:center;color:var(--muted);font-size:13px;margin-top:30px}

/* ── realm online badge (home) ── */
.online-badge{font-family:Cinzel;font-size:12px;letter-spacing:.05em}
.online-badge .n{color:var(--safe);font-weight:700}
