settings.wxss 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537
  1. .settings-section-panel {
  2. overflow: hidden;
  3. }
  4. .settings-row {
  5. display: flex;
  6. align-items: center;
  7. justify-content: space-between;
  8. gap: 18rpx;
  9. min-height: 104rpx;
  10. padding: 0 24rpx;
  11. border-top: 1rpx solid #edf2f7;
  12. box-sizing: border-box;
  13. }
  14. .settings-row:first-of-type {
  15. border-top: 0;
  16. }
  17. .settings-row-main {
  18. min-width: 0;
  19. flex: 1;
  20. }
  21. .settings-tool-row {
  22. min-height: 92rpx;
  23. }
  24. .settings-tool-row:active {
  25. opacity: 0.72;
  26. }
  27. .storage-protocol-guide-panel {
  28. padding: 24rpx;
  29. }
  30. .storage-protocol-guide-kicker {
  31. color: var(--accent-dark);
  32. font-size: 22rpx;
  33. line-height: 1.35;
  34. font-weight: 900;
  35. }
  36. .storage-protocol-guide-title {
  37. margin-top: 8rpx;
  38. color: #111827;
  39. font-size: 34rpx;
  40. line-height: 1.28;
  41. font-weight: 900;
  42. }
  43. .storage-protocol-guide-text {
  44. margin-top: 14rpx;
  45. color: #475569;
  46. font-size: 25rpx;
  47. line-height: 1.58;
  48. word-break: break-all;
  49. }
  50. .storage-protocol-guide-points {
  51. margin-top: 18rpx;
  52. }
  53. .storage-protocol-guide-point {
  54. position: relative;
  55. padding: 14rpx 0 14rpx 30rpx;
  56. border-top: 1rpx solid #edf2f7;
  57. color: #334155;
  58. font-size: 24rpx;
  59. line-height: 1.5;
  60. word-break: break-all;
  61. }
  62. .storage-protocol-guide-point::before {
  63. content: "";
  64. position: absolute;
  65. left: 4rpx;
  66. top: 28rpx;
  67. width: 10rpx;
  68. height: 10rpx;
  69. border-radius: 50%;
  70. background: var(--accent);
  71. }
  72. .storage-protocol-file-row.is-active {
  73. background: #effaf8;
  74. }
  75. .storage-protocol-file-row:active {
  76. opacity: 0.72;
  77. }
  78. .storage-protocol-file-head {
  79. display: flex;
  80. align-items: center;
  81. gap: 12rpx;
  82. }
  83. .storage-protocol-file-badge {
  84. flex: none;
  85. height: 34rpx;
  86. padding: 0 12rpx;
  87. border-radius: 999rpx;
  88. background: #e8f6f5;
  89. color: var(--accent-dark);
  90. font-size: 20rpx;
  91. line-height: 34rpx;
  92. font-weight: 900;
  93. }
  94. .storage-protocol-copy-button {
  95. flex: none;
  96. height: 50rpx;
  97. padding: 0 18rpx;
  98. border: 1rpx solid #d9edeb;
  99. border-radius: 999rpx;
  100. background: #f4fbfa;
  101. color: var(--accent-dark);
  102. font-size: 22rpx;
  103. line-height: 50rpx;
  104. font-weight: 900;
  105. }
  106. .storage-protocol-copy-button:active {
  107. opacity: 0.72;
  108. }
  109. .storage-protocol-detail-title {
  110. display: flex;
  111. align-items: center;
  112. justify-content: space-between;
  113. gap: 16rpx;
  114. }
  115. .storage-protocol-detail-name {
  116. min-width: 0;
  117. flex: 1;
  118. color: #111827;
  119. font-size: 26rpx;
  120. line-height: 1.35;
  121. font-weight: 900;
  122. word-break: break-all;
  123. }
  124. .storage-protocol-detail-role {
  125. flex: none;
  126. color: #64748b;
  127. font-size: 22rpx;
  128. line-height: 1.35;
  129. font-weight: 800;
  130. }
  131. .storage-protocol-detail-body {
  132. padding: 22rpx 24rpx 24rpx;
  133. }
  134. .storage-protocol-file-location {
  135. padding: 14rpx 16rpx;
  136. border-radius: 12rpx;
  137. background: #f8fafc;
  138. color: #0f766e;
  139. font-family: Menlo, Monaco, Consolas, monospace;
  140. font-size: 22rpx;
  141. line-height: 1.45;
  142. word-break: break-all;
  143. }
  144. .storage-protocol-copy-card {
  145. display: flex;
  146. align-items: center;
  147. justify-content: space-between;
  148. gap: 16rpx;
  149. margin-top: 16rpx;
  150. }
  151. .storage-protocol-copy-meta {
  152. min-width: 0;
  153. flex: 1;
  154. color: #64748b;
  155. font-size: 23rpx;
  156. line-height: 1.35;
  157. font-weight: 800;
  158. }
  159. .storage-protocol-copy-action {
  160. flex: none;
  161. width: auto;
  162. min-width: 170rpx;
  163. padding: 0 18rpx;
  164. }
  165. .storage-protocol-file-summary {
  166. margin-top: 18rpx;
  167. color: #334155;
  168. font-size: 25rpx;
  169. line-height: 1.55;
  170. word-break: break-all;
  171. }
  172. .storage-protocol-detail-list {
  173. margin-top: 16rpx;
  174. }
  175. .storage-protocol-detail-item {
  176. position: relative;
  177. padding: 10rpx 0 10rpx 28rpx;
  178. color: #475569;
  179. font-size: 24rpx;
  180. line-height: 1.5;
  181. word-break: break-all;
  182. }
  183. .storage-protocol-detail-item::before {
  184. content: "";
  185. position: absolute;
  186. left: 4rpx;
  187. top: 25rpx;
  188. width: 8rpx;
  189. height: 8rpx;
  190. border-radius: 50%;
  191. background: #94a3b8;
  192. }
  193. .settings-tool-main {
  194. min-width: 0;
  195. flex: 1;
  196. display: flex;
  197. align-items: center;
  198. gap: 14rpx;
  199. }
  200. .settings-tool-icon-frame {
  201. flex: none;
  202. position: relative;
  203. width: 34rpx;
  204. height: 34rpx;
  205. border-radius: 10rpx;
  206. background:
  207. radial-gradient(circle at 30% 28%, rgba(255, 255, 255, 0.26) 0%, rgba(255, 255, 255, 0.1) 24%, rgba(255, 255, 255, 0) 54%),
  208. linear-gradient(180deg, var(--icon-start, #129a91) 0%, var(--icon-end, #08746e) 100%);
  209. border: 1rpx solid rgba(255, 255, 255, 0.12);
  210. box-shadow: 0 8rpx 16rpx rgba(15, 143, 135, 0.14);
  211. overflow: hidden;
  212. box-sizing: border-box;
  213. }
  214. .settings-tool-icon-image {
  215. position: absolute;
  216. left: 6rpx;
  217. top: 6rpx;
  218. width: 22rpx;
  219. height: 22rpx;
  220. }
  221. .settings-tool-title {
  222. flex: 1;
  223. white-space: nowrap;
  224. word-break: keep-all;
  225. overflow: hidden;
  226. text-overflow: ellipsis;
  227. }
  228. .upgrade-actions {
  229. flex-wrap: wrap;
  230. justify-content: flex-end;
  231. max-width: 286rpx;
  232. row-gap: 8rpx;
  233. }
  234. .upgrade-body {
  235. padding: 8rpx 24rpx 24rpx;
  236. }
  237. .upgrade-row {
  238. display: flex;
  239. align-items: center;
  240. justify-content: space-between;
  241. gap: 20rpx;
  242. min-height: 62rpx;
  243. border-top: 1rpx solid #edf2f7;
  244. }
  245. .upgrade-row:first-child {
  246. border-top: 0;
  247. }
  248. .upgrade-row--file {
  249. display: block;
  250. min-height: 0;
  251. padding-top: 14rpx;
  252. padding-bottom: 14rpx;
  253. }
  254. .upgrade-file-head {
  255. display: flex;
  256. align-items: center;
  257. justify-content: space-between;
  258. gap: 14rpx;
  259. }
  260. .upgrade-file-meta {
  261. display: flex;
  262. align-items: center;
  263. justify-content: flex-end;
  264. gap: 10rpx;
  265. min-width: 0;
  266. flex: 1;
  267. overflow: hidden;
  268. }
  269. .upgrade-file-meta-item {
  270. flex: none;
  271. min-width: 0;
  272. white-space: nowrap;
  273. overflow: hidden;
  274. text-overflow: ellipsis;
  275. }
  276. .upgrade-file-meta-item--program {
  277. color: var(--accent-dark);
  278. font-weight: 800;
  279. }
  280. .upgrade-file-meta-item--checksum,
  281. .upgrade-file-meta-item--size {
  282. color: #64748b;
  283. }
  284. .upgrade-file-name {
  285. display: block;
  286. margin-top: 8rpx;
  287. color: #111827;
  288. font-size: 24rpx;
  289. line-height: 1.35;
  290. font-weight: 700;
  291. white-space: nowrap;
  292. overflow: hidden;
  293. text-overflow: ellipsis;
  294. }
  295. .upgrade-label {
  296. flex: none;
  297. color: #64748b;
  298. font-size: 24rpx;
  299. line-height: 1.35;
  300. }
  301. .upgrade-value {
  302. min-width: 0;
  303. flex: 1;
  304. color: #111827;
  305. font-size: 24rpx;
  306. line-height: 1.35;
  307. text-align: right;
  308. overflow: hidden;
  309. text-overflow: ellipsis;
  310. white-space: nowrap;
  311. }
  312. .upgrade-status {
  313. margin-top: 14rpx;
  314. padding: 14rpx 16rpx;
  315. border-radius: 12rpx;
  316. background: #f8fafc;
  317. color: #64748b;
  318. font-size: 23rpx;
  319. line-height: 1.45;
  320. font-weight: 700;
  321. word-break: break-all;
  322. }
  323. .upgrade-status--ready {
  324. background: #effaf8;
  325. color: var(--accent-dark);
  326. }
  327. .upgrade-progress {
  328. position: relative;
  329. height: 14rpx;
  330. margin-top: 16rpx;
  331. border-radius: 999rpx;
  332. background: #e5e7eb;
  333. overflow: hidden;
  334. }
  335. .upgrade-progress-bar {
  336. height: 100%;
  337. min-width: 0;
  338. border-radius: inherit;
  339. background: linear-gradient(90deg, #10b981 0%, #0f8f87 100%);
  340. transition: width 0.18s ease;
  341. }
  342. .theme-dark .upgrade-file-meta-item--checksum,
  343. .theme-dark .upgrade-file-meta-item--size,
  344. .theme-dark .upgrade-file-name {
  345. color: #cbd5e1;
  346. }
  347. .theme-dark .upgrade-file-meta-item--program {
  348. color: #5eead4;
  349. }
  350. .theme-dark .upgrade-progress {
  351. background: #263241;
  352. }
  353. .theme-dark .upgrade-progress-bar {
  354. background: linear-gradient(90deg, #2dd4bf 0%, #14b8a6 100%);
  355. }
  356. .settings-input-wrap {
  357. flex: none;
  358. display: flex;
  359. align-items: center;
  360. gap: 10rpx;
  361. }
  362. .settings-input-wrap--unit {
  363. position: relative;
  364. }
  365. .settings-picker-value {
  366. width: 300rpx;
  367. min-width: 300rpx;
  368. max-width: 300rpx;
  369. height: 70rpx;
  370. color: #111827;
  371. font-size: 28rpx;
  372. line-height: 70rpx;
  373. font-weight: 800;
  374. text-align: right;
  375. overflow: hidden;
  376. text-overflow: ellipsis;
  377. white-space: nowrap;
  378. box-sizing: border-box;
  379. }
  380. .settings-value-input {
  381. width: 300rpx;
  382. }
  383. .settings-value-input--hex {
  384. width: 300rpx;
  385. }
  386. .settings-value-input--unit {
  387. padding-right: 62rpx;
  388. }
  389. .settings-unit {
  390. flex: none;
  391. color: #64748b;
  392. font-size: 23rpx;
  393. line-height: 1.35;
  394. font-weight: 700;
  395. }
  396. .settings-unit--inside {
  397. position: absolute;
  398. right: 18rpx;
  399. top: 50%;
  400. transform: translateY(-50%);
  401. pointer-events: none;
  402. }
  403. .theme-dark .settings-row {
  404. border-color: #263241;
  405. }
  406. .theme-dark .storage-protocol-guide-title,
  407. .theme-dark .storage-protocol-detail-name {
  408. color: #e5e7eb;
  409. }
  410. .theme-dark .storage-protocol-guide-text,
  411. .theme-dark .storage-protocol-guide-point,
  412. .theme-dark .storage-protocol-file-summary,
  413. .theme-dark .storage-protocol-detail-item {
  414. color: #cbd5e1;
  415. }
  416. .theme-dark .storage-protocol-guide-point {
  417. border-color: #263241;
  418. }
  419. .theme-dark .storage-protocol-file-row.is-active {
  420. background: #102f2e;
  421. }
  422. .theme-dark .storage-protocol-file-badge {
  423. background: #123d3b;
  424. color: #5eead4;
  425. }
  426. .theme-dark .storage-protocol-copy-button {
  427. border-color: #174e49;
  428. background: #123d3b;
  429. color: #99f6e4;
  430. }
  431. .theme-dark .storage-protocol-detail-role {
  432. color: #94a3b8;
  433. }
  434. .theme-dark .storage-protocol-file-location {
  435. background: #111827;
  436. color: #5eead4;
  437. }
  438. .theme-dark .storage-protocol-copy-meta {
  439. color: #94a3b8;
  440. }
  441. .theme-dark .settings-unit {
  442. color: #94a3b8;
  443. }
  444. .theme-dark .settings-picker-value {
  445. color: #e5e7eb;
  446. }
  447. @media (max-width: 360px) {
  448. .settings-picker-value {
  449. width: 260rpx;
  450. min-width: 260rpx;
  451. max-width: 260rpx;
  452. }
  453. .settings-value-input {
  454. width: 260rpx;
  455. }
  456. .settings-value-input--hex {
  457. width: 260rpx;
  458. }
  459. }