/*
 * Fundação Paradise (DESIGN.md) aplicada ao Chatwoot.
 * Carregado pela configuração oficial DASHBOARD_SCRIPTS, depois de paradise-tema.css
 * (azuis fixos do Chatwoot trocados pelo dourado, gerado por gerar-tema.py).
 * Aqui: paleta do Chatwoot remapeada para os tokens da Fundação, fonte Inter e o
 * acabamento das telas de acesso. O Chatwoot marca o modo escuro com `body.dark`;
 * as paletas dele ficam em @layer base, então estas regras sem camada vencem.
 */
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap");

/* ---------- Tokens da Fundação (claro) ---------- */
:root {
  --pa-background: #ffffff;
  --pa-foreground: #0a0a0a;
  --pa-card: #f9f8f6;
  --pa-secondary: #7d8187;
  --pa-brand: #986828;
  --pa-brand-foreground: #ffffff;
  --pa-brand-text: #785018;
  --pa-border: #d5d9e2;
  --pa-input: #ffffff;
  --pa-ring: #986828;
  /* hairline (borda) + popover (elevação) da Fundação. */
  --pa-shadow-card: 0 0 0 1px rgb(0 0 0 / 0.06), 0 16px 48px -8px rgb(0 0 0 / 0.22);
  --pa-brand-rgb: 152 104 40;        /* gold-600 */
  --pa-brand-hover-rgb: 120 80 24;   /* gold-700 */
  --pa-brand-text-rgb: 120 80 24;    /* gold-700 */
  --pa-brand-soft-rgb: 232 192 112;  /* gold-300 */

  /* Destaque do Chatwoot (escala blue) -> dourado. */
  --blue-1: 254 251 243;
  --blue-2: 252 246 228;
  --blue-3: 249 238 208;
  --blue-4: 248 232 168;
  --blue-5: 242 216 144;
  --blue-6: 232 192 112;
  --blue-7: 216 168 88;
  --blue-8: 184 135 58;
  --blue-9: 152 104 40;
  --blue-10: 120 80 24;
  --blue-11: 120 80 24;
  --blue-12: 58 32 0;

  /* Neutros do Chatwoot (slate e gray) -> neutros da Fundação. */
  --slate-1: 255 255 255;
  --slate-2: 249 248 246;
  --slate-3: 241 242 246;
  --slate-4: 234 235 239;
  --slate-5: 226 228 234;
  --slate-6: 213 217 226;
  --slate-7: 198 203 213;
  --slate-8: 169 178 188;
  --slate-9: 142 148 156;
  --slate-10: 125 129 135;
  --slate-11: 94 98 104;
  --slate-12: 10 10 10;
  --gray-1: 255 255 255;
  --gray-2: 249 248 246;
  --gray-3: 241 242 246;
  --gray-4: 234 235 239;
  --gray-5: 226 228 234;
  --gray-6: 213 217 226;
  --gray-7: 198 203 213;
  --gray-8: 169 178 188;
  --gray-9: 142 148 156;
  --gray-10: 125 129 135;
  --gray-11: 94 98 104;
  --gray-12: 10 10 10;

  /* Superfícies: background branco, card ivory, muted nimbus, border dove. */
  --background-color: 255 255 255;
  --surface-1: 255 255 255;
  --surface-2: 255 255 255;
  --surface-active: 241 242 246;
  --solid-1: 255 255 255;
  --solid-2: 249 248 246;
  --solid-3: 241 242 246;
  --solid-active: 241 242 246;
  --card-color: 249 248 246;
  --label-background: 241 242 246;
  --border-strong: 213 217 226;
  --border-weak: 234 235 239;
  --border-container: 234, 235, 239, 1;
  --solid-blue: 252 246 228;
  --solid-blue-2: 254 251 243;
  --text-blue: 58 32 0;
  --border-blue: 152, 104, 40, 0.5;
  --border-blue-strong: 120 80 24;
}

/* ---------- Tokens da Fundação (escuro) ---------- */
body.dark {
  --pa-background: #0a0a0a;
  --pa-foreground: #d5d9e2;
  --pa-card: #1a1a1a;
  --pa-secondary: #7d8187;
  --pa-brand: #d8a858;
  --pa-brand-foreground: #0a0a0a;
  --pa-brand-text: #e8c070;
  --pa-border: #1f2228;
  --pa-input: #2e3033;
  --pa-ring: #d8a858;
  --pa-shadow-card: inset 0 1px 0 rgb(255 255 255 / 0.03), 0 0 0 1px #1f2228, 0 16px 48px -8px rgb(0 0 0 / 0.6);
  --pa-brand-rgb: 216 168 88;        /* gold-400 */
  --pa-brand-hover-rgb: 232 192 112; /* gold-300 */
  --pa-brand-text-rgb: 232 192 112;  /* gold-300 */
  --pa-brand-soft-rgb: 120 80 24;    /* gold-700 */

  --blue-1: 17 13 6;
  --blue-2: 26 19 8;
  --blue-3: 42 30 11;
  --blue-4: 58 32 0;
  --blue-5: 74 44 8;
  --blue-6: 88 48 0;
  --blue-7: 120 80 24;
  --blue-8: 152 104 40;
  --blue-9: 216 168 88;
  --blue-10: 232 192 112;
  --blue-11: 232 192 112;
  --blue-12: 248 232 168;

  --slate-1: 10 10 10;
  --slate-2: 26 26 26;
  --slate-3: 31 34 40;
  --slate-4: 36 40 45;
  --slate-5: 46 48 51;
  --slate-6: 54 56 58;
  --slate-7: 68 71 75;
  --slate-8: 90 94 100;
  --slate-9: 108 112 118;
  --slate-10: 125 129 135;
  --slate-11: 169 178 188;
  --slate-12: 213 217 226;
  --gray-1: 10 10 10;
  --gray-2: 26 26 26;
  --gray-3: 31 34 40;
  --gray-4: 36 40 45;
  --gray-5: 46 48 51;
  --gray-6: 54 56 58;
  --gray-7: 68 71 75;
  --gray-8: 90 94 100;
  --gray-9: 108 112 118;
  --gray-10: 125 129 135;
  --gray-11: 169 178 188;
  --gray-12: 213 217 226;

  /* Superfícies: background jet, card charcoal, muted ash, border umbra. */
  --background-color: 10 10 10;
  --surface-1: 10 10 10;
  --surface-2: 20 20 20;
  --surface-active: 46 48 51;
  --solid-1: 20 20 20;
  --solid-2: 26 26 26;
  --solid-3: 46 48 51;
  --solid-active: 46 48 51;
  --card-color: 26 26 26;
  --label-background: 36 40 45;
  --button-color: 36 40 45;
  --border-strong: 46 48 51;
  --border-weak: 31 34 40;
  --solid-blue: 58 32 0;
  --solid-blue-2: 26 19 8;
  --text-blue: 248 232 168;
  --border-blue: 216, 168, 88, 0.5;
  --border-blue-strong: 232 192 112;
}

