/*
 * Custom Gitea theme overrides.
 * Add your CSS below. This file is loaded on every page after Inventory styles.
 * After deployment, increase v= in templates/custom/header.tmpl to refresh caches.
 */

/* Hide the site footer on every page without reserving layout space. */
body > footer {
  display: none !important;
}

/* Keep Persian tooltip dates in one RTL context, including their leading day. */
html:lang(fa) .tippy-box[data-theme="tooltip"] .tippy-content {
  direction: rtl;
  unicode-bidi: isolate;
  text-align: start;
}

/* Saden branding: URLs are relative to this CSS, including on subpath installs. */
:root {
  --saden-logo: url("./img/saden-logo-light.png");
}

:root[data-theme="gitea-dark"] {
  --saden-logo: url("./img/saden-logo-dark.png");
}

@media (prefers-color-scheme: dark) {
  :root[data-theme="gitea-auto"] {
    --saden-logo: url("./img/saden-logo-dark.png");
  }
}

#navbar-logo img,
.page-content.home img.logo {
  content: var(--saden-logo);
  object-fit: contain;
}

#navbar-logo img {
  width: 45px;
  height: 45px;
  max-width: none;
  max-height: none;
}

#navbar-logo {
  gap: 10px;
}

#navbar-logo .saden-site-title {
  font-family: var(--fonts-regular);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.8;
  white-space: nowrap;
  direction: rtl;
}

/* Hide the navbar Help link on the public homepage. */
body:has(.page-content.home) #navbar a.item[href="https://docs.gitea.com"] {
  display: none;
}

/* Homepage: a single centered brand image. */
.page-content.home.saden-home {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 48px 24px;
}

.saden-home .saden-home-brand {
  width: 100%;
  text-align: center;
}

.page-content.home.saden-home .saden-home-logo {
  display: block;
  width: min(720px, 85vw);
  height: auto;
  max-height: 70vh;
  object-fit: contain;
  margin: 0 auto;
}

/* Local IRANSansX fonts, shared by all Gitea interface pages. */
@font-face {
  font-family: "IRANSansX";
  src: url("./fonts/iransansx/IRANSansX-Regular.woff2") format("woff2"),
       url("./fonts/iransansx/IRANSansX-Regular.woff") format("woff");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "IRANSansX";
  src: url("./fonts/iransansx/IRANSansX-Bold.woff2") format("woff2"),
       url("./fonts/iransansx/IRANSansX-Bold.woff") format("woff");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

:root {
  --fonts-override: "IRANSansX";
}

/* Minimal Bootstrap-inspired navigation with Persian typography. */
#navbar {
  direction: rtl;
  text-align: right;
  padding: 4px clamp(12px, 2vw, 28px);
  background: var(--color-nav-bg);
  border-bottom: 1px solid var(--color-secondary);
  box-shadow: none;
  font-family: var(--fonts-regular);
  font-size: 14px;
  line-height: 1.8;
}

#navbar .navbar-left,
#navbar .navbar-right {
  gap: 2px;
  min-height: 48px;
}

#navbar .navbar-left > .item,
#navbar .navbar-right > .item,
#navbar .navbar-mobile-right > .item {
  min-height: 36px;
  padding: 5px 10px;
  gap: 6px;
  border-radius: 4px;
  font-weight: 400;
  transition: background-color 150ms ease, color 150ms ease;
}

#navbar a.item:hover,
#navbar button.item:hover {
  background: var(--color-nav-hover-bg);
}

#navbar .navbar-left > .item.active,
#navbar .navbar-right > .item.active {
  background: transparent;
  color: var(--color-nav-text);
  font-weight: 700;
}

#navbar .item:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}

#navbar #navbar-logo {
  padding: 0;
  margin-inline-end: 8px;
  background: transparent;
}

#navbar .ui.dropdown > .menu {
  direction: rtl;
  text-align: right;
  padding: 4px;
  border: 1px solid var(--color-secondary);
  border-radius: 6px;
  box-shadow: 0 2px 8px #0000000d;
}

#navbar .ui.dropdown > .menu > .item {
  border-radius: 4px;
  line-height: 1.8;
  font-family: var(--fonts-regular);
}

/* Account menus open toward the center instead of outside the left edge. */
#navbar .navbar-right .ui.dropdown > .menu {
  right: auto;
  left: 0;
}

@media (max-width: 767.98px) {
  #navbar {
    padding: 4px 12px;
  }

  #navbar .navbar-mobile-right {
    margin-left: 0;
    margin-right: auto;
  }

  #navbar.navbar-menu-open .navbar-right {
    align-items: stretch;
    width: 100%;
  }

  #navbar.navbar-menu-open .navbar-left > .item,
  #navbar.navbar-menu-open .navbar-right > .item {
    min-height: 42px;
    justify-content: flex-start;
  }
}

@media (prefers-reduced-motion: reduce) {
  #navbar .item {
    transition: none;
  }
}

/* Align account and create-menu entries to the right, including their icons. */
#navbar .navbar-right .ui.dropdown > .menu > .item {
  display: flex;
  direction: rtl;
  justify-content: flex-start;
  align-items: center;
  gap: 8px;
  text-align: right;
}

#navbar .navbar-right .ui.dropdown > .menu > .header {
  direction: rtl;
  text-align: right;
}

#navbar .navbar-right .ui.dropdown > .menu > .item > .svg {
  flex-shrink: 0;
  margin: 0;
}

/* Mirror the complete Issues dashboard, including sidebar and filter controls. */
.page-content.dashboard.issues {
  direction: rtl;
  text-align: right;
  font-family: var(--fonts-regular);
  font-size: 14px;
  line-height: 1.9;
}

.page-content.dashboard.issues .ui.menu .item,
.page-content.dashboard.issues .ui.dropdown .menu,
.page-content.dashboard.issues .ui.dropdown .menu > .item,
.page-content.dashboard.issues .ui.dropdown .menu > .header,
.page-content.dashboard.issues .ui.input > input {
  text-align: right;
}

.page-content.dashboard.issues .flex-container-nav .filter.menu > .item {
  display: flex;
  align-items: center;
  gap: 8px;
}

.page-content.dashboard.issues .flex-container-nav .filter.menu > .item > strong {
  float: none;
  margin-inline-start: auto;
  margin-inline-end: 0;
}

.page-content.dashboard.issues .ui.dropdown > .menu {
  left: auto;
  right: 0;
}

.page-content.dashboard.issues .list-header-filters > .dropdown:last-child > .menu {
  right: auto;
  left: 0;
}

/* Original joined search controls, with outer corners mirrored for RTL. */
.page-content.dashboard.issues .list-header-search .ui.action.input {
  gap: 0;
}

.page-content.dashboard.issues .list-header-search .ui.action.input > input {
  min-width: 0;
  border: 1px solid var(--color-input-border);
  border-radius: 0 6px 6px 0 !important;
}

.page-content.dashboard.issues .list-header-search .ui.action.input > .ui.selection.dropdown {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  gap: 0;
  min-width: 116px;
  padding-inline: 16px;
  margin: 0;
  border: 1px solid var(--color-input-border);
  border-inline-start-width: 0;
  border-radius: 0 !important;
  box-shadow: none;
}

/* Hide only the search-mode arrow; the dropdown remains interactive. */
.page-content.dashboard.issues .list-header-search .ui.selection.dropdown > .dropdown.icon {
  display: none;
}

.page-content.dashboard.issues .list-header-search .ui.action.input > .button:last-child {
  min-width: 40px;
  padding-inline: 11px;
  margin: 0;
  border: 1px solid var(--color-input-border);
  border-inline-start-width: 0;
  border-radius: 6px 0 0 6px !important;
  box-shadow: none;
}

.page-content.dashboard.issues #issue-list .issue-checkbox {
  margin-inline-start: 0;
  margin-inline-end: 14px;
}

/* Keep repository references readable within Persian rows. */
.page-content.dashboard.issues #issue-list .index,
.page-content.dashboard.issues #issue-list .branches,
.page-content.dashboard.issues #issue-list .sha {
  direction: ltr;
  unicode-bidi: isolate;
}

.page-content.dashboard.issues .pagination .item > .svg {
  transform: scaleX(-1);
}

/* Issues dashboard: minimal controls and readable Persian rows. */
.page-content.dashboard.issues .secondary-nav {
  box-shadow: none;
}

.page-content.dashboard.issues .secondary-nav .ui.menu > .item {
  padding: 8px 12px;
}

.page-content.dashboard.issues .secondary-nav .ui.dropdown > .text {
  display: flex;
  align-items: center;
  gap: 8px;
}

