overrides.css 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552
  1. /*
  2. // Copyright (C) 2014 The Syncthing Authors.
  3. //
  4. // This Source Code Form is subject to the terms of the Mozilla Public
  5. // License, v. 2.0. If a copy of the MPL was not distributed with this file,
  6. // You can obtain one at https://mozilla.org/MPL/2.0/.
  7. */
  8. body {
  9. font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  10. overflow-y: scroll;
  11. }
  12. h1, h2, h3, h4, h5 {
  13. font-family: "Raleway", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  14. line-height: 1.25;
  15. }
  16. ul+h5 {
  17. margin-top: 1.5em;
  18. }
  19. .content {
  20. margin-bottom: 50px;
  21. }
  22. .panel-progress {
  23. height: 3px;
  24. left: 0;
  25. position: absolute;
  26. top: 0;
  27. display: block;
  28. }
  29. .checkbox {
  30. margin-top: 0px;
  31. }
  32. .checkbox input[type="checkbox"], .radio input[type="radio"] {
  33. float: none; /* issue #1197 */
  34. }
  35. #advancedAccordion input.form-control[type="checkbox"] {
  36. box-shadow: none;
  37. margin: 0;
  38. width: auto;
  39. }
  40. .popover {
  41. max-width: none;
  42. min-width: 250px;
  43. }
  44. .tooltip {
  45. word-wrap:break-word;
  46. }
  47. .text-monospace {
  48. font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
  49. }
  50. .table-condensed>thead>tr>th, .table-condensed>tbody>tr>th, .table-condensed>tfoot>tr>th, .table-condensed>thead>tr>td, .table-condensed>tbody>tr>td, .table-condensed>tfoot>tr>td {
  51. border-top: none;
  52. }
  53. .logo {
  54. margin: 0;
  55. padding: 0;
  56. top: -5px;
  57. position: relative;
  58. }
  59. .list-no-bullet {
  60. list-style-type: none;
  61. }
  62. .li-column {
  63. display: inline-block;
  64. min-width: 7em;
  65. margin-right: 1em;
  66. padding: 1px 4px;
  67. margin: 2px 2px;
  68. }
  69. .li-column span.data {
  70. margin-left: 0.5em;
  71. min-width: 10em;
  72. text-align: right;
  73. display: inline-block;
  74. }
  75. .ng-cloak {
  76. display: none !important;
  77. }
  78. .table th {
  79. white-space: nowrap;
  80. font-weight: 400;
  81. }
  82. .table td {
  83. /*padding-left: 20px !important;*/
  84. }
  85. .table td.small-data {
  86. white-space: nowrap;
  87. }
  88. /* Removing text decoration on anchor link hover pull request: #4135 */
  89. .table td.small-data span a:hover {
  90. text-decoration: none;
  91. }
  92. table.table-condensed {
  93. table-layout: fixed;
  94. }
  95. table.table-dynamic {
  96. word-wrap: break-word;
  97. word-break: break-all;
  98. }
  99. table.table-condensed td,
  100. table.table-condensed th {
  101. overflow: hidden;
  102. text-overflow: ellipsis;
  103. white-space: nowrap;
  104. }
  105. table.table-condensed td.no-overflow-ellipse {
  106. white-space: normal;
  107. }
  108. table.table-auto {
  109. table-layout: auto;
  110. }
  111. table.table-auto th {
  112. width: 1px;
  113. }
  114. table.table-auto td {
  115. max-width: 0px;
  116. }
  117. td input[type="checkbox"] {
  118. margin-top: 13px;
  119. }
  120. /* Remote Devices connection-quality indicator */
  121. .reception-0 {
  122. background: url('../../vendor/bootstrap/fonts/reception-0.svg') no-repeat;
  123. }
  124. .reception-1 {
  125. background: url('../../vendor/bootstrap/fonts/reception-1.svg') no-repeat;
  126. }
  127. .reception-2 {
  128. background: url('../../vendor/bootstrap/fonts/reception-2.svg') no-repeat;
  129. }
  130. .reception-3 {
  131. background: url('../../vendor/bootstrap/fonts/reception-3.svg') no-repeat;
  132. }
  133. .reception-4 {
  134. background: url('../../vendor/bootstrap/fonts/reception-4.svg') no-repeat;
  135. }
  136. .reception {
  137. width: 1em;
  138. height: 1em;
  139. display: inline-block;
  140. vertical-align: -10%;
  141. background-size: contain;
  142. /* Simulate same width as Fork Awesome icons. */
  143. margin-left: .14285715em;
  144. margin-right: .14285715em;
  145. }
  146. .remote-devices-panel {
  147. display: inline-block;
  148. }
  149. /* Wrap long file paths to prevent text overflow. See issue #6268. */
  150. .word-break-all {
  151. word-break: break-all;
  152. }
  153. .folder-advanced {
  154. padding: 1rem;
  155. margin-bottom: 15px;
  156. }
  157. .folder-advanced-toggle {
  158. cursor: pointer;
  159. }
  160. .folder-advanced-toggle .collapse,
  161. .folder-advanced-toggle.collapsed .expand {
  162. display: inline-block;
  163. }
  164. .folder-advanced-toggle.collapsed .collapse,
  165. .folder-advanced-toggle .expand{
  166. display: none;
  167. }
  168. li[language-select] > .dropdown-menu {
  169. column-count: 2;
  170. column-gap: 0;
  171. width: 450px;
  172. }
  173. li[language-select] > .dropdown-menu > li > a {
  174. overflow: hidden;
  175. text-overflow: ellipsis;
  176. }
  177. .nav>li{
  178. float: left;
  179. }
  180. .navbar-right {
  181. /* to align with panel */
  182. padding-right: 15px;
  183. float: right;
  184. }
  185. .panel-body .table-condensed {
  186. margin-bottom: 0;
  187. }
  188. .dl-horizontal.dl-narrow dt {
  189. width: 40px;
  190. }
  191. .dl-horizontal.dl-narrow dd {
  192. margin-left: 60px;
  193. }
  194. /**
  195. * Panel, Model and Accordion Title bars
  196. */
  197. .panel-icon {
  198. float: left;
  199. margin-right: 15px;
  200. margin-top: 0.125em;
  201. margin-bottom: 0.125em;
  202. line-height: 1;
  203. }
  204. .modal-title .panel-icon {
  205. margin-top: 0.25em;
  206. margin-bottom: 0.25em;
  207. }
  208. button.panel-heading {
  209. display: block;
  210. position: relative;
  211. width: 100%;
  212. text-align: left;
  213. border-top-width: 0;
  214. border-left-width: 0;
  215. border-right-width: 0;
  216. border-radius: 0 !important;
  217. }
  218. .panel-heading .panel-title-text {
  219. text-overflow: ellipsis;
  220. overflow: hidden;
  221. white-space: nowrap;
  222. }
  223. .panel-heading .panel-status {
  224. margin-left:15px;
  225. }
  226. identicon {
  227. width: 1em;
  228. height: 1em;
  229. line-height: 1;
  230. }
  231. .identicon {
  232. width: 1em;
  233. height: 1em;
  234. shape-rendering: crispEdges;
  235. }
  236. a.toggler {
  237. color: inherit;
  238. }
  239. a.toggler:hover {
  240. border-bottom: 1px dashed;
  241. text-decoration: none;
  242. }
  243. /**
  244. * Panel padding decrease
  245. */
  246. .panel-collapse .panel-body {
  247. padding: 5px;
  248. }
  249. /**
  250. * Progress bars with centered text
  251. */
  252. .progress {
  253. margin-bottom: 0px;
  254. position: relative;
  255. }
  256. .progress span.frontal {
  257. text-align: center;
  258. position: absolute;
  259. display: block;
  260. width: 100%;
  261. }
  262. .three-columns {
  263. -webkit-column-count: 3;
  264. -moz-column-count: 3;
  265. column-count: 3;
  266. }
  267. .two-columns {
  268. -webkit-column-count: 2;
  269. -moz-column-count: 2;
  270. column-count: 2;
  271. }
  272. ul.three-columns li, ul.two-columns li {
  273. padding-left: 0.5em;
  274. text-indent: -0.5em;
  275. }
  276. .navbar-fixed-bottom {
  277. z-index: 980;
  278. }
  279. /*
  280. * Restore Versions tweaks
  281. */
  282. #restoreTree-container {
  283. overflow-y: scroll;
  284. resize: vertical;
  285. /* Limit height to prevent vertical screen overflow. */
  286. max-height: calc(100vh - 390px);
  287. /* Always fit at least one folder with dropdown open. */
  288. min-height: 136px;
  289. }
  290. @media (min-width: 768px) {
  291. #restoreTree-container {
  292. max-height: calc(100vh - 401px);
  293. }
  294. }
  295. @media (min-width: 992px) {
  296. #restoreTree-container {
  297. max-height: calc(100vh - 333px);
  298. }
  299. }
  300. /* Ignore fixed height when manually resized. */
  301. #restoreTree-container[style*="height"] {
  302. max-height: none;
  303. }
  304. /* Remove table outline as rows have own focus style already. */
  305. #restoreTree:focus {
  306. outline: 0;
  307. }
  308. /* Align dropdown with title first line. */
  309. #restoreTree td + td {
  310. padding-top: 4px;
  311. vertical-align: top;
  312. }
  313. /* Reduce space between toggle and menu on mobile. */
  314. #restoreTree .dropdown-toggle {
  315. margin-bottom: 0;
  316. }
  317. /* Change direction to remain on screen on mobile. */
  318. #restoreTree .dropdown-menu {
  319. left: auto;
  320. right: 0;
  321. }
  322. /* Ensure maximum space for filtering and date range. */
  323. #restoreVersions .form-group,
  324. #restoreVersions .form-control {
  325. width: 100%;
  326. }
  327. @media (max-width: 768px) {
  328. /* Layout after the normal contents, as this is when the footer switches
  329. to a vertical layout. */
  330. body {
  331. padding-bottom: 0px;
  332. }
  333. .navbar-brand {
  334. margin: 3.25px -15px;
  335. }
  336. .navbar-nav .open .dropdown-menu {
  337. position: absolute;
  338. left: auto;
  339. right: 0;
  340. background-color: #ffffff;
  341. border: 1px solid #cccccc;
  342. border: 1px solid rgba(0, 0, 0, 0.15);
  343. -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  344. box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  345. border-radius: 2px;
  346. }
  347. li[language-select] {
  348. position: static !important;
  349. }
  350. li[language-select] > .dropdown-menu {
  351. column-count: auto;
  352. margin-left: 15px;
  353. margin-right: 15px;
  354. margin-top: -12px !important;
  355. max-width: 450px;
  356. overflow-y: scroll;
  357. /* height of 5.5 elements + negative margin-top */
  358. height: 276px;
  359. }
  360. .two-columns {
  361. -webkit-column-count: 1;
  362. -moz-column-count: 1;
  363. column-count: 1;
  364. }
  365. }
  366. @media (max-width:479px) {
  367. nav .dropdown-toggle {
  368. font-size: 1em;
  369. }
  370. .navbar-nav .open .dropdown-menu > li > a {
  371. padding: 12px 15px 12px 25px;
  372. }
  373. }
  374. .tab-content {
  375. padding-top: 10px;
  376. }
  377. @media (max-width: 419px) {
  378. /* the selectors are build to target only the content of folder and device
  379. panels as it would "destroy" e.g. out of sync or recent changes listings */
  380. div[id^='device-'].panel-collapse table,
  381. div[id^='folder-'].panel-collapse table,
  382. div[id^='device-'].panel-collapse tbody,
  383. div[id^='folder-'].panel-collapse tbody,
  384. div[id^='device-'].panel-collapse tr,
  385. div[id^='folder-'].panel-collapse tr {
  386. display: block;
  387. }
  388. div[id^='device-'].panel-collapse th,
  389. div[id^='folder-'].panel-collapse th,
  390. div[id^='device-'].panel-collapse td,
  391. div[id^='folder-'].panel-collapse td {
  392. display: block;
  393. max-width: 100%;
  394. width: 100%;
  395. }
  396. /* All buttons, except panel headings, get bottom margin, as they
  397. won't fit beside each other anymore. Reduce footer padding to
  398. compensate for the margin. */
  399. .btn:not(.panel-heading),
  400. .btn:not(.panel-heading) + .btn:not(.panel-heading) {
  401. margin-bottom: 10px;
  402. }
  403. .panel-footer {
  404. padding-bottom: 0;
  405. }
  406. .modal-footer {
  407. padding-bottom: 5px;
  408. }
  409. table.table-auto td,
  410. table.table-auto th,
  411. table.table-condensed td,
  412. table.table-condensed th {
  413. /* for mobile phones to allow linebreaks in long repro folder/shared with
  414. * columns. */
  415. white-space: normal;
  416. }
  417. /* Move share buttons below device ID on small screens. */
  418. #shareDeviceIdButtons {
  419. display: inline-block;
  420. }
  421. }
  422. .form-horizontal .form-group {
  423. margin-bottom: 5px;
  424. }
  425. .form-horizontal {
  426. margin-bottom: 10px;
  427. }
  428. /* Use the same style as Bootstrap uses for disabled <select>. */
  429. .form-control option[disabled] {
  430. background-color: #eeeeee;
  431. opacity: 1;
  432. }
  433. .checkbox[disabled] {
  434. background-color: #eeeeee;
  435. opacity: 1;
  436. margin-left: -5px;
  437. padding-left: 5px;
  438. }
  439. .checkbox[disabled] *, .checkbox[disabled] .help-block {
  440. color: #999999;
  441. cursor: not-allowed;
  442. }
  443. /* Make a "well" look more like a readonly text input when grouped with a button */
  444. .input-group .well-sm {
  445. padding-top: 6px;
  446. padding-bottom: 6px;
  447. }
  448. /* CJK languages don't use italic at all, hence don't force it on them. */
  449. html[lang|="zh"] i,
  450. html[lang="ja"] i,
  451. html[lang|="ko"] i {
  452. font-style: normal;
  453. }
  454. .select-on-click {
  455. -webkit-user-select: all;
  456. user-select: all;
  457. }