/* --- Google Fonts Import --- */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Manrope:wght@300;400;500;600;700&display=swap');

/* --- Custom variables --- */
:root {
  --color-gold-glow: rgba(212, 168, 92, 0.3);
  --color-gold-bright: #d4a85c;
  --color-gold-dim: #7a5e26;
  --transition-speed: 0.3s;
  --transition-curve: cubic-bezier(0.16, 1, 0.3, 1);
}

/* --- Warm Text Shadows --- */
.text-amber-glow, 
.highlight-gold,
.display-serif .italic {
  text-shadow: 0 0 15px rgba(212, 168, 92, 0.35);
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.4));
}

/* --- Role Selector Fieldset --- */
.role-selector-fieldset {
  margin-top: 1rem;
}

/* --- Role Option Card - Styled like premium dark parchment/leather --- */
.role-option-card {
  background: linear-gradient(180deg, rgba(28,28,36,0.6) 0%, rgba(16,16,21,0.6) 100%);
  border: 1px solid rgba(245, 239, 224, 0.06);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: 
    border-color var(--transition-speed) var(--transition-curve), 
    box-shadow var(--transition-speed) var(--transition-curve),
    transform var(--transition-speed) var(--transition-curve),
    background-color var(--transition-speed) var(--transition-curve);
  user-select: none;
}

/* Dark parchment subtle overlay pattern */
.role-option-card::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle at 10% 20%, rgba(255, 255, 255, 0.015) 0%, transparent 100%);
  border-radius: 12px;
  pointer-events: none;
}

/* Hover state: Gold glow aura */
.role-option-card:hover {
  border-color: rgba(212, 168, 92, 0.25);
  box-shadow: 0 0 15px var(--color-gold-glow);
  transform: translateY(-2px);
}

/* Selected state: Glowing gold aura using modern CSS :has selector */
.role-option-card:has(input:checked) {
  border-color: var(--color-gold-bright);
  box-shadow: 0 0 15px var(--color-gold-glow);
  background: linear-gradient(180deg, rgba(38, 38, 46, 0.75) 0%, rgba(22, 22, 28, 0.75) 100%);
}

/* Custom Radio Indicator styling */
.custom-radio {
  width: 20px;
  height: 20px;
  border: 2px solid rgba(212, 168, 92, 0.35);
  border-radius: 50%;
  display: inline-block;
  position: relative;
  flex-shrink: 0;
  background: rgba(0, 0, 0, 0.4);
  transition: 
    border-color var(--transition-speed) var(--transition-curve), 
    box-shadow var(--transition-speed) var(--transition-curve);
}

/* Hovering card highlights radio circle border */
.role-option-card:hover .custom-radio {
  border-color: rgba(212, 168, 92, 0.7);
}

/* Custom Radio active dot representation */
.custom-radio::after {
  content: '';
  position: absolute;
  width: 10px;
  height: 10px;
  background: radial-gradient(circle, #f5e7c1 0%, var(--color-gold-bright) 100%);
  border-radius: 50%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0);
  transition: transform 0.25s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  box-shadow: 0 0 8px rgba(212, 168, 92, 0.8);
}

/* Active checked radio states */
.role-option-card input:checked + .custom-radio {
  border-color: var(--color-gold-bright);
  box-shadow: 0 0 8px rgba(212, 168, 92, 0.3);
}

.role-option-card input:checked + .custom-radio::after {
  transform: translate(-50%, -50%) scale(1);
}

/* Rotating Amulet Medal */
.founder-medal-rotator {
  transition: transform 1.2s var(--transition-curve), filter 0.4s ease;
  filter: drop-shadow(0 0 12px rgba(212, 168, 92, 0.25));
}

.founder-medal-rotator:hover {
  transform: scale(1.08) rotate(360deg);
  filter: drop-shadow(0 0 25px rgba(212, 168, 92, 0.6)) brightness(1.05);
}

/* Custom scrollbars for a cohesive experience */
::-webkit-scrollbar {
  width: 8px;
}

::-webkit-scrollbar-track {
  background: #08080b;
}

::-webkit-scrollbar-thumb {
  background: rgba(212, 168, 92, 0.2);
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: rgba(212, 168, 92, 0.4);
}
