:root {
  --rosa: #D9B8D0;
  --rosa-escuro: #9E5D92;
  --lilas: #4FA184;
  --creme: #FFFAF1;
  --texto: #493B47;
  --verde: #2F8F6F;
  --vermelho: #B5475B;
  --branco: #ffffff;
  --sombra: 0 4px 14px rgba(158, 93, 146, 0.18);
}

* { box-sizing: border-box; }

body {
  background: linear-gradient(160deg, #FFFAF1 0%, #F7F0FA 100%);
  font-family: 'Quicksand', 'Poppins', sans-serif;
  color: var(--texto);
  min-height: 100vh;
}

.navbar-atelie {
  background: linear-gradient(120deg, var(--rosa) 0%, var(--lilas) 100%);
  box-shadow: var(--sombra);
}

.navbar-atelie .navbar-brand {
  font-weight: 700;
  font-size: 1.4rem;
  color: var(--branco) !important;
  letter-spacing: .5px;
}

.navbar-atelie .nav-link {
  color: rgba(255,255,255,0.9) !important;
  font-weight: 600;
  border-radius: 10px;
  margin: 0 2px;
  padding: 8px 14px !important;
}

.navbar-atelie .nav-link.active,
.navbar-atelie .nav-link:hover {
  background: rgba(255,255,255,0.25);
  color: #fff !important;
}

.card-atelie {
  background: var(--branco);
  border: none;
  border-radius: 18px;
  box-shadow: var(--sombra);
  padding: 22px;
  margin-bottom: 22px;
}

.titulo-pagina {
  font-weight: 700;
  color: var(--rosa-escuro);
  margin-bottom: 4px;
}

.subtitulo-pagina {
  color: #8B7B88;
  margin-bottom: 24px;
}

.btn-atelie {
  background: var(--rosa-escuro);
  border: none;
  color: #fff;
  border-radius: 30px;
  padding: 8px 22px;
  font-weight: 600;
  transition: .2s;
}
.btn-atelie:hover { background: #d6748c; color: #fff; }

.btn-lilas {
  background: var(--lilas);
  border: none;
  color: #fff;
  border-radius: 30px;
  padding: 8px 22px;
  font-weight: 600;
}
.btn-lilas:hover { background: #3F8A70; color: #fff; }

.badge-pago {
  background: var(--verde);
  color: #fff;
  border-radius: 20px;
  padding: 5px 14px;
  font-weight: 600;
}

.badge-pendente {
  background: var(--vermelho);
  color: #fff;
  border-radius: 20px;
  padding: 5px 14px;
  font-weight: 600;
}

.badge-status {
  background: var(--lilas);
  color: #fff;
  border-radius: 20px;
  padding: 5px 14px;
  font-weight: 600;
  font-size: .8rem;
}

.dashboard-stat {
  border-radius: 18px;
  padding: 22px;
  color: #fff;
  box-shadow: var(--sombra);
}
.dashboard-stat.rosa { background: linear-gradient(135deg, #D9B8D0, #9E5D92); }
.dashboard-stat.lilas { background: linear-gradient(135deg, #BFE6D6, #4FA184); }
.dashboard-stat.verde { background: linear-gradient(135deg, #7FC4A8, #2F8F6F); }
.dashboard-stat h2 { font-weight: 700; margin-bottom: 0; }
.dashboard-stat span { font-size: .9rem; opacity: .9; }

table.tabela-atelie th {
  color: var(--rosa-escuro);
  border-bottom: 2px solid #ECE1E9;
  font-size: .85rem;
  text-transform: uppercase;
  letter-spacing: .5px;
}
table.tabela-atelie td { vertical-align: middle; }

.select-baixa {
  border-radius: 20px;
  font-weight: 600;
  font-size: .82rem;
  min-width: 130px;
  border: none;
  cursor: pointer;
  color: #fff;
  background-color: var(--lilas);
}
.select-baixa.select-pago { background-color: var(--verde); }
.select-baixa.select-pendente { background-color: var(--vermelho); }
.select-baixa option { color: #333; }

.foto-encomenda-thumb {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  object-fit: cover;
  cursor: pointer;
  border: 2px solid #ECE1E9;
  transition: transform .15s;
}
.foto-encomenda-thumb:hover { transform: scale(1.1); }

.foto-encomenda-placeholder {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #F2EAF0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #B876AC;
  font-size: 1.2rem;
}

.login-box {
  max-width: 400px;
  margin: 80px auto;
  background: #fff;
  border-radius: 22px;
  padding: 40px;
  box-shadow: var(--sombra);
  text-align: center;
}
.login-box h1 { font-size: 1.6rem; color: var(--rosa-escuro); font-weight: 700; }
.login-box p.sub { color: #8B7B88; margin-bottom: 24px; }

.arte-card img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  border-radius: 14px 14px 0 0;
}
.arte-card {
  background: #fff;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: var(--sombra);
  margin-bottom: 24px;
}
.arte-card .corpo { padding: 16px; }

.form-label { font-weight: 600; color: var(--texto); }
.form-control, .form-select {
  border-radius: 10px;
  border: 1px solid #ECE1E9;
}
.form-control:focus, .form-select:focus {
  border-color: var(--rosa-escuro);
  box-shadow: 0 0 0 .2rem rgba(158,93,146,.15);
}

#calendar { background: #fff; border-radius: 18px; padding: 18px; box-shadow: var(--sombra); }
.fc-event { cursor: pointer; }

.navbar-atelie .navbar-brand {
  display: flex;
  align-items: center;
  gap: 10px;
}
.navbar-atelie .navbar-brand img {
  height: 44px;
  width: auto;
  max-width: none;
  object-fit: contain;
}
.login-box .login-marca {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-bottom: 6px;
}
.login-box .login-marca strong {
  font-size: 1.6rem;
  color: var(--rosa-escuro);
  font-weight: 700;
}
.login-box .login-marca img {
  height: 48px;
  width: auto;
  max-width: none;
  object-fit: contain;
}
