.gitea-theme-meta-info {
  --theme-display-name: "Voidsmiths Auto";
}

/* Light mode by default */
:root {
  --is-dark-theme: false;
  color-scheme: light;
  accent-color: var(--color-accent);

  --color-primary: #8a2be2;
  --color-primary-contrast: #ffffff;
  --color-primary-dark-1: #7b22d4;
  --color-primary-dark-2: #6a1ab8;
  --color-primary-dark-3: #5c14a0;
  --color-primary-dark-4: #4e0e88;
  --color-primary-dark-5: #400a70;
  --color-primary-dark-6: #320758;
  --color-primary-dark-7: #240440;
  --color-primary-light-1: #9b3eee;
  --color-primary-light-2: #ac55f4;
  --color-primary-light-3: #bd6cf6;
  --color-primary-light-4: #cc83f8;
  --color-primary-light-5: #d899f9;
  --color-primary-light-6: #e4b0fb;
  --color-primary-light-7: #f0c7fd;
  --color-primary-alpha-10: #8a2be21a;
  --color-primary-alpha-20: #8a2be233;
  --color-primary-alpha-30: #8a2be24d;
  --color-primary-alpha-40: #8a2be266;
  --color-primary-alpha-50: #8a2be280;
  --color-primary-alpha-60: #8a2be299;
  --color-primary-alpha-70: #8a2be2b3;
  --color-primary-alpha-80: #8a2be2cc;
  --color-primary-alpha-90: #8a2be2e6;
  --color-primary-hover: #7b22d4;
  --color-primary-active: #6a1ab8;

  --color-secondary: #f0e8ff;
  --color-secondary-dark-1: #e4d8ff;
  --color-secondary-dark-2: #d4c4f0;
  --color-secondary-dark-3: #c4b0e0;
  --color-secondary-dark-4: #b49cd0;
  --color-secondary-dark-5: #a488c0;
  --color-secondary-dark-6: #9474b0;
  --color-secondary-dark-7: #8460a0;
  --color-secondary-dark-8: #744c90;
  --color-secondary-dark-9: #643880;
  --color-secondary-dark-10: #542470;
  --color-secondary-dark-11: #441060;
  --color-secondary-dark-12: #340050;
  --color-secondary-dark-13: #240040;
  --color-secondary-light-1: #f5f0ff;
  --color-secondary-light-2: #f8f5ff;
  --color-secondary-light-3: #faf8ff;
  --color-secondary-light-4: #fdfcff;
  --color-secondary-alpha-10: rgba(240, 232, 255, 0.1);
  --color-secondary-alpha-20: rgba(240, 232, 255, 0.2);
  --color-secondary-alpha-30: rgba(240, 232, 255, 0.3);
  --color-secondary-alpha-40: rgba(240, 232, 255, 0.4);
  --color-secondary-alpha-50: rgba(240, 232, 255, 0.5);
  --color-secondary-alpha-60: rgba(240, 232, 255, 0.6);
  --color-secondary-alpha-70: rgba(240, 232, 255, 0.7);
  --color-secondary-alpha-80: rgba(240, 232, 255, 0.8);
  --color-secondary-alpha-90: rgba(240, 232, 255, 0.9);
  --color-secondary-hover: #e4d8ff;
  --color-secondary-active: #d4c4f0;

  --color-red: #dc2626;
  --color-orange: #ea580c;
  --color-yellow: #ca8a04;
  --color-olive: #65a30d;
  --color-green: #16a34a;
  --color-teal: #0d9488;
  --color-blue: #2563eb;
  --color-violet: #7c3aed;
  --color-purple: #9333ea;
  --color-pink: #db2777;
  --color-brown: #92400e;
  --color-grey: #c9b8e8;
  --color-red-light: #fca5a5;
  --color-orange-light: #fdba74;
  --color-yellow-light: #fde047;
  --color-olive-light: #a3e635;
  --color-green-light: #4ade80;
  --color-teal-light: #5eead4;
  --color-blue-light: #93c5fd;
  --color-violet-light: #a78bfa;
  --color-purple-light: #c084fc;
  --color-pink-light: #f9a8d4;
  --color-brown-light: #fbbf24;
  --color-grey-light: #e8deff;
  --color-black: #0a0a0c;
  --color-white: #ffffff;
  --color-gold: #b45309;

  --color-diff-removed-word-bg: #fdb8c0;
  --color-diff-added-word-bg: #acf2bd;
  --color-diff-removed-row-bg: #fff0f2;
  --color-diff-moved-row-bg: #eff6ff;
  --color-diff-added-row-bg: #eeffed;
  --color-diff-removed-row-border: #fdaeb7;
  --color-diff-moved-row-border: #bfdbfe;
  --color-diff-added-row-border: #cdffd8;
  --color-diff-inactive: #f8f5ff;

  --color-error-border: #fca5a5;
  --color-error-bg: #fee2e2;
  --color-error-text: #dc2626;
  --color-success-border: #86efac;
  --color-success-bg: #f0fdf4;
  --color-success-text: #16a34a;
  --color-warning-border: #fdba74;
  --color-warning-bg: #fff7ed;
  --color-warning-text: #ff6b00;
  --color-info-border: #93c5fd;
  --color-info-bg: #eff6ff;
  --color-info-text: #2563eb;

  --color-body: #ffffff;
  --color-box-header: #f3eeff;
  --color-box-body: #ffffff;
  --color-box-body-highlight: #f8f5ff;
  --color-text-dark: #0a0a0c;
  --color-text: #1a0a2e;
  --color-text-hover: #0a0a0c;
  --color-text-light: #5a4a7a;
  --color-text-light-1: #7a6a9a;
  --color-text-light-2: #806e98;
  --color-text-light-3: #9d84c2;
  --color-text-focus: #000000;
  --color-footer: #ffffff;
  --color-timeline: #e8deff;

  --color-input-text: #1a0a2e;
  --color-input-background: #ffffff;
  --color-input-toggle-background: #c9b8e8;
  --color-input-border: #c9b8e8;
  --color-input-border-hover: #a888d0;
  --color-placeholder-text: #9d84c2;

  --color-navbar: #f3eeff;
  --color-navbar-transparent: rgba(243, 238, 255, 0);
  --color-nav-bg: #ffffff;
  --color-nav-hover-bg: #f0e8ff;
  --color-header-bar: #f3eeff;

  --color-border: #c9b8e8;
  --color-border-hover: #a888d0;
  --color-border-active: #8a68b8;
  --color-light: #f8f5ff;
  --color-light-mimic-enabled: #f8f5ff;
  --color-light-border: #ede4ff;
  --color-hover: rgba(201, 184, 232, 0.3);
  --color-active: rgba(201, 184, 232, 0.5);
  --color-menu: #f3eeff;
  --color-card: #ffffff;
  --color-markup-table-row: #f8f5ff;
  --color-markup-code-block: #f8f5ff;
  --color-button: #f0e8ff;
  --color-code-bg: #f8f5ff;
  --color-code-sidebar-bg: #ede4ff;
  --color-shadow: rgba(138, 43, 226, 0.1);
  --color-secondary-bg: #f8f5ff;
  --color-expand-button: #c9b8e8;
  --color-editor-line-highlight: #f3eeff;
  --color-project-board-bg: #f8f5ff;
  --color-project-board-light-label: #ffffff;
  --color-caret: #8a2be2;
  --color-reaction-bg: #8a2be21a;
  --color-reaction-active-bg: #8a2be266;
  --color-label-bg: #e8deff;
  --color-label-text: #6a1ab8;
  --color-label-active-bg: #e4d8ff;
  --color-accent: #8a2be2;
  --color-small-accent: #6a1ab8;
  --color-active-line: #f0e8ff;
  --color-tooltip-bg: #241442;
  --opacity-disabled: 0.5;

  --color-success: #16a34a;
  --color-success-hover: #15803d;
  --color-success-active: #166534;
  --color-error: #dc2626;
  --color-error-hover: #b91c1c;
  --color-error-active: #991b1b;
  --color-warning: #ff6b00;
  --color-warning-hover: #e55d00;
  --color-warning-active: #cc5200;
  --color-info: #2563eb;
  --color-info-hover: #1d4ed8;
  --color-info-active: #1e40af;
}

