/*
 * cgit.css — DaisyUI-themed stylesheet for cgit
 *
 * Uses DaisyUI's CSS custom property naming convention so you can swap themes
 * by replacing the :root block below. Every color in the file references a
 * variable; nothing is hardcoded.
 *
 * Variable reference (from DaisyUI):
 *   --color-base-100       Page background
 *   --color-base-200       Subtle surface (table stripes, sidebar)
 *   --color-base-300       Borders, dividers
 *   --color-base-content   Default text
 *   --color-primary        Links, active tabs, interactive elements
 *   --color-primary-content Text on primary backgrounds
 *   --color-secondary      Secondary accent (branch/tag labels)
 *   --color-secondary-content Text on secondary backgrounds
 *   --color-accent         Tertiary accent (add-side diffs)
 *   --color-accent-content Text on accent backgrounds
 *   --color-neutral        Header/footer backgrounds
 *   --color-neutral-content Text on neutral backgrounds
 *   --color-info           Informational highlights
 *   --color-info-content   Text on info backgrounds
 *   --color-success        Diff additions
 *   --color-success-content Text on success backgrounds
 *   --color-warning        Warnings, age indicators
 *   --color-warning-content Text on warning backgrounds
 *   --color-error          Diff deletions, errors
 *   --color-error-content  Text on error backgrounds
 *   --radius-field         Border radius for inputs and small elements
 *   --radius-box           Border radius for cards and containers
 *   --border               Default border width
 *
 * To switch themes: replace the contents of the :root block with any DaisyUI
 * theme file (e.g. dark.css, dracula.css, nord.css, etc.)
 */

/* ==========================================================================
   THEME — DaisyUI "cmyk" (default)
   Replace this block to change the theme.
   ========================================================================== */

:root {
  color-scheme: light;
  --color-base-100: oklch(100% 0 0);
  --color-base-200: oklch(92% 0 0);
  --color-base-300: oklch(84% 0 0);
  --color-base-content: oklch(15% 0 0);
  --color-primary: oklch(58% 0.133 239.443);
  --color-primary-content: oklch(100% 0 0);
  --color-secondary: oklch(52% 0.202 359.339);
  --color-secondary-content: oklch(100% 0 0);
  --color-accent: oklch(82% 0.189 105.306);
  --color-accent-content: oklch(15% 0.037 105.306);
  --color-neutral: oklch(18% 0 0);
  --color-neutral-content: oklch(84.355% 0 0);
  --color-info: oklch(55% 0.094 217.284);
  --color-info-content: oklch(100% 0 0);
  --color-success: oklch(40% 0.162 321.406);
  --color-success-content: oklch(89.389% 0.032 321.406);
  --color-warning: oklch(72% 0.199 91.936);
  --color-warning-content: oklch(0% 0 0);
  --color-error: oklch(55% 0.208 28.717);
  --color-error-content: oklch(100% 0 0);
  --radius-selector: 1rem;
  --radius-field: 0.5rem;
  --radius-box: 1rem;
  --size-selector: 0.25rem;
  --size-field: 0.25rem;
  --border: 1px;
  --depth: 0;
  --noise: 0;
}

/* ==========================================================================
   RESET & BASE
   ========================================================================== */

*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  line-height: 1.5;
  font-family: ui-sans-serif, system-ui, sans-serif,
    "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
  scrollbar-color: color-mix(in oklch, currentColor 35%, transparent) transparent;
}

body {
  background-color: var(--color-base-100);
  color: var(--color-base-content);
  line-height: inherit;
}

/* ==========================================================================
   LAYOUT
   ========================================================================== */

div#cgit {
  max-width: 1200px;
  margin: 0 auto;
  padding: 1rem 1.5rem;
}

/* ==========================================================================
   HEADER
   ========================================================================== */

table#header {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 0;
}

table#header td.logo {
  width: 96px;
  vertical-align: middle;
  padding-right: 1rem;
}

table#header td.logo a img {
  max-height: 48px;
  border-radius: var(--radius-field);
}

table#header td.main {
  vertical-align: middle;
  font-size: 2rem;
  font-weight: 700;
}

