@import "tailwindcss";

@theme {
  /* Fonts */
  --font-sans: 'Montserrat', sans-serif;
  --font-heading: 'Montserrat', sans-serif;

  /* RIOT Theme Colors - REPLICA EDITION */
  --color-riot-blue-top: #2b49a3;
  --color-riot-blue-bot: #0b0f2a;
  
  /* Accents */
  --color-riot-pink: #d84178;
  
  /* Text Colors */
  --color-text-main: #ffffff;
  --color-text-muted: rgba(255, 255, 255, 0.6);
}

html,
body {
  margin: 0;
  width: 100%;
  min-height: 100vh;
  background-color: #0b0f2a;
  background-image: radial-gradient(circle at top center, #485ed6 0%, #03040d 85%);
  background-attachment: fixed;
  color: var(--color-text-main);
  font-family: 'Montserrat', sans-serif;
  scroll-behavior: smooth;
  overflow-x: hidden;
  position: relative;
}

/* Noise Overlay for Retro Poster Texture */
body::before {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
  opacity: 0.06;
  pointer-events: none;
  z-index: 9999;
  mix-blend-mode: overlay;
}

/* Navbar/Language visibility restored */

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-heading);
  color: var(--color-text-main);
}

@layer components {
  /* Updated .riot-background to match the replica theme perfectly */
  .riot-background {
    background-color: var(--color-riot-blue-bot);
    background-image: radial-gradient(circle at top center, #3d4eca 0%, #02050f 85%);
    color: white;
    position: relative; /* Ensure pseudo-element positioning works, but allow overrides by utilities */
  }

  /* Dot Pattern Overlay for Popups/Global Backgrounds */
  .riot-background::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle, rgba(255, 255, 255, 0.1) 1.5px, transparent 1.5px);
    background-size: 30px 30px;
    opacity: 0.6;
    pointer-events: none;
    z-index: 0;
  }

  /* Utility Classes */
  .text-secondary {
    color: var(--color-text-muted);
  }

  .bg-gradient-radial {
    background-image: radial-gradient(circle, var(--tw-gradient-stops));
  }

  /* Markdown Content Styling */
  .markdown-content {
    text-align: left;
  }

  .markdown-content h1, 
  .markdown-content h2, 
  .markdown-content h3,
  .markdown-content h4 {
    font-family: var(--font-heading);
    font-weight: 700;
    margin-top: 1.5rem;
    margin-bottom: 0.75rem;
    color: var(--color-text-main);
    line-height: 1.3;
  }

  .markdown-content p {
    margin-bottom: 1rem;
  }

  .markdown-content ul {
    list-style-type: disc;
    padding-left: 1.25rem;
    margin-bottom: 1rem;
  }

  .markdown-content ol {
    list-style-type: decimal;
    padding-left: 1.25rem;
    margin-bottom: 1rem;
  }

  .markdown-content li {
    margin-bottom: 0.25rem;
  }

  .markdown-content strong {
    font-weight: 700;
    color: white; /* Ensure bold stands out against muted text */
  }

  .markdown-content a {
    color: #ec4899; /* pink-400 equivalent */
    text-decoration: underline;
  }

  .markdown-content blockquote {
    border-left: 4px solid #ec4899;
    padding-left: 1rem;
    font-style: italic;
    margin-bottom: 1rem;
    color: var(--color-text-muted);
  }
}