gitea-theme-meta-info { --theme-display-name: "Codex Obscura"; }\n:root { --is-dark-theme: true; }
/* ============================================================
   CODEX OBSCURA — Gitea Custom Theme
   Fall Palette × Dark Academia × Pixel Borders
   Matches the Hugo theme aesthetic
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=VT323&family=IM+Fell+English:ital@0;1&family=Josefin+Sans:ital,wght@0,300;0,400;0,600;1,300;1,400&family=Courier+Prime:ital,wght@0,400;0,700;1,400&display=swap');

/* ── Core colour overrides ───────────────────────────────── */
:root {
  --color-primary:              #d4a228;
  --color-primary-dark:         #a07818;
  --color-primary-light:        #f0c040;
  --color-secondary:            #c4601c;

  --color-bg-primary:           #130e07;
  --color-bg-secondary:         #1c1509;
  --color-bg-tertiary:          #261c0e;
  --color-bg-hover:             #312414;

  --color-text-primary:         #e8d5a3;
  --color-text-secondary:       #c9b07a;
  --color-text-tertiary:        #8a7050;

  --color-border-primary:       #5a4020;
  --color-border-secondary:     #3a2a14;
  --color-border-hover:         #8a6030;

  --color-green:                #4e7830;
  --color-green-light:          #6a9e44;
  --color-red:                  #8a2e08;
  --color-red-light:            #c4601c;
  --color-orange:               #c4601c;
  --color-yellow:               #d4a228;

  --color-input-background:     #1c1509;
  --color-input-border:         #5a4020;

  --color-menu-active:          #d4a228;
  --color-link:                 #d4a228;
  --color-link-hover:           #f0c040;

  --color-diff-added-row:       rgba(78, 120, 48, 0.15);
  --color-diff-removed-row:     rgba(138, 46, 8, 0.15);
  --color-diff-added-word:      rgba(78, 120, 48, 0.3);
  --color-diff-removed-word:    rgba(138, 46, 8, 0.3);

  /* shadow / glow */
  --shadow-sm: 2px 2px 0 #3a2a14;
  --shadow-md: 2px 2px 0 #5c3a18;
}

/* ── Global typography ───────────────────────────────────── */
body,
.ui,
input,
textarea,
select,
button {
  font-family: 'Josefin Sans', sans-serif !important;
}

h1, h2, h3, h4, h5, h6,
.header,
.ui.header,
.repository .file-header,
.navbar .item {
  font-family: 'VT323', monospace !important;
  letter-spacing: 0.05em;
}

code, pre, .code, tt,
.file-content,
.diff-file-box {
  font-family: 'Courier Prime', monospace !important;
}

/* ── Body & background ───────────────────────────────────── */
body {
  background: #0b0804 !important;
  color: #e8d5a3 !important;
}

/* ── Navbar ──────────────────────────────────────────────── */
.navbar,
#navbar {
  background: #1c1509 !important;
  border-bottom: 2px solid #5a4020 !important;
  box-shadow: 0 2px 0 #3a2a14 !important;
}

.navbar .item,
#navbar .item {
  color: #c9b07a !important;
  font-family: 'VT323', monospace !important;
  font-size: 1.1rem !important;
  letter-spacing: 0.08em !important;
}

.navbar .item:hover,
#navbar .item:hover {
  color: #d4a228 !important;
  background: #261c0e !important;
}

.navbar .item.active,
#navbar .item.active {
  color: #d4a228 !important;
  background: #312414 !important;
}

/* site logo text */
.navbar .header.item,
#navbar .header.item {
  color: #e8d5a3 !important;
  font-size: 1.4rem !important;
}

/* ── Page container ──────────────────────────────────────── */
.page-content,
.full.height > .left,
.repository,
.user,
.org {
  background: #130e07 !important;
}

