/* =====================================================================
   FitNutriPro — Remaster visual (meio-termo) — global do app shell.
   SÓ RESTILIZA: profundidade, raios, gradientes, hover e tipografia.
   NÃO muda dados, markup nem componentes; não mexe em layout (largura,
   display, posição). Tudo escopado sob #page-content e usando os tokens
   verdes do design system "laudo v2" (+ acento roxo já existente do
   wizard de geração). 100% aditivo e reversível (remover o <link>).

   Especificidade: o prefixo #page-content vence as regras de classe
   inline das views sem precisar de !important.
   ===================================================================== */

#page-content{
  --fnr-green:#0f9d47; --fnr-green2:#0c7d3b; --fnr-green3:#12ab52; --fnr-deep:#026039;
  --fnr-purple:#7c3aed; --fnr-purple2:#6d28d9;
  --fnr-ink:#16201a; --fnr-muted:#8a938c; --fnr-line:#e8ebe8;
  --fnr-radius:18px;
  --fnr-sh-sm:0 1px 2px rgba(20,40,26,.05);
  --fnr-sh-md:0 1px 2px rgba(20,40,26,.05), 0 14px 30px -16px rgba(20,40,26,.16);
  --fnr-sh-lift:0 1px 2px rgba(20,40,26,.05), 0 22px 42px -18px rgba(20,40,26,.26);
  --fnr-sh-green:0 12px 28px -10px rgba(15,157,71,.42);
  --fnr-sh-purple:0 10px 24px -9px rgba(109,40,217,.5);
}

/* ---------------------------------------------------------------------
   1) Cards claros: cantos mais suaves + profundidade em camadas + lift
   --------------------------------------------------------------------- */
#page-content .anamnesis-toggle,
#page-content .summary-card,
#page-content .dash-card,
#page-content .today-command-card,
#page-content .stat-box,
#page-content .meal-card,
#page-content .admin-action-card,
#page-content .message-content{
  border-radius:var(--fnr-radius);
  box-shadow:var(--fnr-sh-md);
}
@media (hover:hover){
  #page-content .dash-card,
  #page-content .today-command-card,
  #page-content .summary-card,
  #page-content .stat-box,
  #page-content .admin-action-card{
    transition:transform .26s cubic-bezier(.2,.7,.2,1), box-shadow .3s ease;
  }
  #page-content .dash-card:hover,
  #page-content .today-command-card:hover,
  #page-content .summary-card:hover,
  #page-content .admin-action-card:hover{
    transform:translateY(-3px);
    box-shadow:var(--fnr-sh-lift);
  }
}

/* ---------------------------------------------------------------------
   2) Wizard de geração (TREINO + DIETA compartilham estas classes)
   --------------------------------------------------------------------- */
/* Chips da anamnese: pill totalmente arredondada, verde suave */
#page-content .anamnesis-pill{
  border-radius:999px;
  padding:6px 13px;
  background:#e8f5ec;
  border:1px solid #cfe9d8;
  color:var(--fnr-green2);
  font-weight:650;
  transition:transform .16s ease;
}
#page-content .anamnesis-pill:hover{ transform:translateY(-1px); }
#page-content .anamnesis-pill .pill-label{ color:#5f8f72; font-weight:600; }

/* Passos: dots maiores, preenchimento em gradiente e sombra sutil */
#page-content .fn-wizard-bar{ padding:18px 20px 8px; }
#page-content .fn-wstep-num{
  width:32px; height:32px; font-size:14px; font-weight:750;
  box-shadow:var(--fnr-sh-sm);
}
#page-content .fn-wstep-dot.done .fn-wstep-num{
  background:linear-gradient(135deg,var(--fnr-green3),var(--fnr-green2));
}
#page-content .fn-wstep-dot.active .fn-wstep-num{
  background:linear-gradient(135deg,#8b5cf6,var(--fnr-purple2));
  box-shadow:0 6px 16px -6px rgba(109,40,217,.5);
}

