#sidebar { min-height: 100vh; background: #5a5a5f; padding: 0 1rem; }
#sidebar .nav-link { color: #fff; border-radius: 10px; }
.p-3 { padding: 1rem 0 !important; }
#sidebar .nav-link.active { background-color: #f19201;  }
.input-euro::before { content: '€'; position: absolute; margin-left: 10px; }
.input-euro input { padding-left: 20px; }
.position-sticky { height: 100%; }
.btn-success { width: 100% }
.btn-primary, .btn-success { background: #f19201; border: none; }
.btn-primary:hover, .btn-success:hover, .btn.btn-primary:active { background: #5a5a5f; }
#servicos th:last-child, #servicos td:last-child, #clientes th:last-child, #clientes td:last-child { text-align: right; }
.col-md-1.text-end { position: absolute; right: 4px; width: auto; padding-bottom: 16px; }
.px-md-4 { padding: 0 1rem!important; }
.mt-4 { margin-top: 1rem!important; }

/*serviços*/
#tratamentos .mt-3 td:last-child, #tratamentos .mt-3 th:last-child { text-align: right; }
#cliente-form .col-md-4, #cliente-form .col-md-2, #cliente-form .col-md-3 { margin: 12px 0; }
#clientes-list td:first-child { min-width: 130px; }

/*logout*/
.logout { position: absolute; bottom: 1rem; right: 1rem; text-decoration: none; color: #5a5a5f; }

/*login*/
#login { background-image: url("images/banner.webp"); background-repeat: no-repeat; background-size: cover; height: 100%; overflow: hidden; display: flex; align-items: center; justify-content: center; padding: 0 1rem; }
#login:before { background: #00a79d73; }

#login-form { background: #fff; border: 1px solid #fff; border-radius: 30px; gap: 10px; display: grid; margin: auto!important; padding: 50px 40px 70px 39px; width: 100%; max-width: 450px; box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px; }
#login-form h1 { text-align: center; font-family: sans-serif; margin-bottom: 10px; }
#username, #password, #login-form button { width: 100%; padding: 10px; border: 1px solid #f19201; border-radius: 10px; box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px; }
#login-form button { background: #f19201; color: #fff; }
#login input { text-align: center; font-size: 14px; }
#login input:focus { outline: 1px solid #f19201; }
.copy { position: fixed; bottom: 1rem; margin: 0; color: black; font-family: sans-serif; font-size: 12px; font-weight: 600; }




/*renovações*/
.media { position: absolute; bottom: 1rem; }
.media p { margin-bottom: 0; }
#renovacoes th:last-child, #renovacoes td:last-child { text-align: right; }
#renovacoes td:not(:last-child) { min-width: 120px; }
td { vertical-align: middle; }
td:nth-child(n+3) { text-transform: capitalize; }

/* estados */
#renovacoes tr.faturado { opacity: 0.7; }
#renovacoes tr.atraso { outline: 1px solid rgba(220, 53, 69, 0.25); }
#renovacoes tr.atraso td { font-weight: 600; }
#renovacoes tr.atraso td:first-child::before { content: "⚠ "; }

/*queries*/
@media only screen and (max-width: 768px) {
  #sidebar { position: fixed; }
  .d-none { display: block !important; width: auto; position: absolute; }
  .px-md-4 { padding-left: 5rem !important; }
  .nav-item { transform: rotate(270deg); padding: 40% 0; margin: auto; }
  .nav.flex-column.p-3 { height: 100vh; display: flex; width: 30px; gap: 80px; align-content: center; justify-content: center; }
  .nav-item { transform: rotate(270deg); margin: 0; padding: 0; text-align: center; }
}
