@import "../chroma/dark.less";

:root {
  --color-primary: #87ab63;
  --color-primary-dark-1: #93b373;
  --color-primary-dark-2: #9fbc82;
  --color-primary-dark-3: #abc492;
  --color-primary-dark-4: #b7cda1;
  --color-primary-dark-5: #cfddc1;
  --color-primary-dark-6: #e7eee0;
  --color-primary-dark-7: #f8faf6;
  --color-primary-light-1: #7a9e55;
  --color-primary-light-2: #6c8c4c;
  --color-primary-light-3: #5f7b42;
  --color-primary-light-4: #516939;
  --color-primary-light-5: #364626;
  --color-primary-light-6: #1b2313;
  --color-primary-light-7: #080b06;
  --color-primary-alpha-10: #87ab6319;
  --color-primary-alpha-20: #87ab6333;
  --color-primary-alpha-30: #87ab634b;
  --color-primary-alpha-40: #87ab6366;
  --color-primary-alpha-50: #87ab6380;
  --color-primary-alpha-60: #87ab6399;
  --color-primary-alpha-70: #87ab63b3;
  --color-primary-alpha-80: #87ab63cc;
  --color-primary-alpha-90: #87ab63e1;
  --color-secondary: #454a57;
  --color-secondary-dark-1: #505665;
  --color-secondary-dark-2: #5b6273;
  --color-secondary-dark-3: #71798e;
  --color-secondary-dark-4: #7f8699;
  --color-secondary-dark-5: #8c93a4;
  --color-secondary-dark-6: #9aa0af;
  --color-secondary-dark-7: #a8adba;
  --color-secondary-dark-7: #b6bac5;
  --color-secondary-dark-8: #c4c7d0;
  --color-secondary-dark-8: #d2d4db;
  --color-secondary-dark-9: #dfe1e6;
  --color-secondary-dark-10: #edeef1;
  --color-secondary-dark-11: #fbfbfc;
  --color-secondary-light-1: #373b46;
  --color-secondary-light-2: #292c34;
  --color-secondary-light-3: #1c1e23;
  --color-secondary-light-4: #0e0f11;
  --color-secondary-alpha-10: #454a5719;
  --color-secondary-alpha-20: #454a5733;
  --color-secondary-alpha-30: #454a574b;
  --color-secondary-alpha-40: #454a5766;
  --color-secondary-alpha-50: #454a5780;
  --color-secondary-alpha-60: #454a5799;
  --color-secondary-alpha-70: #454a57b3;
  --color-secondary-alpha-80: #454a57cc;
  --color-secondary-alpha-90: #454a57e1;
  /* colors */
  --color-red: #db2828;
  --color-orange: #f2711c;
  --color-yellow: #fbbd08;
  --color-olive: #b5cc18;
  --color-green: #21ba45;
  --color-teal: #00b5ad;
  --color-blue: #2185d0;
  --color-violet: #6435c9;
  --color-purple: #a333c8;
  --color-pink: #e03997;
  --color-brown: #a5673f;
  --color-grey: #767a85;
  --color-black: #1e222e;
  --color-gold: #a1882b;
  --color-white: #ffffff;
  --color-diff-removed-word-bg: #6f3333;
  --color-diff-added-word-bg: #3c653c;
  --color-diff-removed-row-bg: #3c2626;
  --color-diff-added-row-bg: #283e2d;
  --color-diff-removed-row-border: #634343;
  --color-diff-added-row-border: #314a37;
  --color-diff-inactive: #353846;
  /* target-based colors */
  --color-body: #383c4a;
  --color-box-header: #404652;
  --color-box-body: #303440;
  --color-text-dark: #dbe0ea;
  --color-text: #bbc0ca;
  --color-text-light: #a6aab5;
  --color-text-light-2: #8a8e99;
  --color-text-light-3: #707687;
  --color-footer: #2e323e;
  --color-timeline: #4c525e;
  --color-input-text: #d5dbe6;
  --color-input-background: #2e323e;
  --color-input-border: #454a57;
  --color-input-border-hover: #505667;
  --color-navbar: #2a2e3a;
  --color-label: #ffffff0d;
  --color-label-hover: #ffffff20;
  --color-label-basic: #00000030;
  --color-label-basic-hover: #40404030;
  --color-label-border: #ffffff28;
  --color-hover: #ffffff0d;
  --color-active: #ffffff14;
  --color-menu: #2e323e;
  --color-card: #2e323e;
  --color-markdown-table-row: #ffffff06;
  --color-markdown-code-block: #2a2e3a;
  --color-button: #353846;
  --color-code-bg: #2a2e3a;
  --color-shadow: #00000060;
  --color-secondary-bg: #2a2e3a;
  --color-text-focus: #fff;
  --color-expand-button: #3c404d;
}