table#header td.main a {
  font-size: 2rem;
  font-weight: 700;
  color: var(--color-base-content);
  text-decoration: none;
}

table#header td.main a:hover {
  color: var(--color-primary);
}

table#header td.form {
  vertical-align: middle;
  text-align: right;
}

table#header td.form form {
  display: inline-flex;
  align-items: stretch;
  gap: 0.5rem;
}

table#header td.sub {
  color: color-mix(in oklch, var(--color-base-content) 65%, transparent);
  font-size: 0.875rem;
  padding-top: 0.25rem;
}

/* ==========================================================================
   NAVIGATION TABS
   ========================================================================== */

table.tabs {
  width: 100%;
  border-collapse: collapse;
  margin-top: 0.75rem;
  margin-bottom: 0;
  border-bottom: var(--border) solid var(--color-base-300);
}

table.tabs td {
  padding: 0;
  vertical-align: bottom;
}

table.tabs td a {
  display: inline-block;
  padding: 0.5rem 1rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: color-mix(in oklch, var(--color-base-content) 70%, transparent);
  text-decoration: none;
  border-bottom: 2px solid transparent;
  transition: color 0.15s, border-color 0.15s;
}

table.tabs td a:hover {
  color: var(--color-base-content);
  border-bottom-color: var(--color-base-300);
}

table.tabs td a.active {
  color: var(--color-primary);
  border-bottom-color: var(--color-primary);
}

table.tabs td.form {
  text-align: right;
  vertical-align: middle;
}

table.tabs td.form form {
  display: inline-flex;
  align-items: stretch;
  gap: 0.5rem;
  padding: 0.25rem 0;
}

/* ==========================================================================
   FORM ELEMENTS
   ========================================================================== */

input[type="text"],
input[type="search"],
input[type="password"],
select {
  background-color: var(--color-base-200);
  color: var(--color-base-content);
  border: var(--border) solid var(--color-base-300);
  border-radius: var(--radius-field);
  padding: 0.375rem 0.625rem;
  font-size: 0.875rem;
  line-height: 1.5;
  outline: none;
  transition: border-color 0.15s;
}

input[type="text"]:focus,
input[type="search"]:focus,
input[type="password"]:focus,
select:focus {
  border-color: var(--color-primary);
}

input[type="submit"],
input[type="button"],
button {
  background-color: var(--color-primary);
  color: var(--color-primary-content);
  border: var(--border) solid var(--color-primary);
  border-radius: var(--radius-field);
  padding: 0.375rem 0.875rem;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  transition: opacity 0.15s;
}

input[type="submit"]:hover,
input[type="button"]:hover,
button:hover {
  opacity: 0.85;
}

/* ==========================================================================
   LINKS
   ========================================================================== */

a {
  color: var(--color-base-content);
  text-decoration: none;
  transition: color 0.15s;
}

a:hover {
  color: var(--color-primary);
  text-decoration: underline;
}

/* ==========================================================================
   CONTENT AREA
   ========================================================================== */

div.content {
  margin-top: 1rem;
}

/* ==========================================================================
   REPOSITORY INDEX (main listing page)
   ========================================================================== */

table.list {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 0.875rem;
}

table.list th {
  text-align: left;
  padding: 0.625rem 0.75rem;
  font-weight: 600;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: color-mix(in oklch, var(--color-base-content) 60%, transparent);
  border-bottom: var(--border) solid var(--color-base-300);
}

table.list th a {
  color: var(--color-primary);
}

table.list th a:hover {
  color: var(--color-primary);
  text-decoration: underline;
}

table.list td {
  padding: 0.5rem 0.75rem;
  vertical-align: middle;
  border-bottom: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, transparent);
}

table.list tr:hover td {
  background-color: color-mix(in oklch, var(--color-base-200) 60%, var(--color-base-100));
}

table.list td a {
  color: var(--color-base-content);
}

table.list td a:hover {
  color: var(--color-primary);
  text-decoration: underline;
}

table.list td a.repolink {
  font-weight: 600;
  color: var(--color-primary);
}

