/* NakedCode Gitea Theme — matches dispatcher dashboard aesthetic */
gitea-theme-meta-info {
  --theme-display-name: "NakedCode";
}

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

  /* ── Primary: Gold accent from dispatcher (#c8a97e) ── */
  --color-primary: #c8a97e;
  --color-primary-contrast: #0c0c0e;
  --color-primary-dark-1: #ceb28b;
  --color-primary-dark-2: #d4bb98;
  --color-primary-dark-3: #dac5a5;
  --color-primary-dark-4: #e0ceb2;
  --color-primary-dark-5: #eadecf;
  --color-primary-dark-6: #f5efe7;
  --color-primary-dark-7: #fcfaf7;
  --color-primary-light-1: #b89a6c;
  --color-primary-light-2: #a88a5a;
  --color-primary-light-3: #937749;
  --color-primary-light-4: #7d6539;
  --color-primary-light-5: #534326;
  --color-primary-light-6: #2a2114;
  --color-primary-light-7: #100d08;
  --color-primary-alpha-10: #c8a97e19;
  --color-primary-alpha-20: #c8a97e33;
  --color-primary-alpha-30: #c8a97e4b;
  --color-primary-alpha-40: #c8a97e66;
  --color-primary-alpha-50: #c8a97e80;
  --color-primary-alpha-60: #c8a97e99;
  --color-primary-alpha-70: #c8a97eb3;
  --color-primary-alpha-80: #c8a97ecc;
  --color-primary-alpha-90: #c8a97ee6;
  --color-primary-hover: var(--color-primary-light-1);
  --color-primary-active: var(--color-primary-light-2);

  /* ── Secondary: near-black surfaces ── */
  --color-secondary: #1e1e22;
  --color-secondary-dark-1: #242428;
  --color-secondary-dark-2: #2a2a2f;
  --color-secondary-dark-3: #313136;
  --color-secondary-dark-4: #3a3a40;
  --color-secondary-dark-5: #44444b;
  --color-secondary-dark-6: #505058;
  --color-secondary-dark-7: #5c5c65;
  --color-secondary-dark-8: #6a6a73;
  --color-secondary-dark-9: #787881;
  --color-secondary-dark-10: #86868f;
  --color-secondary-dark-11: #94949c;
  --color-secondary-dark-12: #a2a2a9;
  --color-secondary-dark-13: #adadb4;
  --color-secondary-light-1: #18181c;
  --color-secondary-light-2: #141417;
  --color-secondary-light-3: #101012;
  --color-secondary-light-4: #0c0c0e;
  --color-secondary-alpha-10: #1e1e2219;
  --color-secondary-alpha-20: #1e1e2233;
  --color-secondary-alpha-30: #1e1e224b;
  --color-secondary-alpha-40: #1e1e2266;
  --color-secondary-alpha-50: #1e1e2280;
  --color-secondary-alpha-60: #1e1e2299;
  --color-secondary-alpha-70: #1e1e22b3;
  --color-secondary-alpha-80: #1e1e22cc;
  --color-secondary-alpha-90: #1e1e22e6;
  --color-secondary-button: var(--color-secondary-dark-3);
  --color-secondary-hover: var(--color-secondary-dark-2);
  --color-secondary-active: var(--color-secondary-dark-1);

  /* ── Console / Code ── */
  --color-console-fg: rgba(255,255,255,0.92);
  --color-console-fg-subtle: rgba(255,255,255,0.55);
  --color-console-bg: #0e0e10;
  --color-console-border: rgba(255,255,255,0.07);
  --color-console-hover-bg: #141416;
  --color-console-active-bg: #1a1a1e;
  --color-console-menu-bg: #111113;
  --color-console-menu-border: rgba(255,255,255,0.12);

  /* ── Status colors (from dispatcher) ── */
  --color-red: #f87171;
  --color-orange: #f5a623;
  --color-yellow: #f5c842;
  --color-olive: #a3b844;
  --color-green: #4ade80;
  --color-teal: #2dd4bf;
  --color-blue: #5b9cf6;
  --color-violet: #a78bfa;
  --color-purple: #c084fc;
  --color-pink: #f472b6;
  --color-brown: #a47252;
  --color-black: #0c0c0e;

  --color-red-light: #fca5a5;
  --color-orange-light: #f5b84f;
  --color-yellow-light: #f5d56e;
  --color-olive-light: #b5ca56;
  --color-green-light: #86efac;
  --color-teal-light: #5eead4;
  --color-blue-light: #93bffd;
  --color-violet-light: #c4b5fd;
  --color-purple-light: #d8b4fe;
  --color-pink-light: #f9a8d4;
  --color-brown-light: #b08061;
  --color-black-light: #2a2a30;

  --color-red-dark-1: #ef4444;
  --color-orange-dark-1: #e09420;
  --color-yellow-dark-1: #e0b830;
  --color-olive-dark-1: #8ea336;
  --color-green-dark-1: #22c55e;
  --color-teal-dark-1: #14b8a6;
  --color-blue-dark-1: #3b82f6;
  --color-violet-dark-1: #8b5cf6;
  --color-purple-dark-1: #a855f7;
  --color-pink-dark-1: #ec4899;
  --color-brown-dark-1: #94674a;
  --color-black-dark-1: #161618;

  --color-red-dark-2: #dc2626;
  --color-orange-dark-2: #c47e15;
  --color-green-dark-2: #16a34a;
  --color-blue-dark-2: #2563eb;

  /* ── Body / Layout backgrounds ── */
  --color-body: #0c0c0e;
  --color-box-header: #111113;
  --color-box-body: #0e0e10;
  --color-box-body-highlight: #141416;

  /* ── Text (dispatcher opacity model) ── */
  --color-text-dark: rgba(255,255,255,0.92);
  --color-text: rgba(255,255,255,0.72);
  --color-text-light: rgba(255,255,255,0.55);
  --color-text-light-1: rgba(255,255,255,0.45);
  --color-text-light-2: rgba(255,255,255,0.35);
  --color-text-light-3: rgba(255,255,255,0.25);

  /* ── Navigation ── */
  --color-nav-bg: #0c0c0e;
  --color-nav-hover-bg: #161618;
  --color-nav-text: rgba(255,255,255,0.72);
  --color-secondary-nav-bg: #0e0e10;
  --color-footer: #0c0c0e;

  /* ── Surfaces / Cards ── */
  --color-light: rgba(255,255,255,0.03);
  --color-hover: rgba(255,255,255,0.04);
  --color-hover-opaque: #141416;
  --color-active: rgba(255,255,255,0.07);
  --color-menu: #111113;
  --color-card: #111113;
  --color-button: #141416;
  --color-code-bg: #0a0a0c;
  --color-shadow: #00000060;
  --color-shadow-opaque: #000000;
  --color-secondary-bg: #18181c;
  --color-expand-button: #1e1e22;
  --color-project-column-bg: #141416;
  --color-reaction-bg: rgba(255,255,255,0.04);
  --color-reaction-hover-bg: var(--color-primary-light-4);
  --color-reaction-active-bg: var(--color-primary-light-5);

  /* ── Borders (dispatcher: rgba white with low alpha) ── */
  --color-input-border: rgba(255,255,255,0.10);
  --color-input-border-hover: rgba(255,255,255,0.18);
  --color-input-text: rgba(255,255,255,0.92);
  --color-input-background: #0e0e10;
  --color-input-toggle-background: #1e1e22;
  --color-timeline: rgba(255,255,255,0.07);
  --color-light-border: rgba(255,255,255,0.07);
  --color-grey: rgba(255,255,255,0.12);
  --color-grey-light: rgba(255,255,255,0.35);

  /* ── Labels ── */
  --color-label-text: rgba(255,255,255,0.85);
  --color-label-bg: rgba(255,255,255,0.06);
  --color-label-hover-bg: rgba(255,255,255,0.12);
  --color-label-active-bg: rgba(255,255,255,0.20);

  /* ── Markup ── */
  --color-markup-table-row: rgba(255,255,255,0.03);
  --color-markup-code-block: rgba(255,255,255,0.04);
  --color-markup-code-inline: rgba(255,255,255,0.07);

  /* ── Tooltips & Overlays ── */
  --color-tooltip-text: rgba(255,255,255,0.92);
  --color-tooltip-bg: #050506f0;
  --color-overlay-backdrop: #080808c0;
  --color-placeholder-text: rgba(255,255,255,0.25);
  --color-caret: rgba(255,255,255,0.72);

  /* ── Editor ── */
  --color-editor-line-highlight: var(--color-primary-light-5);

  /* ── Highlights ── */
  --color-highlight-fg: #c8a97e;
  --color-highlight-bg: #2a2114;
  --color-accent: var(--color-primary-light-1);
  --color-small-accent: var(--color-primary-light-5);

  /* ── Diff colors ── */
  --color-diff-added-linenum-bg: #133a1e;
  --color-diff-added-row-bg: #0d2816;
  --color-diff-added-row-border: #1a4a2a;
  --color-diff-added-word-bg: #1e5a32;
  --color-diff-moved-row-bg: #3a3520;
  --color-diff-moved-row-border: #5a5230;
  --color-diff-removed-linenum-bg: #3a1313;
  --color-diff-removed-row-bg: #280e0e;
  --color-diff-removed-row-border: #4a2020;
  --color-diff-removed-word-bg: #5a2020;
  --color-diff-inactive: #111113;

  /* ── Badges (status colors from dispatcher) ── */
  --color-red-badge: #f87171;
  --color-red-badge-bg: #f871711a;
  --color-red-badge-hover-bg: #f871714d;
  --color-green-badge: #4ade80;
  --color-green-badge-bg: #4ade801a;
  --color-green-badge-hover-bg: #4ade804d;
  --color-yellow-badge: #f5c842;
  --color-yellow-badge-bg: #f5c8421a;
  --color-yellow-badge-hover-bg: #f5c8424d;
  --color-orange-badge: #f5a623;
  --color-orange-badge-bg: #f5a6231a;
  --color-orange-badge-hover-bg: #f5a6234d;

  /* ── Errors / Warnings / Info ── */
  --color-error-border: #f87171;
  --color-error-bg: #280e0e;
  --color-error-bg-active: #3a1a1a;
  --color-error-bg-hover: #321414;
  --color-error-text: #fca5a5;
  --color-success-border: #4ade80;
  --color-success-bg: #0d2816;
  --color-success-text: #86efac;
  --color-warning-border: #f5a623;
  --color-warning-bg: #2a2010;
  --color-warning-text: #f5c842;
  --color-info-border: #5b9cf6;
  --color-info-bg: #0e1a2e;
  --color-info-text: #93bffd;

  /* ── ANSI terminal colors ── */
  --color-ansi-black: #0c0c0e;
  --color-ansi-red: #f87171;
  --color-ansi-green: #4ade80;
  --color-ansi-yellow: #f5c842;
  --color-ansi-blue: #5b9cf6;
  --color-ansi-magenta: #c084fc;
  --color-ansi-cyan: #2dd4bf;
  --color-ansi-white: rgba(255,255,255,0.72);
  --color-ansi-bright-black: #2a2a30;
  --color-ansi-bright-red: #fca5a5;
  --color-ansi-bright-green: #86efac;
  --color-ansi-bright-yellow: #f5d56e;
  --color-ansi-bright-blue: #93bffd;
  --color-ansi-bright-magenta: #d8b4fe;
  --color-ansi-bright-cyan: #5eead4;
  --color-ansi-bright-white: rgba(255,255,255,0.92);

  /* ── Misc ── */
  --color-gold: #c8a97e;
  --color-white: #ffffff;
  --color-git: #c8a97e;
  --color-logo: #c8a97e;

  /* ── Fonts (dispatcher: Geist + Instrument Serif + Geist Mono) ── */
  --fonts-proportional: 'Geist', -apple-system, BlinkMacSystemFont, system-ui, sans-serif !important;
  --fonts-monospace: 'Geist Mono', ui-monospace, 'SF Mono', monospace !important;

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