.repository.branches .commit-divergence .bar {
  background: #6a737d;
}

.ui.horizontal.segments > .segment {
  background-color: #383c4a;
}

.repository .segment.reactions .ui.label.basic.blue {
  background: var(--color-primary-alpha-20) !important;
}

::placeholder,
.CodeMirror-placeholder {
  color: #6a737d !important;
}

[data-tooltip]::before,
[data-tooltip]::after {
  background: #1b1c1d !important; /* .ui.inverted.popup */
  border-color: #1b1c1d !important; /* .ui.inverted.popup */
  color: #dbdbdb !important;
}

[data-tooltip]::before {
  box-shadow: 1px 1px 0 0 #1b1c1d !important; /* .ui.inverted.popup */
}

.ui.green.progress .bar {
  background-color: #668844;
}

.ui.progress.success .bar {
  background-color: #7b9e57 !important;
}

.following.bar.light {
  background: #2e323e;
  border-color: var(--color-secondary-alpha-40);
}

.following.bar .top.menu a.item:hover {
  color: #fff;
}

.feeds .list ul li.private {
  background: #353945;
}

.ui.link.list .item,
.ui.link.list a.item,
.ui.link.list .item a:not(.ui) {
  color: #dbdbdb;
}

.ui.red.label,
.ui.red.labels .label {
  background-color: #7d3434 !important;
  border-color: #8a2121 !important;
}

.ui.yellow.label,
.ui.yellow.labels .label {
  border-color: #664d02 !important;
  background-color: #936e00 !important;
}

.ui.accordion .title:not(.ui) {
  color: #dbdbdb;
}

.ui.green.label,
.ui.green.labels .label,
.ui.basic.green.label {
  background-color: #2d693b !important;
  border-color: #2d693b !important;
}

.ui.green.labels a.label:hover,
.ui.basic.green.labels a.label:hover,
a.ui.ui.ui.green.label:hover,
a.ui.basic.green.label:hover {
  background-color: #3d794b !important;
  border-color: #3d794b !important;
  color: #fff !important;
}

.ui.divider:not(.vertical):not(.horizontal) {
  border-bottom-color: var(--color-secondary);
  border-top-color: transparent;
}

.form .help {
  color: #7f8699;
}

.ui .text.light.grey {
  color: #7f8699 !important;
}

.ui.form .fields.error .field textarea,
.ui.form .fields.error .field select,
.ui.form .fields.error .field input:not([type]),
.ui.form .fields.error .field input[type="date"],
.ui.form .fields.error .field input[type="datetime-local"],
.ui.form .fields.error .field input[type="email"],
.ui.form .fields.error .field input[type="number"],
.ui.form .fields.error .field input[type="password"],
.ui.form .fields.error .field input[type="search"],
.ui.form .fields.error .field input[type="tel"],
.ui.form .fields.error .field input[type="time"],
.ui.form .fields.error .field input[type="text"],
.ui.form .fields.error .field input[type="file"],
.ui.form .fields.error .field input[type="url"],
.ui.form .field.error textarea,
.ui.form .field.error select,
.ui.form .field.error input:not([type]),
.ui.form .field.error input[type="date"],
.ui.form .field.error input[type="datetime-local"],
.ui.form .field.error input[type="email"],
.ui.form .field.error input[type="number"],
.ui.form .field.error input[type="password"],
.ui.form .field.error input[type="search"],
.ui.form .field.error input[type="tel"],
.ui.form .field.error input[type="time"],
.ui.form .field.error input[type="text"],
.ui.form .field.error input[type="file"],
.ui.form .field.error input[type="url"] {
  background-color: #522;
  border: 1px solid #7d3434;
  color: #f9cbcb;
}