table.list td.reposection {
  font-weight: 700;
  font-size: 0.8125rem;
  color: color-mix(in oklch, var(--color-base-content) 70%, transparent);
  padding-top: 1.25rem;
  padding-bottom: 0.375rem;
  border-bottom: var(--border) solid var(--color-base-300);
}

table.list td.sublevel-repo {
  padding-left: 1.5rem;
}

/* ==========================================================================
   AGE INDICATORS
   ========================================================================== */

span.age-mins,
span.age-hours {
  color: var(--color-success);
  font-weight: 600;
}

span.age-days {
  color: var(--color-info);
}

span.age-weeks {
  color: color-mix(in oklch, var(--color-base-content) 70%, transparent);
}

span.age-months {
  color: color-mix(in oklch, var(--color-base-content) 50%, transparent);
}

span.age-years {
  color: color-mix(in oklch, var(--color-base-content) 40%, transparent);
}

/* ==========================================================================
   COMMIT / LOG VIEW
   ========================================================================== */

div.commit-subject {
  font-size: 1.125rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
}

div.commit-msg {
  font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas,
    "Liberation Mono", monospace;
  font-size: 0.8125rem;
  line-height: 1.6;
  white-space: pre-wrap;
  background-color: var(--color-base-200);
  border: var(--border) solid var(--color-base-300);
  border-radius: var(--radius-box);
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  overflow-x: auto;
}

div.commit-info {
  font-size: 0.875rem;
  margin-bottom: 1rem;
}

table.commit-info {
  font-size: 0.875rem;
  border-collapse: collapse;
  margin-bottom: 1rem;
}

table.commit-info th {
  text-align: left;
  padding: 0.25rem 0.75rem 0.25rem 0;
  font-weight: 600;
  color: color-mix(in oklch, var(--color-base-content) 65%, transparent);
  white-space: nowrap;
}

table.commit-info td {
  padding: 0.25rem 0;
}

div.cgit-panel {
  margin-bottom: 1rem;
}

div.cgit-panel table {
  font-size: 0.875rem;
}

div.cgit-panel td {
  padding: 0.25rem 0.5rem 0.25rem 0;
}

/* Log table */
table.list td.logsubject {
  font-weight: 500;
}

table.list td.logmsg {
  color: color-mix(in oklch, var(--color-base-content) 60%, transparent);
  font-size: 0.8125rem;
  padding-top: 0.125rem;
}

/* ==========================================================================
   TREE (file listing) VIEW
   ========================================================================== */

table.list td.ls-mode {
  font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas,
    "Liberation Mono", monospace;
  font-size: 0.75rem;
  color: color-mix(in oklch, var(--color-base-content) 50%, transparent);
  white-space: nowrap;
}

table.list td.ls-size {
  text-align: right;
  font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas,
    "Liberation Mono", monospace;
  font-size: 0.75rem;
  white-space: nowrap;
}

/* ==========================================================================
   BLOB (file content) VIEW
   ========================================================================== */

table.blob {
  width: 100%;
  border-collapse: collapse;
  font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas,
    "Liberation Mono", monospace;
  font-size: 0.8125rem;
  line-height: 1.5;
}

table.blob td {
  padding: 0;
  vertical-align: top;
}

table.blob td.linenumbers {
  width: 1%;
  white-space: nowrap;
  text-align: right;
  padding: 0.25rem 0.75rem 0.25rem 0.5rem;
  user-select: none;
  -webkit-user-select: none;
  border-right: var(--border) solid var(--color-base-300);
}

table.blob td.linenumbers a {
  color: color-mix(in oklch, var(--color-base-content) 35%, transparent);
  text-decoration: none;
}

table.blob td.linenumbers a:hover {
  color: var(--color-primary);
}

table.blob td.lines {
  padding: 0.25rem 0 0.25rem 0.75rem;
}

table.blob pre {
  margin: 0;
  white-space: pre;
  overflow-x: auto;
}

/* ==========================================================================
   DIFF VIEW
   ========================================================================== */

div.diffstat-header {
  font-weight: 600;
  font-size: 0.875rem;
  margin: 1rem 0 0.5rem;
}

