﻿:root {
  --rc-blue-900: #003366;
  --rc-blue-800: #0d4e8a;
  --rc-blue-700: #2f72b1;
  --rc-ink: #0b2338;
  --rc-text: #173954;
  --rc-muted: #5e7c97;
  --rc-surface: #ffffff;
  --rc-surface-2: #f3f8fe;
  --rc-border: #d7e4f2;
}

html {
  position: relative;
  min-height: 100%;
  font-size: 16px;
}

body {
  margin: 0;
  margin-bottom: 0;
  font-family: "Space Grotesk", "Segoe UI", sans-serif;
  color: var(--rc-text);
  background:
    radial-gradient(1200px 540px at -10% -20%, #d6e8fb 0%, #edf5fe 46%, #f8fbff 68%, #fdfefe 100%),
    linear-gradient(160deg, rgba(0, 51, 102, 0.025) 0%, rgba(13, 78, 138, 0.02) 60%, rgba(47, 114, 177, 0.01) 100%);
}

a.navbar-brand {
  white-space: normal;
}

.rc-container {
  max-width: 1320px;
}

.nav-shell {
  position: sticky;
  top: 0;
  z-index: 1030;
  margin-inline: 0;
  width: 100%;
  border-radius: 0;
  border: 1px solid rgba(0, 51, 102, 0.12);
  background: rgba(255, 255, 255, 0.88) !important;
  backdrop-filter: blur(12px);
  box-shadow: 0 8px 18px rgba(0, 51, 102, 0.08);
}

.navbar-toggler {
  border-color: #bad2ea !important;
}

.navbar-toggler:focus {
  box-shadow: 0 0 0 .2rem rgba(0, 51, 102, .17);
}

#ResearchCaveLogo {
  max-width: 182px;
  height: auto;
}

.auth-container {
  margin-left: .85rem;
}

.user-btn {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  border: 1px solid #cfe0f1;
  background: linear-gradient(180deg, #ffffff 0%, #f2f8ff 100%);
  color: var(--rc-ink);
  border-radius: 999px;
  padding: .25rem .85rem .25rem .35rem;
  font-size: .9rem;
  font-weight: 600;
  text-decoration: none;
}

.user-btn:hover {
  background: linear-gradient(180deg, #ffffff 0%, #eaf3fd 100%);
  color: var(--rc-ink);
}

.user-btn:focus-visible {
  box-shadow: 0 0 0 .2rem rgba(0, 51, 102, .16);
}

.user-avatar {
  width: 48px;
  height: 48px;
  min-width: 48px;
  min-height: 48px;
  object-fit: cover;
  border-radius: 50%;
  border: 2px solid #d4e1ef;
}

.auth-menu {
  border: 1px solid #d7e5f3;
  border-radius: .25rem;
  padding: .35rem;
}

.auth-menu .dropdown-item {
  border-radius: .6rem;
  font-weight: 500;
}

.footer-compact {
  border-top: 1px solid #d6e3f0;
  background: linear-gradient(180deg, #f7fbff 0%, #edf5fd 100%);
  padding: .72rem 0;
}

.footer-muted {
  color: var(--rc-muted);
}

.footer-link {
  color: var(--rc-blue-900);
  font-weight: 700;
  letter-spacing: .01em;
  text-decoration: none;
}

.footer-link:hover {
  color: var(--rc-blue-800);
  text-decoration: underline;
}

.mono {
  font-family: "JetBrains Mono", Consolas, monospace;
}
