:root {
  color-scheme: dark;
  --bg0h: #1d2021;
  --bg0: #282828;
  --bg1: #3c3836;
  --bg2: #504945;
  --bg3: #665c54;
  --bg4: #7c6f64;
  --fg: #ebdbb2;
  --fg2: #d5c4a1;
  --gray: #928374;
  --red: #fb4934;
  --green: #b8bb26;
  --yellow: #fabd2f;
  --blue: #83a598;
  --purple: #d3869b;
  --aqua: #8ec07c;
  --orange: #fe8019;
}

html, body { background: var(--bg0); color: var(--fg); }
::selection { background: var(--bg3); color: var(--fg); }

div#cgit {
  padding: 0 0 1em 0;
  margin: 0;
  font-family: ui-monospace, "JetBrains Mono", "Fira Code", monospace;
  font-size: 10pt;
  color: var(--fg);
  background: var(--bg0);
}

div#cgit a { color: var(--blue); text-decoration: none; }
div#cgit a:hover { color: var(--aqua); text-decoration: underline; }

div#cgit table { border-collapse: collapse; }
div#cgit table#header { width: 100%; margin-bottom: 1em; background: var(--bg0h); }
div#cgit table#header td.logo { width: 96px; vertical-align: top; }
div#cgit table#header td.main { font-size: 250%; padding-left: 10px; white-space: nowrap; color: var(--yellow); }
div#cgit table#header td.main a { color: var(--yellow); }
div#cgit table#header td.form { text-align: right; vertical-align: bottom; padding-right: 1em; padding-bottom: 2px; white-space: nowrap; }
div#cgit table#header td.form form,
div#cgit table#header td.form input,
div#cgit table#header td.form select { font-size: 90%; }
div#cgit table#header td.sub { color: var(--gray); border-top: 1px solid var(--bg2); padding-left: 10px; }

div#cgit input, div#cgit select, div#cgit textarea {
  background: var(--bg1);
  color: var(--fg);
  border: 1px solid var(--bg3);
  padding: 2px 4px;
  font-family: inherit;
}
div#cgit input:focus, div#cgit select:focus { outline: 1px solid var(--yellow); }
div#cgit input[type=submit] { cursor: pointer; }
div#cgit input[type=submit]:hover { background: var(--bg2); }

div#cgit table.tabs { border-bottom: 3px solid var(--bg2); border-collapse: collapse; margin-top: 2em; margin-bottom: 0; width: 100%; }
div#cgit table.tabs td { padding: 0 1em; vertical-align: bottom; }
div#cgit table.tabs td a { padding: 2px .75em; color: var(--gray); font-size: 110%; }
div#cgit table.tabs td a:hover { color: var(--fg); text-decoration: none; }
div#cgit table.tabs td a.active { color: var(--fg); background: var(--bg2); }
div#cgit table.tabs td.form { text-align: right; }
div#cgit table.tabs td.form form { padding-bottom: 2px; font-size: 90%; white-space: nowrap; }
div#cgit table.tabs td.form input,
div#cgit table.tabs td.form select { font-size: 90%; }

div#cgit div.path { margin: 0; padding: 5px 2em 2px 2em; color: var(--fg2); background: var(--bg1); }
div#cgit div.content { margin: 0; padding: 2em; border-bottom: 3px solid var(--bg2); background: var(--bg0); }

div#cgit table.list { width: 100%; border: none; border-collapse: collapse; }
div#cgit table.list tr { background: var(--bg0); }
div#cgit table.list tr.nohover { background: var(--bg0); }
div#cgit table.list tr:nth-child(even) { background: var(--bg0h); }
div#cgit table.list tr:hover { background: var(--bg1); }
div#cgit table.list tr.nohover:hover { background: var(--bg0); }
div#cgit table.list tr.nohover-highlight:hover:nth-child(even) { background: var(--bg0h); }
div#cgit table.list tr.nohover-highlight:hover:nth-child(odd) { background: var(--bg0); }
div#cgit table.list th { font-weight: bold; padding: .1em .5em .05em .5em; vertical-align: baseline; color: var(--yellow); border-bottom: 1px solid var(--bg2); }
div#cgit table.list td { border: none; padding: .1em .5em .1em .5em; color: var(--fg); }
div#cgit table.list td a { color: var(--blue); }
div#cgit table.list td.logsubject { font-family: inherit; }
div#cgit table.list td.reposection { font-style: italic; color: var(--orange); background: var(--bg1); }
div#cgit table.list td.sublevel-repo { padding-left: 1.5em; }
div#cgit table.list td.commitgraph { font-family: monospace; white-space: pre; }
div#cgit table.list td.commitgraph .column1 { color: var(--red); }
div#cgit table.list td.commitgraph .column2 { color: var(--green); }
div#cgit table.list td.commitgraph .column3 { color: var(--yellow); }
div#cgit table.list td.commitgraph .column4 { color: var(--blue); }
div#cgit table.list td.commitgraph .column5 { color: var(--purple); }
div#cgit table.list td.commitgraph .column6 { color: var(--aqua); }
div#cgit table.list td.reposection a, div#cgit .reposection { color: var(--orange); }
div#cgit table.list td.repo-name a { font-weight: bold; }