table.diffstat {
  border-collapse: collapse;
  font-size: 0.8125rem;
  margin-bottom: 1rem;
}

table.diffstat th {
  text-align: left;
  padding: 0.25rem 0.75rem 0.25rem 0;
  font-weight: 600;
}

table.diffstat td {
  padding: 0.25rem 0.5rem;
}

table.diffstat td span.add {
  color: var(--color-success);
}

table.diffstat td span.del {
  color: var(--color-error);
}

table.diffstat td.graph td {
  padding: 0;
}

table.diffstat td.graph td.add {
  background-color: var(--color-success);
}

table.diffstat td.graph td.rem {
  background-color: var(--color-error);
}

div.diff {
  margin-bottom: 1.5rem;
}

div.diff div.head {
  font-weight: 600;
  font-size: 0.875rem;
  padding: 0.5rem 0.75rem;
  background-color: var(--color-base-200);
  border: var(--border) solid var(--color-base-300);
  border-bottom: none;
  border-radius: var(--radius-box) var(--radius-box) 0 0;
}

div.diff div.head a {
  color: var(--color-base-content);
}

div.diff div.head a:hover {
  color: var(--color-primary);
}

div.diff table {
  width: 100%;
  border-collapse: collapse;
  font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas,
    "Liberation Mono", monospace;
  font-size: 0.8125rem;
  line-height: 1.5;
  border: var(--border) solid var(--color-base-300);
  border-radius: 0 0 var(--radius-box) var(--radius-box);
  overflow: hidden;
}

div.diff table td {
  padding: 0 0.5rem;
  vertical-align: top;
  white-space: pre-wrap;
  word-wrap: break-word;
}

div.diff table .hunk {
  color: var(--color-info);
  background-color: color-mix(in oklch, var(--color-info) 8%, var(--color-base-100));
}

div.diff table .add {
  color: var(--color-base-content);
  background-color: color-mix(in oklch, var(--color-success) 12%, var(--color-base-100));
}

div.diff table .del {
  color: var(--color-base-content);
  background-color: color-mix(in oklch, var(--color-error) 12%, var(--color-base-100));
}

/* Diff line numbers */
div.diff table td.lineno {
  width: 1%;
  white-space: nowrap;
  text-align: right;
  user-select: none;
  -webkit-user-select: none;
  color: color-mix(in oklch, var(--color-base-content) 35%, transparent);
  border-right: var(--border) solid var(--color-base-300);
  padding: 0 0.5rem;
}

div.diff table td.lineno a {
  color: inherit;
  text-decoration: none;
}

/* ==========================================================================
   BRANCH / TAG / REF DECORATIONS
   ========================================================================== */

a.branch-deco,
a.tag-deco,
a.remote-deco,
a.deco {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 600;
  padding: 0.125rem 0.5rem;
  border-radius: var(--radius-selector);
  text-decoration: none;
  margin-right: 0.25rem;
  vertical-align: middle;
}

a.branch-deco {
  background-color: color-mix(in oklch, var(--color-primary) 15%, var(--color-base-100));
  color: var(--color-primary);
  border: var(--border) solid color-mix(in oklch, var(--color-primary) 30%, transparent);
}

a.branch-deco:hover {
  background-color: color-mix(in oklch, var(--color-primary) 25%, var(--color-base-100));
  text-decoration: none;
}

a.tag-deco {
  background-color: color-mix(in oklch, var(--color-secondary) 15%, var(--color-base-100));
  color: var(--color-secondary);
  border: var(--border) solid color-mix(in oklch, var(--color-secondary) 30%, transparent);
}

a.tag-deco:hover {
  background-color: color-mix(in oklch, var(--color-secondary) 25%, var(--color-base-100));
  text-decoration: none;
}

a.remote-deco {
  background-color: color-mix(in oklch, var(--color-accent) 15%, var(--color-base-100));
  color: var(--color-accent);
  border: var(--border) solid color-mix(in oklch, var(--color-accent) 30%, transparent);
}

a.remote-deco:hover {
  background-color: color-mix(in oklch, var(--color-accent) 25%, var(--color-base-100));
  text-decoration: none;
}