/* Switches to dark when OS prefers it */
@media (prefers-color-scheme: dark) {
  :root {
    --is-dark-theme: true;
    color-scheme: dark;
    accent-color: var(--color-accent);

    --color-primary: #b87eff;
    --color-primary-contrast: #ffffff;
    --color-primary-dark-1: #a56fe6;
    --color-primary-dark-2: #9260cc;
    --color-primary-dark-3: #7f51b3;
    --color-primary-dark-4: #6c4299;
    --color-primary-dark-5: #593380;
    --color-primary-dark-6: #462466;
    --color-primary-dark-7: #33154d;
    --color-primary-light-1: #c08dff;
    --color-primary-light-2: #c89cff;
    --color-primary-light-3: #d0abff;
    --color-primary-light-4: #d8baff;
    --color-primary-light-5: #e0c9ff;
    --color-primary-light-6: #e8d8ff;
    --color-primary-light-7: #f0e7ff;
    --color-primary-alpha-10: #b87eff1a;
    --color-primary-alpha-20: #b87eff33;
    --color-primary-alpha-30: #b87eff4d;
    --color-primary-alpha-40: #b87eff66;
    --color-primary-alpha-50: #b87eff80;
    --color-primary-alpha-60: #b87eff99;
    --color-primary-alpha-70: #b87effb3;
    --color-primary-alpha-80: #b87effcc;
    --color-primary-alpha-90: #b87effe6;
    --color-primary-hover: #c99aff;
    --color-primary-active: #a350e0;

    --color-secondary: #1a0d35;
    /* Lightens with N (unlike the light-mode block above), since Gitea
       reads e.g. --color-secondary-dark-5 for .help text color on a dark bg */
    --color-secondary-dark-1: #3b2f55;
    --color-secondary-dark-2: #51456a;
    --color-secondary-dark-3: #63587b;
    --color-secondary-dark-4: #74698c;
    --color-secondary-dark-5: #84799b;
    --color-secondary-dark-6: #9288a9;
    --color-secondary-dark-7: #a197b6;
    --color-secondary-dark-8: #aea5c3;
    --color-secondary-dark-9: #bbb2d0;
    --color-secondary-dark-10: #c8bfdc;
    --color-secondary-dark-11: #d4cce8;
    --color-secondary-dark-12: #e0d8f4;
    --color-secondary-dark-13: #ece4ff;
    --color-secondary-light-1: #241442;
    --color-secondary-light-2: #2e1955;
    --color-secondary-light-3: #3d2060;
    --color-secondary-light-4: #4a2870;
    --color-secondary-alpha-10: rgba(26, 13, 53, 0.1);
    --color-secondary-alpha-20: rgba(26, 13, 53, 0.2);
    --color-secondary-alpha-30: rgba(26, 13, 53, 0.3);
    --color-secondary-alpha-40: rgba(26, 13, 53, 0.4);
    --color-secondary-alpha-50: rgba(26, 13, 53, 0.5);
    --color-secondary-alpha-60: rgba(26, 13, 53, 0.6);
    --color-secondary-alpha-70: rgba(26, 13, 53, 0.7);
    --color-secondary-alpha-80: rgba(26, 13, 53, 0.8);
    --color-secondary-alpha-90: rgba(26, 13, 53, 0.9);
    --color-secondary-hover: #241442;
    --color-secondary-active: #2e1955;

    --color-red: #f87171;
    --color-orange: #fb923c;
    --color-yellow: #facc15;
    --color-olive: #84cc16;
    --color-green: #22c55e;
    --color-teal: #2dd4bf;
    --color-blue: #60a5fa;
    --color-violet: #818cf8;
    --color-purple: #c084fc;
    --color-pink: #f472b6;
    --color-brown: #d97706;
    --color-grey: #6b5090;
    --color-red-light: #fca5a5;
    --color-orange-light: #fdba74;
    --color-yellow-light: #fde047;
    --color-olive-light: #a3e635;
    --color-green-light: #4ade80;
    --color-teal-light: #5eead4;
    --color-blue-light: #93c5fd;
    --color-violet-light: #a5b4fc;
    --color-purple-light: #d8b4fe;
    --color-pink-light: #f9a8d4;
    --color-brown-light: #fbbf24;
    --color-grey-light: #9070c0;
    --color-black: #000000;
    --color-white: #ffffff;
    --color-gold: #f59e0b;

    --color-diff-removed-word-bg: #5c1a20;
    --color-diff-added-word-bg: #1a4a2e;
    --color-diff-removed-row-bg: #3a0d12;
    --color-diff-moved-row-bg: #0d1a3a;
    --color-diff-added-row-bg: #0d2a18;
    --color-diff-removed-row-border: #6b2028;
    --color-diff-moved-row-border: #1a3a6a;
    --color-diff-added-row-border: #1b4730;
    --color-diff-inactive: #1a0d35;

    --color-error-border: #f87171;
    --color-error-bg: rgba(248, 113, 113, 0.12);
    --color-error-text: #f87171;
    --color-success-border: #22c55e;
    --color-success-bg: rgba(34, 197, 94, 0.12);
    --color-success-text: #22c55e;
    --color-warning-border: #ff8533;
    --color-warning-bg: rgba(255, 107, 0, 0.12);
    --color-warning-text: #ff8533;
    --color-info-border: #60a5fa;
    --color-info-bg: rgba(96, 165, 250, 0.12);
    --color-info-text: #60a5fa;

    --color-body: #0a0a0c;
    --color-box-header: #241442;
    --color-box-body: #130b28;
    --color-box-body-highlight: #200e3e;
    --color-text-dark: #ece4ff;
    --color-text: #d4c4f0;
    --color-text-hover: #ece4ff;
    --color-text-light: #9880c0;
    --color-text-light-1: #b0a0d8;
    --color-text-light-2: #8772ac;
    --color-text-light-3: #7451b3;
    --color-text-focus: #ffffff;
    --color-footer: #0a0a0c;
    --color-timeline: #241442;

    --color-input-text: #d4c4f0;
    --color-input-background: #130b28;
    --color-input-toggle-background: #3d2060;
    --color-input-border: #3d2060;
    --color-input-border-hover: #5a3080;
    --color-placeholder-text: #7451b3;

    --color-navbar: #0a0a0c;
    --color-navbar-transparent: rgba(10, 10, 12, 0);
    --color-nav-bg: #130b28;
    --color-nav-hover-bg: #241442;
    --color-header-bar: #0a0a0c;

    --color-border: #3d2060;
    --color-border-hover: #5a3080;
    --color-border-active: #7a40a0;
    --color-light: #1a0d35;
    --color-light-mimic-enabled: #130b28;
    --color-light-border: #2e1955;
    --color-hover: rgba(61, 32, 96, 0.5);
    --color-active: rgba(61, 32, 96, 0.7);
    --color-menu: #241442;
    --color-card: #130b28;
    --color-markup-table-row: #1a0d35;
    --color-markup-code-block: #130b28;
    --color-button: #241442;
    --color-code-bg: #130b28;
    --color-code-sidebar-bg: #1a0d35;
    --color-shadow: rgba(0, 0, 0, 0.5);
    --color-secondary-bg: #160a30;
    --color-expand-button: #3d2060;
    --color-editor-line-highlight: #241442;
    --color-project-board-bg: #0a0a0c;
    --color-project-board-light-label: #241442;
    --color-caret: #b87eff;
    --color-reaction-bg: #b87eff1a;
    --color-reaction-active-bg: #b87eff66;
    --color-label-bg: #241442;
    --color-label-text: #c99aff;
    --color-label-active-bg: #3d2060;
    --color-accent: #b87eff;
    --color-small-accent: #9060d0;
    --color-active-line: #241442;
    --color-tooltip-bg: #241442;
    --opacity-disabled: 0.5;

    --color-success: #22c55e;
    --color-success-hover: #16a34a;
    --color-success-active: #15803d;
    --color-error: #f87171;
    --color-error-hover: #ef4444;
    --color-error-active: #dc2626;
    --color-warning: #ff6b00;
    --color-warning-hover: #ff8533;
    --color-warning-active: #e55d00;
    --color-info: #60a5fa;
    --color-info-hover: #3b82f6;
    --color-info-active: #2563eb;
  }
}