.ui.form .field.error select:focus,
.ui.form .field.error input:not([type]):focus,
.ui.form .field.error input[type="date"]:focus,
.ui.form .field.error input[type="datetime-local"]:focus,
.ui.form .field.error input[type="email"]:focus,
.ui.form .field.error input[type="number"]:focus,
.ui.form .field.error input[type="password"]:focus,
.ui.form .field.error input[type="search"]:focus,
.ui.form .field.error input[type="tel"]:focus,
.ui.form .field.error input[type="time"]:focus,
.ui.form .field.error input[type="text"]:focus,
.ui.form .field.error input[type="file"]:focus,
.ui.form .field.error input[type="url"]:focus {
  background-color: #522;
  border: 1px solid #a04141;
  color: #f9cbcb;
}

.ui.green.button,
.ui.green.buttons .button {
  background-color: #87ab63;
}

.ui.green.button:hover,
.ui.green.buttons .button:hover {
  background-color: #a0cc75;
}

.ui.basic.button,
.ui.basic.buttons .button {
  color: var(--color-secondary-dark-6);
  background: rgba(0, 0, 0, .1);
  box-shadow: none;
}

.ui.basic.button:focus,
.ui.basic.button:hover,
.ui.basic.buttons .button:focus,
.ui.basic.buttons .button:hover {
  color: #dbdbdb;
  background: rgba(255, 255, 255, .08);
  box-shadow: none;
}

.ui.labeled.button:not([class*="left labeled"]) > .label,
.ui[class*="left labeled"].button > .button {
  background: var(--color-secondary);
  border: 1px solid var(--color-secondary);
  color: #87ab63;
}

.ui.button:hover {
  background-color: var(--color-secondary);
  color: #dbdbdb;
}

.ui.search > .results {
  background: #383c4a;
  border-color: var(--color-secondary);
}

.ui.search > .results .result:hover,
.ui.category.search > .results .category .result:hover {
  background: var(--color-secondary);
}

.ui.search > .results .result .title {
  color: #dbdbdb;
}

.ui.table > thead > tr > th {
  background: var(--color-secondary);
  color: #dbdbdb !important;
}

.repository.file.list #repo-files-table tr {
  background: #2a2e3a;
}

.repository.file.list #repo-files-table tr:hover {
  background-color: #393d4a !important;
}

.repository.file.editor.edit,
.repository.wiki.new .CodeMirror {
  .editor-preview,
  .editor-preview-side,
  & + .editor-preview-side {
    background: #353945;

    .markdown:not(code).ui.segment {
      border-width: 0;
    }
  }
}

.overflow.menu .items .item {
  color: #9d9d9d;
}

.overflow.menu .items .item:hover {
  color: #dbdbdb;
}

.ui.list > .item > .content {
  color: var(--color-secondary-dark-6) !important;
}

.ui.active.button:active,
.ui.button:active,
.ui.button:focus,
.ui.active.button {
  background-color: #2e3e4e;
  color: #dbdbdb;
}

.ui.active.button:hover {
  background-color: #475e75;
  color: #dbdbdb;
}

.repository .navbar .active.item,
.repository .navbar .active.item:hover {
  border-color: transparent !important;
}

.ui .info.segment.top {
  background-color: var(--color-secondary) !important;
}

.repository .diff-stats li {
  border-color: var(--color-secondary);
}

.tag-code,
.tag-code td {
  background: #353945 !important;

}
.tag-code td.lines-num {
  background-color: #3a3e4c !important;
}

.tag-code td.lines-type-marker,
td.blob-hunk {
  color: #dbdbdb !important;
}

.ui.attached.info.message,
.ui.info.message {
  box-shadow: 0 0 0 1px #4b5e71 inset, 0 0 0 0 transparent;
}

.ui.bottom.attached.message {
  background-color: #2c662d;
  color: #87ab63;
}

.ui.bottom.attached.message .pull-right {
  color: #87ab63;
}

.ui.info.message {
  background-color: #2c3b4a;
  color: #9ebcc5;
}

.ui .warning.header,
.ui.warning.message {
  background-color: #542 !important;
  border-color: #ec8;
}

.ui.warning.message {
  color: #ec8;
  box-shadow: 0 0 0 1px #ec8;
}

.ui.warning.segment {
  border-color: #ec8;
}

.ui.red.message,
.ui.error.message {
  background-color: #522;
  color: #f9cbcb;
  box-shadow: 0 0 0 1px #a04141 inset;
}

.ui .error.header,
.ui.error.message {
  background-color: #522 !important;
  border-color: #a04141;
}

.ui.error.segment {
  border-color: #a04141;
}

.ui.red.button,
.ui.red.buttons .button {
  background-color: #7d3434;
}