.page-content.dashboard.issues .context-user-switch .item {
  display: flex;
  align-items: center;
  gap: 8px;
}

.page-content.dashboard.issues .context-user-switch .item img.avatar {
  margin-inline: 0;
}

.page-content.dashboard.issues .flex-container {
  gap: 24px;
}

.page-content.dashboard.issues .flex-container-nav .filter.menu {
  padding: 6px;
  border: 1px solid var(--color-secondary);
  border-radius: 8px;
  box-shadow: none;
}

.page-content.dashboard.issues .flex-container-nav .filter.menu > .item {
  min-height: 42px;
  margin: 2px 0;
  padding: 8px 12px;
  border-radius: 4px;
  line-height: 1.8;
}

.page-content.dashboard.issues .ui.secondary.menu .item.active {
  color: var(--color-text);
  background: var(--color-active);
  font-weight: 700;
}

.page-content.dashboard.issues .flex-container-nav .filter.menu > .item:hover {
  background: var(--color-hover);
}

.page-content.dashboard.issues .flex-container-nav .filter.menu > .item > strong {
  min-width: 28px;
  padding: 1px 6px;
  border-radius: 4px;
  background: var(--color-active);
  text-align: center;
  font-size: 12px;
}

.page-content.dashboard.issues .list-header {
  gap: 12px;
  padding-bottom: 16px;
}

/* One joined status control; override Gitea's flex-items-block spacing. */
.page-content.dashboard.issues .list-header-toggle.ui.menu {
  display: inline-flex;
  align-items: stretch;
  flex-wrap: nowrap;
  gap: 0 !important;
  padding: 0;
  margin: 0;
  background: transparent;
  border: 1px solid var(--color-secondary);
  border-radius: 6px;
  box-shadow: none;
  overflow: hidden;
}

.page-content.dashboard.issues .list-header-toggle.ui.menu > .item {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  min-height: 40px;
  margin: 0 !important;
  padding: 8px 12px;
  gap: 6px;
  border: 0;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--color-text);
  font-size: 13px;
  font-weight: 400;
  line-height: 1.8;
  white-space: nowrap;
  box-shadow: none;
}

.page-content.dashboard.issues .list-header-toggle.ui.menu > .item + .item {
  border-inline-start: 1px solid var(--color-secondary);
}

.page-content.dashboard.issues .list-header-toggle.ui.menu > .item::before,
.page-content.dashboard.issues .list-header-toggle.ui.menu > .item::after {
  display: none;
}

.page-content.dashboard.issues .list-header-toggle.ui.menu > .item:hover {
  background: var(--color-hover) !important;
}

.page-content.dashboard.issues .list-header-toggle.ui.menu > .item.active {
  background: var(--color-active) !important;
  font-weight: 700;
}

.page-content.dashboard.issues .ui.input > input,
.page-content.dashboard.issues .ui.button,
.page-content.dashboard.issues .ui.selection.dropdown {
  font-family: var(--fonts-regular);
  line-height: 1.8;
}

.page-content.dashboard.issues .list-header-filters > .item {
  padding: 8px 10px;
  border-radius: 6px;
}

.page-content.dashboard.issues .ui.dropdown > .menu {
  padding: 4px;
  border: 1px solid var(--color-secondary);
  border-radius: 6px;
  max-width: calc(100vw - 32px);
  box-shadow: 0 2px 8px #0000000d;
}

.page-content.dashboard.issues .ui.dropdown .menu > .item {
  text-align: right;
  border-radius: 4px;
  line-height: 1.8;
  font-family: var(--fonts-regular);
}

.page-content.dashboard.issues #issue-list > .item {
  padding: 16px 12px;
  border-radius: 0;
  box-shadow: none;
  border-color: var(--color-secondary);
}

.page-content.dashboard.issues #issue-list > .item:hover {
  background: var(--color-hover);
}

.page-content.dashboard.issues #issue-list .list-item-large-title {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.9;
}

.page-content.dashboard.issues #issue-list .item-body {
  margin-top: 8px;
  color: var(--color-text-light);
  font-size: 12px;
  line-height: 1.9;
}

.page-content.dashboard.issues :is(a, button, input, .ui.dropdown):focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}

@media (max-width: 767.98px) {
  .page-content.dashboard.issues .flex-container {
    gap: 16px;
  }

  .page-content.dashboard.issues .list-header-search {
    width: 100%;
    min-width: 0;
  }

  .page-content.dashboard.issues .list-header-filters {
    flex-wrap: wrap;
    gap: 4px;
  }

  .page-content.dashboard.issues #issue-list > .item {
    padding: 12px 8px;
  }

  .page-content.dashboard.issues .list-header-toggle > .item,
  .page-content.dashboard.issues .list-header-filters > .item,
  .page-content.dashboard.issues .ui.dropdown .menu > .item,
  .page-content.dashboard.issues .list-header-search .ui.action.input > .button {
    min-height: 42px;
  }
}

/* Enlarge user and organization profile images while reserving layout space. */
img.avatar {
  zoom: 1.2;
}

/* A further 20% increase for header, Issues and homepage profile images. */
#navbar img.avatar,
.page-content.dashboard.issues img.avatar,
.page-content.dashboard.feeds img.avatar {
  zoom: 1.44;
}

/* Logged-in homepage: RTL dashboard, independent of the Issues dashboard. */
.page-content.dashboard.feeds {
  direction: rtl;
  text-align: right;
}

.page-content.dashboard.feeds .ui.menu .item,
.page-content.dashboard.feeds .ui.dropdown .menu,
.page-content.dashboard.feeds .ui.dropdown .menu > .item,
.page-content.dashboard.feeds .ui.dropdown .menu > .header,
.page-content.dashboard.feeds .ui.input > input {
  text-align: right;
}

.page-content.dashboard.feeds .secondary-nav .ui.dropdown > .text,
.page-content.dashboard.feeds .context-user-switch .item {
  display: flex;
  align-items: center;
  gap: 8px;
}

.page-content.dashboard.feeds .context-user-switch .item img.avatar {
  margin-inline: 0;
}

.page-content.dashboard.feeds .secondary-nav .ui.dropdown > .menu {
  left: auto;
  right: 0;
}

.page-content.dashboard.feeds #dashboard-repo-list .repo-owner-name-list {
  padding-inline: 0;
}

.page-content.dashboard.feeds #dashboard-repo-list .header .label {
  margin-inline: 8px 0;
}

.page-content.dashboard.feeds #dashboard-repo-list .repo-list-link > .tw-truncate,
.page-content.dashboard.feeds #activity-feed .sha {
  direction: ltr;
  unicode-bidi: isolate;
}

/* Keep code in its original reading order. */
.page-content.dashboard.feeds :is(pre, code) {
  direction: ltr;
  text-align: left;
}

.page-content.dashboard.feeds #activity-feed .markup :is(ul, ol) {
  padding-inline-start: 2em;
  padding-inline-end: 0;
}

.page-content.dashboard.feeds .pagination .item > .svg {
  transform: scaleX(-1);
}

@media (min-width: 768px) {
  .page-content.dashboard.feeds > .flex-container {
    flex-direction: row;
  }
}

@media (max-width: 767.98px) {
  .page-content.dashboard.feeds > .flex-container {
    flex-direction: column;
  }

  .page-content.dashboard.feeds #dashboard-repo-list {
    width: 100%;
  }
}

/* Persian contribution chart: readable labels with room outside the SVG grid. */
.page-content.dashboard.feeds .activity-heatmap-container {
  direction: rtl;
  padding: 16px 24px;
  font-family: var(--fonts-regular);
  text-align: right;
}

.page-content.dashboard.feeds #user-heatmap {
  min-width: 0;
  width: 100%;
  padding-block: 4px;
}

.page-content.dashboard.feeds .heatmap-svg {
  display: block;
  direction: ltr;
  overflow: hidden;
  min-width: 0;
  max-width: 100%;
  width: 100%;
  height: auto;
}

.page-content.dashboard.feeds .heatmap-svg text {
  font-family: var(--fonts-regular);
  fill: var(--color-text-light);
}

.page-content.dashboard.feeds .heatmap-month-label {
  font-size: 9px;
  direction: rtl;
  text-anchor: middle;
  transform: translateY(-1px);
}

.page-content.dashboard.feeds .heatmap-day-label {
  display: none;
}

.page-content.dashboard.feeds .heatmap-day {
  rx: 1px;
  ry: 1px;
}

.page-content.dashboard.feeds .heatmap-footer {
  display: flex;
  direction: rtl;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px 24px;
  margin-block-start: 12px;
  font-size: 12px;
  line-height: 1.9;
  color: var(--color-text-light);
}

