/* CPUNK.IO - Main Stylesheet */
/* Identity Protocol Theme - Cyan/Blue Colors */

/* Import Order: Foundation → Colors → Components → Navigation → Animations → Layout */
@import url('./shared-foundation.css');
@import url('./cpunk-theme-io-colors.css');
@import url('./shared-components.css');
@import url('./shared-navigation.css');
@import url('./animations.css');
@import url('./layout-utilities.css');

/* Page-Specific Overrides and Customizations */

/* Body Setup with Identity Theme */
body {
  background: var(--gradient-bg);
}

/* Enhanced Hero Section for Identity Theme */
.hero {
  background: 
    radial-gradient(circle at 30% 30%, rgba(0, 255, 204, 0.15) 0%, transparent 40%),
    radial-gradient(circle at 70% 70%, rgba(0, 136, 255, 0.1) 0%, transparent 40%),
    linear-gradient(135deg, rgba(0, 0, 0, 0.8) 0%, rgba(26, 26, 26, 0.6) 100%);
}

/* Identity-Specific Link Styling - Maintain Orange for cpunk.club Cross-Reference */
.cpunk-club-link {
  display: inline-block;
  margin: var(--space-4) 0;
  padding: var(--space-3) var(--space-6);
  background: linear-gradient(135deg, #ff6b35, #f7931e, #ff8c42);
  color: white;
  font-weight: var(--fw-semibold);
  border-radius: 25px;
  text-decoration: none;
  transition: all 400ms var(--ease-smooth);
  box-shadow: 
    0 4px 15px rgba(255, 107, 53, 0.4),
    inset 0 1px 0 rgba(255, 255, 255, 0.2);
  position: relative;
  overflow: hidden;
  background-size: 200% 200%;
  animation: clubLinkPulse 3s ease-in-out infinite;
}

@keyframes clubLinkPulse {
  0%, 100% { 
    background-position: 0% 50%; 
    box-shadow: 0 4px 15px rgba(255, 107, 53, 0.4); 
  }
  50% { 
    background-position: 100% 50%; 
    box-shadow: 0 6px 20px rgba(255, 107, 53, 0.6); 
  }
}

.cpunk-club-link:hover {
  transform: translateY(-4px) scale(1.05);
  box-shadow: 
    0 12px 30px rgba(255, 107, 53, 0.6),
    0 0 0 2px rgba(255, 107, 53, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.3);
  color: white;
  filter: brightness(1.1);
}

/* Enhanced Interactive Elements for Identity Platform */
.identity-card {
  background: linear-gradient(135deg, var(--bg-secondary) 0%, var(--bg-tertiary) 100%);
  border: 1px solid var(--border-primary);
  border-radius: var(--radius-xl);
  padding: var(--space-8);
  transition: all 500ms var(--ease-smooth);
  position: relative;
  overflow: hidden;
}

.identity-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(0, 255, 204, 0.1), transparent);
  transition: left 500ms ease;
}

.identity-card:hover::before {
  left: 100%;
}

.identity-card:hover {
  border-color: var(--accent-primary);
  box-shadow: 
    0 10px 40px var(--accent-glow),
    0 0 0 1px rgba(0, 255, 204, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
  transform: translateY(-4px) scale(1.01);
  background: linear-gradient(135deg, rgba(26, 26, 26, 0.9) 0%, rgba(42, 42, 42, 0.9) 100%);
}

/* DNA Registration Specific Styles */
.dna-card {
  background: var(--bg-secondary);
  border: 1px solid var(--border-primary);
  border-radius: var(--radius-lg);
  padding: var(--space-6);
  transition: all var(--transition-base) ease;
}

.dna-card:hover {
  border-color: var(--accent-primary);
  box-shadow: var(--shadow-glow-sm);
}

.dna-name {
  font-family: var(--font-heading);
  font-size: var(--fs-xl);
  color: var(--accent-primary);
  font-weight: var(--fw-bold);
}

.dna-address {
  font-family: var(--font-mono);
  font-size: var(--fs-sm);
  color: var(--text-muted);
  word-break: break-all;
}

/* Protocol Service Styles */
.protocol-service {
  background: var(--bg-secondary);
  border: 1px solid var(--border-primary);
  border-radius: var(--radius-lg);
  padding: var(--space-6);
  margin-bottom: var(--space-4);
  transition: all var(--transition-base) ease;
}

.protocol-service:hover {
  border-color: var(--accent-primary);
  box-shadow: var(--shadow-glow-sm);
  transform: translateY(-2px);
}

.service-title {
  font-family: var(--font-heading);
  font-size: var(--fs-lg);
  color: var(--accent-primary);
  font-weight: var(--fw-semibold);
  margin-bottom: var(--space-2);
}

.service-description {
  color: var(--text-secondary);
  line-height: var(--lh-relaxed);
}

/* API Documentation Styles */
.api-endpoint {
  background: var(--bg-tertiary);
  border: 1px solid var(--border-primary);
  border-radius: var(--radius-md);
  padding: var(--space-4);
  margin-bottom: var(--space-3);
  font-family: var(--font-mono);
}

.api-method {
  color: var(--accent-primary);
  font-weight: var(--fw-bold);
  text-transform: uppercase;
}

.api-path {
  color: var(--text-secondary);
}

/* Accessibility Enhancements */
@media (prefers-contrast: high) {
  .identity-card,
  .dna-card,
  .protocol-service {
    border: 2px solid var(--border-primary);
  }
}

/* Print Styles */
@media print {
  .navbar,
  .footer,
  .btn,
  .animate-glow-pulse,
  .animate-float {
    display: none !important;
  }
  
  body {
    background: white !important;
    color: black !important;
  }
  
  .card,
  .identity-card,
  .dna-card {
    border: 1px solid #ccc !important;
    box-shadow: none !important;
  }
}