/**
 * ═══════════════════════════════════════════════
 * NAGALAND AI — Global Page Styles
 * Upload to: /wp-content/themes/generatepress-child/ or similar
 * ═══════════════════════════════════════════════
 * 
 * This file styles ALL content pages on nagalandai.com:
 * About Us, AI Transparency, Contact Us, Terms, Privacy,
 * Refund, Upgrade, Account, Login, Register
 *
 * Does NOT affect: Homepage (custom HTML), /nagaland-ai-schools/ (custom HTML)
 */

@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display&family=Outfit:wght@300;400;500;600;700;800&display=swap');

/* ═══ GLOBAL TYPOGRAPHY ═══ */
body:not(.home) .site-content,
body:not(.home) .entry-content,
body:not(.home) .inside-article {
  font-family: 'Outfit', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  color: #1a1a1a;
  line-height: 1.7;
}

/* ═══ FULL-WIDTH CONTENT AREA ═══ */
body:not(.home) .site-content .content-area,
body:not(.home) .site-content .inside-article {
  max-width: 820px;
  margin: 0 auto;
  padding: 40px 28px 60px;
}

body:not(.home) #primary {
  width: 100% !important;
  float: none !important;
}

/* Hide sidebar on content pages */
body:not(.home) #secondary,
body:not(.home) .widget-area {
  display: none !important;
}

/* ═══ PAGE TITLE ═══ */
body:not(.home) .entry-header .entry-title,
body:not(.home) h1.entry-title {
  font-family: 'DM Serif Display', Georgia, serif !important;
  font-size: clamp(32px, 5vw, 48px) !important;
  font-weight: 400 !important;
  color: #0F2419 !important;
  line-height: 1.2 !important;
  margin-bottom: 12px !important;
  padding-bottom: 20px !important;
  border-bottom: 3px solid #10b981 !important;
  display: inline-block !important;
}

/* ═══ CONTENT HEADINGS ═══ */
body:not(.home) .entry-content h2 {
  font-family: 'DM Serif Display', Georgia, serif !important;
  font-size: clamp(24px, 3.5vw, 34px) !important;
  color: #0F2419 !important;
  margin-top: 48px !important;
  margin-bottom: 16px !important;
  padding-bottom: 10px !important;
  border-bottom: 2px solid #f3f4f6 !important;
  line-height: 1.3 !important;
}

body:not(.home) .entry-content h3 {
  font-family: 'Outfit', sans-serif !important;
  font-size: clamp(18px, 2.5vw, 22px) !important;
  font-weight: 700 !important;
  color: #0a7558 !important;
  margin-top: 32px !important;
  margin-bottom: 12px !important;
  line-height: 1.4 !important;
}

body:not(.home) .entry-content h4 {
  font-family: 'Outfit', sans-serif !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  color: #374151 !important;
  margin-top: 24px !important;
  margin-bottom: 8px !important;
}

/* ═══ PARAGRAPHS ═══ */
body:not(.home) .entry-content p {
  font-size: 16px !important;
  line-height: 1.8 !important;
  color: #374151 !important;
  margin-bottom: 20px !important;
}

/* ═══ LINKS ═══ */
body:not(.home) .entry-content a {
  color: #0a7558 !important;
  text-decoration: none !important;
  font-weight: 600 !important;
  border-bottom: 1.5px solid rgba(10, 117, 88, 0.2) !important;
  transition: all 0.2s !important;
}
body:not(.home) .entry-content a:hover {
  color: #085e47 !important;
  border-bottom-color: #0a7558 !important;
}

/* ═══ LISTS ═══ */
body:not(.home) .entry-content ul,
body:not(.home) .entry-content ol {
  margin: 16px 0 24px !important;
  padding-left: 0 !important;
  list-style: none !important;
}

body:not(.home) .entry-content ul li,
body:not(.home) .entry-content ol li {
  position: relative !important;
  padding: 10px 16px 10px 32px !important;
  margin-bottom: 6px !important;
  font-size: 15px !important;
  color: #374151 !important;
  background: #f9fafb !important;
  border-radius: 10px !important;
  border-left: 3px solid #10b981 !important;
  line-height: 1.6 !important;
}

body:not(.home) .entry-content ul li::before {
  content: "→" !important;
  position: absolute !important;
  left: 12px !important;
  color: #10b981 !important;
  font-weight: 700 !important;
}