/* ═══════════════════════════════════════════════════════════════
   COMPONENT OVERRIDES — editorial dark aesthetic
   ═══════════════════════════════════════════════════════════════ */

/* Noise texture background (matching dispatcher) */
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 14px;
  letter-spacing: -0.01em;
}
body::before {
  content: '';
  position: fixed;
  inset: 0;
  opacity: 0.4;
  pointer-events: none;
  z-index: 0;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");
}

/* ── Navbar ── */
.full.height > :first-child {
  position: relative;
  z-index: 1;
}
#navbar {
  background: #0c0c0e !important;
  border-bottom: 1px solid rgba(255,255,255,0.07) !important;
  box-shadow: none !important;
}
#navbar .navbar-left .item,
#navbar .navbar-right .item {
  color: rgba(255,255,255,0.55) !important;
  transition: color 0.2s, background 0.2s;
}
#navbar .navbar-left .item:hover,
#navbar .navbar-right .item:hover {
  color: rgba(255,255,255,0.92) !important;
  background: rgba(255,255,255,0.04) !important;
}
#navbar .navbar-left .item.active {
  color: #c8a97e !important;
  border-color: #c8a97e !important;
}

/* Logo styling */
#navbar-logo img {
  filter: brightness(0) invert(1) opacity(0.7);
  transition: opacity 0.2s;
}
#navbar-logo:hover img {
  opacity: 1;
  filter: brightness(0) invert(1);
}