/* Tooltips */
.tippy-box {
  background-color: #241442;
  color: #ece4ff;
  border: 1px solid #8A2BE2;
}
.tippy-arrow { color: #241442; }

/* Dropdown menus */
.ui.dropdown .menu {
  background-color: var(--color-box-header) !important;
  border: 1px solid #8A2BE2 !important;
}
.ui.dropdown .menu > .item { color: var(--color-text) !important; }
.ui.dropdown .menu > .item:hover,
.ui.dropdown .menu > .item.selected,
.ui.dropdown .menu > .item.active {
  background-color: var(--color-secondary-hover) !important;
  color: var(--color-text-dark) !important;
}

/* Input fields */
input:not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
select,
textarea {
  border: 1px solid var(--color-border) !important;
}
input:not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):focus,
select:focus,
textarea:focus {
  border-color: #FF6B00 !important;
  outline: none !important;
}

/* Checkboxes */
.ui.checkbox label {
  color: var(--color-text) !important;
}
.ui.checkbox label::before {
  border: 1px solid var(--color-border-active) !important;
  background-color: var(--color-box-body) !important;
}
.ui.checkbox input:checked ~ label::before,
.ui.checkbox input:indeterminate ~ label::before {
  border-color: #8A2BE2 !important;
  background-color: #8A2BE2 !important;
}
.ui.checkbox label::after { color: #ffffff !important; }
/* Radio buttons — dot uses background-color, not color */
.ui.radio.checkbox input:checked ~ label::after {
  background-color: #ffffff !important;
}

/* Dropdown trigger field border */
.ui.selection.dropdown {
  border: 1px solid var(--color-border) !important;
  background-color: var(--color-box-body) !important;
  color: var(--color-text) !important;
}
.ui.selection.dropdown:hover {
  border-color: var(--color-border-hover) !important;
}
.ui.selection.dropdown.active,
.ui.selection.dropdown.visible {
  border-color: #8A2BE2 !important;
}
.ui.selection.dropdown > .text {
  color: var(--color-text) !important;
}

/* Syntax highlighting (Chroma) — light default */
.chroma { background-color: #f8f5ff !important; color: #1a0a2e !important; }
.chroma .hl { background-color: #ede4ff !important; display: block; width: 100%; }
.chroma .ln, .chroma .lnt { color: #806e98 !important; padding-right: 1em; user-select: none; }
.chroma .err { color: #dc2626 !important; }
.chroma .k, .chroma .kc, .chroma .kd, .chroma .kn, .chroma .kp, .chroma .kr { color: #6a1ab8 !important; font-weight: bold; }
.chroma .kt { color: #0069c0 !important; }
.chroma .na { color: #198754 !important; }
.chroma .nb { color: #0069c0 !important; }
.chroma .nc { color: #0069c0 !important; }
.chroma .no { color: #8a2be2 !important; }
.chroma .nd { color: #198754 !important; }
.chroma .ne { color: #dc2626 !important; }
.chroma .nf, .chroma .nx { color: #8a2be2 !important; }
.chroma .nt { color: #6a1ab8 !important; }
.chroma .nv { color: #1a0a2e !important; }
.chroma .s, .chroma .sa, .chroma .sb, .chroma .sc, .chroma .dl,
.chroma .sd, .chroma .s2, .chroma .sh, .chroma .si, .chroma .sx,
.chroma .s1, .chroma .ss { color: #198754 !important; }
.chroma .se { color: #e55d00 !important; }
.chroma .sr { color: #8a2be2 !important; }
.chroma .m, .chroma .mb, .chroma .mf, .chroma .mh, .chroma .mi,
.chroma .il, .chroma .mo { color: #8a2be2 !important; }
.chroma .o, .chroma .ow { color: #6a1ab8 !important; }
.chroma .c, .chroma .c1, .chroma .cm, .chroma .cs { color: #806e98 !important; font-style: italic; }
.chroma .cp, .chroma .cpf { color: #5a4a7a !important; }
.chroma .gd { color: #dc2626 !important; }
.chroma .gi { color: #16a34a !important; }
.chroma .ge { font-style: italic; }
.chroma .gs { font-weight: bold; }
.chroma .gh { color: #6a1ab8 !important; font-weight: bold; }
.chroma .gp { color: #806e98 !important; }
.chroma .go { color: #5a4a7a !important; }
.chroma .gr, .chroma .gt { color: #dc2626 !important; }

/* Syntax highlighting (Chroma) — dark override */
@media (prefers-color-scheme: dark) {
  .chroma { background-color: #130b28 !important; color: #d4c4f0 !important; }
  .chroma .hl { background-color: #241442 !important; }
  .chroma .ln, .chroma .lnt { color: #8772ac !important; }
  .chroma .err { color: #f87171 !important; }
  .chroma .k, .chroma .kc, .chroma .kd, .chroma .kn, .chroma .kp, .chroma .kr { color: #ff79c6 !important; }
  .chroma .kt { color: #8be9fd !important; }
  .chroma .na { color: #50fa7b !important; }
  .chroma .nb { color: #8be9fd !important; }
  .chroma .nc { color: #8be9fd !important; }
  .chroma .no { color: #bd93f9 !important; }
  .chroma .nd { color: #50fa7b !important; }
  .chroma .ne { color: #f87171 !important; }
  .chroma .nf, .chroma .nx { color: #b87eff !important; }
  .chroma .nt { color: #ff79c6 !important; }
  .chroma .nv { color: #d4c4f0 !important; }
  .chroma .s, .chroma .sa, .chroma .sb, .chroma .sc, .chroma .dl,
  .chroma .sd, .chroma .s2, .chroma .sh, .chroma .si, .chroma .sx,
  .chroma .s1, .chroma .ss { color: #f1fa8c !important; }
  .chroma .se { color: #ff79c6 !important; }
  .chroma .sr { color: #b87eff !important; }
  .chroma .m, .chroma .mb, .chroma .mf, .chroma .mh, .chroma .mi,
  .chroma .il, .chroma .mo { color: #bd93f9 !important; }
  .chroma .o, .chroma .ow { color: #ff79c6 !important; }
  .chroma .c, .chroma .c1, .chroma .cm, .chroma .cs { color: #8772ac !important; font-style: italic; }
  .chroma .cp, .chroma .cpf { color: #9880c0 !important; }
  .chroma .gd { color: #f87171 !important; }
  .chroma .gi { color: #50fa7b !important; }
  .chroma .ge { font-style: italic; }
  .chroma .gs { font-weight: bold; }
  .chroma .gh { color: #b87eff !important; font-weight: bold; }
  .chroma .gp { color: #8772ac !important; }
  .chroma .go { color: #9880c0 !important; }
  .chroma .gr, .chroma .gt { color: #f87171 !important; }
}

/* Inline code in markdown — light */
.markup code,
.render-content code {
  background-color: #ede4ff;
  color: #6a1ab8;
  border: 1px solid var(--color-border);
  border-radius: 3px;
  padding: 0.1em 0.4em;
}

/* Fenced code blocks — light */
.markup pre,
.render-content pre {
  border: 1px solid var(--color-border);
  border-radius: 4px;
  overflow: hidden;
}

/* Reset inner code styles inside pre */
.markup pre code,
.render-content pre code {
  background-color: transparent;
  color: inherit;
  border: none;
  border-radius: 0;
  padding: 0;
}

/* Markdown: headings */
.markup h1, .markup h2, .markup h3, .markup h4, .markup h5, .markup h6,
.render-content h1, .render-content h2, .render-content h3,
.render-content h4, .render-content h5, .render-content h6 {
  color: var(--color-text-dark);
  font-weight: 600;
  line-height: 1.25;
  margin-top: 1.5em;
  margin-bottom: 0.5em;
}
.markup h1, .render-content h1 { font-size: 2em; border-bottom: 1px solid var(--color-border); padding-bottom: 0.3em; }
.markup h2, .render-content h2 { font-size: 1.5em; border-bottom: 1px solid var(--color-border); padding-bottom: 0.3em; }
.markup h3, .render-content h3 { font-size: 1.25em; }
.markup h4, .render-content h4 { font-size: 1em; }
.markup h5, .render-content h5 { font-size: 0.875em; }
.markup h6, .render-content h6 { font-size: 0.85em; color: var(--color-text-light); }

/* Markdown: blockquotes */
.markup blockquote, .render-content blockquote {
  border-left: 3px solid var(--color-primary);
  background-color: rgba(138, 43, 226, 0.05);
  color: var(--color-text-light);
  padding: 0.5em 1em;
  margin: 0 0 1em 0;
  border-radius: 0 4px 4px 0;
}
.markup blockquote p:last-child,
.render-content blockquote p:last-child { margin-bottom: 0; }

/* Markdown: tables */
.markup table, .render-content table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1em;
}
.markup table th, .render-content table th {
  background-color: var(--color-box-header);
  color: var(--color-text-dark);
  font-weight: 600;
  border: 1px solid var(--color-border);
  padding: 0.5em 0.75em;
  text-align: left;
}
.markup table td, .render-content table td {
  border: 1px solid var(--color-border);
  padding: 0.5em 0.75em;
}
.markup table tr:nth-child(even), .render-content table tr:nth-child(even) {
  background-color: var(--color-secondary);
}
.markup table tr:hover, .render-content table tr:hover {
  background-color: var(--color-secondary-hover);
}

/* Markdown: horizontal rule */
.markup hr, .render-content hr {
  border: none;
  border-top: 1px solid var(--color-border);
  margin: 1.5em 0;
}

/* Markdown: links */
.markup a, .render-content a { color: var(--color-primary); text-decoration: none; }
.markup a:hover, .render-content a:hover { color: var(--color-primary-hover); text-decoration: underline; }

/* Markdown: task lists */
.markup .task-list-item,
.render-content .task-list-item { list-style: none; }
.markup .task-list-item input[type="checkbox"],
.render-content .task-list-item input[type="checkbox"] {
  margin-right: 0.5em;
  accent-color: var(--color-primary);
}

/* Markdown: images */
.markup img, .render-content img { max-width: 100%; border-radius: 4px; }

/* Markdown: keyboard keys */
.markup kbd, .render-content kbd {
  background-color: var(--color-secondary);
  border: 1px solid var(--color-border-active);
  border-bottom-width: 2px;
  border-radius: 3px;
  color: var(--color-text);
  font-size: 0.85em;
  padding: 0.1em 0.4em;
}

/* Markdown: details / summary */
.markup details, .render-content details {
  border: 1px solid var(--color-border);
  border-radius: 4px;
  padding: 0.5em 1em;
  margin-bottom: 1em;
  background-color: var(--color-box-body);
}
.markup details summary, .render-content details summary {
  cursor: pointer;
  font-weight: 600;
  color: var(--color-primary);
}

/* Markdown: footnotes */
.markup .footnotes, .render-content .footnotes {
  border-top: 1px solid var(--color-border);
  margin-top: 2em;
  padding-top: 1em;
  font-size: 0.875em;
  color: var(--color-text-light);
}

/* Markdown: alerts ([!NOTE], [!WARNING] etc.) */
.markup .markdown-alert, .render-content .markdown-alert {
  border-left: 3px solid;
  padding: 0.5em 1em;
  border-radius: 0 4px 4px 0;
  margin-bottom: 1em;
}
.markup .markdown-alert-note, .render-content .markdown-alert-note {
  border-color: var(--color-info); background-color: rgba(37, 99, 235, 0.06);
}
.markup .markdown-alert-tip, .render-content .markdown-alert-tip {
  border-color: var(--color-success); background-color: rgba(22, 163, 74, 0.06);
}
.markup .markdown-alert-important, .render-content .markdown-alert-important {
  border-color: var(--color-primary); background-color: rgba(138, 43, 226, 0.06);
}
.markup .markdown-alert-warning, .render-content .markdown-alert-warning {
  border-color: var(--color-warning); background-color: rgba(255, 107, 0, 0.06);
}
.markup .markdown-alert-caution, .render-content .markdown-alert-caution {
  border-color: var(--color-error); background-color: rgba(220, 38, 38, 0.06);
}
.markup .markdown-alert-title, .render-content .markdown-alert-title {
  font-weight: 600;
  margin-bottom: 0.25em;
}

/* Dangerous actions */
.ui.red.button,
.ui.negative.button {
  background-color: var(--color-error) !important;
  color: #ffffff !important;
}
.ui.red.button:hover,
.ui.negative.button:hover {
  background-color: var(--color-error-hover) !important;
  color: #ffffff !important;
}
.ui.red.segment,
.ui.negative.segment {
  background-color: rgba(220, 38, 38, 0.04) !important;
  border: 1px solid var(--color-error) !important;
  border-left: 3px solid var(--color-error) !important;
}
.ui.red.segment .header,
.ui.negative.segment .header {
  color: var(--color-error) !important;
}
.ui.negative.message,
.ui.red.message {
  background-color: #fef2f2 !important;
  border: 1px solid var(--color-error) !important;
  color: var(--color-text) !important;
}
.ui.negative.message .header,
.ui.red.message .header {
  color: var(--color-error) !important;
}
.text.red,
.ui.red.header {
  color: var(--color-error) !important;
}
@media (prefers-color-scheme: dark) {
  mark {
    background-color: #6b4500;
    color: #ffd97a;
    border-radius: 2px;
    padding: 0 2px;
  }

  .markup code,
  .render-content code {
    background-color: #241442;
    color: #c99aff;
    border: 1px solid var(--color-border);
    border-radius: 3px;
    padding: 0.1em 0.4em;
  }
  .markup pre,
  .render-content pre {
    border: 1px solid var(--color-border);
    border-radius: 4px;
    overflow: hidden;
  }
  .markup pre code,
  .render-content pre code {
    background-color: transparent;
    color: inherit;
    border: none;
    border-radius: 0;
    padding: 0;
  }

  .ui.red.segment,
  .ui.negative.segment {
    background-color: rgba(248, 113, 113, 0.06) !important;
  }
  .ui.negative.message,
  .ui.red.message {
    background-color: rgba(248, 113, 113, 0.10) !important;
  }

  /* Logo: lighten #8A2BE2 → ~#b87eff to match dark theme accent */
  img.gitea-logo {
    filter: brightness(1.55) saturate(1.2);
  }

  /* Markdown: dark-mode rgba backgrounds */
  .markup blockquote, .render-content blockquote {
    background-color: rgba(184, 126, 255, 0.06);
  }
  .markup .markdown-alert-note, .render-content .markdown-alert-note {
    background-color: rgba(96, 165, 250, 0.08);
  }
  .markup .markdown-alert-tip, .render-content .markdown-alert-tip {
    background-color: rgba(34, 197, 94, 0.08);
  }
  .markup .markdown-alert-important, .render-content .markdown-alert-important {
    background-color: rgba(184, 126, 255, 0.08);
  }
  .markup .markdown-alert-warning, .render-content .markdown-alert-warning {
    background-color: rgba(255, 107, 0, 0.08);
  }
  .markup .markdown-alert-caution, .render-content .markdown-alert-caution {
    background-color: rgba(248, 113, 113, 0.08);
  }
}