.page-content.dashboard.feeds .heatmap-legend {
  display: flex;
  align-items: center;
  direction: ltr;
  gap: 8px;
}

.page-content.dashboard.feeds .heatmap-legend > div {
  direction: rtl;
}

@media (max-width: 767.98px) {
  .page-content.dashboard.feeds .activity-heatmap-container {
    padding: 12px 16px;
  }
}

/* Separate mixed Persian/Latin activity metadata without changing feed content. */
.page-content.dashboard.feeds #activity-feed .activity-summary {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 6px 0;
  line-height: 1.9;
}

.page-content.dashboard.feeds #activity-feed .activity-summary > span {
  min-width: 0;
  unicode-bidi: isolate;
  overflow-wrap: anywhere;
}

.page-content.dashboard.feeds #activity-feed .activity-summary > span + span {
  border-inline-start: 1px solid var(--color-secondary);
  margin-inline-start: 10px;
  padding-inline-start: 10px;
}

.page-content.dashboard.feeds #activity-feed .activity-description {
  direction: rtl;
  text-align: right;
  unicode-bidi: isolate;
}

.page-content.dashboard.feeds #activity-feed .activity-description a {
  direction: ltr;
  unicode-bidi: isolate;
}

.page-content.dashboard.feeds #activity-feed .activity-time {
  color: var(--color-text-light);
  font-size: 12px;
}

/* Sidebar repository search: joined RTL corners and search icon placement. */
.page-content.dashboard.feeds #dashboard-repo-list .repos-search .ui.action.input > input {
  min-width: 0;
  border: 1px solid var(--color-input-border);
  border-radius: 0 6px 6px 0 !important;
  padding-inline: 44px 12px !important;
}

.page-content.dashboard.feeds #dashboard-repo-list .repos-search .ui.left.icon.input > i.icon {
  left: auto;
  right: 0;
}

.page-content.dashboard.feeds #dashboard-repo-list .repos-search .ui.action.input > .ui.dropdown.button {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  border: 1px solid var(--color-input-border);
  border-inline-start-width: 0;
  border-radius: 6px 0 0 6px !important;
  box-shadow: none;
}

.page-content.dashboard.feeds #dashboard-repo-list .repos-search .ui.dropdown > .menu {
  right: auto;
  left: 0;
}

/* Explore repositories: RTL layout, filters and joined search controls. */
.page-content.explore.repositories {
  direction: rtl;
  text-align: right;
  font-family: var(--fonts-regular);
  font-size: 15px;
  line-height: 1.9;
}

.page-content.explore.repositories .ui.menu .item,
.page-content.explore.repositories .ui.dropdown .menu,
.page-content.explore.repositories .ui.dropdown .menu > .item,
.page-content.explore.repositories .ui.input > input {
  text-align: right;
}

.page-content.explore.repositories .ui.action.input > input {
  min-width: 0;
  min-height: 40px;
  font-family: var(--fonts-regular);
  padding: 8px 12px;
  border: 1px solid var(--color-input-border);
  border-radius: 0 6px 6px 0 !important;
}

.page-content.explore.repositories .ui.action.input > .button:last-child {
  min-width: 40px;
  margin: 0;
  box-shadow: none;
  border-radius: 6px 0 0 6px !important;
}

.page-content.explore.repositories .filter.menu .dropdown > .menu {
  right: 0;
  left: auto;
}

.page-content.explore.repositories .filter.menu .dropdown:last-child > .menu {
  right: auto;
  left: 0;
}

.page-content.explore.repositories .flex-divided-list .item-title {
  direction: ltr;
  unicode-bidi: isolate;
  text-align: right;
}

.page-content.explore.repositories .flex-divided-list .label-list {
  direction: rtl;
  unicode-bidi: isolate;
}

.page-content.explore.repositories .pagination .item > .svg {
  transform: scaleX(-1);
}

.page-content.explore.repositories .filter.menu > form {
  gap: 12px;
}

.page-content.explore.repositories .filter.menu .dropdown.item {
  padding: 8px 12px;
  border-radius: 4px;
  gap: 6px;
  line-height: 1.8;
}

.page-content.explore.repositories .ui.dropdown > .menu {
  max-width: calc(100vw - 32px);
  padding: 4px;
  border: 1px solid var(--color-secondary);
  border-radius: 6px;
  box-shadow: 0 2px 8px #0000000d;
}

.page-content.explore.repositories .ui.dropdown .menu > .item {
  font-family: var(--fonts-regular);
  line-height: 1.8;
  border-radius: 4px;
}

.page-content.explore.repositories .ui.dropdown .menu > .item.active {
  color: var(--color-text);
  background: var(--color-active);
  font-weight: 700;
}

.page-content.explore.repositories .secondary-nav .item.active {
  color: var(--color-text);
  font-weight: 700;
}

.page-content.explore.repositories .flex-divided-list > .item {
  padding: 20px 16px;
  gap: 12px;
  border-color: var(--color-secondary);
  border-radius: 0;
  box-shadow: none;
}

.page-content.explore.repositories .flex-divided-list > .item:hover {
  background: var(--color-hover);
}

.page-content.explore.repositories .item-title a.name {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.9;
}

.page-content.explore.repositories .flex-divided-list .item-body {
  margin-block-start: 4px;
  color: var(--color-text-light);
  font-size: 14px;
  line-height: 1.9;
}

.page-content.explore.repositories .flex-divided-list .item-main > .item-body:last-child {
  font-size: 16px;
}

.page-content.explore.repositories .item-trailing {
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
  color: var(--color-text-light);
  font-size: 13px;
}

.page-content.explore.repositories .flex-divided-list .item-main {
  gap: 4px;
}

.page-content.explore.repositories .flex-divided-list .item-header {
  align-items: baseline;
  gap: 16px;
}

.page-content.explore.repositories .item-title .label-list {
  display: inline-flex;
  vertical-align: middle;
  margin-inline: 8px 0;
}

.page-content.explore.repositories .item-title .ui.basic.label {
  padding: 3px 8px;
  border-color: var(--color-secondary);
  border-radius: 4px;
  color: var(--color-text-light);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.6;
}

.page-content.explore.repositories .item-trailing > a {
  gap: 6px;
  white-space: nowrap;
}


.page-content.explore.repositories :is(a, button, input, .ui.dropdown):focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}

@media (max-width: 767.98px) {
  .page-content.explore.repositories .filter.menu .ui.action.input {
    flex-basis: 100%;
  }

  .page-content.explore.repositories .filter.menu .dropdown.item,
  .page-content.explore.repositories .ui.dropdown .menu > .item,
  .page-content.explore.repositories .ui.action.input > :is(input, .button) {
    min-height: 42px;
  }

  .page-content.explore.repositories .flex-divided-list .item-header {
    flex-wrap: wrap;
    gap: 8px;
  }

  .page-content.explore.repositories .flex-divided-list > .item {
    padding-block: 12px;
  }
}

/* Explore users and organizations: RTL lists, search and sorting menus. */
.page-content.explore:is(.users, .organizations) {
  direction: rtl;
  text-align: right;
}

.page-content.explore:is(.users, .organizations) .ui.menu .item,
.page-content.explore:is(.users, .organizations) .ui.dropdown .menu,
.page-content.explore:is(.users, .organizations) .ui.dropdown .menu > .item,
.page-content.explore:is(.users, .organizations) .ui.input > input {
  text-align: right;
}

.page-content.explore:is(.users, .organizations) .ui.action.input > input {
  min-width: 0;
  border: 1px solid var(--color-input-border);
  border-radius: 0 6px 6px 0 !important;
}

.page-content.explore:is(.users, .organizations) .ui.action.input > .button:last-child {
  margin: 0;
  border-radius: 6px 0 0 6px !important;
}

.page-content.explore:is(.users, .organizations) .filter.menu > .dropdown > .menu {
  right: auto;
  left: 0;
}

.page-content.explore:is(.users, .organizations) .item-title a,
.page-content.explore:is(.users, .organizations) a[href^="mailto:"] {
  unicode-bidi: isolate;
}

.page-content.explore:is(.users, .organizations) a[href^="mailto:"] {
  direction: ltr;
}

.page-content.explore:is(.users, .organizations) .pagination .item > .svg {
  transform: scaleX(-1);
}

/* Repository code page: RTL interface with isolated technical content. */
.page-content.repository.file.list {
  direction: rtl;
  text-align: right;
}

.page-content.repository.file.list .ui.menu .item,
.page-content.repository.file.list .ui.dropdown .menu,
.page-content.repository.file.list .ui.dropdown .menu > .item,
.page-content.repository.file.list .ui.dropdown .menu > .header,
.page-content.repository.file.list .ui.input > input {
  text-align: right;
}

