/*
Theme Name: AgroCowntry B2B
Theme URI: https://b2b.agrocowntry.com.br
Description: Tema filho do Hello Elementor customizado para o marketplace AgroCowntry B2B — Marketplace de Parceiros Verificados no Agronegócio. Inclui paleta de cores verde/ouro/grafite, tipografia Playfair Display + DM Sans, e estilos otimizados para WooCommerce B2B.
Author: AgroCowntry
Author URI: https://agrocowntry.com.br
Template: hello-elementor
Version: 1.0.0
Text Domain: agrocowntry-b2b
License: GNU General Public License v3 or later
*/

/* ═══════════════════════════════════════════════════════
   AGROCOWNTRY B2B — VARIÁVEIS GLOBAIS DE DESIGN
═══════════════════════════════════════════════════════ */
:root {
  /* Paleta principal */
  --ag-verde-profundo: #1F4D2B;
  --ag-verde-campo:    #3F7D3A;
  --ag-verde-folha:    #A7C957;
  --ag-verde-nevoa:    #F1F6ED;

  /* Terra / Country */
  --ag-terra:         #6B3F22;
  --ag-couro:         #8A5A2B;
  --ag-areia:         #D8B88A;
  --ag-palha:         #F5E9D3;

  /* Dourado Agro */
  --ag-ouro:          #C9972B;
  --ag-safra:         #E0B547;
  --ag-milho:         #F4D35E;

  /* Base técnica */
  --ag-grafite:       #111C15;
  --ag-cinza-exec:    #2E332F;
  --ag-cinza-tec:     #6B7280;
  --ag-branco-rural:  #FAFAF7;
  --ag-cinza-neutro:  #E5E7EB;

  /* Status B2B */
  --ag-disponivel:    #3F7D3A;
  --ag-consulta:      #C9972B;
  --ag-analise:       #2563EB;
  --ag-aprovado:      #1F4D2B;
  --ag-pendente:      #F59E0B;
  --ag-reservado:    #8A5A2B;
  --ag-fechado:       #111C15;
  --ag-urgente:       #B91C1C;

  /* Tipografia */
  --ag-font-display: 'Playfair Display', Georgia, serif;
  --ag-font-body:    'DM Sans', system-ui, sans-serif;
  --ag-font-mono:    'DM Mono', monospace;

  /* Espaçamentos */
  --ag-radius-sm: 8px;
  --ag-radius-md: 12px;
  --ag-radius-lg: 16px;
  --ag-radius-xl: 20px;
}

/* ═══════════════════════════════════════════════════════
   RESET E BASE
═══════════════════════════════════════════════════════ */
body {
  font-family: var(--ag-font-body);
  background: var(--ag-branco-rural);
  color: var(--ag-grafite);
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, .ag-display {
  font-family: var(--ag-font-display);
  font-weight: 700;
  color: var(--ag-grafite);
  letter-spacing: -0.3px;
}

.ag-mono { font-family: var(--ag-font-mono); }

a { color: var(--ag-verde-profundo); transition: color .2s; }
a:hover { color: var(--ag-verde-campo); }

/* ═══════════════════════════════════════════════════════
   BOTÕES B2B
═══════════════════════════════════════════════════════ */
.ag-btn,
.elementor-button.ag-btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 12px 22px;
  border-radius: var(--ag-radius-md);
  font-weight: 600;
  font-size: 14px;
  text-decoration: none;
  transition: all .2s;
  border: none;
  cursor: pointer;
}

.ag-btn-primary {
  background: linear-gradient(135deg, var(--ag-ouro), var(--ag-safra));
  color: var(--ag-grafite);
  box-shadow: 0 4px 18px rgba(201,151,43,.28);
}

.ag-btn-primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 24px rgba(201,151,43,.38);
}

.ag-btn-secondary {
  background: var(--ag-verde-profundo);
  color: white;
}

.ag-btn-secondary:hover {
  background: var(--ag-verde-campo);
}

.ag-btn-outline {
  background: transparent;
  border: 1.5px solid var(--ag-ouro);
  color: var(--ag-ouro);
}

