/*
 * cgit-opentux.css — krypt/sh theme for cgit
 *
 * Design tokens (mirrors main.css):
 *   --bg-dark:      #111114
 *   --bg-panel:     #0f0f0f
 *   --bg-terminal:  #050505
 *   --green-glow:   #33ff33
 *   --green-dim:    #1a8a1a
 *   --green-text:   #44dd44
 *   --green-muted:  #2a7a2a
 *   --blue-accent:  #607080
 *   --blue-bright:  #90a0b0
 *   --gold-star:    #ffcc00
 *   --gold-dim:     #aa8800
 *   --text-primary: #c0c8d8
 *   --text-dim:     #4a5568
 *   --border:       #1c1c1c
 */

/* ── Reset & base ────────────────────────────────────────── */

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

html, body {
	background: #111114;
	color: #c0c8d8;
	font-family: 'JetBrains Mono', 'Consolas', 'Courier New', monospace;
	font-size: 10pt;
	line-height: 1.6;
}

a {
	color: #90a0b0;
	text-decoration: none;
}

a:hover {
	color: #c0c8d8;
	text-decoration: underline;
}

img {
	border: none;
}

/* ── Main cgit container ─────────────────────────────────── */

div#cgit {
	color: #c0c8d8;
	background: #111114;
	font-family: 'JetBrains Mono', 'Consolas', monospace;
	font-size: 10pt;
	padding: 0;
	margin: 0;
}

div#cgit a {
	color: #90a0b0;
	text-decoration: none;
}

div#cgit a:hover {
	color: #c0c8d8;
	text-decoration: underline;
}

/* ── Header ─────────────────────────────────────────────── */

div#cgit table#header {
	width: 100%;
	margin-bottom: 1em;
	border-collapse: collapse;
}

div#cgit table#header td.logo {
	width: 96px;
	vertical-align: top;
}

div#cgit table#header td.main {
	font-size: 200%;
	padding-left: 12px;
	white-space: nowrap;
	font-family: 'JetBrains Mono', monospace;
	letter-spacing: 2px;
}

div#cgit table#header td.main a {
	color: #c0c8d8;
	text-decoration: none;
}

div#cgit table#header td.main a:hover {
	color: #ffcc00;
}

div#cgit table#header td.sub {
	color: #4a5568;
	border-top: solid 1px #1c1c1c;
	padding-left: 12px;
	font-size: 85%;
	letter-spacing: 1px;
}

div#cgit table#header td.form {
	text-align: right;
	vertical-align: bottom;
	padding-right: 1em;
	padding-bottom: 2px;
	white-space: nowrap;
}

div#cgit table#header td.form form,
div#cgit table#header td.form input,
div#cgit table#header td.form select {
	font-size: 90%;
}

/* ── Tabs (summary / log / tree / commit / diff) ─────────── */

div#cgit table.tabs {
	border-bottom: solid 2px #1c1c1c;
	border-collapse: collapse;
	margin-top: 1.5em;
	margin-bottom: 0;
	width: 100%;
}

div#cgit table.tabs td {
	padding: 0 1em;
	vertical-align: bottom;
}

div#cgit table.tabs td a {
	display: inline-block;
	padding: 4px 0.75em;
	color: #aa8800;
	font-size: 95%;
	letter-spacing: 1px;
	text-decoration: none;
}

div#cgit table.tabs td a:hover {
	color: #ffcc00;
	text-shadow: 0 0 8px rgba(255, 204, 0, 0.4);
	text-decoration: none;
}

div#cgit table.tabs td a.active {
	color: #ffcc00;
	background-color: #0f0f0f;
	border: 1px solid #1c1c1c;
	border-bottom: none;
}

div#cgit table.tabs td.form {
	text-align: right;
}

div#cgit table.tabs td.form form {
	padding-bottom: 2px;
	font-size: 90%;
	white-space: nowrap;
}

div#cgit table.tabs td.form input,
div#cgit table.tabs td.form select {
	font-size: 90%;
}

/* ── Path bar ───────────────────────────────────────────── */

div#cgit div.path {
	margin: 0;
	padding: 5px 2em 4px 2em;
	color: #c0c8d8;
	background-color: #0f0f0f;
	border-bottom: 1px solid #1c1c1c;
	font-size: 90%;
}