/* ── Segments & cards ────────────────────────────────────── */
.ui.segment,
.ui.segments,
.ui.card,
.ui.cards > .card {
  background: #1c1509 !important;
  border: 2px solid #5a4020 !important;
  box-shadow: 2px 2px 0 #3a2a14 !important;
  border-radius: 0 !important;
  color: #c9b07a !important;
}

.ui.segment:hover,
.ui.card:hover {
  border-color: #a07818 !important;
}

/* ── Menus & dropdowns ───────────────────────────────────── */
.ui.menu,
.ui.dropdown .menu {
  background: #1c1509 !important;
  border: 2px solid #5a4020 !important;
  border-radius: 0 !important;
  box-shadow: 2px 2px 0 #3a2a14 !important;
}

.ui.menu .item,
.ui.dropdown .menu .item {
  color: #c9b07a !important;
  border-radius: 0 !important;
}

.ui.menu .item:hover,
.ui.dropdown .menu .item:hover {
  background: #261c0e !important;
  color: #d4a228 !important;
}

.ui.menu .active.item,
.ui.menu .item.active {
  background: #312414 !important;
  color: #d4a228 !important;
  border-color: #a07818 !important;
}

/* tabular menu */
.ui.tabular.menu .active.item {
  background: #130e07 !important;
  border-color: #5a4020 !important;
  border-bottom-color: #130e07 !important;
  color: #d4a228 !important;
}

/* ── Buttons ─────────────────────────────────────────────── */
.ui.button,
.ui.buttons .button {
  background: #261c0e !important;
  color: #c9b07a !important;
  border: 2px solid #5a4020 !important;
  border-radius: 0 !important;
  box-shadow: 2px 2px 0 #3a2a14 !important;
  font-family: 'VT323', monospace !important;
  font-size: 1rem !important;
  letter-spacing: 0.06em !important;
  transition: all 150ms ease !important;
}

.ui.button:hover {
  background: #312414 !important;
  border-color: #a07818 !important;
  color: #d4a228 !important;
  transform: translate(-1px, -1px) !important;
  box-shadow: 3px 3px 0 #3a2a14 !important;
}

.ui.primary.button,
.ui.green.button {
  background: #a07818 !important;
  color: #0b0804 !important;
  border-color: #d4a228 !important;
}

.ui.primary.button:hover,
.ui.green.button:hover {
  background: #d4a228 !important;
}

.ui.red.button,
.ui.negative.button {
  background: #5a1a08 !important;
  color: #e8d5a3 !important;
  border-color: #8a2e08 !important;
}

.ui.red.button:hover {
  background: #8a2e08 !important;
}

/* ── Inputs & forms ──────────────────────────────────────── */
.ui.input input,
.ui.form input,
.ui.form textarea,
.ui.form select,
input[type="text"],
input[type="password"],
input[type="email"],
input[type="search"],
textarea,
select {
  background: #1c1509 !important;
  border: 2px solid #5a4020 !important;
  border-radius: 0 !important;
  color: #e8d5a3 !important;
  font-family: 'Josefin Sans', sans-serif !important;
}

.ui.input input:focus,
.ui.form input:focus,
.ui.form textarea:focus {
  border-color: #a07818 !important;
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(212, 162, 40, 0.15) !important;
}

/* ── Labels & badges ─────────────────────────────────────── */
.ui.label,
.ui.labels .label {
  background: #261c0e !important;
  border: 2px solid #5a4020 !important;
  border-radius: 0 !important;
  color: #c9b07a !important;
  font-family: 'VT323', monospace !important;
  letter-spacing: 0.06em !important;
}

/* issue labels */
.label[style] {
  border-radius: 0 !important;
  font-family: 'VT323', monospace !important;
  letter-spacing: 0.06em !important;
}

/* open/closed badges */
.ui.green.label, .issue-state-label.open {
  background: #2a4a18 !important;
  border-color: #4e7830 !important;
  color: #6a9e44 !important;
}

.ui.red.label, .issue-state-label.closed {
  background: #3a1008 !important;
  border-color: #8a2e08 !important;
  color: #c4601c !important;
}