div#cgit a.button { font-size: 80%; }
div#cgit a.primary { font-size: 100%; }
div#cgit a.branch-deco { color: var(--bg0); background: var(--green); padding: 0 .3em; margin: 0 .2em; }
div#cgit a.tag-deco { color: var(--bg0); background: var(--yellow); padding: 0 .3em; margin: 0 .2em; }
div#cgit a.tag-annotated-deco { color: var(--bg0); background: var(--orange); padding: 0 .3em; margin: 0 .2em; }
div#cgit a.remote-deco { color: var(--bg0); background: var(--blue); padding: 0 .3em; margin: 0 .2em; }
div#cgit a.deco { color: var(--bg0); background: var(--purple); padding: 0 .3em; margin: 0 .2em; }

div#cgit table.commit-info { border-collapse: collapse; margin-top: 1.5em; }
div#cgit table.commit-info th { text-align: left; font-weight: normal; padding: .1em 1em .1em .1em; color: var(--gray); vertical-align: top; }
div#cgit table.commit-info td { font-weight: normal; padding: .1em 1em .1em .1em; }
div#cgit div.commit-subject { font-weight: bold; font-size: 125%; margin: 1.5em 0 .5em 0; padding: 0; color: var(--yellow); }
div#cgit div.commit-msg { white-space: pre; color: var(--fg2); }
div#cgit div.notes-header { font-weight: bold; padding-top: 1.5em; color: var(--yellow); }
div#cgit div.notes { white-space: pre; border: 1px solid var(--bg3); background: var(--bg1); padding: .3em 2em .3em 1em; }
div#cgit .sha1 { font-family: inherit; font-size: 90%; color: var(--aqua); }

div#cgit div.diffstat-header { font-weight: bold; padding-top: 1.5em; color: var(--yellow); }
div#cgit table.diffstat { border-collapse: collapse; border: 1px solid var(--bg3); background: var(--bg1); }
div#cgit table.diffstat td { padding: 0 .5em; font-size: 100%; }
div#cgit table.diffstat td.mode { white-space: nowrap; }
div#cgit table.diffstat td span.modechange { padding-left: 1em; color: var(--red); }
div#cgit table.diffstat td.add a { color: var(--green); }
div#cgit table.diffstat td.del a { color: var(--red); }
div#cgit table.diffstat td.upd a { color: var(--blue); }
div#cgit table.diffstat td.graph { width: 500px; vertical-align: middle; }
div#cgit table.diffstat td.graph table { border: none; }
div#cgit table.diffstat td.graph td { padding: 0; border: 0; height: 7pt; }
div#cgit table.diffstat td.graph td.add { background: var(--green); }
div#cgit table.diffstat td.graph td.rem { background: var(--red); }
div#cgit table.diffstat td.graph td.none { background: var(--bg3); }
div#cgit div.diffstat-summary { color: var(--gray); padding-top: .5em; }

div#cgit table.diff { width: 100%; }
div#cgit table.diff td { font-family: inherit; white-space: pre; }
div#cgit table.diff td div.head { font-weight: bold; margin-top: 1em; color: var(--fg); }
div#cgit table.diff td div.hunk { color: var(--aqua); }
div#cgit table.diff td div.add { color: var(--green); background: rgba(184, 187, 38, 0.08); }
div#cgit table.diff td div.del { color: var(--red); background: rgba(251, 73, 52, 0.08); }
div#cgit .oid { font-family: inherit; font-size: 90%; }
div#cgit .ctx { color: var(--fg2); }

