/* Prévia visual: cores e acabamento do Padoca Smart aplicados ao SISGE.
   Este arquivo é carregado somente pelo index.html de produção.
   Para voltar ao visual anterior, execute /root/reverter-tema-sisge.sh */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600;9..144,700&family=Nunito+Sans:wght@400;500;600;700;800;900&display=swap');

:root {
  --fundo: #faf4e9;
  --fundo-suave: #f3e7d4;
  --superficie: #fffdf8;
  --borda: #ecdecb;
  --borda-forte: #dfcbb2;
  --texto: #3a2418;
  --texto-suave: #6f5544;
  --texto-fraco: #9a8170;
  --marca: #b45a24;
  --marca-escura: #944518;
  --raio: 22px;
  --raio-pequeno: 14px;
  --sombra-cartao: 0 1px 2px rgba(80, 45, 20, .05), 0 18px 45px -28px rgba(80, 45, 20, .35);
  --sombra-flutuante: 0 24px 60px -24px rgba(80, 45, 20, .35);
  --anel: 0 0 0 3px rgba(180, 90, 36, .16);
  --padoca-primaria: #b45a24;
  --padoca-primaria-escura: #944518;
  --padoca-marrom: #2d1b11;
  --padoca-creme: #fff1de;
  --padoca-ambar: #dfa23f;
}

html, body {
  background: radial-gradient(1200px 500px at 100% 0%, #fff1de 0%, transparent 55%), var(--fundo) !important;
  color: var(--texto) !important;
  font-family: 'Nunito Sans', 'Segoe UI', system-ui, sans-serif !important;
}

body { background-attachment: fixed !important; }

h1, h2, h3, h4, .pagina-titulo, .cartao-titulo {
  font-family: 'Fraunces', Georgia, serif !important;
  color: #2d1b11 !important;
  letter-spacing: -.025em !important;
}

.pagina-titulo { font-weight: 700 !important; }
.pagina-cabecalho p, .cartao-descricao { color: var(--texto-suave) !important; }

/* Tela de entrada */
#raiz > .relative.flex.min-h-screen {
  background: radial-gradient(900px 480px at 82% 10%, #7a3f1e 0%, transparent 58%),
              radial-gradient(700px 420px at 8% 92%, #f0b27333 0%, transparent 58%),
              linear-gradient(145deg, #2d1b11 0%, #4a2816 56%, #2d1b11 100%) !important;
}
#raiz > .relative.flex.min-h-screen section {
  background: #fffdf8 !important;
  border-color: #ecdecb !important;
  border-radius: 32px !important;
  box-shadow: 0 40px 120px -38px rgba(45, 27, 17, .75) !important;
}
#raiz > .relative.flex.min-h-screen section > div:first-child span {
  background: #f8e5d2 !important;
  color: #5b2f17 !important;
}
#raiz > .relative.flex.min-h-screen a { color: #b45a24 !important; }
#raiz > .relative.flex.min-h-screen section a[href*="cadastro"] {
  background: #fff1de !important;
  border-color: #dfcbb2 !important;
  color: #5b2f17 !important;
}