.ui.red.button:hover,
.ui.red.buttons .button:hover {
  background-color: #984646;
}

.ui.positive.message {
  background-color: #0d491b;
  color: #87ab63;
  box-shadow: 0 0 0 1px #2d693b inset, 0 0 0 0 transparent;
}

.ui.negative.message {
  background-color: rgba(80, 23, 17, .6);
  color: #f9cbcb;
  box-shadow: 0 0 0 1px rgba(121, 71, 66, .5) inset, 0 0 0 0 transparent;
}

.ui.form .dropzone .dz-button {
  color: rgba(158, 158, 158, .8);
}

.ui.form .dropzone:hover .dz-button {
  color: rgba(158, 158, 158, 1);
}

.ui.list .list > .item .header,
.ui.list > .item .header {
  color: #dedede;
}

.ui.list .list > .item .description,
.ui.list > .item .description {
  color: var(--color-secondary-dark-6);
}

.repository.file.list #repo-files-table tbody .svg.octicon-file-directory,
.repository.file.list #repo-files-table tbody .svg.octicon-file-submodule {
  color: #7c9b5e;
}

.repository.labels .ui.basic.black.label {
  background-color: #bbbbbb !important;
}

.lines-commit,
.blame .lines-num {
  background: #2e323e !important;
}

.lines-num {
  color: var(--color-secondary-dark-6) !important;
  border-color: var(--color-secondary) !important;
}

td.blob-excerpt {
  background-color: rgba(0, 0, 0, .15);
}

.lines-code.active,
.lines-code .active {
  background: #534d1b !important;
}

.ui.ui.ui.ui.table tr.active,
.ui.ui.table td.active {
  color: #dbdbdb;
}

.ui.active.label {
  background: #393d4a;
  border-color: #393d4a;
  color: #dbdbdb;
}

.sha.label,
.repository #repo-files-table .sha.label,
.repository #commits-table td.sha .sha.label,
#rev-list .sha.label,
.repository .timeline-item.commits-list .singular-commit .sha.label,
.repository.view.issue .comment-list .timeline-item.commits-list .singular-commit .shabox .sha.label {
  border-color: #505667;
}

.sha.label.isSigned .detail.icon,
.repository #commits-table td.sha .sha.label.isSigned .detail.icon,
#rev-list .sha.label.isSigned .detail.icon,
.repository #repo-files-table .sha.label.isSigned .detail.icon,
.repository .timeline-item.commits-list .singular-commit .sha.label.isSigned .detail.icon,
.repository.view.issue .comment-list .timeline-item.commits-list .singular-commit .shabox .sha.label.isSigned .detail.icon {
  background: none;
  border-left-color: #888;
}

.repository .ui.attached.message.isSigned.isVerified {
  background-color: #394829;
  color: var(--color-secondary-dark-6);

  &.message {
    color: #87ab63;
    .ui.text {
      color: var(--color-secondary-dark-6);
    }
    .pull-right {
      color: #87ab63;
    }
  }
}

.repository .ui.attached.message.isSigned.isVerifiedUntrusted {
  background-color: #4a3903;
  color: var(--color-secondary-dark-6);
  &.message {
    color: #c2c193;
    .ui.text {
      color: var(--color-secondary-dark-6);
    }
    a {
      color: #c2c193;
    }
  }
}

.repository .ui.attached.message.isSigned.isVerifiedUnmatched {
  background-color: #4e3321;
  color: var(--color-secondary-dark-6);
  &.message {
    color: #c2a893;
    .ui.text {
      color: var(--color-secondary-dark-6);
    }
    a {
      color: #c2a893;
    }
  }
}

.repository .ui.attached.message.isSigned.isWarning {
  background-color: rgba(80, 23, 17, .6);
  &.message {
    color: #d07d7d;
    .ui.text {
      color: #d07d7d;
    }
  }
}

.ui.header .sub.header {
  color: var(--color-secondary-dark-6);
}

.ui.dividing.header {
  border-bottom: 1px solid var(--color-secondary);
}

.ui.modal > .header {
  background: var(--color-secondary);
  color: #dbdbdb;
}

.ui.modal > .actions {
  background: var(--color-secondary);
  border-color: var(--color-secondary);
}

.ui.modal > .content {
  background: #383c4a;
}

.minicolors-panel {
  background: var(--color-secondary) !important;
  border-color: #6a737d !important;
}