.ui.purple.label, .ui.violet.label {
  background: #2a1a3a !important;
  border-color: #5a3a7a !important;
  color: #c9b0e8 !important;
}

/* ── Repository list items ───────────────────────────────── */
.repository.list .item,
.explore .list .item {
  border-bottom: 1px solid #3a2a14 !important;
  padding: 1rem !important;
  transition: background 150ms ease !important;
}

.repository.list .item:hover,
.explore .list .item:hover {
  background: #1c1509 !important;
}

/* repo name link */
.repository.list .item .header a,
.explore .list .item .header a {
  color: #d4a228 !important;
  font-family: 'VT323', monospace !important;
  font-size: 1.2rem !important;
}

.repository.list .item .header a:hover {
  color: #f0c040 !important;
}

/* ── File tree / code browser ────────────────────────────── */
.repository .file-list,
.repository .code-view {
  background: #130e07 !important;
}

.repository .file-list .item,
.repository .files tr {
  border-bottom: 1px solid #3a2a14 !important;
}

.repository .files tr:hover {
  background: #1c1509 !important;
}

.repository .files .icon {
  color: #8a6030 !important;
}

.repository .files .name a {
  color: #c9b07a !important;
}

.repository .files .name a:hover {
  color: #d4a228 !important;
}

/* commit message */
.repository .files .message a {
  color: #8a7050 !important;
}

.repository .files .message a:hover {
  color: #c9b07a !important;
}

/* ── Diff view ───────────────────────────────────────────── */
.diff-file-box {
  border: 2px solid #5a4020 !important;
  border-radius: 0 !important;
  margin-bottom: 1rem !important;
}

.diff-file-box .file-header {
  background: #261c0e !important;
  border-bottom: 2px solid #5a4020 !important;
  color: #c9b07a !important;
  padding: 0.5rem 1rem !important;
}

.diff-file-box .file-header .file-header-title {
  color: #d4a228 !important;
  font-family: 'Courier Prime', monospace !important;
}

.code-diff tr.added td {
  background: rgba(78, 120, 48, 0.12) !important;
}

.code-diff tr.deleted td {
  background: rgba(138, 46, 8, 0.12) !important;
}

.code-diff td.lines-num {
  background: #1c1509 !important;
  color: #5a4830 !important;
  border-right: 1px solid #3a2a14 !important;
}

/* ── Code blocks ─────────────────────────────────────────── */
.code-view .lines-code,
pre, code {
  background: #0b0804 !important;
  color: #e8d5a3 !important;
}

/* ── Issue & PR list ─────────────────────────────────────── */
.issue.list .item,
.pulls.list .item {
  border-bottom: 1px solid #3a2a14 !important;
  padding: 0.75rem 0 !important;
}

.issue.list .item:hover {
  background: #1c1509 !important;
}

.issue.list .item .title,
.pulls.list .item .title {
  color: #e8d5a3 !important;
  font-family: 'Josefin Sans', sans-serif !important;
}

.issue.list .item .title:hover {
  color: #d4a228 !important;
}

/* ── Comments ────────────────────────────────────────────── */
.comment .content {
  background: #1c1509 !important;
  border: 2px solid #5a4020 !important;
  border-radius: 0 !important;
}

.comment .content .header {
  background: #261c0e !important;
  border-bottom: 2px solid #5a4020 !important;
  color: #8a7050 !important;
}

.comment .content .header .author {
  color: #d4a228 !important;
  font-family: 'VT323', monospace !important;
  font-size: 1.1rem !important;
}

/* ── Activity feed ───────────────────────────────────────── */
.feeds .news .desc {
  color: #c9b07a !important;
}

.feeds .news .time {
  color: #5a4830 !important;
}

/* ── User profile ────────────────────────────────────────── */
.user.profile .ui.card {
  background: #1c1509 !important;
}

