:root{
  --brand-dark:#002030;
  --brand-primary:#0060a0;
  --brand-accent:#509020;
  --bg-soft:#f6f7fb;
}

body{background:var(--bg-soft)}

.navbar-brand{padding-top:.25rem;padding-bottom:.25rem}
.navbar-brand .brand-logo{height:44px;width:auto;max-width:240px;object-fit:contain}

/* Bootstrap overrides */
.btn-primary{background-color:var(--brand-primary)!important;border-color:var(--brand-primary)!important}
.btn-primary:hover{filter:brightness(.95)}
.btn-outline-primary{color:var(--brand-primary)!important;border-color:var(--brand-primary)!important}
.btn-outline-primary:hover{background:rgba(0,96,160,.08)!important}

/* Subtle focus ring */
.form-control:focus{border-color:rgba(0,96,160,.45)!important;box-shadow:0 0 0 .2rem rgba(0,96,160,.15)!important}

/* Login page */
.auth-page{
  min-height:calc(100vh - 76px);
  display:flex;
  align-items:center;
}
.auth-wrap{
  position:relative;
}
.auth-hero{
  border-radius:1.25rem;
  overflow:hidden;
  background:linear-gradient(135deg, rgba(0,32,48,.95), rgba(0,96,160,.92));
  padding:1.25rem;
  color:#fff;
}
.auth-hero .logo{
  max-width:320px;
  width:100%;
  height:auto;
  display:block;
}
.auth-hero .subtitle{opacity:.9;margin-top:.75rem;line-height:1.9}

.auth-card{
  border-radius:1.25rem;
  border:1px solid rgba(0,0,0,.06);
  box-shadow:0 10px 30px rgba(0,0,0,.06);
}

/* Small badge chip */
.badge-soft{
  background:rgba(80,144,32,.12);
  color:var(--brand-accent);
  border:1px solid rgba(80,144,32,.25);
}
