/* AgendaEu — página pública de agendamento (ETAPA 2: CSS puro) */

* { box-sizing: border-box; }
body { margin: 0; background: #08070A; font-family: Poppins, system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
input { font-family: Poppins, system-ui, sans-serif; }
input::placeholder { color: #9c96a3; }
a { color: var(--accent-1, #B57BFF); }
a:hover { color: var(--accent-2, #25E4C0); }

@keyframes dcIn { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
@keyframes dcPop { from { opacity: 0; transform: scale(.84); } to { opacity: 1; transform: none; } }
@keyframes dcFab { from { opacity: 0; transform: scale(.5); } to { opacity: 1; transform: none; } }
@keyframes dcUp { from { opacity: 0; transform: translateY(105%); } to { opacity: 1; transform: none; } }

.tela { animation: dcIn .34s cubic-bezier(.22,.68,.3,1) backwards; }
.lista > * { animation: dcIn .3s cubic-bezier(.22,.68,.3,1) backwards; }
.grade > * { animation: dcPop .28s ease-out backwards; }
.fab { animation: dcFab .38s cubic-bezier(.34,1.4,.6,1) backwards .15s; }
.barra { animation: dcUp .3s cubic-bezier(.22,.68,.3,1) backwards; }

.tap { transition: transform .16s ease, filter .22s ease, box-shadow .25s ease; }
.tap:active { transform: scale(.96); }
@media (hover: hover) { .tap:hover { filter: brightness(1.12); } }

@media (prefers-reduced-motion: reduce) {
  .tela, .lista > *, .grade > *, .fab, .barra { animation: none; }
  .tap { transition: none; }
  .tap:active { transform: none; }
}

.cal-nav-btn {
  all: unset; cursor: pointer; color: #cfccdd; font-size: 16px; font-weight: 700;
  padding: 4px 10px; border-radius: 8px;
}
.cal-nav-btn:hover { background: rgba(255,255,255,0.08); }

[hidden] { display: none !important; }
