/**
 * Fan sign-in, dashboard, profile — complements main.css tokens.
 */
.fan-account-shell main#main {
  min-height: 50vh;
}

.fan-auth-hero .section-label,
.fan-dash-hero .section-label {
  color: var(--accent-gold);
}

.fan-card {
  background: linear-gradient(145deg, var(--bg-card) 0%, var(--bg-elevated) 100%);
  border: 1px solid var(--border);
  box-shadow: 0 24px 48px rgba(0, 0, 0, 0.35);
}

.fan-input {
  background: var(--bg-deep) !important;
  border: 1px solid var(--border) !important;
  color: var(--text) !important;
  border-radius: var(--radius);
}

.fan-input:focus {
  border-color: var(--accent-gold) !important;
  box-shadow: 0 0 0 0.2rem var(--accent-gold-dim);
}

.fan-input--muted {
  opacity: 0.75;
}

.fan-form .form-label {
  letter-spacing: 0.08em;
}

.fan-tile {
  position: relative;
  transition: border-color var(--transition), transform var(--transition);
}

.fan-tile:hover {
  border-color: rgba(201, 162, 39, 0.35);
  transform: translateY(-2px);
}

.fan-tile__icon {
  width: 3rem;
  height: 3rem;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--accent-gold-dim);
  color: var(--accent-gold);
  font-size: 1.35rem;
}

.fan-toast {
  background: linear-gradient(90deg, rgba(47, 107, 82, 0.35), rgba(201, 162, 39, 0.12));
  color: var(--text);
  border-radius: var(--radius);
}
