/*
 * LAIN THEME for Forgejo
 * A refined dark theme inspired by Serial Experiments Lain
 * Warm undertones with soft cyan accents
 */

:root {
  /* Core Palette - Warm, softer darks */
  --lain-bg-deep: #1a1816;
  --lain-bg: #211f1c;
  --lain-bg-elevated: #2a2724;
  --lain-bg-hover: #33302c;
  --lain-bg-active: #3d3935;
  --lain-card: #1e1c19;

  /* Accent - Warm terracotta/rust */
  --lain-accent: #B76F3F;
  --lain-accent-soft: #a5633a;
  --lain-accent-muted: rgba(183, 111, 63, 0.20);
  --lain-accent-subtle: rgba(183, 111, 63, 0.10);

  /* Secondary - Warm amber/gold */
  --lain-rose: #c9a66b;
  --lain-rose-soft: #b8956a;

  /* Text hierarchy - All #c4a88e based */
  --lain-text: #c4a88e;
  --lain-text-secondary: #c4a88e;
  --lain-text-muted: #a08870;
  --lain-text-bright: #d4b89e;

  /* Borders - None */
  --lain-border: transparent;
  --lain-border-light: transparent;

  /* Semantic - Warm palette */
  --lain-success: #8a9a5b;
  --lain-warning: #d4a857;
  --lain-error: #c75c5c;
  --lain-info: #b78f6a;

  /* Shadows - Softer */
  --lain-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  --lain-shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.25);

  /* Forgejo CSS Variables */
  --color-primary: var(--lain-accent);
  --color-primary-dark-1: var(--lain-accent-soft);
  --color-primary-light-1: var(--lain-accent);
  --color-primary-alpha-10: var(--lain-accent-subtle);
  --color-primary-alpha-20: var(--lain-accent-muted);

  --color-secondary: var(--lain-rose);
  --color-red: var(--lain-error);
  --color-green: var(--lain-success);
  --color-yellow: var(--lain-warning);
  --color-blue: var(--lain-info);
  --color-cyan: var(--lain-accent);

  --color-body: var(--lain-bg);
  --color-box-header: var(--lain-bg-elevated);
  --color-box-body: var(--lain-card);
  --color-box-body-highlight: var(--lain-bg-hover);

  --color-text: var(--lain-text);
  --color-text-dark: var(--lain-text-bright);
  --color-text-light: var(--lain-text-secondary);
  --color-text-light-1: var(--lain-text-secondary);
  --color-text-light-2: var(--lain-text-muted);
  --color-text-light-3: var(--lain-text-muted);

  --color-input-text: var(--lain-text);
  --color-input-background: var(--lain-bg-deep);
  --color-input-border: var(--lain-border);

  --color-hover-bg: var(--lain-bg-hover);
  --color-active-bg: var(--lain-bg-active);

  --color-menu-bg: var(--lain-bg-elevated);
  --color-menu-bg-hover: var(--lain-bg-hover);
  --color-menu-border: var(--lain-border);

  --color-card: var(--lain-card);
  --color-card-border: var(--lain-border);

  --color-button: var(--lain-bg-hover);
  --color-button-hover: var(--lain-bg-active);

  --color-header-bg: var(--lain-bg-elevated);
  --color-header-border: var(--lain-border);

  --color-nav-bg: var(--lain-bg-elevated);
  --color-nav-hover-bg: var(--lain-bg-hover);
  --color-footer-bg: var(--lain-bg-deep);

  --color-shadow: rgba(0, 0, 0, 0.25);

  --color-diff-removed-row-bg: rgba(199, 92, 92, 0.12);
  --color-diff-added-row-bg: rgba(138, 154, 91, 0.12);
  --color-diff-removed-word-bg: rgba(199, 92, 92, 0.28);
  --color-diff-added-word-bg: rgba(138, 154, 91, 0.28);

  /* Border radius */
  --border-radius: 6px;
  --border-radius-sm: 4px;
}

/* ═══════════════════════════════════════════
   BASE STYLES
   ═══════════════════════════════════════════ */

body {
  background: var(--lain-bg) !important;
  color: var(--lain-text) !important;
}

a {
  color: var(--lain-accent) !important;
  text-decoration: none !important;
  transition: color 0.15s ease !important;
}

a:hover {
  color: var(--lain-text-bright) !important;
}

::selection {
  background: var(--lain-accent-muted) !important;
  color: var(--lain-text-bright) !important;
}

/* ═══════════════════════════════════════════
   NAVIGATION
   ═══════════════════════════════════════════ */

.ui.secondary.menu,
.ui.secondary.pointing.menu,
.full.height > .navbar,
.navbar,
.secondary-nav,
.ui.container.fluid.secondary-nav {
  background: var(--lain-bg-elevated) !important;
  border: none !important;
  box-shadow: none !important;
}

/* Remove all header/nav separator lines except main navbar */
.home.header,
.page-content > .ui.secondary,
.ui.horizontal.divider,
.repo-header,
.secondary-nav {
  border: none !important;
}

.ui.secondary.menu .item,
.ui.secondary.pointing.menu .item,
.navbar .item {
  color: var(--lain-text-secondary) !important;
  border-radius: var(--border-radius-sm) !important;
  margin: 2px !important;
  transition: all 0.15s ease !important;
}

