:root {
  --gold: #C9A84C;
  --gold-light: #F0D080;
  --gold-dark: #8B6914;
  --gold-pale: #F5E9C4;
  --black: #0A0804;
  --dark: #12100A;
  --dark2: #1C1912;
  --dark3: #252016;
  --mid: #2E2818;
  --text: #EAD9A8;
  --text-muted: #9A8A60;
  --red: #8B1A1A;
  --red-bright: #C0392B;
  --border: rgba(201,168,76,0.25);
  --border-bright: rgba(201,168,76,0.6);
}

* { box-sizing: border-box; margin: 0; padding: 0; }

html { scroll-behavior: smooth; }

body {
  background: var(--black);
  color: var(--text);
  font-family: 'Crimson Pro', Georgia, serif;
  font-size: 18px;
  line-height: 1.6;
  min-height: 100vh;
  overflow-x: hidden;
}

.grain {
  position: fixed; top: 0; left: 0; width: 100%; height: 100%;
  pointer-events: none; z-index: 0;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");
  background-repeat: repeat;
  opacity: 0.5;
}

.top-bar {
  position: fixed; top: 0; right: 0;
  padding: 8px 20px;
  display: flex; gap: 12px; align-items: center;
  z-index: 100;
  font-family: 'Cinzel', serif;
  font-size: 12px;
  color: var(--text-muted);
}

.btn-link {
  background: none; border: none;
  color: var(--gold); font-family: 'Cinzel', serif;
  font-size: 12px; cursor: pointer;
  text-decoration: underline;
  padding: 0;
}
.btn-link:hover { color: var(--gold-light); }

.hidden { display: none !important; }

/* ── HEADER ── */
.site-header {
  position: relative; z-index: 10;
  text-align: center;
  padding: 60px 20px 0;
  background: linear-gradient(to bottom, #1A1508 0%, transparent 100%);
  border-bottom: 1px solid var(--border);
  margin-bottom: 0;
}

.header-emblem {
  font-size: 40px; color: var(--gold);
  display: block; margin-bottom: 8px;
  animation: float 4s ease-in-out infinite;
}

@keyframes float {
  0%,100% { transform: translateY(0); }
  50% { transform: translateY(-6px); }
}

.site-title {
  font-family: 'Cinzel Decorative', serif;
  font-size: clamp(2.2rem, 6vw, 4.5rem);
  font-weight: 900;
  color: var(--gold);
  text-shadow: 0 0 40px rgba(201,168,76,0.4), 0 2px 4px rgba(0,0,0,0.8);
  letter-spacing: 0.05em;
  line-height: 1.1;
  margin-bottom: 6px;
}

.site-subtitle {
  font-family: 'Cinzel', serif;
  font-size: 0.85rem;
  letter-spacing: 0.3em;
  color: var(--text-muted);
  text-transform: uppercase;
  margin-bottom: 30px;
}

.main-nav {
  display: flex; justify-content: center; gap: 0;
  flex-wrap: wrap;
  border-top: 1px solid var(--border);
  background: rgba(10,8,4,0.8);
  backdrop-filter: blur(4px);
  overflow-x: auto;
}

.nav-link {
  font-family: 'Cinzel', serif;
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--text-muted);
  text-decoration: none;
  padding: 13px 14px;
  border-bottom: 2px solid transparent;
  transition: all 0.2s;
  white-space: nowrap;
}
.nav-link:hover, .nav-link.active {
  color: var(--gold);
  border-bottom-color: var(--gold);
  background: rgba(201,168,76,0.05);
}

/* ── CONTAINER ── */
.container {
  max-width: 1100px;
  margin: 0 auto;
  padding: 40px 20px 60px;
  position: relative; z-index: 5;
}

/* ── HERO STATS ── */
.hero-stats {
  display: grid;
  grid-template-columns: 1fr 1.6fr 1fr;
  gap: 16px;
  margin-bottom: 60px;
}

.stat-card {
  background: var(--dark2);
  border: 1px solid var(--border);
  border-radius: 2px;
  padding: 28px 20px;
  text-align: center;
  display: flex; flex-direction: column;
  gap: 6px;
}

.champion-card {
  background: linear-gradient(135deg, #1A1508, #2A2010);
  border-color: var(--gold-dark);
  box-shadow: inset 0 0 30px rgba(201,168,76,0.08);
}

.stat-num {
  font-family: 'Cinzel Decorative', serif;
  font-size: 2.4rem;
  color: var(--gold);
  line-height: 1.1;
}

.champ-name {
  font-size: 1.5rem;
}

.stat-label {
  font-family: 'Cinzel', serif;
  font-size: 0.7rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--text-muted);
}

.champ-record {
  font-size: 0.8rem;
  color: var(--gold-dark);
}

/* ── SECTIONS ── */
.section-block {
  margin-bottom: 60px;
  text-align: center;
}

.section-title {
  font-family: 'Cinzel', serif;
  font-size: 1.1rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 28px;
  display: flex; align-items: center; justify-content: center; gap: 16px;
}

.gold-ornament {
  color: var(--gold-dark);
  font-size: 0.7em;
}

/* ── RANKINGS ── */
.rankings-preview {
  background: var(--dark2);
  border: 1px solid var(--border);
  border-radius: 2px;
  overflow: hidden;
  margin-bottom: 20px;
  text-align: left;
}

.rank-row {
  display: grid;
  grid-template-columns: 48px 44px 1fr auto auto;
  align-items: center;
  gap: 12px;
  padding: 14px 20px;
  border-bottom: 1px solid var(--border);
  cursor: pointer;
  transition: background 0.2s;
}
.rank-row:last-child { border-bottom: none; }
.rank-row:hover { background: rgba(201,168,76,0.06); }

.rank-num {
  font-family: 'Cinzel Decorative', serif;
  color: var(--gold);
  font-size: 1.1rem;
  font-weight: 700;
}

.rank-avatar {
  width: 38px; height: 38px; border-radius: 50%;
  background: var(--mid);
  border: 1px solid var(--border);
  display: flex; align-items: center; justify-content: center;
  font-family: 'Cinzel', serif; font-size: 0.9rem;
  color: var(--gold);
}

.rank-name {
  font-family: 'Cinzel', serif;
  font-size: 0.95rem;
  color: var(--text);
}

.rank-record {
  font-size: 0.85rem;
  color: var(--text-muted);
  font-style: italic;
}

.rank-pts {
  font-family: 'Cinzel', serif;
  font-size: 0.8rem;
  color: var(--gold-dark);
  min-width: 60px;
  text-align: right;
}

/* ── RESULTS ── */
.result-row {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto;
  align-items: center;
  gap: 12px;
  padding: 14px 20px;
  background: var(--dark2);
  border: 1px solid var(--border);
  border-top: none;
  text-align: left;
}
.result-row:first-child { border-top: 1px solid var(--border); }

.result-winner {
  font-family: 'Cinzel', serif;
  color: var(--gold);
  font-size: 0.95rem;
}