.page-content.repository.file.list :is(.repo-title, .breadcrumb, .sha, .entry-name, .branch-name, .tag-name) {
  direction: ltr;
  unicode-bidi: isolate;
}

.page-content.repository.file.list #repo-files-table .repo-file-cell.name {
  justify-content: flex-start;
}

.page-content.repository.file.list #repo-files-table .repo-file-cell.age {
  text-align: left;
}

.page-content.repository.file.list .repo-button-row-left .ui.dropdown > .menu {
  right: 0;
  left: auto;
}

.page-content.repository.file.list .repo-button-row-right .ui.dropdown > .menu {
  right: auto;
  left: 0;
}

/* Source, blame and diffs retain their layout, line numbers and monospace font. */
.page-content.repository.file.list :is(.file-view, .code-view, .code-diff, .blame, pre, code) {
  direction: ltr;
  text-align: left;
}

.page-content.repository.file.list .markup {
  direction: rtl;
  text-align: right;
}

.page-content.repository.file.list .markup :is(pre, code) {
  direction: ltr;
  text-align: left;
  unicode-bidi: isolate;
}

.page-content.repository.file.list .markup :is(ul, ol) {
  padding-inline-start: 2em;
  padding-inline-end: 0;
}

/* Shared repository header controls use the same RTL corners on every tab. */
.page-content.repository .repo-header .ui.labeled.button {
  direction: rtl;
}

.page-content.repository .repo-header .ui.labeled.button > .button,
.page-content.repository .repo-header .ui.labeled.button > .dropdown > .button {
  border-radius: 0 var(--border-radius) var(--border-radius) 0 !important;
}

.page-content.repository .repo-header .ui.labeled.button > .label {
  border-radius: var(--border-radius) 0 0 var(--border-radius) !important;
  border-left-width: 1px !important;
  border-right-width: 0 !important;
}

/* Repository sidebar code search has a nested input wrapper. */
.page-content.repository.file.list .repo-home-sidebar-top > form .global-shortcut-wrapper {
  min-width: 0;
}

.page-content.repository.file.list .repo-home-sidebar-top > form input[name="q"] {
  direction: rtl;
  min-width: 0;
  padding-inline: 12px 32px;
  border: 1px solid var(--color-input-border);
  border-radius: 0 6px 6px 0 !important;
  text-align: right;
}

.page-content.repository.file.list .repo-home-sidebar-top > form .global-shortcut-wrapper > kbd {
  direction: ltr;
  right: auto;
  left: 8px;
}

.page-content.repository.file.list .repo-home-sidebar-top > form .ui.action.input > .button:last-child {
  margin: 0;
  border-radius: 6px 0 0 6px !important;
  box-shadow: none;
}

/* Repository file finder: Persian placeholder with space for its shortcut. */
.page-content.repository.file.list .repo-file-search-container input {
  direction: rtl;
  text-align: right;
  padding-inline: 12px 32px;
}

.page-content.repository.file.list .repo-file-search-container .global-shortcut-wrapper > kbd {
  direction: ltr;
  right: auto;
  left: 8px;
}

/* Hide repository watch and star controls together with their counters. */
.page-content.repository .repo-header .ui.labeled.button:has(> a.label[href$="/watchers"]),
.page-content.repository .repo-header .ui.labeled.button:has(> a.label[href$="/stars"]) {
  display: none;
}

/* Hide the RSS action in the repository header. */
.page-content.repository .repo-header a.button[href$=".rss"] {
  display: none;
}

/* Repository issue and sprint lists: shared RTL filters and search controls. */
.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) {
  direction: rtl;
  text-align: right;
}

.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) .ui.menu .item,
.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) .ui.dropdown .menu,
.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) .ui.dropdown .menu > .item,
.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) .ui.dropdown .menu > .header,
.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) .ui.input > input {
  text-align: right;
}

.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) .ui.action.input > input {
  direction: rtl;
  min-width: 0;
  border: 1px solid var(--color-input-border);
  border-radius: 0 6px 6px 0 !important;
}

.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) .ui.action.input > .ui.selection.dropdown {
  margin: 0;
  border-radius: 0 !important;
}

.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) .ui.action.input > .button:last-child {
  margin: 0;
  border-radius: 6px 0 0 6px !important;
}

.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) .ui.dropdown > .menu {
  right: 0;
  left: auto;
}

.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) .issue-list-toolbar-right .ui.dropdown > .menu {
  right: auto;
  left: 0;
}

.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) #issue-list .issue-checkbox {
  margin-inline-start: 0;
  margin-inline-end: 14px;
}

.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) #issue-list :is(.index, .branches, .sha) {
  direction: ltr;
  unicode-bidi: isolate;
}

.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) .pagination .item > .svg {
  transform: scaleX(-1);
}

/* Repository open/closed control: correct outside corners in RTL. */
.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) .issue-list-toolbar-left > .small-menu-items.ui.menu {
  border-radius: 6px;
  overflow: hidden;
}

.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) .issue-list-toolbar-left > .small-menu-items.ui.menu > .item {
  border-radius: 0 !important;
}

.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) .issue-list-toolbar-left > .small-menu-items.ui.menu > .item:first-child {
  border-radius: 0 6px 6px 0 !important;
}

.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) .issue-list-toolbar-left > .small-menu-items.ui.menu > .item:last-child {
  border-radius: 6px 0 0 6px !important;
}

.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) .issue-list-toolbar-left > .small-menu-items.ui.menu > .item::before {
  right: auto;
  left: 0;
}

.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) .issue-list-toolbar-left > .small-menu-items.ui.menu > .item:last-child::before {
  display: none;
}

/* Align select-all with the status control, with a separate RTL gap. */
.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) .issue-list-toolbar-left {
  display: flex;
  align-items: center;
  gap: 12px;
}

.page-content.repository:is(.issue-list, .milestones, .milestone-issue-list) .issue-list-toolbar-left > .issue-checkbox-all {
  flex: 0 0 auto;
  align-self: center;
  margin: 0 !important;
}

/* Sprint descriptions follow Persian flow while code remains LTR. */
.page-content.repository:is(.milestones, .milestone-issue-list) .markup :is(ul, ol) {
  padding-inline-start: 2em;
  padding-inline-end: 0;
}

.page-content.repository:is(.milestones, .milestone-issue-list) .markup :is(pre, code) {
  direction: ltr;
  text-align: left;
  unicode-bidi: isolate;
}

/* Labels/sprints navigation: put the divider on the left of the first RTL tab. */
.page-content.repository .issue-list-navbar > .item::before {
  right: auto;
  left: 0;
}

.page-content.repository .issue-list-navbar > .item:last-child::before {
  display: none;
}

/* Shared create/edit sprint form. */
.page-content.repository.new.milestone {
  direction: rtl;
  text-align: right;
}

.page-content.repository.new.milestone .ui.form .field > label,
.page-content.repository.new.milestone .ui.menu .item,
.page-content.repository.new.milestone .ui.dropdown .menu > .item {
  text-align: right;
}

.page-content.repository.new.milestone .ui.form input[name="title"],
.page-content.repository.new.milestone .ui.form textarea {
  direction: rtl;
  text-align: right;
}

.page-content.repository.new.milestone input[name="deadline"] {
  direction: ltr;
  text-align: left;
}

.page-content.repository.new.milestone #milestone-clear-deadline {
  display: inline-block;
  margin-inline-start: 8px;
}

.page-content.repository.new.milestone .markup {
  direction: rtl;
  text-align: right;
}

.page-content.repository.new.milestone .markup :is(ul, ol) {
  padding-inline-start: 2em;
  padding-inline-end: 0;
}

.page-content.repository.new.milestone .markup :is(pre, code) {
  direction: ltr;
  text-align: left;
  unicode-bidi: isolate;
}

/* New issue: RTL form, metadata sidebar and Persian editor preview. */
.page-content.repository.new.issue {
  direction: rtl;
  text-align: right;
}

.page-content.repository.new.issue .ui.form :is(input:not([type="date"]):not([type="number"]), textarea),
.page-content.repository.new.issue .ui.form .field > label,
.page-content.repository.new.issue .ui.dropdown .menu,
.page-content.repository.new.issue .ui.dropdown .menu > .item,
.page-content.repository.new.issue .ui.menu .item {
  direction: rtl;
  text-align: right;
}

.page-content.repository.new.issue #new-issue .comment > .not-mobile {
  margin-right: 0 !important;
  margin-left: 16px;
}

