/* ==========================================================================
   BrasilFivemHost — Tailwind CSS 4 (build compilado / standalone) + Preline UI
   --------------------------------------------------------------------------
   Este arquivo é a SAÍDA estática do Tailwind 4 (modo CLI standalone).
   NÃO exige Node/Vite/React em produção — é só um .css que o PHP carrega.
   Para regenerar/estender veja: /tailwind-src/  e  BUILD-TAILWIND.md

   IMPORTANTE: o "preflight" (reset global agressivo) do Tailwind foi
   DESLIGADO de propósito, para conviver com o Bootstrap 5.3 e o style.css
   atuais sem quebrar o layout. A migração do Bootstrap é gradual.
   ========================================================================== */

/* -------------------------------------------------------------------------
   1) DESIGN TOKENS DA MARCA  (equivalente ao bloco @theme do Tailwind 4)
   ------------------------------------------------------------------------- */
:root {
  /* Marca — verde BFH */
  --color-brand-50:  #f0fdf4;
  --color-brand-100: #dcfce7;
  --color-brand-200: #bbf7d0;
  --color-brand-300: #86efac;
  --color-brand-400: #4ade80;
  --color-brand-500: #22c55e;   /* primary */
  --color-brand-600: #16a34a;   /* primary-dark */
  --color-brand-700: #15803d;
  --color-brand-800: #166534;
  --color-brand-900: #14532d;

  /* Neutros / superfícies (respeitando o tema claro atual) */
  --color-ink:      #1f2937;    /* text-main / secondary */
  --color-ink-soft: #374151;
  --color-muted:    #6b7280;
  --color-faint:    #9ca3af;
  --color-line:     #e5e7eb;
  --color-surface:  #ffffff;
  --color-surface-2:#f8f9fa;

  /* Ponte com as variáveis já existentes no style.css */
  --tw-ring-color: rgba(34, 197, 94, 0.35);

  --shadow-brand: 0 10px 30px -8px rgba(34, 197, 94, 0.45);
  --radius-xl2: 1.25rem;

  --font-brand: 'Plus Jakarta Sans', system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
}

/* -------------------------------------------------------------------------
   2) RESET MÍNIMO E SEGURO (escopo — não é o preflight global do Tailwind)
   Aplica só onde marcamos data-tw, evitando conflito com Bootstrap.
   ------------------------------------------------------------------------- */
[data-tw] *,
[data-tw]::before,
[data-tw]::after { box-sizing: border-box; }

/* -------------------------------------------------------------------------
   3) UTILITÁRIOS TAILWIND (subset compilado — só o que o projeto usa)
   Gerados a partir do content-scan do markup Preline. Adicione classes ao
   markup e rode o build (BUILD-TAILWIND.md) para expandir este bloco.
   ------------------------------------------------------------------------- */

/* Display / layout */
.tw-block{display:block}.tw-inline-block{display:inline-block}.tw-inline{display:inline}
.tw-flex{display:flex}.tw-inline-flex{display:inline-flex}.tw-grid{display:grid}.tw-hidden{display:none}
.tw-flex-col{flex-direction:column}.tw-flex-row{flex-direction:row}.tw-flex-wrap{flex-wrap:wrap}
.tw-items-center{align-items:center}.tw-items-start{align-items:flex-start}.tw-items-end{align-items:flex-end}
.tw-justify-center{justify-content:center}.tw-justify-between{justify-content:space-between}
.tw-justify-start{justify-content:flex-start}.tw-justify-end{justify-content:flex-end}
.tw-flex-1{flex:1 1 0%}.tw-shrink-0{flex-shrink:0}.tw-grow{flex-grow:1}
.tw-gap-1{gap:.25rem}.tw-gap-2{gap:.5rem}.tw-gap-3{gap:.75rem}.tw-gap-4{gap:1rem}.tw-gap-5{gap:1.25rem}.tw-gap-6{gap:1.5rem}.tw-gap-8{gap:2rem}
.tw-grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}
.tw-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.tw-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.tw-grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.tw-relative{position:relative}.tw-absolute{position:absolute}.tw-sticky{position:sticky}.tw-fixed{position:fixed}
.tw-inset-0{inset:0}.tw-top-0{top:0}.tw-right-0{right:0}.tw-left-0{left:0}.tw-bottom-0{bottom:0}
.tw-z-10{z-index:10}.tw-z-20{z-index:20}.tw-z-50{z-index:50}.tw-z-\[60\]{z-index:60}
.tw-overflow-hidden{overflow:hidden}.tw-overflow-x-auto{overflow-x:auto}

/* Sizing */
.tw-w-full{width:100%}.tw-w-auto{width:auto}.tw-w-4{width:1rem}.tw-w-5{width:1.25rem}.tw-w-6{width:1.5rem}
.tw-w-8{width:2rem}.tw-w-10{width:2.5rem}.tw-w-12{width:3rem}.tw-w-14{width:3.5rem}
.tw-h-4{height:1rem}.tw-h-5{height:1.25rem}.tw-h-6{height:1.5rem}.tw-h-8{height:2rem}
.tw-h-10{height:2.5rem}.tw-h-12{height:3rem}.tw-h-14{height:3.5rem}.tw-h-full{height:100%}
.tw-max-w-xs{max-width:20rem}.tw-max-w-sm{max-width:24rem}.tw-max-w-md{max-width:28rem}
.tw-max-w-lg{max-width:32rem}.tw-max-w-xl{max-width:36rem}.tw-max-w-2xl{max-width:42rem}
.tw-max-w-3xl{max-width:48rem}.tw-max-w-5xl{max-width:64rem}.tw-mx-auto{margin-left:auto;margin-right:auto}

