styles.css 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221
  1. .pcr-app .pcr-swatches > button {
  2. padding: 0;
  3. }
  4. .pickr .pcr-button {
  5. margin-right: 0;
  6. }
  7. .themed-color-wrapper > div {
  8. background: var(--background-primary);
  9. padding: 10px;
  10. display: flex;
  11. align-items: center;
  12. border-radius: 4px;
  13. }
  14. .themed-color-wrapper > div + div {
  15. margin-top: 6px;
  16. }
  17. .themed-color-wrapper button {
  18. display: block;
  19. }
  20. .themed-color-wrapper .pickr-reset > button {
  21. margin: 0 0 0 10px;
  22. padding: 9px;
  23. line-height: 1;
  24. }
  25. .themed-color-wrapper .pickr-reset > button > svg {
  26. display: block;
  27. }
  28. .style-settings-heading {
  29. cursor: pointer;
  30. margin-bottom: 18px;
  31. padding-bottom: 6px;
  32. border-bottom: 1px solid var(--background-modifier-border);
  33. }
  34. .style-settings-heading[data-level="0"] {
  35. margin-bottom: 26px;
  36. }
  37. .style-settings-container {
  38. padding-bottom: 16px;
  39. }
  40. .style-settings-heading[data-level="0"] + .style-settings-container {
  41. padding-left: 34px;
  42. }
  43. .style-settings-heading.is-collapsed {
  44. margin-bottom: 0;
  45. }
  46. .style-settings-heading.is-collapsed + .style-settings-container {
  47. display: none;
  48. }
  49. .style-settings-collapse-indicator {
  50. color: var(--text-faint);
  51. display: inline-block;
  52. margin-right: 8px;
  53. position: relative;
  54. top: -1px;
  55. }
  56. .style-settings-heading[data-level="0"]
  57. + .style-settings-container
  58. .style-settings-collapse-indicator {
  59. margin-left: -17px;
  60. }
  61. .style-settings-collapse-indicator > svg {
  62. height: 9px;
  63. width: 9px;
  64. }
  65. .style-settings-heading.is-collapsed .style-settings-collapse-indicator > svg {
  66. transform: rotate(-90deg);
  67. }
  68. .style-settings-error {
  69. font-size: 14px;
  70. border-radius: 6px;
  71. background: rgba(var(--background-modifier-error-rgb), 0.2);
  72. color: var(--text-error);
  73. padding: 10px;
  74. margin-bottom: 1rem;
  75. }
  76. .style-settings-error-name {
  77. font-weight: bold;
  78. margin-bottom: 5px;
  79. }
  80. .style-settings-error-desc {
  81. white-space: pre;
  82. }
  83. .style-settings-empty {
  84. font-size: 14px;
  85. background: var(--background-secondary);
  86. padding: 10px;
  87. }
  88. .style-settings-empty-name {
  89. font-weight: bold;
  90. margin-bottom: 5px;
  91. }
  92. .style-settings-import-input {
  93. width: 0.1px;
  94. height: 0.1px;
  95. opacity: 0;
  96. overflow: hidden;
  97. position: absolute;
  98. z-index: -1;
  99. }
  100. .style-settings-import-label {
  101. cursor: pointer;
  102. color: var(--text-accent);
  103. text-decoration: underline;
  104. }
  105. .style-settings-import-label:hover {
  106. color: var(--text-accent-hover);
  107. }
  108. .style-settings-export,
  109. .style-settings-import {
  110. display: inline-block;
  111. margin-right: 10px;
  112. }
  113. .style-settings-copy,
  114. .style-settings-download {
  115. position: relative;
  116. display: inline-block;
  117. margin-left: 10px;
  118. }
  119. .style-settings-copy:before {
  120. color: var(--interactive-success);
  121. content: "✓";
  122. position: absolute;
  123. left: -18px;
  124. font-weight: bold;
  125. opacity: 0;
  126. transition: 150ms opacity ease-in-out;
  127. }
  128. .style-settings-copy.success:before {
  129. opacity: 1;
  130. }
  131. .modal-style-settings {
  132. height: 70vh;
  133. display: flex;
  134. flex-direction: column;
  135. }
  136. .modal-style-settings .modal-content {
  137. flex-grow: 1;
  138. margin: 0;
  139. display: flex;
  140. flex-direction: column;
  141. }
  142. .modal-style-settings textarea {
  143. display: block;
  144. width: 100%;
  145. height: 100%;
  146. font-family: var(--font-monospace) !important;
  147. font-size: 12px;
  148. white-space: pre;
  149. overflow-wrap: normal;
  150. overflow-x: scroll;
  151. margin-bottom: 5px;
  152. }
  153. .modal-style-settings .setting-item {
  154. align-items: flex-start;
  155. }
  156. .modal-style-settings button {
  157. margin: 10px 0 0;
  158. }
  159. .style-settings-import-error {
  160. display: none;
  161. color: var(--text-error);
  162. }
  163. .style-settings-import-error.active {
  164. display: block;
  165. }
  166. .view-content .style-settings-container .setting-item:not(.setting-item-heading) {
  167. flex-direction: column;
  168. align-items: flex-start;
  169. }
  170. .view-content .style-settings-container .setting-item:not(.setting-item-heading) .setting-item-control {
  171. padding-top: 0.5em;
  172. }
  173. .view-content .style-settings-container .setting-item:not(.setting-item-heading) .themed-color-wrapper {
  174. display: flex;
  175. }
  176. .style-settings-ref {
  177. position: absolute;
  178. width: 0 !important;
  179. height: 0 !important;
  180. pointer-events: none;
  181. }/*! Pickr 1.8.4 MIT | https://github.com/Simonwep/pickr */
  182. .pickr{position:relative;overflow:visible;transform:translateY(0)}.pickr *{box-sizing:border-box;outline:none;border:none;-webkit-appearance:none}.pickr .pcr-button{position:relative;height:2em;width:2em;padding:0.5em;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Helvetica Neue",Arial,sans-serif;border-radius:.15em;background:url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50" stroke="%2342445A" stroke-width="5px" stroke-linecap="round"><path d="M45,45L5,5"></path><path d="M45,5L5,45"></path></svg>') no-repeat center;background-size:0;transition:all 0.3s}.pickr .pcr-button::before{position:absolute;content:'';top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>');background-size:.5em;border-radius:.15em;z-index:-1}.pickr .pcr-button::before{z-index:initial}.pickr .pcr-button::after{position:absolute;content:'';top:0;left:0;height:100%;width:100%;transition:background 0.3s;background:var(--pcr-color);border-radius:.15em}.pickr .pcr-button.clear{background-size:70%}.pickr .pcr-button.clear::before{opacity:0}.pickr .pcr-button.clear:focus{box-shadow:0 0 0 1px rgba(255,255,255,0.85),0 0 0 3px var(--pcr-color)}.pickr .pcr-button.disabled{cursor:not-allowed}.pickr *,.pcr-app *{box-sizing:border-box;outline:none;border:none;-webkit-appearance:none}.pickr input:focus,.pickr input.pcr-active,.pickr button:focus,.pickr button.pcr-active,.pcr-app input:focus,.pcr-app input.pcr-active,.pcr-app button:focus,.pcr-app button.pcr-active{box-shadow:0 0 0 1px rgba(255,255,255,0.85),0 0 0 3px var(--pcr-color)}.pickr .pcr-palette,.pickr .pcr-slider,.pcr-app .pcr-palette,.pcr-app .pcr-slider{transition:box-shadow 0.3s}.pickr .pcr-palette:focus,.pickr .pcr-slider:focus,.pcr-app .pcr-palette:focus,.pcr-app .pcr-slider:focus{box-shadow:0 0 0 1px rgba(255,255,255,0.85),0 0 0 3px rgba(0,0,0,0.25)}.pcr-app{position:fixed;display:flex;flex-direction:column;z-index:10000;border-radius:0.1em;background:#fff;opacity:0;visibility:hidden;transition:opacity 0.3s, visibility 0s 0.3s;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Helvetica Neue",Arial,sans-serif;box-shadow:0 0.15em 1.5em 0 rgba(0,0,0,0.1),0 0 1em 0 rgba(0,0,0,0.03);left:0;top:0}.pcr-app.visible{transition:opacity 0.3s;visibility:visible;opacity:1}.pcr-app .pcr-swatches{display:flex;flex-wrap:wrap;margin-top:0.75em}.pcr-app .pcr-swatches.pcr-last{margin:0}@supports (display: grid){.pcr-app .pcr-swatches{display:grid;align-items:center;grid-template-columns:repeat(auto-fit, 1.75em)}}.pcr-app .pcr-swatches>button{font-size:1em;position:relative;width:calc(1.75em - 5px);height:calc(1.75em - 5px);border-radius:0.15em;cursor:pointer;margin:2.5px;flex-shrink:0;justify-self:center;transition:all 0.15s;overflow:hidden;background:transparent;z-index:1}.pcr-app .pcr-swatches>button::before{position:absolute;content:'';top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>');background-size:6px;border-radius:.15em;z-index:-1}.pcr-app .pcr-swatches>button::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:var(--pcr-color);border:1px solid rgba(0,0,0,0.05);border-radius:0.15em;box-sizing:border-box}.pcr-app .pcr-swatches>button:hover{filter:brightness(1.05)}.pcr-app .pcr-swatches>button:not(.pcr-active){box-shadow:none}.pcr-app .pcr-interaction{display:flex;flex-wrap:wrap;align-items:center;margin:0 -0.2em 0 -0.2em}.pcr-app .pcr-interaction>*{margin:0 0.2em}.pcr-app .pcr-interaction input{letter-spacing:0.07em;font-size:0.75em;text-align:center;cursor:pointer;color:#75797e;background:#f1f3f4;border-radius:.15em;transition:all 0.15s;padding:0.45em 0.5em;margin-top:0.75em}.pcr-app .pcr-interaction input:hover{filter:brightness(0.975)}.pcr-app .pcr-interaction input:focus{box-shadow:0 0 0 1px rgba(255,255,255,0.85),0 0 0 3px rgba(66,133,244,0.75)}.pcr-app .pcr-interaction .pcr-result{color:#75797e;text-align:left;flex:1 1 8em;min-width:8em;transition:all 0.2s;border-radius:.15em;background:#f1f3f4;cursor:text}.pcr-app .pcr-interaction .pcr-result::-moz-selection{background:#4285f4;color:#fff}.pcr-app .pcr-interaction .pcr-result::selection{background:#4285f4;color:#fff}.pcr-app .pcr-interaction .pcr-type.active{color:#fff;background:#4285f4}.pcr-app .pcr-interaction .pcr-save,.pcr-app .pcr-interaction .pcr-cancel,.pcr-app .pcr-interaction .pcr-clear{color:#fff;width:auto}.pcr-app .pcr-interaction .pcr-save,.pcr-app .pcr-interaction .pcr-cancel,.pcr-app .pcr-interaction .pcr-clear{color:#fff}.pcr-app .pcr-interaction .pcr-save:hover,.pcr-app .pcr-interaction .pcr-cancel:hover,.pcr-app .pcr-interaction .pcr-clear:hover{filter:brightness(0.925)}.pcr-app .pcr-interaction .pcr-save{background:#4285f4}.pcr-app .pcr-interaction .pcr-clear,.pcr-app .pcr-interaction .pcr-cancel{background:#f44250}.pcr-app .pcr-interaction .pcr-clear:focus,.pcr-app .pcr-interaction .pcr-cancel:focus{box-shadow:0 0 0 1px rgba(255,255,255,0.85),0 0 0 3px rgba(244,66,80,0.75)}.pcr-app .pcr-selection .pcr-picker{position:absolute;height:18px;width:18px;border:2px solid #fff;border-radius:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.pcr-app .pcr-selection .pcr-color-palette,.pcr-app .pcr-selection .pcr-color-chooser,.pcr-app .pcr-selection .pcr-color-opacity{position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-direction:column;cursor:grab;cursor:-webkit-grab}.pcr-app .pcr-selection .pcr-color-palette:active,.pcr-app .pcr-selection .pcr-color-chooser:active,.pcr-app .pcr-selection .pcr-color-opacity:active{cursor:grabbing;cursor:-webkit-grabbing}.pcr-app[data-theme='nano']{width:14.25em;max-width:95vw}.pcr-app[data-theme='nano'] .pcr-swatches{margin-top:.6em;padding:0 .6em}.pcr-app[data-theme='nano'] .pcr-interaction{padding:0 .6em .6em .6em}.pcr-app[data-theme='nano'] .pcr-selection{display:grid;grid-gap:.6em;grid-template-columns:1fr 4fr;grid-template-rows:5fr auto auto;align-items:center;height:10.5em;width:100%;align-self:flex-start}.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-preview{grid-area:2 / 1 / 4 / 1;height:100%;width:100%;display:flex;flex-direction:row;justify-content:center;margin-left:.6em}.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-preview .pcr-last-color{display:none}.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-preview .pcr-current-color{position:relative;background:var(--pcr-color);width:2em;height:2em;border-radius:50em;overflow:hidden}.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-preview .pcr-current-color::before{position:absolute;content:'';top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>');background-size:.5em;border-radius:.15em;z-index:-1}.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-palette{grid-area:1 / 1 / 2 / 3;width:100%;height:100%;z-index:1}.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-palette .pcr-palette{border-radius:.15em;width:100%;height:100%}.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-palette .pcr-palette::before{position:absolute;content:'';top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>');background-size:.5em;border-radius:.15em;z-index:-1}.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-chooser{grid-area:2 / 2 / 2 / 2}.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-opacity{grid-area:3 / 2 / 3 / 2}.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-chooser,.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-opacity{height:0.5em;margin:0 .6em}.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-chooser .pcr-picker,.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-opacity .pcr-picker{top:50%;transform:translateY(-50%)}.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-chooser .pcr-slider,.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-opacity .pcr-slider{flex-grow:1;border-radius:50em}.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-chooser .pcr-slider{background:linear-gradient(to right, red, #ff0, lime, cyan, blue, #f0f, red)}.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-opacity .pcr-slider{background:linear-gradient(to right, transparent, black),url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>');background-size:100%, 0.25em}