list.css 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297
  1. /* Common styles for List Pages (Middle Column) */
  2. /* Auto-hide scrollbar (shown only on scroll/hover via parent) */
  3. html, body {
  4. scrollbar-width: none; /* Firefox (hidden by default) */
  5. -ms-overflow-style: none; /* IE/old Edge */
  6. }
  7. html::-webkit-scrollbar,
  8. body::-webkit-scrollbar {
  9. width: 0 !important;
  10. height: 0 !important;
  11. }
  12. /* Some list pages may scroll a nested container; hide vertical scrollbars by default */
  13. *::-webkit-scrollbar:vertical {
  14. width: 0 !important;
  15. }
  16. /* Shown when scrolling (class is toggled by doc/index.html) */
  17. html.scrolling,
  18. body.scrolling {
  19. scrollbar-width: thin; /* Firefox */
  20. scrollbar-color: rgba(0, 0, 0, 0.9) transparent;
  21. }
  22. html.scrolling::-webkit-scrollbar,
  23. body.scrolling::-webkit-scrollbar {
  24. width: 6px !important;
  25. height: 6px !important;
  26. }
  27. html.scrolling::-webkit-scrollbar-track,
  28. body.scrolling::-webkit-scrollbar-track {
  29. background: transparent;
  30. }
  31. html.scrolling::-webkit-scrollbar-thumb,
  32. body.scrolling::-webkit-scrollbar-thumb {
  33. background: rgba(0, 0, 0, 0.95) !important;
  34. border-radius: 999px;
  35. }
  36. html.scrolling::-webkit-scrollbar-thumb:hover,
  37. body.scrolling::-webkit-scrollbar-thumb:hover {
  38. background: rgba(0, 0, 0, 1);
  39. }
  40. /* Show vertical scrollbars (narrow + black) for any scrolled container while scrolling */
  41. html.scrolling *::-webkit-scrollbar:vertical,
  42. body.scrolling *::-webkit-scrollbar:vertical {
  43. width: 6px !important;
  44. }
  45. html.scrolling *::-webkit-scrollbar-thumb,
  46. body.scrolling *::-webkit-scrollbar-thumb {
  47. background: rgba(0, 0, 0, 0.95) !important;
  48. border-radius: 999px;
  49. }
  50. html.scrolling *::-webkit-scrollbar-track,
  51. body.scrolling *::-webkit-scrollbar-track {
  52. background: transparent !important;
  53. }
  54. body {
  55. padding: 20px;
  56. display: block;
  57. background-color: transparent;
  58. font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  59. }
  60. /* Header & Search */
  61. .search-header {
  62. margin-bottom: 40px;
  63. }
  64. .search-title {
  65. font-size: 14px;
  66. font-weight: 600;
  67. color: #888;
  68. margin-bottom: 20px;
  69. }
  70. .search-input-container {
  71. position: relative;
  72. width: 100%;
  73. }
  74. .search-input {
  75. width: 100%;
  76. background: #1a1a1a;
  77. border: 1px solid #333;
  78. color: #fff;
  79. padding: 12px 40px;
  80. border-radius: 6px;
  81. font-size: 14px;
  82. box-sizing: border-box;
  83. outline: none;
  84. transition: border-color 0.2s;
  85. }
  86. .search-input:focus {
  87. border-color: var(--orange, #FF8F42);
  88. }
  89. .search-icon {
  90. position: absolute;
  91. left: 15px;
  92. top: 50%;
  93. transform: translateY(-50%);
  94. width: 14px;
  95. height: 14px;
  96. border: 2px solid #666;
  97. border-radius: 50%;
  98. box-sizing: border-box;
  99. }
  100. .search-icon:after {
  101. content: '';
  102. position: absolute;
  103. top: 8px; /* adjusted for box-sizing */
  104. left: 8px;
  105. width: 4px;
  106. height: 2px;
  107. background: #666;
  108. transform: rotate(45deg);
  109. }
  110. /* Grid Sections */
  111. .grid-section {
  112. margin-bottom: 40px;
  113. }
  114. .section-title {
  115. font-size: 14px;
  116. color: #888;
  117. margin-bottom: 15px;
  118. font-weight: 500;
  119. }
  120. /* Card Grid */
  121. .card-grid {
  122. display: grid;
  123. /* Default to single column per screenshot reference for lists, but allow grid if needed */
  124. grid-template-columns: 1fr;
  125. gap: 30px; /* Explicit vertical spacing */
  126. }
  127. /* Cards */
  128. .card {
  129. background: rgba(26, 26, 26, 0.78);
  130. border-radius: 8px;
  131. padding: 20px;
  132. display: flex;
  133. flex-direction: column;
  134. cursor: pointer;
  135. transition: background 0.2s, border-color 0.2s, box-shadow 0.2s;
  136. position: relative;
  137. min-height: 80px;
  138. justify-content: space-between;
  139. border: 1px solid #303033;
  140. overflow: hidden;
  141. }
  142. .card::before {
  143. content: '';
  144. position: absolute;
  145. left: 0;
  146. right: 0;
  147. top: 0;
  148. height: 1px;
  149. background: linear-gradient(90deg, transparent, rgba(13, 255, 0, 0.22), transparent);
  150. opacity: 0.55;
  151. pointer-events: none;
  152. }
  153. .card:hover {
  154. background: rgba(34, 34, 34, 0.82);
  155. border-color: rgba(255, 159, 67, 0.28);
  156. box-shadow: 0 6px 18px rgba(0, 0, 0, 0.35);
  157. }
  158. .card.active {
  159. border-color: var(--orange, #FF8F42);
  160. background: linear-gradient(45deg, rgba(255, 159, 67, 0.08), rgba(34, 34, 34, 0.88), rgba(255, 159, 67, 0.06));
  161. box-shadow: 0 0 0 1px rgba(255, 159, 67, 0.06), 0 10px 26px rgba(0, 0, 0, 0.35);
  162. }
  163. .card-footer {
  164. margin-top: auto; /* Push to bottom if flex column */
  165. padding-top: 15px;
  166. font-size: 12px;
  167. color: #ccc;
  168. font-weight: 500;
  169. text-align: left;
  170. }
  171. /* Common Card Visuals */
  172. .card-large-icon {
  173. font-size: 32px;
  174. color: #444;
  175. display: flex;
  176. justify-content: center;
  177. align-items: center;
  178. height: 50px;
  179. background: #222;
  180. border-radius: 4px;
  181. margin-bottom: 10px;
  182. font-family: monospace;
  183. font-weight: bold;
  184. }
  185. .tag {
  186. font-size: 10px;
  187. background: #333;
  188. padding: 2px 4px;
  189. border-radius: 2px;
  190. color: #888;
  191. margin-left: 5px;
  192. display: inline-block;
  193. }
  194. /* Previews (Tween types etc) */
  195. .preview-box { width: 40px; height: 40px; background: #555; border-radius: 4px; }
  196. .preview-colors { display: flex; gap: 8px; }
  197. .color-dot { width: 20px; height: 20px; border-radius: 50%; background: #555; }
  198. .preview-vars { display: flex; gap: 10px; }
  199. .var-dot { width: 14px; height: 14px; border-radius: 2px; background: #555; }
  200. .preview-circle {
  201. width: 40px; height: 40px; border-radius: 50%;
  202. border: 2px solid #555; position: relative;
  203. display: flex; align-items: center; justify-content: center;
  204. box-sizing: border-box;
  205. }
  206. .preview-circle:after {
  207. content: ''; width: 2px; height: 14px; background: #555;
  208. position: absolute; top: 4px;
  209. }
  210. /* --- Added from recent update (restored) --- */
  211. /* New Icon Styles */
  212. .icon-stack {
  213. display: flex;
  214. flex-direction: column;
  215. gap: 4px;
  216. }
  217. .icon-square {
  218. width: 14px;
  219. height: 14px;
  220. background: #444; /* Default inactive */
  221. border-radius: 2px;
  222. }
  223. .card:hover .icon-square {
  224. background: #555;
  225. }
  226. .card.active .icon-square {
  227. background: #666; /* or lighter */
  228. }
  229. /* Header Card Specifics */
  230. .header-card {
  231. height: 100px;
  232. background: linear-gradient(135deg, rgba(42, 37, 28, 0.92), rgba(22, 22, 22, 0.92));
  233. border: 1px solid rgba(255, 159, 67, 0.18);
  234. border-radius: 8px;
  235. position: relative;
  236. cursor: pointer;
  237. overflow: hidden;
  238. transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;
  239. }
  240. .header-card.active {
  241. border-color: var(--orange, #FF8F42);
  242. box-shadow: 0 0 0 1px rgba(255, 159, 67, 0.08), 0 14px 30px rgba(0, 0, 0, 0.35);
  243. }
  244. .header-card:hover {
  245. border-color: rgba(255, 159, 67, 0.35);
  246. box-shadow: 0 10px 26px rgba(0, 0, 0, 0.35);
  247. }
  248. .header-dots {
  249. position: absolute;
  250. top: 0; left: 0; right: 0; bottom: 0;
  251. background-image: radial-gradient(#4a3b2a 1px, transparent 1px);
  252. background-size: 8px 8px;
  253. opacity: 0.5;
  254. }
  255. .header-title {
  256. position: absolute;
  257. top: 20px;
  258. left: 20px;
  259. color: var(--orange, #FF8F42);
  260. font-size: 14px;
  261. font-weight: 600;
  262. }