/* ============================================================
   Stann0git — Steam/Gaming Dark Theme + Neon Green Accent
   ============================================================ */

:root {
  --sg-bg0:        #0d1117;
  --sg-bg1:        #161b22;
  --sg-bg2:        #1c2333;
  --sg-bg3:        #212836;
  --sg-border:     #30363d;
  --sg-border-hi:  #3d444d;
  --sg-text:       #cdd9e5;
  --sg-text-muted: #768390;
  --sg-text-dim:   #444c56;
  --sg-accent:     #39ff14;
  --sg-accent-dim: #1f8c0a;
  --sg-accent-glow:#39ff1430;
  --sg-blue:       #58a6ff;
  --sg-red:        #f85149;
  --sg-yellow:     #d29922;
  --sg-purple:     #bc8cff;
  --sg-radius:     6px;
  --sg-radius-lg:  10px;
}

body, .full.height {
  background-color: var(--sg-bg0) !important;
  color: var(--sg-text) !important;
  font-family: 'Segoe UI', system-ui, -apple-system, sans-serif !important;
}

a { color: var(--sg-blue) !important; text-decoration: none !important; }
a:hover { color: var(--sg-accent) !important; }

::selection { background: var(--sg-accent-glow); color: var(--sg-accent); }

::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: var(--sg-bg0); }
::-webkit-scrollbar-thumb { background: var(--sg-border); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: var(--sg-accent-dim); }

/* Navbar */
.ui.top.attached.header, .navbar, #navbar,
.ui.menu.navbar, .header-nav, .header-wrapper {
  background: var(--sg-bg1) !important;
  border-bottom: 1px solid var(--sg-border) !important;
  box-shadow: none !important;
}
.navbar .item, .ui.menu .item, .header-nav a {
  color: var(--sg-text-muted) !important;
}
.navbar .item:hover, .ui.menu .item:hover, .header-nav a:hover {
  color: var(--sg-accent) !important;
  background: var(--sg-bg3) !important;
}
.navbar .brand, .home-nav .brand, a.item.brand {
  color: var(--sg-accent) !important;
  font-weight: 700 !important;
  letter-spacing: .03em !important;
}

/* Dropdowns */
.ui.dropdown .menu, .ui.menu .dropdown .menu {
  background: var(--sg-bg2) !important;
  border: 1px solid var(--sg-border) !important;
  border-radius: var(--sg-radius) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.5) !important;
}
.ui.dropdown .menu .item { color: var(--sg-text) !important; border-top: none !important; }
.ui.dropdown .menu .item:hover { background: var(--sg-bg3) !important; color: var(--sg-accent) !important; }

/* Segments / Cards */
.ui.segment, .ui.attached.segment {
  background: var(--sg-bg1) !important;
  border-color: var(--sg-border) !important;
  color: var(--sg-text) !important;
  box-shadow: none !important;
}
.ui.card, .ui.cards > .card {
  background: var(--sg-bg2) !important;
  border: 1px solid var(--sg-border) !important;
  border-radius: var(--sg-radius-lg) !important;
  box-shadow: none !important;
}
.ui.card:hover, .ui.cards > .card:hover {
  border-color: var(--sg-accent-dim) !important;
}

/* Buttons */
.ui.button, .ui.buttons .button {
  background: var(--sg-bg3) !important;
  color: var(--sg-text) !important;
  border: 1px solid var(--sg-border) !important;
  border-radius: var(--sg-radius) !important;
  box-shadow: none !important;
}
.ui.button:hover { background: var(--sg-border) !important; }
.ui.primary.button, .ui.green.button {
  background: var(--sg-accent-dim) !important;
  border-color: var(--sg-accent) !important;
  color: var(--sg-bg0) !important;
  font-weight: 600 !important;
}
.ui.primary.button:hover, .ui.green.button:hover {
  background: var(--sg-accent) !important;
  color: var(--sg-bg0) !important;
}
.ui.red.button, .ui.negative.button {
  background: rgba(248,81,73,.15) !important;
  border-color: var(--sg-red) !important;
  color: var(--sg-red) !important;
}

/* Forms */
.ui.form input, .ui.form textarea, .ui.form select,
input[type="text"], input[type="password"], input[type="email"],
input[type="search"], textarea, select {
  background: var(--sg-bg0) !important;
  border: 1px solid var(--sg-border) !important;
  border-radius: var(--sg-radius) !important;
  color: var(--sg-text) !important;
}
.ui.form input:focus, .ui.form textarea:focus,
input:focus, textarea:focus, select:focus {
  border-color: var(--sg-accent) !important;
  outline: none !important;
  box-shadow: 0 0 0 2px var(--sg-accent-glow) !important;
}
.ui.form .field > label, .ui.form label {
  color: var(--sg-text-muted) !important;
  font-weight: 500 !important;
}

