/* ============================================================
   Git Server — кастомная тема. Современный чистый стиль, индиго.
   ============================================================ */

:root {
  --color-primary: #18181b;
  --color-primary-contrast: #ffffff;
  --color-primary-dark-1: #101013;
  --color-primary-dark-2: #0a0a0c;
  --color-primary-dark-3: #000000;
  --color-primary-dark-4: #000000;
  --color-primary-dark-5: #000000;
  --color-primary-light-1: #2a2a2e;
  --color-primary-light-2: #3f3f46;
  --color-primary-light-3: #71717a;
  --color-primary-light-4: #a1a1aa;
  --color-primary-light-5: #d4d4d8;
  --color-primary-light-6: #e4e4e7;
  --color-primary-light-7: #f4f4f5;
  --color-primary-alpha-30: #18181b4d;
  --color-primary-alpha-40: #18181b66;
  --color-primary-alpha-50: #18181b80;
  --color-primary-alpha-60: #18181b99;
  --color-primary-alpha-70: #18181bb3;
  --color-primary-alpha-80: #18181bcc;
  --color-primary-alpha-90: #18181be6;

  --gs-bg-soft: #ffffff;
  --gs-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --gs-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;
}

/* ============================================================
   Единый шрифт и размер по всей теме — без разброса
   ============================================================ */
html, body,
button, input, select, textarea, optgroup,
.ui.button, .ui.menu, .ui.menu .item, .ui.dropdown, .ui.dropdown .menu > .item,
.ui.label, .ui.input > input, .ui.form input, .ui.form textarea,
.ui.table, td, th, p, a, span, div, li, label,
.ui.header, h1, h2, h3, h4, h5, h6 {
  font-family: var(--gs-font) !important;
}
/* моноширинный — только для кода */
code, pre, kbd, samp, tt,
.tw-font-mono, .font-mono, .commit-id, .sha, .code-view,
.file-info, .lines-num, .lines-code, .CodeMirror {
  font-family: var(--gs-mono) !important;
}

/* Единый базовый размер для текста и контролов (14px) */
html, body,
.ui.button, .ui.menu .item, .ui.dropdown, .ui.dropdown .menu > .item,
.ui.label, .ui.input > input, .ui.form input, .ui.form textarea,
.ui.table td, .ui.table th, p, li, label, .ui.list .item,
.repo-file-cell, .repo-file-item, .commit-list td {
  font-size: 14px !important;
}
/* Единая умеренная шкала заголовков (один шрифт, без скачков) */
h1, .ui.header.tw-text-2xl, .repository .repo-header .name { font-size: 20px !important; font-weight: 600 !important; }
h2, .ui.large.header { font-size: 18px !important; font-weight: 600 !important; }
h3, .ui.header { font-size: 16px !important; font-weight: 600 !important; }
h4, h5, h6 { font-size: 14px !important; font-weight: 600 !important; }
/* мелкие подписи — единый вторичный размер */
.text.small, .ui.small, .meta, .time-since, .author { font-size: 12.5px !important; }

/* Кнопки-акцент: мягче и современнее */
.ui.primary.button,
.ui.primary.buttons .button {
  border-radius: 8px;
  font-weight: 600;
  box-shadow: 0 1px 2px rgba(16,24,40,.06);
  transition: transform .04s ease, box-shadow .15s ease, background .15s ease;
}
.ui.primary.button:hover,
.ui.primary.buttons .button:hover {
  box-shadow: 0 6px 16px var(--color-primary-alpha-30);
}
.ui.primary.button:active { transform: translateY(1px); }