/* ── Repository header ── */
.repo-header {
  background: #0c0c0e !important;
  border-bottom: 1px solid rgba(255,255,255,0.07) !important;
}

/* ── Segment / Box containers (rounded like dispatcher panels) ── */
.ui.segment,
.ui.attached.segment {
  background: #0e0e10 !important;
  border: 1px solid rgba(255,255,255,0.07) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}
.ui.top.attached.segment,
.ui.top.attached.header {
  border-radius: 12px 12px 0 0 !important;
}
.ui.bottom.attached.segment {
  border-radius: 0 0 12px 12px !important;
}

/* ── Buttons (gold primary, muted secondary) ── */
.ui.primary.button,
.ui.primary.buttons .button {
  background: #c8a97e !important;
  color: #0c0c0e !important;
  border: none !important;
  border-radius: 8px !important;
  font-weight: 500;
  transition: background 0.2s, transform 0.1s;
}
.ui.primary.button:hover {
  background: #b89a6c !important;
}
.ui.primary.button:active {
  background: #a88a5a !important;
  transform: scale(0.98);
}
.ui.button,
.ui.basic.button {
  border-radius: 8px !important;
  transition: all 0.2s;
}
.ui.basic.button {
  border: 1px solid rgba(255,255,255,0.12) !important;
  color: rgba(255,255,255,0.72) !important;
  background: transparent !important;
}
.ui.basic.button:hover {
  border-color: rgba(255,255,255,0.24) !important;
  color: rgba(255,255,255,0.92) !important;
  background: rgba(255,255,255,0.04) !important;
}
.ui.negative.button {
  background: #ef4444 !important;
  border-radius: 8px !important;
}
.ui.positive.button,
.ui.green.button {
  background: #22c55e !important;
  border-radius: 8px !important;
}