/* Estrutura principal */
.app-painel {
  background: rgba(255, 253, 248, .94) !important;
  border-color: var(--borda) !important;
  border-radius: 24px !important;
  box-shadow: var(--sombra-cartao) !important;
}
.app-topo {
  background: rgba(255, 253, 248, .88) !important;
  border-bottom: 1px solid var(--borda) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
}
.app-trilho {
  background-image: linear-gradient(180deg, #2d1b11 0%, #3a2417 55%, #2d1b11 100%) !important;
  box-shadow: 0 20px 40px -28px rgba(45, 27, 17, .8) !important;
  border-radius: 0 24px 24px 0 !important;
}

/* Navegação */
.menu-item {
  color: #e9d4be !important;
  border-radius: 12px !important;
  font-family: 'Nunito Sans', system-ui, sans-serif !important;
}
.menu-item:hover {
  background-color: rgba(255, 255, 255, .09) !important;
  color: #fff !important;
}
.menu-item-ativo {
  background-color: #f8e5d2 !important;
  color: #5b2f17 !important;
  box-shadow: inset 0 0 0 1px rgba(180, 90, 36, .25), 0 8px 16px -12px rgba(0, 0, 0, .5) !important;
}
.menu-item-ativo:before {
  background: #b45a24 !important;
  width: 4px !important;
  border-radius: 999px !important;
}

/* Cartões, botões e campos */
.cartao {
  border-radius: 22px !important;
  background-color: #fffdf8 !important;
  border-color: var(--borda) !important;
  box-shadow: var(--sombra-cartao) !important;
}
.cartao-cabecalho { border-color: var(--borda) !important; }
.cartao-titulo { color: #2d1b11 !important; }

.botao { border-radius: 999px !important; font-family: 'Nunito Sans', system-ui, sans-serif !important; font-weight: 800 !important; }
.botao-primario {
  background: #b45a24 !important;
  border-color: #b45a24 !important;
  color: #fff !important;
  box-shadow: 0 10px 24px -14px rgba(180, 90, 36, .8) !important;
}
.botao-primario:hover { background: #944518 !important; border-color: #944518 !important; }
.botao-secundario {
  background: #fffdf8 !important;
  border-color: #dfcbb2 !important;
  color: #5b2f17 !important;
}
.botao-secundario:hover { background: #f8e5d2 !important; }
.botao-perigo { border-radius: 999px !important; }
.botao-sucesso { border-radius: 999px !important; }

input, select, textarea {
  background-color: #fffdf8 !important;
  border-color: #dfcbb2 !important;
  border-radius: 12px !important;
  color: #3a2418 !important;
  font-family: 'Nunito Sans', system-ui, sans-serif !important;
}
input:focus, select:focus, textarea:focus {
  border-color: #b45a24 !important;
  box-shadow: 0 0 0 3px rgba(180, 90, 36, .14) !important;
  outline: none !important;
}
::placeholder { color: #aa9180 !important; }

/* Tabelas */
table thead tr { background: #f3e7d4 !important; color: #5b2f17 !important; }
table tbody tr:hover { background: #fff6ea !important; }
table th, table td { border-color: #ecdecb !important; }

/* Modais, abas e avisos */
.modal-caixa { border-radius: 22px !important; background: #fffdf8 !important; }
.modal-cabecalho { border-color: #ecdecb !important; }
.abas { border-color: #ecdecb !important; }
.abas button[aria-selected="true"], .abas .ativo {
  background: #f8e5d2 !important;
  color: #5b2f17 !important;
  border-radius: 999px !important;
}
.badge, [class*="rounded-full"] { border-radius: 999px !important; }

/* Cores primárias do Tailwind (marca azul -> terracota) */
.bg-marca-50 { background-color: #fdf4ea !important; }
.bg-marca-100 { background-color: #f8e5d2 !important; }
.bg-marca-200 { background-color: #f0d0b4 !important; }
.bg-marca-300 { background-color: #dfa23f !important; }
.bg-marca-400 { background-color: #c9783b !important; }
.bg-marca-500, .bg-marca-600, .bg-marca-700, .bg-marca-800, .bg-marca-900 {
  background-color: #b45a24 !important;
}
.text-marca-300 { color: #e6b17f !important; }
.text-marca-400 { color: #d28b55 !important; }
.text-marca-500, .text-marca-600, .text-marca-700, .text-marca-800, .text-marca-900 {
  color: #944518 !important;
}
.border-marca-100, .border-marca-200, .border-marca-300, .border-marca-400,
.border-marca-500, .border-marca-600 {
  border-color: #dfcbb2 !important;
}
.ring-marca-100, .ring-marca-200, .ring-marca-500 { --tw-ring-color: rgba(180, 90, 36, .22) !important; }
.from-marca-500, .from-marca-600, .from-marca-700 { --tw-gradient-from: #b45a24 var(--tw-gradient-from-position) !important; }
.to-marca-700, .to-marca-800, .to-marca-900 { --tw-gradient-to: #5b2f17 var(--tw-gradient-to-position) !important; }
.via-marca-900 { --tw-gradient-via: #944518 var(--tw-gradient-via-position) !important; }
.shadow-marca-600, .shadow-marca-900 { --tw-shadow-color: rgba(180, 90, 36, .35) !important; }

/* Azul eventualmente usado em links/atalhos */
.text-blue-500, .text-blue-600, .text-blue-700 { color: #b45a24 !important; }
.bg-blue-50, .bg-blue-100 { background-color: #fdf4ea !important; }
.bg-blue-500, .bg-blue-600, .bg-blue-700 { background-color: #b45a24 !important; }
.border-blue-200, .border-blue-300 { border-color: #dfcbb2 !important; }

/* Blocos com cores fixas no código (azul -> terracota) */
section[class*="from-[#1d5fd6]"] {
  background-image: linear-gradient(135deg, #3a2417 0%, #7a3f1e 58%, #b45a24 100%) !important;
  box-shadow: 0 24px 60px -34px rgba(80, 45, 20, .65) !important;
}
[class*="bg-[#edf3ff]"], [class*="bg-[#f3f6fb]"], [class*="bg-[#f8fafc]"] {
  background-color: #fdf4ea !important;
}
[class*="text-[#1b46c9]"], [class*="text-[#2563eb]"], [class*="text-[#1d4ed8]"], [class*="text-[#2f5bea]"] {
  color: #b45a24 !important;
}
[class*="border-[#e5e9f2]"], [class*="border-[#d5dbe8]"] {
  border-color: #ecdecb !important;
}
[class*="from-[#1d5fd6]"] { --tw-gradient-from: #5b2f17 var(--tw-gradient-from-position) !important; }
[class*="via-[#2f7be8]"] { --tw-gradient-via: #7a3f1e var(--tw-gradient-via-position) !important; }
[class*="to-[#38b6e8]"] { --tw-gradient-to: #b45a24 var(--tw-gradient-to-position) !important; }

/* Toques de acabamento */
::selection { background: #f0d0b4; color: #2d1b11; }
::-webkit-scrollbar-thumb { background: #d8bca2; border-radius: 999px; }
::-webkit-scrollbar-track { background: #faf4e9; }