div#cgit table.blob { margin-top: 0.5em; border-top: 1px solid var(--bg3); }
div#cgit table.blob td.lines { margin: 0; padding: 0 0 0 0.5em; vertical-align: top; color: var(--fg); }
div#cgit table.blob td.linenumbers { margin: 0; padding: 0 0.5em 0 0.5em; vertical-align: top; text-align: right; border-right: 1px solid var(--bg3); }
div#cgit table.blob pre { padding: 0; margin: 0; }
div#cgit table.blob td.linenumbers a,
div#cgit table.ssdiff td.lineno a { color: var(--gray); text-decoration: none; }
div#cgit table.blob td.linenumbers a:hover,
div#cgit table.ssdiff td.lineno a:hover { color: var(--yellow); text-decoration: underline; }
div#cgit table.bin-blob { margin-top: 0.5em; border: 1px solid var(--bg3); }
div#cgit table.bin-blob th { font-family: inherit; white-space: pre; border: 1px solid var(--bg3); padding: 0 0.5em; }
div#cgit table.bin-blob td { font-family: inherit; white-space: pre; border-left: 1px solid var(--bg3); padding: 0 0.5em; }

div#cgit table.blame td.lineno { color: var(--gray); text-align: right; }
div#cgit table.blame td.commit-info { color: var(--fg2); }
div#cgit table.blame div.alt:nth-child(even) { background: var(--bg0h); }
div#cgit table.blame div.alt:nth-child(odd) { background: var(--bg0); }

div#cgit table.ssdiff { width: 100%; }
div#cgit table.ssdiff td { font-size: 100%; font-family: inherit; padding: 0 1em; white-space: pre; }
div#cgit table.ssdiff td.add { color: var(--green); background: rgba(184, 187, 38, 0.1); }
div#cgit table.ssdiff td.add_dark { color: var(--green); background: rgba(184, 187, 38, 0.18); }
div#cgit table.ssdiff span.add { background: rgba(184, 187, 38, 0.3); font-weight: bold; }
div#cgit table.ssdiff td.del { color: var(--red); background: rgba(251, 73, 52, 0.1); }
div#cgit table.ssdiff td.del_dark { color: var(--red); background: rgba(251, 73, 52, 0.18); }
div#cgit table.ssdiff span.del { background: rgba(251, 73, 52, 0.3); font-weight: bold; }
div#cgit table.ssdiff td.changed { color: var(--yellow); background: rgba(250, 189, 47, 0.1); }
div#cgit table.ssdiff td.changed_dark { color: var(--yellow); background: rgba(250, 189, 47, 0.18); }
div#cgit table.ssdiff td.lineno { text-align: right; background: var(--bg1); }
div#cgit table.ssdiff td.hunk { color: var(--aqua); background: var(--bg1); }
div#cgit table.ssdiff td.head { border-top: 1px solid var(--bg3); border-bottom: 1px solid var(--bg3); background: var(--bg1); }
div#cgit table.ssdiff td.head div.head { font-weight: bold; color: var(--fg); }
div#cgit table.ssdiff td.foot { border-top: 1px solid var(--bg3); border-left: none; border-right: none; border-bottom: none; }
div#cgit table.ssdiff td.space { border: none; }
div#cgit table.ssdiff td.space div { min-height: 3em; }

div#cgit div.cgit-panel { float: right; margin-top: 1.5em; }
div#cgit div.cgit-panel table { border-collapse: separate; border: 1px solid var(--bg3); background: var(--bg1); }
div#cgit div.cgit-panel th { text-align: center; color: var(--yellow); }
div#cgit div.cgit-panel td { padding: .25em .5em; }
div#cgit div.cgit-panel td.label { padding-right: .5em; color: var(--gray); }
div#cgit div.cgit-panel td.ctrl { padding-left: .5em; }

div#cgit div.footer { margin-top: 0.5em; text-align: center; font-size: 80%; color: var(--gray); }
div#cgit div.footer a { color: var(--gray); }
div#cgit div.footer a:hover { color: var(--fg2); }

div#cgit div.error { color: var(--red); margin: 1em 2em; }
div#cgit a.ls-blob, div#cgit a.ls-dir, div#cgit .ls-mod { font-family: inherit; }
div#cgit a.ls-dir { font-weight: bold; color: var(--aqua); }

div#cgit span.age-mins { color: var(--green); }
div#cgit span.age-hours { color: var(--aqua); }
div#cgit span.age-days { color: var(--blue); }
div#cgit span.age-weeks { color: var(--fg2); }
div#cgit span.age-months { color: var(--gray); }
div#cgit span.age-years { color: var(--bg4); }