.ag-btn-outline:hover {
  background: var(--ag-ouro);
  color: var(--ag-grafite);
}

/* ═══════════════════════════════════════════════════════
   SELOS E BADGES B2B
═══════════════════════════════════════════════════════ */
.ag-badge {
  display: inline-block;
  font-family: var(--ag-font-mono);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.5px;
  padding: 3px 9px;
  border-radius: 5px;
  text-transform: uppercase;
}

.ag-badge-verificado {
  background: rgba(74,222,128,.1);
  color: #4ADE80;
  border: 1px solid rgba(74,222,128,.2);
}

.ag-badge-ponta-firme {
  background: var(--ag-verde-profundo);
  color: white;
}

.ag-badge-fob,
.ag-badge-cif,
.ag-badge-exw {
  background: var(--ag-grafite);
  color: var(--ag-ouro);
  font-size: 11px;
}

.ag-badge-exclusiva {
  background: var(--ag-ouro);
  color: var(--ag-grafite);
}

.ag-badge-exportacao {
  background: var(--ag-verde-profundo);
  color: white;
}

.ag-badge-urgente {
  background: var(--ag-urgente);
  color: white;
}

/* ═══════════════════════════════════════════════════════
   WOOCOMMERCE B2B — Modo Catálogo
═══════════════════════════════════════════════════════ */

/* Esconder elementos B2C indesejados */
.woocommerce .star-rating,
.woocommerce-product-rating,
.woocommerce-review-link,
.woocommerce .quantity,
#tab-reviews {
  display: none !important;
}

/* Produto = Lote agro */
.woocommerce ul.products li.product {
  background: var(--ag-branco-rural);
  border: 1px solid var(--ag-cinza-neutro);
  border-radius: var(--ag-radius-lg);
  overflow: hidden;
  transition: all .25s;
}

.woocommerce ul.products li.product:hover {
  box-shadow: 0 8px 28px rgba(0,0,0,.08);
  transform: translateY(-2px);
  border-color: rgba(201,151,43,.3);
}

.woocommerce ul.products li.product .price {
  color: var(--ag-verde-profundo);
  font-family: var(--ag-font-display);
  font-size: 20px;
  font-weight: 700;
}