.result-vs {
  color: var(--text-muted);
  font-style: italic;
  font-size: 0.85rem;
}

.result-loser {
  color: var(--text-muted);
  font-size: 0.9rem;
}

.result-date {
  font-size: 0.75rem;
  color: var(--text-muted);
  font-family: 'Cinzel', serif;
  letter-spacing: 0.1em;
}

/* ── ROSTER MINI GRID ── */
.roster-grid-mini {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 16px;
  margin-bottom: 20px;
}

.fighter-mini-card {
  background: var(--dark2);
  border: 1px solid var(--border);
  border-radius: 2px;
  padding: 20px 12px 16px;
  text-align: center;
  cursor: pointer;
  transition: all 0.2s;
}
.fighter-mini-card:hover {
  border-color: var(--gold-dark);
  background: var(--dark3);
  transform: translateY(-2px);
}

.fighter-avatar-mini {
  width: 70px; height: 70px;
  border-radius: 50%;
  background: var(--mid);
  border: 2px solid var(--gold-dark);
  margin: 0 auto 10px;
  overflow: hidden;
  display: flex; align-items: center; justify-content: center;
}
.fighter-avatar-mini img { width: 100%; height: 100%; object-fit: cover; }
.fighter-avatar-mini span {
  font-family: 'Cinzel Decorative', serif;
  font-size: 1.6rem; color: var(--gold);
}

.fighter-mini-name {
  font-family: 'Cinzel', serif;
  font-size: 0.8rem; color: var(--text);
  margin-bottom: 4px;
}

.fighter-mini-record {
  font-size: 0.78rem; color: var(--text-muted);
}

/* ── BUTTONS ── */
.btn-gold {
  display: inline-block;
  font-family: 'Cinzel', serif;
  font-size: 0.75rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--gold);
  text-decoration: none;
  border: 1px solid var(--gold-dark);
  padding: 12px 32px;
  background: transparent;
  cursor: pointer;
  transition: all 0.2s;
  margin-top: 10px;
}
.btn-gold:hover {
  background: rgba(201,168,76,0.1);
  border-color: var(--gold);
  color: var(--gold-light);
}

.btn-admin {
  display: inline-block;
  font-family: 'Cinzel', serif;
  font-size: 0.75rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--black);
  background: var(--gold);
  border: 1px solid var(--gold);
  padding: 12px 28px;
  cursor: pointer;
  transition: all 0.2s;
  text-decoration: none;
}
.btn-admin:hover { background: var(--gold-light); }

.btn-danger {
  font-family: 'Cinzel', serif;
  font-size: 0.7rem;
  letter-spacing: 0.15em;
  color: var(--red-bright);
  background: none;
  border: 1px solid var(--red);
  padding: 8px 16px;
  cursor: pointer;
  transition: all 0.2s;
}
.btn-danger:hover { background: rgba(192,57,43,0.1); }

/* ── PAGE TITLES ── */
.page-hero {
  text-align: center;
  padding: 60px 20px 40px;
  border-bottom: 1px solid var(--border);
  margin-bottom: 40px;
  position: relative; z-index: 5;
}

.page-hero h1 {
  font-family: 'Cinzel Decorative', serif;
  font-size: clamp(1.8rem, 4vw, 3rem);
  color: var(--gold);
  text-shadow: 0 0 30px rgba(201,168,76,0.3);
  margin-bottom: 8px;
}

.page-hero p {
  font-family: 'Cinzel', serif;
  font-size: 0.75rem;
  letter-spacing: 0.3em;
  color: var(--text-muted);
  text-transform: uppercase;
}

/* ── FULL ROSTER GRID ── */
.roster-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 20px;
}

.fighter-card {
  background: var(--dark2);
  border: 1px solid var(--border);
  border-radius: 2px;
  overflow: hidden;
  cursor: pointer;
  transition: all 0.25s;
  position: relative;
}
.fighter-card:hover {
  border-color: var(--gold-dark);
  transform: translateY(-3px);
  box-shadow: 0 8px 24px rgba(0,0,0,0.6);
}

.fighter-card-img {
  width: 100%; aspect-ratio: 1;
  background: var(--mid);
  display: flex; align-items: center; justify-content: center;
  overflow: hidden;
}
.fighter-card-img img { width: 100%; height: 100%; object-fit: cover; }
.fighter-card-img .initials {
  font-family: 'Cinzel Decorative', serif;
  font-size: 3rem; color: var(--gold-dark);
}

.fighter-card-body {
  padding: 14px 16px;
  border-top: 1px solid var(--border);
}

.fighter-card-name {
  font-family: 'Cinzel', serif;
  font-size: 0.9rem;
  color: var(--gold-light);
  margin-bottom: 4px;
}

.fighter-card-meta {
  font-size: 0.82rem;
  color: var(--text-muted);
  display: flex; justify-content: space-between;
}

.champion-badge {
  position: absolute; top: 10px; right: 10px;
  background: var(--gold);
  color: var(--black);
  font-family: 'Cinzel', serif;
  font-size: 0.6rem;
  letter-spacing: 0.1em;
  padding: 3px 8px;
  text-transform: uppercase;
}

/* ── FIGHTER PROFILE ── */
.profile-layout {
  display: grid;
  grid-template-columns: 300px 1fr;
  gap: 32px;
  align-items: start;
}

.profile-img-wrap {
  background: var(--dark2);
  border: 1px solid var(--border);
  aspect-ratio: 1;
  display: flex; align-items: center; justify-content: center;
  overflow: hidden;
  position: relative;
}
.profile-img-wrap img { width: 100%; height: 100%; object-fit: cover; }
.profile-initials {
  font-family: 'Cinzel Decorative', serif;
  font-size: 5rem; color: var(--gold-dark);
}

.profile-info { background: var(--dark2); border: 1px solid var(--border); padding: 28px; }

.profile-name {
  font-family: 'Cinzel Decorative', serif;
  font-size: 2rem; color: var(--gold);
  margin-bottom: 6px;
}

.profile-tag {
  font-family: 'Cinzel', serif;
  font-size: 0.75rem; letter-spacing: 0.25em;
  color: var(--text-muted); text-transform: uppercase;
  margin-bottom: 24px;
}

.stat-grid {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 1px; background: var(--border);
  border: 1px solid var(--border);
  margin-bottom: 24px;
}

.stat-cell {
  background: var(--dark3);
  padding: 16px; text-align: center;
}

.stat-cell .num {
  font-family: 'Cinzel Decorative', serif;
  font-size: 2rem; color: var(--gold);
  display: block;
}

.stat-cell .lbl {
  font-family: 'Cinzel', serif;
  font-size: 0.65rem; letter-spacing: 0.2em;
  color: var(--text-muted); text-transform: uppercase;
}

.profile-bio {
  font-size: 1rem;
  color: var(--text-muted);
  line-height: 1.7;
  font-style: italic;
  border-top: 1px solid var(--border);
  padding-top: 16px;
}

