/* Fonte Roboto para navbar e páginas landing - melhor estética e legibilidade */
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;600;700&display=swap');

/* Cores de marca CardapioRapido */
:root {
  --brand-primary: #ff4b2b;
  --brand-primary-light: #ff6b6b;
  --brand-primary-dark: #ee5a24;
  --brand-focus-shadow: rgba(255, 75, 43, 0.2);
}

/* Fundos para páginas de Login e Registro */
.body-auth {
  font-family: 'Poppins', sans-serif;
  background-color: #f8f9fa;
  min-height: 100vh;
  margin-bottom: 0;
}

.food-bg {
  background: linear-gradient(135deg, var(--brand-primary-light) 0%, #ff8e53 100%);
}

.auth-card {
  max-width: 56rem;
  border-radius: 1rem;
  overflow: hidden;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}

.auth-brand-panel {
  background: linear-gradient(135deg, var(--brand-primary-light) 0%, #ff8e53 100%);
  color: white;
  padding: 2.5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.auth-brand-panel h1 {
  font-size: 2.25rem;
  font-weight: 700;
  margin-bottom: 1rem;
}

.auth-brand-panel img {
  width: 16rem;
  height: 16rem;
  margin: 0 auto;
  border-radius: 1rem;
  object-fit: cover;
}

.btn-brand {
  background: linear-gradient(to right, #ff416c, var(--brand-primary));
  transition: all 0.3s ease;
}

.btn-brand:hover {
  opacity: 0.95;
  transform: translateY(-1px);
}

/* Estilo unificado para inputs de texto */
.form-control,
.input-field,
.input-focus,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="date"],
input[type="url"],
input[type="tel"],
textarea.form-control {
  border: 2px solid #e5e7eb;
  border-radius: 10px;
  padding: 0.75rem 1rem;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.form-control:focus,
.input-field:focus,
.input-focus:focus,
input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="number"]:focus,
input[type="date"]:focus,
input[type="url"]:focus,
input[type="tel"]:focus,
textarea.form-control:focus {
  border-color: var(--brand-primary);
  box-shadow: 0 0 0 3px var(--brand-focus-shadow);
  outline: none;
}

/* Inputs com ícone à esquerda - afastar texto do ícone (Login, Register, etc.) */
.input-icon-wrapper input,
.input-icon-wrapper input[type="text"],
.input-icon-wrapper input[type="email"],
.input-icon-wrapper input[type="password"],
.input-icon-wrapper input[type="tel"] {
  padding-left: 3.25rem !important;
}

/* Input com ícone à direita (ex: toggle senha) */
.input-icon-wrapper.input-icon-right input {
  padding-right: 3rem !important;
}

html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

/* Navbar landing - Roboto em negrito para melhor leitura */
.nav-landing {
  font-family: 'Roboto', sans-serif;
}
.nav-landing .nav-links a,
.nav-landing .nav-actions a {
  font-weight: 700;
  letter-spacing: 0.02em;
}
.nav-landing .nav-brand {
  font-family: 'Roboto', sans-serif;
  font-weight: 700;
}