/* LOGIN CSS  */
body.login {
  margin: 0;
  padding: 0;
  height: 100%;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  background: #f8f9fb;
  overflow: hidden;
}

.login-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
  min-height: 100dvh;
  padding: 1rem;
}

.form-signin {
  width: 100%;
  max-width: 400px;
  padding: 2.5rem 2rem;
  margin: auto;
  background: #ffffff;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 1.25rem;
  color: #0f172a;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.1), 0 0 0 1px rgba(0, 0, 0, 0.05);
  animation: fadeSlideUp 0.5s ease-out;
}

@keyframes fadeSlideUp {
  from { opacity: 0; transform: translateY(24px); }
  to   { opacity: 1; transform: translateY(0); }
}

.login-brand {
  text-align: center;
  margin-bottom: 2rem;
}

.login-icon {
  width: 64px;
  height: 64px;
  margin: 0 auto 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #3b82f6, #6366f1);
  border-radius: 1rem;
  font-size: 1.75rem;
  color: #fff;
  box-shadow: 0 8px 24px rgba(99, 102, 241, 0.35);
}

.login-brand h1 {
  font-size: 1.5rem;
  font-weight: 700;
  margin: 0 0 0.25rem;
  letter-spacing: -0.025em;
  color: #0f172a;
}

.login-subtitle {
  font-size: 0.875rem;
  color: #64748b;
  margin: 0;
}

.login-fields {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  margin-bottom: 1.5rem;
}

.input-group-modern {
  position: relative;
}

.input-group-modern .input-icon {
  position: absolute;
  left: 1rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.1rem;
  color: #94a3b8;
  pointer-events: none;
  transition: color 0.2s ease;
}

.input-group-modern .form-control {
  width: 100%;
  padding: 0.875rem 1rem 0.875rem 2.75rem;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 0.75rem;
  color: #0f172a;
  font-size: 0.95rem;
  transition: all 0.25s ease;
  outline: none;
  box-sizing: border-box;
}

.input-group-modern .form-control::placeholder {
  color: #94a3b8;
}

.input-group-modern .form-control:focus {
  background: #ffffff;
  border-color: #6366f1;
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.1);
}

.input-group-modern:focus-within .input-icon {
  color: #6366f1;
}

.btn-login {
  width: 100%;
  padding: 0.875rem 1.5rem;
  background: linear-gradient(135deg, #3b82f6, #6366f1);
  border: none;
  border-radius: 0.75rem;
  color: #fff;
  font-size: 1rem;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  cursor: pointer;
  transition: all 0.25s ease;
  box-shadow: 0 4px 16px rgba(99, 102, 241, 0.3);
}

.btn-login:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 24px rgba(99, 102, 241, 0.4);
  background: linear-gradient(135deg, #2563eb, #4f46e5);
}

.btn-login:active {
  transform: translateY(0);
  box-shadow: 0 2px 8px rgba(99, 102, 241, 0.3);
}

.btn-login:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  transform: none;
}

.btn-login .bi-arrow-right {
  transition: transform 0.2s ease;
}

.btn-login:hover .bi-arrow-right {
  transform: translateX(3px);
}

.login-footer {
  text-align: center;
  margin: 1.75rem 0 0;
  font-size: 0.8rem;
  color: #94a3b8;
}

/* Small devices */
@media (max-width: 480px) {
  .form-signin {
    padding: 2rem 1.5rem;
    border-radius: 1rem;
    border: 1px solid rgba(0, 0, 0, 0.05);
    background: #ffffff;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.08);
  }
  .login-icon {
    width: 56px;
    height: 56px;
    font-size: 1.5rem;
  }
  .login-brand h1 {
    font-size: 1.3rem;
  }
}

.form-signin label{
    color: #0f172a;
}

/* DASHBOARD CSS */
.btn-primary {
  color: #fff;
  background-color: #1717cf;
  border-color: #1717cf;
}
a{
  color:#1717cf;
}
#loginMenu li{
  font-size:0.8rem;
}
#maisFiltros{
	display: none;
}
.btnFiltrar, .btnPesquisar{
	text-decoration: none;
}
#results .item {
	width: 100%;
	margin-top:0.4rem;
	padding-left: 0.36rem;
	padding-right: 0.36rem;
    padding-bottom: 0.6rem;
    border-bottom: solid 1px #a8a8a8;
}
#results .item.last_seen {
    background-color: #eee;
    border: solid 1px #a8a8a8;
}
#results .item p{
	margin-bottom: 0;
}
#results .item .titulo {
    font-size: 1.2em;
    font-weight: 600;
    color: #000000;
}
#results .item .valor {
    font-size: 1.2em;
    font-weight: 600;
    color: #1717cf;
    float: right;
}
#results .item .qtde{
	font-size: 1.2em;
    font-weight: 600;
    color: #1717cf;
}
#results .item .codigo{
  color: #8a8a8a;
  font-size: 0.80em;
}
#results a{
  text-decoration: none;
}
/* PRODUTO CSS  */
#produto .detalhes{
  width: 100%;
  margin-top:0.4rem;
  padding-left: 0.36rem;
  padding-right: 0.36rem;
  padding-bottom: 0.6rem;
  border-bottom: solid 1px #a8a8a8;
}
#produto .detalhes .valor{
  font-size: 1em;
  font-weight: 600;
  color: #000000;
  float: right;
}
.spacer{
  display: block;
  margin-top: 1.8rem;
}