.ui.secondary.menu .item:hover,
.ui.secondary.pointing.menu .item:hover,
.navbar .item:hover {
  background: var(--lain-bg-hover) !important;
  color: var(--lain-text) !important;
}

.ui.secondary.menu .active.item,
.ui.secondary.pointing.menu .active.item,
.navbar .active.item {
  background: var(--lain-accent-subtle) !important;
  color: var(--lain-accent) !important;
  border-color: transparent !important;
}

.navbar .brand,
.navbar .logo {
  color: var(--lain-text-bright) !important;
}

/* ═══════════════════════════════════════════
   BUTTONS
   ═══════════════════════════════════════════ */

.ui.button,
.ui.basic.button {
  background: var(--lain-bg-hover) !important;
  color: var(--lain-text) !important;
  border: 1px solid var(--lain-border) !important;
  border-radius: var(--border-radius) !important;
  box-shadow: none !important;
  transition: all 0.15s ease !important;
  font-weight: 500 !important;
}

.ui.button:hover,
.ui.basic.button:hover {
  background: var(--lain-bg-active) !important;
  border-color: var(--lain-border-light) !important;
  color: var(--lain-text-bright) !important;
}

.ui.primary.button {
  background: var(--lain-accent) !important;
  color: var(--lain-bg-deep) !important;
  border: none !important;
  font-weight: 600 !important;
}

.ui.primary.button:hover {
  background: var(--lain-accent-soft) !important;
  color: var(--lain-bg-deep) !important;
}

.ui.green.button {
  background: var(--lain-success) !important;
  color: var(--lain-bg-deep) !important;
  border: none !important;
}

.ui.red.button {
  background: var(--lain-error) !important;
  color: var(--lain-bg-deep) !important;
  border: none !important;
}

.ui.basic.red.button {
  background: transparent !important;
  color: var(--lain-error) !important;
  border: 1px solid var(--lain-error) !important;
}

.ui.basic.green.button {
  background: transparent !important;
  color: var(--lain-success) !important;
  border: 1px solid var(--lain-success) !important;
}

/* ═══════════════════════════════════════════
   FORMS & INPUTS
   ═══════════════════════════════════════════ */

.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 input[type="number"],
.ui.form input[type="search"],
.ui.form textarea,
.ui.form select,
.ui.selection.dropdown,
.ui.search .prompt,
input,
textarea,
select {
  background: var(--lain-bg-deep) !important;
  color: var(--lain-text) !important;
  border: 1px solid var(--lain-border) !important;
  border-radius: var(--border-radius) !important;
  transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
}

.ui.input input:focus,
.ui.form input:focus,
.ui.form textarea:focus,
.ui.form select:focus,
.ui.selection.dropdown:focus,
input:focus,
textarea:focus,
select:focus {
  background: var(--lain-bg-deep) !important;
  border-color: var(--lain-accent-soft) !important;
  box-shadow: 0 0 0 2px var(--lain-accent-subtle) !important;
  outline: none !important;
}

.ui.form .field > label {
  color: var(--lain-text) !important;
}

::placeholder {
  color: var(--lain-text-muted) !important;
  opacity: 1 !important;
}

/* ═══════════════════════════════════════════
   CARDS & SEGMENTS
   ═══════════════════════════════════════════ */

.ui.segment,
.ui.segments {
  background: var(--lain-bg-elevated) !important;
  border: 1px solid var(--lain-border) !important;
  border-radius: var(--border-radius) !important;
  box-shadow: var(--lain-shadow) !important;
}

.ui.card,
.ui.cards > .card {
  background: var(--lain-card) !important;
  border: none !important;
  border-radius: var(--border-radius) !important;
  box-shadow: var(--lain-shadow) !important;
}

.ui.card > .content,
.ui.cards > .card > .content {
  border: none !important;
  background: transparent !important;
}

.ui.card .header,
.ui.cards > .card .header {
  color: var(--lain-text-bright) !important;
}

.ui.card .meta,
.ui.cards > .card .meta {
  color: var(--lain-text-secondary) !important;
}

.ui.card .description,
.ui.cards > .card .description {
  color: var(--lain-text) !important;
}

/* User Profile Card - Darker */
.user-card,
.ui.user.card,
.user.profile.card,
#profile-avatar-card,
.user-profile-card {
  background: var(--lain-bg-deep) !important;
  border: 1px solid var(--lain-border) !important;
}

/* Profile avatars - squared with rounded corners */
.user.profile .avatar,
.user.profile .ui.avatar,
#profile-avatar-card img,
.user-card img.avatar,
.ui.card .image img {
  border-radius: 8px !important;
}

/* ═══════════════════════════════════════════
   REPOSITORY LIST & ITEMS
   ═══════════════════════════════════════════ */

.repository.list > .item,
.repo-list-item,
.flex-item {
  background: var(--lain-card) !important;
  border: 1px solid var(--lain-border) !important;
  border-radius: var(--border-radius) !important;
  padding: 16px !important;
  margin-bottom: 8px !important;
  transition: all 0.15s ease !important;
}

.repository.list > .item:hover,
.repo-list-item:hover,
.flex-item:hover {
  border-color: var(--lain-border-light) !important;
  background: var(--lain-bg-elevated) !important;
}

.repository.list > .item .header a,
.repo-list-item .header a {
  color: var(--lain-accent) !important;
  font-weight: 600 !important;
}

