@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600&family=IBM+Plex+Mono:wght@400;500&family=Fraunces:opsz,wght@9..144,400..500&display=swap');

/* ================================================================
   Anchita — dark brand theme for banking.anchita.ai
   Matches anchita.ai: obsidian ground, cyan / cobalt / pearl accents.
   Layered on top of the Just the Docs built-in "dark" color scheme.

   Ground     #07090e  — page background (obsidian)
   Sidebar    #0a0d14  — sidebar / header
   Panel      #0e1220  — table headers, search, code
   Cyan       #46b6f2  — links, active nav, accents
   Cobalt     #3a55e8  — secondary accent
   Pearl      #eef1f6  — headings
   ================================================================ */

:root{
  --ac-ink:#07090e;
  --ac-sidebar:#0a0d14;
  --ac-panel:#0e1220;
  --ac-text:#c9d2df;
  --ac-heading:#eef1f6;
  --ac-muted:#8b97ac;
  --ac-cyan:#46b6f2;
  --ac-cyan-bright:#84d0ff;
  --ac-cobalt:#8ea2ff;
  --ac-hair:rgba(255,255,255,.09);
}

/* ── Base ───────────────────────────────────────────────────────── */
body{
  background-color:var(--ac-ink);
  color:var(--ac-text);
  font-family:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
}
.main-content,
.main-content p,
.main-content li,
.main-content dd{ color:var(--ac-text); }

/* ── Sidebar + header ───────────────────────────────────────────── */
.side-bar{ background-color:var(--ac-sidebar); border-right:1px solid var(--ac-hair); }
.site-header{ background-color:var(--ac-sidebar); border-bottom:1px solid var(--ac-hair); }
.site-title{ color:var(--ac-heading) !important; font-weight:600; letter-spacing:.01em; }
.site-logo{ margin:.4rem 0; }
.site-button{ color:var(--ac-text); }
.site-header .aux-nav-link,
.aux-nav-list-item a{ color:var(--ac-muted) !important; }
.site-header .aux-nav-link:hover,
.aux-nav-list-item a:hover{ color:var(--ac-cyan) !important; text-decoration:none; }

/* ── Main region ────────────────────────────────────────────────── */
.main{ background-color:var(--ac-ink); }

/* ── Headings ───────────────────────────────────────────────────── */
.main-content h1{ color:var(--ac-heading); font-family:"Fraunces",Georgia,serif; font-weight:460;
  border-bottom:1px solid var(--ac-hair); padding-bottom:.4rem; margin-top:2rem; }
.main-content h2{ color:var(--ac-heading); border-bottom:1px solid var(--ac-hair);
  padding-bottom:.25rem; margin-top:2rem; }
.main-content h3{ color:var(--ac-cyan); margin-top:1.5rem; }
.main-content h4{ color:var(--ac-cobalt); }
.main-content h5,.main-content h6{ color:var(--ac-heading); }

/* ── Links ──────────────────────────────────────────────────────── */
a,.main-content a{ color:var(--ac-cyan); }
a:hover,.main-content a:hover{ color:var(--ac-cyan-bright); }

/* ── Navigation ─────────────────────────────────────────────────── */
.nav-list .nav-list-item .nav-list-link{ color:var(--ac-text); }
.nav-list .nav-list-item .nav-list-link:hover{ background-color:rgba(70,182,242,.08); color:var(--ac-cyan); }
.nav-list .nav-list-link.active,
.nav-list .nav-list-item.active > .nav-list-link{
  background-color:rgba(70,182,242,.10);
  color:var(--ac-cyan-bright);
  font-weight:600;
  border-left:3px solid var(--ac-cyan);
}
.nav-category{ color:var(--ac-muted); border-bottom:1px solid var(--ac-hair); }

/* ── Inline code ────────────────────────────────────────────────── */
code{
  background-color:#12182a;
  color:#a9c7ff;
  border:1px solid var(--ac-hair);
  border-radius:4px;
  padding:.12em .38em;
  font-family:"IBM Plex Mono",ui-monospace,SFMono-Regular,monospace;
  font-size:.86em;
}

