:root {
  --anrdi-ink: #18333d;
  --anrdi-muted: #60777d;
  --anrdi-line: #dbe5e3;
  --anrdi-paper: #f7f9f8;
  --anrdi-white: #ffffff;
  --anrdi-blue: #123f50;
  --anrdi-blue-dark: #0b2d3a;
  --anrdi-coral: #d9684f;
  --anrdi-coral-dark: #b94f3b;
  --anrdi-soft: #edf4f1;
  --anrdi-shadow: 0 8px 24px rgba(11, 45, 58, .06);
}

html { background: var(--anrdi-paper); }
body { background: var(--anrdi-paper); color: var(--anrdi-ink); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.app-frame { background: var(--anrdi-paper); }
.sidebar, .admin-body .sidebar { background: var(--anrdi-blue-dark); }
.brand-mark { width: 40px; height: 40px; border-radius: 8px; background: var(--anrdi-coral); font-family: Georgia, serif; font-size: 23px; }
.brand strong { font-size: 14px; letter-spacing: .14em; }
.brand small { color: #a8bec1; letter-spacing: .12em; }
.sidebar-brand { padding-bottom: 38px; }
.side-nav { gap: 3px; }
.nav-label { color: #8faeb2; font-size: 10px; font-weight: 800; letter-spacing: .14em; }
.side-nav a, .context-switch, .settings-link { display: flex; align-items: center; gap: 9px; border-radius: 7px; color: #dce9e8; font-size: 13px; padding: 11px 12px; }
.side-nav a:hover, .side-nav a.is-active, .context-switch:hover, .settings-link:hover { background: #164c5e; }
.side-nav a.is-active { box-shadow: inset 3px 0 var(--anrdi-coral); color: #fff; font-weight: 700; }
.nav-icon { width: 18px; color: #9bb8ba; display: inline-grid; place-items: center; font-size: 15px; line-height: 1; }
.side-nav a.is-active .nav-icon, .side-nav a:hover .nav-icon { color: #ff9b82; }
.main-content { background: var(--anrdi-paper); }
.top-context, .admin-body .top-context { height: 72px; background: var(--anrdi-white); border-bottom: 1px solid var(--anrdi-line); box-shadow: 0 1px 0 rgba(11, 45, 58, .02); }
.breadcrumb { color: var(--anrdi-muted); font-size: 13px; }
.user-chip { border-color: var(--anrdi-line); border-radius: 7px; padding: 7px 12px; font-size: 12px; font-weight: 700; }
.page-heading { padding-top: 48px; padding-bottom: 28px; }
.page-heading h1, .auth-intro h1, .article-page h1 { font-family: Inter, ui-sans-serif, system-ui, sans-serif; font-size: clamp(32px, 4vw, 54px); font-weight: 750; letter-spacing: -.045em; line-height: 1.08; }
.page-heading h1 { margin-bottom: 10px; }
.eyebrow, .section-kicker { color: var(--anrdi-coral); font-weight: 800; letter-spacing: .13em; }
.lead { color: var(--anrdi-muted); font-size: 15px; }
.card, .side-panel, .context-card, .resource-card, .stat-card, .document-card, .notice-item, .admin-callout, .empty-state { border: 1px solid var(--anrdi-line); border-radius: 10px; box-shadow: var(--anrdi-shadow); }
.card, .auth-card { background: var(--anrdi-white); }
.stat-card { border-radius: 9px; box-shadow: var(--anrdi-shadow); }
.stat-card strong { font-family: Inter, ui-sans-serif, system-ui, sans-serif; font-size: 34px; font-weight: 750; letter-spacing: -.04em; }
.resource-card:hover, .stat-card:hover, .context-card:hover { border-color: var(--anrdi-coral); transform: translateY(-1px); }
.button { border-radius: 7px; background: var(--anrdi-coral); padding: 12px 17px; }
.button:hover { background: var(--anrdi-coral-dark); }
.button-light { background: var(--anrdi-soft); color: var(--anrdi-blue); }
.button-light:hover { background: #dfece7; }
input, textarea, select { border-color: #c9d8d5; border-radius: 6px; }
input:focus, textarea:focus, select:focus { outline: 3px solid rgba(217, 104, 79, .18); border-color: var(--anrdi-coral); }
.table-wrap table { border-color: var(--anrdi-line); box-shadow: var(--anrdi-shadow); border-radius: 9px; overflow: hidden; }
th { background: var(--anrdi-soft); color: var(--anrdi-muted); }
.status-pill { background: #e6f3eb; color: #286044; font-weight: 700; }
.site-footer { color: var(--anrdi-muted); }
.admin-body { background: #f2f6f5; }
.admin-body .main-content { background: #f2f6f5; }
.admin-body .page-heading h1 { font-family: Inter, ui-sans-serif, system-ui, sans-serif; font-size: clamp(34px, 4vw, 52px); }
.admin-body .stat-card, .admin-body .card { border-radius: 10px; box-shadow: var(--anrdi-shadow); }
.admin-body .side-nav a.is-active { background: #164c5e; box-shadow: inset 3px 0 var(--anrdi-coral); }
.admin-body .admin-callout { border-left-color: var(--anrdi-coral); }
.auth-layout { padding-top: 70px; }
.auth-card { border-radius: 12px; box-shadow: 0 12px 34px rgba(11, 45, 58, .08); }
.auth-intro h1 { max-width: 650px; }
.intro-points strong { font-weight: 700; }
.oauth-button { border-radius: 7px; }
.mobile-header { background: var(--anrdi-blue-dark); }
.menu-toggle { border-radius: 7px; }

@media (max-width: 720px) {
  .top-context { height: 62px; }
  .page-heading { padding-top: 34px; }
  .auth-layout { padding-top: 35px; }
  .auth-intro h1 { font-size: 40px; }
  .brand-mark { width: 36px; height: 36px; }
}