.repository.list > .item .header a:hover,
.repo-list-item .header a:hover {
  color: var(--lain-text-bright) !important;
}

/* ═══════════════════════════════════════════
   REPOSITORY VIEW
   ═══════════════════════════════════════════ */

.repo-header {
  background: var(--lain-bg-elevated) !important;
  border-bottom: none !important;
  padding: 16px 0 !important;
}

#repo-files-table {
  background: var(--lain-bg-elevated) !important;
  border: 1px solid var(--lain-border) !important;
  border-radius: var(--border-radius) !important;
}

#repo-files-table tr {
  border-bottom: 1px solid var(--lain-border) !important;
}

#repo-files-table tr:last-child {
  border-bottom: none !important;
}

#repo-files-table tr:hover {
  background: var(--lain-bg-hover) !important;
}

#repo-files-table td,
#repo-files-table th {
  color: var(--lain-text) !important;
  padding: 10px 16px !important;
}

#repo-files-table .svg {
  color: var(--lain-text-secondary) !important;
}

/* ═══════════════════════════════════════════
   CODE & SYNTAX
   ═══════════════════════════════════════════ */

.highlight,
pre,
code,
.code-view,
.CodeMirror {
  background: var(--lain-bg-deep) !important;
  color: var(--lain-text) !important;
  border: 1px solid var(--lain-border) !important;
  border-radius: var(--border-radius) !important;
  font-family: 'JetBrains Mono', 'Fira Code', 'SF Mono', Consolas, monospace !important;
}

code {
  padding: 2px 6px !important;
  font-size: 0.9em !important;
}

pre code {
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
}

.code-view .lines-num {
  background: var(--lain-bg) !important;
  border-right: 1px solid var(--lain-border) !important;
  color: var(--lain-text-muted) !important;
}

.code-view .lines-code {
  background: var(--lain-bg-deep) !important;
}

/* Syntax Colors - Warm palette */
.highlight .k, .highlight .kd, .highlight .kn, .highlight .kp, .highlight .kr, .highlight .kt,
.pl-k {
  color: #c75c5c !important;
}

.highlight .s, .highlight .s1, .highlight .s2, .highlight .sb, .highlight .sc,
.highlight .sd, .highlight .se, .highlight .sh, .highlight .si, .highlight .sx, .highlight .sr, .highlight .ss,
.pl-s {
  color: #8a9a5b !important;
}

.highlight .c, .highlight .c1, .highlight .cm, .highlight .cp, .highlight .cs,
.pl-c {
  color: var(--lain-text-muted) !important;
  font-style: italic !important;
}

.highlight .nf, .highlight .nb, .highlight .nc,
.pl-en {
  color: var(--lain-accent) !important;
}

.highlight .mi, .highlight .mf, .highlight .mh, .highlight .mo,
.pl-c1 {
  color: #d4a857 !important;
}

.highlight .o, .highlight .p {
  color: var(--lain-text-secondary) !important;
}

.highlight .na, .highlight .nl {
  color: #c9a66b !important;
}

.highlight .nv, .highlight .vi, .highlight .vg, .highlight .vc,
.pl-v {
  color: #b78f6a !important;
}

/* ═══════════════════════════════════════════
   TABLES
   ═══════════════════════════════════════════ */

.ui.table {
  background: var(--lain-bg-elevated) !important;
  color: var(--lain-text) !important;
  border: 1px solid var(--lain-border) !important;
  border-radius: var(--border-radius) !important;
}

.ui.table thead th {
  background: var(--lain-bg-hover) !important;
  color: var(--lain-text) !important;
  border-bottom: 1px solid var(--lain-border) !important;
  font-weight: 600 !important;
}

.ui.table tbody tr {
  background: var(--lain-bg-elevated) !important;
}

.ui.table tbody tr:hover {
  background: var(--lain-bg-hover) !important;
}

.ui.table td,
.ui.table th {
  border-color: var(--lain-border) !important;
}

/* ═══════════════════════════════════════════
   DROPDOWNS & MENUS
   ═══════════════════════════════════════════ */

.ui.dropdown .menu,
.ui.selection.dropdown .menu,
.ui.pointing.dropdown > .menu,
.tippy-box,
.tippy-content {
  background: var(--lain-bg-elevated) !important;
  border: 1px solid var(--lain-border) !important;
  border-radius: var(--border-radius) !important;
  box-shadow: var(--lain-shadow-lg) !important;
}

.ui.dropdown .menu > .item,
.ui.selection.dropdown .menu > .item {
  color: var(--lain-text) !important;
  border: none !important;
  padding: 10px 16px !important;
}

.ui.dropdown .menu > .item:hover,
.ui.selection.dropdown .menu > .item:hover {
  background: var(--lain-bg-hover) !important;
  color: var(--lain-text-bright) !important;
}

.ui.dropdown .menu > .item.selected,
.ui.dropdown .menu > .item.active {
  background: var(--lain-accent-subtle) !important;
  color: var(--lain-accent) !important;
}

/* ═══════════════════════════════════════════
   LABELS & BADGES
   ═══════════════════════════════════════════ */

.ui.label {
  background: var(--lain-bg-hover) !important;
  color: var(--lain-text) !important;
  border: 1px solid var(--lain-border) !important;
  border-radius: var(--border-radius-sm) !important;
}

.ui.green.label {
  background: rgba(138, 154, 91, 0.15) !important;
  color: var(--lain-success) !important;
  border-color: rgba(138, 154, 91, 0.4) !important;
}

