:root {
  --rcs-navy: #12304f;
  --rcs-navy-dark: #0d2338;
  --rcs-accent: #1d6fa5;
}
body { background: #f4f6f8; }
.rcs-navbar { background: var(--rcs-navy); }
.rcs-navbar .navbar-brand { font-weight: 600; letter-spacing: .02em; }
.rcs-org { color: #cfe2f3; font-weight: 600; }
.card { border: 1px solid #e2e6ea; box-shadow: 0 1px 2px rgba(16,32,48,.05); }
.card-header { background: #fff; border-bottom: 1px solid #e2e6ea; font-weight: 600; }
.metric-card { border-left: 4px solid var(--rcs-accent); }
.metric-card .metric-value { font-size: 2rem; font-weight: 700; line-height: 1; color: var(--rcs-navy); }
.metric-card .metric-label { font-size: .8rem; text-transform: uppercase; letter-spacing: .04em; color: #6b7b8c; }
.metric-card.metric-warn { border-left-color: #d97706; }
.metric-card.metric-danger { border-left-color: #b91c1c; }
.metric-card.metric-good { border-left-color: #15803d; }
.btn-rcs { background: var(--rcs-navy); border-color: var(--rcs-navy); color: #fff; }
.btn-rcs:hover { background: var(--rcs-navy-dark); border-color: var(--rcs-navy-dark); color: #fff; }
.timeline { list-style: none; margin: 0; padding: 0; }
.timeline li { border-left: 2px solid #d7dee6; padding: 0 0 1rem 1rem; position: relative; }
.timeline li:before { content: ''; position: absolute; left: -6px; top: .35rem; width: 10px; height: 10px; border-radius: 50%; background: var(--rcs-accent); }
.timeline .tl-time { font-weight: 600; color: var(--rcs-navy); }
.table td, .table th { vertical-align: middle; }
.login-wrap { max-width: 420px; margin: 8vh auto; }
.checklist-item { border-bottom: 1px solid #eef1f4; padding: .6rem 0; }
.checklist-item:last-child { border-bottom: 0; }
