/* ==========================================================================
   S2 (Sovereign Sports) brand skin for Forgejo
   Applied over the built-in forgejo-dark theme via custom/templates header hook.
   Tokens mirror gdie/frontend/public/brand/brand-system.css.
   ========================================================================== */

/* ---- self-hosted brand fonts (served from /assets/fonts/) ---- */
@font-face {
  font-family: 'Orbitron';
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url('/assets/fonts/orbitron-variable-latin.woff2') format('woff2');
}
@font-face {
  font-family: 'Quantico';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/quantico-400-latin.woff2') format('woff2');
}
@font-face {
  font-family: 'Quantico';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/assets/fonts/quantico-700-latin.woff2') format('woff2');
}

/* ---- brand color tokens override forgejo-dark (custom props win via !important) ---- */
:root {
  /* accent = glow gold */
  --color-primary: #FFD700 !important;
  --color-primary-contrast: #0F1012 !important;
  --color-primary-hover: #FFDE33 !important;
  --color-primary-active: #E6C200 !important;
  --color-primary-dark-1: #FFDE33 !important;
  --color-primary-dark-2: #FFE34D !important;
  --color-primary-dark-3: #FFE866 !important;
  --color-primary-dark-4: #FFED80 !important;
  --color-primary-dark-5: #FFF2A0 !important;
  --color-primary-dark-6: #FFF7C0 !important;
  --color-primary-dark-7: #FFFBE0 !important;
  --color-primary-light-1: #E6C200 !important;
  --color-primary-light-2: #CCAC00 !important;
  --color-primary-light-3: #B39700 !important;
  --color-primary-light-4: #998200 !important;
  --color-primary-light-5: #806C00 !important;
  --color-primary-light-6: #665700 !important;
  --color-primary-light-7: #4D4100 !important;
  --color-primary-alpha-10: #ffd7001a !important;
  --color-primary-alpha-20: #ffd70033 !important;
  --color-primary-alpha-30: #ffd7004b !important;
  --color-primary-alpha-40: #ffd70066 !important;
  --color-primary-alpha-50: #ffd70080 !important;
  --color-primary-alpha-60: #ffd70099 !important;
  --color-primary-alpha-70: #ffd700b3 !important;
  --color-primary-alpha-80: #ffd700cc !important;
  --color-primary-alpha-90: #ffd700e1 !important;

  /* surfaces = stealth / chassis */
  --color-body: #0F1012 !important;
  --color-box-body: #1C1E21 !important;
  --color-box-body-highlight: #23262B !important;
  --color-box-header: #23262B !important;
  --color-nav-bg: #0F1012 !important;
  --color-menu: #16181B !important;
  --color-footer: #0F1012 !important;
  --color-hover: #23262B !important;
  --color-active: #2A2E33 !important;

  /* type */
  --fonts-proportional: 'Quantico', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif !important;
}

/* ---- apply fonts ---- */
body, .ui, .ui.menu, input, textarea, select, button, .ui.button, .markup {
  font-family: var(--fonts-proportional);
}
/* keep code/monospace untouched */
code, pre, .file-view, .lines-code, .mono, tt, kbd { font-family: var(--fonts-monospace) !important; }

/* brand-forward display type: navbar brand + page headers = Orbitron, wide, uppercase */
#navbar .item.brand, .navbar .brand, #navbar .brand strong,
.ui.header, h1, h2, h3 {
  font-family: 'Orbitron', 'Quantico', sans-serif !important;
}
#navbar .item.brand, .navbar .brand {
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-weight: 700;
}

/* force the navbar logo to the S2 mark, cache-busting the hardcoded /assets/img/logo.svg */
#navbar img[alt="Logo"], .navbar img[alt="Logo"], img[alt="Logo"][src$="logo.svg"] {
  content: url("/assets/img/logo.svg?v=3") !important;
}

/* gold glow on the top navbar bottom border, per brand */
#navbar, .ui.secondary.menu.navbar, .full.height > .following.bar {
  border-bottom: 1px solid rgba(255, 215, 0, 0.15) !important;
}

/* ==========================================================================
   Login page: SSO-only, centered, branded "S2 SSO" button
   ========================================================================== */
.user.signin .page.grid {
  min-height: calc(100vh - 220px);
  align-items: center;
  justify-content: center;
}
.user.signin .column {
  max-width: 420px !important;
  margin: auto !important;
  float: none !important;
}
/* remove local username/password login + the "or" divider + forgot-password box */
.user.signin form.ui.form { display: none !important; }
.user.signin .divider.divider-text { display: none !important; }
.user.signin a[href*="forgot_password"] { display: none !important; }
.user.signin .attached.segment.header.top:has(a[href*="forgot_password"]),
.user.signin .field:has(> a[href*="forgot_password"]) { display: none !important; }

/* the OAuth (Google/OIDC) button block, centered */
#oauth2-login-navigator { padding: 0 !important; }
#oauth2-login-navigator-inner { align-items: stretch !important; gap: 0 !important; }

/* rebrand + rename the SSO button to "S2 SSO" (hide original icon/label) */
.oauth-login-link {
  font-size: 0 !important;
  min-height: 52px;
  border: 1px solid var(--color-primary) !important;
  background: transparent !important;
  color: var(--color-primary) !important;
  border-radius: 8px !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
.oauth-login-link > *, .oauth-login-link img, .oauth-login-link svg { display: none !important; }
.oauth-login-link::after {
  content: 'S2 SSO';
  font-family: 'Orbitron', sans-serif;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--color-primary);
}
.oauth-login-link:hover {
  background: var(--color-primary) !important;
  box-shadow: 0 0 15px var(--color-primary) !important;
  transform: translateY(-1px);
}
.oauth-login-link:hover::after { color: #0F1012; }