/* The default comment pointer is drawn for a left-side avatar. */
.page-content.repository.new.issue .avatar-content-left-arrow::before,
.page-content.repository.new.issue .avatar-content-left-arrow::after {
  display: none;
}

.page-content.repository.new.issue .issue-content-right .ui.dropdown > .menu {
  right: auto;
  left: 0;
}

.page-content.repository.new.issue .ui.checkbox label {
  padding-left: 0;
  padding-right: 26px;
  text-align: right;
}

.page-content.repository.new.issue .ui.checkbox label::before,
.page-content.repository.new.issue .ui.checkbox label::after,
.page-content.repository.new.issue .ui.checkbox input {
  left: auto;
  right: 0;
}

.page-content.repository.new.issue .markup {
  direction: rtl;
  text-align: right;
}

.page-content.repository.new.issue .markup :is(ul, ol) {
  padding-inline-start: 2em;
  padding-inline-end: 0;
}

.page-content.repository.new.issue .markup :is(pre, code) {
  direction: ltr;
  text-align: left;
  unicode-bidi: isolate;
}

/* Issue details: RTL conversation, title and metadata sidebar. */
.page-content.repository.view.issue .issue-event-time {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-inline-start: 12px;
  color: var(--color-text-light-2);
  white-space: nowrap;
  vertical-align: baseline;
}

.page-content.repository.view.issue .issue-event-time > .svg {
  flex-shrink: 0;
}

.page-content.repository.view.issue .issue-title-meta {
  column-gap: 12px;
  row-gap: 8px;
}

.page-content.repository.view.issue .issue-title-meta > .tw-flex-1 {
  margin-inline: 0 !important;
}

.page-content.repository.view.issue {
  direction: rtl;
  text-align: right;
}

.page-content.repository.view.issue .ui.menu .item,
.page-content.repository.view.issue .ui.dropdown .menu,
.page-content.repository.view.issue .ui.dropdown .menu > .item,
.page-content.repository.view.issue .ui.dropdown .menu > .header,
.page-content.repository.view.issue .comment-header,
.page-content.repository.view.issue .ui.form textarea,
.page-content.repository.view.issue input[name="title"] {
  direction: rtl;
  text-align: right;
}

.page-content.repository.view.issue .issue-content-right .ui.dropdown > .menu,
.page-content.repository.view.issue .comment-header-right .ui.dropdown > .menu {
  right: auto;
  left: 0;
}

/* Connected sidebar controls: round only the outside corners in RTL. */
.page-content.repository.view.issue .issue-content-right :is(.ui.buttons, .ui.action.input) {
  border-radius: 4px;
}

.page-content.repository.view.issue .issue-content-right :is(.ui.buttons, .ui.action.input) > :is(.button, input, .selection.dropdown) {
  border: 1px solid var(--color-input-border) !important;
  border-radius: 0 !important;
  margin-inline: 0 !important;
}

.page-content.repository.view.issue .issue-content-right :is(.ui.buttons, .ui.action.input) > :is(.button, input, .selection.dropdown):not(:first-child) {
  border-inline-start-width: 0 !important;
}

.page-content.repository.view.issue .issue-content-right .ui.action.input > :is(input, .selection.dropdown):focus,
.page-content.repository.view.issue .issue-content-right .ui.action.input > .selection.dropdown.active {
  border-color: var(--color-primary) !important;
}

.page-content.repository.view.issue .issue-content-right :is(.ui.buttons, .ui.action.input) > :first-child {
  border-radius: 0 4px 4px 0 !important;
}

.page-content.repository.view.issue .issue-content-right :is(.ui.buttons, .ui.action.input) > :last-child {
  border-radius: 4px 0 0 4px !important;
}

.page-content.repository.view.issue .issue-content-right :is(.ui.buttons, .ui.action.input) > :only-child {
  border-radius: 4px !important;
}

/* Mirror the upstream timeline's physical left offsets, including author avatars. */
.page-content.repository.view.issue .comment-list {
  margin-left: 0;
  margin-right: 40px;
  padding-left: 0;
  padding-right: 16px;
}

.page-content.repository.view.issue .comment-list::before {
  left: auto;
  right: 30px;
}

.page-content.repository.view.issue .comment-list .timeline-item {
  margin-left: 0;
  margin-right: 16px;
}

.page-content.repository.view.issue .comment-list .timeline-item .timeline-avatar {
  left: auto;
  right: -68px;
}

.page-content.repository.view.issue .comment-list .timeline-item.comment > .content {
  margin-left: 0;
  margin-right: -16px;
}

.page-content.repository.view.issue .comment-list .timeline-item .badge {
  margin-left: 4px;
  margin-right: -33px;
}

.page-content.repository.view.issue .comment-list .timeline-item.commits-list,
.page-content.repository.view.issue .comment-list .event {
  padding-left: 0;
  padding-right: 15px;
}

.page-content.repository.view.issue .comment-list .timeline-item.commits-list .badge {
  margin-left: 0;
}

.page-content.repository.view.issue .comment-list .event > .detail {
  margin-left: 0;
  margin-right: 15px;
}

@media (max-width: 767.98px) {
  .page-content.repository.view.issue .comment-list,
  .page-content.repository.view.issue .comment-list .timeline-item {
    margin-right: 0;
  }

  .page-content.repository.view.issue .comment-list::before {
    right: 14px;
  }

  .page-content.repository.view.issue .comment-list .inline-timeline-avatar {
    margin-left: 2px;
    margin-right: 6px;
  }

  .page-content.repository.view.issue .comment-list .timeline-item .ui.segments {
    margin-left: 0;
    margin-right: -2rem;
  }
}

.page-content.repository.view.issue .avatar-content-left-arrow::before,
.page-content.repository.view.issue .avatar-content-left-arrow::after {
  display: none;
}

.page-content.repository.view.issue :is(.index, .sha, .branch-name, .ref-issue) {
  direction: ltr;
  unicode-bidi: isolate;
}

.page-content.repository.view.issue .markup {
  direction: rtl;
  text-align: right;
}

.page-content.repository.view.issue .markup :is(ul, ol) {
  padding-inline-start: 2em;
  padding-inline-end: 0;
}

.page-content.repository.view.issue :is(pre, code, .code-diff, .code-view) {
  direction: ltr;
  text-align: left;
  unicode-bidi: isolate;
}

/* Actions: RTL workflow navigation, filters and run details. */
.page-content.repository.actions,
.page-content.repository:has(#repo-action-view) {
  direction: rtl;
  text-align: right;
}

.page-content.repository.actions :is(.ui.menu, .ui.dropdown .menu, .ui.dropdown .item, .ui.input input),
.page-content.repository:has(#repo-action-view) :is(.ui.menu, .ui.dropdown .menu, .ui.dropdown .item) {
  direction: rtl;
  text-align: right;
}

.page-content.repository.actions .ui.dropdown > .menu {
  right: auto;
  left: 0;
}

.page-content.repository.actions .ui.vertical.menu details.scoped-workflow-group > .item {
  padding-left: 1.14285714em;
  padding-right: 2.5em;
}

.page-content.repository.actions .ui.vertical.menu details.scoped-workflow-group :is(.item, summary) > .label {
  margin-left: 0;
  margin-right: auto;
}

.page-content.repository.actions .run-list-ref,
.page-content.repository.actions .item-body a[href*="/commit/"],
.page-content.repository:has(#repo-action-view) :is(pre, code, .job-step-logs, .action-run-summary-branch-label) {
  direction: ltr;
  unicode-bidi: isolate;
  text-align: left;
}

.page-content.repository:has(#repo-action-view) .action-view-sidebar-list > .item :is(.job-rerun-button, .job-duration) {
  margin-left: 0;
  margin-right: auto;
}

.page-content.repository:has(#repo-action-view) .action-run-summary-trigger {
  margin-right: 0;
  margin-left: 24px;
}

/* Run details: mirror the job navigation and metadata, keeping console output LTR. */
.page-content.repository:has(#repo-action-view) :is(.action-view-header, .action-view-body, .action-view-left, .action-view-right, .action-run-summary, .job-step-summary) {
  direction: rtl;
  text-align: right;
}

.page-content.repository:has(#repo-action-view) .action-view-back > .svg {
  transform: scaleX(-1);
}

.page-content.repository:has(#repo-action-view) .job-step-logs {
  direction: ltr;
  text-align: left;
}

.page-content.repository:has(#repo-action-view) .ui.buttons > .button {
  border: 1px solid var(--color-input-border) !important;
  border-radius: 0;
  margin-inline: 0 !important;
}

.page-content.repository:has(#repo-action-view) .ui.buttons > .button:not(:first-child) {
  border-inline-start-width: 0 !important;
}