.ui.red.label {
  background: rgba(199, 92, 92, 0.15) !important;
  color: var(--lain-error) !important;
  border-color: rgba(199, 92, 92, 0.4) !important;
}

.ui.blue.label,
.ui.orange.label {
  background: var(--lain-accent-subtle) !important;
  color: var(--lain-accent) !important;
  border-color: var(--lain-accent-muted) !important;
}

/* ═══════════════════════════════════════════
   MESSAGES & ALERTS
   ═══════════════════════════════════════════ */

.ui.message {
  background: var(--lain-bg-elevated) !important;
  color: var(--lain-text) !important;
  border: 1px solid var(--lain-border) !important;
  border-radius: var(--border-radius) !important;
  box-shadow: none !important;
}

.ui.positive.message,
.ui.success.message {
  background: rgba(143, 201, 154, 0.1) !important;
  border-color: var(--lain-success) !important;
  color: var(--lain-success) !important;
}

.ui.negative.message,
.ui.error.message {
  background: rgba(201, 138, 138, 0.1) !important;
  border-color: var(--lain-error) !important;
  color: var(--lain-error) !important;
}

.ui.warning.message {
  background: rgba(212, 184, 150, 0.1) !important;
  border-color: var(--lain-warning) !important;
  color: var(--lain-warning) !important;
}

.ui.info.message {
  background: var(--lain-accent-subtle) !important;
  border-color: var(--lain-accent) !important;
  color: var(--lain-accent) !important;
}

/* ═══════════════════════════════════════════
   MODALS
   ═══════════════════════════════════════════ */

.ui.modal {
  background: var(--lain-bg-elevated) !important;
  border: 1px solid var(--lain-border) !important;
  border-radius: var(--border-radius) !important;
  box-shadow: var(--lain-shadow-lg) !important;
}

.ui.modal > .header {
  background: var(--lain-bg-elevated) !important;
  color: var(--lain-text-bright) !important;
  border-bottom: 1px solid var(--lain-border) !important;
}

.ui.modal > .content {
  background: var(--lain-bg-elevated) !important;
  color: var(--lain-text) !important;
}

.ui.modal > .actions {
  background: var(--lain-bg-hover) !important;
  border-top: 1px solid var(--lain-border) !important;
}

.ui.dimmer {
  background: rgba(0, 0, 0, 0.75) !important;
}

/* ═══════════════════════════════════════════
   TABS
   ═══════════════════════════════════════════ */

.ui.tabular.menu {
  border-bottom: none !important;
  background: transparent !important;
}

.ui.tabular.menu .item {
  background: transparent !important;
  color: var(--lain-text-secondary) !important;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  margin-bottom: -1px !important;
  padding: 12px 16px !important;
}

.ui.tabular.menu .item:hover {
  color: var(--lain-text) !important;
  background: transparent !important;
}

.ui.tabular.menu .active.item {
  background: transparent !important;
  color: var(--lain-accent) !important;
  border-bottom: 2px solid var(--lain-accent) !important;
}

/* ═══════════════════════════════════════════
   PAGINATION
   ═══════════════════════════════════════════ */

.ui.pagination.menu {
  background: var(--lain-bg-elevated) !important;
  border: 1px solid var(--lain-border) !important;
  border-radius: var(--border-radius) !important;
}

.ui.pagination.menu .item {
  color: var(--lain-text) !important;
  border-left: 1px solid var(--lain-border) !important;
}

.ui.pagination.menu .item:first-child {
  border-left: none !important;
}

.ui.pagination.menu .item:hover {
  background: var(--lain-bg-hover) !important;
}

.ui.pagination.menu .active.item {
  background: var(--lain-accent) !important;
  color: var(--lain-bg-deep) !important;
}

/* ═══════════════════════════════════════════
   MARKDOWN CONTENT
   ═══════════════════════════════════════════ */

.markup,
.markdown {
  color: var(--lain-text) !important;
}

.markup h1, .markup h2, .markup h3, .markup h4, .markup h5, .markup h6,
.markdown h1, .markdown h2, .markdown h3, .markdown h4, .markdown h5, .markdown h6 {
  color: var(--lain-text-bright) !important;
  border-bottom-color: var(--lain-border) !important;
  padding-bottom: 8px !important;
  margin-top: 24px !important;
}

.markup blockquote,
.markdown blockquote {
  border-left: 3px solid var(--lain-accent) !important;
  background: var(--lain-bg-hover) !important;
  color: var(--lain-text-secondary) !important;
  padding: 12px 16px !important;
  margin: 16px 0 !important;
}

.markup hr,
.markdown hr {
  border-color: var(--lain-border) !important;
}

.markup table,
.markdown table {
  border-color: var(--lain-border) !important;
}

.markup table th,
.markup table td,
.markdown table th,
.markdown table td {
  border-color: var(--lain-border) !important;
  padding: 8px 12px !important;
}

.markup table th,
.markdown table th {
  background: var(--lain-bg-hover) !important;
}

/* ═══════════════════════════════════════════
   DIFF VIEW
   ═══════════════════════════════════════════ */

.diff-file-box {
  background: var(--lain-bg-elevated) !important;
  border: 1px solid var(--lain-border) !important;
  border-radius: var(--border-radius) !important;
  margin-bottom: 16px !important;
}