/* ── Input fields ── */
.ui.input input,
.ui.form input:not([type]),
.ui.form input[type="text"],
.ui.form input[type="email"],
.ui.form input[type="password"],
.ui.form input[type="url"],
.ui.form textarea,
.ui.form select {
  background: #0a0a0c !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  border-radius: 8px !important;
  color: rgba(255,255,255,0.92) !important;
  transition: border-color 0.2s;
}
.ui.input input:focus,
.ui.form input:focus,
.ui.form textarea:focus {
  border-color: #c8a97e !important;
  box-shadow: 0 0 0 1px rgba(200,169,126,0.25) !important;
}

/* ── Dropdown menus ── */
.ui.dropdown .menu,
.ui.selection.dropdown .menu {
  background: #111113 !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  border-radius: 8px !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.5) !important;
}
.ui.dropdown .menu > .item {
  color: rgba(255,255,255,0.72) !important;
  border-radius: 6px !important;
  margin: 2px 4px !important;
}
.ui.dropdown .menu > .item:hover {
  background: rgba(255,255,255,0.04) !important;
  color: rgba(255,255,255,0.92) !important;
}

/* ── Labels / Tags ── */
.ui.label {
  border-radius: 20px !important;
  font-weight: 400;
}

/* ── Tables ── */
.ui.table {
  background: transparent !important;
  border: none !important;
}
.ui.table thead th {
  background: #111113 !important;
  color: rgba(255,255,255,0.45) !important;
  font-family: 'Geist Mono', monospace !important;
  font-size: 10px !important;
  text-transform: uppercase !important;
  letter-spacing: 1.2px !important;
  font-weight: 500 !important;
  border-bottom: 1px solid rgba(255,255,255,0.07) !important;
}
.ui.table td {
  border-top: 1px solid rgba(255,255,255,0.04) !important;
}
.ui.table tr:hover td {
  background: rgba(255,255,255,0.02) !important;
}

/* ── Issue / PR list ── */
.flex-item {
  border-color: rgba(255,255,255,0.05) !important;
  transition: background 0.15s;
}
.flex-item:hover {
  background: rgba(255,255,255,0.02) !important;
}
.flex-item-main .flex-item-title {
  font-weight: 400 !important;
}

/* ── Repository file list ── */
#repo-files-table .repo-file-cell {
  border-color: rgba(255,255,255,0.04) !important;
}
#repo-files-table .repo-file-cell:hover {
  background: rgba(255,255,255,0.02) !important;
}

/* ── Code view ── */
.code-view {
  background: #0a0a0c !important;
}
.lines-num span,
.lines-code .code-inner {
  font-family: 'Geist Mono', monospace !important;
}

