/* CORE-FM identity: the supplied logo, sky blue surfaces and navy typography. */
:root {
  --green: #006bbb; /* Shared action token retained for existing components. */
  --orange: #1485cc;
  --muted: #526c85;
  --line: #d6e3ef;
  color: #18344d;
  background: #f4f8fc;
}
:focus-visible { outline-color: #0076cc; }
.wordmark { width: 100%; max-width: 300px; white-space: normal; }
.core-logo { display: block; width: 100%; height: auto; background: transparent; }
.sidebar { background: #e9f3fe; color: #18344d; border-right: 1px solid #cddff0; }
.sidebar .wordmark { max-width: 200px; }
.workspace-icon, .avatar { background: #d0e6fb; border-color: #b5d4ee; color: #155682; }
.workspace small, .profile small, .nav-caption, .local-indicator { color: #4c6b88; }
.sidebar nav a { color: #294f70; }
.sidebar nav a.active { background: #006bbb; color: #fff; }
.sidebar nav a:hover:not(.active) { background: #d4e7fa; color: #164b77; }
.profile { border-color: #c9ddee; }
.logout { color: #285d86; }
.local-indicator i { background: #087caa; }
.topbar { background: #fff; }
.brand-caption, .eyebrow, .stat-symbol { color: #496780; }
.primary { background: #006bbb; }
.primary:hover { background: #005394; }
.text-button, .back { color: #0065a9; }
.record-link:hover strong { color: #006bbb; }
.stat.accent, .note-card, .access-help, .ops-explainer, .qr-register {
  background: #eaf4ff; border-color: #c8dff4;
}
.note-card p, .route-preview { color: #426480; }
.round-progress { background: #155b91; color: #fff; }
.round-progress p, .round-progress strong span { color: #e0f0ff; }
progress { accent-color: #0084ce; }
.access-banner.lf { background: #e5f2ff; border-color: #bad9f3; color: #245a85; }
.login-story {
  background: linear-gradient(145deg, #eef8ff 0%, #d9edff 65%, #c8e5fb 100%);
  color: #123b5c;
  border-right: 1px solid #c8dfef;
}
.login-screen { grid-template-columns: minmax(0, 820px) minmax(400px, 1fr); }
.login-story .wordmark { max-width: 700px; }
.login-story p, .login-foot, .login-story .light { color: #416480; }
.login-panel { background: #fff; }
.public-body { background: #f1f7fd; }
.public-header { background: #e2f0ff; color: #18344d; border-bottom: 1px solid #cadff1; }
.public-header .wordmark { max-width: 270px; }
.public-main .intro { color: #526c85; }
.public-asset { background: #e5f2ff; border-left-color: #0082ce; }
.public-asset small, .public-footer, main>footer, td small { color: #526c85; }
@media (max-width: 900px) {
  .login-screen { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .sidebar .wordmark { width: 190px; max-width: calc(100% - 44px); }
  .sidebar-bottom { top: 31px; }
  .login-story { min-height: 285px; padding: 24px 28px; border-right: 0; border-bottom: 1px solid #c8dfef; }
  .login-story .wordmark { max-width: 500px; }
  .login-story h1 { margin-top: 24px; }
  .public-header { padding-top: 18px; padding-bottom: 18px; }
}