.diff-file-header {
  background: var(--lain-bg-hover) !important;
  border-bottom: 1px solid var(--lain-border) !important;
  padding: 12px 16px !important;
}

.diff-file-header .file {
  color: var(--lain-text) !important;
}

/* ═══════════════════════════════════════════
   ACTIVITY & CONTRIBUTION GRAPH
   ═══════════════════════════════════════════ */

.heatmap-color-0 { background-color: var(--lain-bg-hover) !important; }
.heatmap-color-1 { background-color: rgba(183, 111, 63, 0.2) !important; }
.heatmap-color-2 { background-color: rgba(183, 111, 63, 0.4) !important; }
.heatmap-color-3 { background-color: rgba(183, 111, 63, 0.6) !important; }
.heatmap-color-4 { background-color: rgba(183, 111, 63, 0.8) !important; }
.heatmap-color-5 { background-color: var(--lain-accent) !important; }

/* ═══════════════════════════════════════════
   AVATARS
   ═══════════════════════════════════════════ */

.ui.avatar,
.avatar,
.ui.avatar img,
.avatar img {
  border-radius: 8px !important;
  border: 2px solid var(--lain-border) !important;
}

/* ═══════════════════════════════════════════
   FOOTER
   ═══════════════════════════════════════════ */

/* Hide footer completely */
.footer,
.footer.container,
footer,
.page-footer,
div.footer,
body > .footer {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
}

/* Keep main containers clean */
.page-footer,
.full.height > .page-content,
.home,
.explore {
  border: none !important;
}

.footer a {
  color: #c4a88e !important;
}

.footer a:hover {
  color: var(--lain-accent) !important;
}

/* ═══════════════════════════════════════════
   LOADING STATES
   ═══════════════════════════════════════════ */

.ui.loader:before {
  border-color: var(--lain-border) !important;
}

.ui.loader:after {
  border-color: var(--lain-accent) transparent transparent !important;
}

/* ═══════════════════════════════════════════
   CHECKBOXES & TOGGLES
   ═══════════════════════════════════════════ */

.ui.checkbox label,
.ui.radio.checkbox label {
  color: var(--lain-text) !important;
}

.ui.checkbox input:checked ~ label:before,
.ui.radio.checkbox input:checked ~ label:before {
  background: var(--lain-accent) !important;
  border-color: var(--lain-accent) !important;
}

.ui.toggle.checkbox input:checked ~ label:before {
  background: var(--lain-accent) !important;
}

/* ═══════════════════════════════════════════
   SCROLLBARS
   ═══════════════════════════════════════════ */

::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

::-webkit-scrollbar-track {
  background: var(--lain-bg);
}

::-webkit-scrollbar-thumb {
  background: var(--lain-border-light);
  border-radius: 5px;
  border: 2px solid var(--lain-bg);
}

::-webkit-scrollbar-thumb:hover {
  background: var(--lain-text-muted);
}

/* ═══════════════════════════════════════════
   FOCUS STATES
   ═══════════════════════════════════════════ */

*:focus-visible {
  outline: 2px solid var(--lain-accent) !important;
  outline-offset: 2px !important;
}

/* ═══════════════════════════════════════════
   TOASTS & NOTIFICATIONS
   ═══════════════════════════════════════════ */

.toastify {
  background: var(--lain-bg-elevated) !important;
  color: var(--lain-text) !important;
  border: 1px solid var(--lain-border) !important;
  border-radius: var(--border-radius) !important;
  box-shadow: var(--lain-shadow-lg) !important;
}

/* ═══════════════════════════════════════════
   ISSUE & PR STATES
   ═══════════════════════════════════════════ */

.issue-state.open,
.state-open {
  background: rgba(138, 154, 91, 0.18) !important;
  color: var(--lain-success) !important;
}

.issue-state.closed,
.state-closed {
  background: rgba(199, 92, 92, 0.18) !important;
  color: var(--lain-error) !important;
}

.issue-state.merged,
.state-merged {
  background: rgba(183, 111, 63, 0.18) !important;
  color: var(--lain-accent) !important;
}

/* ═══════════════════════════════════════════
   EMPTY STATES
   ═══════════════════════════════════════════ */

.empty-placeholder {
  color: var(--lain-text-muted) !important;
}

/* ═══════════════════════════════════════════
   TIMELINE
   ═══════════════════════════════════════════ */

.timeline-item {
  border-left: 2px solid var(--lain-border) !important;
  padding-left: 20px !important;
  margin-left: 10px !important;
}

.timeline-item .badge {
  background: var(--lain-bg-elevated) !important;
  border: 2px solid var(--lain-border) !important;
}

/* ═══════════════════════════════════════════
   USER PROFILE PAGE
   ═══════════════════════════════════════════ */

.user.profile .ui.card,
.user.profile .ui.cards > .card,
#profile-avatar-card,
.profile-avatar-card {
  background: var(--lain-bg-deep) !important;
  border: none !important;
}

.user.profile .ui.card .extra,
.user.profile .ui.cards > .card .extra {
  background: transparent !important;
  border: none !important;
}

.user.profile .ui.card .header,
.user.profile .ui.cards > .card .header {
  color: var(--lain-text-bright) !important;
}

.user.profile .ui.card .meta,
.user.profile .ui.cards > .card .meta {
  color: var(--lain-text-secondary) !important;
}