/* ── LEADERBOARD TABLE ── */
.lb-table {
  width: 100%; border-collapse: collapse;
  font-size: 0.95rem;
}

.lb-table th {
  font-family: 'Cinzel', serif;
  font-size: 0.68rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--gold-dark);
  padding: 12px 16px;
  border-bottom: 1px solid var(--border);
  background: var(--dark3);
  text-align: left;
}

.lb-table td {
  padding: 13px 16px;
  border-bottom: 1px solid rgba(201,168,76,0.1);
  color: var(--text);
}

.lb-table tbody tr {
  background: var(--dark2);
  cursor: pointer;
  transition: background 0.15s;
}
.lb-table tbody tr:hover { background: var(--dark3); }
.lb-table tbody tr:nth-child(even) { background: rgba(30,26,15,0.8); }
.lb-table tbody tr:nth-child(even):hover { background: var(--dark3); }

.lb-rank { font-family: 'Cinzel Decorative', serif; color: var(--gold); font-size: 1.1rem; }
.lb-name { font-family: 'Cinzel', serif; color: var(--gold-light); }
.lb-win { color: #4CAF50; font-weight: 600; }
.lb-loss { color: var(--red-bright); }
.lb-pts { color: var(--gold); font-family: 'Cinzel', serif; }

/* ── ADMIN PANEL ── */
.admin-panel {
  background: var(--dark2);
  border: 1px solid var(--border);
  border-top: 3px solid var(--gold-dark);
  padding: 28px;
  margin-bottom: 30px;
}

.admin-panel h3 {
  font-family: 'Cinzel', serif;
  font-size: 0.9rem;
  letter-spacing: 0.2em;
  color: var(--gold);
  text-transform: uppercase;
  margin-bottom: 20px;
}

.form-row {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 12px;
  margin-bottom: 16px;
}

.form-group { display: flex; flex-direction: column; gap: 6px; }

.form-label {
  font-family: 'Cinzel', serif;
  font-size: 0.65rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--text-muted);
}

.form-input {
  background: var(--dark3);
  border: 1px solid var(--border);
  color: var(--text);
  padding: 10px 14px;
  font-family: 'Crimson Pro', serif;
  font-size: 1rem;
  outline: none;
  transition: border 0.2s;
}
.form-input:focus { border-color: var(--gold-dark); }
.form-input::placeholder { color: var(--text-muted); opacity: 0.6; }

/* ── LOGIN PAGE ── */
.login-wrap {
  min-height: 100vh;
  display: flex; align-items: center; justify-content: center;
}

.login-box {
  width: 380px;
  background: var(--dark2);
  border: 1px solid var(--border);
  border-top: 3px solid var(--gold);
  padding: 44px 36px;
  text-align: center;
}

.login-box h1 {
  font-family: 'Cinzel Decorative', serif;
  font-size: 1.3rem; color: var(--gold);
  margin-bottom: 8px;
}

.login-box p { font-size: 0.85rem; color: var(--text-muted); margin-bottom: 32px; }

.login-box .form-group { margin-bottom: 16px; text-align: left; }

.login-error {
  color: var(--red-bright);
  font-size: 0.85rem;
  margin-top: 12px;
  font-family: 'Cinzel', serif;
}

/* ── TABS ── */
.tab-bar {
  display: flex;
  border-bottom: 1px solid var(--border);
  margin-bottom: 28px;
}

.tab-btn {
  font-family: 'Cinzel', serif;
  font-size: 0.72rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--text-muted);
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  padding: 12px 20px;
  cursor: pointer;
  transition: all 0.2s;
}
.tab-btn.active, .tab-btn:hover {
  color: var(--gold);
  border-bottom-color: var(--gold);
}

.tab-pane { display: none; }
.tab-pane.active { display: block; }

/* ── MISC ── */
.empty-msg {
  color: var(--text-muted);
  font-style: italic;
  padding: 24px;
  text-align: center;
}

.empty-msg a { color: var(--gold); }

.divider {
  border: none;
  border-top: 1px solid var(--border);
  margin: 30px 0;
}

.badge-champ {
  display: inline-block;
  background: var(--gold);
  color: var(--black);
  font-family: 'Cinzel', serif;
  font-size: 0.6rem;
  letter-spacing: 0.1em;
  padding: 3px 10px;
  text-transform: uppercase;
  vertical-align: middle;
  margin-left: 8px;
}

.alert {
  padding: 12px 16px;
  border: 1px solid;
  font-family: 'Cinzel', serif;
  font-size: 0.8rem;
  letter-spacing: 0.1em;
  margin-bottom: 16px;
}
.alert-success { border-color: #4CAF50; color: #4CAF50; background: rgba(76,175,80,0.08); }
.alert-error { border-color: var(--red-bright); color: var(--red-bright); background: rgba(192,57,43,0.08); }

/* ── FOOTER ── */
.site-footer {
  text-align: center;
  padding: 28px;
  border-top: 1px solid var(--border);
  font-family: 'Cinzel', serif;
  font-size: 0.65rem;
  letter-spacing: 0.25em;
  color: var(--text-muted);
  text-transform: uppercase;
  position: relative; z-index: 5;
}

/* ── MATCH HISTORY ── */
.match-history-list { }
.match-item {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto;
  align-items: center;
  gap: 16px;
  padding: 14px 20px;
  background: var(--dark2);
  border: 1px solid var(--border);
  border-top: none;
  font-size: 0.95rem;
}
.match-item:first-child { border-top: 1px solid var(--border); }
.match-item .winner { font-family: 'Cinzel', serif; color: var(--gold); }
.match-item .loser { color: var(--text-muted); }
.match-item .match-date { font-size: 0.75rem; color: var(--text-muted); letter-spacing: 0.1em; }
.match-item .match-type { font-size: 0.72rem; color: var(--gold-dark); font-family: 'Cinzel', serif; letter-spacing: 0.1em; }

/* ── RESPONSIVE ── */
@media (max-width: 700px) {
  .hero-stats { grid-template-columns: 1fr; }
  .profile-layout { grid-template-columns: 1fr; }
  .rank-row { grid-template-columns: 40px 36px 1fr auto; }
  .rank-pts { display: none; }
  .result-row { grid-template-columns: 1fr auto 1fr; }
  .result-date { display: none; }
  .match-item { grid-template-columns: 1fr auto 1fr; }
  .match-item .match-date { display: none; }
}

/* ── PAGE LOAD ANIMATION ── */
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}

.container > * {
  animation: fadeUp 0.5s ease both;
}
.container > *:nth-child(1) { animation-delay: 0.05s; }
.container > *:nth-child(2) { animation-delay: 0.15s; }
.container > *:nth-child(3) { animation-delay: 0.25s; }
.container > *:nth-child(4) { animation-delay: 0.35s; }