body:not(.home) .entry-content ol {
  counter-reset: nai-counter !important;
}
body:not(.home) .entry-content ol li {
  counter-increment: nai-counter !important;
}
body:not(.home) .entry-content ol li::before {
  content: counter(nai-counter) "." !important;
  position: absolute !important;
  left: 10px !important;
  color: #0a7558 !important;
  font-weight: 800 !important;
  font-size: 14px !important;
}

/* ═══ STRONG / BOLD ═══ */
body:not(.home) .entry-content strong {
  color: #1a1a1a !important;
  font-weight: 700 !important;
}

/* ═══ BLOCKQUOTES ═══ */
body:not(.home) .entry-content blockquote {
  margin: 28px 0 !important;
  padding: 24px 28px !important;
  background: #f0fdf4 !important;
  border-left: 4px solid #0a7558 !important;
  border-radius: 0 14px 14px 0 !important;
  font-size: 16px !important;
  font-style: italic !important;
  color: #374151 !important;
}
body:not(.home) .entry-content blockquote p {
  margin-bottom: 0 !important;
}

/* ═══ TABLES ═══ */
body:not(.home) .entry-content table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  margin: 24px 0 !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  border: 1.5px solid #e5e7eb !important;
  font-size: 14px !important;
}
body:not(.home) .entry-content table th {
  background: #0F2419 !important;
  color: #fff !important;
  font-weight: 700 !important;
  padding: 14px 16px !important;
  text-align: left !important;
  font-size: 13px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}
body:not(.home) .entry-content table td {
  padding: 12px 16px !important;
  border-bottom: 1px solid #f3f4f6 !important;
  color: #374151 !important;
}
body:not(.home) .entry-content table tr:hover td {
  background: #f0fdf4 !important;
}
body:not(.home) .entry-content table tr:last-child td {
  border-bottom: none !important;
}

/* ═══ IMAGES ═══ */
body:not(.home) .entry-content img {
  border-radius: 14px !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.08) !important;
  margin: 20px 0 !important;
}

/* ═══ HR / SEPARATORS ═══ */
body:not(.home) .entry-content hr {
  border: none !important;
  height: 2px !important;
  background: linear-gradient(to right, #10b981, #d1fae5, transparent) !important;
  margin: 40px 0 !important;
}

/* ═══ CODE ═══ */
body:not(.home) .entry-content code {
  background: #f3f4f6 !important;
  padding: 3px 8px !important;
  border-radius: 6px !important;
  font-size: 13px !important;
  color: #0a7558 !important;
  font-family: 'SF Mono', 'Consolas', monospace !important;
}

body:not(.home) .entry-content pre {
  background: #0F2419 !important;
  color: #d1fae5 !important;
  padding: 20px 24px !important;
  border-radius: 14px !important;
  overflow-x: auto !important;
  margin: 24px 0 !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
}
body:not(.home) .entry-content pre code {
  background: none !important;
  color: inherit !important;
  padding: 0 !important;
}

/* ═══ FORMS (Login, Register, Account, Upgrade, Contact) ═══ */
body:not(.home) .entry-content form {
  background: #fff !important;
  border: 1.5px solid #e5e7eb !important;
  border-radius: 20px !important;
  padding: 32px !important;
  margin: 24px 0 !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.04) !important;
  max-width: 520px !important;
}

body:not(.home) .entry-content input[type="text"],
body:not(.home) .entry-content input[type="email"],
body:not(.home) .entry-content input[type="password"],
body:not(.home) .entry-content input[type="tel"],
body:not(.home) .entry-content input[type="url"],
body:not(.home) .entry-content input[type="number"],
body:not(.home) .entry-content textarea,
body:not(.home) .entry-content select {
  width: 100% !important;
  padding: 12px 14px !important;
  font-size: 15px !important;
  border: 1.5px solid #d1d5db !important;
  border-radius: 10px !important;
  background: #fff !important;
  font-family: 'Outfit', sans-serif !important;
  color: #1a1a1a !important;
  transition: all 0.2s !important;
  box-sizing: border-box !important;
  margin-bottom: 4px !important;
}
body:not(.home) .entry-content input:focus,
body:not(.home) .entry-content textarea:focus,
body:not(.home) .entry-content select:focus {
  border-color: #0a7558 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(10, 117, 88, 0.1) !important;
}

