/**
 * ===================================================================
 * TEMA PADRÃO - SISTEMA GLP PRO
 * ===================================================================
 * 
 * Este é o arquivo ÚNICO de tema do sistema.
 * Para personalizar para um novo cliente, altere APENAS as variáveis
 * na seção "CORES DO CLIENTE" abaixo.
 * 
 * Desenvolvido por: Roka Digital - https://rokadigital.com.br/contato/
 * ===================================================================
 */

/* ===================================================================
   CORES DO CLIENTE - ALTERE APENAS ESTA SEÇÃO
   =================================================================== */
:root {
  /* -------- CORES PRINCIPAIS -------- */
  --cor-primaria: #f5a623;
  /* Cor principal da marca (CTAs, destaques) */
  --cor-primaria-escura: #b1aa5b;
  /* Variante escura da primária */
  --cor-primaria-clara: #fff3ad;
  /* Variante clara da primária */

  --cor-secundaria: #1a6fc4;
  /* Cor secundária (headers, links) */
  --cor-secundaria-escura: #968443;
  /* Variante escura da secundária */
  --cor-secundaria-clara: #3a7faf;
  /* Variante clara da secundária */

  --cor-terciaria: #002851;
  /* Cor terciária (textos, footer) */
  --cor-terciaria-escura: #44668d;
  /* Variante escura da terciária */
  --cor-terciaria-clara: #5a7a9d;
  /* Variante clara da terciária */

  /* -------- CORES DE FUNDO -------- */
  --cor-fundo: #fbfcfc;
  /* Fundo principal do site */
  --cor-fundo-alt: #f5f5f5;
  /* Fundo alternativo (seções) */
  --cor-fundo-card: #ffffff;
  /* Fundo de cards */

  /* -------- CORES DE TEXTO -------- */
  --cor-texto: #002851;
  /* Texto principal */
  --cor-texto-secundario: #002851;
  /* Texto secundário/muted */
  --cor-texto-claro: #ffffff;
  /* Texto sobre fundos escuros */

  /* -------- CORES DE ESTADO -------- */
  --cor-sucesso: #10b981;
  /* Sucesso/confirmação */
  --cor-erro: #ef4444;
  /* Erro/alerta */
  --cor-aviso: #f59e0b;
  /* Aviso/atenção */
  --cor-info: #3b82f6;
  /* Informação */

  /* -------- COR WHATSAPP (não alterar) -------- */
  --cor-whatsapp: #25D366;
  --cor-whatsapp-escura: #128C7E;
}

/* ===================================================================
   VARIÁVEIS DERIVADAS - NÃO ALTERAR
   (Estas são calculadas a partir das cores do cliente)
   =================================================================== */
:root {
  /* Gradientes */
  --gradient-primario: linear-gradient(135deg, var(--cor-primaria) 0%, var(--cor-primaria-escura) 100%);
  --gradient-secundario: linear-gradient(135deg, var(--cor-secundaria) 0%, var(--cor-secundaria-escura) 100%);
  --gradient-hero: linear-gradient(135deg, var(--cor-secundaria) 0%, var(--cor-terciaria) 100%);
  --gradient-footer: linear-gradient(90deg, var(--cor-primaria) 0%, var(--cor-secundaria) 100%);
  --gradient-cta: linear-gradient(135deg, var(--cor-primaria) 0%, var(--cor-primaria-escura) 100%);

  /* Sombras */
  --sombra-suave: 0 4px 20px rgba(0, 40, 81, 0.08);
  --sombra-media: 0 8px 30px rgba(0, 40, 81, 0.12);
  --sombra-forte: 0 15px 50px rgba(0, 40, 81, 0.18);
  --sombra-primaria: 0 0 20px rgba(254, 200, 0, 0.4);
  --sombra-secundaria: 0 0 20px rgba(7, 70, 126, 0.3);

  /* Focus Ring */
  --focus-ring: 0 0 0 3px rgba(254, 200, 0, 0.5);

  /* Transições */
  --transicao: all 0.3s ease;
  --transicao-rapida: all 0.15s ease;
  --transicao-bounce: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);

  /* Border Radius */
  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-full: 9999px;

  /* Espaçamentos */
  --espacamento-xs: 0.25rem;
  --espacamento-sm: 0.5rem;
  --espacamento-md: 1rem;
  --espacamento-lg: 1.5rem;
  --espacamento-xl: 2rem;
  --espacamento-2xl: 3rem;
}