/* ---------- Tipografia: Inter em toda a interface ---------- */
body,
body :is(button, input, select, textarea) {
  font-family: Inter, ui-sans-serif, system-ui, sans-serif;
  font-feature-settings: "cv11", "ss01";
}

/* Texto sobre o dourado sólido usa `brand-foreground` (branco no claro, jet no escuro). */
:is(.bg-n-brand, .\!bg-n-brand, .bg-n-blue-9).text-white,
:is(.bg-n-brand, .\!bg-n-brand, .bg-n-blue-9) .text-white {
  color: var(--pa-brand-foreground) !important;
}

/* ---------- Telas de acesso (login, redefinir senha) ---------- */
.min-h-screen.bg-n-brand\/5 {
  background: var(--pa-background) !important;
  color: var(--pa-foreground);
}

.min-h-screen.bg-n-brand\/5 :is(h1, h2, h3, p, label, input, button, a, span) {
  font-family: inherit;
}

/* Logo: altura de selo, um pouco maior que o padrão de 32px. */
.min-h-screen.bg-n-brand\/5 > section:first-child img {
  height: 40px;
}

/* Título: h2 da fundação (30/36, -1%, peso regular). */
.min-h-screen.bg-n-brand\/5 h2 {
  color: var(--pa-foreground);
  font-size: 30px;
  line-height: 36px;
  letter-spacing: -0.01em;
  font-weight: 400;
}

.min-h-screen.bg-n-brand\/5 h2 + p,
.min-h-screen.bg-n-brand\/5 .text-n-slate-11 {
  color: var(--pa-secondary);
}

/* Cartão: superfície `card`, raio lg, borda hairline. */
.min-h-screen.bg-n-brand\/5 > section:last-of-type,
.min-h-screen.bg-n-brand\/5 > form {
  background: var(--pa-card) !important;
  border-radius: 16px !important;
  box-shadow: var(--pa-shadow-card) !important;
}

/* Título dos formulários (redefinir senha): h3 da fundação (24/32, -1%). */
.min-h-screen.bg-n-brand\/5 h1 {
  color: var(--pa-foreground);
  font-size: 24px;
  line-height: 32px;
  letter-spacing: -0.01em;
  font-weight: 400;
}

/* Rótulos: label 14/20. */
.min-h-screen.bg-n-brand\/5 label {
  color: var(--pa-foreground);
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

/* Campos: fundo `input`, borda `border`, raio sm, foco no `ring`. */
.min-h-screen.bg-n-brand\/5 input {
  background: var(--pa-input) !important;
  color: var(--pa-foreground) !important;
  border-radius: 6px !important;
  outline-color: var(--pa-border) !important;
  box-shadow: none !important;
}

.min-h-screen.bg-n-brand\/5 input::placeholder {
  color: var(--pa-secondary) !important;
}

.min-h-screen.bg-n-brand\/5 input:hover {
  outline-color: var(--pa-secondary) !important;
}

.min-h-screen.bg-n-brand\/5 input:focus {
  outline: 2px solid var(--pa-ring) !important;
  outline-offset: 0;
}

/* Botão primário de marca: raio md, label semibold. */
.min-h-screen.bg-n-brand\/5 .bg-n-brand {
  background: var(--pa-brand) !important;
  color: var(--pa-brand-foreground) !important;
  border-radius: 8px !important;
  font-weight: 600;
}

.min-h-screen.bg-n-brand\/5 .bg-n-brand:focus-visible {
  outline: 2px solid var(--pa-ring) !important;
  outline-offset: 2px;
}

/* Links e ícones de destaque: `brand-text`. */
.min-h-screen.bg-n-brand\/5 a,
.min-h-screen.bg-n-brand\/5 .text-link,
.min-h-screen.bg-n-brand\/5 .text-n-brand {
  color: var(--pa-brand-text) !important;
}

.min-h-screen.bg-n-brand\/5 a:focus-visible {
  outline: 2px solid var(--pa-ring);
  outline-offset: 2px;
  border-radius: 4px;
}