div#cgit div.path a {
	color: #90a0b0;
}

/* ── Content area ───────────────────────────────────────── */

div#cgit div.content {
	margin: 0;
	padding: 1.5em 2em;
	border-bottom: solid 2px #1c1c1c;
}

/* ── Repo index & log list tables ───────────────────────── */

div#cgit table.list {
	width: 100%;
	border: none;
	border-collapse: collapse;
}

div#cgit table.list tr {
	background: #111114;
}

div#cgit table.list tr.logheader {
	background: #0f0f0f;
	color: #4a5568;
	font-size: 85%;
}

div#cgit table.list tr:nth-child(even) {
	background: #0d0d10;
}

div#cgit table.list tr:nth-child(odd) {
	background: #111114;
}

div#cgit table.list tr:hover {
	background: #0f0f0f;
}

div#cgit table.list tr.nohover,
div#cgit table.list tr.nohover:hover {
	background: #111114;
}

div#cgit table.list tr.nohover-highlight:hover:nth-child(even) {
	background: #0d0d10;
}

div#cgit table.list tr.nohover-highlight:hover:nth-child(odd) {
	background: #111114;
}

div#cgit table.list th {
	font-weight: 600;
	text-align: left;
	text-transform: uppercase;
	letter-spacing: 2px;
	font-size: 80%;
	color: #4a5568;
	padding: 0.3em 0.5em;
	border-bottom: 1px solid #1c1c1c;
	vertical-align: baseline;
}

div#cgit table.list th.ls-size {
	text-align: right;
}

div#cgit table.list td {
	border: none;
	padding: 0.2em 0.5em;
	color: #c0c8d8;
}

div#cgit table.list td a {
	color: #90a0b0;
}

div#cgit table.list td a:hover {
	color: #c0c8d8;
	text-decoration: none;
}

div#cgit table.list td a.ls-dir {
	color: #ffcc00;
	font-weight: bold;
}

div#cgit table.list td a.ls-dir:hover {
	color: #ffe040;
}

div#cgit table.list td.logsubject {
	font-family: monospace;
	font-weight: bold;
	color: #c0c8d8;
}

div#cgit table.list td.logmsg {
	font-family: monospace;
	white-space: pre;
	padding: 0 0.5em;
	color: #4a5568;
}

/* ── Commit graph ───────────────────────────────────────── */

div#cgit table.list td.commitgraph {
	font-family: monospace;
	white-space: pre;
}

div#cgit table.list td.commitgraph .column1 { color: #ff6666; }
div#cgit table.list td.commitgraph .column2 { color: #44dd44; }
div#cgit table.list td.commitgraph .column3 { color: #ffcc00; }
div#cgit table.list td.commitgraph .column4 { color: #90a0b0; }
div#cgit table.list td.commitgraph .column5 { color: #cc66ff; }
div#cgit table.list td.commitgraph .column6 { color: #44dddd; }

/* ── Ref badges (HEAD, branch, tag) ─────────────────────── */

div#cgit span.refs span {
	padding: 1px 6px;
	border-radius: 2px;
	font-size: 78%;
	font-family: 'JetBrains Mono', monospace;
}

div#cgit span.refs span.head {
	background: #1a1a1a;
	color: #ff6666;
	border: 1px solid #cc4444;
}

div#cgit span.refs span.tag {
	background: #1a1a1a;
	color: #ffcc00;
	border: 1px solid #aa8800;
}

div#cgit span.refs span.remote {
	background: #1a1a1a;
	color: #90a0b0;
	border: 1px solid #607080;
}

/* ── Commit info ────────────────────────────────────────── */

div#cgit table.commit-info {
	border-collapse: collapse;
	margin-top: 1.5em;
}

div#cgit table.commit-info th {
	text-align: left;
	font-weight: normal;
	color: #4a5568;
	padding: 0.15em 1.5em 0.15em 0.1em;
	vertical-align: top;
	white-space: nowrap;
	font-size: 90%;
}

div#cgit table.commit-info td {
	font-weight: normal;
	color: #c0c8d8;
	padding: 0.15em 1em 0.15em 0.1em;
}