/* Navegação do wizard */
#page-content .fn-wnav .fn-wnext{
  border-radius:14px;
  box-shadow:var(--fnr-sh-purple);
  transition:transform .16s ease, filter .16s ease;
}
#page-content .fn-wnav .fn-wnext:hover{ transform:translateY(-2px); filter:brightness(1.05); }
#page-content .fn-wnav .fn-wback{ border-radius:14px; }

/* Loader de geração por IA: spinner mais nítido, barra em gradiente verde */
#page-content .ai-loader-spinner{ width:24px; height:24px; border-width:3px; }
#page-content .ai-loader-bar-fill{
  background:linear-gradient(90deg,var(--fnr-green3),var(--fnr-green2));
}

/* Card de sucesso pós-geração (.status-*) */
#page-content .status-bar{
  border-radius:var(--fnr-radius);
  box-shadow:var(--fnr-sh-md);
}
#page-content .status-icon{
  box-shadow:0 8px 20px -8px rgba(15,157,71,.4);
}

/* ---------------------------------------------------------------------
   3) CTAs / botões principais: profundidade + hover-lift consistentes
   --------------------------------------------------------------------- */
#page-content .hero-generate-btn{
  box-shadow:0 12px 30px -10px rgba(15,157,71,.5), inset 0 0 0 1px rgba(255,255,255,.12);
  transition:transform .18s cubic-bezier(.2,.7,.2,1), filter .18s ease, box-shadow .3s ease;
}
#page-content .hero-generate-btn:hover{ transform:translateY(-2px); }
#page-content .chat-save-cta-btn,
#page-content .tracking-btn,
#page-content .btn-primary{
  border-radius:14px;
  box-shadow:var(--fnr-sh-green);
  transition:transform .16s ease, filter .16s ease;
}
#page-content .chat-save-cta-btn:hover,
#page-content .tracking-btn:hover,
#page-content .btn-primary:hover{ transform:translateY(-2px); filter:brightness(1.05); }

/* ---------------------------------------------------------------------
   4) Plano alimentar (ViewDietPlan): macros, hidratação, refeições
   --------------------------------------------------------------------- */
#page-content .macro-item,
#page-content .meal-macro{
  border-radius:14px;
  box-shadow:var(--fnr-sh-sm);
}
#page-content .macro-value{ font-weight:750; letter-spacing:-.02em; }
#page-content .macro-label{ color:var(--fnr-muted); font-weight:600; }
#page-content .meal-name{ letter-spacing:-.01em; }
#page-content .meal-time{
  border-radius:999px;
  font-weight:700;
}
#page-content .water-tracker{
  border-radius:var(--fnr-radius);
  box-shadow:var(--fnr-sh-md);
}
#page-content .water-glasses{ gap:8px; }

/* ---------------------------------------------------------------------
   5) Plano de treino (ViewWorkoutPlan — tema escuro): cards e cadência
   Em fundo escuro, profundidade vem de borda/realce sutil, não de sombra.
   --------------------------------------------------------------------- */
#page-content .exercise-tracker{
  border-radius:var(--fnr-radius);
}
#page-content .exercise-pill{
  border-radius:999px;
  font-weight:650;
}
#page-content .cadence-number{
  font-weight:750; letter-spacing:-.02em;
}

/* ---------------------------------------------------------------------
   6) Execução de treino (ExecuteWorkout — escuro): stats e chips
   --------------------------------------------------------------------- */
#page-content .stat-box{
  border-radius:16px;
}
#page-content .stat-value{ font-weight:750; letter-spacing:-.02em; }
#page-content .stat-label{ letter-spacing:.04em; }
#page-content .tag{ border-radius:999px; font-weight:650; }

/* ---------------------------------------------------------------------
   7) Refino tipográfico leve nos títulos de seção (herda Space Grotesk
      do reskin global). Só aperta o tracking; não muda tamanho.
   --------------------------------------------------------------------- */
#page-content .status-title,
#page-content .meal-name,
#page-content .hero-title{ letter-spacing:-.02em; }