.page-content.repository:has(#repo-action-view) .ui.buttons > .button:first-child {
  border-radius: 0 6px 6px 0;
}

.page-content.repository:has(#repo-action-view) .ui.buttons > .button:last-child {
  border-radius: 6px 0 0 6px;
}

/* Project state toggle: one outer border and one RTL divider. */
.page-content.projects .ui.menu.list-header-toggle {
  border: 1px solid var(--color-secondary);
}

.page-content.projects .ui.menu.list-header-toggle > .item {
  border: 0 !important;
}

.page-content.projects .ui.menu.list-header-toggle > .item::before {
  right: auto;
  left: 0;
}

.page-content.projects .ui.menu.list-header-toggle > .item:last-child::before {
  display: none;
}

/* Project editor: RTL form, description and card-type selector. */
.page-content.edit-project,
.page-content.edit-project :is(.repo-header, .ui.header, .ui.header .sub.header, .secondary.menu) {
  direction: rtl;
  text-align: right;
}

.page-content.edit-project .ui.form :is(label, input:not([type="hidden"]), textarea, .ui.dropdown, .ui.dropdown .menu > .item, .markup, .markdown-editor) {
  direction: rtl;
  text-align: right;
}

.page-content.edit-project .ui.selection.dropdown {
  padding-left: 2.1em;
  padding-right: 1em;
}

.page-content.edit-project .ui.selection.dropdown > .dropdown.icon {
  right: auto;
  left: 1em;
  margin-right: 0;
}

.page-content.edit-project .ui.form :is(pre, code) {
  direction: ltr;
  unicode-bidi: isolate;
  text-align: left;
}

/* Repository activity: mirror the header, navigation and activity content. */
.page-content.repository.repo-activity,
.page-content.repository.repo-activity :is(.repo-header, .ui.header, .ui.menu, .ui.menu .item, .ui.dropdown .menu, .ui.dropdown .menu .item, .flex-container-main) {
  direction: rtl;
  text-align: right;
}

.page-content.repository.repo-activity .activity-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
}

.page-content.repository.repo-activity .activity-header .ui.dropdown > .menu {
  right: auto;
  left: 0;
}

.page-content.repository.repo-activity .flex-container-main .tw-mr-2 {
  margin-right: 0 !important;
  margin-left: .5rem !important;
}

.page-content.repository.repo-activity .horizontal.segments > .segment {
  border-left-width: 0;
  border-right: 1px solid var(--color-secondary);
}

.page-content.repository.repo-activity .horizontal.segments > .segment:first-child {
  border-right-width: 0;
}

.page-content.repository.repo-activity :is(pre, code, .sha, .code-frequency-chart, #repo-activity-top-authors-chart) {
  direction: ltr;
  unicode-bidi: isolate;
  text-align: left;
}

/* User profile: RTL layout and a reduced top navigation. */
.page-content.user.profile .pagination .item > .svg {
  transform: scaleX(-1);
}

.page-content.user.profile,
.page-content.user.profile :is(.ui.menu, .ui.menu .item, .ui.dropdown .menu, .ui.dropdown .menu > .item, .ui.header, .repo-list, .markup, #profile-avatar-card) {
  direction: rtl;
  text-align: right;
}

.page-content.user.profile overflow-menu .overflow-menu-items > a:is([href$="?tab=stars"], [href$="/-/packages"], [href$="?tab=activity"]) {
  display: none !important;
}

.page-content.user.profile :is(input[type="search"], input[name="q"]) {
  direction: rtl;
  text-align: right;
}

.page-content.user.profile .ui.action.input > input[type="search"] {
  min-width: 0;
  border: 1px solid var(--color-input-border);
  border-radius: 0 6px 6px 0 !important;
}

.page-content.user.profile .ui.action.input > .button:last-child {
  margin: 0;
  border-radius: 6px 0 0 6px !important;
}

.page-content.user.profile #profile-avatar-card .extra.content > ul {
  padding-inline-start: 0;
}

.page-content.user.profile :is(pre, code, .sha, a[href^="mailto:"], #profile-avatar-card a[rel="me"]) {
  direction: ltr;
  unicode-bidi: isolate;
  text-align: left;
}

/* Sign-in form: Persian reading order, labels and checkbox placement. */
.page-content.user.signin .external-login-link[href$="/user/login/openid"] {
  display: none !important;
}

.page-content.user.signin,
.page-content.user.signin :is(.ui.form, .ui.header, .ui.message, .field, .field > label) {
  direction: rtl;
  text-align: right;
}

.page-content.user.signin .ui.form input:not([type="checkbox"]):not([type="hidden"]) {
  direction: rtl;
  text-align: right;
}

.page-content.user.signin .ui.form .required.field > label::after,
.page-content.user.signin .ui.form .required.field > .tw-flex > label::after {
  margin-left: 0;
  margin-right: 0.25em;
}

.page-content.user.signin .ui.checkbox label {
  padding-left: 0;
  padding-right: 1.85714em;
}

.page-content.user.signin .ui.checkbox :is(label::before, label::after, input) {
  left: auto;
  right: 0;
}

/* Notifications: RTL toolbar, rows and connected filter corners. */
.page-content.user.notification,
.page-content.user.notification :is(.ui.menu, .ui.menu .item, .notifications-item, .notifications-link, .notifications-updated) {
  direction: rtl;
  text-align: right;
}

.page-content.user.notification .small-menu-items.ui.menu {
  border-radius: 6px;
  overflow: hidden;
}

.page-content.user.notification .small-menu-items.ui.menu > .item {
  border-radius: 0 !important;
}

.page-content.user.notification .small-menu-items.ui.menu > .item:first-child {
  border-radius: 0 6px 6px 0 !important;
}

.page-content.user.notification .small-menu-items.ui.menu > .item:last-child {
  border-radius: 6px 0 0 6px !important;
}

.page-content.user.notification .small-menu-items.ui.menu > .item::before {
  right: auto;
  left: 0;
}

.page-content.user.notification .pagination .item > .svg {
  transform: scaleX(-1);
}

/* Organization pages: RTL headers, navigation, repository lists and forms. */
.page-content.organization,
.page-content.organization :is(.ui.header, .ui.menu, .ui.menu .item, .ui.dropdown .menu, .ui.dropdown .menu > .item, .ui.form, .ui.form label, .markup, .item-main) {
  direction: rtl;
  text-align: right;
}

.page-content.organization .ui.form :is(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]), textarea) {
  direction: rtl;
  text-align: right;
}

.page-content.organization .ui.action.input > input[type="search"] {
  min-width: 0;
  border: 1px solid var(--color-input-border);
  border-radius: 0 6px 6px 0 !important;
}

.page-content.organization .ui.action.input > .button:last-child {
  margin: 0;
  border-radius: 6px 0 0 6px !important;
}

.page-content.organization .filter.menu > .dropdown > .menu {
  right: auto;
  left: 0;
}

.page-content.organization .pagination .item > .svg,
.page-content.organization.profile .ui.attached.header a > .octicon-chevron-right {
  transform: scaleX(-1);
}

.page-content.organization :is(pre, code, .sha, a[href^="mailto:"], input[type="url"], input[type="email"]) {
  direction: ltr;
  unicode-bidi: isolate;
  text-align: left;
}

/* Commit details only; PR diffs and comparison pages keep their existing layout. */
.page-content.repository.diff:has(.commit-header) {
  direction: rtl;
  text-align: right;
}

.page-content.repository.diff:has(.commit-header) :is(.commit-header, .commit-summary, .commit-body, .git-notes, .diff-detail-box, .diff-file-header, .ui.dropdown .menu, .ui.dropdown .menu > .item, .ui.dropdown .menu > .header) {
  direction: rtl;
  text-align: right;
}

.page-content.repository.diff:has(.commit-header) .commit-body {
  unicode-bidi: plaintext;
}

.page-content.repository.diff:has(.commit-header) .commit-header-buttons .ui.dropdown > .menu {
  left: 0;
  right: auto;
}

/* Keep hashes, paths, code and old/new diff columns in their original order. */
.page-content.repository.diff:has(.commit-header) :is(.commit-id-short, .sha, .branch-name, .tag-name, .file-link, #diff-file-tree, .file-code, code, pre:not(.commit-body)) {
  direction: ltr;
  unicode-bidi: isolate;
  text-align: left;
}

.page-content.repository.diff:has(.commit-header) .diff-file-body.binary {
  direction: rtl;
  text-align: right;
}

.page-content.repository.diff:has(.commit-header) .diff-toggle-file-tree-button > .svg,
.page-content.repository.diff:has(.commit-header) .fold-file > .octicon-chevron-right {
  transform: scaleX(-1);
}