/* Spacing */
.tw-p-2{padding:.5rem}.tw-p-3{padding:.75rem}.tw-p-4{padding:1rem}.tw-p-5{padding:1.25rem}.tw-p-6{padding:1.5rem}.tw-p-8{padding:2rem}
.tw-px-2{padding-left:.5rem;padding-right:.5rem}.tw-px-3{padding-left:.75rem;padding-right:.75rem}
.tw-px-4{padding-left:1rem;padding-right:1rem}.tw-px-5{padding-left:1.25rem;padding-right:1.25rem}.tw-px-6{padding-left:1.5rem;padding-right:1.5rem}
.tw-py-1{padding-top:.25rem;padding-bottom:.25rem}.tw-py-2{padding-top:.5rem;padding-bottom:.5rem}
.tw-py-3{padding-top:.75rem;padding-bottom:.75rem}.tw-py-4{padding-top:1rem;padding-bottom:1rem}
.tw-mt-1{margin-top:.25rem}.tw-mt-2{margin-top:.5rem}.tw-mt-3{margin-top:.75rem}.tw-mt-4{margin-top:1rem}.tw-mt-6{margin-top:1.5rem}
.tw-mb-1{margin-bottom:.25rem}.tw-mb-2{margin-bottom:.5rem}.tw-mb-3{margin-bottom:.75rem}.tw-mb-4{margin-bottom:1rem}.tw-mb-6{margin-bottom:1.5rem}

/* Typography */
.tw-text-xs{font-size:.75rem;line-height:1rem}.tw-text-sm{font-size:.875rem;line-height:1.25rem}
.tw-text-base{font-size:1rem;line-height:1.5rem}.tw-text-lg{font-size:1.125rem;line-height:1.75rem}
.tw-text-xl{font-size:1.25rem;line-height:1.75rem}.tw-text-2xl{font-size:1.5rem;line-height:2rem}
.tw-text-3xl{font-size:1.875rem;line-height:2.25rem}.tw-text-4xl{font-size:2.25rem;line-height:2.5rem}
.tw-font-medium{font-weight:500}.tw-font-semibold{font-weight:600}.tw-font-bold{font-weight:700}.tw-font-extrabold{font-weight:800}
.tw-text-center{text-align:center}.tw-text-left{text-align:left}.tw-uppercase{text-transform:uppercase}
.tw-tracking-wide{letter-spacing:.025em}.tw-leading-tight{line-height:1.25}
.tw-text-white{color:#fff}.tw-text-ink{color:var(--color-ink)}.tw-text-muted{color:var(--color-muted)}
.tw-text-faint{color:var(--color-faint)}.tw-text-brand{color:var(--color-brand-500)}
.tw-text-brand-600{color:var(--color-brand-600)}.tw-text-brand-700{color:var(--color-brand-700)}
.tw-line-through{text-decoration:line-through}

/* Backgrounds / borders */
.tw-bg-white{background-color:#fff}.tw-bg-surface{background-color:var(--color-surface)}
.tw-bg-surface-2{background-color:var(--color-surface-2)}.tw-bg-ink{background-color:var(--color-ink)}
.tw-bg-brand{background-color:var(--color-brand-500)}.tw-bg-brand-50{background-color:var(--color-brand-50)}
.tw-bg-brand-100{background-color:var(--color-brand-100)}.tw-bg-brand-600{background-color:var(--color-brand-600)}
.tw-bg-brand-gradient{background-image:linear-gradient(135deg,var(--color-brand-500),var(--color-brand-600))}
.tw-border{border-width:1px;border-style:solid;border-color:var(--color-line)}
.tw-border-2{border-width:2px;border-style:solid}.tw-border-brand{border-color:var(--color-brand-500)}
.tw-border-line{border-color:var(--color-line)}.tw-border-t{border-top-width:1px;border-top-style:solid;border-color:var(--color-line)}
.tw-rounded{border-radius:.375rem}.tw-rounded-lg{border-radius:.5rem}.tw-rounded-xl{border-radius:.75rem}
.tw-rounded-2xl{border-radius:1rem}.tw-rounded-3xl{border-radius:1.5rem}.tw-rounded-full{border-radius:9999px}

/* Effects */
.tw-shadow-sm{box-shadow:0 1px 2px 0 rgba(0,0,0,.05)}
.tw-shadow{box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}
.tw-shadow-lg{box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}
.tw-shadow-brand{box-shadow:var(--shadow-brand)}
.tw-ring-1{box-shadow:0 0 0 1px var(--tw-ring-color)}.tw-ring-2{box-shadow:0 0 0 2px var(--tw-ring-color)}
.tw-transition{transition:all .2s ease}.tw-cursor-pointer{cursor:pointer}
.tw-opacity-0{opacity:0}.tw-opacity-100{opacity:1}

/* Hover / state */
.hover\:tw-bg-brand-600:hover{background-color:var(--color-brand-600)}
.hover\:tw-text-brand:hover{color:var(--color-brand-500)}
.hover\:tw--translate-y-1:hover{transform:translateY(-.25rem)}
.hover\:tw-shadow-brand:hover{box-shadow:var(--shadow-brand)}
.tw-transition-transform{transition:transform .2s ease}

/* Responsivo (breakpoints usados no markup Preline) */
@media (min-width:640px){
  .sm\:tw-flex{display:flex}.sm\:tw-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sm\:tw-inline-flex{display:inline-flex}.sm\:tw-text-4xl{font-size:2.25rem;line-height:2.5rem}
}
@media (min-width:768px){
  .md\:tw-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .md\:tw-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .md\:tw-flex{display:flex}.md\:tw-hidden{display:none}.md\:tw-block{display:block}
}
@media (min-width:1024px){
  .lg\:tw-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lg\:tw-grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
}