/* Code */
pre, code, .code-view, .code-diff {
  background: var(--sg-bg0) !important;
  border: 1px solid var(--sg-border) !important;
  border-radius: var(--sg-radius) !important;
  font-family: 'JetBrains Mono', 'Fira Code', monospace !important;
}
.code-view .lines-num {
  background: var(--sg-bg1) !important;
  color: var(--sg-text-dim) !important;
  border-right: 1px solid var(--sg-border) !important;
}
.code-view .lines-code { background: var(--sg-bg0) !important; color: var(--sg-text) !important; }
.code-view .lines-code .active, .code-view tr:target td { background: rgba(57,255,20,.06) !important; }

/* Diff */
.code-diff .del, .diff-file-box .del td, tr.del td { background: rgba(248,81,73,.12) !important; }
.code-diff .del .code { color: #f85149 !important; }
.code-diff .add, .diff-file-box .add td, tr.add td { background: rgba(57,255,20,.08) !important; }
.code-diff .add .code { color: var(--sg-accent) !important; }

/* File browser */
.repository.file.list .item { border-bottom: 1px solid var(--sg-border) !important; }
.repository.file.list .item:hover { background: var(--sg-bg3) !important; }
.repository.file.list .item .name a { color: var(--sg-text) !important; }
.repository.file.list .item .name a:hover { color: var(--sg-accent) !important; }
.repository.file.list .item .octicon-file-directory { color: var(--sg-accent-dim) !important; }

/* Commits */
.commits-table tr:hover td { background: var(--sg-bg3) !important; }
.commit-id, .ui.label.basic {
  background: var(--sg-bg0) !important;
  border-color: var(--sg-border) !important;
  color: var(--sg-accent) !important;
  font-family: monospace !important;
  border-radius: var(--sg-radius) !important;
}

/* Labels / Badges */
.ui.label {
  background: var(--sg-bg2) !important;
  border: 1px solid var(--sg-border) !important;
  color: var(--sg-text) !important;
  border-radius: var(--sg-radius) !important;
}
.ui.green.label, .issue-state-label.open {
  background: rgba(57,255,20,.15) !important;
  border-color: var(--sg-accent-dim) !important;
  color: var(--sg-accent) !important;
}
.ui.red.label, .issue-state-label.closed {
  background: rgba(248,81,73,.15) !important;
  border-color: var(--sg-red) !important;
  color: var(--sg-red) !important;
}
.ui.purple.label, .issue-state-label.merged {
  background: rgba(188,140,255,.15) !important;
  border-color: var(--sg-purple) !important;
  color: var(--sg-purple) !important;
}

/* Tables */
.ui.table {
  background: var(--sg-bg1) !important;
  border: 1px solid var(--sg-border) !important;
  color: var(--sg-text) !important;
  border-radius: var(--sg-radius-lg) !important;
  overflow: hidden !important;
}
.ui.table thead th {
  background: var(--sg-bg2) !important;
  border-bottom: 1px solid var(--sg-border) !important;
  color: var(--sg-text-muted) !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  font-size: .75rem !important;
  letter-spacing: .05em !important;
}
.ui.table tbody tr:hover td { background: var(--sg-bg3) !important; }
.ui.table td, .ui.table th { border-color: var(--sg-border) !important; }

/* Tabs */
.ui.tabular.menu {
  border-bottom: 1px solid var(--sg-border) !important;
  background: transparent !important;
}
.ui.tabular.menu .item {
  color: var(--sg-text-muted) !important;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  border-radius: 0 !important;
  margin-bottom: -1px !important;
}
.ui.tabular.menu .active.item, .ui.tabular.menu .item:hover {
  color: var(--sg-accent) !important;
  border-bottom-color: var(--sg-accent) !important;
  background: transparent !important;
}

/* Secondary menus */
.ui.secondary.menu { background: transparent !important; }
.ui.secondary.menu .item { color: var(--sg-text-muted) !important; border-radius: var(--sg-radius) !important; }
.ui.secondary.menu .item:hover, .ui.secondary.menu .active.item {
  background: var(--sg-bg3) !important;
  color: var(--sg-accent) !important;
}

/* Stats */
.ui.statistics .statistic .value { color: var(--sg-accent) !important; }
.ui.statistics .statistic .label { color: var(--sg-text-muted) !important; }

/* Issues */
.issue.list .item { border-bottom: 1px solid var(--sg-border) !important; }
.issue.list .item:hover { background: var(--sg-bg3) !important; }
.issue.list .item .title a { color: var(--sg-text) !important; font-weight: 500 !important; }
.issue.list .item .title a:hover { color: var(--sg-accent) !important; }

/* Pagination */
.ui.pagination.menu { background: transparent !important; border: none !important; box-shadow: none !important; }
.ui.pagination.menu .item {
  background: var(--sg-bg2) !important;
  border: 1px solid var(--sg-border) !important;
  color: var(--sg-text) !important;
  border-radius: var(--sg-radius) !important;
  margin: 0 2px !important;
}
.ui.pagination.menu .item:hover, .ui.pagination.menu .active.item {
  background: var(--sg-accent-dim) !important;
  border-color: var(--sg-accent) !important;
  color: var(--sg-bg0) !important;
}

/* Messages */
.ui.message {
  background: var(--sg-bg2) !important;
  border: 1px solid var(--sg-border) !important;
  border-radius: var(--sg-radius) !important;
  color: var(--sg-text) !important;
  box-shadow: none !important;
}
.ui.positive.message, .ui.success.message {
  background: rgba(57,255,20,.08) !important;
  border-color: var(--sg-accent-dim) !important;
  color: var(--sg-accent) !important;
}
.ui.negative.message, .ui.error.message {
  background: rgba(248,81,73,.1) !important;
  border-color: var(--sg-red) !important;
  color: var(--sg-red) !important;
}
.ui.warning.message {
  background: rgba(210,153,34,.1) !important;
  border-color: var(--sg-yellow) !important;
  color: var(--sg-yellow) !important;
}

/* Markdown */
.markdown-body { color: var(--sg-text) !important; }
.markdown-body h1 { color: var(--sg-accent) !important; border-bottom: 1px solid var(--sg-border) !important; }
.markdown-body h2, .markdown-body h3, .markdown-body h4 {
  color: var(--sg-text) !important;
  border-bottom: 1px solid var(--sg-border) !important;
}
.markdown-body blockquote {
  border-left: 3px solid var(--sg-accent-dim) !important;
  color: var(--sg-text-muted) !important;
  background: var(--sg-bg2) !important;
  border-radius: 0 var(--sg-radius) var(--sg-radius) 0 !important;
}
.markdown-body code {
  background: var(--sg-bg0) !important;
  color: var(--sg-accent) !important;
  border: 1px solid var(--sg-border) !important;
  border-radius: 4px !important;
}
.markdown-body pre { background: var(--sg-bg0) !important; border: 1px solid var(--sg-border) !important; }
.markdown-body pre code { border: none !important; color: var(--sg-text) !important; }
.markdown-body table th { background: var(--sg-bg2) !important; color: var(--sg-text-muted) !important; }
.markdown-body table td { border-color: var(--sg-border) !important; }
.markdown-body table tr:nth-child(even) td { background: var(--sg-bg1) !important; }
.markdown-body hr { border-color: var(--sg-border) !important; }
.markdown-body a { color: var(--sg-blue) !important; }
.markdown-body a:hover { color: var(--sg-accent) !important; }

/* Modal */
.ui.modal {
  background: var(--sg-bg1) !important;
  border: 1px solid var(--sg-border) !important;
  border-radius: var(--sg-radius-lg) !important;
}
.ui.modal > .header {
  background: var(--sg-bg2) !important;
  border-bottom: 1px solid var(--sg-border) !important;
  color: var(--sg-text) !important;
}
.ui.modal > .actions {
  background: var(--sg-bg2) !important;
  border-top: 1px solid var(--sg-border) !important;
}
.ui.dimmer { background: rgba(0,0,0,.7) !important; }

/* Comments */
.comment .content {
  background: var(--sg-bg1) !important;
  border: 1px solid var(--sg-border) !important;
  border-radius: var(--sg-radius-lg) !important;
}
.comment .content .header {
  background: var(--sg-bg2) !important;
  border-bottom: 1px solid var(--sg-border) !important;
  border-radius: var(--sg-radius-lg) var(--sg-radius-lg) 0 0 !important;
}

/* Footer */
#footer, .footer {
  background: var(--sg-bg1) !important;
  border-top: 1px solid var(--sg-border) !important;
  color: var(--sg-text-dim) !important;
}
#footer a, .footer a { color: var(--sg-text-muted) !important; }
#footer a:hover, .footer a:hover { color: var(--sg-accent) !important; }