.user.profile .ui.card .extra {
  border-top: 1px solid #3a2a14 !important;
}

/* ── Markdown rendered content ───────────────────────────── */
.markup,
.markdown {
  color: #c9b07a !important;
}

.markup h1, .markup h2, .markup h3,
.markup h4, .markup h5, .markup h6,
.markdown h1, .markdown h2, .markdown h3 {
  font-family: 'VT323', monospace !important;
  color: #f0c040 !important;
  border-bottom: 1px solid #3a2a14 !important;
  letter-spacing: 0.05em !important;
}

.markup a, .markdown a {
  color: #d4a228 !important;
  border-bottom: 1px solid #a07818 !important;
  text-decoration: none !important;
}

.markup a:hover, .markdown a:hover {
  color: #f0c040 !important;
}

.markup blockquote, .markdown blockquote {
  background: #1c1509 !important;
  border-left: 4px solid #a07818 !important;
  color: #8a7050 !important;
  border-radius: 0 !important;
}

.markup table th, .markdown table th {
  background: #261c0e !important;
  color: #d4a228 !important;
  border: 1px solid #5a4020 !important;
  font-family: 'VT323', monospace !important;
}

.markup table td, .markdown table td {
  border: 1px solid #3a2a14 !important;
  color: #c9b07a !important;
}

.markup table tr:nth-child(even) td,
.markdown table tr:nth-child(even) td {
  background: #1c1509 !important;
}

/* ── Dividers ────────────────────────────────────────────── */
.ui.divider {
  border-color: #3a2a14 !important;
}

/* ── Pagination ──────────────────────────────────────────── */
.ui.pagination.menu .item {
  background: #1c1509 !important;
  color: #8a7050 !important;
  border: 2px solid #3a2a14 !important;
  border-radius: 0 !important;
  min-width: 2.5rem !important;
  text-align: center !important;
}

.ui.pagination.menu .item:hover {
  background: #261c0e !important;
  color: #d4a228 !important;
  border-color: #a07818 !important;
}

.ui.pagination.menu .active.item {
  background: #312414 !important;
  color: #d4a228 !important;
  border-color: #a07818 !important;
}

/* ── Footer ──────────────────────────────────────────────── */
#footer {
  background: #0b0804 !important;
  border-top: 2px solid #3a2a14 !important;
  color: #5a4830 !important;
}

#footer a {
  color: #8a7050 !important;
}

#footer a:hover {
  color: #d4a228 !important;
}

/* ── Scrollbar ───────────────────────────────────────────── */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: #0b0804; }
::-webkit-scrollbar-thumb { background: #5c3a18; border: 2px solid #1c1509; }
::-webkit-scrollbar-thumb:hover { background: #a07818; }

/* ── Links globally ──────────────────────────────────────── */
a {
  color: #d4a228 !important;
}

a:hover {
  color: #f0c040 !important;
}

/* ── Statistic numbers ───────────────────────────────────── */
.ui.statistic .value {
  color: #d4a228 !important;
  font-family: 'VT323', monospace !important;
}

.ui.statistic .label {
  color: #8a7050 !important;
  font-family: 'Josefin Sans', sans-serif !important;
}

/* ── Flash/alert messages ────────────────────────────────── */
.ui.positive.message, .ui.success.message {
  background: #1a3010 !important;
  border-color: #4e7830 !important;
  color: #6a9e44 !important;
}

.ui.negative.message, .ui.error.message {
  background: #2a0e08 !important;
  border-color: #8a2e08 !important;
  color: #c4601c !important;
}

.ui.warning.message {
  background: #2a1e08 !important;
  border-color: #a07818 !important;
  color: #d4a228 !important;
}

.ui.info.message {
  background: #0e1a2a !important;
  border-color: #2a5a8a !important;
  color: #7ab0d4 !important;
}

/* ── Selection ───────────────────────────────────────────── */
::selection {
  background: #a07818 !important;
  color: #0b0804 !important;
}
