pds dash for shimaenaga.veryroundbird.house (based off of pds.witchcraft.systems)
at main 7.9 kB view raw
1/* Modern Theme for pds-dash */ 2 3:root { 4 /* Modern color palette */ 5 --primary-h: 243; 6 --link-color: hsl(var(--primary-h), 73%, 59%); 7 --link-hover-color: #4338ca; 8 --time-color: #8b5cf6; 9 --background-color: #f8fafc; 10 --header-background-color: #ffffff; 11 --content-background-color: #ffffff; 12 --text-color: #111827; 13 --text-secondary-color: #4b5563; 14 --border-color: #e2e8f0; 15 --indicator-inactive-color: #cbd5e1; 16 --indicator-active-color: #6366f1; 17 18 /* Modern shadows */ 19 --button-hover: #f3f4f6; 20} 21 22 23body { 24 margin: 0; 25 display: flex; 26 place-items: center; 27 min-width: 320px; 28 min-height: 100vh; 29 background-color: var(--background-color); 30 font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif; 31 font-size: 18px; 32 line-height: 1.5; 33 color: var(--text-color); 34 border-color: var(--border-color); 35 overflow-wrap: break-word; 36 word-break: break-word; 37 hyphens: none; 38} 39 40a { 41 font-weight: 500; 42 color: var(--link-color); 43 text-decoration: none; 44 transition: color 0.15s ease; 45} 46a:hover { 47 color: var(--link-hover-color); 48} 49 50h1 { 51 font-size: 2.5em; 52 line-height: 1.2; 53 font-weight: 700; 54} 55 56#app { 57 max-width: 1400px; 58 width: 100%; 59 margin: 0 auto; 60 padding: 0; 61 text-align: center; 62} 63 64/* Post Component */ 65#postContainer { 66 display: flex; 67 flex-direction: column; 68 border-radius: 12px; 69 border: 1px solid var(--border-color); 70 background-color: var(--content-background-color); 71 margin-bottom: 20px; 72 overflow-wrap: break-word; 73 overflow: hidden; 74 box-shadow: var(--card-shadow); 75 transition: transform 0.2s ease, box-shadow 0.2s ease; 76} 77 78#postContainer:hover { 79 transform: translateY(-2px); 80 box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05); 81} 82 83#postHeader { 84 display: flex; 85 flex-direction: row; 86 align-items: center; 87 justify-content: start; 88 background-color: var(--header-background-color); 89 padding: 12px 16px; 90 height: 60px; 91 border-bottom: 1px solid var(--border-color); 92 font-weight: 600; 93 overflow-wrap: break-word; 94} 95 96#displayName { 97 display: block; 98 color: var(--text-color); 99 font-size: 1.1em; 100 padding: 0; 101 margin: 0 0 2px 0; 102 text-overflow: ellipsis; 103 overflow: hidden; 104 white-space: nowrap; 105 width: 100%; 106 letter-spacing: -0.01em; 107} 108 109#handle { 110 display: flex; 111 align-items: center; 112 color: #6b7280; 113 font-size: 0.85em; 114 font-weight: 400; 115 padding: 0; 116 margin: 0; 117 gap: 8px; 118} 119 120#postLink { 121 color: var(--time-color); 122 font-size: 0.85em; 123 padding: 0; 124 margin: 0; 125 opacity: 0.9; 126} 127 128#postContent { 129 display: flex; 130 text-align: start; 131 flex-direction: column; 132 padding: 16px; 133 background-color: var(--content-background-color); 134 color: var(--text-color); 135 overflow-wrap: break-word; 136 white-space: pre-line; 137 line-height: 1.6; 138} 139 140#replyingText, #quotingText { 141 font-size: 0.8em; 142 margin: 0; 143 padding: 0 0 10px 0; 144 color: #6b7280; 145} 146 147#postText { 148 margin: 0 0 8px 0; 149 padding: 0; 150 overflow-wrap: break-word; 151 word-break: break-word; 152 hyphens: none; 153 font-size: 1.05em; 154} 155 156#headerText { 157 margin-left: 12px; 158 font-size: 0.9em; 159 text-align: start; 160 word-break: break-word; 161 max-width: 80%; 162 max-height: 95%; 163 overflow: hidden; 164 align-self: flex-start; 165 margin-top: auto; 166 margin-bottom: auto; 167} 168 169#carouselContainer { 170 position: relative; 171 width: 100%; 172 margin-top: 12px; 173 display: flex; 174 flex-direction: column; 175 align-items: center; 176 border-radius: 8px; 177 overflow: hidden; 178} 179 180#carouselControls { 181 display: flex; 182 justify-content: space-between; 183 align-items: center; 184 width: 100%; 185 max-width: 500px; 186 margin-top: 10px; 187} 188 189#carouselIndicators { 190 display: flex; 191 gap: 6px; 192} 193 194.indicator { 195 width: 6px; 196 height: 6px; 197 background-color: var(--indicator-inactive-color); 198 border-radius: 50%; 199 transition: background-color 0.2s ease, transform 0.2s ease; 200} 201 202.indicator.active { 203 background-color: var(--indicator-active-color); 204 transform: scale(1.3); 205} 206 207#prevBtn, 208#nextBtn { 209 background-color: var(--button-bg); 210 color: var(--text-color); 211 border: 1px solid var(--border-color); 212 width: 32px; 213 height: 32px; 214 cursor: pointer; 215 display: flex; 216 align-items: center; 217 justify-content: center; 218 border-radius: 50%; 219 transition: background-color 0.15s ease, transform 0.15s ease; 220 font-size: 16px; 221} 222 223#prevBtn:hover:not(:disabled), 224#nextBtn:hover:not(:disabled) { 225 background-color: var(--button-hover); 226 transform: scale(1.05); 227} 228 229#prevBtn:disabled, 230#nextBtn:disabled { 231 opacity: 0.4; 232 cursor: not-allowed; 233} 234 235#embedVideo { 236 width: 100%; 237 max-width: 500px; 238 margin-top: 12px; 239 align-self: center; 240 border-radius: 8px; 241 overflow: hidden; 242} 243 244#embedImages { 245 min-width: min(100%, 500px); 246 max-width: min(100%, 500px); 247 max-height: 500px; 248 object-fit: contain; 249 margin: 0; 250 border-radius: 8px; 251} 252 253/* Account Component */ 254#accountContainer { 255 display: flex; 256 text-align: start; 257 align-items: center; 258 background-color: var(--content-background-color); 259 padding: 12px; 260 margin-bottom: 15px; 261 border: 1px solid var(--border-color); 262 border-radius: 12px; 263 transition: background-color 0.15s ease; 264} 265 266#accountContainer:hover { 267 background-color: var(--hover-bg); 268} 269 270#accountName { 271 margin-left: 12px; 272 font-size: 0.95em; 273 max-width: 80%; 274 overflow: hidden; 275 text-overflow: ellipsis; 276 white-space: nowrap; 277 font-weight: 500; 278} 279 280#avatar { 281 width: 48px; 282 height: 48px; 283 margin: 0; 284 object-fit: cover; 285 border-radius: 50%; 286 border: 2px solid white; 287 box-shadow: 0 1px 3px rgba(0,0,0,0.1); 288} 289 290/* App.Svelte Layout */ 291#Content { 292 display: flex; 293 width: 100%; 294 height: 100%; 295 flex-direction: row; 296 justify-content: space-between; 297 align-items: center; 298 background-color: var(--background-color); 299 color: var(--text-color); 300 gap: 24px; 301} 302 303#Feed { 304 overflow-y: auto; 305 width: 65%; 306 height: 100vh; 307 padding-right: 16px; 308 align-self: flex-start; 309} 310 311#spacer { 312 padding: 0; 313 margin: 0; 314 height: 10vh; 315 width: 100%; 316} 317 318#Account { 319 width: 35%; 320 display: flex; 321 flex-direction: column; 322 border: 1px solid var(--border-color); 323 background-color: var(--content-background-color); 324 max-height: 80vh; 325 padding: 24px; 326 margin-left: 16px; 327 border-radius: 12px; 328 box-shadow: var(--card-shadow); 329} 330 331#accountsList { 332 display: flex; 333 flex-direction: column; 334 overflow-y: auto; 335 height: 100%; 336 width: 100%; 337 padding: 8px 0; 338 margin: 0; 339} 340 341#Header { 342 text-align: center; 343 font-size: 1.8em; 344 margin-bottom: 16px; 345 font-weight: 700; 346 background: linear-gradient(to right, var(--link-color), #8b5cf6); 347 -webkit-background-clip: text; 348 -webkit-text-fill-color: transparent; 349 background-clip: text; 350} 351 352/* Mobile Styles */ 353@media screen and (max-width: 768px) { 354 #Content { 355 flex-direction: column; 356 width: auto; 357 padding: 12px; 358 margin-top: 0; 359 } 360 361 #Account { 362 width: calc(100% - 32px); 363 padding: 16px; 364 margin-bottom: 20px; 365 margin-left: 0; 366 margin-right: 0; 367 height: auto; 368 order: -1; 369 } 370 371 #Feed { 372 width: 100%; 373 margin: 0; 374 padding: 0; 375 overflow-y: visible; 376 } 377 378 #spacer { 379 height: 5vh; 380 } 381 382 body { 383 font-size: 16px; 384 } 385 386 #postHeader { 387 padding: 10px; 388 height: auto; 389 min-height: 50px; 390 } 391} 392 393/* Scrollbar Styles */ 394::-webkit-scrollbar { 395 width: 0px; 396 background: transparent; 397 padding: 0; 398 margin: 0; 399} 400::-webkit-scrollbar-thumb { 401 background: transparent; 402 border-radius: 0; 403} 404::-webkit-scrollbar-track { 405 background: transparent; 406 border-radius: 0; 407} 408::-webkit-scrollbar-corner { 409 background: transparent; 410 border-radius: 0; 411} 412::-webkit-scrollbar-button { 413 background: transparent; 414 border-radius: 0; 415} 416 417* { 418 scrollbar-width: none; 419 scrollbar-color: transparent transparent; 420 -ms-overflow-style: none; /* IE and Edge */ 421 -webkit-overflow-scrolling: touch; 422 -webkit-scrollbar: none; /* Safari */ 423}