/* ── Tabs ── */
.ui.tabular.menu .item {
  border-radius: 8px 8px 0 0 !important;
  color: rgba(255,255,255,0.45) !important;
}
.ui.tabular.menu .item.active {
  background: #0e0e10 !important;
  color: #c8a97e !important;
  border-color: rgba(255,255,255,0.07) !important;
}
.ui.secondary.menu .item.active {
  color: #c8a97e !important;
  border-color: #c8a97e !important;
}

/* ── Cards (on explore/org pages) ── */
.ui.card,
.ui.cards > .card {
  background: #0e0e10 !important;
  border: 1px solid rgba(255,255,255,0.07) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  transition: border-color 0.2s, transform 0.15s;
}
.ui.card:hover,
.ui.cards > .card:hover {
  border-color: rgba(255,255,255,0.14) !important;
  transform: translateY(-1px);
}

/* ── Modal ── */
.ui.modal {
  background: #111113 !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  border-radius: 16px !important;
  box-shadow: 0 24px 64px rgba(0,0,0,0.6) !important;
}
.ui.modal > .header {
  background: transparent !important;
  border-bottom: 1px solid rgba(255,255,255,0.07) !important;
  color: rgba(255,255,255,0.92) !important;
}
.ui.modal > .actions {
  background: transparent !important;
  border-top: 1px solid rgba(255,255,255,0.07) !important;
}

/* ── Pagination ── */
.ui.pagination.menu .item {
  border-radius: 8px !important;
  color: rgba(255,255,255,0.55) !important;
}
.ui.pagination.menu .item.active {
  background: #c8a97e !important;
  color: #0c0c0e !important;
}

/* ── Footer ── */
.page-footer {
  background: #0c0c0e !important;
  border-top: 1px solid rgba(255,255,255,0.07) !important;
}
.page-footer .left-links,
.page-footer .right-links,
.page-footer a,
.page-footer .column {
  color: rgba(255,255,255,0.25) !important;
}

/* ── Dashboard ── */
.dashboard .feeds .news > .ui.grid,
.dashboard .feeds {
  border-color: rgba(255,255,255,0.04) !important;
}

/* ── Links ── */
a {
  color: #c8a97e;
  transition: color 0.15s;
}
a:hover {
  color: #dac5a5;
}

/* ── Scrollbar (WebKit) ── */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
::-webkit-scrollbar-track {
  background: transparent;
}
::-webkit-scrollbar-thumb {
  background: rgba(255,255,255,0.10);
  border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
  background: rgba(255,255,255,0.18);
}

/* ── Markdown rendered content ── */
.markup h1, .markup h2, .markup h3 {
  border-color: rgba(255,255,255,0.07) !important;
  color: rgba(255,255,255,0.92) !important;
}
.markup code {
  background: rgba(255,255,255,0.06) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 6px !important;
  font-family: 'Geist Mono', monospace !important;
}
.markup pre {
  background: #0a0a0c !important;
  border: 1px solid rgba(255,255,255,0.07) !important;
  border-radius: 10px !important;
}

/* ── Commit list ── */
.timeline-item .commit-header {
  background: #0e0e10 !important;
  border: 1px solid rgba(255,255,255,0.05) !important;
  border-radius: 8px !important;
}

/* ── Empty states ── */
.empty-placeholder {
  color: rgba(255,255,255,0.25) !important;
}

/* ── Toast notifications ── */
.ui.toast-container .toast-box {
  background: #111113 !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.5) !important;
}

/* ── Loading indicator ── */
.ui.active.loader::before {
  border-color: rgba(255,255,255,0.07) !important;
}
.ui.active.loader::after {
  border-color: #c8a97e transparent transparent !important;
}

/* ── Selection highlight ── */
::selection {
  background: rgba(200,169,126,0.30);
  color: #ffffff;
}

/* ── Homepage / Landing ── */
.home .hero {
  background: #0c0c0e !important;
}
.home .hero h1,
.home .hero h2 {
  color: rgba(255,255,255,0.92) !important;
}

/* ── Repo description ── */
#repo-desc {
  color: rgba(255,255,255,0.55) !important;
}

/* ── Activity graph ── */
.heatmap-color-0 { background-color: #141416 !important; }
.heatmap-color-1 { background-color: #3d2e14 !important; }
.heatmap-color-2 { background-color: #5a4320 !important; }
.heatmap-color-3 { background-color: #7d6539 !important; }
.heatmap-color-4 { background-color: #c8a97e !important; }

/* ── z-index fix for content above noise texture ── */
.full.height {
  position: relative;
  z-index: 1;
}
