:root {
  --navy: #0b1f3a;
  --navy-dark: #071527;
  --profit: #16a34a;
  --loss: #dc2626;
  --bg: #f4f6f9;
}

body {
  background: var(--bg);
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
  color: #1a2233;
}

.app-navbar {
  background: linear-gradient(90deg, var(--navy) 0%, var(--navy-dark) 100%);
}

.app-navbar .nav-link {
  color: rgba(255, 255, 255, 0.75);
}

.app-navbar .nav-link.active,
.app-navbar .nav-link:hover {
  color: #fff;
}

.login-body {
  min-height: 100vh;
  background: linear-gradient(160deg, var(--navy) 0%, var(--navy-dark) 100%);
}

.card {
  border: none;
  border-radius: 0.75rem;
  box-shadow: 0 2px 10px rgba(11, 31, 58, 0.06);
}

.card-header {
  background: #fff;
  border-bottom: 1px solid #edf0f4;
  font-weight: 600;
  border-top-left-radius: 0.75rem !important;
  border-top-right-radius: 0.75rem !important;
}

.stat-card .stat-label {
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #6b7688;
  margin-bottom: 0.35rem;
}

.stat-card .stat-value {
  font-size: 1.5rem;
  font-weight: 700;
}

.stat-card .stat-value-sm {
  font-size: 1.15rem;
  font-weight: 700;
}

.text-profit {
  color: var(--profit) !important;
}

.text-loss {
  color: var(--loss) !important;
}

.preview-card {
  background: #fff;
}

.btn-primary {
  background-color: var(--navy);
  border-color: var(--navy);
}

.btn-primary:hover,
.btn-primary:focus {
  background-color: var(--navy-dark);
  border-color: var(--navy-dark);
}

.app-footer {
  border-top: 1px solid #e3e7ee;
  background: #fff;
}

.table thead th {
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: #6b7688;
  border-bottom-width: 1px;
}

@media (max-width: 576px) {
  .stat-card .stat-value {
    font-size: 1.2rem;
  }
}