/* invert emojis that are hard to read otherwise */
.emoji[aria-label="check mark"],
.emoji[aria-label="currency exchange"],
.emoji[aria-label="TOP arrow"],
.emoji[aria-label="END arrow"],
.emoji[aria-label="ON! arrow"],
.emoji[aria-label="SOON arrow"],
.emoji[aria-label="heavy dollar sign"],
.emoji[aria-label="copyright"],
.emoji[aria-label="registered"],
.emoji[aria-label="trade mark"],
.emoji[aria-label="multiply"],
.emoji[aria-label="plus"],
.emoji[aria-label="minus"],
.emoji[aria-label="divide"],
.emoji[aria-label="curly loop"],
.emoji[aria-label="double curly loop"],
.emoji[aria-label="wavy dash"],
.emoji[aria-label="paw prints"],
.emoji[aria-label="musical note"],
.emoji[aria-label="musical notes"] {
  filter: invert(100%);
}

.edit-diff > div > .ui.table {
  border-left-color: var(--color-secondary) !important;
  border-right-color: var(--color-secondary) !important;
}

/* code mirror dark theme */

.CodeMirror {
  &.cm-s-default,
  &.cm-s-paper {
    .cm-property {
      color: #a0cc75;
    }

    .cm-header {
      color: #9daccc;
    }

    .cm-quote {
      color: #009900;
    }

    .cm-keyword {
      color: #cc8a61;
    }

    .cm-atom {
      color: #ef5e77;
    }

    .cm-number {
      color: #ff5656;
    }

    .cm-def {
      color: #e4e4e4;
    }

    .cm-variable-2 {
      color: #00bdbf;
    }

    .cm-variable-3 {
      color: #008855;
    }

    .cm-comment {
      color: #8e9ab3;
    }

    .cm-string {
      color: #a77272;
    }

    .cm-string-2 {
      color: #ff5500;
    }

    .cm-meta,
    .cm-qualifier {
      color: #ffb176;
    }

    .cm-builtin {
      color: #b7c951;
    }

    .cm-bracket {
      color: #999977;
    }

    .cm-tag {
      color: #f1d273;
    }

    .cm-attribute {
      color: #bfcc70;
    }

    .cm-hr {
      color: #999999;
    }

    .cm-url {
      color: #c5cfd0;
    }

    .cm-link {
      color: #d8c792;
    }

    .cm-error {
      /* color: #ff6e00; */
      color: #dbdbeb;
    }
  }
}

footer .container .links > * {
  border-left-color: #888;
}

.repository.file.list #repo-files-table tbody .svg {
  color: var(--color-secondary-dark-6);
}

.repository.release #release-list > li .detail .dot {
  background-color: #505667;
  border-color: #383c4a;
}

.board-column {
  background-color: rgba(0, 0, 0, .2) !important;
}

.tribute-container {
  box-shadow: 0 .25rem .5rem rgba(0, 0, 0, .6);
}

.repository .repo-header .ui.huge.breadcrumb.repo-title .repo-header-icon .avatar {
  color: #2a2e3a;
}

img[src$="/img/matrix.svg"] {
  filter: invert(80%);
}

#git-graph-container li .time {
  color: #6a737d;
}

#git-graph-container.monochrome #rel-container .flow-group {
  stroke: dimgrey;
  fill: dimgrey;
}

#git-graph-container.monochrome #rel-container .flow-group.highlight {
  stroke: darkgrey;
  fill: darkgrey;
}

#git-graph-container:not(.monochrome) #rel-container .flow-group {
  &.flow-color-16-5 {
    stroke: #5543b1;
    fill: #5543b1;
  }
}

#git-graph-container:not(.monochrome) #rel-container .flow-group.highlight {
  &.flow-color-16-5 {
    stroke: #7058e6;
    fill: #7058e6;
  }
}

#git-graph-container #rev-list li.highlight.hover {
  background-color: rgba(255, 255, 255, .1);
}

#git-graph-container .ui.buttons button#flow-color-monochrome.ui.button {
  border-left-color: rgb(76, 80, 92);
  border-left-style: solid;
  border-left-width: 1px;
}

.mermaid-chart {
  filter: invert(84%) hue-rotate(180deg);
}

.is-loading::after {
  border-color: #4a4c58 #4a4c58 #d7d7da #d7d7da;
}

.markdown-block-error {
  border: 1px solid rgba(121, 71, 66, .5) !important;
  border-bottom: none !important;
}