a.deco {
  background-color: color-mix(in oklch, var(--color-info) 15%, var(--color-base-100));
  color: var(--color-info);
  border: var(--border) solid color-mix(in oklch, var(--color-info) 30%, transparent);
}

/* ==========================================================================
   SECTION HEADERS (repo detail pages)
   ========================================================================== */

div.header {
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 0.75rem;
}

div.header a {
  color: var(--color-primary);
}

/* ==========================================================================
   FOOTER
   ========================================================================== */

div.footer {
  margin-top: 2rem;
  padding-top: 0.75rem;
  border-top: var(--border) solid var(--color-base-300);
  text-align: center;
  font-size: 0.75rem;
  color: color-mix(in oklch, var(--color-base-content) 40%, transparent);
}

div.footer a {
  color: color-mix(in oklch, var(--color-base-content) 50%, transparent);
}

div.footer a:hover {
  color: var(--color-primary);
}

/* ==========================================================================
   PAGER
   ========================================================================== */

div.pager {
  text-align: center;
  margin: 1.5rem 0;
}

div.pager a {
  display: inline-block;
  padding: 0.375rem 0.75rem;
  margin: 0 0.125rem;
  font-size: 0.875rem;
  color: var(--color-base-content);
  text-decoration: none;
  border: var(--border) solid var(--color-base-300);
  border-radius: var(--radius-field);
  transition: background-color 0.15s, border-color 0.15s;
}

div.pager a:hover {
  background-color: var(--color-base-200);
  border-color: var(--color-primary);
  text-decoration: none;
}

div.pager a.current {
  background-color: var(--color-primary);
  color: var(--color-primary-content);
  border-color: var(--color-primary);
  font-weight: 600;
}

/* ==========================================================================
   SYNTAX HIGHLIGHTING (cgit uses a highlight filter)
   ========================================================================== */

pre .kw  { color: var(--color-secondary); font-weight: 600; }  /* keywords */
pre .str { color: var(--color-success); }                       /* strings */
pre .num { color: var(--color-warning); }                       /* numbers */
pre .com { color: color-mix(in oklch, var(--color-base-content) 45%, transparent); font-style: italic; } /* comments */
pre .typ { color: var(--color-accent); }                        /* types */
pre .ppc { color: var(--color-info); }                          /* preprocessor */
pre .opt { color: var(--color-base-content); }                  /* operators */
pre .slc { color: color-mix(in oklch, var(--color-base-content) 45%, transparent); font-style: italic; } /* single-line comments */

/* ==========================================================================
   ABOUT TAB (rendered README / markdown)
   ========================================================================== */

div.content div.markdown {
  line-height: 1.7;
}

div.content div.markdown h1,
div.content div.markdown h2,
div.content div.markdown h3,
div.content div.markdown h4,
div.content div.markdown h5,
div.content div.markdown h6 {
  font-weight: 700;
  margin-top: 1.5rem;
  margin-bottom: 0.5rem;
}

div.content div.markdown h1 { font-size: 1.5rem; }
div.content div.markdown h2 { font-size: 1.25rem; }
div.content div.markdown h3 { font-size: 1.125rem; }

div.content div.markdown p {
  margin-bottom: 0.75rem;
}

div.content div.markdown pre {
  background-color: var(--color-base-200);
  border: var(--border) solid var(--color-base-300);
  border-radius: var(--radius-box);
  padding: 0.75rem 1rem;
  overflow-x: auto;
  font-size: 0.8125rem;
  margin-bottom: 0.75rem;
}

div.content div.markdown code {
  font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas,
    "Liberation Mono", monospace;
  font-size: 0.875em;
  background-color: var(--color-base-200);
  padding: 0.125rem 0.375rem;
  border-radius: var(--radius-field);
}

div.content div.markdown pre code {
  background: none;
  padding: 0;
  border-radius: 0;
}

div.content div.markdown ul,
div.content div.markdown ol {
  padding-left: 1.5rem;
  margin-bottom: 0.75rem;
}

div.content div.markdown ul {
  list-style: disc;
}