body:not(.home) .entry-content input[type="submit"],
body:not(.home) .entry-content button[type="submit"],
body:not(.home) .entry-content button:not([type]) {
  background: #0a7558 !important;
  color: #fff !important;
  padding: 14px 28px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  border: none !important;
  border-radius: 10px !important;
  cursor: pointer !important;
  font-family: 'Outfit', sans-serif !important;
  transition: all 0.2s !important;
  box-shadow: 0 2px 12px rgba(10, 117, 88, 0.2) !important;
  width: 100% !important;
  margin-top: 8px !important;
}
body:not(.home) .entry-content input[type="submit"]:hover,
body:not(.home) .entry-content button[type="submit"]:hover,
body:not(.home) .entry-content button:not([type]):hover {
  background: #085e47 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 16px rgba(10, 117, 88, 0.3) !important;
}

/* ═══ NOTICE BOXES (from payment plugin) ═══ */
body:not(.home) .entry-content div[style*="border:1px solid #ddd"] {
  background: #f0fdf4 !important;
  border: 1.5px solid #d1fae5 !important;
  border-radius: 14px !important;
  padding: 16px 20px !important;
  font-size: 14px !important;
  color: #374151 !important;
}

/* ═══ ACCOUNT PAGE STYLING ═══ */
body:not(.home) .entry-content h3 + p,
body:not(.home) .entry-content p + p {
  margin-top: 0 !important;
}

/* ═══ FIRST PARAGRAPH EMPHASIS ═══ */
body:not(.home) .entry-content > p:first-of-type {
  font-size: 18px !important;
  color: #1a1a1a !important;
  line-height: 1.7 !important;
  font-weight: 400 !important;
}

/* ═══ PAGE HERO EFFECT — top section gets subtle background ═══ */
body:not(.home) .inside-article {
  position: relative;
}
body:not(.home) .inside-article::before {
  content: '';
  position: absolute;
  top: 0;
  left: -50vw;
  right: -50vw;
  height: 300px;
  background: linear-gradient(180deg, #f0fdf4 0%, #ffffff 100%);
  z-index: -1;
  pointer-events: none;
}

/* ═══ BREADCRUMBS (if Rank Math) ═══ */
body:not(.home) .rank-math-breadcrumb,
body:not(.home) .np-breadcrumb {
  font-size: 13px !important;
  color: #9ca3af !important;
  margin-bottom: 8px !important;
}
body:not(.home) .rank-math-breadcrumb a {
  color: #0a7558 !important;
  border-bottom: none !important;
}

/* ═══ FEATURED IMAGE ═══ */
body:not(.home) .post-image {
  border-radius: 16px !important;
  overflow: hidden !important;
  margin-bottom: 32px !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.08) !important;
}

/* ═══ WP FORMS (Contact Us via WPForms) ═══ */
body:not(.home) .wpforms-container {
  background: #fff !important;
  border: 1.5px solid #e5e7eb !important;
  border-radius: 20px !important;
  padding: 32px !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.04) !important;
}
body:not(.home) .wpforms-container .wpforms-field-label {
  font-family: 'Outfit', sans-serif !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  color: #374151 !important;
}
body:not(.home) .wpforms-container input,
body:not(.home) .wpforms-container textarea {
  border-radius: 10px !important;
  border: 1.5px solid #d1d5db !important;
  padding: 12px 14px !important;
  font-family: 'Outfit', sans-serif !important;
}
body:not(.home) .wpforms-container button[type="submit"] {
  background: #0a7558 !important;
  color: #fff !important;
  border-radius: 10px !important;
  padding: 14px 28px !important;
  font-family: 'Outfit', sans-serif !important;
  font-weight: 600 !important;
  border: none !important;
  box-shadow: 0 2px 12px rgba(10, 117, 88, 0.2) !important;
}

/* ═══ GENERATE PRESS OVERRIDES ═══ */
body:not(.home) .site-content {
  background: #fff !important;
}
body:not(.home) .container.grid-container {
  max-width: 100% !important;
}

/* Remove default GeneratePress sidebar gap */
body:not(.home) .site-main {
  margin: 0 auto !important;
  max-width: 820px !important;
}

/* ═══ MOBILE RESPONSIVE ═══ */
@media (max-width: 768px) {
  body:not(.home) .site-content .inside-article {
    padding: 24px 18px 40px !important;
  }
  body:not(.home) .entry-content form {
    padding: 24px 18px !important;
    margin-left: -4px !important;
    margin-right: -4px !important;
  }
  body:not(.home) .entry-content ul li,
  body:not(.home) .entry-content ol li {
    padding: 8px 12px 8px 28px !important;
    font-size: 14px !important;
  }
  body:not(.home) .entry-content table {
    font-size: 13px !important;
  }
  body:not(.home) .entry-content table th,
  body:not(.home) .entry-content table td {
    padding: 10px 12px !important;
  }
}

