﻿:root {
  --fp-fluid-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --fp-fluid-fast: 220ms;
  --fp-fluid-mid: 320ms;
  --fp-fluid-slow: 480ms;
  --fp-press-scale: 0.975;
}

html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
}

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  overscroll-behavior-y: auto;
}

* {
  -webkit-tap-highlight-color: transparent;
}

/* Transicoes globais suaves para sensacao "iPhone-like" */
a,
button,
input,
select,
textarea,
.btn,
.card,
.plan-card,
.quiz-card,
.quiz-card-opt,
.btn-opt,
.btnx,
.nav-link,
.fp-nav-item,
.rot-pill,
.modal-content {
  transition:
    transform var(--fp-fluid-fast) var(--fp-fluid-ease),
    box-shadow var(--fp-fluid-mid) var(--fp-fluid-ease),
    opacity var(--fp-fluid-fast) var(--fp-fluid-ease),
    background-color var(--fp-fluid-mid) var(--fp-fluid-ease),
    border-color var(--fp-fluid-mid) var(--fp-fluid-ease),
    color var(--fp-fluid-mid) var(--fp-fluid-ease);
}

/* Efeito de toque global */
.fp-pressing {
  transform: scale(var(--fp-press-scale)) !important;
}

/* Rolagem interna mais suave em painéis com overflow */
.table-responsive,
.main-content,
#ai-messages,
#ultima-analise-nutricional-content,
#ultima-análise-nutricional-content {
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
}

/* Scrollbar refinada */
*::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

*::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.04);
}

*::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.20);
  border-radius: 999px;
}

*::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 107, 53, 0.68);
}

/* Estado inicial opcional para entrada suave */
.fp-fluid-enter {
  opacity: 0;
  transform: translateY(8px);
}

.fp-fluid-enter.is-in {
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  html,
  body,
  * {
    scroll-behavior: auto !important;
    animation: none !important;
    transition: none !important;
  }
}