/* User settings: shared RTL layout across profile, account and all settings tabs. */
.page-content.user.settings {
  direction: rtl;
  text-align: right;
}

.page-content.user.settings :is(.ui.header, .ui.form, .ui.form .field > label, .ui.vertical.menu .item, .ui.vertical.menu summary, .ui.message, .ui.modal) {
  direction: rtl;
  text-align: right;
}

.page-content.user.settings .text.left {
  text-align: right !important;
}

.page-content.user.settings .ui.button {
  margin-right: 0;
  margin-left: 0.25em;
}

.page-content.user.settings :is(input[type="email"], input[type="password"], a[href^="mailto:"], .flex-items-block > .item > .content > strong) {
  direction: ltr;
  unicode-bidi: isolate;
  text-align: left;
}

.page-content.user.settings .flex-items-block > .item > .content > strong {
  display: inline-block;
}

/* Hide optional profile fields while preserving their saved values on submission. */
.page-content.user.settings.profile .ui.form .field:has(> :is(#location, #website, #description)) {
  display: none;
}

/* Settings controls inherit RTL; retain the original order of technical values. */
.page-content.user.settings :is(.ui.table th, .ui.table td, .ui.dropdown .menu, .ui.dropdown .menu > .item, .ui.dropdown > .text) {
  text-align: right;
}

.page-content.user.settings .ui.selection.dropdown {
  padding-right: 1em;
  padding-left: 2.1em;
  text-align: right;
}

.page-content.user.settings .ui.selection.dropdown > .dropdown.icon {
  right: auto;
  left: 1em;
}

.page-content.user.settings .ui.dropdown .menu > .item > .description {
  float: left;
  margin-right: 1em;
  margin-left: 0;
}

.page-content.user.settings .ui.checkbox label {
  padding-left: 0;
  padding-right: 1.85714em;
}

.page-content.user.settings .ui.checkbox label::before,
.page-content.user.settings .ui.checkbox label::after {
  left: auto;
  right: 0;
}

.page-content.user.settings .ui.checkbox input[type="checkbox"],
.page-content.user.settings .ui.checkbox input[type="radio"] {
  left: auto;
  right: 0;
}

.page-content.user.settings .tw-float-right {
  float: left !important;
}

.page-content.user.settings :is(pre, code, .sha, .fingerprint, input[type="url"], textarea[name="content"], textarea[name="client_secret"], input[name="client_id"], input[name="client_secret"], input[name="payload_url"], input[name="redirect_uris"]) {
  direction: ltr;
  unicode-bidi: isolate;
  text-align: left;
}

/* Global announcement, in normal flow immediately above the main header. */
.site-announcement {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  min-height: 67.2px;
  padding: 0.75rem 3.5rem;
  background: var(--color-primary);
  color: var(--color-primary-contrast);
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.8;
  text-align: center;
  overflow-wrap: anywhere;
  box-shadow: inset 0 -1px rgb(255 255 255 / 18%);
}

.site-announcement-icon {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  box-sizing: content-box;
  padding: 6px;
  border-radius: 4px;
  background: rgb(255 255 255 / 14%);
}

.site-announcement-close {
  position: absolute;
  inset-inline-end: 1rem;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 1px solid rgb(255 255 255 / 20%);
  border-radius: 4px;
  background: rgb(255 255 255 / 10%);
  color: inherit;
  cursor: pointer;
}

.site-announcement-close:hover {
  background: rgb(255 255 255 / 22%);
}

.site-announcement-close:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

.site-announcement[hidden] {
  display: none;
}

.site-announcement-content {
  display: flex;
  align-items: baseline;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.25rem 0.75rem;
  min-width: 0;
}

.site-announcement-title {
  font-weight: 800;
}

/* Release list and release details: RTL layout with isolated technical values. */
.page-content.repository.releases {
  direction: rtl;
  text-align: right;
}

.page-content.repository.releases :is(.ui.header, .ui.menu .item, .ui.dropdown .menu, .ui.dropdown .menu .item, .ui.dropdown .menu .header, .release-entry .detail, .download summary) {
  direction: rtl;
  text-align: right;
}

.page-content.repository.releases #release-list {
  padding-right: 0;
}

.page-content.repository.releases .release-entry .tw-mr-1 {
  margin-right: 0 !important;
  margin-left: 0.25rem !important;
}

.page-content.repository.releases .attachment-right-info > .tw-pl-5 {
  padding-left: 0 !important;
  padding-right: 1.25rem !important;
}

.page-content.repository.releases .render-content.markup {
  direction: rtl;
  text-align: right;
}

.page-content.repository.releases :is(pre, code, .sha, .branch-name, .tag-name, .release-entry .meta > a, .attachment-list .gt-ellipsis, input[type="url"]) {
  direction: ltr;
  unicode-bidi: isolate;
}

.page-content.repository.releases :is(pre, input[type="url"]) {
  text-align: left;
}

.page-content.repository.releases .pagination .item > .svg {
  transform: scaleX(-1);
}

@media (max-width: 767.98px) {
  .page-content.repository.releases #release-list .release-entry .meta {
    margin-left: 0;
    margin-right: 6px;
  }

  .page-content.repository.releases #release-list .release-branch-tag-selector {
    margin-left: 0;
    margin-right: auto;
  }

  .page-content.repository.releases #release-list .branch-selector-dropdown .menu {
    right: auto;
    left: 0;
  }
}

/* Create/edit release form. */
.page-content.repository.new.release {
  direction: rtl;
  text-align: right;
}

.page-content.repository.new.release :is(.ui.header, .ui.form, .field > label, .ui.dropdown .menu, .ui.dropdown .menu .item, .ui.message, .dropzone, .markup) {
  direction: rtl;
  text-align: right;
}

.page-content.repository.new.release :is(input[name="title"], textarea[name="content"]) {
  direction: rtl;
  text-align: right;
}

.page-content.repository.new.release .ui.selection.dropdown {
  padding-right: 1em;
  padding-left: 2.1em;
  text-align: right;
}

.page-content.repository.new.release .ui.selection.dropdown > .dropdown.icon {
  right: auto;
  left: 1em;
}

.page-content.repository.new.release .ui.checkbox label {
  padding-left: 0;
  padding-right: 1.85714em;
}

.page-content.repository.new.release .ui.checkbox label::before,
.page-content.repository.new.release .ui.checkbox label::after,
.page-content.repository.new.release .ui.checkbox input {
  left: auto;
  right: 0;
}

.page-content.repository.new.release .ui.button {
  margin-right: 0;
  margin-left: 0.25em;
}

.page-content.repository.new.release :is(input[name="tag_name"], #repo-branch-current, .tag-target-selector .menu .item, pre, code, input[name^="attachment-edit-"]) {
  direction: ltr;
  unicode-bidi: isolate;
  text-align: left;
}

/* Release/tag tabs: mirror the divider and outside corners for RTL. */
.page-content.repository:is(.releases, .tags) h2.ui.compact.menu > .item::before {
  right: auto;
  left: 0;
}

.page-content.repository:is(.releases, .tags) h2.ui.compact.menu > .item:last-child::before {
  display: none;
}

.page-content.repository:is(.releases, .tags) h2.ui.compact.menu > .item:first-child {
  border-radius: 0 var(--border-radius) var(--border-radius) 0;
}

.page-content.repository:is(.releases, .tags) h2.ui.compact.menu > .item:last-child {
  border-radius: var(--border-radius) 0 0 var(--border-radius);
}

.page-content.repository:is(.releases, .tags) h2.ui.compact.menu > .item:only-child {
  border-radius: var(--border-radius);
}

/* Repository tags: RTL rows, search and pagination. */
.page-content.repository.tags {
  direction: rtl;
  text-align: right;
}

.page-content.repository.tags :is(.ui.header, .ui.menu .item, .ui.dropdown .menu, .ui.dropdown .menu .item, #tags-table, input[name="q"]) {
  direction: rtl;
  text-align: right;
}

.page-content.repository.tags :is(.tag-list-row-link, .tw-font-mono, .archive-link) {
  direction: ltr;
  unicode-bidi: isolate;
}

.page-content.repository.tags .tag-list-row-link {
  display: inline-block;
}

.page-content.repository.tags .ui.action.input > input {
  border-radius: 0 var(--border-radius) var(--border-radius) 0;
}

.page-content.repository.tags .ui.action.input > .button:last-child {
  margin-left: 0;
  margin-right: -1px;
  border-radius: var(--border-radius) 0 0 var(--border-radius);
}

.page-content.repository.tags .pagination .item > .svg {
  transform: scaleX(-1);
}

