settings.css 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518
  1. .cp__settings {
  2. &-inner {
  3. @apply flex flex-col md:flex-row;
  4. > header {
  5. padding: 10px;
  6. padding-top: 0;
  7. border-bottom: 1px solid or(--ls-settings-header-border-color, --lx-gray-06, --ls-quaternary-background-color);
  8. h1 {
  9. font-size: 22px;
  10. margin: 0;
  11. }
  12. }
  13. aside {
  14. @apply bg-gray-03-alpha p-4;
  15. > ul > li {
  16. > a {
  17. @apply mb-2;
  18. > strong {
  19. font-size: 14px;
  20. font-weight: normal;
  21. padding-left: 5px;
  22. opacity: .9;
  23. }
  24. }
  25. &.active {
  26. @apply bg-black/10;
  27. }
  28. }
  29. }
  30. > article {
  31. @apply p-4 flex-1 min-h-[12rem] w-auto overflow-y-auto;
  32. @apply md:max-h-[70vh] md:w-[40rem];
  33. }
  34. > aside > .cp__settings-header,
  35. > article > .cp__settings-header {
  36. @apply h-10 py-2 flex flex-row items-center justify-start gap-2;
  37. }
  38. aside > .cp__settings-header {
  39. @apply px-2;
  40. }
  41. aside > .cp__settings-header > .ui__icon {
  42. @apply h-8 w-8 bg-gray-700/10 rounded grid place-items-center;
  43. }
  44. aside > .cp__settings-header > .ui__icon > svg {
  45. @apply h-6 w-6;
  46. }
  47. h1.cp__settings-modal-title {
  48. @apply text-2xl font-semibold lowercase;
  49. }
  50. h1.cp__settings-category-title {
  51. @apply text-xl lowercase;
  52. }
  53. h1.cp__settings-modal-title:first-letter,
  54. h1.cp__settings-category-title:first-letter {
  55. @apply uppercase;
  56. }
  57. .settings-menu {
  58. @apply p-0 m-0 mt-4;
  59. }
  60. .settings-menu-item {
  61. @apply list-none p-0 my-1.5 rounded;
  62. @apply hover:bg-black/10;
  63. &[data-id=keymap] {
  64. @apply hidden sm:block;
  65. }
  66. }
  67. .settings-menu-link {
  68. @apply px-2 py-1.5 select-none;
  69. color: var(--ls-primary-text-color);
  70. }
  71. &.no-aside {
  72. > article {
  73. padding-left: 0;
  74. }
  75. }
  76. .panel-wrap {
  77. @apply p-1;
  78. @screen sm {
  79. width: 600px;
  80. }
  81. > .it {
  82. @apply sm:grid sm:grid-cols-3 sm:gap-6;
  83. margin-bottom: 0;
  84. padding-bottom: 12px;
  85. label {
  86. min-height: 28px;
  87. line-height: 28px;
  88. display: flex;
  89. align-items: center;
  90. & + div {
  91. display: flex;
  92. align-items: center;
  93. min-height: 24px;
  94. user-select: none;
  95. .max-w-lg {
  96. width: 100%;
  97. }
  98. }
  99. }
  100. &.app-updater {
  101. padding-top: 15px;
  102. align-items: flex-start;
  103. > .wrap {
  104. display: block;
  105. .ver {
  106. position: relative;
  107. top: -2px;
  108. }
  109. }
  110. }
  111. .form-select, .form-input {
  112. width: 100%;
  113. max-width: 200px;
  114. display: inline-block;
  115. &:hover {
  116. opacity: .8;
  117. }
  118. }
  119. &:first-of-type {
  120. padding-top: 14px;
  121. }
  122. }
  123. &.is-general {
  124. > .it {
  125. margin-bottom: 8px;
  126. }
  127. }
  128. &.is-advanced {
  129. > .it {
  130. margin-bottom: 8px;
  131. }
  132. }
  133. span[role="checkbox"] {
  134. &:hover {
  135. opacity: .8;
  136. }
  137. }
  138. }
  139. .admonitionblock {
  140. p {
  141. @apply text-sm;
  142. }
  143. }
  144. .theme-modes-options {
  145. @apply flex items-center m-0 list-none;
  146. > li {
  147. @apply pr-2 m-0 opacity-90 hover:opacity-100;
  148. &:hover {
  149. cursor: pointer;
  150. }
  151. &.active {
  152. @apply opacity-100;
  153. cursor: inherit;
  154. > i {
  155. border-color: var(--ls-link-text-color);
  156. border-width: 2px;
  157. }
  158. }
  159. > i {
  160. display: block;
  161. width: 80px;
  162. height: 57px;
  163. background-color: #a4b5b6;
  164. background: url("../img/theme-modes.png") no-repeat;
  165. background-size: 355%;
  166. border-radius: 4px;
  167. overflow: hidden;
  168. border-width: 0;
  169. border-style: solid;
  170. border-color: transparent;
  171. &.mode-dark {
  172. background-position-x: -97px;
  173. }
  174. &.mode-system {
  175. background-position-x: -194px;
  176. }
  177. &.mode-dark.radix {
  178. background: url('../img/dark-theme.png') no-repeat center / cover;
  179. }
  180. &.mode-light.radix {
  181. background: url('../img/light-theme.png') no-repeat center / cover;
  182. }
  183. &.mode-system.radix {
  184. background: url('../img/system-theme.png') no-repeat center / cover;
  185. }
  186. }
  187. > strong {
  188. @apply block pr-2 pt-1.5 text-center text-xs font-medium;
  189. }
  190. }
  191. }
  192. }
  193. &-app-updater {
  194. min-height: 20px;
  195. position: relative;
  196. margin-bottom: -5px;
  197. .ctls {
  198. position: relative;
  199. &:disabled {
  200. cursor: progress;
  201. }
  202. }
  203. .update-state {
  204. padding: 6px 10px;
  205. background-color: var(--ls-quaternary-background-color);
  206. border-radius: 4px;
  207. margin-top: 10px;
  208. width: fit-content;
  209. > p {
  210. margin: 0;
  211. }
  212. .link {
  213. font-size: 16px;
  214. line-height: 1em;
  215. letter-spacing: 1px;
  216. svg {
  217. display: inline-block;
  218. position: relative;
  219. top: -1px;
  220. margin-right: 2px;
  221. }
  222. &:hover {
  223. text-decoration: underline;
  224. }
  225. }
  226. }
  227. }
  228. &-network-proxy-panel {
  229. margin: -15px;
  230. label {
  231. display: flex;
  232. align-items: center;
  233. > select {
  234. min-width: 100px;
  235. margin-left: -14px !important;
  236. padding: 4px 10px !important;
  237. }
  238. > input[disabled] {
  239. opacity: .5;
  240. }
  241. > strong {
  242. font-weight: 500;
  243. width: 60px;
  244. }
  245. }
  246. }
  247. &-files-breaking-changed {
  248. &[disabled] {
  249. opacity: 0.5;
  250. pointer-events: none;
  251. }
  252. }
  253. &-accent-colors-modal-inner {
  254. & > .it {
  255. grid-template-columns: auto;
  256. margin: -8px;
  257. }
  258. label[for=toggle_radix_theme] {
  259. @apply text-xl font-semibold opacity-90;
  260. }
  261. }
  262. }
  263. .cp__assets {
  264. &-alias-directories {
  265. @apply py-2 px-1;
  266. > ul {
  267. @apply m-0 list-none -mx-2;
  268. > li {
  269. border-top: 1px solid var(--ls-secondary-border-color);
  270. &:hover {
  271. .ext-label.is-plus {
  272. opacity: 100;
  273. }
  274. .ctrls {
  275. display: block;
  276. }
  277. }
  278. }
  279. }
  280. .ext-label {
  281. @apply rounded px-1.5 opacity-70 cursor-pointer flex items-center select-none active:opacity-50;
  282. background-color: var(--ls-secondary-border-color);
  283. color: var(--ls-secondary-text-color);
  284. &.is-del {
  285. i.ti {
  286. width: 0;
  287. overflow: hidden;
  288. opacity: .9;
  289. color: red;
  290. transition: width .3s;
  291. &:hover {
  292. opacity: 1;
  293. }
  294. }
  295. &:hover {
  296. i.ti {
  297. width: 14px;
  298. padding-left: 2px;
  299. }
  300. }
  301. }
  302. &.is-plus {
  303. background-color: var(--ls-primary-background-color);
  304. border: 1px solid var(--ls-border-color);
  305. }
  306. }
  307. .ext-input {
  308. @apply leading-none;
  309. padding: 1px 4px;
  310. width: 60px;
  311. }
  312. .cp__input-ac {
  313. width: unset;
  314. margin: 0;
  315. line-height: 1em;
  316. position: relative;
  317. overflow: visible;
  318. /*noinspection ALL*/
  319. .item-results-wrap {
  320. position: absolute;
  321. top: 24px;
  322. left: 0;
  323. z-index: 1;
  324. width: 100px;
  325. max-height: 180px;
  326. border: 1px solid var(--ls-border-color);
  327. border-radius: 4px;
  328. overflow: auto;
  329. overflow: overlay;
  330. .menu-link {
  331. padding: 4px 6px;
  332. font-size: 12px;
  333. }
  334. .ext-select-item {
  335. display: block;
  336. white-space: nowrap;
  337. }
  338. }
  339. &.is-empty-input {
  340. .item-results-wrap {
  341. display: none;
  342. }
  343. }
  344. }
  345. }
  346. &-alias-name-content {
  347. margin: -8px;
  348. > p {
  349. @apply py-1.5 text-lg px-1 my-0;
  350. strong {
  351. @apply inline-block pr-4 text-right w-40 opacity-70;
  352. }
  353. }
  354. }
  355. &-alias-ext-input {
  356. width: 80px !important;
  357. padding: 1px 4px;
  358. border: 2px solid var(--ls-secondary-border-color);
  359. font-size: 11px;
  360. border-radius: 4px;
  361. height: 22px;
  362. &:focus {
  363. border-color: var(--ls-border-color);
  364. }
  365. }
  366. }
  367. html.is-native-android,
  368. html.is-native-iphone,
  369. html.is-native-iphone-without-notch {
  370. .cp__settings-inner {
  371. > article {
  372. padding-bottom: 0;
  373. }
  374. .panel-wrap {
  375. padding-bottom: 0;
  376. }
  377. }
  378. .theme-row--swatch {
  379. @apply w-5 h-5 rounded-full flex justify-center items-center;
  380. }
  381. .theme-row--swatch-active {
  382. @apply w-5 h-5 rounded-full flex justify-center items-center;
  383. }
  384. }
  385. svg.git {
  386. margin-left: -4px;
  387. transform: scale(0.9);
  388. }
  389. svg.cmd {
  390. margin-left: -1px;
  391. }
  392. body[data-settings-tab=keymap] {
  393. .cp__settings-inner {
  394. > article {
  395. @apply p-0;
  396. > header {
  397. @apply px-4 pt-[22px] pb-2 h-auto;
  398. }
  399. }
  400. }
  401. }
  402. .ui__modal[label=accent-colors-picker] {
  403. .panel-content {
  404. @apply sm:min-w-[520px];
  405. }
  406. }
  407. .cp__accent-colors {
  408. &-list-wrap {
  409. @apply grid grid-cols-8 gap-2 max-w-[250px];
  410. &.as-modal-picker {
  411. @apply grid-cols-8 gap-3 pt-1 pb-2 ml-8 max-w-none;
  412. }
  413. }
  414. }