/* ── FACTIONS ── */
.faction-card {
  border: 1px solid var(--border);
  background: var(--dark2);
  overflow: hidden;
  margin-bottom: 40px;
}
.faction-header {
  padding: 28px 32px 24px;
  position: relative;
  border-bottom: 1px solid var(--border);
}
.faction-accent {
  position: absolute; top:0; left:0; width:4px; height:100%;
}
.faction-name {
  font-family: 'Cinzel Decorative', serif;
  font-size: 1.8rem; color: var(--gold);
  margin-bottom: 4px;
}
.faction-tagline {
  font-family: 'Cinzel', serif;
  font-size: 0.78rem; letter-spacing: 0.2em;
  color: var(--text-muted); text-transform: uppercase;
  margin-bottom: 12px;
}
.faction-bio { font-style: italic; color: var(--text-muted); font-size:0.95rem; }
.faction-manager-badge {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(139,26,26,0.2); border: 1px solid #8B1A1A;
  padding: 6px 14px; margin-top: 12px;
  font-family: 'Cinzel', serif; font-size: 0.72rem;
  letter-spacing: 0.15em; color: #C0392B; text-transform: uppercase;
}
.faction-members {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 1px; background: var(--border);
}
.faction-member {
  background: var(--dark3); padding: 20px 16px; text-align: center;
  cursor: pointer; transition: background 0.2s;
}
.faction-member:hover { background: var(--mid); }
.faction-member-avatar {
  width: 60px; height: 60px; border-radius: 50%;
  margin: 0 auto 10px;
  border: 2px solid var(--border);
  display: flex; align-items: center; justify-content: center;
  font-family: 'Cinzel Decorative', serif; font-size: 1.3rem; color: var(--gold);
  overflow: hidden;
}
.faction-member-avatar img { width:100%; height:100%; object-fit:cover; }
.faction-member-name { font-family:'Cinzel',serif; font-size:0.82rem; color:var(--text); margin-bottom:3px; }
.faction-member-pts { font-size:0.75rem; color:var(--gold-dark); }
.faction-status-active {
  display:inline-block; font-family:'Cinzel',serif; font-size:0.62rem;
  letter-spacing:0.15em; padding:3px 10px;
  border:1px solid #2E7D32; color:#4CAF50; text-transform:uppercase;
}
.faction-status-inactive {
  display:inline-block; font-family:'Cinzel',serif; font-size:0.62rem;
  letter-spacing:0.15em; padding:3px 10px;
  border:1px solid var(--text-muted); color:var(--text-muted); text-transform:uppercase;
}