/* Dividers / Breadcrumbs */
.ui.divider, .ui.horizontal.divider { border-color: var(--sg-border) !important; color: var(--sg-text-dim) !important; }
.ui.breadcrumb .section { color: var(--sg-text-muted) !important; }
.ui.breadcrumb .active.section { color: var(--sg-text) !important; }
.ui.breadcrumb .divider { color: var(--sg-text-dim) !important; }

/* Progress */
.ui.progress { background: var(--sg-bg0) !important; border: 1px solid var(--sg-border) !important; border-radius: var(--sg-radius) !important; }
.ui.progress .bar { background: var(--sg-accent) !important; border-radius: var(--sg-radius) !important; }

/* Syntax highlight */
.chroma .k,  .hljs-keyword  { color: #ff7b72 !important; }
.chroma .s,  .hljs-string   { color: #a5d6ff !important; }
.chroma .c,  .hljs-comment  { color: var(--sg-text-dim) !important; font-style: italic !important; }
.chroma .nb, .hljs-built_in { color: #ffa657 !important; }
.chroma .nf, .hljs-function { color: #d2a8ff !important; }
.chroma .mi, .hljs-number   { color: #79c0ff !important; }
.chroma .o,  .hljs-operator { color: var(--sg-accent) !important; }
.chroma .p               { color: var(--sg-text-muted) !important; }