/* ===================================================================
   ESTILOS BASE
   =================================================================== */
body {
  background-color: var(--cor-fundo);
  color: var(--cor-texto);
}

/* ===================================================================
   TIPOGRAFIA
   =================================================================== */
h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--cor-texto);
}

.text-primary {
  color: var(--cor-primaria) !important;
}

.text-secondary {
  color: var(--cor-secundaria) !important;
}

.text-tertiary {
  color: var(--cor-terciaria) !important;
}

.text-muted {
  color: var(--cor-texto-secundario) !important;
}

.text-light {
  color: var(--cor-texto-claro) !important;
}

/* ===================================================================
   FUNDOS
   =================================================================== */
.bg-primary {
  background-color: var(--cor-primaria) !important;
}

.bg-secondary {
  background-color: var(--cor-secundaria) !important;
}

.bg-tertiary {
  background-color: var(--cor-terciaria) !important;
}

.bg-fundo {
  background-color: var(--cor-fundo) !important;
}

.bg-fundo-alt {
  background-color: var(--cor-fundo-alt) !important;
}

.bg-card {
  background-color: var(--cor-fundo-card) !important;
}

.bg-gradient-hero {
  background: var(--gradient-hero) !important;
}

.bg-gradient-primario {
  background: var(--gradient-primario) !important;
}

.bg-gradient-secundario {
  background: var(--gradient-secundario) !important;
}

.bg-gradient-footer {
  background: var(--gradient-footer) !important;
}

/* ===================================================================
   BORDAS
   =================================================================== */
.border-primary {
  border-color: var(--cor-primaria) !important;
}

.border-secondary {
  border-color: var(--cor-secundaria) !important;
}

.border-tertiary {
  border-color: var(--cor-terciaria) !important;
}

/* ===================================================================
   LINKS
   =================================================================== */
a {
  color: var(--cor-secundaria);
  transition: var(--transicao);
}

a:hover {
  color: var(--cor-primaria);
}

/* ===================================================================
   BOTÕES
   =================================================================== */

/* Botão Primário (Amarelo) */
.btn-primary,
.btn-cta {
  background: var(--cor-primaria) !important;
  color: var(--cor-terciaria) !important;
  font-weight: 700;
  border: none;
  transition: var(--transicao);
}

.btn-primary:hover,
.btn-cta:hover {
  background: var(--cor-primaria-escura) !important;
  box-shadow: var(--sombra-primaria);
  transform: translateY(-2px);
}

/* Botão Secundário (Azul) */
.btn-secondary {
  background: var(--cor-secundaria) !important;
  color: var(--cor-texto-claro) !important;
  font-weight: 600;
  border: none;
  transition: var(--transicao);
}

.btn-secondary:hover {
  background: var(--cor-secundaria-escura) !important;
  box-shadow: var(--sombra-secundaria);
  transform: translateY(-2px);
}

/* Botão WhatsApp */
.btn-whatsapp {
  background: var(--cor-whatsapp) !important;
  color: var(--cor-texto-claro) !important;
  font-weight: 600;
  border: none;
  transition: var(--transicao);
}

.btn-whatsapp:hover {
  background: var(--cor-whatsapp-escura) !important;
  box-shadow: 0 4px 15px rgba(37, 211, 102, 0.4);
  transform: translateY(-2px);
}

/* Botão Outline */
.btn-outline {
  background: transparent !important;
  border: 2px solid var(--cor-secundaria) !important;
  color: var(--cor-secundaria) !important;
  font-weight: 600;
  transition: var(--transicao);
}

.btn-outline:hover {
  background: var(--cor-secundaria) !important;
  color: var(--cor-texto-claro) !important;
}

/* ===================================================================
   CARDS
   =================================================================== */
.card,
.produto-card {
  background: var(--cor-fundo-card);
  border-radius: var(--radius-lg);
  box-shadow: var(--sombra-suave);
  transition: var(--transicao);
  border: 1px solid rgba(0, 0, 0, 0.05);
}

.card:hover,
.produto-card:hover {
  box-shadow: var(--sombra-media);
  border-color: var(--cor-primaria);
  transform: translateY(-4px);
}

/* ===================================================================
   FORMULÁRIOS
   =================================================================== */
input,
textarea,
select {
  border: 2px solid #e5e7eb;
  border-radius: var(--radius-md);
  background-color: var(--cor-fundo-card);
  color: var(--cor-texto);
  transition: var(--transicao);
}

