:root{
  --cipec-green:#e4f3d8;
  --cipec-blue:#afcacc;
  --cipec-orange:#ffa02e;
  --cipec-pink:#e80560;
  --cipec-purple:#331d4a;
}
body{
  background:var(--cipec-green);
  color:#222;
  min-height:100vh;
}
.navbar-cipec{
  background:var(--cipec-orange);
}
.navbar-cipec .navbar-brand,
.navbar-cipec .nav-link{
  color:var(--cipec-purple)!important;
  font-weight:600;
}
.navbar-cipec .nav-link:hover{ color:#fff!important; }
.btn-cipec{
  background:var(--cipec-pink);
  border-color:var(--cipec-pink);
  color:#fff;
  font-weight:600;
}
.btn-cipec:hover{ background:#bb0450; border-color:#bb0450; color:#fff; }
.btn-cipec:disabled{ opacity:.55; }
.card-cipec{
  border:none;
  border-radius:14px;
  box-shadow:0 4px 18px rgba(51,29,74,.08);
}
.card-cipec .card-header{
  background:var(--cipec-purple);
  color:#fff;
  border-radius:14px 14px 0 0!important;
  font-weight:600;
}
.step{
  border-left:4px solid #ccc;
  padding-left:1rem;
  margin-bottom:1.5rem;
}
.step.ok{ border-left-color:#28a745; }
.step.atual{ border-left-color:var(--cipec-pink); }
.step h5{ color:var(--cipec-purple); margin-bottom:.5rem; }
.muted{ color:#777; font-size:.9rem; }
.badge-status{
  background:var(--cipec-purple);
  color:#fff;
}
.badge-status.pronto{ background:#28a745; }
.badge-status.erro{ background:#dc3545; }
.preview-img{
  max-width:240px;
  max-height:360px;
  border-radius:8px;
  border:1px solid #ddd;
}
video.preview-video{
  max-width:280px;
  border-radius:8px;
  border:1px solid #ddd;
  background:#000;
}
pre.erro{
  background:#fff3f3;
  border:1px solid #f3c2c2;
  color:#5c1a1a;
  padding:.75rem 1rem;
  border-radius:8px;
  font-size:.85rem;
  white-space:pre-wrap;
  word-break:break-word;
}
.login-wrap{
  max-width:380px;
  margin:8vh auto 0;
}
.login-wrap .card-cipec{ background:#fff; }
.alma-textarea{ font-family:inherit; }
