/*
Theme Name: AITopTools Editorial
Theme URI: https://aitoptools.com
Author: The Editorial Curator
Author URI: https://aitoptools.com
Description: Premium Editorial AI Tools Directory WordPress theme. Features custom fields for AI tool metadata (pricing, ratings, features, live links) and automatic content population upon theme activation.
Version: 2.4.0
License: GNU General Public License v2 or later
Text Domain: aitoptools-editorial
Tags: grid-layout, custom-background, featured-images, theme-options, threaded-comments, translation-ready, e-commerce, news, editorial
*/

/* --- Editorial Aesthetic Base & Pure CSS Fallbacks --- */
:root {
  --bg-editorial: #fcfbf7;
  --text-dark: #1a1a1a;
  --accent-terracotta: #d44f31;
  --border-subtle: rgba(26, 26, 26, 0.12);
  --card-bg: #f5f3ec;
  --card-hover: #edeae0;
}

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

body {
  background-color: var(--bg-editorial) !important;
  color: var(--text-dark) !important;
  font-family: 'Plus Jakarta Sans', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  margin: 0;
  padding: 0;
  line-height: 1.6;
}

h1, h2, h3, h4, h5, h6, .font-serif {
  font-family: 'Playfair Display', Georgia, Cambria, serif;
}

a {
  color: inherit;
  text-decoration: none;
}

/* Layout Utilities */
.editorial-container, .max-w-7xl {
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.max-w-4xl { max-width: 896px; }
.max-w-2xl { max-width: 672px; }

.grid { display: grid; }
.grid-cols-1 { grid-template-columns: repeat(1, minmax(0, 1fr)); }

@media (min-width: 768px) {
  .md:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .md:grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .md:block { display: block !important; }
}

@media (min-width: 1024px) {
  .lg:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .lg:col-span-2 { grid-column: span 2 / span 2; }
  .lg:flex { display: flex !important; }
}

.flex { display: flex; }
.flex-col { flex-direction: column; }
.items-center { align-items: center; }
.justify-between { justify-content: space-between; }
.gap-2 { gap: 0.5rem; }
.gap-3 { gap: 0.75rem; }
.gap-4 { gap: 1rem; }
.gap-6 { gap: 1.5rem; }
.gap-8 { gap: 2rem; }
.gap-12 { gap: 3rem; }

.p-6 { padding: 1.5rem; }
.p-8 { padding: 2rem; }
.py-12 { padding-top: 3rem; padding-bottom: 3rem; }
.py-16 { padding-top: 4rem; padding-bottom: 4rem; }
.px-6 { padding-left: 1.5rem; padding-right: 1.5rem; }

.mb-2 { margin-bottom: 0.5rem; }
.mb-3 { margin-bottom: 0.75rem; }
.mb-4 { margin-bottom: 1rem; }
.mb-6 { margin-bottom: 1.5rem; }
.mb-8 { margin-bottom: 2rem; }
.mb-12 { margin-bottom: 3rem; }

/* Structural Component Styling */
header {
  background-color: var(--bg-editorial);
  border-bottom: 1px solid var(--border-subtle);
  position: sticky;
  top: 0;
  z-index: 40;
}

footer {
  background-color: var(--text-dark);
  color: var(--bg-editorial);
  border-top: 1px solid var(--text-dark);
  margin-top: 6rem;
}

.tool-card, article.bg-editorial-card {
  background-color: var(--card-bg);
  border: 1px solid var(--border-subtle);
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transition: all 0.25s ease;
}

.tool-card:hover, article.bg-editorial-card:hover {
  border-color: var(--text-dark);
  background-color: var(--card-hover);
  transform: translateY(-2px);
}

.badge-terracotta {
  background-color: var(--accent-terracotta);
  color: #ffffff;
  padding: 0.2rem 0.5rem;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.btn-terracotta {
  background-color: var(--accent-terracotta);
  color: #ffffff;
  padding: 0.75rem 1.25rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 11px;
  display: inline-block;
  text-align: center;
  transition: background-color 0.2s ease;
}

.btn-terracotta:hover {
  background-color: var(--text-dark);
  color: #ffffff;
}
