You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

_base.less 26KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298
  1. /* roboto-regular - latin-ext_cyrillic-ext_latin_greek_vietnamese_cyrillic_greek-ext */
  2. @font-face {
  3. font-family: 'Roboto';
  4. font-style: normal;
  5. font-weight: 400;
  6. src:
  7. local('Roboto'),
  8. local('Roboto-Regular'),
  9. /* Chrome 26+, Opera 23+, Firefox 39+ */
  10. url('../vendor/assets/roboto-fonts/roboto-v20-latin-ext_cyrillic-ext_latin_greek_vietnamese_cyrillic_greek-ext-regular.woff2') format('woff2'),
  11. /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
  12. url('../vendor/assets/roboto-fonts/roboto-v20-latin-ext_cyrillic-ext_latin_greek_vietnamese_cyrillic_greek-ext-regular.woff') format('woff');
  13. }
  14. /* roboto-italic - latin-ext_cyrillic-ext_latin_greek_vietnamese_cyrillic_greek-ext */
  15. @font-face {
  16. font-family: 'Roboto';
  17. font-style: italic;
  18. font-weight: 400;
  19. src:
  20. local('Roboto Italic'),
  21. local('Roboto-Italic'),
  22. /* Chrome 26+, Opera 23+, Firefox 39+ */
  23. url('../vendor/assets/roboto-fonts/roboto-v20-latin-ext_cyrillic-ext_latin_greek_vietnamese_cyrillic_greek-ext-italic.woff2') format('woff2'),
  24. /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
  25. url('../vendor/assets/roboto-fonts/roboto-v20-latin-ext_cyrillic-ext_latin_greek_vietnamese_cyrillic_greek-ext-italic.woff') format('woff');
  26. }
  27. /* roboto-700 - latin-ext_cyrillic-ext_latin_greek_vietnamese_cyrillic_greek-ext */
  28. @font-face {
  29. font-family: 'Roboto';
  30. font-style: normal;
  31. font-weight: 700;
  32. src:
  33. local('Roboto Bold'),
  34. local('Roboto-Bold'),
  35. /* Chrome 26+, Opera 23+, Firefox 39+ */
  36. url('../vendor/assets/roboto-fonts/roboto-v20-latin-ext_cyrillic-ext_latin_greek_vietnamese_cyrillic_greek-ext-700.woff2') format('woff2'),
  37. /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
  38. url('../vendor/assets/roboto-fonts/roboto-v20-latin-ext_cyrillic-ext_latin_greek_vietnamese_cyrillic_greek-ext-700.woff') format('woff');
  39. }
  40. /* roboto-700italic - latin-ext_cyrillic-ext_latin_greek_vietnamese_cyrillic_greek-ext */
  41. @font-face {
  42. font-family: 'Roboto';
  43. font-style: italic;
  44. font-weight: 700;
  45. src:
  46. local('Roboto Bold Italic'),
  47. local('Roboto-BoldItalic'),
  48. /* Chrome 26+, Opera 23+, Firefox 39+ */
  49. url('../vendor/assets/roboto-fonts/roboto-v20-latin-ext_cyrillic-ext_latin_greek_vietnamese_cyrillic_greek-ext-700italic.woff2') format('woff2'),
  50. /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
  51. url('../vendor/assets/roboto-fonts/roboto-v20-latin-ext_cyrillic-ext_latin_greek_vietnamese_cyrillic_greek-ext-700italic.woff') format('woff');
  52. }
  53. @font-face {
  54. font-family: 'Yu Gothic';
  55. src: local('Yu Gothic Medium');
  56. font-weight: 400;
  57. }
  58. @font-face {
  59. font-family: 'Yu Gothic';
  60. src: local('Yu Gothic Bold');
  61. font-weight: 700;
  62. }
  63. @font-face {
  64. font-family: 'Noto Color Emoji';
  65. src:
  66. local('Noto Color Emoji'),
  67. local('Noto-Color-Emoji'),
  68. url('../vendor/assets/noto-color-emoji/NotoColorEmoji.ttf') format('truetype');
  69. }
  70. @default-fonts: -apple-system, BlinkMacSystemFont, system-ui, 'Segoe UI', Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  71. @monospaced-fonts: 'SF Mono', Consolas, Menlo, 'Liberation Mono', Monaco, 'Lucida Console';
  72. .override-fonts(@fonts) {
  73. textarea {
  74. font-family: @fonts, sans-serif;
  75. }
  76. .markdown:not(code) {
  77. font-family: @fonts, sans-serif;
  78. }
  79. /* We're going to just override the semantic fonts here */
  80. h1,
  81. h2,
  82. h3,
  83. h4,
  84. h5 {
  85. font-family: Roboto, @fonts, sans-serif;
  86. }
  87. .home .hero h1,
  88. .home .hero h2 {
  89. font-family: 'PT Sans Narrow', Roboto, @fonts, sans-serif;
  90. }
  91. .ui.accordion .title:not(.ui),
  92. .ui.button,
  93. .ui.card > .content > .header.ui.card > .content > .header,
  94. .ui.category.search > .results .category > .name,
  95. .ui.form input:not([type]),
  96. .ui.form input[type="date"],
  97. .ui.form input[type="datetime-local"],
  98. .ui.form input[type="email"],
  99. .ui.form input[type="file"],
  100. .ui.form input[type="number"],
  101. .ui.form input[type="password"],
  102. .ui.form input[type="search"],
  103. .ui.form input[type="tel"],
  104. .ui.form input[type="text"],
  105. .ui.form input[type="time"],
  106. .ui.form input[type="url"],
  107. .ui.header,
  108. .ui.items > .item > .content > .header,
  109. .ui.list .list > .item .header,
  110. .ui.list > .item .header,
  111. .ui.menu,
  112. .ui.message .header,
  113. .ui.modal > .header,
  114. .ui.popup > .header,
  115. .ui.search > .results .result .title,
  116. .ui.search > .results > .message .header,
  117. body,
  118. .ui.input > input,
  119. .ui.input input,
  120. .ui.statistics .statistic > .value,
  121. .ui.statistic > .value,
  122. .ui.statistics .statistic > .label,
  123. .ui.statistic > .label,
  124. .ui.steps .step .title,
  125. .ui.text.container,
  126. .ui.language > .menu > .item& {
  127. font-family: Roboto, @fonts, sans-serif;
  128. }
  129. }
  130. .override-fonts(@default-fonts);
  131. body {
  132. background-color: #ffffff;
  133. overflow-y: auto;
  134. -webkit-font-smoothing: antialiased;
  135. display: flex;
  136. flex-direction: column;
  137. }
  138. @ja-fonts: 'Hiragino Kaku Gothic ProN', 'Yu Gothic', 'Source Han Sans JP', 'Noto Sans CJK JP', 'Droid Sans Japanese', 'Meiryo', 'MS PGothic';
  139. :lang(ja) {
  140. .override-fonts(@default-fonts, @ja-fonts;);
  141. }
  142. @zh-CN-fonts: 'PingFang SC', 'Hiragino Sans GB', 'Source Han Sans CN', 'Source Han Sans SC', 'Noto Sans CJK SC', 'Microsoft YaHei', 'Heiti SC', SimHei;
  143. :lang(zh-CN) {
  144. .override-fonts(@default-fonts, @zh-CN-fonts;);
  145. }
  146. @zh-TW-fonts: 'PingFang TC', 'Hiragino Sans TC', 'Source Han Sans TW', 'Source Han Sans TC', 'Noto Sans CJK TC', 'Microsoft JhengHei', 'Heiti TC', PMingLiU;
  147. :lang(zh-TW) {
  148. .override-fonts(@default-fonts, @zh-TW-fonts;);
  149. }
  150. @zh-HK-fonts: 'PingFang HK', 'Hiragino Sans TC', 'Source Han Sans HK', 'Source Han Sans TC', 'Noto Sans CJK TC', 'Microsoft JhengHei', 'Heiti TC', PMingLiU_HKSCS, PMingLiU;
  151. :lang(zh-HK) {
  152. .override-fonts(@default-fonts, @zh-HK-fonts;);
  153. }
  154. @ko-fonts: 'Apple SD Gothic Neo', 'NanumBarunGothic', 'Malgun Gothic', 'Gulim', 'Dotum', 'Nanum Gothic', 'Source Han Sans KR', 'Noto Sans CJK KR';
  155. :lang(ko) {
  156. .override-fonts(@default-fonts, @ko-fonts;);
  157. }
  158. img {
  159. border-radius: 3px;
  160. }
  161. table {
  162. border-collapse: collapse;
  163. }
  164. a {
  165. cursor: pointer;
  166. }
  167. .rounded {
  168. border-radius: .28571429rem !important;
  169. }
  170. .wrap {
  171. word-wrap: break-word;
  172. word-break: break-all;
  173. }
  174. pre,
  175. code,
  176. .mono {
  177. font: 12px @monospaced-fonts, monospace;
  178. &.raw {
  179. padding: 7px 12px;
  180. margin: 10px 0;
  181. background-color: #f8f8f8;
  182. border: 1px solid #dddddd;
  183. border-radius: 3px;
  184. font-size: 13px;
  185. line-height: 1.5;
  186. overflow: auto;
  187. }
  188. &.wrap {
  189. white-space: pre-wrap;
  190. word-break: break-all;
  191. overflow-wrap: break-word;
  192. word-wrap: break-word;
  193. }
  194. }
  195. .dont-break-out {
  196. overflow-wrap: break-word;
  197. word-wrap: break-word;
  198. word-break: break-all;
  199. hyphens: auto;
  200. }
  201. .full.height {
  202. flex-grow: 1;
  203. padding-bottom: 80px;
  204. }
  205. .following.bar {
  206. z-index: 900;
  207. left: 0;
  208. margin: 0 !important;
  209. &.light {
  210. background-color: white;
  211. border-bottom: 1px solid #dddddd;
  212. box-shadow: 0 2px 3px rgba(0, 0, 0, .04);
  213. }
  214. .column .menu {
  215. margin-top: 0;
  216. }
  217. .top.menu a.item.brand {
  218. padding-left: 0;
  219. }
  220. .brand .ui.mini.image {
  221. width: 30px;
  222. }
  223. .top.menu a.item:hover,
  224. .top.menu .dropdown.item:hover,
  225. .top.menu .dropdown.item.active {
  226. background-color: transparent;
  227. }
  228. .top.menu a.item:hover {
  229. color: rgba(0, 0, 0, .45);
  230. }
  231. .top.menu .menu {
  232. z-index: 900;
  233. }
  234. .fitted .svg {
  235. margin-right: 0;
  236. }
  237. .svg {
  238. margin-right: .75em;
  239. }
  240. .searchbox {
  241. background-color: #f4f4f4 !important;
  242. &:focus {
  243. background-color: #e9e9e9 !important;
  244. }
  245. }
  246. .text .svg {
  247. width: 16px;
  248. text-align: center;
  249. }
  250. #navbar {
  251. width: 100vw;
  252. min-height: 52px;
  253. padding: 0 .5rem;
  254. }
  255. #navbar .brand {
  256. margin: 0;
  257. }
  258. @media only screen and (max-width: 767px) {
  259. #navbar:not(.shown) > *:not(:first-child) {
  260. display: none;
  261. }
  262. }
  263. }
  264. .right.stackable.menu {
  265. // responsive fix: this makes sure that the right menu when the page
  266. // is on mobile view will have elements stacked on top of each other.
  267. // no, stackable won't work on right menus.
  268. margin-left: auto;
  269. display: flex;
  270. align-items: inherit;
  271. flex-direction: inherit;
  272. }
  273. .ui {
  274. &.left:not(.action) {
  275. float: left;
  276. }
  277. &.right:not(.action) {
  278. float: right;
  279. }
  280. &.button,
  281. &.menu .item {
  282. user-select: auto;
  283. }
  284. &.container {
  285. &.fluid {
  286. &.padded {
  287. padding: 0 10px 0 10px;
  288. }
  289. }
  290. }
  291. &.form {
  292. .ui.button {
  293. font-weight: normal;
  294. }
  295. }
  296. &.floating.label {
  297. z-index: 10;
  298. }
  299. &.transparent.label {
  300. background-color: transparent;
  301. }
  302. &.nopadding {
  303. padding: 0;
  304. }
  305. &.menu,
  306. &.vertical.menu,
  307. &.segment {
  308. box-shadow: none;
  309. }
  310. /* Overide semantic selector '.ui.menu:not(.vertical) .item > .button' */
  311. /* This fixes the commit graph button on the commits page */
  312. .menu:not(.vertical) .item > .button.compact {
  313. padding: .58928571em 1.125em;
  314. }
  315. .menu:not(.vertical) .item > .button.small {
  316. font-size: .92857143rem;
  317. }
  318. &.menu .ui.dropdown.item .menu .item {
  319. width: 100%;
  320. }
  321. &.dropdown .menu > .item > .floating.label {
  322. z-index: 11;
  323. }
  324. &.dropdown .menu .menu > .item > .floating.label {
  325. z-index: 21;
  326. }
  327. &.dropdown .menu > .header {
  328. font-size: .8em;
  329. }
  330. .text {
  331. &.red {
  332. color: #d95c5c !important;
  333. a {
  334. color: #d95c5c !important;
  335. &:hover {
  336. color: #e67777 !important;
  337. }
  338. }
  339. }
  340. &.blue {
  341. color: #428bca !important;
  342. a {
  343. color: #1155cc !important;
  344. &:hover {
  345. color: #428bca !important;
  346. }
  347. }
  348. }
  349. &.black {
  350. color: #444444;
  351. &:hover {
  352. color: #000000;
  353. }
  354. }
  355. &.grey {
  356. color: #767676 !important;
  357. a {
  358. color: #444444 !important;
  359. &:hover {
  360. color: #000000 !important;
  361. }
  362. }
  363. }
  364. &.light.grey {
  365. color: #888888 !important;
  366. }
  367. &.green {
  368. color: #6cc644 !important;
  369. }
  370. &.purple {
  371. color: #6e5494 !important;
  372. }
  373. &.yellow {
  374. color: #fbbd08 !important;
  375. }
  376. &.orange {
  377. color: #f2711c !important;
  378. }
  379. &.gold {
  380. color: #a1882b !important;
  381. }
  382. &.left {
  383. text-align: left !important;
  384. }
  385. &.right {
  386. text-align: right !important;
  387. }
  388. &.small {
  389. font-size: .75em;
  390. }
  391. &.normal {
  392. font-weight: normal;
  393. }
  394. &.bold {
  395. font-weight: bold;
  396. }
  397. &.italic {
  398. font-style: italic;
  399. }
  400. &.truncate {
  401. overflow: hidden;
  402. text-overflow: ellipsis;
  403. white-space: nowrap;
  404. display: inline-block;
  405. }
  406. &.thin {
  407. font-weight: normal;
  408. }
  409. &.middle {
  410. vertical-align: middle;
  411. }
  412. &.nopadding {
  413. padding: 0;
  414. }
  415. &.nomargin {
  416. margin: 0;
  417. }
  418. }
  419. .message {
  420. text-align: center;
  421. }
  422. .message > ul {
  423. margin-left: auto;
  424. margin-right: auto;
  425. display: table;
  426. text-align: left;
  427. }
  428. &.bottom.attached.message {
  429. font-weight: bold;
  430. text-align: left;
  431. color: black;
  432. .pull-right {
  433. color: black;
  434. }
  435. & > span,
  436. .pull-right > span {
  437. color: #21ba45;
  438. }
  439. }
  440. .header > i + .content {
  441. padding-left: .75rem;
  442. vertical-align: middle;
  443. }
  444. .warning {
  445. &.header {
  446. background-color: #f9edbe !important;
  447. border-color: #efc16b;
  448. }
  449. &.segment {
  450. border-color: #efc16b;
  451. }
  452. }
  453. .info {
  454. &.segment {
  455. border: 1px solid #c5d5dd;
  456. &.top {
  457. background-color: #e6f1f6 !important;
  458. h3,
  459. h4 {
  460. margin-top: 0;
  461. }
  462. h3:last-child {
  463. margin-top: 4px;
  464. }
  465. > :last-child {
  466. margin-bottom: 0;
  467. }
  468. }
  469. }
  470. }
  471. .normal.header {
  472. font-weight: normal;
  473. }
  474. .avatar.image {
  475. border-radius: 3px;
  476. }
  477. .form {
  478. .fake {
  479. display: none !important;
  480. }
  481. .sub.field {
  482. margin-left: 25px;
  483. }
  484. }
  485. .sha.label {
  486. font-family: @monospaced-fonts, monospace;
  487. font-size: 13px;
  488. padding: 6px 10px 4px 10px;
  489. font-weight: normal;
  490. margin: 0 6px;
  491. }
  492. .button.truncate {
  493. display: inline-block;
  494. max-width: 100%;
  495. overflow: hidden;
  496. text-overflow: ellipsis;
  497. vertical-align: top;
  498. white-space: nowrap;
  499. margin-right: 6px;
  500. }
  501. &.status.buttons {
  502. .svg {
  503. margin-right: 4px;
  504. }
  505. }
  506. &.inline.delete-button {
  507. padding: 8px 15px;
  508. font-weight: normal;
  509. }
  510. .background {
  511. &.red {
  512. background-color: #d95c5c !important;
  513. }
  514. &.blue {
  515. background-color: #428bca !important;
  516. }
  517. &.black {
  518. background-color: #444444;
  519. }
  520. &.grey {
  521. background-color: #767676 !important;
  522. }
  523. &.light.grey {
  524. background-color: #888888 !important;
  525. }
  526. &.green {
  527. background-color: #6cc644 !important;
  528. }
  529. &.purple {
  530. background-color: #6e5494 !important;
  531. }
  532. &.yellow {
  533. background-color: #fbbf09 !important;
  534. }
  535. &.orange {
  536. background-color: #f2711c !important;
  537. }
  538. &.gold {
  539. background-color: #a1882b !important;
  540. }
  541. }
  542. .migrate {
  543. color: #888888 !important;
  544. opacity: .5;
  545. a {
  546. color: #444444 !important;
  547. &:hover {
  548. color: #000000 !important;
  549. }
  550. }
  551. }
  552. .border {
  553. border: 1px solid;
  554. &.red {
  555. border-color: #d95c5c !important;
  556. }
  557. &.blue {
  558. border-color: #428bca !important;
  559. }
  560. &.black {
  561. border-color: #444444;
  562. }
  563. &.grey {
  564. border-color: #767676 !important;
  565. }
  566. &.light.grey {
  567. border-color: #888888 !important;
  568. }
  569. &.green {
  570. border-color: #6cc644 !important;
  571. }
  572. &.purple {
  573. border-color: #6e5494 !important;
  574. }
  575. &.yellow {
  576. border-color: #fbbd08 !important;
  577. }
  578. &.orange {
  579. border-color: #f2711c !important;
  580. }
  581. &.gold {
  582. border-color: #a1882b !important;
  583. }
  584. }
  585. .branch-tag-choice {
  586. line-height: 20px;
  587. }
  588. &.pagination.menu {
  589. @media only screen and (max-width: 767px) {
  590. .item:not(.active):not(.navigation),
  591. .item.navigation span.navigation_label {
  592. display: none;
  593. }
  594. }
  595. &.narrow .item {
  596. padding-left: 8px;
  597. padding-right: 8px;
  598. min-width: 1em;
  599. text-align: center;
  600. .icon {
  601. margin-right: 0;
  602. }
  603. }
  604. }
  605. }
  606. .file-comment {
  607. font: 12px @monospaced-fonts, monospace;
  608. color: rgba(0, 0, 0, .87);
  609. }
  610. .ui.floating.dropdown {
  611. .overflow.menu {
  612. .scrolling.menu.items {
  613. border-radius: 0 !important;
  614. box-shadow: none !important;
  615. border-bottom: 1px solid rgba(34, 36, 38, .15);
  616. }
  617. }
  618. }
  619. .user-menu > .item {
  620. width: 100%;
  621. border-radius: 0 !important;
  622. }
  623. .scrolling.menu {
  624. .item.selected {
  625. font-weight: 700 !important;
  626. }
  627. }
  628. footer {
  629. background-color: white;
  630. border-top: 1px solid #d6d6d6;
  631. width: 100%;
  632. flex-basis: 40px;
  633. color: #888888;
  634. .container {
  635. width: 100vw !important;
  636. padding: 0 .5rem;
  637. max-width: calc(100vw - 1rem) !important;
  638. .fa {
  639. width: 16px;
  640. text-align: center;
  641. color: #428bca;
  642. }
  643. .links > * {
  644. border-left: 1px solid #d6d6d6;
  645. padding-left: 8px;
  646. margin-left: 5px;
  647. &:first-child {
  648. border-left: 0;
  649. }
  650. }
  651. }
  652. .ui.language .menu {
  653. max-height: 500px;
  654. overflow-y: auto;
  655. margin-bottom: 7px;
  656. }
  657. .ui {
  658. &.left,
  659. &.right {
  660. line-height: 40px;
  661. }
  662. }
  663. }
  664. .hide {
  665. display: none;
  666. &.show-outdated {
  667. display: none !important;
  668. }
  669. &.hide-outdated {
  670. display: none !important;
  671. }
  672. }
  673. .center {
  674. text-align: center;
  675. }
  676. .generate-img(16);
  677. .generate-img(@n, @i: 1) when (@i =< @n) {
  678. .img-@{i} {
  679. width: (2px * @i) !important;
  680. height: (2px * @i) !important;
  681. }
  682. .generate-img(@n, (@i + 1));
  683. }
  684. // Conditional display
  685. @media only screen and (min-width: 768px) {
  686. .mobile-only,
  687. .ui.button.mobile-only {
  688. display: none;
  689. }
  690. // has the same behaviour of sr-only, hiding the content for
  691. // non-screenreaders, but is shown on mobile devices.
  692. .sr-mobile-only {
  693. .sr-only();
  694. }
  695. }
  696. @media only screen and (max-width: 767px) {
  697. .not-mobile {
  698. display: none;
  699. }
  700. }
  701. // Accessibility
  702. .sr-only {
  703. position: absolute;
  704. width: 1px;
  705. height: 1px;
  706. padding: 0;
  707. margin: -1px;
  708. overflow: hidden;
  709. clip: rect(0, 0, 0, 0);
  710. border: 0;
  711. }
  712. .sr-only-focusable:active,
  713. .sr-only-focusable:focus {
  714. position: static;
  715. width: auto;
  716. height: auto;
  717. margin: 0;
  718. overflow: visible;
  719. clip: auto;
  720. }
  721. @media only screen and (max-width: 991px) and (min-width: 768px) {
  722. .ui.container {
  723. width: 95%;
  724. }
  725. }
  726. /* Overrides some styles of the Highlight.js plugin */
  727. .hljs {
  728. background: inherit !important;
  729. padding: 0 !important;
  730. }
  731. .ui.menu.new-menu {
  732. justify-content: center !important;
  733. padding-top: 15px !important;
  734. margin-top: -15px !important;
  735. margin-bottom: 15px !important;
  736. background-color: #fafafa !important;
  737. border-width: 1px !important;
  738. }
  739. @media only screen and (max-width: 1200px) {
  740. .ui.menu.new-menu {
  741. overflow-x: auto !important;
  742. justify-content: left !important;
  743. padding-bottom: 5px;
  744. }
  745. .ui.menu.new-menu::-webkit-scrollbar {
  746. height: 8px;
  747. display: none;
  748. }
  749. .ui.menu.new-menu:hover::-webkit-scrollbar {
  750. display: block;
  751. }
  752. .ui.menu.new-menu::-webkit-scrollbar-track {
  753. background: rgba(0, 0, 0, .01);
  754. }
  755. .ui.menu.new-menu::-webkit-scrollbar-thumb {
  756. background: rgba(0, 0, 0, .2);
  757. }
  758. .ui.menu.new-menu:after {
  759. position: absolute;
  760. margin-top: -15px;
  761. display: block;
  762. background-image: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1) 100%);
  763. content: ' ';
  764. right: 0;
  765. height: 53px;
  766. z-index: 1000;
  767. width: 60px;
  768. clear: none;
  769. visibility: visible;
  770. }
  771. .ui.menu.new-menu a.item:last-child {
  772. padding-right: 30px !important;
  773. }
  774. }
  775. [v-cloak] {
  776. display: none !important;
  777. }
  778. .repos-search {
  779. padding-bottom: 0 !important;
  780. }
  781. .repos-filter {
  782. margin-top: 0 !important;
  783. border-bottom-width: 0 !important;
  784. margin-bottom: 2px !important;
  785. }
  786. #user-heatmap {
  787. width: 107%; // Fixes newest contributions not showing
  788. text-align: center;
  789. svg:not(:root) {
  790. overflow: inherit;
  791. padding: 0 !important;
  792. }
  793. @media only screen and (max-width: 1200px) {
  794. & {
  795. display: none;
  796. }
  797. }
  798. .total-contributions {
  799. text-align: left;
  800. font-weight: 500;
  801. margin-top: 0;
  802. }
  803. }
  804. .heatmap-color-0 {
  805. background-color: #f4f4f4;
  806. }
  807. .heatmap-color-1 {
  808. background-color: #d8efbf;
  809. }
  810. .heatmap-color-2 {
  811. background-color: #9fdb81;
  812. }
  813. .heatmap-color-3 {
  814. background-color: #66c74b;
  815. }
  816. .heatmap-color-4 {
  817. background-color: #609926;
  818. }
  819. .heatmap-color-5 {
  820. background-color: #025900;
  821. }
  822. .activity-bar-graph {
  823. background-color: #6cc644;
  824. color: #000000;
  825. }
  826. .activity-bar-graph-alt {
  827. color: #000000;
  828. }
  829. .archived-icon {
  830. color: lighten(#000000, 70%) !important;
  831. }
  832. .oauth2-authorize-application-box {
  833. margin-top: 3em !important;
  834. }
  835. /* Tab color tweaks */
  836. .ui.tabular.menu .item {
  837. color: rgba(0, 0, 0, .5);
  838. }
  839. .ui.tabular.menu .item:hover {
  840. color: rgba(0, 0, 0, .8);
  841. }
  842. .ui.tabular.menu .item.active {
  843. color: rgba(0, 0, 0, .9);
  844. }
  845. /* multiple radio or checkboxes as inline element */
  846. .inline-grouped-list {
  847. display: inline-block;
  848. vertical-align: top;
  849. > .ui {
  850. display: block;
  851. margin-top: 5px;
  852. margin-bottom: 10px;
  853. &:first-child {
  854. margin-top: 1px;
  855. }
  856. }
  857. }
  858. i.icons .icon:first-child {
  859. margin-right: 0;
  860. }
  861. i.icon.centerlock {
  862. top: 1.45em;
  863. }
  864. .ui.label {
  865. padding: .3em .5em;
  866. }
  867. .ui.label > .detail .icons {
  868. margin-right: .25em;
  869. }
  870. .ui.label > .detail .icons .icon {
  871. margin-right: 0;
  872. }
  873. .lines-num {
  874. vertical-align: top;
  875. text-align: right !important;
  876. color: #999999;
  877. background: #f5f5f5;
  878. width: 1%;
  879. user-select: none;
  880. span {
  881. &:before {
  882. content: attr(data-line-number);
  883. line-height: 20px !important;
  884. padding: 0 10px;
  885. cursor: pointer;
  886. display: block;
  887. }
  888. }
  889. }
  890. .lines-num,
  891. .lines-code {
  892. padding: 0 !important;
  893. pre,
  894. ol,
  895. .hljs {
  896. background-color: white;
  897. margin: 0;
  898. padding: 0 !important;
  899. li {
  900. display: block;
  901. width: calc(100% - 1ch);
  902. margin-left: 1ch;
  903. }
  904. }
  905. }
  906. .lines-commit {
  907. vertical-align: top;
  908. color: #999999;
  909. padding: 0 !important;
  910. background: #f5f5f5;
  911. width: 1%;
  912. -moz-user-select: none;
  913. -ms-user-select: none;
  914. -webkit-user-select: none;
  915. user-select: none;
  916. .blame-info {
  917. width: 350px;
  918. max-width: 350px;
  919. display: block;
  920. user-select: none;
  921. padding: 0 0 0 10px;
  922. .blame-data {
  923. display: flex;
  924. font-family: @default-fonts;
  925. .blame-message {
  926. flex-grow: 2;
  927. overflow: hidden;
  928. white-space: nowrap;
  929. text-overflow: ellipsis;
  930. line-height: 20px;
  931. }
  932. .blame-time,
  933. .blame-avatar {
  934. flex-shrink: 0;
  935. }
  936. }
  937. }
  938. .ui.avatar.image {
  939. height: 18px;
  940. width: 18px;
  941. }
  942. }
  943. .lines-num,
  944. .lines-code,
  945. .lines-commit {
  946. .bottom-line {
  947. border-bottom: 1px solid #eaecef;
  948. }
  949. }
  950. .code-view {
  951. overflow: auto;
  952. overflow-x: auto;
  953. overflow-y: hidden;
  954. &.has-context-menu {
  955. overflow: visible;
  956. overflow-x: visible;
  957. overflow-y: visible;
  958. }
  959. *:not(.fa):not(.svg):not(.icon) {
  960. font-size: 12px;
  961. font-family: @monospaced-fonts, monospace;
  962. line-height: 20px;
  963. }
  964. table {
  965. width: 100%;
  966. }
  967. .lines-code .active {
  968. background: #fff6af;
  969. }
  970. }
  971. .octicon-tiny {
  972. font-size: .85714286rem;
  973. }
  974. .ui.basic.blue.button,
  975. .ui.basic.blue.buttons .button {
  976. box-shadow: inset 0 0 0 1px #1678c2 !important;
  977. color: #1678c2 !important;
  978. }
  979. .ui.label > img {
  980. width: auto !important;
  981. vertical-align: middle;
  982. height: 2.1666em !important;
  983. }
  984. .svg {
  985. span.green & {
  986. color: #21ba45;
  987. }
  988. span.red & {
  989. color: #db2828;
  990. }
  991. span.purple & {
  992. color: #a333c8;
  993. }
  994. }
  995. .ui.popup .ui.label {
  996. margin-bottom: .4em;
  997. }
  998. .color-icon {
  999. margin-right: .5em;
  1000. margin-left: .5em;
  1001. display: inline-block;
  1002. border: 0 solid rgba(0, 0, 0, .2);
  1003. border-radius: 100%;
  1004. height: 14px;
  1005. width: 14px;
  1006. position: relative;
  1007. top: 2px;
  1008. }
  1009. .ui.label > .color-icon {
  1010. margin-left: 0;
  1011. }
  1012. .invisible {
  1013. visibility: hidden;
  1014. }
  1015. /* https://github.com/go-gitea/gitea/issues/10210 */
  1016. .ui.attached.segment ~ .ui.top.attached.header {
  1017. margin-top: 1rem;
  1018. }
  1019. /* limit width of all direct dropdown menu children */
  1020. /* https://github.com/go-gitea/gitea/pull/10835 */
  1021. .dropdown:not(.selection) > .menu:not(.review-box) > * {
  1022. max-width: 300px;
  1023. overflow-x: hidden;
  1024. text-overflow: ellipsis;
  1025. }
  1026. .dropdown:not(.selection) > .menu.review-box > * {
  1027. @media only screen and (max-height: 700px) {
  1028. .CodeMirror,
  1029. .CodeMirror-scroll {
  1030. min-height: 100px;
  1031. }
  1032. }
  1033. }
  1034. .text-label {
  1035. display: inline-flex !important;
  1036. align-items: center !important;
  1037. }
  1038. .text-label .color-icon {
  1039. position: static !important;
  1040. }
  1041. .emoji,
  1042. .reaction {
  1043. font-size: 1.5em;
  1044. line-height: 1.2;
  1045. font-style: normal !important;
  1046. font-weight: normal !important;
  1047. vertical-align: middle;
  1048. }
  1049. #issue-title > .emoji {
  1050. font-size: 1em;
  1051. }
  1052. .commit-summary > .emoji {
  1053. font-size: 1em;
  1054. }
  1055. .label > .emoji {
  1056. font-size: 1em;
  1057. }
  1058. .dropdown .emoji {
  1059. font-size: 1em;
  1060. }
  1061. .emoji img,
  1062. .reaction img {
  1063. border-width: 0 !important;
  1064. margin: 0 !important;
  1065. width: 1em !important;
  1066. height: 1em !important;
  1067. vertical-align: middle !important;
  1068. }