.user.profile .ui.card .content,
.user.profile .ui.cards > .card .content {
  color: var(--lain-text) !important;
  border: none !important;
}

/* Profile card - no borders */
.user.profile .ui.card .ui.list .item,
.user.profile .ui.card .content,
.user.profile .ui.card .extra,
.user.profile .ui.card .ui.list,
.user.profile .ui.card .content::before,
.user.profile .ui.card .content::after {
  border: none !important;
}

.user.profile .ui.card .ui.list .item {
  border: none !important;
  padding: 6px 0 !important;
}

/* Remove line under admin@lain.town / profile info */
.user.profile .ui.card .content.border-top,
.user.profile .ui.card [class*="border"],
#profile-avatar-card .content {
  border: none !important;
}

/* Remove line above repos / under search */
.user.profile .repository-list::before,
.user.profile .repo-search + *,
.user.profile .ui.form + *,
.user.profile .secondary-nav,
.user.profile .ui.divider,
.user.profile hr,
.profile-repo-list-header,
.user-profile-content .divider,
.user-profile-content hr {
  border: none !important;
  display: none !important;
}

/* Ensure no borders on repo search area */
.repo-search,
.repo-search + .divider,
.user.profile .ui.form,
.user.profile .ui.input {
  border: none !important;
}

/* Profile stats/counters - followers, following, stars etc */
.user.profile .ui.card .extra a,
.user.profile .ui.card .extra span,
.user-profile-side .extra a,
.user-profile-side .extra span {
  color: var(--lain-text-secondary) !important;
}

.user.profile .ui.card .extra a:hover,
.user-profile-side .extra a:hover {
  color: var(--lain-accent) !important;
}

/* Followers/following counts */
a[href*="followers"],
a[href*="following"],
.followers-count,
.following-count,
.ui.card .extra.content a {
  color: var(--lain-text-secondary) !important;
}

a[href*="followers"]:hover,
a[href*="following"]:hover {
  color: var(--lain-accent) !important;
}

/* Activity feed on profile */
.user.profile .feeds,
.user.profile .activity {
  background: transparent !important;
}

.user.profile .feed .content {
  color: var(--lain-text) !important;
}

/* ═══════════════════════════════════════════
   DIVIDERS & SEPARATORS
   ═══════════════════════════════════════════ */

.ui.divider {
  border-color: transparent !important;
  color: var(--lain-text-muted) !important;
}

.ui.divider:not(.vertical):not(.horizontal) {
  border-top: none !important;
  border-bottom: none !important;
}

hr {
  border-color: rgba(183, 111, 63, 0.06) !important;
}

/* ═══════════════════════════════════════════
   LISTS
   ═══════════════════════════════════════════ */

.ui.list .item,
.ui.list > .item {
  color: var(--lain-text) !important;
}

.ui.list .item a,
.ui.list > .item a {
  color: var(--lain-accent) !important;
}

.ui.divided.list > .item {
  border-top-color: var(--lain-border) !important;
}

/* ═══════════════════════════════════════════
   ICONS
   ═══════════════════════════════════════════ */

.svg,
.octicon,
i.icon,
.icon {
  color: var(--lain-text-muted) !important;
}

a:hover .svg,
a:hover .octicon,
a:hover i.icon,
a:hover .icon {
  color: var(--lain-accent) !important;
}

/* ═══════════════════════════════════════════
   STATS & COUNTERS
   ═══════════════════════════════════════════ */

.ui.statistic > .value,
.ui.statistics .statistic > .value {
  color: var(--lain-text-bright) !important;
}

.ui.statistic > .label,
.ui.statistics .statistic > .label {
  color: var(--lain-text-secondary) !important;
}

/* ═══════════════════════════════════════════
   EXPLORE & SEARCH PAGE
   ═══════════════════════════════════════════ */

.explore.users .ui.card,
.explore.organizations .ui.card {
  background: var(--lain-card) !important;
}

/* ═══════════════════════════════════════════
   REPO FILE HEADER
   ═══════════════════════════════════════════ */

.file-header {
  background: var(--lain-bg-elevated) !important;
  border-bottom: 1px solid var(--lain-border) !important;
}

.file-info {
  color: var(--lain-text-secondary) !important;
}

/* ═══════════════════════════════════════════
   BREADCRUMB
   ═══════════════════════════════════════════ */

.ui.breadcrumb {
  color: var(--lain-text-secondary) !important;
}

.ui.breadcrumb a {
  color: var(--lain-accent) !important;
}

.ui.breadcrumb .divider {
  color: var(--lain-text-muted) !important;
}

/* ═══════════════════════════════════════════
   COMMIT LIST
   ═══════════════════════════════════════════ */

#commits-table {
  background: var(--lain-card) !important;
}

#commits-table .commit-list {
  background: transparent !important;
}

.singular-commit {
  border: none !important;
}

.singular-commit:hover {
  background: var(--lain-bg-hover) !important;
}

/* ═══════════════════════════════════════════
   MISC POLISH
   ═══════════════════════════════════════════ */

/* Remove harsh borders from specific elements */
.ui.attached.segment {
  border: none !important;
}

.ui.top.attached.header {
  background: var(--lain-bg-elevated) !important;
  border: none !important;
  color: var(--lain-text-bright) !important;
}

/* Global line/border removal for main layout */
.full.height,
.page-content,
.main-content,
.ui.container,
.pusher,
.full-width {
  border: none !important;
}