/* Botão "Solicitar Proposta" customizado */
.woocommerce a.button,
.woocommerce-page a.button,
.woocommerce button.button,
.woocommerce input.button {
  background: var(--ag-verde-profundo);
  color: white;
  font-size: 13px;
  font-weight: 600;
  padding: 11px 20px;
  border-radius: var(--ag-radius-md);
  border: none;
  transition: background .2s;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover {
  background: var(--ag-verde-campo);
}

/* ═══════════════════════════════════════════════════════
   CEPEA TICKER (cotações)
═══════════════════════════════════════════════════════ */
.ag-cepea-ticker {
  background: var(--ag-grafite);
  border-bottom: 2px solid var(--ag-ouro);
  padding: 8px 24px;
  display: flex;
  align-items: center;
  gap: 16px;
  overflow-x: auto;
  scrollbar-width: none;
  font-family: var(--ag-font-mono);
  font-size: 12px;
}

.ag-cepea-ticker::-webkit-scrollbar { display: none; }

.ag-cepea-label {
  color: var(--ag-ouro);
  font-weight: 600;
  white-space: nowrap;
}

.ag-tick {
  display: flex;
  align-items: center;
  gap: 5px;
  white-space: nowrap;
  flex-shrink: 0;
}

.ag-tick-name { color: rgba(255,255,255,.5); }
.ag-tick-price { color: white; font-weight: 500; }
.ag-tick-up { color: #4ADE80; font-size: 11px; }
.ag-tick-dn { color: #F87171; font-size: 11px; }

/* ═══════════════════════════════════════════════════════
   PONTA FIRME — Selo verificado
═══════════════════════════════════════════════════════ */
.ag-ponta-firme-seal {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(31,77,43,.08);
  border: 1px solid rgba(31,77,43,.2);
  border-radius: var(--ag-radius-md);
  padding: 8px 14px;
}

.ag-ponta-firme-seal svg,
.ag-ponta-firme-seal::before {
  content: '🛡️';
  font-size: 16px;
}

.ag-ponta-firme-seal-text {
  font-family: var(--ag-font-mono);
  font-size: 11px;
  color: var(--ag-verde-profundo);
  font-weight: 600;
}

/* ═══════════════════════════════════════════════════════
   CARDS GENÉRICOS
═══════════════════════════════════════════════════════ */
.ag-card {
  background: white;
  border: 1px solid var(--ag-cinza-neutro);
  border-radius: var(--ag-radius-lg);
  padding: 18px;
  transition: all .2s;
}

.ag-card:hover {
  border-color: var(--ag-ouro);
  box-shadow: 0 6px 20px rgba(0,0,0,.06);
}

.ag-card-dark {
  background: var(--ag-grafite);
  color: var(--ag-branco-rural);
  border: 1px solid rgba(201,151,43,.2);
}

/* ═══════════════════════════════════════════════════════
   FORMS B2B
═══════════════════════════════════════════════════════ */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
textarea,
select {
  background: white;
  border: 1px solid var(--ag-cinza-neutro);
  border-radius: var(--ag-radius-sm);
  padding: 11px 14px;
  font-family: var(--ag-font-body);
  font-size: 14px;
  color: var(--ag-grafite);
  transition: border-color .2s, box-shadow .2s;
}

input:focus,
textarea:focus,
select:focus {
  outline: none;
  border-color: var(--ag-ouro);
  box-shadow: 0 0 0 3px rgba(201,151,43,.15);
}

label {
  font-family: var(--ag-font-mono);
  font-size: 11px;
  color: var(--ag-cinza-tec);
  text-transform: uppercase;
  letter-spacing: .5px;
  font-weight: 600;
  margin-bottom: 4px;
  display: block;
}

/* ═══════════════════════════════════════════════════════
   ESCONDER ELEMENTOS B2C DO SITE PRINCIPAL
═══════════════════════════════════════════════════════ */

/* Caso o tema principal "vaze" elementos no B2B */
.b2b-page .site-header-loja,
.b2b-page .cart-icon,
.b2b-page .meus-pedidos,
.b2b-page .melhor-envio,
body.singular-b2b .b2c-only {
  display: none !important;
}

/* ═══════════════════════════════════════════════════════
   RESPONSIVIDADE
═══════════════════════════════════════════════════════ */
@media (max-width: 768px) {
  h1 { font-size: 30px; }
  h2 { font-size: 24px; }
  .ag-btn { padding: 11px 18px; font-size: 13px; }
  .woocommerce ul.products li.product { margin-bottom: 16px; }
}

@media (max-width: 480px) {
  .ag-cepea-ticker { padding: 8px 12px; }
}

/* ═══════════════════════════════════════════════════════
   UTILITÁRIOS
═══════════════════════════════════════════════════════ */
.ag-text-gold { color: var(--ag-ouro) !important; }
.ag-text-green { color: var(--ag-verde-profundo) !important; }
.ag-text-dark { color: var(--ag-grafite) !important; }
.ag-bg-gold { background: var(--ag-ouro) !important; }
.ag-bg-green { background: var(--ag-verde-profundo) !important; }
.ag-bg-dark { background: var(--ag-grafite) !important; }
.ag-bg-soft { background: var(--ag-verde-nevoa) !important; }

.ag-hidden { display: none !important; }
.ag-visible { display: block !important; }

/* ═══════════════════════════════════════════════════════
   ANIMAÇÕES SUTIS
═══════════════════════════════════════════════════════ */
@keyframes ag-pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.4; }
}

.ag-pulse-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  background: var(--ag-ouro);
  border-radius: 50%;
  animation: ag-pulse 2s ease-in-out infinite;
}

@keyframes ag-fadeUp {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: translateY(0); }
}

.ag-fade-up {
  animation: ag-fadeUp .6s ease-out;
}