/* ═══ PRINT ═══ */
@media print {
  body:not(.home) .inside-article::before { display: none !important; }
  body:not(.home) .entry-content a { border-bottom: none !important; }
}

/* ═══════════════════════════════════════════════
   UPGRADE PAGE — Plan Selection
   ═══════════════════════════════════════════════ */

/* Plan cards — the label elements wrapping each plan */
body:not(.home) .entry-content label[style*="border:1px solid"] {
  border: 2px solid #e5e7eb !important;
  border-radius: 16px !important;
  padding: 20px 20px 20px 48px !important;
  margin: 12px 0 !important;
  display: block !important;
  background: #fff !important;
  transition: all 0.2s !important;
  cursor: pointer !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.03) !important;
  position: relative !important;
}
body:not(.home) .entry-content label[style*="border:1px solid"]:hover {
  border-color: #0a7558 !important;
  background: #f0fdf4 !important;
  box-shadow: 0 4px 16px rgba(10, 117, 88, 0.1) !important;
  transform: translateY(-2px) !important;
}

/* Plan name inside label */
body:not(.home) .entry-content label[style*="border:1px solid"] div[style*="font-weight:600"] {
  font-family: 'DM Serif Display', Georgia, serif !important;
  font-size: 22px !important;
  color: #0F2419 !important;
  margin-bottom: 4px !important;
}

/* Plan pricing text */
body:not(.home) .entry-content label[style*="border:1px solid"] div[style*="color:#555"] {
  font-size: 14px !important;
  color: #6b7280 !important;
}

/* Radio buttons inside plan cards */
body:not(.home) .entry-content label[style*="border:1px solid"] input[type="radio"] {
  width: 20px !important;
  height: 20px !important;
  position: absolute !important;
  left: 18px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  accent-color: #0a7558 !important;
}

/* Billing period radios */
body:not(.home) .entry-content div[style*="margin:10px 0"] {
  background: #f9fafb !important;
  padding: 16px 20px !important;
  border-radius: 12px !important;
  margin: 20px 0 !important;
  border: 1.5px solid #e5e7eb !important;
}

/* Coupon input section */
body:not(.home) .entry-content div[style*="margin-top:12px"] input[type="text"] {
  border: 1.5px solid #d1d5db !important;
  border-radius: 10px !important;
  padding: 12px 14px !important;
  font-family: 'Outfit', sans-serif !important;
}

/* Upgrade submit button */
body:not(.home) .entry-content button[name="nai_upgrade"] {
  background: #0a7558 !important;
  color: #fff !important;
  padding: 16px 32px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  border: none !important;
  border-radius: 12px !important;
  cursor: pointer !important;
  font-family: 'Outfit', sans-serif !important;
  width: 100% !important;
  margin-top: 16px !important;
  box-shadow: 0 4px 16px rgba(10, 117, 88, 0.2) !important;
  transition: all 0.2s !important;
}
body:not(.home) .entry-content button[name="nai_upgrade"]:hover {
  background: #085e47 !important;
  transform: translateY(-2px) !important;
}

/* ═══════════════════════════════════════════════
   ACCOUNT PAGE — Status & Info
   ═══════════════════════════════════════════════ */

/* Account info card */
body:not(.home) .entry-content h3 ~ p strong {
  color: #0a7558 !important;
  font-weight: 700 !important;
}

/* Cancel button styling */
body:not(.home) .entry-content button[style*="border:1px solid #c00"] {
  border: 2px solid #ef4444 !important;
  border-radius: 10px !important;
  padding: 10px 20px !important;
  font-family: 'Outfit', sans-serif !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.2s !important;
  background: #fff !important;
  color: #ef4444 !important;
}
body:not(.home) .entry-content button[style*="border:1px solid #c00"]:hover {
  background: #fef2f2 !important;
}

/* Logout link */
body:not(.home) .entry-content p > a[href*="logout"] {
  display: inline-block !important;
  background: #f3f4f6 !important;
  color: #6b7280 !important;
  padding: 10px 24px !important;
  border-radius: 10px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  border-bottom: none !important;
  margin-top: 12px !important;
  transition: all 0.2s !important;
}
body:not(.home) .entry-content p > a[href*="logout"]:hover {
  background: #e5e7eb !important;
  color: #374151 !important;
}