div.content div.markdown ol {
  list-style: decimal;
}

div.content div.markdown li {
  margin-bottom: 0.25rem;
}

div.content div.markdown blockquote {
  border-left: 3px solid var(--color-base-300);
  padding-left: 1rem;
  color: color-mix(in oklch, var(--color-base-content) 70%, transparent);
  margin-bottom: 0.75rem;
}

div.content div.markdown table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 0.75rem;
}

div.content div.markdown th,
div.content div.markdown td {
  padding: 0.375rem 0.75rem;
  border: var(--border) solid var(--color-base-300);
  text-align: left;
}

div.content div.markdown th {
  font-weight: 600;
  background-color: var(--color-base-200);
}

div.content div.markdown hr {
  border: none;
  border-top: var(--border) solid var(--color-base-300);
  margin: 1.5rem 0;
}

div.content div.markdown img {
  max-width: 100%;
  height: auto;
  border-radius: var(--radius-box);
}

/* ==========================================================================
   CLONE URL BOX
   ========================================================================== */

a.clone-url {
  display: block;
  font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas,
    "Liberation Mono", monospace;
  font-size: 0.8125rem;
  background-color: var(--color-base-200);
  border: var(--border) solid var(--color-base-300);
  border-radius: var(--radius-field);
  padding: 0.375rem 0.625rem;
  margin-bottom: 0.25rem;
  color: var(--color-base-content);
  text-decoration: none;
  word-break: break-all;
}

a.clone-url:hover {
  border-color: var(--color-primary);
  text-decoration: none;
}

/* ==========================================================================
   STATS (author activity)
   ========================================================================== */

table.stats {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.875rem;
}

table.stats th {
  text-align: left;
  padding: 0.5rem 0.75rem;
  font-weight: 600;
  border-bottom: var(--border) solid var(--color-base-300);
  color: color-mix(in oklch, var(--color-base-content) 60%, transparent);
}

table.stats td {
  padding: 0.375rem 0.75rem;
  border-bottom: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, transparent);
}

div.graphlist {
  margin: 1rem 0;
}

/* ==========================================================================
   ERROR / NOTIFICATION MESSAGES
   ========================================================================== */

div.error {
  background-color: color-mix(in oklch, var(--color-error) 12%, var(--color-base-100));
  border: var(--border) solid color-mix(in oklch, var(--color-error) 30%, transparent);
  color: var(--color-error);
  border-radius: var(--radius-box);
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  font-size: 0.875rem;
}

/* ==========================================================================
   MISCELLANEOUS
   ========================================================================== */

/* Horizontal rules used as separators */
hr {
  border: none;
  border-top: var(--border) solid var(--color-base-300);
  margin: 1rem 0;
}

/* Generic monospace blocks */
pre,
code,
samp {
  font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas,
    "Liberation Mono", monospace;
}

/* Images in the content area should not overflow */
div.content img {
  max-width: 100%;
  height: auto;
}

/* SHA links */
a.sha1,
a.oid {
  font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas,
    "Liberation Mono", monospace;
  font-size: 0.8125rem;
}

/* Path breadcrumbs */
div.content .crumb {
  font-size: 0.875rem;
}

div.content .crumb a {
  color: var(--color-base-content);
}

div.content .crumb a:hover {
  color: var(--color-primary);
}

/* Snapshot links in tag/ref lists */
table.list td.downloads a {
  display: inline-block;
  font-size: 0.75rem;
  padding: 0.125rem 0.5rem;
  background-color: var(--color-base-200);
  border: var(--border) solid var(--color-base-300);
  border-radius: var(--radius-field);
  color: var(--color-base-content);
  text-decoration: none;
  margin-right: 0.25rem;
}

table.list td.downloads a:hover {
  border-color: var(--color-primary);
  color: var(--color-primary);
  text-decoration: none;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media (max-width: 768px) {
  div#cgit {
    padding: 0.5rem 0.75rem;
  }

  table#header td.logo {
    display: none;
  }

  table.list td,
  table.list th {
    padding: 0.375rem 0.5rem;
  }

  div.diff table td {
    font-size: 0.75rem;
  }
}