/* Поля ввода */
.ui.form input:not([type]),
.ui.form input[type="text"],
.ui.form input[type="email"],
.ui.form input[type="password"] {
  border-radius: 8px;
  padding: .7em .9em;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.ui.form input:focus {
  border-color: var(--color-primary-light-2) !important;
  box-shadow: 0 0 0 3px var(--color-primary-alpha-30) !important;
}

/* ---------- Sticky footer + заполнение высоты ---------- */
body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
/* .full.height растёт и сам раскладывает контент по высоте */
body > .full.height {
  flex: 1 0 auto;
  display: flex;
  flex-direction: column;
}
.full.height > .page-content {
  flex: 1 0 auto;
  display: flex;
  flex-direction: column;
}
body > footer.page-footer { flex-shrink: 0; }

/* ---------- Главная: минимализм, монохром ---------- */
.page-content.home {
  background: #ffffff;
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", system-ui, sans-serif;
}

/* Hero — занимает первый экран целиком */
.gs-hero {
  flex: 1 0 auto;
  width: 100%;
  max-width: 820px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2rem 1.5rem;
  text-align: center;
}
.gs-hero .gs-logo {
  width: 72px;
  height: 72px;
}
.gs-hero h1 {
  margin: 1.8rem 0 .9rem;
  font-size: clamp(2.8rem, 6.5vw, 5rem);
  font-weight: 600;
  letter-spacing: -.035em;
  line-height: 1.04;
  color: #18181b;
}
.gs-hero .gs-sub {
  font-size: clamp(1.15rem, 2.2vw, 1.55rem);
  font-weight: 400;
  color: #71717a;
  max-width: 600px;
  margin: 0 auto 2.6rem;
  line-height: 1.4;
  letter-spacing: -.01em;
}
.gs-hero .gs-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  padding: .85rem 2.4rem;
  font-size: 1.05rem;
  font-weight: 600;
  color: #fff;
  background: #18181b;
  border-radius: 999px;
  transition: background .15s ease, transform .05s ease;
}
.gs-hero .gs-cta:hover { background: #000; }
.gs-hero .gs-cta:active { transform: translateY(1px); }


/* ---------- Страница входа: форма по центру экрана ---------- */
.page-content.user.signin {
  background: #ffffff;
  justify-content: center;   /* page-content — flex column; центрируем форму по вертикали */
}
.page-content.user.signin .ui.grid {
  margin: 0;
  align-items: center;
}
/* Логотип над формой входа */
.page-content.user.signin form.ui.form::before {
  content: "";
  display: block;
  width: 64px;
  height: 64px;
  margin: 0 auto 1.1rem;
  background: url("/assets/img/logo.svg") center / contain no-repeat;
}
/* Карточка формы */
.page-content.user.signin form.ui.form {
  max-width: 420px;
  margin: 0 auto;
}
.page-content.user.signin .ui.attached.header,
.page-content.user.signin .ui.top.attached.header {
  border: none;
  background: transparent;
  font-size: 1.5rem;
  font-weight: 700;
  text-align: center;
  padding-bottom: .25rem;
}
.page-content.user.signin .ui.attached.segment {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.page-content.user.signin .ui.primary.button {
  width: 100%;
  padding: .8em;
  font-size: 1rem;
  background: #18181b;
}

/* Логотип в навбаре — ровный размер */
.full.height > #navbar img.logo,
nav .item img.logo { height: 28px; width: 28px; }

/* ---------- Убрать лишние серые рамки/полоски ---------- */
/* Шапка: без рамок и теней */
#navbar,
nav#navbar,
.full.height > #navbar {
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* Футер: без рамок и теней */
.page-footer,
footer.page-footer {
  border: 0 !important;
  border-top: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* Форма входа: без карточки, рамок и теней — просто поля на фоне */
.page-content.user.signin .ui.attached.header,
.page-content.user.signin .ui.top.attached.header,
.page-content.user.signin .ui.attached.segment {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* ============================================================
   Глобальный минимализм по всему UI (Fomantic): убрать серые
   подложки/шапки/рамки/тени, чистый белый, монохром.
   ============================================================ */

/* Под-навбар (вторичное меню под шапкой) — без серой полосы и фона */
.ui.secondary.menu,
.secondary-nav,
.ui.tabs.container,
.repository .ui.tabs.container {
  border-bottom: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Сегменты и карточки — без серых шапок, рамок и теней */
.ui.segment,
.ui.segments,
.ui.segments .segment,
.ui.attached.segment,
.ui.tab.segment,
.ui.card,
.ui.cards > .card {
  background: #ffffff !important;
  border: none !important;
  box-shadow: none !important;
}

/* «Шапки» сегментов: убрать серую плашку, оставить жирный заголовок */
.ui.attached.header,
.ui.top.attached.header,
.ui.segment > .ui.header:first-child {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid #f0f0f2 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  font-weight: 600;
}

/* Меню-контейнеры — без рамок/теней/фона */
.ui.menu,
.ui.vertical.menu,
.ui.secondary.vertical.menu,
.overflow-menu,
.overflow-menu-items {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* ВЕРТИКАЛЬНЫЕ меню (настройки/админка) — список с мягким активным пунктом */
.ui.vertical.menu .item { border-radius: 8px; }
.ui.vertical.menu .active.item {
  background: #f4f4f5 !important;
  color: #18181b !important;
  font-weight: 600;
}
.ui.vertical.menu .item:hover { background: #f8f8f9 !important; }
.ui.vertical.menu .header.item {
  background: transparent !important;
  border-bottom: 1px solid #f0f0f2 !important;
  font-weight: 700;
}

/* ГОРИЗОНТАЛЬНЫЕ табы — подчёркивание графитом, без серых плашек */
.ui.menu:not(.vertical) .active.item,
.ui.pointing.menu .active.item,
.ui.tabular.menu .active.item,
.ui.secondary.pointing.menu .active.item,
.overflow-menu-items .active.item {
  background: transparent !important;
  color: #18181b !important;
  font-weight: 600;
  border-color: #18181b !important;
  box-shadow: inset 0 -2px 0 #18181b !important;
}
.ui.menu:not(.vertical) .item,
.overflow-menu-items .item { color: #6b7280; box-shadow: none; }
.ui.menu:not(.vertical) .item:hover,
.overflow-menu-items .item:hover {
  background: transparent !important;
  color: #18181b !important;
}

/* Поля ввода и селекты — заливные, без обводок */
.ui.input > input,
.ui.form input,
.ui.form textarea,
textarea,
input[type="text"], input[type="password"], input[type="email"],
input[type="search"], input[type="number"], input[type="url"], input[type="date"],
.ui.selection.dropdown,
.ui.dropdown {
  background: #f4f4f5 !important;
  border: 1px solid transparent !important;
  border-radius: 8px !important;
  box-shadow: none !important;
}
.ui.input > input:focus,
.ui.form input:focus,
.ui.form textarea:focus,
input:focus, textarea:focus,
.ui.selection.dropdown:focus,
.ui.selection.active.dropdown,
.ui.dropdown.active {
  background: #ffffff !important;
  border-color: #d4d4d8 !important;
  box-shadow: 0 0 0 3px rgba(24,24,27,.06) !important;
}

/* Кнопки: primary графит; вторичные — заливные, без обводок */
.ui.button {
  border-radius: 8px;
  font-weight: 600;
  border: none !important;
  box-shadow: none !important;
}
.ui.primary.button { background: #18181b !important; color: #fff !important; }
.ui.primary.button:hover { background: #000 !important; }
.ui.button:not(.primary):not(.red):not(.green):not(.orange):not(.blue):not(.teal) {
  background: #f4f4f5 !important;
  color: #18181b !important;
}
.ui.button:not(.primary):not(.red):not(.green):not(.orange):not(.blue):not(.teal):hover {
  background: #e8e8ea !important;
}
.ui.basic.button {
  background: #f4f4f5 !important;
  border: none !important;
  box-shadow: none !important;
  color: #18181b !important;
}
.ui.basic.button:hover { background: #e8e8ea !important; }
.ui.buttons { box-shadow: none !important; }
.ui.buttons .button { border-radius: 8px; }
.ui.buttons .button:not(:last-child) { margin-right: 2px; }

/* Сегмент-табы (Commits/Branches/Tags и подобные) — подчёркивание, без плашки */
.repository-summary .ui.segment,
.repository-menu {
  background: #ffffff !important;
  border: none !important;
}
.repository-menu .item.active,
.sub-menu .item.active {
  background: transparent !important;
  color: #18181b !important;
  font-weight: 600;
  border-radius: 0 !important;
  box-shadow: inset 0 -2px 0 #18181b !important;
}
.repository-menu .item:hover,
.sub-menu .item:hover {
  background: transparent !important;
  color: #18181b !important;
}

/* Дерево файлов и списки выбора — мягкий активный/hover */
.tree-item.selected,
.tree-item.active,
.repo-file-tree .selected {
  background: #f4f4f5 !important;
}
.tree-item:hover { background: #fafafa !important; }

/* Ячейка сообщения коммита в списке файлов — без заливки */
.latest-commit-info,
.commit-summary,
.repo-file-cell.message,
.repo-file-cell.commit-summary { background: transparent !important; }

/* Просмотр кода: чистые номера строк и фон */
.code-view,
.file-view.code-view {
  background: #ffffff !important;
}
.code-view .lines-num,
.lines-num { background: #fafafa !important; color: #9ca3af !important; }

/* Таблицы — лёгкие линии вместо тяжёлых рамок */
.ui.table {
  border: none !important;
  box-shadow: none !important;
}
.ui.table thead th { background: transparent !important; border-bottom: 1px solid #ececef !important; }
.ui.table td { border-top: 1px solid #f3f3f5 !important; }

/* Разделители — светлее */
.divider, .ui.divider { border-color: #f0f0f2 !important; }

/* Auth-страницы (forgot/reset/activate) — центрировать как вход */
.page-content.user.forgot,
.page-content.user.reset-password,
.page-content.user.activate,
.page-content.user.link-account,
.page-content.user.signup {
  justify-content: center;
  text-align: center;
}
.page-content.user.forgot .ui.header,
.page-content.user.forgot h2,
.page-content.user.reset-password .ui.header {
  border: none !important;
}

/* ============================================================
   Единый стиль статусов, табов-коробок и комментариев
   ============================================================ */

/* Статус-бейджи (Open/Closed/Merged/Stable/Published/Proposed/…) —
   монохром вместо радуги. Пользовательские лейблы со своим цветом
   задаются inline-стилем и здесь НЕ затрагиваются. */
.ui.green.label, .ui.green.labels .label,
.ui.olive.label, .ui.teal.label,
.ui.purple.label, .ui.violet.label,
.ui.primary.label, .ui.blue.label {
  background: #18181b !important;
  color: #ffffff !important;
  border-color: #18181b !important;
}
.ui.red.label, .ui.orange.label, .ui.yellow.label, .ui.grey.label {
  background: #6b7280 !important;
  color: #ffffff !important;
  border-color: #6b7280 !important;
}
.ui.basic.green.label, .ui.basic.teal.label, .ui.basic.blue.label,
.ui.basic.purple.label, .ui.basic.red.label, .ui.basic.grey.label {
  background: #ffffff !important;
  color: #18181b !important;
  border: 1px solid #d4d4d8 !important;
  box-shadow: none !important;
}

/* Семантические кнопки тоже в общий монохром (кроме деструктивных red) */
.ui.green.button, .ui.teal.button, .ui.blue.button, .ui.primary.button {
  background: #18181b !important;
  color: #ffffff !important;
}
.ui.green.button:hover, .ui.teal.button:hover,
.ui.blue.button:hover, .ui.primary.button:hover { background: #000 !important; }

/* Прогресс-бары (Pulse, milestones) — графит вместо зелёного */
.ui.progress .bar { background-color: #18181b !important; }
.ui.progress { background: #f1f1f3 !important; }
.stats-table .tw-bg-green { background: #18181b !important; }
.stats-table .tw-bg-red { background: #9ca3af !important; }

/* Табы-коробки (Conversation/Commits/Files, Write/Preview,
   Labels/Milestones, Unread/Read, Release/Tag) — подчёркивание,
   как у всех остальных табов. */
.ui.tabular.menu {
  border-bottom: 1px solid #ececef !important;
}
.ui.tabular.menu .item {
  border: 0 !important;
  background: transparent !important;
  color: #6b7280 !important;
  margin-bottom: -1px;
  border-radius: 0 !important;
}
.ui.tabular.menu .item:hover { color: #18181b !important; background: transparent !important; }
.ui.tabular.menu .active.item {
  border: 0 !important;
  background: transparent !important;
  color: #18181b !important;
  font-weight: 600;
  box-shadow: inset 0 -2px 0 #18181b !important;
}

/* Шапка блока комментария — чистая, без серой плашки */
.comment-header {
  background: #ffffff !important;
  border-bottom: 1px solid #f0f0f2 !important;
}
.comment .comment-content .render-content,
.timeline-item .comment-body { background: #ffffff !important; }

/* ============================================================
   Единый контейнер, нулевые радиусы, dropdown без заливки
   ============================================================ */

/* Полная ширина на всех страницах — без ограничения 1280px.
   Единые боковые поля, чтобы шапка, контент и подвал совпадали. */
.ui.container,
.page-content .ui.container,
.ui.container.fluid,
.ui.container.fluid.padded,
.full.height > .page-content > .ui.container {
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 1.5rem !important;
  padding-right: 1.5rem !important;
}

/* Без скруглений — везде прямые углы (кроме аватаров). */
.ui.button, .ui.buttons .button,
.ui.input > input, .ui.form input, .ui.form textarea, textarea,
input, select,
.ui.dropdown, .ui.selection.dropdown,
.ui.label, .ui.menu .item, .ui.vertical.menu .item,
.ui.segment, .ui.attached.segment, .ui.card, .ui.cards > .card,
.tree-item, .gs-cta, .repo-search-input,
.CodeMirror, .editor-toolbar, .markdown-toolbar {
  border-radius: 0 !important;
}

/* Dropdown-кнопки (фильтры Author/Assignee/Sort/Exact, выбор ветки и т.п.)
   — без заливки, просто текст; заливка только у настоящих полей ввода. */
.ui.dropdown:not(.selection) {
  background: transparent !important;
}
.ui.dropdown:not(.selection):hover {
  background: #f4f4f5 !important;
}
/* Selection-dropdown (полноценное поле выбора) сохраняет заливку как input */
.ui.selection.dropdown {
  background: #f4f4f5 !important;
}

/* Единый горизонтальный отступ для шапки, контента и подвала —
   логотип, контент и футер выровнены по одной вертикали. */
.full.height > nav,
.full.height > .navbar,
nav.navbar,
#navbar,
body > footer.page-footer,
.page-footer,
footer .ui.container {
  padding-left: 1.5rem !important;
  padding-right: 1.5rem !important;
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* ============================================================
   Финал: фокусы, выпадающие меню, единые табы
   ============================================================ */

/* Фокус — мягкий, без выделяющейся рамки/кольца. Только белый фон
   и тонкая граница; никаких box-shadow-колец и outline. */
.ui.input > input:focus,
.ui.form input:focus,
.ui.form textarea:focus,
input:focus, textarea:focus, select:focus,
.ui.selection.dropdown:focus,
.ui.selection.active.dropdown,
.ui.dropdown.active,
.ui.dropdown.selection:focus {
  background: #ffffff !important;
  border-color: #d4d4d8 !important;
  box-shadow: none !important;
  outline: none !important;
}
*:focus, *:focus-visible { outline: none !important; }

/* Выпадающие popup-меню (контекст, юзер-меню, язык, фильтры) — единый
   вид: белый фон, тонкая граница, прямые углы, мягкая тень. */
.ui.dropdown .menu,
.ui.dropdown .menu.transition,
.ui.menu .ui.dropdown .menu,
.tippy-box[data-theme~="menu"],
.tippy-box[data-theme~="box-with-header"],
.tippy-box[data-theme~="default"] {
  background: #ffffff !important;
  border: 1px solid #e5e5e7 !important;
  border-radius: 0 !important;
  box-shadow: 0 6px 20px rgba(0,0,0,.08) !important;
  margin-top: 4px !important;
}

/* Тултипы — тёмные с белым текстом (НЕ путать с popup-меню) */
.tippy-box[data-theme~="tooltip"] {
  background: #18181b !important;
  color: #ffffff !important;
  border: 0 !important;
  border-radius: 6px !important;
  box-shadow: 0 4px 14px rgba(0,0,0,.18) !important;
  margin-top: 0 !important;
}
.tippy-box[data-theme~="tooltip"] .tippy-content { color: #ffffff !important; background: transparent !important; }
.tippy-box[data-theme~="tooltip"] .tippy-arrow { color: #18181b !important; }
.ui.dropdown .menu > .item,
.ui.dropdown .menu > .header,
.ui.dropdown .menu > .divider { border-radius: 0 !important; }
.ui.dropdown .menu > .item {
  color: #2a2a2e !important;
}
.ui.dropdown .menu > .item.active,
.ui.dropdown .menu > .item.selected {
  background: transparent !important;
  color: #18181b !important;
  font-weight: 500;
}
.ui.dropdown .menu > .item:hover {
  background: #f4f4f5 !important;
  color: #18181b !important;
}
.ui.dropdown .menu > .divider { border-top: 1px solid #f0f0f2 !important; }

/* ЕДИНЫЕ ТАБЫ — все варианты меню Fomantic к одному виду:
   тонкая линия-трек снизу, активный — подчёркивание 2px графит,
   без боковых границ, без фона, без скруглений. */
.ui.secondary.menu,
.ui.secondary.pointing.menu,
.ui.pointing.menu,
.ui.tabular.menu,
.ui.two.item.menu,
.ui.secondary.stackable.menu {
  border-bottom: 1px solid #ececef !important;
  box-shadow: none !important;
  background: transparent !important;
}
.ui.secondary.menu > .item,
.ui.secondary.pointing.menu > .item,
.ui.pointing.menu > .item,
.ui.tabular.menu > .item,
.ui.two.item.menu > .item,
.ui.secondary.stackable.menu > .item,
.overflow-menu-items > .item {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: #6b7280 !important;
  margin: 0 !important;
  margin-bottom: -1px !important;
  font-weight: 500;
}
.ui.secondary.menu > .item:hover,
.ui.pointing.menu > .item:hover,
.ui.tabular.menu > .item:hover,
.ui.two.item.menu > .item:hover,
.overflow-menu-items > .item:hover {
  background: transparent !important;
  color: #18181b !important;
}
.ui.secondary.menu > .active.item,
.ui.secondary.pointing.menu > .active.item,
.ui.pointing.menu > .active.item,
.ui.tabular.menu > .active.item,
.ui.two.item.menu > .active.item,
.ui.secondary.stackable.menu > .active.item,
.overflow-menu-items > .active.item {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: inset 0 -2px 0 #18181b !important;
  color: #18181b !important;
  font-weight: 600;
}

/* Убрать вертикальные разделители между табами (псевдоэлементы Fomantic) */
.ui.menu > .item:before,
.ui.secondary.menu > .item:before,
.ui.pointing.menu > .item:before,
.ui.tabular.menu > .item:before,
.ui.two.item.menu > .item:before,
.ui.secondary.stackable.menu > .item:before,
.overflow-menu-items > .item:before {
  display: none !important;
}

/* Выпадающие popup-меню НЕ должны получать табное подчёркивание —
   активный/выбранный пункт только с лёгким фоном, без чёрной линии. */
.ui.dropdown .menu .item.active,
.ui.dropdown .menu .item.selected,
.ui.dropdown .menu .active.item,
.ui.dropdown .menu .selected.item {
  box-shadow: none !important;
  border: 0 !important;
  background: transparent !important;
  color: #18181b !important;
  font-weight: 500;
}
.ui.dropdown .menu .item:hover { background: #f4f4f5 !important; }

/* Список файлов репозитория — убрать сине-серые рамки и плашки,
   оставить аккуратные светлые разделители строк. */
.repo-home-filelist > div,
.repo-file-table,
.repo-grid-filelist-sidebar > div {
  border-color: #ececef !important;
}
.repo-file-cell,
.repo-file-item,
.repo-file-line {
  border-color: #f3f3f5 !important;
}
/* строка последнего коммита — без отдельной серой плашки */
.repo-file-line.repo-file-last-commit,
.repo-file-last-commit,
.repo-file-item.commit-list,
.latest-commit,
.repo-home-filelist .commit-row,
.repo-file-item:first-child {
  background: transparent !important;
  border-bottom: 0 !important;
}
.repo-file-last-commit .repo-file-cell { border-bottom: 0 !important; }
/* Ячейки всегда прозрачные; ровный hover красит ВСЮ строку целиком */
.repo-file-cell { background: transparent !important; }
.repo-file-item:hover .repo-file-cell,
.repo-file-line:hover .repo-file-cell { background: #f7f7f8 !important; }
.repo-file-last-commit:hover .repo-file-cell,
.repo-file-last-commit:hover { background: transparent !important; }

/* SHA коммита — просто моноширинный текст, без заливки и рамки */
.ui.label.commit-id-short,
.commit-id-short,
.sha.label,
.ui.label.sha {
  background: transparent !important;
  border: 0 !important;
  color: #6b7280 !important;
  box-shadow: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Счётчики у кнопок Watch/Star/Fork и labeled-кнопок — без рамок,
   заливные в тон кнопке. */
.ui.labeled.button > .label,
.ui.label.basic,
.ui.basic.label:not(.green):not(.red):not(.blue):not(.purple):not(.teal):not(.grey) {
  background: #f4f4f5 !important;
  border: 0 !important;
  color: #2a2a2e !important;
  box-shadow: none !important;
}
.ui.labeled.button > .button { box-shadow: none !important; }

/* Clone-панель («Код») */
/* Табы HTTP/SSH/Tea CLI (.clone-panel-tab) — на всю ширину, равные доли,
   текст по центру, как верхний ряд табов. */
.clone-panel-tab {
  display: flex !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
.clone-panel-tab > a,
.clone-panel-tab > .item,
.clone-panel-tab > * {
  flex: 1 1 0 !important;
  justify-content: center !important;
  text-align: center !important;
  margin: 0 !important;
}

/* Поле со ссылкой: заливка на всю ширину (вровень с пунктами по краям 16px),
   текст слева, кнопка копирования прижата к правому краю. */
.clone-panel-field {
  margin: 8px 16px !important;
  padding: 0 !important;
}
.clone-panel-field .ui.input,
.clone-panel-field .ui.input.action {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 100% !important;
  background: #f4f4f5 !important;
  box-shadow: none !important;
}
.clone-panel-field input.js-clone-url,
.repo-clone-url,
.js-clone-url {
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 8px 10px !important;
  text-overflow: ellipsis !important;
}
.clone-panel-field .ui.input > .button,
.clone-panel-field .clipboard {
  flex: 0 0 auto !important;
  margin-left: auto !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 6px 8px !important;
}
.clone-panel-field .ui.input > .button:hover,
.clone-panel-field .clipboard:hover { background: #e8e8ea !important; }

/* ============================================================
   Чекбоксы и радио — нативный вид, графитовый акцент
   (общее правило input их сломало — возвращаем)
   ============================================================ */
input[type="checkbox"],
input[type="radio"] {
  appearance: auto !important;
  -webkit-appearance: auto !important;
  accent-color: #18181b !important;
  background: initial !important;
  border: initial !important;
  border-radius: revert !important;
  box-shadow: none !important;
  cursor: pointer !important;
}

/* ============================================================
   Аватары — круглые, опрятные, читаемые в листинге
   ============================================================ */
img.ui.avatar,
.ui.avatar,
.ui.avatar img,
a.avatar > img,
.avatar img,
.timeline-avatar img,
img.avatar,
.repo-owner-avatar img {
  border-radius: 50% !important;
  background: #ffffff !important;
  border: 1px solid #e4e4e7 !important;
  object-fit: cover !important;
  padding: 0 !important;
  box-shadow: none !important;
}
/* identicon-аватары (по умолчанию) — лёгкий контейнер, чтобы было видно */
img.ui.avatar[src*="/avatars/"],
img.avatar[src*="/avatars/"] {
  background: #f4f4f5 !important;
}

/* ============================================================
   Единый цвет наведения (hover) во всём интерфейсе
   ============================================================ */
.navbar .item:hover,
header nav .item:hover,
.ui.menu:not(.vertical) .item:hover,
.ui.vertical.menu .item:hover,
.ui.secondary.menu .item:hover,
.ui.dropdown .menu .item:hover,
.ui.button:not(.primary):not(.red):not(.green):not(.orange):hover,
.ui.basic.button:hover,
.tree-item:hover,
.repo-file-item:hover .repo-file-cell,
.repo-file-line:hover .repo-file-cell,
.clone-panel-field .ui.input > .button:hover,
.clone-panel-field .clipboard:hover {
  background: #f0f0f1 !important;
}
/* активный пункт вертикального меню — плашка, БЕЗ табного подчёркивания */
.ui.vertical.menu .active.item,
.ui.secondary.vertical.menu .active.item,
.ui.secondary.vertical.filter.menu .active.item {
  background: #f4f4f5 !important;
  box-shadow: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: #18181b !important;
  font-weight: 600;
}
.ui.secondary.vertical.menu .item:hover,
.ui.secondary.vertical.filter.menu .item:hover { background: #f0f0f1 !important; }

/* Второй ряд табов repo-list (Все/Собственные/Форки/…) — на всю ширину,
   равные доли, текст по центру, как верхний ряд (Репозиторий/Организация) */
.repos-search .overflow-menu-items,
.repos-search .ui.secondary.pointing.menu {
  display: flex !important;
  width: 100% !important;
}
.repos-search .overflow-menu-items .item,
.repos-search .ui.secondary.pointing.menu .item {
  flex: 1 1 0 !important;
  justify-content: center !important;
  text-align: center !important;
  margin: 0 !important;
}

/* Dropdown-триггеры меню (admin ▾, юзер-меню, +, язык, контекст-свитчер) —
   без заливки и рамки в любом состоянии (покой, наведение, фокус, открыт) */
.ui.dropdown.jump,
.ui.dropdown.jump:hover,
.ui.dropdown.jump:focus,
.ui.dropdown.jump.active,
.ui.dropdown.jump.visible,
.ui.secondary.stackable.menu > .item,
.ui.secondary.stackable.menu > .item:hover {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}
/* табы при наведении не заливаются (только подчёркивание активного) */
.ui.secondary.menu:not(.vertical) .item:hover,
.ui.pointing.menu .item:hover,
.ui.tabular.menu .item:hover,
.overflow-menu-items .item:hover { background: transparent !important; }

/* ============================================================
   Коммиты / Ветки / Теги — компактно, подряд, без растяжки
   ============================================================ */
.repository-summary .ui.segment.sub-menu,
.repository-summary .repository-menu {
  display: flex !important;
  justify-content: flex-start !important;
  gap: 4px !important;
  padding: 0 !important;
}
.repository-summary .repository-menu .item,
.repository-menu .item {
  flex: 0 0 auto !important;
  padding: 6px 12px !important;
  margin: 0 !important;
}

/* ============================================================
   ТЁМНАЯ ТЕМА — тот же минималистичный стиль на переменных Gitea
   (светлые хардкоды переопределяются для data-theme=gitea-dark)
   ============================================================ */
html[data-theme="gitea-dark"] {
  --color-primary: #e6e6e8;
  --color-primary-contrast: #18181b;
  --color-primary-hover: #ffffff;
}

/* Поверхности: блоки, карточки, попап-меню, комментарии */
html[data-theme="gitea-dark"] .ui.segment,
html[data-theme="gitea-dark"] .ui.segments,
html[data-theme="gitea-dark"] .ui.segments .segment,
html[data-theme="gitea-dark"] .ui.attached.segment,
html[data-theme="gitea-dark"] .ui.tab.segment,
html[data-theme="gitea-dark"] .ui.card,
html[data-theme="gitea-dark"] .ui.cards > .card,
html[data-theme="gitea-dark"] .comment-header,
html[data-theme="gitea-dark"] .comment .comment-content .render-content,
html[data-theme="gitea-dark"] .timeline-item .comment-body,
html[data-theme="gitea-dark"] .ui.dropdown .menu,
html[data-theme="gitea-dark"] .tippy-box[data-theme~="menu"],
html[data-theme="gitea-dark"] .tippy-box[data-theme~="default"],
html[data-theme="gitea-dark"] .tippy-box[data-theme~="box-with-header"] {
  background: var(--color-box-body) !important;
  color: var(--color-text) !important;
  border-color: var(--color-secondary-bg) !important;
}

/* Поля ввода, selection-dropdown, заливные кнопки, счётчики */
html[data-theme="gitea-dark"] .ui.input > input,
html[data-theme="gitea-dark"] .ui.form input,
html[data-theme="gitea-dark"] .ui.form textarea,
html[data-theme="gitea-dark"] textarea,
html[data-theme="gitea-dark"] input[type="text"],
html[data-theme="gitea-dark"] input[type="password"],
html[data-theme="gitea-dark"] input[type="email"],
html[data-theme="gitea-dark"] input[type="search"],
html[data-theme="gitea-dark"] .ui.selection.dropdown,
html[data-theme="gitea-dark"] .ui.button:not(.primary):not(.red):not(.green):not(.orange):not(.blue):not(.teal),
html[data-theme="gitea-dark"] .ui.basic.button,
html[data-theme="gitea-dark"] .clone-panel-field .ui.input,
html[data-theme="gitea-dark"] .ui.labeled.button > .label {
  background: var(--color-secondary-bg) !important;
  color: var(--color-text) !important;
  border-color: var(--color-secondary-bg) !important;
}
html[data-theme="gitea-dark"] input:focus,
html[data-theme="gitea-dark"] textarea:focus,
html[data-theme="gitea-dark"] .ui.selection.dropdown:focus {
  background: var(--color-box-body) !important;
  border-color: var(--color-secondary) !important;
}

/* Акцентные кнопки, статус-бейджи — светлый монохром-акцент */
html[data-theme="gitea-dark"] .ui.primary.button,
html[data-theme="gitea-dark"] .ui.green.button,
html[data-theme="gitea-dark"] .ui.green.label,
html[data-theme="gitea-dark"] .ui.label.green,
html[data-theme="gitea-dark"] .ui.primary.label,
html[data-theme="gitea-dark"] .ui.blue.label,
html[data-theme="gitea-dark"] .ui.purple.label,
html[data-theme="gitea-dark"] .gs-cta {
  background: var(--color-primary) !important;
  color: var(--color-primary-contrast) !important;
  border-color: var(--color-primary) !important;
}
html[data-theme="gitea-dark"] .ui.primary.button:hover,
html[data-theme="gitea-dark"] .gs-cta:hover { background: #ffffff !important; }

/* Подчёркивание активных табов — светлое */
html[data-theme="gitea-dark"] .ui.secondary.menu > .active.item,
html[data-theme="gitea-dark"] .ui.pointing.menu > .active.item,
html[data-theme="gitea-dark"] .ui.tabular.menu > .active.item,
html[data-theme="gitea-dark"] .ui.two.item.menu > .active.item,
html[data-theme="gitea-dark"] .overflow-menu-items > .active.item,
html[data-theme="gitea-dark"] .repository-menu .item.active {
  box-shadow: inset 0 -2px 0 var(--color-text) !important;
  color: var(--color-text) !important;
}

/* Прогресс-бары */
html[data-theme="gitea-dark"] .ui.progress .bar,
html[data-theme="gitea-dark"] .stats-table .tw-bg-green { background-color: var(--color-text) !important; }

/* Наведение */
html[data-theme="gitea-dark"] .navbar .item:hover,
html[data-theme="gitea-dark"] .ui.menu:not(.vertical) .item:hover,
html[data-theme="gitea-dark"] .ui.vertical.menu .item:hover,
html[data-theme="gitea-dark"] .ui.dropdown .menu .item:hover,
html[data-theme="gitea-dark"] .ui.button:not(.primary):hover,
html[data-theme="gitea-dark"] .ui.basic.button:hover,
html[data-theme="gitea-dark"] .repo-file-item:hover .repo-file-cell,
html[data-theme="gitea-dark"] .repo-file-line:hover .repo-file-cell,
html[data-theme="gitea-dark"] .ui.vertical.menu .active.item,
html[data-theme="gitea-dark"] .ui.secondary.vertical.menu .active.item {
  background: var(--color-hover) !important;
}

/* Границы, разделители, таблицы */
html[data-theme="gitea-dark"] .ui.table thead th,
html[data-theme="gitea-dark"] .ui.table td,
html[data-theme="gitea-dark"] .repo-file-cell,
html[data-theme="gitea-dark"] .repo-home-filelist > div,
html[data-theme="gitea-dark"] .divider,
html[data-theme="gitea-dark"] .ui.divider,
html[data-theme="gitea-dark"] .ui.attached.header,
html[data-theme="gitea-dark"] .ui.tabular.menu,
html[data-theme="gitea-dark"] .ui.secondary.menu {
  border-color: var(--color-secondary-bg) !important;
}

/* Аватары */
html[data-theme="gitea-dark"] img.avatar,
html[data-theme="gitea-dark"] .ui.avatar,
html[data-theme="gitea-dark"] img.ui.avatar {
  background: var(--color-box-body) !important;
  border-color: var(--color-secondary-bg) !important;
}

/* SHA / приглушённый текст */
html[data-theme="gitea-dark"] .commit-id-short,
html[data-theme="gitea-dark"] .ui.label.commit-id-short { color: var(--color-text-light) !important; }
html[data-theme="gitea-dark"] .clone-panel-field input.js-clone-url { color: var(--color-text) !important; }

/* Пункты выпадающих меню — светлый текст (был тёмный #2a2a2e) */
html[data-theme="gitea-dark"] .ui.dropdown .menu > .item,
html[data-theme="gitea-dark"] .ui.dropdown .menu .item,
html[data-theme="gitea-dark"] .ui.dropdown .menu > .header,
html[data-theme="gitea-dark"] .clone-panel-popup a,
html[data-theme="gitea-dark"] .clone-panel-field input.js-clone-url {
  color: var(--color-text) !important;
}
html[data-theme="gitea-dark"] .ui.dropdown .menu > .item:hover,
html[data-theme="gitea-dark"] .ui.dropdown .menu .item:hover {
  background: var(--color-hover) !important;
  color: var(--color-text) !important;
}

/* Остаточные светлые плашки в тёмной теме → тёмные поверхности */
html[data-theme="gitea-dark"] .ui.label.basic,
html[data-theme="gitea-dark"] .ui.label:not(.green):not(.red):not(.purple):not(.blue):not(.teal):not(.orange):not([style*="background"]),
html[data-theme="gitea-dark"] .tree-item.selected,
html[data-theme="gitea-dark"] .tree-item.active,
html[data-theme="gitea-dark"] .repo-file-tree .selected {
  background: var(--color-secondary-bg) !important;
  color: var(--color-text) !important;
}
/* Просмотр кода и номера строк — тёмные */
html[data-theme="gitea-dark"] .code-view,
html[data-theme="gitea-dark"] .file-view.code-view,
html[data-theme="gitea-dark"] .code-view .lines-num,
html[data-theme="gitea-dark"] .lines-num,
html[data-theme="gitea-dark"] .repo-file-cell {
  background: var(--color-box-body) !important;
}
html[data-theme="gitea-dark"] .lines-num { color: var(--color-text-light) !important; }
html[data-theme="gitea-dark"] .tree-item:hover { background: var(--color-hover) !important; }

/* Контекст-свитчер и языковое меню (popup) — тёмные, читаемые */
html[data-theme="gitea-dark"] .menu.context-user-switch,
html[data-theme="gitea-dark"] .ui.dropdown.jump .menu.context-user-switch,
html[data-theme="gitea-dark"] .ui.dropdown.jump > .menu,
html[data-theme="gitea-dark"] .language-menu,
html[data-theme="gitea-dark"] .ui.dropdown.upward > .menu,
html[data-theme="gitea-dark"] .ui.dropdown > .menu.transition {
  background: var(--color-box-body) !important;
  color: var(--color-text) !important;
  border: 1px solid var(--color-secondary-bg) !important;
}
html[data-theme="gitea-dark"] .menu.context-user-switch .item,
html[data-theme="gitea-dark"] .menu.context-user-switch .header,
html[data-theme="gitea-dark"] .ui.dropdown.jump > .menu .item,
html[data-theme="gitea-dark"] .language-menu .item {
  color: var(--color-text) !important;
  background: transparent !important;
}
html[data-theme="gitea-dark"] .menu.context-user-switch .item:hover,
html[data-theme="gitea-dark"] .ui.dropdown.jump > .menu .item:hover,
html[data-theme="gitea-dark"] .language-menu .item:hover,
html[data-theme="gitea-dark"] .language-menu .item.active,
html[data-theme="gitea-dark"] .language-menu .item.selected {
  background: var(--color-hover) !important;
  color: var(--color-text) !important;
}
/* Выбранный пункт в context/jump popup — без белой плашки */
html[data-theme="gitea-dark"] .menu.context-user-switch .item.selected,
html[data-theme="gitea-dark"] .menu.context-user-switch .item.active,
html[data-theme="gitea-dark"] .menu.context-user-switch a.item.selected,
html[data-theme="gitea-dark"] .ui.dropdown.jump > .menu .item.selected,
html[data-theme="gitea-dark"] .ui.dropdown.jump > .menu .item.active {
  background: var(--color-hover) !important;
  color: var(--color-text) !important;
}

/* ЧИТАЕМОСТЬ ТЕКСТА В ТЁМНОЙ ТЕМЕ — серый #6b7280 нечитаем на тёмном.
   Неактивные пункты/табы → светло-серый, активные → основной светлый. */
html[data-theme="gitea-dark"] .ui.menu:not(.vertical) .item,
html[data-theme="gitea-dark"] .ui.secondary.menu .item,
html[data-theme="gitea-dark"] .ui.secondary.pointing.menu .item,
html[data-theme="gitea-dark"] .ui.pointing.menu .item,
html[data-theme="gitea-dark"] .ui.tabular.menu .item,
html[data-theme="gitea-dark"] .ui.two.item.menu .item,
html[data-theme="gitea-dark"] .overflow-menu-items .item,
html[data-theme="gitea-dark"] .clone-panel-tab > a,
html[data-theme="gitea-dark"] .clone-panel-tab > * {
  color: var(--color-text-light) !important;
}
html[data-theme="gitea-dark"] .ui.menu:not(.vertical) .active.item,
html[data-theme="gitea-dark"] .ui.secondary.menu .active.item,
html[data-theme="gitea-dark"] .ui.pointing.menu .active.item,
html[data-theme="gitea-dark"] .ui.tabular.menu .active.item,
html[data-theme="gitea-dark"] .ui.two.item.menu .active.item,
html[data-theme="gitea-dark"] .overflow-menu-items .active.item,
html[data-theme="gitea-dark"] .repository-menu .item.active {
  color: var(--color-text) !important;
}

/* Все всплывающие списки (dropdown/autocomplete: Шаблон, .gitignore,
   лицензия и т.п.) — заметная граница и тень, чтобы выделялись на фоне */
html[data-theme="gitea-dark"] .ui.dropdown .menu,
html[data-theme="gitea-dark"] .ui.selection.dropdown .menu,
html[data-theme="gitea-dark"] .menu.context-user-switch,
html[data-theme="gitea-dark"] .language-menu,
html[data-theme="gitea-dark"] .suggestions,
html[data-theme="gitea-dark"] .tippy-box[data-theme~="menu"],
html[data-theme="gitea-dark"] .tippy-box[data-theme~="default"] {
  background: var(--color-menu) !important;
  border: 1px solid var(--color-secondary) !important;
  box-shadow: 0 10px 28px rgba(0,0,0,.55) !important;
}
/* Внутренний скролл-контейнер списка (был белым) — тёмный */
html[data-theme="gitea-dark"] .scrolling.menu,
html[data-theme="gitea-dark"] .ui.dropdown .menu .scrolling.menu,
html[data-theme="gitea-dark"] .menu.context-user-switch .scrolling.menu,
html[data-theme="gitea-dark"] .ui.dropdown .scrolling.menu > .item {
  background: var(--color-menu) !important;
  color: var(--color-text) !important;
}

/* Выбранный пункт в scrolling/context popup — без рамки/обводки (обе темы) */
.scrolling.menu > .item.active,
.scrolling.menu > .item.selected,
.menu.context-user-switch .item.active,
.menu.context-user-switch .item.selected,
.menu.context-user-switch .scrolling.menu > .item {
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}
/* В светлой теме всплывающие списки тоже с чёткой границей/тенью */
.ui.dropdown .menu,
.ui.selection.dropdown .menu {
  box-shadow: 0 8px 24px rgba(0,0,0,.10) !important;
}

/* Логотип (тёмный </>) — инвертировать, чтобы был виден на тёмном */
html[data-theme="gitea-dark"] .gs-logo,
html[data-theme="gitea-dark"] img[src$="logo.svg"],
html[data-theme="gitea-dark"] .navbar .brand img { filter: invert(0.92) !important; }