div#cgit div.commit-subject {
	font-weight: bold;
	font-size: 120%;
	margin: 1.5em 0 0.5em 0;
	color: #c0c8d8;
}

div#cgit div.commit-msg {
	white-space: pre;
	font-family: monospace;
	color: #4a5568;
	margin-top: 1em;
	line-height: 1.5;
}

/* ── Diff view ──────────────────────────────────────────── */

div#cgit table.diff {
	width: 100%;
	border-collapse: collapse;
}

div#cgit table.diff td {
	font-family: 'JetBrains Mono', monospace;
	font-size: 90%;
	white-space: pre;
	color: #c0c8d8;
	padding: 0 0.5em;
}

div#cgit table.diff td div.head {
	color: #90a0b0;
	font-weight: bold;
	background: #0f0f0f;
	border-left: 3px solid #607080;
	padding: 0.4em 0.5em;
	margin: 0.5em 0 0 0;
}

div#cgit table.diff td div.hunk {
	color: #607080;
	background: #0f0f0f;
	padding: 2px 0;
	margin: 4px 0;
	border-left: 3px solid #1c1c1c;
}

div#cgit table.diff td div.add,
div#cgit table.diff td span.add {
	color: #44dd44;
	background: rgba(26, 138, 26, 0.15);
}

div#cgit table.diff td div.del,
div#cgit table.diff td span.del {
	color: #ff6666;
	background: rgba(204, 68, 68, 0.15);
}

div#cgit table.diff td div.ctx,
div#cgit table.diff td span.ctx {
	color: #c0c8d8;
}

/* ── Side-by-side diff ──────────────────────────────────── */

div#cgit table.ssdiff {
	width: 100%;
	border-collapse: collapse;
	color: #c0c8d8;
}

div#cgit table.ssdiff td {
	font-family: 'JetBrains Mono', monospace;
	font-size: 88%;
	white-space: pre;
	border-left: solid 1px #1c1c1c;
	border-right: none;
	padding: 0 0.5em;
}

div#cgit table.ssdiff td.add {
	background: rgba(26, 138, 26, 0.15);
	color: #44dd44;
}

div#cgit table.ssdiff td.del {
	background: rgba(204, 68, 68, 0.15);
	color: #ff6666;
}

div#cgit table.ssdiff td.changed {
	background: rgba(96, 112, 128, 0.08);
	color: #c0c8d8;
}

div#cgit table.ssdiff td.lineno {
	background: #0f0f0f;
	border-right: solid 1px #1c1c1c;
	text-align: right;
	padding: 0 0.5em;
}

div#cgit table.ssdiff td.lineno a {
	color: #2a7a2a;
	text-decoration: none;
}

div#cgit table.ssdiff td.lineno a:hover {
	color: #44dd44;
}

div#cgit table.ssdiff td.hunk {
	color: #607080;
	background: #0f0f0f;
}

div#cgit table.ssdiff td.head div.head {
	color: #90a0b0;
	font-weight: bold;
}

/* ── Diffstat ───────────────────────────────────────────── */

div#cgit table.diffstat {
	border: solid 1px #1c1c1c;
	border-collapse: collapse;
	background-color: #0f0f0f;
	margin-bottom: 1em;
}

div#cgit table.diffstat th {
	color: #4a5568;
	font-weight: normal;
	font-size: 85%;
	padding: 0.3em 0.75em;
	border-bottom: 1px solid #1c1c1c;
	text-align: left;
}

div#cgit table.diffstat td {
	color: #c0c8d8;
	padding: 0.2em 0.75em;
}

div#cgit table.diffstat td.add a {
	color: #44dd44;
}

div#cgit table.diffstat td.del a {
	color: #ff6666;
}

div#cgit table.diffstat td.upd a {
	color: #90a0b0;
}

div#cgit table.diffstat td.graph td.add {
	background-color: #1a8a1a;
}

div#cgit table.diffstat td.graph td.rem {
	background-color: #cc4444;
}

/* ── Source / blob view ─────────────────────────────────── */

div#cgit div#blob {
	border: solid 1px #1c1c1c;
}

div#cgit table.blob {
	margin-top: 0.5em;
	border-top: solid 1px #1c1c1c;
	border-collapse: collapse;
	width: 100%;
}