/* ═══════════════════════════════════════════════
   SHARED — Login/Register Prompts
   (when user is not logged in on Account/Upgrade)
   ═══════════════════════════════════════════════ */

/* Style the bare "Login" and "Create Account" links as buttons */
body:not(.home) .entry-content > a[href*="login"]:only-child,
body:not(.home) .entry-content > p:only-child a[href*="login"],
body:not(.home) .entry-content > p:only-child a[href*="register"] {
  display: inline-block !important;
  background: #0a7558 !important;
  color: #fff !important;
  padding: 14px 32px !important;
  border-radius: 12px !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  text-decoration: none !important;
  border-bottom: none !important;
  box-shadow: 0 4px 16px rgba(10, 117, 88, 0.2) !important;
  transition: all 0.2s !important;
  margin: 4px !important;
}
body:not(.home) .entry-content > a[href*="login"]:only-child:hover,
body:not(.home) .entry-content > p:only-child a[href*="login"]:hover,
body:not(.home) .entry-content > p:only-child a[href*="register"]:hover {
  background: #085e47 !important;
  transform: translateY(-2px) !important;
}

/* Create Account link gets secondary style */
body:not(.home) .entry-content > p:only-child a[href*="register"] {
  background: #fff !important;
  color: #0a7558 !important;
  border: 2px solid #0a7558 !important;
  box-shadow: none !important;
}
body:not(.home) .entry-content > p:only-child a[href*="register"]:hover {
  background: #f0fdf4 !important;
}

/* Center the login prompt text */
body:not(.home) .entry-content > p:only-child {
  text-align: center !important;
  font-size: 17px !important;
  color: #374151 !important;
  padding: 40px 20px !important;
  max-width: 500px !important;
  margin: 40px auto !important;
  background: #fff !important;
  border-radius: 20px !important;
  border: 1.5px solid #e5e7eb !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.06) !important;
}

/* ═══════════════════════════════════════════════
   PAYMENT PAGE — Checkout
   ═══════════════════════════════════════════════ */

/* Subscription info box */
body:not(.home) .entry-content div[style*="border:1px solid #eee"] {
  border: 1.5px solid #e5e7eb !important;
  border-radius: 14px !important;
  padding: 20px !important;
  background: #f9fafb !important;
}

/* Pay button */
body:not(.home) .entry-content button#naiRzpPayBtn {
  background: #0a7558 !important;
  color: #fff !important;
  padding: 16px 32px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  border: none !important;
  border-radius: 12px !important;
  cursor: pointer !important;
  font-family: 'Outfit', sans-serif !important;
  box-shadow: 0 4px 16px rgba(10, 117, 88, 0.2) !important;
  width: 100% !important;
  transition: all 0.2s !important;
}
body:not(.home) .entry-content button#naiRzpPayBtn:hover {
  background: #085e47 !important;
  transform: translateY(-2px) !important;
}

/* ═══════════════════════════════════════════════
   LOGIN & REGISTER PAGES — Form styling
   ═══════════════════════════════════════════════ */

/* Login/Register form buttons */
body:not(.home) .entry-content button[name="nai_login"],
body:not(.home) .entry-content button[name="nai_register"] {
  background: #0a7558 !important;
  color: #fff !important;
  padding: 14px 28px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  border: none !important;
  border-radius: 12px !important;
  cursor: pointer !important;
  font-family: 'Outfit', sans-serif !important;
  width: 100% !important;
  box-shadow: 0 4px 16px rgba(10, 117, 88, 0.2) !important;
  transition: all 0.2s !important;
}
body:not(.home) .entry-content button[name="nai_login"]:hover,
body:not(.home) .entry-content button[name="nai_register"]:hover {
  background: #085e47 !important;
  transform: translateY(-2px) !important;
}

/* Input placeholders in login/register */
body:not(.home) .entry-content input[placeholder="Full Name"],
body:not(.home) .entry-content input[placeholder="Email"],
body:not(.home) .entry-content input[placeholder="Password"],
body:not(.home) .entry-content input[placeholder="Enter coupon code"] {
  margin-bottom: 12px !important;
}

/* Notice boxes from payment plugin */
body:not(.home) .entry-content div[style*="padding:10px"][style*="border:1px solid #ddd"] {
  background: #f0fdf4 !important;
  border: 1.5px solid #d1fae5 !important;
  border-radius: 14px !important;
  padding: 16px 20px !important;
  font-size: 15px !important;
  color: #374151 !important;
  margin: 20px 0 !important;
}