Files
sites-auth/gitea.html
T

4420 lines
135 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang=ru-RU data-theme=gitea-auto><!--
Page saved with SingleFile
url: https://about.gitea.com/user/login?redirect_to=%2f
saved date: Mon May 04 2026 09:45:11 GMT+0300 (Moscow Standard Time)
-->
<meta charset=utf-8>
<meta name=viewport content="width=device-width, initial-scale=1">
<title>Вход - Gitea: AnderVolt</title>
<meta name=author content="Gitea - Git with a cup of tea">
<meta name=description content="Gitea (Git with a cup of tea) is a painless self-hosted Git service written in Go">
<meta name=keywords content=go,git,self-hosted,gitea>
<meta property=og:title content="Gitea: AnderVolt">
<meta property=og:type content=website>
<meta property=og:image content=/assets/img/logo.png>
<meta property=og:url content=https://about.gitea.com/ />
<meta property=og:description
content="Gitea (Git with a cup of tea) is a painless self-hosted Git service written in Go">
<meta property=og:site_name content="Gitea: AnderVolt">
<style>
a[data-v-a138c97c]:hover {
text-decoration: none;
color: var(--color-text)
}
.item-file[data-v-a138c97c]:hover,
.item-directory[data-v-a138c97c]:hover {
color: var(--color-text);
background: var(--color-hover);
border-radius: 4px;
cursor: pointer
}
.ui.dropdown.diff-commit-selector .menu>.item[data-v-c589fa0e]:focus {
background: var(--color-active)
}
.auto-merge-small[data-v-36ade991]:hover {
color: var(--color-info-text);
background-color: var(--color-info-bg);
border: 1px solid var(--color-info-border)
}
.auto-merge-small:hover .auto-merge-tip[data-v-36ade991] {
display: flex
}
.job-brief-item[data-v-2d8f7d75]:hover {
background-color: var(--color-hover)
}
.action-view-right .ui.button[data-v-2d8f7d75]:focus {
background: transparent;
color: var(--color-console-fg-subtle)
}
.action-view-right .ui.button[data-v-2d8f7d75]:hover {
background: var(--color-console-hover-bg);
color: var(--color-console-fg)
}
.action-view-right .ui.button[data-v-2d8f7d75]:active {
background: var(--color-console-active-bg);
color: var(--color-console-fg)
}
.action-view-right .ui.dropdown .menu>.item[data-v-2d8f7d75]:hover {
color: var(--color-console-fg);
background: var(--color-console-hover-bg)
}
.action-view-right .ui.dropdown .menu>.item[data-v-2d8f7d75]:active {
color: var(--color-console-fg);
background: var(--color-console-active-bg)
}
.action-view-right .ui.pointing.dropdown>.menu[data-v-2d8f7d75]:not(.hidden):after {
background: var(--color-console-menu-bg);
box-shadow: -1px -1px 0 0 var(--color-console-menu-border)
}
.job-step-container .job-step-summary.step-expandable[data-v-2d8f7d75]:hover {
color: var(--color-console-fg);
background: var(--color-console-hover-bg)
}
.job-log-line:hover,
.job-log-line:target {
background-color: var(--color-console-hover-bg)
}
.job-log-line:target {
scroll-margin-top: 95px
}
.job-log-line:target>.line-num {
color: var(--color-primary);
text-decoration: underline
}
.tree-item[data-v-cbbebcae]:hover {
color: var(--color-text);
background: var(--color-hover);
border-radius: 4px;
cursor: pointer
}
.cm-fat-cursor .CodeMirror-line::selection,
.cm-fat-cursor .CodeMirror-line>span::selection,
.cm-fat-cursor .CodeMirror-line>span>span::selection {
background: 0 0
}
.cm-fat-cursor .CodeMirror-line::-moz-selection,
.cm-fat-cursor .CodeMirror-line>span::-moz-selection,
.cm-fat-cursor .CodeMirror-line>span>span::-moz-selection {
background: 0 0
}
@-moz-keyframes blink {
50% {
background-color: transparent
}
}
@-webkit-keyframes blink {
50% {
background-color: transparent
}
}
@keyframes blink {
50% {
background-color: transparent
}
}
.CodeMirror-gutter-wrapper ::selection {
background-color: transparent
}
.CodeMirror-gutter-wrapper ::-moz-selection {
background-color: transparent
}
.CodeMirror-line::selection,
.CodeMirror-line>span::selection,
.CodeMirror-line>span>span::selection {
background: #d7d4f0
}
.CodeMirror-line::-moz-selection,
.CodeMirror-line>span::-moz-selection,
.CodeMirror-line>span>span::-moz-selection {
background: #d7d4f0
}
.cm-tab-wrap-hack:after {
content: ""
}
.editor-toolbar.fullscreen:before {
width: 20px;
height: 50px;
background: -moz-linear-gradient(left, #fff 0, rgba(255, 255, 255, 0) 100%);
background: -webkit-gradient(linear, left top, right top, color-stop(0, #fff), color-stop(100%, rgba(255, 255, 255, 0)));
background: -webkit-linear-gradient(left, #fff 0, rgba(255, 255, 255, 0) 100%);
background: -o-linear-gradient(left, #fff 0, rgba(255, 255, 255, 0) 100%);
background: -ms-linear-gradient(left, #fff 0, rgba(255, 255, 255, 0) 100%);
background: linear-gradient(to right, #fff 0, #fff0);
position: fixed;
top: 0;
left: 0;
margin: 0;
padding: 0
}
.editor-toolbar.fullscreen:after {
width: 20px;
height: 50px;
background: -moz-linear-gradient(left, rgba(255, 255, 255, 0)0, #fff 100%);
background: -webkit-gradient(linear, left top, right top, color-stop(0, rgba(255, 255, 255, 0)), color-stop(100%, #fff));
background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0)0, #fff 100%);
background: -o-linear-gradient(left, rgba(255, 255, 255, 0)0, #fff 100%);
background: -ms-linear-gradient(left, rgba(255, 255, 255, 0)0, #fff 100%);
background: linear-gradient(to right, #fff0 0, #fff);
position: fixed;
top: 0;
right: 0;
margin: 0;
padding: 0
}
.editor-toolbar button:hover {
background: #fcfcfc;
border-color: #95a5a6
}
.editor-toolbar button:after {
font-family: Arial, Helvetica Neue, Helvetica, sans-serif;
font-size: 65%;
vertical-align: text-bottom;
position: relative;
top: 2px
}
.editor-toolbar button.heading-1:after {
content: "1"
}
.editor-toolbar button.heading-2:after {
content: "2"
}
.editor-toolbar button.heading-3:after {
content: "3"
}
.editor-toolbar button.heading-bigger:after {
content: "▲"
}
.editor-toolbar button.heading-smaller:after {
content: "▼"
}
.editor-statusbar .lines:before {
content: "lines: "
}
.editor-statusbar .words:before {
content: "words: "
}
.editor-statusbar .characters:before {
content: "characters: "
}
.editor-toolbar .easymde-dropdown:hover {
background: linear-gradient(to bottom right, #fff 0 84%, #333 50% 100%)
}
.easymde-dropdown:active .easymde-dropdown-content,
.easymde-dropdown:focus .easymde-dropdown-content,
.easymde-dropdown:focus-within .easymde-dropdown-content {
visibility: visible
}
span[data-img-src]:after {
content: "";
background-image: var(--bg-image);
display: block;
max-height: 100%;
max-width: 100%;
background-size: contain;
height: 0;
padding-top: var(--height);
width: var(--width);
background-repeat: no-repeat
}
.ui.dropdown {
cursor: pointer;
position: relative;
outline: none;
text-align: left;
transition: box-shadow .1s ease, width .1s ease;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}
.ui.dropdown .menu {
cursor: auto;
position: absolute;
outline: none;
min-width: max-content;
margin: 0;
padding: 0;
font-size: 1em;
text-shadow: none;
text-align: left;
border: 1px solid rgba(34, 36, 38, .15);
transition: opacity .1s ease;
z-index: 11;
will-change: transform, opacity
}
.ui.dropdown .menu .menu:after {
display: none
}
.ui.dropdown .ui.menu>.item:before,
.ui.menu .ui.dropdown .menu>.item:before {
display: none
}
.ui.selection.dropdown .menu:after,
.ui.selection.dropdown .menu:before {
display: none
}
.ui.selection.dropdown:hover {
border-color: #22242659;
box-shadow: none
}
.ui.selection.dropdown:focus {
border-color: #96c8da;
box-shadow: none
}
.ui.selection.dropdown:focus .menu {
border-color: #96c8da;
box-shadow: 0 2px 3px #22242626
}
.ui.selection.active.dropdown:hover,
.ui.selection.active.dropdown:hover .menu {
border-color: #96c8da;
box-shadow: 0 2px 3px #22242626
}
@supports (-webkit-touch-callout:none) or (-webkit-overflow-scrolling:touch) or (-moz-appearance:none) {
@media (-moz-touch-enabled),
(pointer:coarse) {
.ui.dropdown .scrollhint.menu:not(.hidden):before {
animation: scrollhint 2s ease 2;
content: "";
z-index: 15;
display: block;
position: absolute;
opacity: 0;
right: .25em;
top: 0;
height: 100%;
border-right: .25em solid;
border-left: 0;
-o-border-image: linear-gradient(to bottom, rgba(0, 0, 0, .75), rgba(0, 0, 0, 0))1 100%;
border-image: linear-gradient(to bottom, #000000bf, #0000)1 100%
}
.ui.inverted.dropdown .scrollhint.menu:not(.hidden):before {
-o-border-image: linear-gradient(to bottom, rgba(255, 255, 255, .75), rgba(255, 255, 255, 0))1 100%;
border-image: linear-gradient(to bottom, #ffffffbf, #fff0)1 100%
}
@keyframes scrollhint {
0% {
opacity: 1;
top: 100%
}
to {
opacity: 0;
top: 0
}
}
}
}
.ui.active.search.dropdown input.search:focus+.text i.icon,
.ui.active.search.dropdown input.search:focus+.text .flag {
opacity: var(--opacity-disabled)
}
.ui.active.search.dropdown input.search:focus+.text {
color: #737373de !important
}
.ui.dropdown .menu>.item:hover {
background: #0000000d;
color: #000000f2;
z-index: 13
}
.ui.dropdown:not(.button)>input:focus~.default.text,
.ui.default.dropdown:not(.button)>input:focus~.text {
color: #737373de
}
.ui.loading.dropdown>i.icon:before {
position: absolute;
content: "";
top: 50%;
left: 50%;
margin: -.64285714em 0 0-.64285714em;
width: 1.28571429em;
height: 1.28571429em;
border-radius: 500rem;
border: .2em solid rgba(0, 0, 0, .1)
}
.ui.loading.dropdown>i.icon:after {
position: absolute;
content: "";
top: 50%;
left: 50%;
box-shadow: 0 0 0 1px transparent;
margin: -.64285714em 0 0-.64285714em;
width: 1.28571429em;
height: 1.28571429em;
animation: loader .6s infinite linear;
border: .2em solid #767676;
border-radius: 500rem
}
.ui.loading.dropdown.button>i.icon:before,
.ui.loading.dropdown.button>i.icon:after {
display: none
}
.ui.selection.dropdown.error:hover {
border-color: #e0b4b4
}
.ui.dropdown.error>.menu>.item:hover {
background-color: #fbe7e7
}
.ui.selection.dropdown.info:hover {
border-color: #a9d5de
}
.ui.dropdown.info>.menu>.item:hover {
background-color: #e9f2fb
}
.ui.selection.dropdown.success:hover {
border-color: #a3c293
}
.ui.dropdown.success>.menu>.item:hover {
background-color: #e9fbe9
}
.ui.selection.dropdown.warning:hover {
border-color: #c9ba9b
}
.ui.dropdown.warning>.menu>.item:hover {
background-color: #fbfbe9
}
.ui.dropdown>.clear.dropdown.icon:hover {
opacity: 1
}
.ui.dropdown .menu {
left: 0
}
.ui.upward.dropdown>.menu {
top: auto;
bottom: 100%;
border-radius: .28571429rem .28571429rem 0 0
}
.ui.simple.upward.dropdown:hover {
border-radius: .28571429rem .28571429rem 0 0 !important
}
.ui.upward.selection.dropdown:hover {
box-shadow: 0 0 2px #0000000d
}
.ui.upward.active.selection.dropdown:hover {
box-shadow: 0 0 3px #0000000d
}
.ui.upward.active.selection.dropdown:hover .menu {
box-shadow: 0-2px 3px #00000014
}
.ui.simple.dropdown .menu:before,
.ui.simple.dropdown .menu:after {
display: none
}
.ui.simple.dropdown:hover {
border-bottom-left-radius: 0 !important;
border-bottom-right-radius: 0 !important
}
.ui.simple.dropdown:hover>.menu {
overflow: visible;
width: auto;
height: auto;
top: 100%;
opacity: 1
}
.ui.simple.dropdown>.menu>.item:active>.menu,
.ui.simple.dropdown .menu .item:hover>.menu {
overflow: visible;
width: auto;
height: auto;
top: 0 !important;
left: 100%;
opacity: 1
}
.ui.simple.dropdown>.menu>.item:active>.left.menu,
.ui.simple.dropdown .menu .item:hover>.left.menu,
.right.menu .ui.simple.dropdown>.menu>.item:active>.menu:not(.right),
.right.menu .ui.simple.dropdown>.menu .item:hover>.menu:not(.right) {
left: auto;
right: 100%
}
.ui.simple.disabled.dropdown:hover .menu {
display: none;
height: 0;
width: 0;
overflow: hidden
}
.ui.simple.scrolling.dropdown:hover>.menu {
overflow-x: hidden;
overflow-y: auto
}
.ui.pointing.dropdown>.menu:not(.hidden):after {
display: block;
position: absolute;
pointer-events: none;
content: "";
visibility: visible;
transform: rotate(45deg);
width: .5em;
height: .5em;
box-shadow: -1px -1px #22242626;
background: #fff;
z-index: 2;
top: -.25em;
left: 50%;
margin: 0 0 0-.25em
}
.ui.top.left.pointing.dropdown>.menu:after {
top: -.25em;
left: 1em;
right: auto;
margin: 0;
transform: rotate(45deg)
}
.ui.top.pointing.dropdown>.left.menu:after,
.ui.top.right.pointing.dropdown>.menu:after {
top: -.25em;
left: auto !important;
right: 1em !important;
margin: 0;
transform: rotate(45deg)
}
.ui.left.pointing.dropdown>.menu:after {
top: 1em;
left: -.25em;
margin: 0;
transform: rotate(-45deg)
}
.ui.left:not(.top):not(.bottom).pointing.dropdown>.left.menu:after {
top: 1em;
left: auto;
right: -.25em;
margin: 0;
transform: rotate(135deg)
}
.ui.right.pointing.dropdown>.menu:after {
top: 1em;
left: auto;
right: -.25em;
margin: 0;
transform: rotate(135deg)
}
.ui.bottom.pointing.dropdown>.menu:after {
top: auto;
bottom: -.25em;
right: auto;
margin: 0;
transform: rotate(-135deg)
}
.ui.bottom.left.pointing.dropdown>.menu:after {
left: 1em;
right: auto
}
.ui.bottom.right.pointing.dropdown>.menu:after {
left: auto;
right: 1em
}
.ui.pointing.upward.dropdown .menu:after,
.ui.top.pointing.upward.dropdown .menu:after {
top: 100% !important;
bottom: auto !important;
box-shadow: 1px 1px #22242626;
margin: -.25em 0 0
}
.ui.right.pointing.upward.dropdown:not(.top):not(.bottom) .menu:after {
top: auto !important;
bottom: 0 !important;
margin: 0 0 1em;
box-shadow: -1px -1px #22242626
}
.ui.left.pointing.upward.dropdown:not(.top):not(.bottom) .menu:after {
top: auto !important;
bottom: 0 !important;
margin: 0 0 1em;
box-shadow: -1px -1px #22242626
}
.ui.dropdown {
font-size: 1rem
}
.ui.dropdown>.dropdown.icon:before {
content: ""
}
.ui.dropdown .menu .item .dropdown.icon:before {
content: ""
}
.ui.dropdown .item .left.dropdown.icon:before,
.ui.dropdown .left.menu .item .dropdown.icon:before {
content: ""
}
.ui.vertical.menu .dropdown.item>.dropdown.icon:before {
content: ""
}
.ui.form {
position: relative;
max-width: 100%
}
.ui.form .field {
clear: both;
margin: 0 0 1em
}
.ui.form .field:last-child {
margin-bottom: 0
}
.ui.form .field>label {
display: block;
margin: 0 0 .28571429rem;
font-size: .92857143em;
font-weight: 500;
text-transform: none
}
.ui.form input[type=password],
.ui.form input[type=text] {
width: 100%;
vertical-align: top
}
.ui.form ::-webkit-datetime-edit,
.ui.form ::-webkit-inner-spin-button {
height: 1.21428571em
}
.ui.form input[type=password],
.ui.form input[type=text] {
font-family: var(--fonts-regular);
margin: 0;
outline: none;
-webkit-appearance: none;
-webkit-tap-highlight-color: rgba(255, 255, 255, 0);
line-height: 1.21428571em;
padding: .67857143em 1em;
font-size: 1em;
border: 1px solid rgba(34, 36, 38, .15);
border-radius: .28571429rem;
box-shadow: 0 0 0 0 transparent inset
}
.ui.form input[type=checkbox] {
vertical-align: top
}
.ui.form .inline.fields .field .prompt:before,
.ui.form .inline.field .prompt:before {
border-width: 0 0 1px 1px;
inset: 50%auto auto 0
}
.ui.form .field.field input:-webkit-autofill {
box-shadow: 0 0 0 100px ivory inset !important;
border-color: #e5dfa1 !important
}
.ui.form .field.field input:-webkit-autofill:focus {
box-shadow: 0 0 0 100px ivory inset !important;
border-color: #d5c315 !important
}
.ui.form ::-webkit-input-placeholder {
color: #bfbfbfde
}
.ui.form :-ms-input-placeholder {
color: #bfbfbfde !important
}
.ui.form ::-moz-placeholder {
color: #bfbfbfde
}
.ui.form :focus::-webkit-input-placeholder {
color: #737373de
}
.ui.form :focus:-ms-input-placeholder {
color: #737373de !important
}
.ui.form :focus::-moz-placeholder {
color: #737373de
}
.ui.form input:not([type]):focus,
.ui.form input[type=date]:focus,
.ui.form input[type=datetime-local]:focus,
.ui.form input[type=email]:focus,
.ui.form input[type=number]:focus,
.ui.form input[type=password]:focus,
.ui.form input[type=search]:focus,
.ui.form input[type=tel]:focus,
.ui.form input[type=time]:focus,
.ui.form input[type=text]:focus,
.ui.form input[type=file]:focus,
.ui.form input[type=url]:focus {
color: #000000f2;
border-color: #85b7d9;
border-radius: .28571429rem;
background: #fff;
box-shadow: 0 0#22242659 inset
}
.ui.form .ui.action.input:not([class*="left action"]) input:not([type]):focus,
.ui.form .ui.action.input:not([class*="left action"]) input[type=date]:focus,
.ui.form .ui.action.input:not([class*="left action"]) input[type=datetime-local]:focus,
.ui.form .ui.action.input:not([class*="left action"]) input[type=email]:focus,
.ui.form .ui.action.input:not([class*="left action"]) input[type=number]:focus,
.ui.form .ui.action.input:not([class*="left action"]) input[type=password]:focus,
.ui.form .ui.action.input:not([class*="left action"]) input[type=search]:focus,
.ui.form .ui.action.input:not([class*="left action"]) input[type=tel]:focus,
.ui.form .ui.action.input:not([class*="left action"]) input[type=time]:focus,
.ui.form .ui.action.input:not([class*="left action"]) input[type=text]:focus,
.ui.form .ui.action.input:not([class*="left action"]) input[type=file]:focus,
.ui.form .ui.action.input:not([class*="left action"]) input[type=url]:focus {
border-top-right-radius: 0;
border-bottom-right-radius: 0
}
.ui.form textarea:focus {
color: #000000f2;
border-color: #85b7d9;
border-radius: .28571429rem;
background: #fff;
box-shadow: 0 0#22242659 inset;
-webkit-appearance: none
}
.ui.form .field.error textarea:focus,
.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: #fff6f6;
border-color: #e0b4b4;
color: #9f3a38;
box-shadow: none
}
.ui.form .error.error input:-webkit-autofill {
box-shadow: 0 0 0 100px #fffaf0 inset !important;
border-color: #e0b4b4 !important
}
.ui.form .error ::-webkit-input-placeholder {
color: #e7bdbc
}
.ui.form .error :-ms-input-placeholder {
color: #e7bdbc !important
}
.ui.form .error ::-moz-placeholder {
color: #e7bdbc
}
.ui.form .error :focus::-webkit-input-placeholder {
color: #da9796
}
.ui.form .error :focus:-ms-input-placeholder {
color: #da9796 !important
}
.ui.form .error :focus::-moz-placeholder {
color: #da9796
}
.ui.form .fields.error .field .ui.dropdown:hover,
.ui.form .field.error .ui.dropdown:hover {
border-color: #e0b4b4 !important
}
.ui.form .fields.error .field .ui.dropdown:hover .menu,
.ui.form .field.error .ui.dropdown:hover .menu {
border-color: #e0b4b4
}
.ui.form .fields.error .field .ui.dropdown .menu .item:hover,
.ui.form .field.error .ui.dropdown .menu .item:hover {
background-color: #fbe7e7
}
.ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) label:before,
.ui.form .field.error .checkbox:not(.toggle):not(.slider) label:before,
.ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) .box:before,
.ui.form .field.error .checkbox:not(.toggle):not(.slider) .box:before {
background: #fff6f6;
border-color: #e0b4b4
}
.ui.form .fields.error .field .checkbox label:after,
.ui.form .field.error .checkbox label:after,
.ui.form .fields.error .field .checkbox .box:after,
.ui.form .field.error .checkbox .box:after {
color: #9f3a38
}
.ui.form .field.info textarea:focus,
.ui.form .field.info select:focus,
.ui.form .field.info input:not([type]):focus,
.ui.form .field.info input[type=date]:focus,
.ui.form .field.info input[type=datetime-local]:focus,
.ui.form .field.info input[type=email]:focus,
.ui.form .field.info input[type=number]:focus,
.ui.form .field.info input[type=password]:focus,
.ui.form .field.info input[type=search]:focus,
.ui.form .field.info input[type=tel]:focus,
.ui.form .field.info input[type=time]:focus,
.ui.form .field.info input[type=text]:focus,
.ui.form .field.info input[type=file]:focus,
.ui.form .field.info input[type=url]:focus {
background: #f8ffff;
border-color: #a9d5de;
color: #276f86;
box-shadow: none
}
.ui.form .info.info input:-webkit-autofill {
box-shadow: 0 0 0 100px #f0faff inset !important;
border-color: #b3e0e0 !important
}
.ui.form .info ::-webkit-input-placeholder {
color: #98cfe1
}
.ui.form .info :-ms-input-placeholder {
color: #98cfe1 !important
}
.ui.form .info ::-moz-placeholder {
color: #98cfe1
}
.ui.form .info :focus::-webkit-input-placeholder {
color: #70bdd6
}
.ui.form .info :focus:-ms-input-placeholder {
color: #70bdd6 !important
}
.ui.form .info :focus::-moz-placeholder {
color: #70bdd6
}
.ui.form .fields.info .field .ui.dropdown:hover,
.ui.form .field.info .ui.dropdown:hover {
border-color: #a9d5de !important
}
.ui.form .fields.info .field .ui.dropdown:hover .menu,
.ui.form .field.info .ui.dropdown:hover .menu {
border-color: #a9d5de
}
.ui.form .fields.info .field .ui.dropdown .menu .item:hover,
.ui.form .field.info .ui.dropdown .menu .item:hover {
background-color: #e9f2fb
}
.ui.form .fields.info .field .checkbox:not(.toggle):not(.slider) label:before,
.ui.form .field.info .checkbox:not(.toggle):not(.slider) label:before,
.ui.form .fields.info .field .checkbox:not(.toggle):not(.slider) .box:before,
.ui.form .field.info .checkbox:not(.toggle):not(.slider) .box:before {
background: #f8ffff;
border-color: #a9d5de
}
.ui.form .fields.info .field .checkbox label:after,
.ui.form .field.info .checkbox label:after,
.ui.form .fields.info .field .checkbox .box:after,
.ui.form .field.info .checkbox .box:after {
color: #276f86
}
.ui.form .field.success textarea:focus,
.ui.form .field.success select:focus,
.ui.form .field.success input:not([type]):focus,
.ui.form .field.success input[type=date]:focus,
.ui.form .field.success input[type=datetime-local]:focus,
.ui.form .field.success input[type=email]:focus,
.ui.form .field.success input[type=number]:focus,
.ui.form .field.success input[type=password]:focus,
.ui.form .field.success input[type=search]:focus,
.ui.form .field.success input[type=tel]:focus,
.ui.form .field.success input[type=time]:focus,
.ui.form .field.success input[type=text]:focus,
.ui.form .field.success input[type=file]:focus,
.ui.form .field.success input[type=url]:focus {
background: #fcfff5;
border-color: #a3c293;
color: #2c662d;
box-shadow: none
}
.ui.form .success.success input:-webkit-autofill {
box-shadow: 0 0 0 100px #f0fff0 inset !important;
border-color: #bee0b3 !important
}
.ui.form .success ::-webkit-input-placeholder {
color: #8fcf90
}
.ui.form .success :-ms-input-placeholder {
color: #8fcf90 !important
}
.ui.form .success ::-moz-placeholder {
color: #8fcf90
}
.ui.form .success :focus::-webkit-input-placeholder {
color: #6cbf6d
}
.ui.form .success :focus:-ms-input-placeholder {
color: #6cbf6d !important
}
.ui.form .success :focus::-moz-placeholder {
color: #6cbf6d
}
.ui.form .fields.success .field .ui.dropdown:hover,
.ui.form .field.success .ui.dropdown:hover {
border-color: #a3c293 !important
}
.ui.form .fields.success .field .ui.dropdown:hover .menu,
.ui.form .field.success .ui.dropdown:hover .menu {
border-color: #a3c293
}
.ui.form .fields.success .field .ui.dropdown .menu .item:hover,
.ui.form .field.success .ui.dropdown .menu .item:hover {
background-color: #e9fbe9
}
.ui.form .fields.success .field .checkbox:not(.toggle):not(.slider) label:before,
.ui.form .field.success .checkbox:not(.toggle):not(.slider) label:before,
.ui.form .fields.success .field .checkbox:not(.toggle):not(.slider) .box:before,
.ui.form .field.success .checkbox:not(.toggle):not(.slider) .box:before {
background: #fcfff5;
border-color: #a3c293
}
.ui.form .fields.success .field .checkbox label:after,
.ui.form .field.success .checkbox label:after,
.ui.form .fields.success .field .checkbox .box:after,
.ui.form .field.success .checkbox .box:after {
color: #2c662d
}
.ui.form .field.warning textarea:focus,
.ui.form .field.warning select:focus,
.ui.form .field.warning input:not([type]):focus,
.ui.form .field.warning input[type=date]:focus,
.ui.form .field.warning input[type=datetime-local]:focus,
.ui.form .field.warning input[type=email]:focus,
.ui.form .field.warning input[type=number]:focus,
.ui.form .field.warning input[type=password]:focus,
.ui.form .field.warning input[type=search]:focus,
.ui.form .field.warning input[type=tel]:focus,
.ui.form .field.warning input[type=time]:focus,
.ui.form .field.warning input[type=text]:focus,
.ui.form .field.warning input[type=file]:focus,
.ui.form .field.warning input[type=url]:focus {
background: #fffaf3;
border-color: #c9ba9b;
color: #573a08;
box-shadow: none
}
.ui.form .warning.warning input:-webkit-autofill {
box-shadow: 0 0 0 100px #ffffe0 inset !important;
border-color: #e0e0b3 !important
}
.ui.form .warning ::-webkit-input-placeholder {
color: #edad3e
}
.ui.form .warning :-ms-input-placeholder {
color: #edad3e !important
}
.ui.form .warning ::-moz-placeholder {
color: #edad3e
}
.ui.form .warning :focus::-webkit-input-placeholder {
color: #e39715
}
.ui.form .warning :focus:-ms-input-placeholder {
color: #e39715 !important
}
.ui.form .warning :focus::-moz-placeholder {
color: #e39715
}
.ui.form .fields.warning .field .ui.dropdown:hover,
.ui.form .field.warning .ui.dropdown:hover {
border-color: #c9ba9b !important
}
.ui.form .fields.warning .field .ui.dropdown:hover .menu,
.ui.form .field.warning .ui.dropdown:hover .menu {
border-color: #c9ba9b
}
.ui.form .fields.warning .field .ui.dropdown .menu .item:hover,
.ui.form .field.warning .ui.dropdown .menu .item:hover {
background-color: #fbfbe9
}
.ui.form .fields.warning .field .checkbox:not(.toggle):not(.slider) label:before,
.ui.form .field.warning .checkbox:not(.toggle):not(.slider) label:before,
.ui.form .fields.warning .field .checkbox:not(.toggle):not(.slider) .box:before,
.ui.form .field.warning .checkbox:not(.toggle):not(.slider) .box:before {
background: #fffaf3;
border-color: #c9ba9b
}
.ui.form .fields.warning .field .checkbox label:after,
.ui.form .field.warning .checkbox label:after,
.ui.form .fields.warning .field .checkbox .box:after,
.ui.form .field.warning .checkbox .box:after {
color: #573a08
}
.ui.form .field :disabled {
pointer-events: none;
opacity: var(--opacity-disabled)
}
.ui.form .field.disabled :disabled {
opacity: 1
}
.ui.loading.form:before {
position: absolute;
content: "";
top: 0;
left: 0;
background: #fffc;
width: 100%;
height: 100%;
z-index: 100
}
.ui.loading.form.segments:before {
border-radius: .28571429rem
}
.ui.loading.form:after {
position: absolute;
content: "";
top: 50%;
left: 50%;
margin: -1.5em 0 0-1.5em;
width: 3em;
height: 3em;
animation: loader .6s infinite linear;
border: .2em solid #767676;
border-radius: 500rem;
box-shadow: 0 0 0 1px transparent;
visibility: visible;
z-index: 101
}
.ui.form .required.fields:not(.grouped)>.field>label:after,
.ui.form .required.fields.grouped>label:after,
.ui.form .required.field>label:after,
.ui.form .required.fields:not(.grouped)>.field>.checkbox:after,
.ui.form .required.field>.checkbox:after,
.ui.form label.required:after {
margin: -.2em 0 0 .2em;
content: "*";
color: #db2828
}
.ui.form .required.fields:not(.grouped)>.field>label:after,
.ui.form .required.fields.grouped>label:after,
.ui.form .required.field>label:after,
.ui.form label.required:after {
display: inline-block;
vertical-align: top
}
.ui.form .required.fields:not(.grouped)>.field>.checkbox:after,
.ui.form .required.field>.checkbox:after {
position: absolute;
top: 0;
left: 100%
}
.ui.form .inline.field>:only-child {
margin: 0
}
.ui.form {
font-size: 1rem
}
.ui.modal>.close:hover {
opacity: 1
}
.modals.dimmer .ui.scrolling.modal:not([class*="overlay fullscreen"]):after {
content: " ";
position: absolute;
height: 2rem
}
.ui.search>.prompt:focus {
border-color: #22242659;
background: #fff;
color: #000000f2
}
.ui.loading.search .input>i.icon:before {
position: absolute;
content: "";
top: 50%;
left: 50%;
margin: -.64285714em 0 0-.64285714em;
width: 1.28571429em;
height: 1.28571429em;
border-radius: 500rem;
border: .2em solid rgba(0, 0, 0, .1)
}
.ui.loading.search .input>i.icon:after {
position: absolute;
content: "";
top: 50%;
left: 50%;
margin: -.64285714em 0 0-.64285714em;
width: 1.28571429em;
height: 1.28571429em;
animation: loader .6s infinite linear;
border: .2em solid #767676;
border-radius: 500rem;
box-shadow: 0 0 0 1px transparent
}
.ui.search>.results .result:hover,
.ui.category.search>.results .category .result:hover {
background: #f9fafb
}
.ui.search .action:hover:not(div) {
background: #e0e0e0
}
.ui.search.selection>.icon.input>.remove.icon:hover {
opacity: 1;
color: #db2828
}
*,
:before,
:after {
box-sizing: border-box
}
html {
line-height: normal;
-webkit-text-size-adjust: 100%
}
body {
margin: 0
}
button,
input {
font-family: inherit;
font-size: 100%;
line-height: 1.15;
margin: 0
}
button {
text-transform: none
}
button {
-webkit-appearance: button
}
::-moz-focus-inner {
border-style: none;
padding: 0
}
:-moz-focusring {
outline: 1px dotted ButtonText
}
:-moz-ui-invalid {
box-shadow: none
}
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
height: auto
}
::-webkit-search-decoration {
-webkit-appearance: none
}
::-webkit-file-upload-button {
-webkit-appearance: button;
font: inherit
}
@keyframes isloadingspin {
0% {
transform: translate(-50%, -50%) rotate(0)
}
to {
transform: translate(-50%, -50%) rotate(360deg)
}
}
.is-loading:after {
content: "";
position: absolute;
display: block;
left: 50%;
top: 50%;
height: min(4em, 66.6%);
width: fit-content;
aspect-ratio: 1;
transform: translate(-50%, -50%);
animation: isloadingspin 1s infinite linear;
border-width: 4px;
border-style: solid;
border-color: var(--color-secondary) var(--color-secondary) var(--color-secondary-dark-8) var(--color-secondary-dark-8);
border-radius: var(--border-radius-full)
}
.is-loading.loading-icon-2px:after {
border-width: 2px
}
.is-loading.loading-icon-3px:after {
border-width: 3px
}
code.language-math.is-loading:after {
padding: 0;
border-width: 2px;
width: 1.25rem;
height: 1.25rem
}
@keyframes fadein {
0% {
opacity: 0
}
to {
opacity: 1
}
}
@keyframes fadeout {
0% {
opacity: 1
}
to {
opacity: 0
}
}
@keyframes pulse-1p5 {
0% {
transform: scale(1)
}
50% {
transform: scale(1.5)
}
to {
transform: scale(1)
}
}
@keyframes circular-spin-keyframes {
to {
transform: rotate(-360deg)
}
}
.ui.button {
cursor: pointer;
outline: none;
font-family: var(--fonts-regular);
margin: 0 .25em 0 0;
font-weight: var(--font-weight-normal);
font-size: 1rem;
text-align: center;
text-decoration: none;
line-height: 1;
border-radius: var(--border-radius);
user-select: none;
-webkit-tap-highlight-color: transparent;
justify-content: center;
background: var(--color-button);
border: 1px solid var(--color-light-border);
color: var(--color-text);
white-space: nowrap
}
.ui.button:focus-visible {
box-shadow: inset 0 0 0 2px currentcolor
}
@media (max-width:767.98px) {
.ui.button {
white-space: normal
}
}
.ui.button:hover {
background: var(--color-hover);
color: var(--color-text)
}
.ui.button:active,
.ui.active.button:active,
.ui.active.button:hover {
background: var(--color-active);
color: var(--color-text)
}
.ui.button:disabled,
.ui.disabled.button:hover {
cursor: default;
opacity: var(--opacity-disabled) !important;
background-image: none;
pointer-events: none !important
}
.ui.labeled.button>.label:hover {
background: var(--color-hover)
}
.ui.labeled.button>.button:hover+.label {
border-left-color: var(--color-secondary-dark-2)
}
.ui.button {
min-height: 38px;
padding: .57em 1.43em
}
.ui.basic.buttons .button:hover,
.ui.basic.button:hover {
color: var(--color-text);
background: var(--color-hover);
border-color: var(--color-secondary-dark-2)
}
.ui.basic.buttons .button:active,
.ui.basic.button:active,
.ui.basic.buttons .active.button:hover,
.ui.basic.active.button:hover {
color: var(--color-text);
background: var(--color-active)
}
.ui.button.toggle.active:hover {
background-color: var(--color-green-dark-1);
color: var(--color-white)
}
.ui.primary.button {
background: var(--color-primary);
color: var(--color-primary-contrast)
}
.ui.primary.button:hover,
.ui.primary.buttons .button:hover {
background: var(--color-primary-hover);
color: var(--color-primary-contrast)
}
.ui.primary.button:active,
.ui.primary.buttons .button:active {
background: var(--color-primary-active)
}
.ui.basic.primary.buttons .button:hover,
.ui.basic.primary.button:hover {
color: var(--color-primary-hover);
border-color: var(--color-primary-hover)
}
.ui.basic.primary.buttons .button:active,
.ui.basic.primary.button:active {
color: var(--color-primary-active);
border-color: var(--color-primary-active)
}
.ui.red.button:hover,
.ui.red.buttons .button:hover {
background: var(--color-red-dark-1)
}
.ui.red.button:active,
.ui.red.buttons .button:active {
background: var(--color-red-dark-2)
}
.ui.basic.red.buttons .button:hover,
.ui.basic.red.button:hover {
color: var(--color-red-dark-1);
border-color: var(--color-red-dark-1)
}
.ui.basic.red.buttons .button:active,
.ui.basic.red.button:active {
color: var(--color-red-dark-2);
border-color: var(--color-red-dark-2)
}
.ui.green.button:hover,
.ui.green.buttons .button:hover {
background: var(--color-green-dark-1)
}
.ui.green.button:active,
.ui.green.buttons .button:active {
background: var(--color-green-dark-2)
}
.ui.basic.green.buttons .button:hover,
.ui.basic.green.button:hover {
color: var(--color-green-dark-1);
border-color: var(--color-green-dark-1)
}
.ui.basic.green.buttons .button:active,
.ui.basic.green.button:active {
color: var(--color-green-dark-2);
border-color: var(--color-green-dark-2)
}
.delete-button:hover {
color: var(--color-red)
}
.btn:hover,
.btn:active {
background: none;
border: none
}
a.btn:hover {
color: inherit
}
.ui.buttons .button:hover {
border-color: var(--color-secondary-dark-2)
}
.ui.buttons .button:hover+.button {
border-left: 1px solid var(--color-secondary-dark-2)
}
.ui.container {
max-width: calc(100% - calc(2*var(--page-margin-x)));
margin-left: auto;
margin-right: auto
}
.ui.fluid.container {
width: 100%
}
.divider {
margin: 10px 0;
height: 0;
font-weight: var(--font-weight-medium);
color: var(--color-text);
font-size: 1rem;
width: 100%
}
.divider.divider-text {
display: flex;
align-items: center;
padding: 5px 0
}
.divider.divider-text:before,
.divider.divider-text:after {
content: "";
flex: 1;
border-top: 1px solid var(--color-secondary)
}
.divider.divider-text:before {
margin-right: .75em
}
.divider.divider-text:after {
margin-left: .75em
}
.ui.header {
color: var(--color-text);
font-family: var(--fonts-regular);
font-weight: var(--font-weight-medium);
line-height: 1.28571429
}
.ui.header:first-child {
margin-top: -.14285714em
}
h4.ui.header {
font-size: 1.07142857rem
}
.ui.attached.header {
position: relative;
background: var(--color-box-header);
padding: .78571429rem 1rem;
margin: 0-1px;
border: 1px solid var(--color-secondary)
}
.ui.top.attached.header {
border-radius: .28571429rem .28571429rem 0 0
}
.ui.attached.header:not(h1, h2, h3, h4, h5, h6) {
font-size: 1em
}
.ui.input>input:focus {
border-color: var(--color-primary)
}
.ui.icon.input>textarea:focus~.icon,
.ui.icon.input>input:focus~.icon {
opacity: 1
}
.ui.action.input:not([class*="left action"])>.ui.dropdown.selection:not(:focus) {
border-right: none
}
.ui.action.input:not([class*="left action"])>.ui.dropdown.selection:not(.active):hover {
border-color: var(--color-input-border)
}
.ui.action.input:not([class*="left action"])>input:hover {
border-right: none
}
.ui.action.input:not([class*="left action"])>input:focus+.ui.dropdown.selection,
.ui.action.input:not([class*="left action"])>input:focus+.ui.dropdown.selection:hover,
.ui.action.input:not([class*="left action"])>input:focus+.button,
.ui.action.input:not([class*="left action"])>input:focus+.button:hover,
.ui.action.input:not([class*="left action"])>input:focus+i.icon+.button,
.ui.action.input:not([class*="left action"])>input:focus+i.icon+.button:hover {
border-left-color: var(--color-primary)
}
.ui.action.input:not([class*="left action"])>input:focus {
border-right-color: var(--color-primary)
}
.ui.label>a:hover {
opacity: 1
}
.ui.label>.close.icon:hover,
.ui.label>.delete.icon:hover {
opacity: 1
}
a.ui.label:hover {
background: var(--color-label-hover-bg);
border-color: var(--color-label-hover-bg);
color: var(--color-label-text)
}
a.ui.basic.label:hover {
text-decoration: none;
color: var(--color-text);
border-color: var(--color-secondary-dark-2);
background: var(--color-hover)
}
a.ui.ui.ui.primary.label:hover {
background: var(--color-primary-dark-3);
border-color: var(--color-primary-dark-3);
color: var(--color-primary-contrast)
}
a.ui.ui.ui.basic.primary.label:hover {
background: var(--color-hover);
border-color: var(--color-primary-dark-1);
color: var(--color-primary-dark-1)
}
a.ui.ui.ui.red.label:hover {
background: var(--color-red-dark-1);
border-color: var(--color-red-dark-1);
color: var(--color-white)
}
a.ui.ui.ui.basic.red.label:hover {
background: transparent;
border-color: var(--color-red-dark-1);
color: var(--color-red-dark-1)
}
a.ui.ui.ui.orange.label:hover {
background: var(--color-orange-dark-1);
border-color: var(--color-orange-dark-1);
color: var(--color-white)
}
a.ui.ui.ui.basic.orange.label:hover {
background: transparent;
border-color: var(--color-orange-dark-1);
color: var(--color-orange-dark-1)
}
a.ui.ui.ui.yellow.label:hover {
background: var(--color-yellow-dark-1);
border-color: var(--color-yellow-dark-1);
color: var(--color-white)
}
a.ui.ui.ui.basic.yellow.label:hover {
background: transparent;
border-color: var(--color-yellow-dark-1);
color: var(--color-yellow-dark-1)
}
a.ui.ui.ui.green.label:hover {
background: var(--color-green-dark-1);
border-color: var(--color-green-dark-1);
color: var(--color-white)
}
a.ui.ui.ui.basic.green.label:hover {
background: transparent;
border-color: var(--color-green-dark-1);
color: var(--color-green-dark-1)
}
a.ui.ui.ui.purple.label:hover {
background: var(--color-purple-dark-1);
border-color: var(--color-purple-dark-1);
color: var(--color-white)
}
a.ui.ui.ui.basic.purple.label:hover {
background: transparent;
border-color: var(--color-purple-dark-1);
color: var(--color-purple-dark-1)
}
a.ui.ui.ui.grey.label:hover {
background: var(--color-label-hover-bg);
border-color: var(--color-label-hover-bg);
color: var(--color-white)
}
a.ui.ui.ui.basic.grey.label:hover {
background: transparent;
border-color: var(--color-label-hover-bg);
color: var(--color-label-hover-bg)
}
.ui.list>.list>.item:after,
.ui.list>.item:after {
content: "";
display: block;
height: 0;
clear: both;
visibility: hidden
}
.ui.menu .ui.list .list>.item:before,
.ui.menu .ui.list>.item:before {
border: none;
background: none
}
.ui.list .list>a.item:hover>.icons,
.ui.list>a.item:hover>.icons,
.ui.list .list>a.item:hover>i.icon,
.ui.list>a.item:hover>i.icon {
color: var(--color-text-dark)
}
.ui.segment {
position: relative;
padding: 1em
}
.ui.segment:first-child {
margin-top: 0
}
.ui.segment:last-child {
margin-bottom: 0
}
.ui.clearing.segment:after {
content: "";
display: block;
clear: both
}
.ui.attached.segment {
top: 0;
bottom: 0;
border-radius: 0;
margin: 0-1px;
width: calc(100% + 2px);
max-width: calc(100% + 2px);
box-shadow: none;
border: 1px solid var(--color-secondary);
background: var(--color-box-body);
color: var(--color-text)
}
.ui.attached:not(.message)+.ui.attached.segment:not(.top) {
border-top: none
}
.ui.attached.segment:last-child {
border-bottom-left-radius: .28571429rem;
border-bottom-right-radius: .28571429rem
}
.ui.segment {
font-size: 1rem
}
.ui.grid {
display: flex;
flex-direction: row;
flex-wrap: wrap;
align-items: stretch;
padding: 0;
margin: -1rem
}
.ui[class*="very relaxed"].grid {
margin-left: -2.5rem;
margin-right: -2.5rem
}
.ui.grid>.column:not(.row) {
position: relative;
vertical-align: top
}
.ui.grid>.column:not(.row) {
padding-top: 1rem;
padding-bottom: 1rem
}
@media only screen and (max-width:767.98px) {
.ui.page.grid {
width: auto;
padding-left: 0;
padding-right: 0;
margin-left: 0;
margin-right: 0
}
}
@media only screen and (min-width:768px) and (max-width:991.98px) {
.ui.page.grid {
width: auto;
margin-left: 0;
margin-right: 0;
padding-left: 2em;
padding-right: 2em
}
}
@media only screen and (min-width:992px) and (max-width:1199.98px) {
.ui.page.grid {
width: auto;
margin-left: 0;
margin-right: 0;
padding-left: 3%;
padding-right: 3%
}
}
@media only screen and (min-width:1200px) and (max-width:1919.98px) {
.ui.page.grid {
width: auto;
margin-left: 0;
margin-right: 0;
padding-left: 15%;
padding-right: 15%
}
}
@media only screen and (min-width:1920px) {
.ui.page.grid {
width: auto;
margin-left: 0;
margin-right: 0;
padding-left: 23%;
padding-right: 23%
}
}
.ui.grid>.column:only-child {
width: 100%
}
.ui[class*="very relaxed"].grid>.column:not(.row) {
padding-left: 2.5rem;
padding-right: 2.5rem
}
.ui.menu {
flex-shrink: 0;
margin: 1rem 0;
font-family: var(--fonts-regular);
font-weight: var(--font-weight-normal);
min-height: 2.85714286em;
font-size: 1rem
}
.ui.menu .item:before {
position: absolute;
content: "";
top: 0;
right: 0;
height: 100%;
width: 1px;
background: var(--color-secondary)
}
.ui.menu .ui.dropdown .menu>.item:hover {
color: var(--color-text) !important;
background: var(--color-hover) !important
}
.ui.menu .list .item:before {
background: none !important
}
.ui.menu .dropdown.item:hover,
.ui.menu a.item:hover {
cursor: pointer
}
.ui.menu a.item:active {
color: var(--color-text);
background: none
}
.ui.menu .right.item:before,
.ui.menu .right.menu>.item:before {
right: auto;
left: 0
}
.ui.menu .center.item:last-child:before {
display: none
}
.ui.vertical.menu .item:before {
position: absolute;
content: "";
top: 0;
left: 0;
width: 100%;
height: 1px;
background: var(--color-secondary)
}
.ui.vertical.menu .item:first-child:before {
display: none !important
}
.ui.vertical.menu .item .menu .item:hover,
.ui.vertical.menu .item .menu a.item:hover {
color: var(--color-text-light-1)
}
.ui.vertical.menu .item .menu a.item:hover {
color: var(--color-text)
}
.ui.vertical.menu .menu .item:before {
display: none
}
.ui.tabular.menu .item:before {
display: none
}
.ui.tabular.menu .item:hover {
background-color: transparent
}
.ui.tabular.menu .active.item:hover {
background: var(--color-body);
border-top-width: 1px;
border-color: var(--color-secondary);
color: var(--color-text-dark);
margin-bottom: -1px;
border-radius: .28571429rem .28571429rem 0 0 !important
}
.ui.pagination.menu .item:last-child:before {
display: none
}
.ui.pagination.menu .active.item:hover {
border-top: none;
padding-top: .92857143em;
color: var(--color-text);
background: var(--color-active)
}
.ui.secondary.menu {
background: none;
margin-left: 0;
margin-right: 0;
gap: .35714286em;
border-radius: 0;
border: none
}
.ui.secondary.menu .item:before {
display: none !important
}
.ui.secondary.menu .dropdown.item:hover,
.ui.secondary.menu a.item:hover {
color: var(--color-text);
background: var(--color-hover)
}
.ui.secondary.menu .active.item:hover {
color: var(--color-text-dark);
background: var(--color-active)
}
.ui.secondary.pointing.menu .item:after {
display: none
}
.ui.secondary.pointing.menu .dropdown.item:hover,
.ui.secondary.pointing.menu a.item:hover {
background-color: transparent;
color: var(--color-text)
}
.ui.secondary.pointing.menu .dropdown.item:active,
.ui.secondary.pointing.menu a.item:active {
background-color: transparent
}
.ui.secondary.pointing.menu .active.item:hover,
.ui.secondary.pointing.menu .dropdown.item:hover {
color: var(--color-text-dark)
}
.ui.borderless.menu .item:before,
.ui.borderless.menu .item .menu .item:before,
.ui.menu .borderless.item:before {
background: none !important
}
.ui.compact.menu .item:last-child:before {
display: none
}
.ui.compact.vertical.menu .item:last-child:before {
display: block
}
.ui.item.menu .item:last-child:before {
display: none
}
.ui.pointing.menu .item:after {
visibility: hidden;
position: absolute;
content: "";
top: 100%;
left: 50%;
transform: translate(-50%) translateY(-50%) rotate(45deg);
background: none;
margin: .5px 0 0;
width: .57142857em;
height: .57142857em;
border: none;
border-bottom: 1px solid var(--color-secondary);
border-right: 1px solid var(--color-secondary);
z-index: 2
}
.ui.pointing.menu .ui.dropdown .menu .item:after {
display: none
}
.ui.pointing.menu .active.item:after {
visibility: visible
}
.ui.pointing.menu .active.dropdown.item:after {
visibility: hidden
}
.ui.pointing.menu .dropdown.active.item:after,
.ui.pointing.menu .active.item .menu .active.item:after {
display: none
}
.ui.pointing.menu .active.item:after,
.ui.pointing.menu .active.item:hover:after {
background-color: var(--color-active)
}
.ui.segment .ui.tabular.menu .active.item:hover {
background: var(--color-box-body)
}
.small-menu-items .item:hover {
background: var(--color-hover) !important
}
.ui.message {
border: 1px solid var(--color-secondary);
position: relative;
min-height: 1em;
margin: 1em 0;
padding: 1em 1.5em;
border-radius: var(--border-radius)
}
.ui.message:first-child {
margin-top: 0
}
.ui.negative.message {
background: var(--color-error-bg);
color: var(--color-error-text);
border-color: var(--color-error-border)
}
.ui.message>.close.icon:hover {
opacity: 1
}
.ui.table.segment:after {
display: none
}
.ui.cards>.card>.extra a:not(.ui):hover,
.ui.card>.extra a:not(.ui):hover {
color: var(--color-primary)
}
.ui.cards>.card .meta>a:not(.ui):hover,
.ui.card .meta>a:not(.ui):hover {
color: var(--color-text)
}
.ui.cards a.card:hover,
a.ui.card:hover {
border: 1px solid var(--color-secondary);
background: var(--color-card)
}
.ui.checkbox {
position: relative;
display: inline-block;
vertical-align: baseline;
min-height: var(--checkbox-size);
line-height: var(--checkbox-size);
min-width: var(--checkbox-size);
padding: 1px
}
.ui.checkbox input[type=checkbox] {
position: absolute;
top: 1px;
left: 0;
width: var(--checkbox-size);
height: var(--checkbox-size)
}
.ui.checkbox input[type=checkbox]:enabled,
.ui.checkbox input[type=radio]:enabled,
.ui.checkbox label:enabled {
cursor: pointer
}
.ui.checkbox label {
cursor: auto;
position: relative;
display: block;
user-select: none
}
.ui.checkbox label {
margin-left: 20px
}
.ui.toggle.checkbox label:before {
display: block;
position: absolute;
content: "";
z-index: 1;
top: 0;
width: 49px;
height: 21px;
border-radius: 500rem;
left: 0
}
.ui.toggle.checkbox label:after {
background: var(--color-white);
box-shadow: 1px 1px 4px 1px var(--color-shadow);
position: absolute;
content: "";
opacity: 1;
z-index: 2;
width: 18px;
height: 18px;
top: 1.5px;
left: 1.5px;
border-radius: 500rem;
transition: background .3s ease, left .3s ease
}
.ui.toggle.checkbox input~label:after {
left: 1.5px
}
.ui.toggle.checkbox input:checked~label:after {
left: 29px
}
.ui.toggle.checkbox input:focus~label:before,
.ui.toggle.checkbox label:before {
background: var(--color-input-toggle-background)
}
.ui.toggle.checkbox input:checked~label,
.ui.toggle.checkbox input:focus:checked~label {
color: var(--color-text) !important
}
.ui.toggle.checkbox input:checked~label:before,
.ui.toggle.checkbox input:focus:checked~label:before {
background: var(--color-primary) !important
}
.tippy-box[data-theme=menu] .item:hover {
background: var(--color-hover)
}
.tippy-box[data-theme=menu] .item:focus {
background: var(--color-hover)
}
.tippy-box[data-placement^=top]>.tippy-svg-arrow:after {
top: 16px;
transform: rotate(180deg)
}
.tippy-box[data-placement^=left]>.tippy-svg-arrow:after {
transform: rotate(90deg);
top: calc(50% - 3px);
left: 11px
}
.tippy-box[data-placement^=right]>.tippy-svg-arrow:after {
transform: rotate(-90deg);
top: calc(50% - 3px);
right: 11px
}
.ui.comments .comment>.comments:before {
position: absolute;
top: 0;
left: 0
}
#navbar {
display: flex;
align-items: center;
justify-content: space-between;
background: var(--color-nav-bg);
border-bottom: 1px solid var(--color-secondary);
padding: 0 10px
}
#navbar .navbar-left,
#navbar .navbar-right {
display: flex;
align-items: center;
gap: 5px;
min-height: 49px
}
.navbar-left>.item,
.navbar-right>.item {
flex: 0 0 auto;
display: flex;
align-items: center;
color: var(--color-nav-text);
position: relative;
text-decoration: none;
min-height: 36px;
min-width: 36px;
padding: 3px 13px;
border-radius: 4px
}
#navbar .item.active {
background: var(--color-active)
}
#navbar a.item:hover,
#navbar button.item:hover {
background: var(--color-nav-hover-bg)
}
@media (max-width:767.98px) {
#navbar {
align-items: stretch
}
#navbar .navbar-left>.item,
#navbar .navbar-right>.item {
display: none
}
#navbar #navbar-logo {
display: flex
}
#navbar .navbar-left {
flex: 1;
display: flex;
justify-content: space-between
}
#navbar .navbar-mobile-right {
display: flex;
margin: 0 0 0 auto;
width: auto
}
}
#navbar a.item:hover .notification_count,
#navbar a.item:hover .header-stopwatch-dot {
border-color: var(--color-nav-hover-bg)
}
.toast-duplicate-number:before {
content: "("
}
.toast-duplicate-number:after {
content: ")"
}
.toast-close:hover {
background: var(--color-hover)
}
.toast-close:active {
background: var(--color-active)
}
.svg {
display: inline-block;
vertical-align: text-top;
fill: currentcolor
}
.middle .svg {
vertical-align: middle
}
.svg[height="14"] {
min-height: 14px
}
.svg[height="16"] {
min-height: 16px
}
.svg[width="14"] {
min-width: 14px
}
.svg[width="16"] {
min-width: 16px
}
.flex-item a:not(.label, .button):hover {
color: var(--color-primary) !important
}
.milestone-toolbar .group>a:hover {
color: var(--color-text)
}
details.toggleable-item summary::marker,
details.toggleable-item summary::-webkit-details-marker {
display: none
}
details.toggleable-item summary:after {
transition: transform .25s ease;
content: "";
width: 14px;
height: 14px;
mask-size: cover;
-webkit-mask-size: cover;
mask-image: var(--octicon-chevron-right);
-webkit-mask-image: var(--octicon-chevron-right);
background: currentcolor;
border: 1px solid var(--color-body)
}
details.toggleable-item[open] summary:after {
transform: rotate(90deg)
}
.dropzone:hover .dz-button {
color: var(--color-text) !important
}
.dropzone .dz-preview:hover .dz-image img {
filter: opacity(.5) !important
}
#git-graph-container li a:not(.ui):hover {
text-decoration: underline
}
#user-heatmap .vch__day__square:hover {
outline: 1.5px solid var(--color-text)
}
text-expander .suggestions li:hover,
text-expander .suggestions li:hover * {
background: var(--color-primary);
color: var(--color-primary-contrast)
}
.cropper-center:before,
.cropper-center:after {
background-color: #eee;
content: " ";
display: block;
position: absolute
}
.cropper-center:before {
height: 1px;
left: -3px;
top: 0;
width: 7px
}
.cropper-center:after {
height: 7px;
left: 0;
top: -3px;
width: 1px
}
.cropper-point.point-se:before {
background-color: #39f;
bottom: -50%;
content: " ";
display: block;
height: 200%;
opacity: 0;
position: absolute;
right: -50%;
width: 200%
}
.console a:hover {
color: var(--color-primary)
}
@keyframes blink-animation {
to {
visibility: hidden
}
}
.markup .anchor:focus {
outline: none
}
.markup h1:hover .anchor .svg,
.markup h2:hover .anchor .svg,
.markup h3:hover .anchor .svg,
.markup h4:hover .anchor .svg,
.markup h5:hover .anchor .svg,
.markup h6:hover .anchor .svg {
visibility: visible
}
.markup input[type=checkbox]:not([disabled]):hover,
.markup input[type=checkbox]:not([disabled]):active {
border-color: var(--color-primary)
}
.markup input[type=checkbox]:after {
position: absolute;
inset: 0;
pointer-events: none;
background: var(--color-text);
mask-size: cover;
-webkit-mask-size: cover
}
.markup input[type=checkbox]:checked:after {
content: "";
mask-image: var(--checkbox-mask-checked);
-webkit-mask-image: var(--checkbox-mask-checked);
-webkit-print-color-adjust: exact;
color-adjust: exact
}
.markup input[type=checkbox]:indeterminate:after {
content: "";
mask-image: var(--checkbox-mask-indeterminate);
-webkit-mask-image: var(--checkbox-mask-indeterminate)
}
.markup pre code:before,
.markup pre code:after,
.markup pre tt:before,
.markup pre tt:after {
content: normal
}
.file-view.markup.orgmode li.unchecked:before {
content: "[ ] "
}
.file-view.markup.orgmode li.checked:before {
content: "[x] "
}
.file-view.markup.orgmode li.indeterminate:before {
content: "[-] "
}
.markup .code-copy:hover {
background: var(--color-secondary) !important
}
.markup .code-copy:active {
background: var(--color-secondary-dark-1) !important
}
.markup .code-block-container:hover .code-copy,
.markup .code-block:hover .code-copy {
visibility: visible;
animation: fadein .2s both
}
.CodeMirror :focus {
outline: none
}
:root :lang(ja) {
--fonts-override: var(--fonts-default-override-ja)
}
:root :lang(zh-CN) {
--fonts-override: var(--fonts-default-override-zh-cn)
}
:root :lang(zh-TW) {
--fonts-override: var(--fonts-default-override-zh-tw)
}
:root :lang(zh-HK) {
--fonts-override: var(--fonts-default-override-zh-hk)
}
:root :lang(ko) {
--fonts-override: var(--fonts-default-override-ko)
}
[lang] {
font-family: var(--fonts-regular)
}
:root {
--fonts-default-override-ja: system-ui-ja, var(--fonts-proportional);
--fonts-default-override-zh-cn: system-ui-zh-cn, var(--fonts-proportional);
--fonts-default-override-zh-tw: system-ui-zh-tw, var(--fonts-proportional);
--fonts-default-override-zh-hk: system-ui-zh-hk, var(--fonts-proportional);
--fonts-default-override-ko: system-ui-ko, var(--fonts-proportional)
}
@supports (-moz-appearance:none) {
:root {
--fonts-default-override-ja: var(--fonts-proportional), system-ui-ja;
--fonts-default-override-zh-cn: var(--fonts-proportional), system-ui-zh-cn;
--fonts-default-override-zh-tw: var(--fonts-proportional), system-ui-zh-tw;
--fonts-default-override-zh-hk: var(--fonts-proportional), system-ui-zh-hk;
--fonts-default-override-ko: var(--fonts-proportional), system-ui-ko
}
}
@supports not (-webkit-hyphens:none) {}
@supports not (-webkit-hyphens:none) {}
@supports not (-webkit-hyphens:none) {}
@supports not (-webkit-hyphens:none) {}
@supports not (-webkit-hyphens:none) {}
:root {
--fonts-proportional: -apple-system, "Segoe UI", system-ui, Roboto, "Helvetica Neue", Arial;
--fonts-monospace: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace, var(--fonts-emoji);
--fonts-emoji: -emoji-fallback;
--font-weight-light: 300;
--font-weight-normal: 400;
--font-weight-medium: 500;
--font-weight-semibold: 600;
--font-weight-bold: 700;
--line-height-default: normal;
--checkbox-mask-checked: url(data:image/svg+xml;utf8,<svg\ xmlns=\"http://www.w3.org/2000/svg\"\ viewBox=\"-1\ -1\ 18\ 18\"\ width=\"16\"\ height=\"16\"><path\ fill-rule=\"evenodd\"\ d=\"M13.78\ 4.22a.75.75\ 0\ 010\ 1.06l-7.25\ 7.25a.75.75\ 0\ 01-1.06\ 0L2.22\ 9.28a.75.75\ 0\ 011.06-1.06L6\ 10.94l6.72-6.72a.75.75\ 0\ 011.06\ 0z\"><\/path><\/svg>);
--checkbox-mask-indeterminate: url(data:image/svg+xml;utf8,<svg\ xmlns=\"http://www.w3.org/2000/svg\"\ viewBox=\"0\ 0\ 16\ 16\"\ width=\"16\"\ height=\"16\"><path\ fill-rule=\"evenodd\"\ d=\"M2\ 7.75A.75.75\ 0\ 012.75\ 7h10a.75.75\ 0\ 010\ 1.5h-10A.75.75\ 0\ 012\ 7.75z\"><\/path><\/svg>);
--octicon-chevron-right: url(data:image/svg+xml;utf8,<svg\ xmlns=\"http://www.w3.org/2000/svg\"\ viewBox=\"0\ 0\ 16\ 16\"\ width=\"16\"\ height=\"16\"><path\ d=\"M6.22\ 3.22a.75.75\ 0\ 0\ 1\ 1.06\ 0l4.25\ 4.25a.75.75\ 0\ 0\ 1\ 0\ 1.06l-4.25\ 4.25a.751.751\ 0\ 0\ 1-1.042-.018.751.751\ 0\ 0\ 1-.018-1.042L9.94\ 8\ 6.22\ 4.28a.75.75\ 0\ 0\ 1\ 0-1.06Z\"><\/path><\/svg>);
--border-radius: 4px;
--border-radius-medium: 6px;
--border-radius-full: 99999px;
--opacity-disabled: .55;
--height-loading: 16rem;
--min-height-textarea: 132px;
--tab-size: 4;
--checkbox-size: 15px;
--page-spacing: 16px;
--page-margin-x: 32px;
--page-space-bottom: 64px
}
@media (min-width:768px) and (max-width:1200px) {
:root {
--page-margin-x: 16px
}
}
@media (max-width:767.98px) {
:root {
--page-margin-x: 8px
}
}
:root * {
--fonts-regular: var(--fonts-override, var(--fonts-proportional)), "Noto Sans", "Liberation Sans", sans-serif, var(--fonts-emoji)
}
*,
:before,
:after {
border-width: 0;
border-style: solid;
border-color: currentcolor
}
html,
body {
height: 100%;
font-size: 14px
}
body {
line-height: 20px;
font-family: var(--fonts-regular);
color: var(--color-text);
background-color: var(--color-body);
tab-size: var(--tab-size);
display: flex;
flex-direction: column;
overflow-x: visible;
overflow-wrap: break-word
}
strong,
h4 {
font-weight: var(--font-weight-semibold)
}
progress::-webkit-progress-bar {
background: var(--color-secondary-dark-1)
}
progress::-webkit-progress-value {
background-color: var(--color-accent)
}
progress::-moz-progress-bar {
background-color: var(--color-accent)
}
* {
caret-color: var(--color-caret)
}
::file-selector-button {
border: 1px solid var(--color-light-border);
color: var(--color-text-light);
background: var(--color-light);
border-radius: var(--border-radius)
}
::file-selector-button:hover {
color: var(--color-text);
background: var(--color-hover)
}
::selection {
background: var(--color-primary-light-1);
color: var(--color-white)
}
::placeholder {
color: var(--color-placeholder-text) !important;
opacity: 1 !important
}
.button {
-webkit-touch-callout: none;
-webkit-user-select: none
}
a {
color: var(--color-primary);
cursor: pointer;
text-decoration-line: none;
text-decoration-skip-ink: all
}
a:hover {
text-decoration-line: underline
}
a:hover,
a.suppressed:hover,
a.muted:hover,
a.muted:hover [class*=color-text],
.muted-links a:hover {
color: var(--color-primary)
}
a.silenced:hover,
a.suppressed:hover {
color: inherit
}
a.silenced:hover {
text-decoration-line: none
}
.ui.search>.results .result:hover,
.ui.category.search>.results .category .result:hover {
background: var(--color-hover)
}
.ui.menu .dropdown.item:hover,
.ui.menu a.item:hover,
.ui.menu details.item summary:hover {
color: var(--color-text);
background: var(--color-hover)
}
.ui.dropdown .menu {
background: var(--color-menu);
border-color: var(--color-secondary)
}
.ui.dropdown .menu>.item:hover {
color: var(--color-text);
background: var(--color-hover)
}
.ui.dropdown .menu>.item:active {
color: var(--color-text);
background: var(--color-active)
}
.ui.selection.active.dropdown:hover,
.ui.selection.active.dropdown:hover .menu {
border-color: var(--color-primary)
}
.ui.pointing.dropdown>.menu:not(.hidden):after {
background: var(--color-menu);
box-shadow: -1px -1px 0 0 var(--color-secondary)
}
.ui.pointing.upward.dropdown .menu:after,
.ui.top.pointing.upward.dropdown .menu:after {
box-shadow: 1px 1px 0 0 var(--color-secondary)
}
.ui.comments .comment a.author:hover {
color: var(--color-primary)
}
.ui.comments .comment .actions a:hover {
color: var(--color-primary)
}
.full.height {
flex-grow: 1;
padding-bottom: var(--page-space-bottom)
}
.page-content>:first-child.ui.grid {
margin-top: calc(var(--page-spacing) - 1rem)
}
.ui.dropdown .menu,
.ui.upward.dropdown>.menu,
.ui.selection.active.dropdown:hover .menu,
.ui.upward.active.selection.dropdown:hover .menu {
box-shadow: 0 6px 18px var(--color-shadow)
}
.ui .migrate a:hover {
color: var(--color-text) !important
}
.center {
text-align: center
}
overflow-menu .overflow-menu-button:hover {
color: var(--color-text-dark)
}
.lines-num span.bottom-line:after {
border-bottom: 1px solid var(--color-secondary)
}
.lines-num span:after {
content: attr(data-line-number);
line-height: 20px !important;
padding: 0 10px;
display: block
}
.code-view .lines-num span:after {
cursor: pointer
}
.file-view tr.active .lines-num:before {
content: "";
position: absolute;
left: 0;
width: 2px;
height: 100%;
background: var(--color-highlight-fg)
}
table th[data-sortt-asc]:hover,
table th[data-sortt-desc]:hover {
background: var(--color-hover) !important;
cursor: pointer !important
}
.ui.tabular.menu .item:hover,
.ui.secondary.pointing.menu a.item:hover {
color: var(--color-text)
}
.resize-for-semibold:before {
font-weight: var(--font-weight-semibold)
}
.resize-for-semibold:before {
content: attr(data-text);
visibility: hidden;
display: block;
height: 0
}
.ui.dropdown:not(.button) {
line-height: var(--line-height-default)
}
.ui.ui.dropdown>.icon.icon:hover {
opacity: 1
}
.ui.ui.button,
.ui.ui.dropdown,
.flex-text-inline {
display: inline-flex;
align-items: center;
gap: .25rem;
vertical-align: middle;
min-width: 0
}
.page-footer {
display: flex;
justify-content: space-between;
background-color: var(--color-footer);
border-top: 1px solid var(--color-secondary);
padding: 8px 20px
}
.page-footer .left-links {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: center;
gap: .25em
}
.page-footer .right-links {
min-width: 180px;
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: center
}
.page-footer .right-links>a {
border-left: 1px solid var(--color-secondary-dark-1);
padding-left: 8px;
margin-left: 5px
}
.page-footer .ui.dropdown .menu.language-menu {
max-height: min(500px, calc(100vh - 60px));
overflow-y: auto;
margin-bottom: 10px
}
@media (max-width:880px) {
.page-footer {
flex-direction: column;
gap: .5em
}
}
.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: var(--color-error-bg);
border-color: var(--color-error-border);
color: var(--color-error-text)
}
.ui.form .fields.error .field .ui.dropdown:hover,
.ui.form .field.error .ui.dropdown:hover {
border-color: var(--color-error-border) !important
}
.ui.form .fields.error .field .ui.dropdown .menu .item:hover,
.ui.form .field.error .ui.dropdown .menu .item:hover {
background-color: var(--color-error-bg-hover)
}
input:-webkit-autofill,
input:-webkit-autofill:focus,
input:-webkit-autofill:hover,
input:-webkit-autofill:active,
.ui.form .field.field input:-webkit-autofill,
.ui.form .field.field input:-webkit-autofill:focus,
.ui.form .field.field input:-webkit-autofill:hover,
.ui.form .field.field input:-webkit-autofill:active {
-webkit-background-clip: text;
-webkit-text-fill-color: var(--color-text);
box-shadow: 0 0 0 100px var(--color-primary-light-6) inset !important;
border-color: var(--color-primary-light-4) !important
}
.ui.form input[type=password],
.ui.form input[type=text] {
transition: none
}
input,
.ui.form input[type=password],
.ui.form input[type=text] {
background: var(--color-input-background);
border-color: var(--color-input-border);
color: var(--color-input-text)
}
input:hover,
textarea:hover,
.ui.input input:hover,
.ui.form input:not([type]):hover,
.ui.form select:hover,
.ui.form textarea:hover,
.ui.form input[type=date]:hover,
.ui.form input[type=datetime-local]:hover,
.ui.form input[type=email]:hover,
.ui.form input[type=file]:hover,
.ui.form input[type=number]:hover,
.ui.form input[type=password]:hover,
.ui.form input[type=search]:hover,
.ui.form input[type=tel]:hover,
.ui.form input[type=text]:hover,
.ui.form input[type=time]:hover,
.ui.form input[type=url]:hover,
.ui.selection.dropdown:hover {
background: var(--color-input-background);
border-color: var(--color-input-border-hover);
color: var(--color-input-text)
}
input:focus,
textarea:focus,
.ui.input input:focus,
.ui.form input:not([type]):focus,
.ui.form select:focus,
.ui.form textarea:focus,
.ui.form input[type=date]:focus,
.ui.form input[type=datetime-local]:focus,
.ui.form input[type=email]:focus,
.ui.form input[type=file]:focus,
.ui.form input[type=number]:focus,
.ui.form input[type=password]:focus,
.ui.form input[type=search]:focus,
.ui.form input[type=tel]:focus,
.ui.form input[type=text]:focus,
.ui.form input[type=time]:focus,
.ui.form input[type=url]:focus,
.ui.selection.dropdown:focus {
background: var(--color-input-background);
border-color: var(--color-primary);
color: var(--color-input-text)
}
.ui.form .field>label {
color: var(--color-text)
}
.ui.form .required.fields:not(.grouped)>.field>label:after,
.ui.form .required.fields.grouped>label:after,
.ui.form .required.field>label:after,
.ui.form label.required:after {
color: var(--color-red)
}
.repository .unicode-escaped .escaped-code-point[data-escaped]:before {
visibility: visible;
content: attr(data-escaped);
font-family: var(--fonts-monospace);
color: var(--color-red)
}
.repository.file.list .non-diff-file-content .header .file-actions .btn-octicon:hover {
color: var(--color-primary)
}
.repository.file.list .non-diff-file-content .header .file-actions .btn-octicon-danger:hover {
color: var(--color-red)
}
.repository.file.editor .commit-form-wrapper .commit-form:before,
.repository.file.editor .commit-form-wrapper .commit-form:after {
right: 100%;
top: 20px;
border: solid transparent;
content: " ";
height: 0;
width: 0;
position: absolute;
pointer-events: none
}
.repository.file.editor .commit-form-wrapper .commit-form:before {
border-right-color: var(--color-secondary);
border-width: 9px;
margin-top: -9px
}
.repository.file.editor .commit-form-wrapper .commit-form:after {
border-right-color: var(--color-box-body);
border-width: 8px;
margin-top: -8px
}
.repository.new.issue .comment.form .content:before,
.repository.new.issue .comment.form .content:after {
right: 100%;
top: 20px;
border: solid transparent;
content: " ";
height: 0;
width: 0;
position: absolute;
pointer-events: none
}
.repository.new.issue .comment.form .content:before {
border-right-color: var(--color-secondary);
border-width: 9px;
margin-top: -9px
}
.repository.new.issue .comment.form .content:after {
border-right-color: var(--color-box-body);
border-width: 8px;
margin-top: -8px
}
@media (max-width:767.98px) {
.comment.form .issue-content-left .content:before,
.comment.form .issue-content-left .content:after,
.comment.form .content .form:before,
.comment.form .content .form:after {
display: none
}
}
.repository.view.issue .comment-list:not(.prevent-before-timeline):before {
display: block;
content: "";
position: absolute;
margin-top: 12px;
margin-bottom: 14px;
top: 0;
bottom: 0;
left: 96px;
width: 2px;
background-color: var(--color-timeline);
z-index: -1
}
.repository.view.issue .comment-list .timeline:before {
display: block;
content: "";
position: absolute;
margin-top: 12px;
margin-bottom: 14px;
top: 0;
bottom: 0;
left: 30px;
width: 2px;
background-color: var(--color-timeline);
z-index: -1
}
.repository.view.issue .comment-list .comment .merge-section.no-header:before,
.repository.view.issue .comment-list .comment .merge-section.no-header:after {
right: 100%;
top: 20px;
border: solid transparent;
content: " ";
height: 0;
width: 0;
position: absolute;
pointer-events: none
}
.repository.view.issue .comment-list .comment .merge-section.no-header:before {
border-right-color: var(--color-secondary);
border-width: 9px;
margin-top: -9px
}
.repository.view.issue .comment-list .comment .merge-section.no-header:after {
border-right-color: var(--color-box-body);
border-width: 8px;
margin-top: -8px
}
.repository.view.issue .comment-list .code-comment .comment-header:after,
.repository.view.issue .comment-list .code-comment .comment-header:before {
display: none
}
.repository .comment.form .content .segment:before,
.repository .comment.form .content .segment:after {
right: 100%;
top: 20px;
border: solid transparent;
content: " ";
height: 0;
width: 0;
position: absolute;
pointer-events: none
}
.repository .comment.form .content .segment:before {
border-right-color: var(--color-secondary);
border-width: 9px;
margin-top: -9px
}
.repository .comment.form .content .segment:after {
border-right-color: var(--color-box-body);
border-width: 8px;
margin-top: -8px
}
.repository.compare.pull .comment.form .content:before,
.repository.compare.pull .comment.form .content:after {
right: 100%;
top: 20px;
border: solid transparent;
content: " ";
height: 0;
width: 0;
position: absolute;
pointer-events: none
}
.repository.compare.pull .comment.form .content:before {
border-right-color: var(--color-secondary);
border-width: 9px;
margin-top: -9px
}
.repository.compare.pull .comment.form .content:after {
border-right-color: var(--color-box-body);
border-width: 8px;
margin-top: -8px
}
.repository .diff-file-box .code-diff tbody tr [data-line-num]:before {
content: attr(data-line-num);
text-align: right
}
.repository .diff-file-box .code-diff tbody tr [data-type-marker]:before {
content: attr(data-type-marker);
text-align: right;
display: inline-block
}
.comment:target .comment-container {
border-color: var(--color-primary) !important;
box-shadow: 0 0 0 3px var(--color-primary-alpha-30) !important
}
.comment:target .header:before {
border-right-color: var(--color-primary) !important;
filter: drop-shadow(-3px 0 0 var(--color-primary-alpha-30)) !important
}
.code-comment:target,
.diff-file-box:target {
border-color: var(--color-primary) !important;
border-radius: var(--border-radius) !important;
box-shadow: 0 0 0 3px var(--color-primary-alpha-30) !important
}
.code-comment:target .content {
box-shadow: none !important
}
.comment-header:before,
.comment-header:after {
right: 100%;
top: 20px;
border: solid transparent;
content: " ";
height: 0;
width: 0;
position: absolute;
pointer-events: none
}
.comment-header:before {
border-right-color: var(--color-secondary);
border-width: 9px;
margin-top: -9px
}
.comment-header:after {
border-right-color: var(--color-box-header);
border-width: 8px;
margin-top: -8px
}
.comment-header.arrow-top:before,
.comment-header.arrow-top:after {
transform: rotate(90deg)
}
.comment-header.arrow-top:before {
top: -9px;
left: 6px
}
.comment-header.arrow-top:after {
top: -8px;
left: 7px
}
.issue-keyword:hover {
border-bottom: none !important
}
.migrate-entry:hover {
transform: scale(105%);
box-shadow: 0 .5rem 1rem var(--color-shadow) !important
}
@media (max-width:767.98px) {
.repository.view.issue .comment-list .timeline:before {
left: 14px
}
.repository.view.issue .comment-list .timeline .comment-header:before,
.repository.view.issue .comment-list .timeline .comment-header:after {
content: unset
}
}
.branch-selector-dropdown .menu .item:hover .rss-icon {
visibility: visible
}
#issue-list .flex-item-body .checklist progress::-webkit-progress-value {
background-color: var(--color-secondary-dark-4)
}
#issue-list .flex-item-body .checklist progress::-moz-progress-bar {
background-color: var(--color-secondary-dark-4)
}
.code-view .lines-num:hover {
color: var(--color-text-dark) !important
}
.ui.button.code-line-button:hover {
background: var(--color-secondary)
}
.repository.wiki .wiki-pages-list tr:hover {
background-color: var(--color-hover)
}
.repository.wiki .wiki-pages-list tr:hover .wiki-git-entry {
display: inline-block
}
#repo-files-table .repo-file-item:hover>.repo-file-cell,
#repo-files-table .parent-link:hover {
background: var(--color-hover-opaque)
}
.bottom-reactions .ui.label:hover {
background-color: var(--color-reaction-hover-bg) !important
}
.bottom-reactions:hover .select-reaction {
visibility: visible
}
.ui.label.commit-id-short>.commit-sign-badge:hover {
background: transparent !important
}
.commit-is-signed.sign-trusted:hover {
background: var(--color-green-badge-hover-bg) !important
}
.commit-is-signed.sign-untrusted:hover {
background: var(--color-yellow-badge-hover-bg) !important
}
.commit-is-signed.sign-unmatched:hover {
background: var(--color-orange-badge-hover-bg) !important
}
.commit-is-signed.sign-warning:hover {
background: var(--color-red-badge-hover-bg) !important
}
.editor-toolbar button:not(:hover) {
background-color: transparent !important
}
.editor-toolbar button:hover {
background: var(--color-hover)
}
.combo-markdown-editor .markdown-toolbar-button:hover {
color: var(--color-primary)
}
.combo-markdown-editor md-header:after {
font-size: 10px;
position: absolute;
top: 7px
}
.combo-markdown-editor md-header[level="1"]:after {
content: "1"
}
.combo-markdown-editor md-header[level="2"]:after {
content: "2"
}
.combo-markdown-editor md-header[level="3"]:after {
content: "3"
}
.notifications-item:hover {
background: var(--color-hover)
}
.notifications-item:hover .notifications-buttons {
display: flex
}
.notifications-item:hover .notifications-updated {
display: none
}
.ui.button.add-code-comment:hover {
transform: scale(1.1)
}
.lines-escape .toggle-escape-button:before {
visibility: visible;
content: "⚠️";
font-family: var(--fonts-emoji);
color: var(--color-red)
}
.diff-file-box .lines-code:hover .ui.button.add-code-comment {
opacity: 1
}
.ui.button.add-code-comment:focus {
opacity: 1
}
.code-expander-button:hover {
background: var(--color-primary);
color: var(--color-primary-contrast)
}
#review-box:hover .review-comments-counter {
background-color: var(--color-primary-light-5)
}
.runner-container #runner-new:hover .runner-new-text {
color: var(--color-white) !important
}
.interact-fg:hover {
color: var(--color-primary) !important
}
.interact-fg:active {
color: var(--color-primary-active) !important
}
.interact-bg:hover {
background: var(--color-hover) !important
}
.interact-bg:active {
background: var(--color-active) !important
}
@media (min-width:767.98px) {
.only-mobile.only-mobile {
display: none !important
}
}
.tw-m-auto {
margin: auto !important
}
.tw-mb-1 {
margin-bottom: .25rem !important
}
.tw-ml-1 {
margin-left: .25rem !important
}
.tw-mr-2 {
margin-right: .5rem !important
}
.tw-flex {
display: flex !important
}
.tw-w-full {
width: 100% !important
}
.tw-max-w-2xl {
max-width: 42rem !important
}
.tw-flex-1 {
flex: 1 1 0% !important
}
.tw-flex-col {
flex-direction: column !important
}
.tw-flex-wrap {
flex-wrap: wrap !important
}
.tw-items-center {
align-items: center !important
}
.tw-justify-center {
justify-content: center !important
}
.tw-gap-2 {
gap: .5rem !important
}
.tw-gap-4 {
gap: 1rem !important
}
.tw-py-1 {
padding-top: .25rem !important;
padding-bottom: .25rem !important
}
.tw-py-2 {
padding-top: .5rem !important;
padding-bottom: .5rem !important
}
.tw-hidden.tw-hidden {
display: none !important
}
</style>
<style>
@media (prefers-color-scheme:light) {
:root {
--is-dark-theme: false;
--color-primary: #4183c4;
--color-primary-contrast: #ffffff;
--color-primary-dark-1: #3876b3;
--color-primary-dark-2: #31699f;
--color-primary-dark-3: #2b5c8b;
--color-primary-dark-4: #254f77;
--color-primary-dark-5: #193450;
--color-primary-dark-6: #0c1a28;
--color-primary-dark-7: #04080c;
--color-primary-light-1: #548fca;
--color-primary-light-2: #679cd0;
--color-primary-light-3: #7aa8d6;
--color-primary-light-4: #8db5dc;
--color-primary-light-5: #b3cde7;
--color-primary-light-6: #d9e6f3;
--color-primary-light-7: #f4f8fb;
--color-primary-alpha-10: #4183c419;
--color-primary-alpha-20: #4183c433;
--color-primary-alpha-30: #4183c44b;
--color-primary-alpha-40: #4183c466;
--color-primary-alpha-50: #4183c480;
--color-primary-alpha-60: #4183c499;
--color-primary-alpha-70: #4183c4b3;
--color-primary-alpha-80: #4183c4cc;
--color-primary-alpha-90: #4183c4e1;
--color-primary-hover: var(--color-primary-dark-1);
--color-primary-active: var(--color-primary-dark-2);
--color-secondary: #d0d7de;
--color-secondary-dark-1: #c7ced5;
--color-secondary-dark-2: #b9c0c7;
--color-secondary-dark-3: #99a0a7;
--color-secondary-dark-4: #899097;
--color-secondary-dark-5: #7a8188;
--color-secondary-dark-6: #6a7178;
--color-secondary-dark-7: #5b6269;
--color-secondary-dark-8: #4b5259;
--color-secondary-dark-9: #3c434a;
--color-secondary-dark-10: #2c333a;
--color-secondary-dark-11: #1d242b;
--color-secondary-dark-12: #0d141b;
--color-secondary-dark-13: #00040b;
--color-secondary-light-1: #dee5ec;
--color-secondary-light-2: #e4ebf2;
--color-secondary-light-3: #ebf2f9;
--color-secondary-light-4: #f1f8ff;
--color-secondary-alpha-10: #d0d7de19;
--color-secondary-alpha-20: #d0d7de33;
--color-secondary-alpha-30: #d0d7de4b;
--color-secondary-alpha-40: #d0d7de66;
--color-secondary-alpha-50: #d0d7de80;
--color-secondary-alpha-60: #d0d7de99;
--color-secondary-alpha-70: #d0d7deb3;
--color-secondary-alpha-80: #d0d7decc;
--color-secondary-alpha-90: #d0d7dee1;
--color-secondary-button: var(--color-secondary-dark-4);
--color-secondary-hover: var(--color-secondary-dark-5);
--color-secondary-active: var(--color-secondary-dark-6);
--color-console-fg: #f7f8f9;
--color-console-fg-subtle: #bdc4cc;
--color-console-bg: #171b1e;
--color-console-border: #2e353b;
--color-console-hover-bg: #272d33;
--color-console-active-bg: #2e353b;
--color-console-menu-bg: #262b31;
--color-console-menu-border: #414b55;
--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-black: #1d2328;
--color-red-light: #e45e5e;
--color-orange-light: #f59555;
--color-yellow-light: #fcce46;
--color-olive-light: #d3e942;
--color-green-light: #46de6a;
--color-teal-light: #08fff4;
--color-blue-light: #51a5e3;
--color-violet-light: #8b67d7;
--color-purple-light: #bb64d8;
--color-pink-light: #e86bb1;
--color-brown-light: #c58b66;
--color-black-light: #4b5b68;
--color-red-dark-1: #c82121;
--color-orange-dark-1: #e6630d;
--color-yellow-dark-1: #e5ac04;
--color-olive-dark-1: #a3b816;
--color-green-dark-1: #1ea73e;
--color-teal-dark-1: #00a39c;
--color-blue-dark-1: #1e78bb;
--color-violet-dark-1: #5a30b5;
--color-purple-dark-1: #932eb4;
--color-pink-dark-1: #db228a;
--color-brown-dark-1: #955d39;
--color-black-dark-1: #2c3339;
--color-red-dark-2: #b11e1e;
--color-orange-dark-2: #cc580c;
--color-yellow-dark-2: #cc9903;
--color-olive-dark-2: #91a313;
--color-green-dark-2: #1a9537;
--color-teal-dark-2: #00918a;
--color-blue-dark-2: #1a6aa6;
--color-violet-dark-2: #502aa1;
--color-purple-dark-2: #8229a0;
--color-pink-dark-2: #c21e7b;
--color-brown-dark-2: #845232;
--color-black-dark-2: #131619;
--color-ansi-black: #1e2327;
--color-ansi-red: #cc4848;
--color-ansi-green: #87ab63;
--color-ansi-yellow: #cc9903;
--color-ansi-blue: #3a8ac6;
--color-ansi-magenta: #d22e8b;
--color-ansi-cyan: #00918a;
--color-ansi-white: var(--color-console-fg-subtle);
--color-ansi-bright-black: #46494d;
--color-ansi-bright-red: #d15a5a;
--color-ansi-bright-green: #93b373;
--color-ansi-bright-yellow: #eaaf03;
--color-ansi-bright-blue: #4e96cc;
--color-ansi-bright-magenta: #d74397;
--color-ansi-bright-cyan: #00b6ad;
--color-ansi-bright-white: var(--color-console-fg);
--color-grey: #697077;
--color-grey-light: #7c838a;
--color-gold: #a1882b;
--color-white: #ffffff;
--color-diff-added-linenum-bg: #d1f8d9;
--color-diff-added-row-bg: #e6ffed;
--color-diff-added-row-border: #e6ffed;
--color-diff-added-word-bg: #acf2bd;
--color-diff-moved-row-bg: #f1f8d1;
--color-diff-moved-row-border: #d0e27f;
--color-diff-removed-linenum-bg: #ffcecb;
--color-diff-removed-row-bg: #ffeef0;
--color-diff-removed-row-border: #f1c0c0;
--color-diff-removed-word-bg: #fdb8c0;
--color-diff-inactive: #f0f2f4;
--color-error-border: #e0b4b4;
--color-error-bg: #fff6f6;
--color-error-bg-active: #fbb;
--color-error-bg-hover: #fdd;
--color-error-text: #9f3a38;
--color-success-border: #a3c293;
--color-success-bg: #fcfff5;
--color-success-text: #2c662d;
--color-warning-border: #c9ba9b;
--color-warning-bg: #fffaf3;
--color-warning-text: #573a08;
--color-info-border: #a9d5de;
--color-info-bg: #f8ffff;
--color-info-text: #276f86;
--color-red-badge: #db2828;
--color-red-badge-bg: #db28281a;
--color-red-badge-hover-bg: #db28284d;
--color-green-badge: #21ba45;
--color-green-badge-bg: #21ba451a;
--color-green-badge-hover-bg: #21ba454d;
--color-yellow-badge: #fbbd08;
--color-yellow-badge-bg: #fbbd081a;
--color-yellow-badge-hover-bg: #fbbd084d;
--color-orange-badge: #f2711c;
--color-orange-badge-bg: #f2711c1a;
--color-orange-badge-hover-bg: #f2711c4d;
--color-git: #f05133;
--color-body: #ffffff;
--color-box-header: #f1f3f5;
--color-box-body: #ffffff;
--color-box-body-highlight: #ecf5fd;
--color-text-dark: #01050a;
--color-text: #181c21;
--color-text-light: #30363b;
--color-text-light-1: #40474d;
--color-text-light-2: #5b6167;
--color-text-light-3: #747c84;
--color-footer: var(--color-nav-bg);
--color-timeline: #d0d7de;
--color-input-text: var(--color-text-dark);
--color-input-background: #fff;
--color-input-toggle-background: #d0d7de;
--color-input-border: var(--color-secondary);
--color-input-border-hover: var(--color-secondary-dark-1);
--color-light: #00001706;
--color-light-mimic-enabled: rgba(0, 0, 0, calc(6/255*222/255/var(--opacity-disabled)));
--color-light-border: #0000171d;
--color-hover: #00001708;
--color-hover-opaque: #f1f3f5;
--color-active: #00001714;
--color-menu: #f8f9fb;
--color-card: #f8f9fb;
--color-markup-table-row: #0030600a;
--color-markup-code-block: #00306010;
--color-markup-code-inline: #00306012;
--color-button: #f8f9fb;
--color-code-bg: #fafdff;
--color-shadow: #00001726;
--color-shadow-opaque: #c7ced5;
--color-secondary-bg: #f2f5f8;
--color-expand-button: #cfe8fa;
--color-placeholder-text: var(--color-text-light-3);
--color-editor-line-highlight: var(--color-primary-light-6);
--color-project-column-bg: var(--color-secondary-light-4);
--color-caret: var(--color-text-dark);
--color-reaction-bg: #0000170a;
--color-reaction-hover-bg: var(--color-primary-light-5);
--color-reaction-active-bg: var(--color-primary-light-6);
--color-tooltip-text: #fbfdff;
--color-tooltip-bg: #000017f0;
--color-nav-bg: #f6f7fa;
--color-nav-hover-bg: var(--color-secondary-light-1);
--color-nav-text: var(--color-text);
--color-secondary-nav-bg: #f9fafb;
--color-label-text: var(--color-text);
--color-label-bg: #949da64b;
--color-label-hover-bg: #949da6a0;
--color-label-active-bg: #949da6ff;
--color-accent: var(--color-primary-light-1);
--color-small-accent: var(--color-primary-light-6);
--color-highlight-fg: #eed200;
--color-highlight-bg: #fffbdd;
--color-overlay-backdrop: #080808c0;
accent-color: var(--color-accent);
color-scheme: light
}
}
@media (prefers-color-scheme:dark) {
:root {
--is-dark-theme: true;
--color-primary: #4183c4;
--color-primary-contrast: #ffffff;
--color-primary-dark-1: #548fca;
--color-primary-dark-2: #679cd0;
--color-primary-dark-3: #7aa8d6;
--color-primary-dark-4: #8db5dc;
--color-primary-dark-5: #b3cde7;
--color-primary-dark-6: #d9e6f3;
--color-primary-dark-7: #f4f8fb;
--color-primary-light-1: #3876b3;
--color-primary-light-2: #31699f;
--color-primary-light-3: #2b5c8b;
--color-primary-light-4: #254f77;
--color-primary-light-5: #193450;
--color-primary-light-6: #0c1a28;
--color-primary-light-7: #04080c;
--color-primary-alpha-10: #4183c419;
--color-primary-alpha-20: #4183c433;
--color-primary-alpha-30: #4183c44b;
--color-primary-alpha-40: #4183c466;
--color-primary-alpha-50: #4183c480;
--color-primary-alpha-60: #4183c499;
--color-primary-alpha-70: #4183c4b3;
--color-primary-alpha-80: #4183c4cc;
--color-primary-alpha-90: #4183c4e1;
--color-primary-hover: var(--color-primary-light-1);
--color-primary-active: var(--color-primary-light-2);
--color-secondary: #3b444c;
--color-secondary-dark-1: #414b54;
--color-secondary-dark-2: #49545f;
--color-secondary-dark-3: #576471;
--color-secondary-dark-4: #677685;
--color-secondary-dark-5: #758594;
--color-secondary-dark-6: #8392a0;
--color-secondary-dark-7: #929eab;
--color-secondary-dark-8: #a2acb7;
--color-secondary-dark-9: #a9b3bd;
--color-secondary-dark-10: #b7bfc7;
--color-secondary-dark-11: #c5cbd2;
--color-secondary-dark-12: #cfd4da;
--color-secondary-dark-13: #d2d7dc;
--color-secondary-light-1: #313940;
--color-secondary-light-2: #292f35;
--color-secondary-light-3: #1d2226;
--color-secondary-light-4: #171b1e;
--color-secondary-alpha-10: #3b444c19;
--color-secondary-alpha-20: #3b444c33;
--color-secondary-alpha-30: #3b444c4b;
--color-secondary-alpha-40: #3b444c66;
--color-secondary-alpha-50: #3b444c80;
--color-secondary-alpha-60: #3b444c99;
--color-secondary-alpha-70: #3b444cb3;
--color-secondary-alpha-80: #3b444ccc;
--color-secondary-alpha-90: #3b444ce1;
--color-secondary-button: var(--color-secondary-dark-4);
--color-secondary-hover: var(--color-secondary-dark-3);
--color-secondary-active: var(--color-secondary-dark-2);
--color-console-fg: #f7f8f9;
--color-console-fg-subtle: #bdc4cc;
--color-console-bg: #171b1e;
--color-console-border: #2e353b;
--color-console-hover-bg: #272d33;
--color-console-active-bg: #2e353b;
--color-console-menu-bg: #262b31;
--color-console-menu-border: #414b55;
--color-red: #cc4848;
--color-orange: #cc580c;
--color-yellow: #cc9903;
--color-olive: #91a313;
--color-green: #87ab63;
--color-teal: #00918a;
--color-blue: #3a8ac6;
--color-violet: #906ae1;
--color-purple: #b259d0;
--color-pink: #d22e8b;
--color-brown: #a47252;
--color-black: #1d2328;
--color-red-light: #d15a5a;
--color-orange-light: #f6a066;
--color-yellow-light: #eaaf03;
--color-olive-light: #abc016;
--color-green-light: #93b373;
--color-teal-light: #00b6ad;
--color-blue-light: #4e96cc;
--color-violet-light: #9b79e4;
--color-purple-light: #ba6ad5;
--color-pink-light: #d74397;
--color-brown-light: #b08061;
--color-black-light: #424851;
--color-red-dark-1: #c23636;
--color-orange-dark-1: #f38236;
--color-yellow-dark-1: #b88a03;
--color-olive-dark-1: #839311;
--color-green-dark-1: #7a9e55;
--color-teal-dark-1: #00837c;
--color-blue-dark-1: #347cb3;
--color-violet-dark-1: #7b4edb;
--color-purple-dark-1: #a742c9;
--color-pink-dark-1: #be297d;
--color-brown-dark-1: #94674a;
--color-black-dark-1: #292e38;
--color-red-dark-2: #ad3030;
--color-orange-dark-2: #f16e17;
--color-yellow-dark-2: #a37a02;
--color-olive-dark-2: #74820f;
--color-green-dark-2: #6c8c4c;
--color-teal-dark-2: #00746e;
--color-blue-dark-2: #2e6e9f;
--color-violet-dark-2: #6733d6;
--color-purple-dark-2: #9834b9;
--color-pink-dark-2: #a9246f;
--color-brown-dark-2: #835b42;
--color-black-dark-2: #272930;
--color-ansi-black: #1e2327;
--color-ansi-red: #cc4848;
--color-ansi-green: #87ab63;
--color-ansi-yellow: #cc9903;
--color-ansi-blue: #3a8ac6;
--color-ansi-magenta: #d22e8b;
--color-ansi-cyan: #00918a;
--color-ansi-white: var(--color-console-fg-subtle);
--color-ansi-bright-black: #424851;
--color-ansi-bright-red: #d15a5a;
--color-ansi-bright-green: #93b373;
--color-ansi-bright-yellow: #eaaf03;
--color-ansi-bright-blue: #4e96cc;
--color-ansi-bright-magenta: #d74397;
--color-ansi-bright-cyan: #00b6ad;
--color-ansi-bright-white: var(--color-console-fg);
--color-grey: #384149;
--color-grey-light: #818f9e;
--color-gold: #b1983b;
--color-white: #ffffff;
--color-diff-added-linenum-bg: #274227;
--color-diff-added-row-bg: #203224;
--color-diff-added-row-border: #314a37;
--color-diff-added-word-bg: #3c653c;
--color-diff-moved-row-bg: #818044;
--color-diff-moved-row-border: #bcca6f;
--color-diff-removed-linenum-bg: #482121;
--color-diff-removed-row-bg: #301e1e;
--color-diff-removed-row-border: #634343;
--color-diff-removed-word-bg: #6f3333;
--color-diff-inactive: #22282d;
--color-error-border: #a04141;
--color-error-bg: #522;
--color-error-bg-active: #744;
--color-error-bg-hover: #633;
--color-error-text: #f9cbcb;
--color-success-border: #458a57;
--color-success-bg: #284034;
--color-success-text: #6cc664;
--color-warning-border: #bb9d00;
--color-warning-bg: #3a3a30;
--color-warning-text: #fbbd08;
--color-info-border: #306090;
--color-info-bg: #26354c;
--color-info-text: #38a8e8;
--color-red-badge: #db2828;
--color-red-badge-bg: #db28281a;
--color-red-badge-hover-bg: #db28284d;
--color-green-badge: #21ba45;
--color-green-badge-bg: #21ba451a;
--color-green-badge-hover-bg: #21ba454d;
--color-yellow-badge: #fbbd08;
--color-yellow-badge-bg: #fbbd081a;
--color-yellow-badge-hover-bg: #fbbd084d;
--color-orange-badge: #f2711c;
--color-orange-badge-bg: #f2711c1a;
--color-orange-badge-hover-bg: #f2711c4d;
--color-git: #f05133;
--color-body: #1b1f23;
--color-box-header: #1a1d1f;
--color-box-body: #14171a;
--color-box-body-highlight: #1e2226;
--color-text-dark: #f7f8f9;
--color-text: #d0d5da;
--color-text-light: #bcc3cb;
--color-text-light-1: #a5afb9;
--color-text-light-2: #8f9ba8;
--color-text-light-3: #788797;
--color-footer: var(--color-nav-bg);
--color-timeline: #343c44;
--color-input-text: var(--color-text-dark);
--color-input-background: #171a1e;
--color-input-toggle-background: #2e353c;
--color-input-border: var(--color-secondary);
--color-input-border-hover: var(--color-secondary-dark-1);
--color-light: #00001728;
--color-light-mimic-enabled: rgba(0, 0, 0, calc(40/255*222/255/var(--opacity-disabled)));
--color-light-border: #e8f3ff28;
--color-hover: #e8f3ff19;
--color-hover-opaque: #21252a;
--color-active: #e8f3ff24;
--color-menu: #171a1e;
--color-card: #171a1e;
--color-markup-table-row: #e8f3ff0f;
--color-markup-code-block: #e8f3ff12;
--color-markup-code-inline: #e8f3ff28;
--color-button: #171a1e;
--color-code-bg: #14171a;
--color-shadow: #00001758;
--color-shadow-opaque: #000017;
--color-secondary-bg: #2a3137;
--color-expand-button: #2f363d;
--color-placeholder-text: var(--color-text-light-3);
--color-editor-line-highlight: var(--color-primary-light-5);
--color-project-column-bg: var(--color-secondary-light-2);
--color-caret: var(--color-text);
--color-reaction-bg: #e8f3ff12;
--color-reaction-hover-bg: var(--color-primary-light-4);
--color-reaction-active-bg: var(--color-primary-light-5);
--color-tooltip-text: #f9fafb;
--color-tooltip-bg: #000b17f0;
--color-nav-bg: #16191d;
--color-nav-hover-bg: var(--color-secondary-light-1);
--color-nav-text: var(--color-text);
--color-secondary-nav-bg: #181c20;
--color-label-text: var(--color-text);
--color-label-bg: #7282924b;
--color-label-hover-bg: #728292a0;
--color-label-active-bg: #728292ff;
--color-accent: var(--color-primary-light-1);
--color-small-accent: var(--color-primary-light-5);
--color-highlight-fg: #87651e;
--color-highlight-bg: #352c1c;
--color-overlay-backdrop: #080808c0;
accent-color: var(--color-accent);
color-scheme: dark
}
}
</style>
<meta name=referrer content=no-referrer>
<link rel=icon
href="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbDpzcGFjZT0icHJlc2VydmUiIHZpZXdCb3g9IjAgMCA2NDAgNjQwIiB3aWR0aD0iMzIiIGhlaWdodD0iMzIiPjxwYXRoIGQ9Im0zOTUuOSA0ODQuMi0xMjYuOS02MWMtMTIuNS02LTE3LjktMjEuMi0xMS44LTMzLjhsNjEtMTI2LjljNi0xMi41IDIxLjItMTcuOSAzMy44LTExLjggMTcuMiA4LjMgMjcuMSAxMyAyNy4xIDEzbC0uMS0xMDkuMiAxNi43LS4xLjEgMTE3LjFzNTcuNCAyNC4yIDgzLjEgNDAuMWMzLjcgMi4zIDEwLjIgNi44IDEyLjkgMTQuNCAyLjEgNi4xIDIgMTMuMS0xIDE5LjNsLTYxIDEyNi45Yy02LjIgMTIuNy0yMS40IDE4LjEtMzMuOSAxMiIgc3R5bGU9ImZpbGw6I2ZmZiIvPjxwYXRoIGQ9Ik02MjIuNyAxNDkuOGMtNC4xLTQuMS05LjYtNC05LjYtNHMtMTE3LjIgNi42LTE3Ny45IDhjLTEzLjMuMy0yNi41LjYtMzkuNi43djExNy4yYy01LjUtMi42LTExLjEtNS4zLTE2LjYtNy45IDAtMzYuNC0uMS0xMDkuMi0uMS0xMDkuMi0yOSAuNC04OS4yLTIuMi04OS4yLTIuMnMtMTQxLjQtNy4xLTE1Ni44LTguNWMtOS44LS42LTIyLjUtMi4xLTM5IDEuNS04LjcgMS44LTMzLjUgNy40LTUzLjggMjYuOUMtNC45IDIxMi40IDYuNiAyNzYuMiA4IDI4NS44YzEuNyAxMS43IDYuOSA0NC4yIDMxLjcgNzIuNSA0NS44IDU2LjEgMTQ0LjQgNTQuOCAxNDQuNCA1NC44czEyLjEgMjguOSAzMC42IDU1LjVjMjUgMzMuMSA1MC43IDU4LjkgNzUuNyA2MiA2MyAwIDE4OC45LS4xIDE4OC45LS4xczEyIC4xIDI4LjMtMTAuM2MxNC04LjUgMjYuNS0yMy40IDI2LjUtMjMuNFM1NDcgNDgzIDU2NSA0NTEuNWM1LjUtOS43IDEwLjEtMTkuMSAxNC4xLTI4IDAgMCA1NS4yLTExNy4xIDU1LjItMjMxLjEtMS4xLTM0LjUtOS42LTQwLjYtMTEuNi00Mi42TTEyNS42IDM1My45Yy0yNS45LTguNS0zNi45LTE4LjctMzYuOS0xOC43UzY5LjYgMzIxLjggNjAgMjk1LjRjLTE2LjUtNDQuMi0xLjQtNzEuMi0xLjQtNzEuMnM4LjQtMjIuNSAzOC41LTMwYzEzLjgtMy43IDMxLTMuMSAzMS0zLjFzNy4xIDU5LjQgMTUuNyA5NC4yYzcuMiAyOS4yIDI0LjggNzcuNyAyNC44IDc3LjdzLTI2LjEtMy4xLTQzLTkuMW0zMDAuMyAxMDcuNnMtNi4xIDE0LjUtMTkuNiAxNS40Yy01LjguNC0xMC4zLTEuMi0xMC4zLTEuMnMtLjMtLjEtNS4zLTIuMWwtMTEyLjktNTVzLTEwLjktNS43LTEyLjgtMTUuNmMtMi4yLTguMSAyLjctMTguMSAyLjctMTguMUwzMjIgMjczczQuOC05LjcgMTIuMi0xM2MuNi0uMyAyLjMtMSA0LjUtMS41IDguMS0yLjEgMTggMi44IDE4IDIuOEw0NjcuNCAzMTVzMTIuNiA1LjcgMTUuMyAxNi4yYzEuOSA3LjQtLjUgMTQtMS44IDE3LjItNi4zIDE1LjQtNTUgMTEzLjEtNTUgMTEzLjEiIHN0eWxlPSJmaWxsOiM2MDk5MjYiLz48cGF0aCBkPSJNMzI2LjggMzgwLjFjLTguMi4xLTE1LjQgNS44LTE3LjMgMTMuOHMyIDE2LjMgOS4xIDIwYzcuNyA0IDE3LjUgMS44IDIyLjctNS40IDUuMS03LjEgNC4zLTE2LjktMS44LTIzLjFsMjQtNDkuMWMxLjUuMSAzLjcuMiA2LjItLjUgNC4xLS45IDcuMS0zLjYgNy4xLTMuNiA0LjIgMS44IDguNiAzLjggMTMuMiA2LjEgNC44IDIuNCA5LjMgNC45IDEzLjQgNy4zLjkuNSAxLjggMS4xIDIuOCAxLjkgMS42IDEuMyAzLjQgMy4xIDQuNyA1LjUgMS45IDUuNS0xLjkgMTQuOS0xLjkgMTQuOS0yLjMgNy42LTE4LjQgNDAuNi0xOC40IDQwLjYtOC4xLS4yLTE1LjMgNS0xNy43IDEyLjUtMi42IDguMSAxLjEgMTcuMyA4LjkgMjEuM3MxNy40IDEuNyAyMi41LTUuM2M1LTYuOCA0LjYtMTYuMy0xLjEtMjIuNiAxLjktMy43IDMuNy03LjQgNS42LTExLjMgNS0xMC40IDEzLjUtMzAuNCAxMy41LTMwLjQuOS0xLjcgNS43LTEwLjMgMi43LTIxLjMtMi41LTExLjQtMTIuNi0xNi43LTEyLjYtMTYuNy0xMi4yLTcuOS0yOS4yLTE1LjItMjkuMi0xNS4yczAtNC4xLTEuMS03LjFjLTEuMS0zLjEtMi44LTUuMS0zLjktNi4zIDQuNy05LjcgOS40LTE5LjMgMTQuMS0yOS00LjEtMi04LjEtNC0xMi4yLTYuMS00LjggOS44LTkuNyAxOS43LTE0LjUgMjkuNS02LjctLjEtMTIuOSAzLjUtMTYuMSA5LjQtMy40IDYuMy0yLjcgMTQuMSAxLjkgMTkuOHoiIHN0eWxlPSJmaWxsOiM2MDk5MjYiLz48L3N2Zz4="
type=image/svg+xml>
<style>
.sf-hidden {
display: none !important
}
</style>
<link rel=canonical href="https://about.gitea.com/user/login?redirect_to=%2f">
<meta http-equiv=content-security-policy
content="default-src 'none'; font-src 'self' data:; img-src 'self' data:; style-src 'unsafe-inline'; media-src 'self' data:; script-src 'unsafe-inline' data:; object-src 'self' data:; frame-src 'self' data:;">
</head>
<body hx-headers='{"x-csrf-token": "3QZAUehUDRGPuRwPK3IghtteiK06MTc3Nzg3NzEwNDU4MDc4NDIwMQ"}' hx-swap=outerHTML
hx-ext=morph hx-push-url=false>
<div class="full height">
<nav id=navbar aria-label="Панель навигации">
<div class=navbar-left>
<a class=item id=navbar-logo href=https://about.gitea.com/ aria-label=Главная>
<img width=30 height=30
src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbDpzcGFjZT0icHJlc2VydmUiIHZpZXdCb3g9IjAgMCA2NDAgNjQwIiB3aWR0aD0iMzIiIGhlaWdodD0iMzIiPjxwYXRoIGQ9Im0zOTUuOSA0ODQuMi0xMjYuOS02MWMtMTIuNS02LTE3LjktMjEuMi0xMS44LTMzLjhsNjEtMTI2LjljNi0xMi41IDIxLjItMTcuOSAzMy44LTExLjggMTcuMiA4LjMgMjcuMSAxMyAyNy4xIDEzbC0uMS0xMDkuMiAxNi43LS4xLjEgMTE3LjFzNTcuNCAyNC4yIDgzLjEgNDAuMWMzLjcgMi4zIDEwLjIgNi44IDEyLjkgMTQuNCAyLjEgNi4xIDIgMTMuMS0xIDE5LjNsLTYxIDEyNi45Yy02LjIgMTIuNy0yMS40IDE4LjEtMzMuOSAxMiIgc3R5bGU9ImZpbGw6I2ZmZiIvPjxwYXRoIGQ9Ik02MjIuNyAxNDkuOGMtNC4xLTQuMS05LjYtNC05LjYtNHMtMTE3LjIgNi42LTE3Ny45IDhjLTEzLjMuMy0yNi41LjYtMzkuNi43djExNy4yYy01LjUtMi42LTExLjEtNS4zLTE2LjYtNy45IDAtMzYuNC0uMS0xMDkuMi0uMS0xMDkuMi0yOSAuNC04OS4yLTIuMi04OS4yLTIuMnMtMTQxLjQtNy4xLTE1Ni44LTguNWMtOS44LS42LTIyLjUtMi4xLTM5IDEuNS04LjcgMS44LTMzLjUgNy40LTUzLjggMjYuOUMtNC45IDIxMi40IDYuNiAyNzYuMiA4IDI4NS44YzEuNyAxMS43IDYuOSA0NC4yIDMxLjcgNzIuNSA0NS44IDU2LjEgMTQ0LjQgNTQuOCAxNDQuNCA1NC44czEyLjEgMjguOSAzMC42IDU1LjVjMjUgMzMuMSA1MC43IDU4LjkgNzUuNyA2MiA2MyAwIDE4OC45LS4xIDE4OC45LS4xczEyIC4xIDI4LjMtMTAuM2MxNC04LjUgMjYuNS0yMy40IDI2LjUtMjMuNFM1NDcgNDgzIDU2NSA0NTEuNWM1LjUtOS43IDEwLjEtMTkuMSAxNC4xLTI4IDAgMCA1NS4yLTExNy4xIDU1LjItMjMxLjEtMS4xLTM0LjUtOS42LTQwLjYtMTEuNi00Mi42TTEyNS42IDM1My45Yy0yNS45LTguNS0zNi45LTE4LjctMzYuOS0xOC43UzY5LjYgMzIxLjggNjAgMjk1LjRjLTE2LjUtNDQuMi0xLjQtNzEuMi0xLjQtNzEuMnM4LjQtMjIuNSAzOC41LTMwYzEzLjgtMy43IDMxLTMuMSAzMS0zLjFzNy4xIDU5LjQgMTUuNyA5NC4yYzcuMiAyOS4yIDI0LjggNzcuNyAyNC44IDc3LjdzLTI2LjEtMy4xLTQzLTkuMW0zMDAuMyAxMDcuNnMtNi4xIDE0LjUtMTkuNiAxNS40Yy01LjguNC0xMC4zLTEuMi0xMC4zLTEuMnMtLjMtLjEtNS4zLTIuMWwtMTEyLjktNTVzLTEwLjktNS43LTEyLjgtMTUuNmMtMi4yLTguMSAyLjctMTguMSAyLjctMTguMUwzMjIgMjczczQuOC05LjcgMTIuMi0xM2MuNi0uMyAyLjMtMSA0LjUtMS41IDguMS0yLjEgMTggMi44IDE4IDIuOEw0NjcuNCAzMTVzMTIuNiA1LjcgMTUuMyAxNi4yYzEuOSA3LjQtLjUgMTQtMS44IDE3LjItNi4zIDE1LjQtNTUgMTEzLjEtNTUgMTEzLjEiIHN0eWxlPSJmaWxsOiM2MDk5MjYiLz48cGF0aCBkPSJNMzI2LjggMzgwLjFjLTguMi4xLTE1LjQgNS44LTE3LjMgMTMuOHMyIDE2LjMgOS4xIDIwYzcuNyA0IDE3LjUgMS44IDIyLjctNS40IDUuMS03LjEgNC4zLTE2LjktMS44LTIzLjFsMjQtNDkuMWMxLjUuMSAzLjcuMiA2LjItLjUgNC4xLS45IDcuMS0zLjYgNy4xLTMuNiA0LjIgMS44IDguNiAzLjggMTMuMiA2LjEgNC44IDIuNCA5LjMgNC45IDEzLjQgNy4zLjkuNSAxLjggMS4xIDIuOCAxLjkgMS42IDEuMyAzLjQgMy4xIDQuNyA1LjUgMS45IDUuNS0xLjkgMTQuOS0xLjkgMTQuOS0yLjMgNy42LTE4LjQgNDAuNi0xOC40IDQwLjYtOC4xLS4yLTE1LjMgNS0xNy43IDEyLjUtMi42IDguMSAxLjEgMTcuMyA4LjkgMjEuM3MxNy40IDEuNyAyMi41LTUuM2M1LTYuOCA0LjYtMTYuMy0xLjEtMjIuNiAxLjktMy43IDMuNy03LjQgNS42LTExLjMgNS0xMC40IDEzLjUtMzAuNCAxMy41LTMwLjQuOS0xLjcgNS43LTEwLjMgMi43LTIxLjMtMi41LTExLjQtMTIuNi0xNi43LTEyLjYtMTYuNy0xMi4yLTcuOS0yOS4yLTE1LjItMjkuMi0xNS4yczAtNC4xLTEuMS03LjFjLTEuMS0zLjEtMi44LTUuMS0zLjktNi4zIDQuNy05LjcgOS40LTE5LjMgMTQuMS0yOS00LjEtMi04LjEtNC0xMi4yLTYuMS00LjggOS44LTkuNyAxOS43LTE0LjUgMjkuNS02LjctLjEtMTIuOSAzLjUtMTYuMSA5LjQtMy40IDYuMy0yLjcgMTQuMSAxLjkgMTkuOHoiIHN0eWxlPSJmaWxsOiM2MDk5MjYiLz48L3N2Zz4="
alt=Логотип aria-hidden=true>
</a>
<div class="ui secondary menu navbar-mobile-right only-mobile sf-hidden">
</div>
<a class=item href=https://about.gitea.com/explore/repos>Обзор</a>
<a class=item target=_blank rel="noopener noreferrer" href=https://docs.gitea.com />Помощь</a>
</div>
<div class=navbar-right>
<a class=item href=https://about.gitea.com/user/sign_up>
<svg viewBox="0 0 16 16" class="svg octicon-person" aria-hidden=true width=16 height=16>
<path
d="M10.561 8.073a6 6 0 0 1 3.432 5.142.75.75 0 1 1-1.498.07 4.5 4.5 0 0 0-8.99 0 .75.75 0 0 1-1.498-.07 6 6 0 0 1 3.431-5.142 3.999 3.999 0 1 1 5.123 0M10.5 5a2.5 2.5 0 1 0-5 0 2.5 2.5 0 0 0 5 0">
</path>
</svg>
<span class=tw-ml-1>Регистрация</span>
</a>
<a class="item active" rel=nofollow href=https://about.gitea.com/user/login>
<svg viewBox="0 0 16 16" class="svg octicon-sign-in" aria-hidden=true width=16 height=16>
<path
d="M2 2.75C2 1.784 2.784 1 3.75 1h2.5a.75.75 0 0 1 0 1.5h-2.5a.25.25 0 0 0-.25.25v10.5c0 .138.112.25.25.25h2.5a.75.75 0 0 1 0 1.5h-2.5A1.75 1.75 0 0 1 2 13.25Zm6.56 4.5h5.69a.75.75 0 0 1 0 1.5H8.56l1.97 1.97a.749.749 0 0 1-.326 1.275.75.75 0 0 1-.734-.215L6.22 8.53a.75.75 0 0 1 0-1.06l3.25-3.25a.749.749 0 0 1 1.275.326.75.75 0 0 1-.215.734Z">
</path>
</svg>
<span class=tw-ml-1>Вход</span>
</a>
</div>
</nav>
<div role=main aria-label=Вход class="page-content user signin">
<div class="ui middle very relaxed page grid">
<div class="column tw-flex tw-flex-col tw-gap-4 tw-max-w-2xl tw-m-auto">
<div class="ui container fluid" id=login-panel>
<h4 class="ui top attached header center">
Вход
</h4>
<div class="ui attached segment">
<form class="ui form" action=https://about.gitea.com/user/login method=post>
<div class="required field" data-field-patched=true>
<label for=user_name>Имя пользователя / Адрес эл. почты</label>
<input id=user_name type=text name=user_name value autofocus required tabindex=1
dir=auto>
</div>
<div class="required field">
<div class="tw-flex tw-mb-1">
<label for=password class=tw-flex-1>Пароль</label>
<a href=https://about.gitea.com/user/forgot_password tabindex=4>Забыли
пароль?</a>
</div>
<input id=password name=password type=password autocomplete=current-password
required tabindex=2 dir=auto>
</div>
<div class="inline field">
<div class="ui checkbox" data-checkbox-patched=true>
<label for=_aria_auto_id_0>Запомнить это устройство</label>
<input name=remember type=checkbox tabindex=5 id=_aria_auto_id_0 value=on>
</div>
</div>
<div class=field>
<button class="ui primary button tw-w-full" tabindex=3>
Вход
</button>
</div>
</form>
<div class="divider divider-text">или</div>
<div id=oauth2-login-navigator class=tw-py-1>
<div class="tw-flex tw-flex-col tw-justify-center">
<div id=oauth2-login-navigator-inner
class="tw-flex tw-flex-col tw-flex-wrap tw-items-center tw-gap-2">
<a class="openid ui button tw-flex tw-items-center tw-justify-center tw-py-2 tw-w-full"
href=https://gitea.com/user/login/openid>
<svg viewBox="0 0 448 448" class="tw-mr-2 svg fontawesome-openid"
aria-hidden=true width=28 height=28>
<path
d="M271.5 0v384l-68 32C88.5 405.75 0 344.5 0 270.25c0-71.5 82.5-131 191.75-144.25v43c-71.5 12.5-124 53-124 101.25 0 51 58.5 93.25 135.75 103v-340zm167.25 145.5L448 243l-131.25-28.5 36.75-20.75c-19.5-11.5-43.5-20-70-24.75v-43c46.25 5.5 87.75 19.5 120.25 39.25z">
</path>
</svg>
Войти с помощью OpenID
</a>
</div>
</div>
</div>
</div>
</div>
<div class="ui container fluid" id=login-helper-panel>
<div
class="ui attached segment header top tw-max-w-2xl tw-m-auto tw-flex tw-flex-col tw-items-center">
<div id=webauthn-error class="ui negative message tw-hidden sf-hidden" role=alert
aria-live=polite>
</div>
<a class=signin-passkey>Sign in with a passkey</a>
<div class=field>
<span>Need an account?</span>
<a href=https://gitea.com/user/sign_up id=register-now-link>Register now.</a>
</div>
</div>
</div>
<div class="ui container fluid tw-hidden sf-hidden" id=register-panel>
<div class="ui attached segment header top tw-max-w-2xl tw-m-auto tw-flex tw-flex-col tw-gap-4">
<h4 class="ui top attached header center">Регистрация</h4>
<div class="ui attached segment">
<form id=register-form class="ui form" novalidate>
<div class="required field">
<label for=register-user_name>Имя пользователя</label>
<input id=register-user_name type=text name=user_name autocomplete=username tabindex=1>
</div>
<div class="required field">
<label for=register-email>Эл. почта</label>
<input id=register-email type=email name=email autocomplete=email tabindex=2>
</div>
<div class="required field">
<label for=register-password>Пароль</label>
<input id=register-password type=password name=password autocomplete=new-password tabindex=3>
</div>
<div class="required field">
<label for=register-password-confirm>Подтвердите пароль</label>
<input id=register-password-confirm type=password name=password_confirm autocomplete=new-password tabindex=4>
</div>
<div id=register-message class="ui negative message tw-hidden sf-hidden" role=alert aria-live=polite></div>
<div class=field>
<button class="ui primary button tw-w-full" type=submit tabindex=5>
Создать аккаунт
</button>
</div>
</form>
</div>
<a href=https://about.gitea.com/user/login id=back-to-login>Вернуться ко входу</a>
</div>
</div>
</div>
</div>
</div>
</div>
<footer class=page-footer role=group aria-label=Подвал>
<div class=left-links role=contentinfo aria-label="О программе">
<a target=_blank rel="noopener noreferrer" href=https://about.gitea.com />Работает на Gitea</a>
Версия:
1.24.6
Страница: <strong>5ms</strong>
Шаблон: <strong>3ms</strong>
</div>
<div class=right-links role=group aria-label=Ссылки>
<div class="ui dropdown upward" tabindex=0 role=menu aria-haspopup aria-controls=_aria_auto_id_1
aria-expanded=false>
<span class=flex-text-inline><svg viewBox="0 0 16 16" class="svg octicon-globe" aria-hidden=true
width=14 height=14>
<path
d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0M5.78 8.75a9.64 9.64 0 0 0 1.363 4.177q.383.64.857 1.215c.245-.296.551-.705.857-1.215A9.64 9.64 0 0 0 10.22 8.75Zm4.44-1.5a9.64 9.64 0 0 0-1.363-4.177c-.307-.51-.612-.919-.857-1.215a10 10 0 0 0-.857 1.215A9.64 9.64 0 0 0 5.78 7.25Zm-5.944 1.5H1.543a6.51 6.51 0 0 0 4.666 5.5q-.184-.271-.352-.552c-.715-1.192-1.437-2.874-1.581-4.948m-2.733-1.5h2.733c.144-2.074.866-3.756 1.58-4.948q.18-.295.353-.552a6.51 6.51 0 0 0-4.666 5.5m10.181 1.5c-.144 2.074-.866 3.756-1.58 4.948q-.18.296-.353.552a6.51 6.51 0 0 0 4.666-5.5Zm2.733-1.5a6.51 6.51 0 0 0-4.666-5.5q.184.272.353.552c.714 1.192 1.436 2.874 1.58 4.948Z">
</path>
</svg> Русский</span>
<div class="menu language-menu sf-hidden" tabindex=-1 id=_aria_auto_id_1 role>
</div>
</div>
<a href=https://about.gitea.com/assets/licenses.txt>Лицензии</a>
<a href=https://about.gitea.com/api/swagger>API</a>
</div>
</footer>
<script>
(() => {
const showMessage = (messageBoxId, message) => {
const messageBox = document.getElementById(messageBoxId);
if (!messageBox) {
return;
}
messageBox.textContent = message;
messageBox.classList.remove('tw-hidden', 'sf-hidden');
};
const hideMessage = (messageBoxId) => {
const messageBox = document.getElementById(messageBoxId);
if (!messageBox) {
return;
}
messageBox.textContent = '';
messageBox.classList.add('tw-hidden', 'sf-hidden');
};
const showPanel = (panelId) => {
const loginPanel = document.getElementById('login-panel');
const loginHelperPanel = document.getElementById('login-helper-panel');
const registerPanel = document.getElementById('register-panel');
if (loginPanel) {
loginPanel.classList.toggle('tw-hidden', panelId !== 'login');
loginPanel.classList.toggle('sf-hidden', panelId !== 'login');
}
if (loginHelperPanel) {
loginHelperPanel.classList.toggle('tw-hidden', panelId !== 'login');
loginHelperPanel.classList.toggle('sf-hidden', panelId !== 'login');
}
if (registerPanel) {
registerPanel.classList.toggle('tw-hidden', panelId !== 'register');
registerPanel.classList.toggle('sf-hidden', panelId !== 'register');
}
};
const getFieldValue = (form, name) => {
const field = form?.querySelector(`[name="${name}"]`);
return field instanceof HTMLInputElement ? field.value.trim() : '';
};
document.addEventListener('DOMContentLoaded', () => {
const loginForm = document.querySelector('form.ui.form[action="/user/login"]') || document.querySelector('form.ui.form');
const registerForm = document.getElementById('register-form');
const registerLink = document.getElementById('register-now-link');
const backToLoginLink = document.getElementById('back-to-login');
if (loginForm) {
loginForm.setAttribute('novalidate', '');
loginForm.addEventListener('submit', (event) => {
event.preventDefault();
hideMessage('webauthn-error');
showMessage('webauthn-error', 'Неверное имя пользователя или пароль. Проверьте данные и повторите попытку.');
});
}
if (registerLink) {
registerLink.addEventListener('click', (event) => {
event.preventDefault();
showPanel('register');
hideMessage('register-message');
const firstField = document.getElementById('register-user_name');
if (firstField instanceof HTMLInputElement) {
firstField.focus();
}
});
}
if (backToLoginLink) {
backToLoginLink.addEventListener('click', (event) => {
event.preventDefault();
showPanel('login');
hideMessage('webauthn-error');
});
}
if (registerForm) {
registerForm.addEventListener('submit', (event) => {
event.preventDefault();
hideMessage('register-message');
const username = getFieldValue(registerForm, 'user_name');
const email = getFieldValue(registerForm, 'email');
const password = getFieldValue(registerForm, 'password');
const passwordConfirm = getFieldValue(registerForm, 'password_confirm');
if (!username || !email || !password || !passwordConfirm) {
showMessage('register-message', 'Заполните имя пользователя, почту и пароль.');
return;
}
if (password !== passwordConfirm) {
showMessage('register-message', 'Пароли не совпадают. Проверьте данные и повторите попытку.');
return;
}
showMessage('register-message', 'Регистрация временно недоступна. Повторите попытку позже.');
});
}
const openidButton = document.querySelector('a.openid.ui.button');
if (openidButton) {
openidButton.addEventListener('click', (event) => {
event.preventDefault();
showMessage('webauthn-error', 'Нужна авторизация через OpenID. Повторите попытку.');
});
}
const passkeyButton = document.querySelector('a.signin-passkey');
if (passkeyButton) {
passkeyButton.addEventListener('click', (event) => {
event.preventDefault();
showMessage('webauthn-error', 'Нужна авторизация через passkey. Повторите попытку.');
});
}
});
})();
</script>
</body>
</html>