div#cgit table.blob td.hashes,
div#cgit table.blob td.lines {
	margin: 0;
	padding: 0 0 0 0.5em;
	vertical-align: top;
	color: #c0c8d8;
}

div#cgit table.blob td.linenumbers {
	margin: 0;
	padding: 0 0.5em;
	vertical-align: top;
	text-align: right;
	border-right: 1px solid #1a8a1a;
	background: #0f0f0f;
	user-select: none;
}

div#cgit table.blob td.linenumbers a,
div#cgit table.ssdiff td.lineno a {
	color: #2a7a2a;
	text-align: right;
	text-decoration: none;
}

div#cgit table.blob td.linenumbers a:hover {
	color: #44dd44;
}

div#cgit table.blob pre {
	padding: 0;
	margin: 0;
	color: #c0c8d8;
	font-family: 'JetBrains Mono', monospace;
	font-size: 90%;
	line-height: 1.5;
}

/* ── Blame ──────────────────────────────────────────────── */

div#cgit table.blame td.hashes,
div#cgit table.blame td.lines,
div#cgit table.blame td.linenumbers {
	padding: 0;
}

div#cgit table.blame td.hashes div.alt,
div#cgit table.blame td.lines div.alt {
	padding: 0 0.5em;
}

div#cgit table.blame td.linenumbers div.alt {
	padding: 0 0.5em 0 0;
}

div#cgit table.blame div.alt:nth-child(even) {
	background: #0d0d10;
}

div#cgit table.blame div.alt:nth-child(odd) {
	background: #111114;
}

div#cgit table.blame td.lines > div {
	position: relative;
}

div#cgit table.blame td.lines > div > pre {
	padding: 0 0 0 0.5em;
	position: absolute;
	top: 0;
}

div#cgit table.blame .oid {
	font-size: 95%;
	color: #607080;
}

/* ── Binary blob ────────────────────────────────────────── */

div#cgit table.bin-blob {
	margin-top: 0.5em;
	border: solid 1px #1c1c1c;
	border-collapse: collapse;
}

div#cgit table.bin-blob th {
	font-family: monospace;
	white-space: pre;
	border: solid 1px #1c1c1c;
	padding: 0.4em 1em;
	background: #0f0f0f;
	color: #4a5568;
}

div#cgit table.bin-blob td {
	font-family: monospace;
	white-space: pre;
	border-left: solid 1px #1c1c1c;
	padding: 0 1em;
	color: #c0c8d8;
}

/* ── Notes ──────────────────────────────────────────────── */

div#cgit div.notes {
	border: solid 1px #1c1c1c;
	background-color: #0f0f0f;
	color: #c0c8d8;
	padding: 0.75em 1em;
	margin: 0.5em 0;
}

/* ── Stats ──────────────────────────────────────────────── */

div#cgit table.stats {
	border: solid 1px #1c1c1c;
	border-collapse: collapse;
}

div#cgit table.stats th {
	background: #0f0f0f;
	color: #4a5568;
	border: solid 1px #1c1c1c;
	padding: 0.3em 0.75em;
	font-weight: normal;
	font-size: 85%;
}

div#cgit table.stats td {
	border: solid 1px #1c1c1c;
	color: #c0c8d8;
	padding: 0.2em 0.75em;
}

/* ── cgit panel (format selector etc.) ─────────────────── */

div#cgit div.cgit-panel {
	float: right;
	margin-top: 1.5em;
}

div#cgit div.cgit-panel table {
	border-collapse: collapse;
	border: solid 1px #1c1c1c;
	background-color: #0f0f0f;
}

div#cgit div.cgit-panel th {
	text-align: center;
	color: #4a5568;
	font-weight: normal;
	font-size: 85%;
	padding: 0.3em 0.5em;
}

div#cgit div.cgit-panel td {
	padding: 0.25em 0.5em;
	color: #c0c8d8;
}

/* ── Downloads table ────────────────────────────────────── */

div#cgit table#downloads {
	float: right;
	border-collapse: collapse;
	border: solid 1px #1c1c1c;
	margin-left: 0.5em;
	margin-bottom: 0.5em;
}

div#cgit table#downloads th {
	background-color: #0f0f0f;
	color: #4a5568;
	padding: 0.3em 0.75em;
	font-weight: normal;
	font-size: 85%;
	text-transform: uppercase;
	letter-spacing: 1px;
}