/* ── Code blocks ────────────────────────────────────────────────── */
.main-content pre,
.main-content .highlight,
.main-content .highlighter-rouge .highlight{
  background-color:#0b0f18 !important;
  border:1px solid var(--ac-hair);
  border-radius:8px;
}
.main-content pre code,
.main-content .highlight code,
.main-content .highlighter-rouge code{
  background-color:transparent !important;
  border:none !important;
  color:#cdd6e6 !important;
  font-family:"IBM Plex Mono",ui-monospace,SFMono-Regular,monospace;
  font-size:.86em;
}
/* Rouge syntax tokens — cool palette */
.main-content .highlight .k,.main-content .highlight .kd,.main-content .highlight .kn,
.main-content .highlight .kt,.main-content .highlight .kr{ color:#84d0ff !important; }
.main-content .highlight .s,.main-content .highlight .s1,.main-content .highlight .s2,
.main-content .highlight .sb,.main-content .highlight .se{ color:#9ae6b4 !important; }
.main-content .highlight .c,.main-content .highlight .c1,.main-content .highlight .cm{ color:#5a6577 !important; font-style:italic; }
.main-content .highlight .n,.main-content .highlight .nx,.main-content .highlight .nl,
.main-content .highlight .p,.main-content .highlight .o,.main-content .highlight .mi,
.main-content .highlight .nn,.main-content .highlight .nt{ color:#cdd6e6 !important; }
.main-content .highlight .na,.main-content .highlight .nb,.main-content .highlight .nf{ color:#a9c7ff !important; }

/* ── Tables ─────────────────────────────────────────────────────── */
.main-content table{
  border-collapse:collapse; width:100%; margin:1.5rem 0;
  border:1px solid var(--ac-hair); border-radius:8px; overflow:hidden;
  background-color:transparent;
}
.main-content table thead tr{ background-color:var(--ac-panel); }
.main-content table thead th{ color:var(--ac-heading); font-weight:600; padding:.6rem 1rem;
  text-align:left; border:none; border-bottom:1px solid var(--ac-hair); }
.main-content table tbody td{ color:var(--ac-text); padding:.55rem 1rem;
  border-bottom:1px solid var(--ac-hair); background-color:transparent; }
.main-content table tbody tr:nth-child(even){ background-color:rgba(255,255,255,.02); }
.main-content table tbody tr:hover{ background-color:rgba(70,182,242,.06); }

/* ── Blockquotes (node-key legends) ─────────────────────────────── */
.main-content blockquote{
  border-left:3px solid var(--ac-cyan);
  background-color:rgba(70,182,242,.07);
  padding:.75rem 1.25rem; border-radius:0 6px 6px 0; margin:1.5rem 0;
}
.main-content blockquote p{ color:var(--ac-text); margin:0; }

/* ── Callouts ───────────────────────────────────────────────────── */
.compliance-boundary{
  background-color:rgba(231,111,81,.12);
  border-left:4px solid #e76f51;
  padding:.75rem 1.25rem; margin:1.5rem 0; border-radius:0 6px 6px 0;
}
.compliance-boundary strong{ color:#f0a58f; }

/* ── Search ─────────────────────────────────────────────────────── */
.search-input{ background-color:var(--ac-panel); color:var(--ac-text); }
.search-input:focus{ box-shadow:0 0 0 2px rgba(70,182,242,.25); }
.search-input::placeholder{ color:var(--ac-muted); }
.search-result{ background-color:var(--ac-sidebar); }
.search-result-title{ color:var(--ac-text); }
.search-result:hover,.search-result.active{ background-color:rgba(70,182,242,.10); }
.search-result-highlight{ color:var(--ac-cyan); }

/* ── Footer ─────────────────────────────────────────────────────── */
.site-footer{ border-top:1px solid var(--ac-hair); background-color:var(--ac-sidebar); color:var(--ac-muted); }

/* ── Mermaid — render on a light card so colored nodes stay legible ─ */
.mermaid{
  background:#f6f8fc;
  border:1px solid var(--ac-hair);
  border-radius:10px;
  padding:1rem; margin:1.5rem 0; text-align:center;
}

/* ── Back to top ────────────────────────────────────────────────── */
.back-to-top{ color:var(--ac-cyan); }
.back-to-top:hover{ color:var(--ac-cyan-bright); }

/* ── Labels / misc ──────────────────────────────────────────────── */
.label,.label-blue{ background-color:var(--ac-cobalt); color:#0b0f18; }
hr{ border-color:var(--ac-hair); }