/* Header area below logo */
.navbar + *,
.navbar ~ .secondary-nav,
.ui.vertical.segment {
  border-top: none !important;
}

/* Footer area */
.page-content + .footer,
.ui.segment + .footer {
  border-top: none !important;
}

/* Secondary text */
.secondary-text,
.text.grey,
.text.light,
.meta,
.description,
.time,
.age,
.ui.list .item,
.activity-item,
.dashboard-navbar {
  color: var(--lain-text-secondary) !important;
}

/* Muted text */
.text.muted {
  color: var(--lain-text-muted) !important;
}

/* Links that are NOT repo names - use secondary color */
.text a,
.ui.card a:not(.header):not(.name),
.meta a,
.ui.list a,
a.muted,
.activity a:not(.title) {
  color: var(--lain-text-secondary) !important;
}

.text a:hover,
.ui.card a:not(.header):not(.name):hover,
.meta a:hover,
.ui.list a:hover {
  color: var(--lain-accent) !important;
}

/* Repo descriptions and meta info */
.repository.list .item .description,
.repo-list-item .description,
.flex-item .flex-item-body {
  color: var(--lain-text-secondary) !important;
}

/* All stats, counts, numbers */
.ui.statistic .value,
.ui.statistic .label,
.stats span,
.stat-count,
.counter {
  color: var(--lain-text-secondary) !important;
}

/* User info on cards */
.ui.card .joined,
.ui.card .location,
.ui.card .website,
.ui.card .email {
  color: var(--lain-text-secondary) !important;
}

/* Code inline in markdown */
.markup code,
.markdown code {
  background: var(--lain-bg-deep) !important;
  color: var(--lain-accent) !important;
  padding: 2px 6px !important;
  border-radius: 4px !important;
  border: 1px solid var(--lain-border) !important;
}

/* Pre blocks in markdown */
.markup pre,
.markdown pre {
  background: var(--lain-bg-deep) !important;
  border: 1px solid var(--lain-border) !important;
}

.markup pre code,
.markdown pre code {
  color: var(--lain-text) !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
}

/* ═══════════════════════════════════════════
   GLOBAL BORDER REMOVAL
   ═══════════════════════════════════════════ */

/* Thin dividers and hr - #c4a88e */
.ui.divider,
.ui.horizontal.divider,
.ui.vertical.divider,
.divider {
  border-color: rgba(196, 168, 142, 0.3) !important;
  border-width: 1px !important;
}

hr {
  border: none !important;
  border-top: 1px solid rgba(196, 168, 142, 0.25) !important;
  height: 0 !important;
  margin: 6px 0 !important;
}

/* Dropdown menu hr separators */
.dropdown .content hr,
.dropdown .menu hr,
details.dropdown hr {
  border: none !important;
  border-top: 1px solid rgba(196, 168, 142, 0.25) !important;
  height: 0 !important;
  margin: 6px 0 !important;
}

/* Dropdown menu - ALL text #c4a88e */
.dropdown .content,
.dropdown .content *,
.dropdown .content .header,
.dropdown .content .header span,
.dropdown .content .header strong,
.dropdown .content ul,
.dropdown .content ul li,
.dropdown .content ul li a,
.dropdown .content a,
details.dropdown .content,
details.dropdown .content *,
details.dropdown .content .header,
details.dropdown .content .header span,
details.dropdown .content .header strong,
details.dropdown .content ul,
details.dropdown .content ul li,
details.dropdown .content ul li a,
details.dropdown .content a,
.ui.dropdown .menu,
.ui.dropdown .menu *,
.ui.dropdown .menu > .header,
.ui.dropdown .menu > .item,
.ui.dropdown .menu > .item a {
  color: #c4a88e !important;
}

/* Dropdown hover */
.dropdown .content ul li a:hover,
details.dropdown .content ul li a:hover,
.ui.dropdown .menu > .item:hover {
  color: var(--lain-accent) !important;
}

/* Remove all dropdown borders */
details.dropdown .content,
details.dropdown[open] .content,
.dropdown .content,
details.dropdown .content ul,
.dropdown .content ul {
  border: none !important;
  outline: none !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.4) !important;
}

/* Repo stats - stars, forks, language */
.repo-stars,
.repo-forks,
.repo-language,
.flex-item .flex-item-trailing,
.flex-item-trailing span,
.flex-item-trailing a,
.repository.list .item .meta,
.repository.list .item .meta span,
.repository.list .item .meta a,
a[href*="stargazers"],
a[href*="forks"],
.repo-list-item .counts,
.repo-list-item .counts span,
.repo-list-item .counts a {
  color: #c4a88e !important;
}

/* Remove borders from all interactive elements */
.ui.menu .item,
.ui.dropdown .menu .item,
.ui.list .item,
.ui.selection.dropdown,
.ui.search,
.ui.segment,
.ui.card,
.ui.table td,
.ui.table th,
.ui.modal,
.ui.message {
  border: none !important;
}

/* Top right dropdown menus */
.ui.dropdown .menu,
.ui.dropdown > .menu,
.ui.pointing.dropdown > .menu,
.ui.top.right.dropdown > .menu,
.ui.dropdown .menu > .item,
.ui.dropdown .menu > .header,
.ui.dropdown .menu > .divider,
.ui.dropdown.item .menu,
.right.menu .dropdown .menu,
.right.menu .ui.dropdown .menu,
#navbar-right .dropdown .menu,
.navbar .dropdown .menu,
details.dropdown .content,
.dropdown .content {
  border: none !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.3) !important;
  outline: none !important;
}