/* The first RTL search field owns the outside right border. */
.page-content.repository.tags .ui.action.input > input[type="search"] {
  border-right: 1px solid var(--color-input-border) !important;
  border-left: 0 !important;
}

.page-content.repository.tags .ui.action.input > input[type="search"]:focus {
  border-right-color: var(--color-primary) !important;
}

/* New repository form: RTL labels, help text and selection controls. */
.page-content.repository.new-repo {
  direction: rtl;
  text-align: right;
}

.page-content.repository.new-repo :is(.ui.header, .ui.form, .ui.message, .field > label, .ui.dropdown, .ui.dropdown .menu, .ui.dropdown .menu .item, textarea[name="description"]) {
  direction: rtl;
  text-align: right;
}

.page-content.repository.new-repo .ui.form.left-right-form .inline.field > label {
  margin-right: 0;
  margin-left: 10px;
  text-align: right;
}

.page-content.repository.new-repo .ui.form.left-right-form .inline.field > .help {
  margin-left: 0;
  margin-right: calc(250px + 15px);
}

.page-content.repository.new-repo .ui.selection.dropdown {
  padding-right: 1em;
  padding-left: 2.1em;
}

.page-content.repository.new-repo .ui.selection.dropdown > .dropdown.icon {
  right: auto;
  left: 1em;
}

.page-content.repository.new-repo .ui.search.dropdown > input.search {
  text-align: right;
  padding-right: 1em;
  padding-left: 2.1em;
}

.page-content.repository.new-repo .ui.checkbox label {
  padding-left: 0;
  padding-right: 1.85714em;
}

.page-content.repository.new-repo .ui.checkbox label::before,
.page-content.repository.new-repo .ui.checkbox label::after,
.page-content.repository.new-repo .ui.checkbox input {
  left: auto;
  right: 0;
}

.page-content.repository.new-repo .ui.button {
  margin-right: 0;
  margin-left: 0.25em;
}

.page-content.repository.new-repo :is(#repo_name, #default_branch, code, pre) {
  direction: ltr;
  unicode-bidi: isolate;
  text-align: left;
}

@media (max-width: 767.98px) {
  .page-content.repository.new-repo .ui.form.left-right-form .inline.field > :is(label, .help) {
    margin-right: 0;
    margin-left: 0;
  }
}

/* Keep the default object format submitted, but hide its advanced selector. */
.page-content.repository.new-repo .inline.field:has(#object_format_name) {
  display: none;
}

/* Persian date picker: keep native Gregorian fields for Gitea submission/validation. */
.jalali-date-field {
  display: inline-flex;
  position: relative;
  min-width: 0;
  max-width: 100%;
  vertical-align: middle;
}

.ui.action.input > .jalali-date-field {
  flex: 1;
}

.jalali-date-field > input.jalali-date-native {
  position: absolute !important;
  inset: 0 auto auto 0 !important;
  width: 1px !important;
  min-width: 0 !important;
  height: 1px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  opacity: 0 !important;
  pointer-events: none;
}

.jalali-date-field > .jalali-date-trigger {
  appearance: none;
  width: 100%;
  min-height: 38px;
  padding: 0.6em 1em;
  border: 1px solid var(--color-input-border);
  border-radius: var(--border-radius);
  background: var(--color-input-background);
  color: var(--color-input-text);
  font: inherit;
  direction: rtl;
  text-align: right;
  cursor: pointer;
}

.ui.action.input > .jalali-date-field > .jalali-date-trigger {
  border-radius: 0 var(--border-radius) var(--border-radius) 0;
}

.jalali-date-trigger[aria-invalid="true"] {
  border-color: var(--color-red);
}

.jalali-date-trigger:disabled,
.jalali-date-trigger[aria-disabled="true"] {
  opacity: 0.5;
  cursor: default;
}

.jalali-calendar {
  position: fixed;
  inset: auto;
  z-index: 2001;
  margin: 0;
  width: min(370px, calc(100vw - 16px));
  max-height: calc(100dvh - 16px);
  overflow: auto;
  box-sizing: border-box;
  padding: 12px;
  border: 1px solid var(--color-secondary);
  border-radius: var(--border-radius);
  background: var(--color-box-body);
  color: var(--color-text);
  box-shadow: 0 6px 24px rgb(0 0 0 / 20%);
  direction: rtl;
  font-family: inherit;
  font-size: 14px;
  text-align: center;
}

.jalali-calendar-header {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-bottom: 12px;
}

.jalali-calendar :is(.jalali-month, .jalali-year) {
  min-width: 0;
  height: 34px;
  padding: 4px;
  border: 1px solid var(--color-input-border);
  border-radius: var(--border-radius);
  background: var(--color-input-background);
  color: var(--color-input-text);
  font: inherit;
  text-align: center;
}

.jalali-month {
  flex: 1;
}

.jalali-year {
  width: 64px;
}

.jalali-calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 3px;
}

.jalali-weekday {
  padding: 4px 0 8px;
  color: var(--color-text-light);
  font-size: 0.7rem;
}

.jalali-calendar-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  min-height: 34px;
  padding: 4px 6px;
  border: 1px solid transparent;
  border-radius: var(--border-radius);
  background: transparent;
  color: inherit;
  font: inherit;
  cursor: pointer;
}

.jalali-calendar-button:hover:not(:disabled) {
  background: var(--color-hover);
}

.jalali-calendar :focus-visible,
.jalali-date-trigger:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 1px;
}

.jalali-day[aria-current="date"] {
  border-color: var(--color-primary);
}

.jalali-day[aria-pressed="true"] {
  background: var(--color-primary);
  color: var(--color-primary-contrast);
  font-weight: 700;
}

.jalali-calendar-button:disabled {
  opacity: 0.3;
  cursor: default;
}

.jalali-calendar-footer {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  margin-top: 12px;
  padding-top: 8px;
  border-top: 1px solid var(--color-secondary);
}

.jalali-date-error {
  color: var(--color-red);
  font-size: 0.85rem;
  direction: rtl;
  text-align: right;
}

.jalali-date-field:has(> .jalali-date-error:not([hidden])) {
  flex-direction: column;
}
#navbar .mail-service-link,
#navbar .sanadestan-link,
#navbar .chaton-link,
#navbar .passbolt-link {
  display: inline-flex;
  flex-direction: row;
  direction: rtl;
  align-items: center;
  white-space: nowrap;
  padding-inline: 5px;
  transform: translateX(10px);
}

#navbar :is(.mail-service-link, .sanadestan-link, .chaton-link, .passbolt-link) > img {
  transition: transform 180ms ease;
}

#navbar :is(.mail-service-link, .sanadestan-link, .chaton-link, .passbolt-link):is(:hover, :focus-visible) > img {
  transform: translateY(-3px);
}

@media (prefers-reduced-motion: reduce) {
  #navbar :is(.mail-service-link, .sanadestan-link, .chaton-link, .passbolt-link) > img {
    transition: none;
  }
}

.custom-task-list-dialog {
  width: min(600px, calc(100vw - 32px));
  max-height: 85vh;
  overflow: auto;
  padding: 24px;
  border: 1px solid var(--color-secondary);
  border-radius: 8px;
  background: var(--color-body);
  color: var(--color-text);
  font-family: var(--fonts-regular);
  font-size: 16px;
  text-align: start;
}
.custom-task-list-dialog:dir(rtl) { direction: rtl; }
.custom-task-list-dialog::backdrop { background: rgb(0 0 0 / 45%); }
.custom-task-list-row {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-block: 12px;
}
.custom-task-list-title-label { flex: 1; min-width: 0; }
.custom-task-list-status { display: flex; align-items: center; gap: 6px; white-space: nowrap; }
.custom-task-list-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 20px; }
@media (max-width: 480px) {
  .custom-task-list-row { flex-wrap: wrap; }
  .custom-task-list-title-label { flex-basis: 100%; }
}

/* Empty repository setup guide. */
.page-content.repository.quickstart > .ui.container > .ui.grid > .content {
  direction: rtl;
  text-align: right;
}
.page-content.repository.quickstart .empty-repo-guide,
.page-content.repository.quickstart .empty-repo-guide h3,
.page-content.repository.quickstart .content > .ui.header {
  direction: rtl;
  text-align: right;
}
.page-content.repository.quickstart .repo-button-row {
  direction: rtl;
  justify-content: flex-start;
}
.page-content.repository.quickstart .empty-repo-guide :is(pre, code, .js-clone-url),
.page-content.repository.quickstart .repo-button-row input {
  direction: ltr;
  text-align: left;
  unicode-bidi: isolate;
}