/* ── HOF / RETIRED ── */
.hof-banner {
  background: linear-gradient(135deg, #1A1005, #2A1A08);
  border: 1px solid var(--gold-dark);
  padding: 32px; text-align:center; margin-bottom:40px;
}
.hof-title {
  font-family:'Cinzel Decorative',serif; font-size:2rem; color:var(--gold);
  text-shadow: 0 0 20px rgba(201,168,76,0.3); margin-bottom:6px;
}
.hof-sub { font-family:'Cinzel',serif; font-size:0.72rem; letter-spacing:0.3em; color:var(--text-muted); text-transform:uppercase; }
.hof-card {
  background: linear-gradient(135deg, #1A1005, #1C1208);
  border: 1px solid var(--gold-dark);
  padding: 24px; display:flex; gap:20px; align-items:flex-start;
  margin-bottom:16px; cursor:pointer; transition: all 0.2s;
}
.hof-card:hover { border-color: var(--gold); }
.hof-avatar {
  width:80px; height:80px; flex-shrink:0; border-radius:50%;
  background:var(--mid); border:2px solid var(--gold);
  display:flex; align-items:center; justify-content:center;
  font-family:'Cinzel Decorative',serif; font-size:1.8rem; color:var(--gold);
  overflow:hidden;
}
.hof-avatar img { width:100%; height:100%; object-fit:cover; }
.hof-inductee-name { font-family:'Cinzel',serif; font-size:1.1rem; color:var(--gold-light); margin-bottom:4px; }
.hof-inductee-meta { font-size:0.82rem; color:var(--text-muted); margin-bottom:8px; }
.hof-plaque {
  font-family:'Cinzel',serif; font-size:0.68rem; letter-spacing:0.15em;
  color:var(--gold-dark); font-style:italic;
}
.retired-card {
  background:var(--dark2); border:1px solid var(--border);
  padding:20px 24px; display:flex; gap:16px; align-items:flex-start;
  margin-bottom:12px; transition: border 0.2s;
}
.retired-card:hover { border-color: var(--gold-dark); }
.retired-avatar {
  width:56px; height:56px; flex-shrink:0; border-radius:50%;
  background:var(--mid); border:1px solid var(--border);
  display:flex; align-items:center; justify-content:center;
  font-family:'Cinzel Decorative',serif; font-size:1.1rem; color:var(--text-muted);
  overflow:hidden;
}
.retired-avatar img { width:100%; height:100%; object-fit:cover; }
.retired-name { font-family:'Cinzel',serif; font-size:1rem; color:var(--text); margin-bottom:3px; }
.retired-meta { font-size:0.8rem; color:var(--text-muted); }
.role-badge {
  display:inline-block; font-family:'Cinzel',serif; font-size:0.6rem;
  letter-spacing:0.12em; padding:2px 8px; text-transform:uppercase;
  border:1px solid; margin-left:8px; vertical-align:middle;
}
.role-manager { border-color:#8B1A1A; color:#C0392B; }
.role-fighter { border-color:var(--gold-dark); color:var(--gold-dark); }

/* ── RECORDS ── */
.record-section { margin-bottom:48px; }
.record-title {
  font-family:'Cinzel',serif; font-size:0.85rem; letter-spacing:0.25em;
  color:var(--gold); text-transform:uppercase; margin-bottom:20px;
  padding-bottom:10px; border-bottom:1px solid var(--border);
  display:flex; align-items:center; gap:12px;
}
.record-row {
  display:grid; grid-template-columns:48px 1fr auto;
  align-items:center; gap:12px;
  padding:12px 16px; background:var(--dark2);
  border:1px solid var(--border); border-top:none;
  cursor:pointer; transition:background 0.15s;
}
.record-row:first-of-type { border-top:1px solid var(--border); }
.record-row:hover { background:var(--dark3); }
.record-medal { font-size:1.4rem; text-align:center; }
.record-name { font-family:'Cinzel',serif; font-size:0.9rem; color:var(--text); }
.record-name small { font-family:'Crimson Pro',serif; color:var(--text-muted); font-size:0.8rem; display:block; }
.record-val { font-family:'Cinzel Decorative',serif; font-size:1.3rem; color:var(--gold); text-align:right; }
.record-val small { font-family:'Cinzel',serif; font-size:0.6rem; color:var(--text-muted); display:block; text-align:right; }

/* ── ON THE BUBBLE ── */
.bubble-section {
  background: linear-gradient(135deg,rgba(139,26,26,0.1),rgba(18,16,10,0));
  border:1px solid rgba(139,26,26,0.3); padding:24px; margin-bottom:40px;
}
.bubble-title {
  font-family:'Cinzel',serif; font-size:0.8rem; letter-spacing:0.2em;
  color:#C0392B; text-transform:uppercase; margin-bottom:16px;
}

/* ── ADMIN REDESIGN ── */
.admin-sidebar {
  width:220px; flex-shrink:0;
  background:var(--dark2); border-right:1px solid var(--border);
  min-height:calc(100vh - 200px);
}
.admin-layout { display:flex; gap:0; }
.admin-content { flex:1; padding:32px; min-width:0; }
.sidebar-section { padding:16px 0; border-bottom:1px solid var(--border); }
.sidebar-label {
  font-family:'Cinzel',serif; font-size:0.6rem; letter-spacing:0.25em;
  color:var(--text-muted); text-transform:uppercase; padding:0 20px 8px;
}
.sidebar-btn {
  display:flex; align-items:center; gap:10px;
  width:100%; padding:10px 20px; background:none; border:none;
  color:var(--text-muted); font-family:'Cinzel',serif; font-size:0.78rem;
  letter-spacing:0.1em; cursor:pointer; text-align:left; transition:all 0.15s;
  border-left:3px solid transparent;
}
.sidebar-btn:hover { color:var(--gold); background:rgba(201,168,76,0.05); border-left-color:var(--gold-dark); }
.sidebar-btn.active { color:var(--gold); background:rgba(201,168,76,0.08); border-left-color:var(--gold); }
.sidebar-icon { font-size:1rem; width:18px; text-align:center; }

/* ── POINTS BREAKDOWN ── */
.points-grid {
  display:grid; grid-template-columns:repeat(auto-fill,minmax(140px,1fr));
  gap:8px; margin:16px 0;
}
.points-chip {
  background:var(--dark3); border:1px solid var(--border);
  padding:10px 12px; text-align:center;
}
.points-chip .chip-val { font-family:'Cinzel Decorative',serif; font-size:1.1rem; color:var(--gold); }
.points-chip .chip-lbl { font-family:'Cinzel',serif; font-size:0.58rem; letter-spacing:0.1em; color:var(--text-muted); text-transform:uppercase; margin-top:2px; }
.points-chip.zero { opacity:0.35; }

/* ── EVENTS PAGE ── */
.event-card {
  background:var(--dark2); border:1px solid var(--border);
  margin-bottom:20px; overflow:hidden;
}
.event-card-header {
  padding:16px 20px; border-bottom:1px solid var(--border);
  display:flex; justify-content:space-between; align-items:center;
}
.event-card-name { font-family:'Cinzel Decorative',serif; font-size:1rem; color:var(--gold); }
.event-card-meta { font-family:'Cinzel',serif; font-size:0.68rem; letter-spacing:0.15em; color:var(--text-muted); }

/* ── NAV EXTRAS ── */
.nav-dropdown { position:relative; }
.nav-dropdown-menu {
  display:none; position:absolute; top:100%; left:0;
  background:var(--dark); border:1px solid var(--border); z-index:200; min-width:180px;
}
.nav-dropdown:hover .nav-dropdown-menu { display:block; }
.nav-dropdown-item {
  display:block; padding:10px 16px; font-family:'Cinzel',serif;
  font-size:0.72rem; letter-spacing:0.15em; color:var(--text-muted);
  text-decoration:none; text-transform:uppercase; transition:all 0.15s;
  border-bottom:1px solid var(--border);
}
.nav-dropdown-item:hover { color:var(--gold); background:rgba(201,168,76,0.06); }

/* ── OWE LOGO ── */
.site-logo-wrap {
  padding: 40px 20px 8px;
  text-align: center;
}
.site-logo-img {
  max-height: 110px;
  width: auto;
  max-width: 90%;
  object-fit: contain;
  filter: drop-shadow(0 0 24px rgba(201,168,76,0.35));
  animation: float 4s ease-in-out infinite;
}

/* ── CHAMPIONSHIP BELT DISPLAY ── */
.belt-display {
  display: flex;
  align-items: center;
  gap: 20px;
  background: linear-gradient(135deg, #1A1005, #2A1A08);
  border: 1px solid var(--gold-dark);
  padding: 20px 24px;
  margin-bottom: 16px;
}
.belt-img {
  width: 90px;
  height: 90px;
  object-fit: contain;
  flex-shrink: 0;
  filter: drop-shadow(0 0 12px rgba(201,168,76,0.4));
}
.belt-info { flex: 1; }
.belt-title {
  font-family: 'Cinzel', serif;
  font-size: 0.7rem;
  letter-spacing: 0.25em;
  color: var(--gold-dark);
  text-transform: uppercase;
  margin-bottom: 4px;
}
.belt-holder {
  font-family: 'Cinzel Decorative', serif;
  font-size: 1.3rem;
  color: var(--gold);
  margin-bottom: 4px;
}
.belt-stats {
  font-size: 0.82rem;
  color: var(--text-muted);
  font-style: italic;
}
.belt-vacant {
  font-family: 'Cinzel', serif;
  font-size: 1rem;
  color: var(--text-muted);
  font-style: italic;
}

@media (max-width: 900px) {
  .leader-grid-wrap { grid-template-columns: 1fr !important; }
}


/* ── HOMEPAGE SQL LIVE UPGRADE ── */
.home-container { max-width: 1180px; }
.ov-home-hero {
  display:grid; grid-template-columns: 1.25fr 0.75fr; gap:22px; align-items:stretch;
  margin-bottom:26px; position:relative;
}
.ov-home-hero::before {
  content:""; position:absolute; inset:-18px -8px; z-index:-1;
  background: radial-gradient(circle at 18% 20%, rgba(201,168,76,0.16), transparent 28%), radial-gradient(circle at 84% 8%, rgba(139,26,26,0.18), transparent 30%);
  pointer-events:none;
}
.ov-home-hero-copy, .ov-hero-champ, .ov-panel, .ov-feature-card {
  background: linear-gradient(135deg, rgba(28,25,18,0.96), rgba(12,10,5,0.98));
  border:1px solid var(--border); box-shadow: inset 0 0 38px rgba(201,168,76,0.045);
}
.ov-home-hero-copy { padding:46px 42px; text-align:left; min-height:330px; display:flex; flex-direction:column; justify-content:center; }
.ov-kicker, .ov-small-kicker, .ov-card-title {
  font-family:'Cinzel',serif; text-transform:uppercase; letter-spacing:.22em; color:var(--gold-dark); font-size:.72rem;
}
.ov-home-hero h1 { font-family:'Cinzel Decorative',serif; color:var(--gold); font-size:clamp(2rem,5vw,4.2rem); line-height:1.02; margin:10px 0 14px; text-shadow:0 0 35px rgba(201,168,76,.24); }
.ov-home-hero p { color:var(--text-muted); max-width:720px; font-size:1.05rem; }
.ov-hero-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:24px; }
.btn-ghost-gold { background:transparent !important; color:var(--gold-light) !important; }
.ov-hero-champ { padding:24px; text-align:center; display:flex; flex-direction:column; justify-content:center; align-items:center; min-height:330px; }
.ov-champ-label { font-family:'Cinzel',serif; text-transform:uppercase; letter-spacing:.24em; color:var(--gold-dark); font-size:.68rem; margin-bottom:14px; }
.ov-champ-photo { width:132px; height:132px; border-radius:50%; border:2px solid var(--gold-dark); background:var(--mid); overflow:hidden; display:flex; align-items:center; justify-content:center; box-shadow:0 0 30px rgba(201,168,76,.16); }
.ov-champ-photo img, .ov-fighter-photo img, .ov-feature-photo img, .ov-avatar img { width:100%; height:100%; object-fit:cover; }
.ov-champ-photo span { font-family:'Cinzel Decorative',serif; color:var(--gold); font-size:3rem; }
.ov-hero-champ h2 { font-family:'Cinzel',serif; color:var(--gold-light); margin-top:16px; font-size:1.45rem; }
.ov-champ-record { color:var(--gold); font-family:'Cinzel',serif; font-size:.84rem; margin-top:6px; }
.ov-champ-meta { color:var(--text-muted); font-size:.9rem; margin-top:6px; }
.ov-stat-strip { display:grid; grid-template-columns:repeat(7,1fr); gap:10px; margin-bottom:52px; }
.ov-mini-stat { background:var(--dark2); border:1px solid var(--border); padding:15px 10px; text-align:center; min-height:88px; display:flex; flex-direction:column; justify-content:center; }
.ov-mini-stat strong { font-family:'Cinzel Decorative',serif; color:var(--gold); font-size:1.25rem; line-height:1.1; word-break:break-word; }
.ov-mini-stat span { font-family:'Cinzel',serif; text-transform:uppercase; letter-spacing:.16em; color:var(--text-muted); font-size:.58rem; margin-top:7px; }
.ov-section-head p { color:var(--text-muted); margin:-16px auto 24px; max-width:760px; }
.ov-card-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:16px; }
.ov-fighter-card { background:var(--dark2); border:1px solid var(--border); padding:22px 16px; cursor:pointer; transition:all .18s; }
.ov-fighter-card:hover, .ov-leader-row:hover { border-color:var(--border-bright); background:rgba(201,168,76,.055); transform:translateY(-1px); }
.ov-fighter-photo { width:96px; height:96px; border-radius:50%; border:1px solid var(--gold-dark); overflow:hidden; margin:0 auto 14px; background:var(--mid); display:flex; align-items:center; justify-content:center; }
.ov-fighter-photo span { font-family:'Cinzel Decorative',serif; color:var(--gold); font-size:2rem; }
.ov-fighter-card h3 { font-family:'Cinzel',serif; color:var(--gold-light); font-size:1rem; margin-bottom:4px; }
.ov-fighter-card p { color:var(--text-muted); font-size:.9rem; }
.ov-pill { display:inline-block; margin-top:10px; padding:4px 9px; border:1px solid var(--border); color:var(--gold-dark); font-family:'Cinzel',serif; font-size:.65rem; text-transform:uppercase; letter-spacing:.1em; }
.ov-two-col { display:grid; grid-template-columns:1fr 1fr; gap:18px; text-align:center; }
.ov-two-col-wide-left { grid-template-columns:1.18fr .82fr; }
.ov-panel { padding:22px; min-width:0; }
.ov-panel .section-title { font-size:.92rem; margin-bottom:18px; }
.ov-leader-list { display:flex; flex-direction:column; gap:10px; margin-bottom:18px; }
.ov-leader-row { background:rgba(10,8,4,.42); border:1px solid var(--border); padding:13px 14px; display:grid; grid-template-columns:auto 1fr auto; gap:12px; align-items:center; text-align:left; cursor:pointer; transition:all .18s; }
.ov-leader-row span { font-family:'Cinzel',serif; color:var(--gold-dark); font-size:.72rem; text-transform:uppercase; letter-spacing:.13em; }
.ov-leader-row strong { font-family:'Cinzel',serif; color:var(--gold-light); font-size:.9rem; }
.ov-leader-row em { color:var(--text-muted); font-size:.82rem; font-style:normal; text-align:right; }
.ov-feature-row { display:grid; grid-template-columns:1fr 1fr; gap:18px; text-align:left; }
.ov-feature-card { padding:24px; }
.ov-feature-inner { display:grid; grid-template-columns:130px 1fr; gap:22px; align-items:center; margin-top:16px; }
.ov-feature-photo { width:130px; height:130px; border-radius:8px; overflow:hidden; background:var(--mid); border:1px solid var(--gold-dark); display:flex; align-items:center; justify-content:center; }
.ov-feature-photo span { font-family:'Cinzel Decorative',serif; color:var(--gold); font-size:3rem; }
.ov-feature-card h2 { font-family:'Cinzel',serif; color:var(--gold-light); font-size:1.35rem; margin-bottom:8px; }
.ov-feature-card p { color:var(--text-muted); margin-bottom:12px; }
.ov-card-metrics { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:14px; }
.ov-card-metrics span { border:1px solid var(--border); color:var(--gold); padding:4px 8px; font-family:'Cinzel',serif; font-size:.7rem; }
.ov-update-mini { border-top:1px solid var(--border); padding:12px 0; }
.ov-update-mini span { font-family:'Cinzel',serif; color:var(--gold-dark); text-transform:uppercase; letter-spacing:.13em; font-size:.62rem; }
.ov-update-mini strong { display:block; font-family:'Cinzel',serif; color:var(--gold-light); margin:2px 0 3px; }
.ov-update-mini p { margin:0; font-size:.9rem; }
.ov-muted-small { color:var(--text-muted); font-size:.86rem; }
.ov-result-row-home { grid-template-columns:1fr auto 1fr auto; }
.fighter-avatar-mini img { width:100%; height:100%; object-fit:cover; }
@media (max-width: 900px) {
  .ov-home-hero, .ov-two-col, .ov-two-col-wide-left, .ov-feature-row { grid-template-columns:1fr; }
  .ov-stat-strip { grid-template-columns:repeat(2,1fr); }
  .ov-feature-inner { grid-template-columns:1fr; text-align:center; }
  .ov-feature-photo { margin:0 auto; }
}
@media (max-width: 620px) {
  .ov-home-hero-copy { padding:32px 24px; }
  .ov-stat-strip { grid-template-columns:1fr; }
  .ov-leader-row { grid-template-columns:1fr; gap:3px; text-align:center; }
  .ov-leader-row em { text-align:center; }
}


/* ── Image fit cleanup + belt support ───────────────────────── */
.fighter-card img,
.roster-card img,
.card-fighter img,
.fighter-image img,
.profile-image img{
  object-fit: contain !important;
  object-position: center bottom !important;
}

.fighter-card .fighter-img,
.roster-card .fighter-img,
.card-fighter .fighter-img{
  background: radial-gradient(circle at 50% 70%, rgba(201,168,76,.16), transparent 45%), #090704;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  overflow:hidden;
}

.fighter-card img,
.roster-card img,
.card-fighter img{
  max-width:100%;
  max-height:100%;
}

.belt-badge,
.king-belt-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  border:1px solid rgba(201,168,76,.35);
  background:rgba(201,168,76,.08);
  color:var(--gold-light);
  padding:7px 10px;
  font-family:'Cinzel',serif;
  letter-spacing:.1em;
  text-transform:uppercase;
  font-size:.68rem;
}

.belt-badge img,
.king-belt-badge img{
  width:34px;
  height:22px;
  object-fit:contain;
}

/* Final fighter card photo fit */
.fighter-card-img{display:flex;align-items:flex-end;justify-content:center;background:radial-gradient(circle at 50% 70%, rgba(201,168,76,.16), transparent 45%), #090704;}
.fighter-card-img img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center bottom!important;}


/* ──────────────────────────────────────────────────────────────
   2026 OWE VISUAL FACELIFT — richer black/gold site skin
   ────────────────────────────────────────────────────────────── */
body {
  background:
    radial-gradient(circle at 50% -12%, rgba(201,168,76,.18), transparent 32%),
    radial-gradient(circle at 8% 18%, rgba(201,168,76,.075), transparent 22%),
    linear-gradient(180deg, #080704 0%, #111008 42%, #050504 100%);
}
body:before {
  content:"";
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(201,168,76,.06) 0 1px, transparent 1px 100%) 50% 0/84px 84px,
    linear-gradient(rgba(201,168,76,.035) 0 1px, transparent 1px 100%) 50% 0/84px 84px;
  mask-image: radial-gradient(circle at 50% 10%, #000, transparent 72%);
  opacity:.42;
}
.site-header {
  padding-top: 36px;
  background:
    radial-gradient(circle at 50% 0%, rgba(201,168,76,.22), transparent 38%),
    linear-gradient(180deg, #151107 0%, #090806 76%, rgba(9,8,6,.92) 100%);
  box-shadow: 0 18px 50px rgba(0,0,0,.5);
}
.site-logo-wrap {
  display:flex;
  justify-content:center;
  align-items:center;
  min-height:72px;
}
.site-logo-img {
  max-width:min(360px, 78vw);
  max-height:104px;
  object-fit:contain;
  filter: drop-shadow(0 0 22px rgba(201,168,76,.42));
}
.main-nav {
  border-top:1px solid rgba(201,168,76,.24);
  border-bottom:1px solid rgba(201,168,76,.22);
  background: rgba(5,5,4,.76);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}
.nav-link {
  position:relative;
  padding:15px 18px;
}
.nav-link.active:after,
.nav-link:hover:after {
  content:"";
  position:absolute;
  left:18%;
  right:18%;
  bottom:-1px;
  height:2px;
  background:linear-gradient(90deg, transparent, var(--gold-light), transparent);
  box-shadow:0 0 14px rgba(201,168,76,.8);
}
.container {
  max-width: 1220px;
}
.section-block,
.ov-panel,
.cf,
.stat-card,
.card,
.fighter-card,
.manager-card,
.retired-card {
  border-radius: 8px !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(201,168,76,.10), transparent 36%),
    linear-gradient(180deg, rgba(28,25,18,.96), rgba(9,8,6,.98)) !important;
  border-color: rgba(201,168,76,.34) !important;
  box-shadow: 0 18px 45px rgba(0,0,0,.32), inset 0 0 34px rgba(201,168,76,.035);
}
.btn-gold,
.btn-admin,
.btn-primary {
  border-radius: 999px !important;
  background: linear-gradient(135deg, #8b6914, #f0d080 48%, #9b7517) !important;
  color:#070604 !important;
  border:1px solid rgba(240,208,128,.75) !important;
  box-shadow:0 0 18px rgba(201,168,76,.18);
}
.btn-gold:hover,
.btn-admin:hover,
.btn-primary:hover {
  transform: translateY(-1px);
  box-shadow:0 10px 24px rgba(0,0,0,.35), 0 0 24px rgba(201,168,76,.25);
}
.form-input,
input,
select,
textarea {
  border-radius: 6px !important;
  border-color: rgba(201,168,76,.28) !important;
  background-color: rgba(7,7,5,.84) !important;
}
.form-input:focus,
input:focus,
select:focus,
textarea:focus {
  outline:none;
  border-color: rgba(240,208,128,.75) !important;
  box-shadow:0 0 0 3px rgba(201,168,76,.12);
}
.site-footer {
  border-top:1px solid rgba(201,168,76,.2);
  background:linear-gradient(180deg, transparent, rgba(0,0,0,.45));
}

/* =========================================================
   FULL SITE FACELIFT PATCH — applies the Rankings style to every page
   ========================================================= */
:root{
  --ov-bg:#050402;
  --ov-card:rgba(20,16,9,.82);
  --ov-card-2:rgba(34,27,15,.78);
  --ov-gold:#d9b95d;
  --ov-gold-2:#fff0a6;
  --ov-red:#8f1717;
  --ov-line:rgba(217,185,93,.28);
  --ov-glow:0 0 30px rgba(217,185,93,.16);
  --ov-shadow:0 22px 60px rgba(0,0,0,.55);
}
body{
  background:
    radial-gradient(circle at 10% 0%, rgba(217,185,93,.12), transparent 30%),
    radial-gradient(circle at 90% 16%, rgba(143,23,23,.22), transparent 32%),
    radial-gradient(circle at 50% 100%, rgba(217,185,93,.08), transparent 36%),
    linear-gradient(180deg,#070502 0%,#0b0804 48%,#030201 100%) !important;
}
body:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:
    linear-gradient(90deg, transparent 0 48%, rgba(217,185,93,.035) 50%, transparent 52% 100%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.018) 0 1px, transparent 1px 92px);
  mask-image:linear-gradient(to bottom, rgba(0,0,0,.9), rgba(0,0,0,.15));
}
.site-header{
  padding-top:44px !important;
  background:
    linear-gradient(180deg,rgba(30,22,8,.96),rgba(10,8,4,.78) 70%,rgba(10,8,4,.18)),
    radial-gradient(circle at 50% 0%,rgba(217,185,93,.18),transparent 42%) !important;
  border-bottom:1px solid rgba(217,185,93,.34) !important;
  box-shadow:0 18px 50px rgba(0,0,0,.45);
}
.site-logo-wrap{display:flex;justify-content:center;align-items:center;margin-bottom:8px}
.site-logo-img{max-width:min(440px,88vw);filter:drop-shadow(0 14px 34px rgba(0,0,0,.75)) drop-shadow(0 0 20px rgba(217,185,93,.18));}
.site-subtitle{color:var(--ov-gold-2)!important;text-shadow:0 0 18px rgba(217,185,93,.18);}
.main-nav{
  max-width:1180px;
  margin:0 auto;
  justify-content:center;
  border:1px solid rgba(217,185,93,.22) !important;
  border-bottom:none !important;
  border-radius:18px 18px 0 0;
  background:rgba(4,3,2,.72)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 -10px 30px rgba(0,0,0,.22);
}
.nav-link{border-radius:12px 12px 0 0;margin:4px 2px 0;padding:14px 16px!important;}
.nav-link:hover,.nav-link.active{background:linear-gradient(180deg,rgba(217,185,93,.18),rgba(217,185,93,.04))!important;color:var(--ov-gold-2)!important;border-bottom-color:var(--ov-gold-2)!important;box-shadow:0 0 22px rgba(217,185,93,.12);}
.container{max-width:1220px!important;padding-top:46px!important;}
.section-block,.ov-panel,.alliance-hero,.alliance-card,.fighter-card,.manager-card,.retired-card,.season-card,.stat-card,.leader-card,.news-card,.result-card,.record-card,.login-card,form:not(.inline-form){
  border:1px solid var(--ov-line)!important;
  background:
    linear-gradient(145deg,rgba(255,255,255,.045),transparent 38%),
    radial-gradient(circle at 100% 0%,rgba(217,185,93,.12),transparent 34%),
    linear-gradient(180deg,var(--ov-card),rgba(9,7,4,.9))!important;
  box-shadow:var(--ov-shadow),inset 0 1px 0 rgba(255,255,255,.05)!important;
  border-radius:22px!important;
  overflow:hidden;
}
.section-block{padding:30px!important;margin-bottom:34px!important;position:relative;}
.section-block:before,.ov-panel:before,.fighter-card:before,.manager-card:before,.alliance-card:before{
  content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,239,166,.7),transparent);opacity:.8;
}
.ov-panel{padding:26px!important;position:relative;}
.section-title,h1,h2,h3,.page-title,.alliance-title{
  color:var(--ov-gold-2)!important;
  text-shadow:0 0 26px rgba(217,185,93,.18),0 2px 0 rgba(0,0,0,.85)!important;
}
.section-title{font-size:clamp(1.35rem,2.2vw,2.2rem)!important;margin-bottom:18px!important;}
p,.empty-msg,.alliance-copy{color:#cdbd8f!important;}
.btn-gold,button[type="submit"],.admin-btn,.btn-primary,.form-button{
  border:1px solid rgba(255,239,166,.58)!important;
  background:linear-gradient(135deg,#6e5012,#d9b95d 45%,#fff0a6 50%,#b88924)!important;
  color:#130c02!important;
  border-radius:999px!important;
  font-family:'Cinzel',serif!important;
  font-weight:800!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
  box-shadow:0 12px 28px rgba(217,185,93,.18),inset 0 1px 0 rgba(255,255,255,.55)!important;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease!important;
}
.btn-gold:hover,button[type="submit"]:hover,.admin-btn:hover,.btn-primary:hover,.form-button:hover{transform:translateY(-2px);filter:saturate(1.1);box-shadow:0 18px 36px rgba(217,185,93,.28)!important;}
.btn-ghost-gold{background:rgba(0,0,0,.25)!important;color:var(--ov-gold-2)!important;}
.form-input,input,select,textarea{
  border:1px solid rgba(217,185,93,.22)!important;
  background:rgba(0,0,0,.42)!important;
  color:#f1dfae!important;
  border-radius:14px!important;
  box-shadow:inset 0 0 18px rgba(0,0,0,.28)!important;
}
.form-input:focus,input:focus,select:focus,textarea:focus{outline:none!important;border-color:rgba(255,239,166,.72)!important;box-shadow:0 0 0 4px rgba(217,185,93,.10),inset 0 0 18px rgba(0,0,0,.28)!important;}
.roster-grid,.managers-grid,.retired-grid,.seasons-grid,.ov-card-grid{gap:22px!important;}
.fighter-card,.manager-card,.retired-card,.season-card{position:relative;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.fighter-card:hover,.manager-card:hover,.retired-card:hover,.season-card:hover,.alliance-card:hover{transform:translateY(-5px);border-color:rgba(255,239,166,.55)!important;box-shadow:0 28px 70px rgba(0,0,0,.65),0 0 34px rgba(217,185,93,.13)!important;}
.fighter-card img,.manager-card img,.retired-card img,.fighter-avatar img,.fighter-avatar-mini img,.ov-avatar img,.ov-fighter-photo img,.roster-card img{
  object-fit:cover!important;
  object-position:top center!important;
  width:100%!important;
  height:100%!important;
}
.fighter-photo,.manager-photo,.retired-photo,.fighter-avatar,.fighter-avatar-mini,.ov-avatar,.ov-fighter-photo{
  background:linear-gradient(180deg,rgba(217,185,93,.20),rgba(0,0,0,.45))!important;
  border:1px solid rgba(217,185,93,.25)!important;
  overflow:hidden!important;
}
table,.leaderboard-table,.rankings-table{
  width:100%;border-collapse:separate!important;border-spacing:0 10px!important;
}
th{color:var(--ov-gold-2)!important;font-family:'Cinzel',serif!important;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem!important;}
td{background:rgba(20,16,9,.72)!important;border-top:1px solid rgba(217,185,93,.16)!important;border-bottom:1px solid rgba(217,185,93,.16)!important;padding:14px!important;}
tr td:first-child{border-left:1px solid rgba(217,185,93,.16)!important;border-radius:14px 0 0 14px!important;}
tr td:last-child{border-right:1px solid rgba(217,185,93,.16)!important;border-radius:0 14px 14px 0!important;}
.ov-leader-row,.result-row,.ranking-row,.news-row{
  border:1px solid rgba(217,185,93,.18)!important;
  background:linear-gradient(90deg,rgba(217,185,93,.10),rgba(0,0,0,.20))!important;
  border-radius:16px!important;
  margin-bottom:10px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
}
.top-bar{background:rgba(0,0,0,.30);border:1px solid rgba(217,185,93,.14);border-top:none;border-right:none;border-radius:0 0 0 16px;backdrop-filter:blur(8px);}
.site-footer{border-top:1px solid rgba(217,185,93,.22)!important;background:rgba(0,0,0,.35)!important;}
.hero-stats,.ov-home-hero,.alliance-hero{border-radius:28px!important;}
.ov-home-hero,.alliance-hero{
  background:
    radial-gradient(circle at 85% 15%,rgba(217,185,93,.22),transparent 35%),
    radial-gradient(circle at 18% 82%,rgba(143,23,23,.24),transparent 33%),
    linear-gradient(135deg,rgba(37,29,13,.95),rgba(6,4,2,.96))!important;
  border:1px solid rgba(217,185,93,.34)!important;
  box-shadow:0 28px 80px rgba(0,0,0,.62)!important;
}
@media(max-width:700px){
  .section-block{padding:20px!important;border-radius:18px!important;}
  .nav-link{font-size:.66rem!important;padding:12px 10px!important;}
  .container{padding-left:14px!important;padding-right:14px!important;}
}
