/* ── AVE Frontend CSS — Public-facing components ─────────────────────────────── */
/* Loaded on every page. Minimal, scoped to .ave-* namespace.                    */

.ave-recommendations,
.ave-faq,
.ave-email-capture,
.ave-premium-gate,
.ave-crop-card,
.ave-stat-box,
.ave-alert,
.ave-decision-tree,
.ave-search-form,
.ave-breadcrumb {
  box-sizing: border-box;
}

/* Crop card */
.ave-crop-card { background: #f9fafb; border: 1px solid #e5e7eb; border-radius: 10px; padding: 18px; margin: 14px 0; }
.ave-crop-name { font-size: 18px; font-weight: 700; margin: 0 0 12px; color: #166534; }
.ave-crop-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.ave-crop-table td, .ave-crop-table th { padding: 7px 10px; border-bottom: 1px solid #e5e7eb; }
.ave-crop-table th { font-weight: 600; font-size: 11px; text-transform: uppercase; color: #6b7280; }

/* Alerts */
.ave-alert { padding: 12px 16px; border-radius: 8px; margin: 14px 0; font-size: 14px; }
.ave-alert-info    { background: #eff6ff; border-left: 4px solid #3b82f6; color: #1e40af; }
.ave-alert-success { background: #f0fdf4; border-left: 4px solid #22c55e; color: #166534; }
.ave-alert-warning { background: #fffbeb; border-left: 4px solid #f59e0b; color: #92400e; }
.ave-alert-error   { background: #fff1f2; border-left: 4px solid #ef4444; color: #9f1239; }

/* Stat box */
.ave-stat-box { display: inline-flex; flex-direction: column; align-items: center; background: #f9fafb; border: 1px solid #e5e7eb; border-radius: 10px; padding: 16px 20px; margin: 8px; }
.ave-stat-value { font-size: 28px; font-weight: 800; color: #166534; line-height: 1; }
.ave-stat-value small { font-size: 14px; font-weight: 400; color: #6b7280; }
.ave-stat-label { font-size: 12px; text-transform: uppercase; letter-spacing: .5px; color: #6b7280; margin-top: 4px; }

/* Breadcrumb */
.ave-breadcrumb { font-size: 13px; color: #6b7280; margin: 8px 0 16px; }
.ave-breadcrumb a { color: #166534; text-decoration: none; }
.ave-breadcrumb a:hover { text-decoration: underline; }

/* Affiliate */
.ave-affiliate-btn { display: inline-block; background: #f59e0b; color: #000 !important; text-decoration: none; padding: 10px 20px; border-radius: 8px; font-weight: 700; font-size: 14px; transition: background .15s; }
.ave-affiliate-btn:hover { background: #d97706; }
.ave-affiliate-link { color: #166534; font-weight: 600; }
.ave-adsense-mid { margin: 24px 0; }

/* Recommendations */
.ave-recommendations { margin: 24px 0; }
.ave-recs-title { font-size: 18px; font-weight: 700; margin: 0 0 16px; }
.ave-recs-list { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(150px,1fr)); gap: 12px; }
.ave-rec-item a { display: flex; flex-direction: column; gap: 6px; text-decoration: none; color: inherit; font-size: 13px; font-weight: 500; }
.ave-rec-item img { width: 100%; aspect-ratio: 16/9; object-fit: cover; border-radius: 6px; }