input:focus,
textarea:focus,
select:focus {
  outline: none;
  border-color: var(--cor-primaria);
  box-shadow: var(--focus-ring);
}

input::placeholder,
textarea::placeholder {
  color: var(--cor-texto-secundario);
}

/* ===================================================================
   HEADER / NAVEGAÇÃO
   =================================================================== */
.header,
.navbar {
  background: var(--cor-fundo-card);
  box-shadow: var(--sombra-suave);
}

.nav-link {
  color: var(--cor-texto);
  transition: var(--transicao);
}

.nav-link:hover,
.nav-link.active {
  color: var(--cor-primaria);
}

/* ===================================================================
   HERO SECTION
   =================================================================== */
.hero-overlay {
  background: var(--gradient-hero);
}

.hero-title {
  color: var(--cor-primaria);
}

.hero-subtitle {
  color: var(--cor-texto-claro);
}

/* ===================================================================
   FOOTER
   =================================================================== */
footer,
.footer {
  background: var(--cor-secundaria);
  color: var(--cor-texto-claro);
}

footer h3,
footer h4,
.footer h3,
.footer h4 {
  color: var(--cor-primaria) !important;
}

footer a,
.footer a {
  color: var(--cor-texto-claro);
  transition: var(--transicao);
}

footer a:hover,
.footer a:hover {
  color: var(--cor-primaria);
}

.footer-bottom,
.rodape-final {
  background: var(--cor-terciaria);
}

/* ===================================================================
   BADGES E STATUS
   =================================================================== */
.badge-primary {
  background: rgba(254, 200, 0, 0.15);
  color: var(--cor-terciaria);
}

.badge-secondary {
  background: rgba(7, 70, 126, 0.1);
  color: var(--cor-secundaria);
}

.badge-success {
  background: rgba(16, 185, 129, 0.1);
  color: var(--cor-sucesso);
}

.badge-error {
  background: rgba(239, 68, 68, 0.1);
  color: var(--cor-erro);
}

/* ===================================================================
   SCROLLBAR
   =================================================================== */
::-webkit-scrollbar {
  width: 8px;
}

::-webkit-scrollbar-track {
  background: var(--cor-fundo-alt);
}

::-webkit-scrollbar-thumb {
  background: var(--cor-secundaria);
  border-radius: var(--radius-full);
}

::-webkit-scrollbar-thumb:hover {
  background: var(--cor-primaria);
}

/* ===================================================================
   ANIMAÇÕES
   =================================================================== */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes float {

  0%,
  100% {
    transform: translateY(0px);
  }

  50% {
    transform: translateY(-10px);
  }
}

@keyframes pulse-glow {

  0%,
  100% {
    box-shadow: 0 0 20px rgba(254, 200, 0, 0.4);
  }

  50% {
    box-shadow: 0 0 40px rgba(254, 200, 0, 0.8);
  }
}

.animate-fadeInUp {
  animation: fadeInUp 0.6s ease-out;
}

.animate-float {
  animation: float 3s ease-in-out infinite;
}

.animate-pulse-glow {
  animation: pulse-glow 2s ease-in-out infinite;
}

/* ===================================================================
   UTILITÁRIOS
   =================================================================== */
.glass {
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.gradient-text {
  background: var(--gradient-secundario);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.hover-lift {
  transition: var(--transicao);
}

.hover-lift:hover {
  transform: translateY(-4px);
  box-shadow: var(--sombra-media);
}

/* Focus States */
.focus-ring:focus,
button:focus,
a:focus {
  outline: none;
  box-shadow: var(--focus-ring);
}

/* ===================================================================
   LOADING STATES
   =================================================================== */
.loading {
  position: relative;
  pointer-events: none;
  opacity: 0.7;
}

.loading::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 20px;
  margin: -10px 0 0 -10px;
  border: 2px solid var(--cor-fundo-alt);
  border-top: 2px solid var(--cor-primaria);
  border-radius: 50%;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/* ===================================================================
   RESPONSIVO
   =================================================================== */
@media (max-width: 768px) {
  :root {
    --espacamento-xl: 1.5rem;
    --espacamento-2xl: 2rem;
  }
}

/* ===================================================================
   PRINT STYLES
   =================================================================== */
@media print {
  * {
    color: #000000 !important;
    background: #ffffff !important;
  }
}