.ui.dropdown .menu > .item,
.ui.dropdown .menu > .header {
  border: none !important;
  border-top: none !important;
  border-bottom: none !important;
}

.ui.dropdown .menu > .divider {
  border-top: 1px solid rgba(196, 168, 142, 0.2) !important;
  margin: 4px 0 !important;
  height: 0 !important;
}

/* Repo file list and tables */
#repo-files-table,
#repo-files-table tr,
#repo-files-table td,
#repo-files-table th,
.repo-file-table,
.repository .segment,
.repository .ui.segment {
  border: none !important;
}

/* Repo list items */
.flex-item,
.flex-item-main,
.flex-item-body,
.flex-item-header,
.repository.list .item,
.repo-list .item {
  border: none !important;
}

/* Remove top/bottom borders */
*[class*="border"],
*[style*="border"] {
  border-color: transparent !important;
}

/* ═══════════════════════════════════════════
   GLOBAL TEXT COLOR - ALL #c4a88e
   ═══════════════════════════════════════════ */

* {
  color: #c4a88e !important;
}

/* Repo names keep accent color */
.repo-list-item .repo-title a,
.repository.list .item .header a,
.flex-item-title a,
a.repo-list-item-name,
.repo-name,
a[href*="/repos/"] .name,
.repository .header a {
  color: var(--lain-accent) !important;
}

/* Links hover to accent */
a:hover {
  color: var(--lain-accent) !important;
}

/* Settings page text */
.settings *,
.user-setting-content *,
.admin-setting-content *,
.ui.form label,
.ui.form .field > label,
.ui.form .inline.field > label,
.ui.checkbox label,
.ui.form input,
.ui.form textarea,
.ui.form select,
.ui.form .help,
.ui.form .field .prompt,
.ui.message *,
.ui.header,
.sub.header,
h1, h2, h3, h4, h5, h6,
p, span, div, label, strong, em, b, i {
  color: #c4a88e !important;
}

/* ═══════════════════════════════════════════
   NUCLEAR BORDER REMOVAL - EVERYTHING
   ═══════════════════════════════════════════ */

* {
  border-color: transparent !important;
}

*:not(svg):not(path) {
  border-style: none !important;
}

/* Re-enable only for inputs (for usability) */
input,
textarea,
select,
.ui.input input,
.ui.form input,
.ui.form textarea,
.ui.form select {
  border-style: solid !important;
  border-color: rgba(196, 168, 142, 0.2) !important;
  border-width: 1px !important;
}

input:focus,
textarea:focus,
select:focus,
.ui.input input:focus,
.ui.form input:focus,
.ui.form textarea:focus {
  border-color: var(--lain-accent) !important;
}

/* Settings page specific */
.ui.form .field,
.ui.segment,
.ui.attached.segment,
.ui.tabular.menu,
.ui.secondary.menu,
.settings .field,
.settings .segment,
.settings .ui.form,
.admin-setting-content,
.user-setting-content {
  border: none !important;
}

/* ═══════════════════════════════════════════
   SETTINGS PAGE - CLEAN LAYOUT
   ═══════════════════════════════════════════ */

/* Settings container */
.user-setting-content,
.admin-setting-content,
.repository-setting-content,
.org-setting-content {
  background: transparent !important;
}

/* Settings sections - subtle card-like appearance */
.ui.attached.segment,
.ui.segment,
.settings .segment {
  background: var(--lain-card) !important;
  border-radius: 8px !important;
  padding: 20px !important;
  margin-bottom: 16px !important;
}

/* Settings headers */
.ui.attached.header,
.ui.top.attached.header {
  background: var(--lain-bg-elevated) !important;
  border-radius: 8px 8px 0 0 !important;
  padding: 14px 20px !important;
  margin-bottom: 0 !important;
}

.ui.top.attached.header + .ui.attached.segment {
  border-radius: 0 0 8px 8px !important;
  margin-top: 0 !important;
}

/* Form fields spacing */
.ui.form .field {
  margin-bottom: 16px !important;
}

.ui.form .fields {
  margin-bottom: 16px !important;
}

/* Settings sidebar/menu */
.ui.secondary.vertical.menu,
.user-setting-nav,
.settings-nav {
  background: transparent !important;
}

.ui.secondary.vertical.menu .item {
  border-radius: 6px !important;
  margin-bottom: 4px !important;
  padding: 10px 14px !important;
}

.ui.secondary.vertical.menu .active.item {
  background: var(--lain-accent-muted) !important;
}

/* Dividers in settings - hide completely */
.settings .divider,
.settings hr,
.settings .ui.divider,
.user-setting-content .divider,
.user-setting-content hr {
  display: none !important;
}

/* Tables in settings */
.settings .ui.table,
.user-setting-content .ui.table {
  background: var(--lain-card) !important;
  border-radius: 8px !important;
}

.settings .ui.table thead th {
  background: var(--lain-bg-elevated) !important;
}

/* Settings buttons row */
.settings .ui.form .field:last-child,
.settings .button-row {
  margin-top: 20px !important;
  padding-top: 16px !important;
}

hr {
  display: none !important;
}