div#cgit span.insertions { color: var(--green); }
div#cgit span.deletions { color: var(--red); }

div#cgit pre { color: var(--fg); }

/* ---- Markdown / About page: !important beats the filter's inline <style> ---- */
div#cgit .markdown-body,
div#cgit .markdown-body * { border-color: var(--bg3) !important; }
div#cgit .markdown-body {
  color: var(--fg) !important;
  background: transparent !important;
  font-family: inherit !important;
  line-height: 1.5;
}
div#cgit .markdown-body h1,
div#cgit .markdown-body h2,
div#cgit .markdown-body h3,
div#cgit .markdown-body h4,
div#cgit .markdown-body h5,
div#cgit .markdown-body h6 { color: var(--yellow) !important; background: transparent !important; }
div#cgit .markdown-body h1 a, div#cgit .markdown-body h2 a, div#cgit .markdown-body h3 a,
div#cgit .markdown-body h4 a, div#cgit .markdown-body h5 a, div#cgit .markdown-body h6 a { color: inherit !important; }
div#cgit .markdown-body p, div#cgit .markdown-body li, div#cgit .markdown-body ul,
div#cgit .markdown-body ol, div#cgit .markdown-body dl, div#cgit .markdown-body dd,
div#cgit .markdown-body dt, div#cgit .markdown-body td, div#cgit .markdown-body th { color: var(--fg) !important; }
div#cgit .markdown-body a { color: var(--blue) !important; }
div#cgit .markdown-body a:hover { color: var(--aqua) !important; }
div#cgit .markdown-body strong, div#cgit .markdown-body b { color: var(--fg2) !important; }
div#cgit .markdown-body em, div#cgit .markdown-body i { color: var(--fg2) !important; }
div#cgit .markdown-body hr { background: var(--bg3) !important; height: 2px; border: 0 !important; }
div#cgit .markdown-body blockquote { color: var(--gray) !important; background: transparent !important; border-left: .25em solid var(--bg3) !important; }
div#cgit .markdown-body blockquote * { color: var(--gray) !important; }
div#cgit .markdown-body table { background: transparent !important; }
div#cgit .markdown-body table th { background: var(--bg1) !important; color: var(--yellow) !important; }
div#cgit .markdown-body table td { background: transparent !important; }
div#cgit .markdown-body table tr { background: var(--bg0) !important; }
div#cgit .markdown-body table tr:nth-child(2n) { background: var(--bg0h) !important; }
div#cgit .markdown-body code,
div#cgit .markdown-body tt { background: var(--bg1) !important; color: var(--orange) !important; border: 1px solid var(--bg2) !important; }
div#cgit .markdown-body pre,
div#cgit .markdown-body .highlight,
div#cgit .markdown-body .highlight pre { background: var(--bg0h) !important; color: var(--fg) !important; border: 1px solid var(--bg2) !important; }
div#cgit .markdown-body pre code,
div#cgit .markdown-body .highlight code { background: transparent !important; border: 0 !important; color: inherit !important; }
div#cgit .markdown-body kbd { background: var(--bg1) !important; color: var(--fg) !important; border: 1px solid var(--bg3) !important; border-bottom-color: var(--bg4) !important; }
div#cgit .markdown-body img { background: transparent !important; }
div#cgit .markdown-body .toc, div#cgit .markdown-body .toctree-wrapper { background: var(--bg1) !important; }

