:root {
  --radius-xs: 0;
  --radius-sm: 0;
  --radius-md: 0;
  --radius-lg: 0;
  --radius-xl: 0;
  --ink: #0f172a;
  --muted: #5b6474;
  --muted-2: #7a8599;
  --panel: rgba(255,255,255,0.94);
  --line: rgba(15,23,42,0.12);
  --accent: #0f766e;
  --accent-2: #f59e0b;
  --shadow: 0 18px 50px rgba(15,23,42,0.12);
}

body {
  color: var(--ink);
  background:
    radial-gradient(circle at 12% 18%, rgba(15,118,110,0.12), transparent 55%),
    radial-gradient(circle at 82% 20%, rgba(59,130,246,0.12), transparent 55%),
    linear-gradient(180deg, #f6f5f2 0%, #eef2f7 55%, #e5ebf3 100%);
}

body.theme-dark {
  color: #e2e8f0;
  background:
    radial-gradient(circle at 12% 18%, rgba(15,118,110,0.2), transparent 55%),
    radial-gradient(circle at 82% 20%, rgba(59,130,246,0.18), transparent 55%),
    linear-gradient(180deg, #0b0f1a 0%, #0f172a 55%, #101827 100%);
}

.nav-shell {
  background: rgba(9,13,23,0.96);
  border-bottom: 1px solid rgba(255,255,255,0.08);
  box-shadow: 0 12px 30px rgba(15,23,42,0.22);
}

.badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 3px 10px;
  border: 1px solid rgba(15,118,110,0.3);
  background: rgba(15,118,110,0.12);
  color: #0b3f3c;
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.hero {
  background: linear-gradient(135deg, rgba(15,118,110,0.12), rgba(15,23,42,0.02));
  border: 1px solid rgba(15,118,110,0.2);
}

.rounded,
.rounded-sm,
.rounded-md,
.rounded-lg,
.rounded-xl,
.rounded-2xl,
.rounded-3xl,
.rounded-full,
.rounded-t,
.rounded-b,
.rounded-l,
.rounded-r,
.rounded-tl,
.rounded-tr,
.rounded-bl,
.rounded-br {
  border-radius: 0 !important;
}

body.theme-dark .nav-shell {
  background: rgba(2,6,23,0.96);
  border-bottom-color: rgba(148,163,184,0.2);
  box-shadow: 0 12px 30px rgba(0,0,0,0.5);
}

body.theme-dark .hero {
  background: linear-gradient(135deg, rgba(14,165,233,0.18), rgba(2,6,23,0.3));
  border-color: rgba(56,189,248,0.25);
}

.nav-link {
  border-radius: 0 !important;
  color: rgba(226,232,240,0.9);
}

.nav-shell .nav-link:hover {
  background: rgba(255,255,255,0.12);
}

.nav-toggle {
  letter-spacing: 2px;
  font-weight: 700;
  display: none !important;
}

@media (max-width: 860px) {
  .nav-toggle {
    display: inline-flex !important;
  }
  .nav-menu {
    display: none !important;
    width: 100%;
    flex-wrap: wrap;
    justify-content: flex-end;
    margin-top: 10px;
  }
  .nav-menu.open {
    display: flex !important;
  }
}

.btn,
.btn-ghost,
.btn-primary,
.btn-subtle,
.btn-danger,
.panel,
.glass,
.card,
.admin-card,
.admin-nav,
.hero,
.auth-input,
.field,
input,
select,
textarea,
.tag,
.badge,
.hint,
.admin-tab,
.bracket-viewport,
.match,
.slot,
.profile-item,
.auth-panel,
.accent-dot {
  border-radius: 0 !important;
}

body.theme-dark .badge {
  background: rgba(15,118,110,0.25);
  color: #d1fae5;
  border: 1px solid rgba(20,184,166,0.45);
}

body.theme-dark .admin-tab.active {
  box-shadow: 0 10px 25px rgba(20,184,166,0.2);
}