div#cgit table#downloads td {
	padding: 0.2em 0.75em;
}

/* ── Sidebar / tree grid ────────────────────────────────── */

div#cgit table#grid {
	margin: 0;
}

div#cgit td#content {
	vertical-align: top;
	padding: 1em 2em 1em 1em;
	border: none;
}

div#cgit td#sidebar {
	vertical-align: top;
	padding: 1em;
	width: 16em;
}

div#cgit td#sidebar input.txt {
	width: 100%;
	margin: 2px 0 0 0;
}

div#cgit div#summary {
	vertical-align: top;
	margin-bottom: 1em;
}

/* ── Tree view: file/dir name columns ───────────────────── */

div#cgit a.ls-blob,
div#cgit a.ls-dir,
div#cgit .ls-mod {
	font-family: 'JetBrains Mono', monospace;
}

div#cgit a.ls-blob {
	color: #90a0b0;
}

div#cgit a.ls-blob:hover {
	color: #c0c8d8;
}

div#cgit td.ls-size {
	text-align: right;
	font-family: monospace;
	width: 8em;
	color: #4a5568;
}

div#cgit th.ls-size {
	text-align: right;
}

div#cgit td.ls-mode {
	font-family: monospace;
	width: 10em;
	color: #4a5568;
}

/* ── Tree action links (log / stats / plain / blame) ────── */

div#cgit table.list td a {
	margin-right: 0.35em;
}

/* ── Form elements ──────────────────────────────────────── */

div#cgit input,
div#cgit select,
div#cgit textarea {
	background: #0f0f0f;
	color: #c0c8d8;
	border: 1px solid #1c1c1c;
	font-family: 'JetBrains Mono', monospace;
	font-size: 90%;
	padding: 3px 8px;
}

div#cgit input:focus,
div#cgit select:focus,
div#cgit textarea:focus {
	border-color: #607080;
	outline: none;
	box-shadow: 0 0 4px rgba(96, 112, 128, 0.3);
}

div#cgit input#switch-btn {
	margin: 2px 0 0 0;
}

/* ── Error ──────────────────────────────────────────────── */

div#cgit div.error {
	color: #ff6666;
	font-weight: bold;
	margin: 1em 2em;
}

/* ── Footer ─────────────────────────────────────────────── */

div#cgit div.footer {
	color: #4a5568;
	text-align: center;
	padding: 2em 1em;
	font-size: 82%;
	border-top: 1px solid #1c1c1c;
}

div#cgit div.footer a {
	color: #607080;
}

div#cgit div.footer a:hover {
	color: #90a0b0;
}

/* ── About / markdown pages ─────────────────────────────── */

div#cgit div.content h1,
div#cgit div.content h2,
div#cgit div.content h3 {
	color: #c0c8d8;
	font-family: 'JetBrains Mono', monospace;
	font-weight: 600;
	margin: 1em 0 0.5em 0;
}

div#cgit div.content p {
	color: #c0c8d8;
	margin: 0.5em 0;
	line-height: 1.7;
}

div#cgit div.content code {
	background: #0f0f0f;
	color: #44dd44;
	padding: 1px 5px;
	border: 1px solid #1c1c1c;
	font-family: 'JetBrains Mono', monospace;
	font-size: 88%;
}

div#cgit div.content pre {
	background: #0f0f0f;
	border: 1px solid #1c1c1c;
	padding: 1em;
	color: #44dd44;
	font-family: 'JetBrains Mono', monospace;
	font-size: 88%;
	overflow-x: auto;
}

/* ── Scrollbar (Chromium/Webkit) ────────────────────────── */

div#cgit ::-webkit-scrollbar {
	width: 6px;
	height: 6px;
}

div#cgit ::-webkit-scrollbar-track {
	background: #111114;
}

div#cgit ::-webkit-scrollbar-thumb {
	background: #1c1c1c;
	border-radius: 3px;
}

div#cgit ::-webkit-scrollbar-thumb:hover {
	background: #2a2a2a;
}

/* ── Nowrap helper ──────────────────────────────────────── */

div#cgit table.nowrap td {
	white-space: nowrap;
}
