/* etenite — minimal Forgejo theme matching etenie.net.
 * Pure black body, white text, #e01040 crimson accent.
 * Drop this in /var/lib/forgejo/custom/public/assets/css/theme-etenite.css
 * then set DEFAULT_THEME = "etenite" in forgejo config.
 */

@import "chroma/dark.css";
@import "codemirror/dark.css";
@import "markup/dark.css";

:root {
 --is-dark-theme: true;

 /* ── background palette (black → dark grey) ── */
 --steel-900: #000000;
 --steel-850: #050505;
 --steel-800: #0a0a0a;
 --steel-750: #0f0f0f;
 --steel-700: #141414;
 --steel-650: #1a1a1a;
 --steel-600: #212121;
 --steel-550: #2a2a2a;
 --steel-500: #333333;
 --steel-450: #404040;
 --steel-400: #4d4d4d;
 --steel-350: #5c5c5c;
 --steel-300: #6e6e6e;
 --steel-250: #808080;
 --steel-200: #949494;
 --steel-150: #aaaaaa;
 --steel-100: #c2c2c2;

 /* ── primary: #e01040 crimson ── */
 --color-primary: #e01040;
 --color-primary-contrast: #fff;
 --color-primary-dark-1: #f03a62;
 --color-primary-dark-2: #f03a62;
 --color-primary-dark-3: #f46484;
 --color-primary-dark-4: #f46484;
 --color-primary-dark-5: #f88ea6;
 --color-primary-dark-6: #f88ea6;
 --color-primary-dark-7: #fcbac8;
 --color-primary-light-1: #cc0e3a;
 --color-primary-light-2: #b20c33;
 --color-primary-light-3: #990a2b;
 --color-primary-light-4: #800822;
 --color-primary-light-5: #800822;
 --color-primary-light-6: #66061a;
 --color-primary-light-7: #66061a;
 --color-primary-alpha-10: #cc0e3a19;
 --color-primary-alpha-20: #cc0e3a33;
 --color-primary-alpha-30: #cc0e3a4b;
 --color-primary-alpha-40: #cc0e3a66;
 --color-primary-alpha-50: #cc0e3a80;
 --color-primary-alpha-60: #cc0e3a99;
 --color-primary-alpha-70: #cc0e3ab3;
 --color-primary-alpha-80: #cc0e3acc;
 --color-primary-alpha-90: #cc0e3ae1;
 --color-primary-hover: var(--color-primary-light-1);
 --color-primary-active: var(--color-primary-light-2);

 /* ── secondary (neutral) ── */
 --color-secondary: #1a1a1a;
 --color-secondary-dark-1: #404040;
 --color-secondary-dark-2: #4d4d4d;
 --color-secondary-dark-3: #5c5c5c;
 --color-secondary-dark-4: #6e6e6e;
 --color-secondary-dark-5: #808080;
 --color-secondary-dark-6: #949494;
 --color-secondary-dark-7: #aaaaaa;
 --color-secondary-dark-8: #aaaaaa;
 --color-secondary-dark-9: #aaaaaa;
 --color-secondary-dark-10: #aaaaaa;
 --color-secondary-dark-11: #aaaaaa;
 --color-secondary-dark-12: #aaaaaa;
 --color-secondary-dark-13: #aaaaaa;
 --color-secondary-light-1: #2a2a2a;
 --color-secondary-light-2: #212121;
 --color-secondary-light-3: #1a1a1a;
 --color-secondary-light-4: #141414;
 --color-secondary-alpha-10: #21212119;
 --color-secondary-alpha-20: #21212133;
 --color-secondary-alpha-30: #2121214b;
 --color-secondary-alpha-40: #21212166;
 --color-secondary-alpha-50: #21212180;
 --color-secondary-alpha-60: #21212199;
 --color-secondary-alpha-70: #212121b3;
 --color-secondary-alpha-80: #212121cc;
 --color-secondary-alpha-90: #212121e1;
 --color-secondary-hover: var(--color-secondary-light-1);
 --color-secondary-active: var(--color-secondary-light-2);

 /* ── console colors ── */
 --color-console-fg: #eeeff2;
 --color-console-fg-subtle: #959cab;
 --color-console-bg: #0d0d0d;
 --color-console-border: #262626;
 --color-console-hover-bg: #ffffff16;
 --color-console-active-bg: #333333;
 --color-console-menu-bg: #262626;
 --color-console-menu-border: #444444;

 /* ── semantic colors ── */
 --color-red: #e01040;
 --color-orange: #f03a62;
 --color-yellow: #f46484;
 --color-olive: #6e6e6e;
 --color-green: #16a34a;
 --color-teal: #0d9488;
 --color-blue: #3b82f6;
 --color-violet: #8b5cf6;
 --color-purple: #a855f7;
 --color-pink: #ec4899;
 --color-brown: #6e6e6e;
 --color-grey: #5c5c5c;
 --color-black: #000000;
 --color-red-light: #f03a62;
 --color-orange-light: #f46484;
 --color-yellow-light: #f88ea6;
 --color-black-light: #0a0a0a;

 /* ── target-based colors ── */
 --color-body: #000000;
 --color-box-header: #050505;
 --color-box-body: #000000;
 --color-box-body-highlight: #141414;
 --color-text-dark: #fff;
 --color-text: #d4d4d4;
 --color-text-light: #b0b0b0;
 --color-text-light-1: #b0b0b0;
 --color-text-light-2: #8c8c8c;
 --color-text-light-3: #8c8c8c;
 --color-footer: #000000;
 --color-timeline: #1a1a1a;
 --color-input-text: #d4d4d4;
 --color-input-background: #141414;
 --color-input-toggle-background: #141414;
 --color-input-border: #2a2a2a;
 --color-input-border-hover: #404040;
 --color-header-wrapper: #050505;
 --color-header-wrapper-transparent: #0a0a0a00;
 --color-light: #ffffff10;
 --color-light-mimic-enabled: rgba(255, 255, 255, 0.04);
 --color-light-border: #ffffff14;
 --color-hover: #141414;
 --color-active: #1a1a1a;
 --color-menu: #0d0d0d;
 --color-card: #0d0d0d;
 --color-markup-table-row: #ffffff06;
 --color-markup-code-block: #000000;
 --color-markup-code-inline: #141414;
 --color-button: #1a1a1a;
 --color-code-bg: #000000;
 --color-shadow: #00000080;
 --color-secondary-bg: #0d0d0d;
 --color-text-focus: #fff;
 --color-placeholder-text: #6e6e6e;
 --color-editor-line-highlight: #0d0d0d;
 --color-caret: #d4d4d4;
 --color-reaction-bg: #ffffff12;
 --color-reaction-active-bg: var(--color-primary-alpha-30);
 --color-reaction-hover-bg: var(--color-primary-alpha-40);
 --color-tooltip-text: #fff;
 --color-tooltip-bg: #000000f0;
 --color-nav-bg: #000000;
 --color-nav-hover-bg: #141414;
 --color-secondary-nav-bg: var(--color-body);
 --color-label-text: #fff;
 --color-label-bg: #1a1a1a;
 --color-label-hover-bg: #262626;
 --color-label-active-bg: #333333;
 --color-label-bg-alt: #262626;
 --color-accent: var(--color-primary-light-1);
 --color-small-accent: var(--color-primary-light-5);
 --color-highlight-fg: var(--color-primary-light-4);
 --color-highlight-bg: var(--color-primary-alpha-20);
 --color-overlay-backdrop: #000000c0;
 --color-selection-bg: #d4d4d4;
 --color-selection-fg: #000000;
 --checkerboard-color-1: #1a1a1a;
 --checkerboard-color-2: #0d0d0d;
 --color-diff-removed-word-bg: #4a1a1a;
 --color-diff-added-word-bg: #1a3a2a;
 --color-diff-removed-row-bg: #2a1010;
 --color-diff-moved-row-bg: #2a2010;
 --color-diff-added-row-bg: #102a1a;
 --color-diff-removed-row-border: #4a1a1a;
 --color-diff-moved-row-border: #6e5c1a;
 --color-diff-added-row-border: #1a3a2a;
 --color-diff-inactive: #1a1a1a;
 --color-error-border: #4a1a1a;
 --color-error-bg: #2a1010;
 --color-error-bg-active: #4a1a1a;
 --color-error-bg-hover: #4a1a1a;
 --color-error-text: #fca5a5;
 --color-success-border: #1a3a2a;
 --color-success-bg: #102a1a;
 --color-success-text: #86efac;
 --color-warning-border: #6e5c1a;
 --color-warning-bg: #2a2010;
 --color-warning-text: #fde68a;
 --color-info-border: #1a2a4a;
 --color-info-bg: #101a2a;
 --color-info-text: #d4d4d4;

 accent-color: var(--color-accent);
 color-scheme: dark;
}

/* invert dark emojis */
.emoji[aria-label="check mark"],
.emoji[aria-label="multiply"],
.emoji[aria-label="plus"],
.emoji[aria-label="minus"],
.emoji[aria-label="divide"],
.emoji[aria-label="copyright"],
.emoji[aria-label="registered"],
.emoji[aria-label="trade mark"] {
 filter: invert(100%) hue-rotate(180deg);
}

/* Alternating line backgrounds in code view (matches etenie.net) */
.file-view.code-view tr:nth-child(even) {
  background: #ffffff06;
}
/* Also for blob/diff blocks rendered with .lines-code */
.code-view .lines-code tr:nth-child(even),
.markup .code-block tr:nth-child(even) {
  background: #ffffff06;
}

.sha.label.isSigned.isVerified .shortsha,
.sha.label.isSigned.isVerified .detail-icon {
  color: var(--color-green) !important;
}

/* Verified (signed) commit SHA labels — green, like upstream */
.sha.label.isSigned.isVerified {
  background: var(--color-green-badge-bg, #16a34a22) !important;
  border-color: var(--color-green) !important;
}
.sha.label.isSigned.isVerified .shortsha,
.sha.label.isSigned.isVerified .detail-icon {
  color: var(--color-green) !important;
}