/* ---- Pygments tokens (Gruvbox dark), also used by source-filter ---- */
div#cgit .highlight { background: var(--bg0h) !important; color: var(--fg) !important; }
div#cgit .highlight * { background: transparent; }
div#cgit .highlight .hll { background: var(--bg2) !important; }
div#cgit .highlight .c, div#cgit .highlight .ch, div#cgit .highlight .cm,
div#cgit .highlight .c1, div#cgit .highlight .cs, div#cgit .highlight .cp,
div#cgit .highlight .cpf { color: var(--gray) !important; font-style: italic; }
div#cgit .highlight .err { color: var(--red) !important; border: 0 !important; background: transparent !important; }
div#cgit .highlight .k, div#cgit .highlight .kc, div#cgit .highlight .kd,
div#cgit .highlight .kn, div#cgit .highlight .kp, div#cgit .highlight .kr,
div#cgit .highlight .ow { color: var(--red) !important; font-weight: normal; }
div#cgit .highlight .kt, div#cgit .highlight .nc, div#cgit .highlight .nn { color: var(--yellow) !important; }
div#cgit .highlight .o { color: var(--fg) !important; }
div#cgit .highlight .p, div#cgit .highlight .n, div#cgit .highlight .nx { color: var(--fg) !important; }
div#cgit .highlight .s, div#cgit .highlight .sa, div#cgit .highlight .sb,
div#cgit .highlight .sc, div#cgit .highlight .dl, div#cgit .highlight .sd,
div#cgit .highlight .s2, div#cgit .highlight .sh, div#cgit .highlight .si,
div#cgit .highlight .sx, div#cgit .highlight .sr, div#cgit .highlight .s1,
div#cgit .highlight .ss { color: var(--green) !important; }
div#cgit .highlight .se { color: var(--orange) !important; }
div#cgit .highlight .m, div#cgit .highlight .mb, div#cgit .highlight .mf,
div#cgit .highlight .mh, div#cgit .highlight .mi, div#cgit .highlight .mo,
div#cgit .highlight .il { color: var(--purple) !important; }
div#cgit .highlight .nf, div#cgit .highlight .fm { color: var(--aqua) !important; }
div#cgit .highlight .nb, div#cgit .highlight .bp { color: var(--orange) !important; }
div#cgit .highlight .no, div#cgit .highlight .nv, div#cgit .highlight .vc,
div#cgit .highlight .vg, div#cgit .highlight .vi { color: var(--blue) !important; }
div#cgit .highlight .nd { color: var(--aqua) !important; }
div#cgit .highlight .nt { color: var(--green) !important; }
div#cgit .highlight .na { color: var(--yellow) !important; }
div#cgit .highlight .ne { color: var(--red) !important; font-weight: bold; }
div#cgit .highlight .nl, div#cgit .highlight .ni { color: var(--orange) !important; }
div#cgit .highlight .w { color: var(--fg) !important; }
div#cgit .highlight .gd { color: var(--red) !important; }
div#cgit .highlight .gi { color: var(--green) !important; }
div#cgit .highlight .gh, div#cgit .highlight .gu { color: var(--yellow) !important; font-weight: bold; }
div#cgit .highlight .gp, div#cgit .highlight .go { color: var(--gray) !important; }
div#cgit .highlight .gr, div#cgit .highlight .gt { color: var(--red) !important; }
div#cgit .highlight .ge { font-style: italic; }
div#cgit .highlight .gs { font-weight: bold; }

/* ---- remaining md2html rules + inherit safety net (append to gruvbox.css) ---- */
div#cgit .markdown-body * { color: inherit !important; }

div#cgit .markdown-body h1 .mini-icon-link, div#cgit .markdown-body h2 .mini-icon-link,
div#cgit .markdown-body h3 .mini-icon-link, div#cgit .markdown-body h4 .mini-icon-link,
div#cgit .markdown-body h5 .mini-icon-link, div#cgit .markdown-body h6 .mini-icon-link { color: var(--yellow) !important; }
div#cgit .markdown-body h1 a.toclink, div#cgit .markdown-body h2 a.toclink,
div#cgit .markdown-body h3 a.toclink, div#cgit .markdown-body h4 a.toclink,
div#cgit .markdown-body h5 a.toclink, div#cgit .markdown-body h6 a.toclink { color: inherit !important; }
div#cgit .markdown-body h6 { color: var(--gray) !important; }
div#cgit .markdown-body h2 { border-bottom: 1px solid var(--bg3) !important; }
div#cgit .markdown-body a.absent { color: var(--red) !important; }
div#cgit .markdown-body a:visited { color: var(--purple) !important; }
div#cgit .markdown-body hr { border: 2px solid var(--bg3) !important; background: var(--bg3) !important; }
div#cgit .markdown-body table tr { border-top: 1px solid var(--bg3) !important; }
div#cgit .markdown-body span.frame > span { border: 1px solid var(--bg3) !important; }
div#cgit .markdown-body span.frame span span { color: var(--fg2) !important; }
div#cgit .markdown-body li::marker { color: var(--orange); }
div#cgit .markdown-body mark { background: var(--yellow) !important; color: var(--bg0) !important; }
div#cgit .markdown-body del { color: var(--gray) !important; }
div#cgit .markdown-body details, div#cgit .markdown-body summary { color: var(--fg) !important; }
div#cgit .markdown-body input[type=checkbox] { accent-color: var(--yellow); }

