/*
Theme Name: Odia Chasi
Theme URI: https://odiachasi.com
Author: Odia Chasi Development Team
Author URI: https://odiachasi.com
Description: A modern, trusted, bilingual agricultural platform WordPress theme for farmers in Odisha and rural India. Features full Elementor support, Custom Post Types for Farming Tips, Affiliate Products, and Government Schemes, plus an exact high-conversion design system.
Version: 1.1.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: odia-chasi
Tags: agriculture, elementor, custom-colors, custom-header, custom-menu, featured-images, full-width-template, theme-options, translation-ready, e-commerce, blog

Odia Chasi WordPress Theme, (C) 2026 Odia Chasi.
*/

:root {
  --color-primary: #145C35;
  --color-primary-dark: #0D4528;
  --color-primary-light: #287A48;
  --color-soft-sage: #DCEED7;
  --color-very-light-green: #EEF7EA;
  --color-warm-cream: #F8F8F3;
  --color-white: #FFFFFF;
  --color-accent: #FF6B16;
  --color-accent-light: #FFF0E7;
  --color-dark-text: #183529;
  --color-body-text: #55655D;
  --color-muted: #7C8B82;
  --color-border: #DDE6DD;
  --max-w-container: 1280px;
}

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

body {
  margin: 0;
  padding: 0;
  background-color: var(--color-warm-cream);
  color: var(--color-dark-text);
  font-family: 'Plus Jakarta Sans', 'Noto Sans Oriya', system-ui, -apple-system, sans-serif;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

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

h1, h2, h3, h4, h5, h6 {
  color: var(--color-primary);
  font-weight: 700;
  line-height: 1.2;
  margin-top: 0;
}

a {
  color: var(--color-primary);
  text-decoration: none;
  transition: all 0.2s ease;
}

a:hover {
  color: var(--color-accent);
}

.oc-container {
  max-width: var(--max-w-container);
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}

/* Elementor Full Width Compatibility */
.odia-chasi-elementor-full-width,
.elementor-template-full-width .site-main {
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin: 0;
}

/* Primary Button (Orange) */
.oc-btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background-color: var(--color-accent);
  color: #FFFFFF !important;
  font-weight: 700;
  font-size: 15px;
  padding: 12px 24px;
  border-radius: 12px;
  box-shadow: 0 4px 14px rgba(255, 107, 22, 0.25);
  border: none;
  cursor: pointer;
  transition: all 0.2s ease;
  text-decoration: none;
}

.oc-btn-primary:hover {
  background-color: #E05B0D;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(255, 107, 22, 0.35);
  color: #FFFFFF !important;
}

/* Secondary Button (Outlined / Green) */
.oc-btn-secondary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background-color: #FFFFFF;
  color: var(--color-primary) !important;
  font-weight: 700;
  font-size: 15px;
  padding: 12px 24px;
  border-radius: 12px;
  border: 1.5px solid var(--color-border);
  cursor: pointer;
  transition: all 0.2s ease;
  text-decoration: none;
}

.oc-btn-secondary:hover {
  background-color: var(--color-very-light-green);
  border-color: var(--color-primary-light);
}

/* Cards & Layout */
.oc-card {
  background: #FFFFFF;
  border: 1px solid var(--color-border);
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  display: flex;
  flex-direction: column;
}

.oc-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 28px rgba(0,0,0,0.08);
}

.oc-card-body {
  padding: 24px;
  flex: 1;
  display: flex;
  flex-direction: column;
}

.oc-grid-4 {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 24px;
}

.oc-grid-3 {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 28px;
}

.oc-grid-2 {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
  gap: 32px;
}

/* Affiliate Disclosure Box */
.oc-affiliate-box {
  background: var(--color-accent-light);
  border: 1px solid rgba(255, 107, 22, 0.3);
  border-radius: 16px;
  padding: 14px 20px;
  margin: 20px 0;
  font-size: 13px;
  color: var(--color-dark-text);
  line-height: 1.5;
}

/* Pagination */
.oc-pagination {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin: 40px 0;
}

.oc-pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 10px;
  background: #FFFFFF;
  border: 1px solid var(--color-border);
  color: var(--color-dark-text);
  font-weight: 700;
  text-decoration: none;
}

.oc-pagination .page-numbers.current {
  background: var(--color-primary);
  color: #FFFFFF;
  border-color: var(--color-primary);
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .oc-grid-4, .oc-grid-3, .oc-grid-2 {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
