/*
Theme Name: Names Numerology Pro
Theme URI: https://namesnumerology.in
Author: Akshay Patel & Team
Author URI: https://namesnumerology.in/about/
Description: Fast, content-first WordPress theme for numerology and name-calculator sites. Clean sidebar and search widgets, Core Web Vitals friendly, structured data, AdSense-policy-safe ad placements, and a non-destructive auto-upgrade that keeps all existing pages, posts and menus.
Version: 2.0.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: namesnumerology
Tags: numerology, astrology, calculators, responsive-layout, grid-layout, custom-menu, featured-images, translation-ready, seo-friendly, adsense-optimized
*/

/* Reset & Baseline Tokens */
:root {
  --nn-font-display: 'Cinzel', 'Outfit', Georgia, serif;
  --nn-font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --nn-font-mono: 'JetBrains Mono', monospace;

  /* Blocksy News Editorial Clean Color System */
  --nn-primary: #2563eb;          /* Blocksy Signature News Blue */
  --nn-primary-hover: #1d4ed8;    /* Darker Blue */
  --nn-secondary: #d97706;        /* Warm Editorial Amber / Gold */
  --nn-secondary-light: #f59e0b;
  --nn-accent: #e11d48;           /* News Tag Red */
  
  --nn-bg-main: #f8fafc;          /* Blocksy Crisp Off-White Base */
  --nn-bg-surface: #ffffff;       /* Pure White Card Base */
  --nn-bg-card: #ffffff;
  --nn-bg-card-hover: #f8fafc;
  --nn-bg-alt: #f1f5f9;

  --nn-text-heading: #0f172a;     /* Deep Slate Navy (Maximum Legibility) */
  --nn-text-primary: #0f172a;
  --nn-text-body: #334155;        /* High-Readability Editorial Slate */
  --nn-text-secondary: #475569;
  --nn-text-muted: #64748b;

  --nn-border-color: #e2e8f0;     /* Blocksy Light Clean Border */
  --nn-border-subtle: #f1f5f9;
  --nn-border-accent: rgba(37, 99, 235, 0.25);

  --nn-radius-sm: 6px;
  --nn-radius-md: 10px;
  --nn-radius-lg: 16px;
  --nn-radius-full: 9999px;

  --nn-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 2px rgba(0, 0, 0, 0.04);
  --nn-shadow-md: 0 4px 12px rgba(0, 0, 0, 0.06);
  --nn-shadow-lg: 0 10px 25px -5px rgba(0, 0, 0, 0.08);

  --nn-max-width: 1200px;
  --nn-content-width: 820px;
}

*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  background-color: var(--nn-bg-main, #f8fafc);
  color: var(--nn-text-body, #334155);
  font-family: var(--nn-font-sans);
  font-size: 17px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}

a {
  color: var(--nn-primary, #2563eb);
  text-decoration: none;
  transition: color 0.2s ease;
}

a:hover, a:focus {
  color: var(--nn-primary-hover, #1d4ed8);
  text-decoration: none;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}
