| @@ -223,16 +223,61 @@ | ||
| 223 | 223 | } |
| 224 | 224 | |
| 225 | 225 | html { |
| 226 | 226 | box-sizing: border-box; |
| 227 | + color-scheme: light dark; | |
| 227 | 228 | font-size: 20px; |
| 228 | 229 | line-height: 1.5; |
| 229 | 230 | -webkit-tap-highlight-color: transparent; |
| 230 | 231 | } |
| 231 | 232 | |
| 233 | +:root { | |
| 234 | + --friends-color-background: #f7f8f9; | |
| 235 | + --friends-color-surface: #fff; | |
| 236 | + --friends-color-surface-alt: #f7f7f7; | |
| 237 | + --friends-color-surface-muted: #f8fafc; | |
| 238 | + --friends-color-border: #eee; | |
| 239 | + --friends-color-border-strong: #d6d4e8; | |
| 240 | + --friends-color-text: #48427c; | |
| 241 | + --friends-color-text-muted: #667085; | |
| 242 | + --friends-color-text-soft: #999; | |
| 243 | + --friends-color-link: #2e5bec; | |
| 244 | + --friends-color-link-hover: #1341d4; | |
| 245 | + --friends-color-link-visited: #5d80f0; | |
| 246 | + --friends-color-error: #c0392b; | |
| 247 | + --friends-color-focus: rgba(46, 91, 236, 0.2); | |
| 248 | + --friends-color-menu-hover: #dde5fc; | |
| 249 | + --friends-color-note-background: #f7f7f7; | |
| 250 | + --friends-color-info-background: #eef6ff; | |
| 251 | + --friends-color-selected-background: #edf2ff; | |
| 252 | +} | |
| 253 | + | |
| 254 | +@media (prefers-color-scheme: dark) { | |
| 255 | + :root { | |
| 256 | + --friends-color-background: #10131a; | |
| 257 | + --friends-color-surface: #171b24; | |
| 258 | + --friends-color-surface-alt: #202633; | |
| 259 | + --friends-color-surface-muted: #141821; | |
| 260 | + --friends-color-border: #2c3342; | |
| 261 | + --friends-color-border-strong: #3c465b; | |
| 262 | + --friends-color-text: #e7eaf2; | |
| 263 | + --friends-color-text-muted: #a6adbb; | |
| 264 | + --friends-color-text-soft: #8e96a6; | |
| 265 | + --friends-color-link: #8fb1ff; | |
| 266 | + --friends-color-link-hover: #b8ccff; | |
| 267 | + --friends-color-link-visited: #c4b5fd; | |
| 268 | + --friends-color-error: #ff8f8f; | |
| 269 | + --friends-color-focus: rgba(143, 177, 255, 0.28); | |
| 270 | + --friends-color-menu-hover: #22304a; | |
| 271 | + --friends-color-note-background: #202633; | |
| 272 | + --friends-color-info-background: #162438; | |
| 273 | + --friends-color-selected-background: #1c2b45; | |
| 274 | + } | |
| 275 | +} | |
| 276 | + | |
| 232 | 277 | body { |
| 233 | - background: #f7f8f9; | |
| 234 | - color: #48427c; | |
| 278 | + background: var(--friends-color-background); | |
| 279 | + color: var(--friends-color-text); | |
| 235 | 280 | font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif; |
| 236 | 281 | font-size: .8rem; |
| 237 | 282 | overflow-x: hidden; |
| 238 | 283 | text-rendering: optimizeLegibility; |
| @@ -238,23 +283,23 @@ | ||
| 238 | 283 | text-rendering: optimizeLegibility; |
| 239 | 284 | } |
| 240 | 285 | |
| 241 | 286 | a { |
| 242 | - color: #2e5bec; | |
| 287 | + color: var(--friends-color-link); | |
| 243 | 288 | outline: none; |
| 244 | 289 | text-decoration: none; |
| 245 | 290 | |
| 246 | 291 | &:focus { |
| 247 | - box-shadow: 0 0 0 .1rem rgba(46, 91, 236, 0.2); | |
| 292 | + box-shadow: 0 0 0 .1rem var(--friends-color-focus); | |
| 248 | 293 | } |
| 249 | 294 | |
| 250 | 295 | &:focus, &:hover, &:active, &.active { |
| 251 | - color: #1341d4; | |
| 296 | + color: var(--friends-color-link-hover); | |
| 252 | 297 | text-decoration: underline; |
| 253 | 298 | } |
| 254 | 299 | |
| 255 | 300 | &:visited { |
| 256 | - color: #5d80f0; | |
| 301 | + color: var(--friends-color-link-visited); | |
| 257 | 302 | } |
| 258 | 303 | } |
| 259 | 304 | |
| 260 | 305 | div { |
| @@ -304,9 +349,9 @@ | ||
| 304 | 349 | } |
| 305 | 350 | |
| 306 | 351 | mark { |
| 307 | 352 | background: #ffe9b3; |
| 308 | - color: #48427c; | |
| 353 | + color: var(--friends-color-text); | |
| 309 | 354 | border-bottom: .05rem solid #ffd470; |
| 310 | 355 | border-radius: .1rem; |
| 311 | 356 | padding: .05rem .1rem 0; |
| 312 | 357 | } |
| @@ -311,9 +356,9 @@ | ||
| 311 | 356 | padding: .05rem .1rem 0; |
| 312 | 357 | } |
| 313 | 358 | |
| 314 | 359 | blockquote { |
| 315 | - border-left: .1rem solid #eee; | |
| 360 | + border-left: .1rem solid var(--friends-color-border); | |
| 316 | 361 | margin-left: 0; |
| 317 | 362 | padding: .4rem .8rem; |
| 318 | 363 | |
| 319 | 364 | & p:last-child { |
| @@ -417,13 +462,13 @@ | ||
| 417 | 462 | } |
| 418 | 463 | |
| 419 | 464 | .form-input { |
| 420 | 465 | appearance: none; |
| 421 | - background: #fff; | |
| 466 | + background: var(--friends-color-surface); | |
| 422 | 467 | background-image: none; |
| 423 | - border: .05rem solid #d6d4e8; | |
| 468 | + border: .05rem solid var(--friends-color-border-strong); | |
| 424 | 469 | border-radius: .1rem; |
| 425 | - color: #48427c; | |
| 470 | + color: var(--friends-color-text); | |
| 426 | 471 | display: block; |
| 427 | 472 | font-size: .8rem; |
| 428 | 473 | height: 1.8rem; |
| 429 | 474 | line-height: 1.2rem; |
| @@ -434,13 +479,13 @@ | ||
| 434 | 479 | transition: background .2s, border .2s, box-shadow .2s, color .2s; |
| 435 | 480 | width: 100%; |
| 436 | 481 | |
| 437 | 482 | &:focus { |
| 438 | - box-shadow: 0 0 0 .1rem rgba(46, 91, 236, 0.2); | |
| 439 | - border-color: #2e5bec; | |
| 483 | + box-shadow: 0 0 0 .1rem var(--friends-color-focus); | |
| 484 | + border-color: var(--friends-color-link); | |
| 440 | 485 | } |
| 441 | 486 | |
| 442 | - &::placeholder { color: #d6d4e8; } | |
| 487 | + &::placeholder { color: var(--friends-color-text-soft); } | |
| 443 | 488 | &.input-sm { font-size: .7rem; height: 1.4rem; padding: .05rem .3rem; } |
| 444 | 489 | &.input-lg { font-size: .9rem; height: 2rem; padding: .35rem .6rem; } |
| 445 | 490 | &.input-inline { display: inline-block; vertical-align: middle; width: auto; } |
| 446 | 491 | &[type="file"] { height: auto; } |
| @@ -450,9 +495,9 @@ | ||
| 450 | 495 | height: auto; |
| 451 | 496 | } |
| 452 | 497 | |
| 453 | 498 | .form-input-hint { |
| 454 | - color: #d6d4e8; | |
| 499 | + color: var(--friends-color-text-soft); | |
| 455 | 500 | font-size: .7rem; |
| 456 | 501 | margin-top: .2rem; |
| 457 | 502 | } |
| 458 | 503 | |
| @@ -457,9 +502,9 @@ | ||
| 457 | 502 | } |
| 458 | 503 | |
| 459 | 504 | .form-select { |
| 460 | 505 | appearance: none; |
| 461 | - border: .05rem solid #d6d4e8; | |
| 506 | + border: .05rem solid var(--friends-color-border-strong); | |
| 462 | 507 | border-radius: .1rem; |
| 463 | 508 | color: inherit; |
| 464 | 509 | font-size: .8rem; |
| 465 | 510 | height: 1.8rem; |
| @@ -467,19 +512,19 @@ | ||
| 467 | 512 | outline: none; |
| 468 | 513 | padding: .25rem .4rem; |
| 469 | 514 | vertical-align: middle; |
| 470 | 515 | width: 100%; |
| 471 | - background: #fff; | |
| 516 | + background: var(--friends-color-surface); | |
| 472 | 517 | |
| 473 | 518 | &:focus { |
| 474 | - box-shadow: 0 0 0 .1rem rgba(46, 91, 236, 0.2); | |
| 475 | - border-color: #2e5bec; | |
| 519 | + box-shadow: 0 0 0 .1rem var(--friends-color-focus); | |
| 520 | + border-color: var(--friends-color-link); | |
| 476 | 521 | } |
| 477 | 522 | |
| 478 | 523 | &::-ms-expand { display: none; } |
| 479 | 524 | |
| 480 | 525 | &:not([multiple]):not([size]) { |
| 481 | - background: #fff url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%204%205'%3E%3Cpath%20fill='%23667189'%20d='M2%200L0%202h4zm0%205L0%203h4z'/%3E%3C/svg%3E") no-repeat right .35rem center / .4rem .5rem; | |
| 526 | + background: var(--friends-color-surface) url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%204%205'%3E%3Cpath%20fill='%23667189'%20d='M2%200L0%202h4zm0%205L0%203h4z'/%3E%3C/svg%3E") no-repeat right .35rem center / .4rem .5rem; | |
| 482 | 527 | padding-right: 1.2rem; |
| 483 | 528 | } |
| 484 | 529 | |
| 485 | 530 | &[size], &[multiple] { |
| @@ -530,10 +575,10 @@ | ||
| 530 | 575 | position: absolute; |
| 531 | 576 | width: 1px; |
| 532 | 577 | |
| 533 | 578 | &:focus + .form-icon { |
| 534 | - box-shadow: 0 0 0 .1rem rgba(46, 91, 236, 0.2); | |
| 535 | - border-color: #2e5bec; | |
| 579 | + box-shadow: 0 0 0 .1rem var(--friends-color-focus); | |
| 580 | + border-color: var(--friends-color-link); | |
| 536 | 581 | } |
| 537 | 582 | |
| 538 | 583 | &:checked + .form-icon { |
| 539 | 584 | background: #2e5bec; |
| @@ -541,9 +586,9 @@ | ||
| 541 | 586 | } |
| 542 | 587 | } |
| 543 | 588 | |
| 544 | 589 | & .form-icon { |
| 545 | - border: .05rem solid #d6d4e8; | |
| 590 | + border: .05rem solid var(--friends-color-border-strong); | |
| 546 | 591 | cursor: pointer; |
| 547 | 592 | display: inline-block; |
| 548 | 593 | position: absolute; |
| 549 | 594 | transition: background .2s, border .2s, box-shadow .2s, color .2s; |
| @@ -551,9 +596,9 @@ | ||
| 551 | 596 | } |
| 552 | 597 | |
| 553 | 598 | .form-checkbox, .form-radio { |
| 554 | 599 | & .form-icon { |
| 555 | - background: #fff; | |
| 600 | + background: var(--friends-color-surface); | |
| 556 | 601 | height: .8rem; |
| 557 | 602 | left: 0; |
| 558 | 603 | top: .3rem; |
| 559 | 604 | width: .8rem; |
| @@ -558,9 +603,9 @@ | ||
| 558 | 603 | top: .3rem; |
| 559 | 604 | width: .8rem; |
| 560 | 605 | } |
| 561 | 606 | |
| 562 | - & input:active + .form-icon { background: #f7f7f7; } | |
| 607 | + & input:active + .form-icon { background: var(--friends-color-surface-alt); } | |
| 563 | 608 | } |
| 564 | 609 | |
| 565 | 610 | .form-checkbox .form-icon { border-radius: .1rem; } |
| 566 | 611 | |
| @@ -614,9 +659,9 @@ | ||
| 614 | 659 | .form-switch { |
| 615 | 660 | padding-left: 2rem; |
| 616 | 661 | |
| 617 | 662 | & .form-icon { |
| 618 | - background: #d6d4e8; | |
| 663 | + background: var(--friends-color-border-strong); | |
| 619 | 664 | background-clip: padding-box; |
| 620 | 665 | border-radius: .45rem; |
| 621 | 666 | height: .9rem; |
| 622 | 667 | left: 0; |
| @@ -623,9 +668,9 @@ | ||
| 623 | 668 | top: .25rem; |
| 624 | 669 | width: 1.6rem; |
| 625 | 670 | |
| 626 | 671 | &::before { |
| 627 | - background: #fff; | |
| 672 | + background: var(--friends-color-surface); | |
| 628 | 673 | border-radius: 50%; |
| 629 | 674 | content: ""; |
| 630 | 675 | display: block; |
| 631 | 676 | height: .8rem; |
| @@ -637,9 +682,9 @@ | ||
| 637 | 682 | } |
| 638 | 683 | } |
| 639 | 684 | |
| 640 | 685 | & input:checked + .form-icon::before { left: 14px; } |
| 641 | - & input:active + .form-icon::before { background: white; } | |
| 686 | + & input:active + .form-icon::before { background: var(--friends-color-surface); } | |
| 642 | 687 | } |
| 643 | 688 | |
| 644 | 689 | .input-group { |
| 645 | 690 | display: flex; |
| @@ -644,10 +689,10 @@ | ||
| 644 | 689 | .input-group { |
| 645 | 690 | display: flex; |
| 646 | 691 | |
| 647 | 692 | & .input-group-addon { |
| 648 | - background: white; | |
| 649 | - border: .05rem solid #d6d4e8; | |
| 693 | + background: var(--friends-color-surface); | |
| 694 | + border: .05rem solid var(--friends-color-border-strong); | |
| 650 | 695 | border-radius: .1rem; |
| 651 | 696 | line-height: 1.2rem; |
| 652 | 697 | padding: .25rem .4rem; |
| 653 | 698 | white-space: nowrap; |
| @@ -668,17 +713,17 @@ | ||
| 668 | 713 | } |
| 669 | 714 | |
| 670 | 715 | .form-input:disabled, .form-input.disabled, |
| 671 | 716 | .form-select:disabled, .form-select.disabled { |
| 672 | - background-color: #f7f7f7; | |
| 717 | + background-color: var(--friends-color-surface-alt); | |
| 673 | 718 | cursor: not-allowed; |
| 674 | 719 | opacity: .5; |
| 675 | 720 | } |
| 676 | 721 | |
| 677 | -.form-input[readonly] { background-color: white; } | |
| 722 | +.form-input[readonly] { background-color: var(--friends-color-surface); } | |
| 678 | 723 | |
| 679 | 724 | input:disabled + .form-icon, input.disabled + .form-icon { |
| 680 | - background: #f7f7f7; | |
| 725 | + background: var(--friends-color-surface-alt); | |
| 681 | 726 | cursor: not-allowed; |
| 682 | 727 | opacity: .5; |
| 683 | 728 | } |
| 684 | 729 | |
| @@ -695,12 +740,12 @@ | ||
| 695 | 740 | ======================================================================== */ |
| 696 | 741 | |
| 697 | 742 | .btn { |
| 698 | 743 | appearance: none; |
| 699 | - background: #fff; | |
| 700 | - border: .05rem solid #2e5bec; | |
| 744 | + background: var(--friends-color-surface); | |
| 745 | + border: .05rem solid var(--friends-color-link); | |
| 701 | 746 | border-radius: .1rem; |
| 702 | - color: #2e5bec; | |
| 747 | + color: var(--friends-color-link); | |
| 703 | 748 | cursor: pointer; |
| 704 | 749 | display: inline-block; |
| 705 | 750 | font-size: .8rem; |
| 706 | 751 | height: 1.8rem; |
| @@ -713,12 +758,12 @@ | ||
| 713 | 758 | user-select: none; |
| 714 | 759 | vertical-align: middle; |
| 715 | 760 | white-space: nowrap; |
| 716 | 761 | |
| 717 | - &:focus { box-shadow: 0 0 0 .1rem rgba(46, 91, 236, 0.2); } | |
| 762 | + &:focus { box-shadow: 0 0 0 .1rem var(--friends-color-focus); } | |
| 718 | 763 | |
| 719 | 764 | &:focus, &:hover { |
| 720 | - background: #dde5fc; | |
| 765 | + background: var(--friends-color-menu-hover); | |
| 721 | 766 | border-color: #2050eb; |
| 722 | 767 | text-decoration: none; |
| 723 | 768 | } |
| 724 | 769 | |
| @@ -746,11 +791,11 @@ | ||
| 746 | 791 | |
| 747 | 792 | &.btn-link { |
| 748 | 793 | background: transparent; |
| 749 | 794 | border-color: transparent; |
| 750 | - color: #2e5bec; | |
| 795 | + color: var(--friends-color-link); | |
| 751 | 796 | |
| 752 | - &:focus, &:hover, &:active, &.active { color: #1341d4; } | |
| 797 | + &:focus, &:hover, &:active, &.active { color: var(--friends-color-link-hover); } | |
| 753 | 798 | } |
| 754 | 799 | |
| 755 | 800 | &.btn-sm { font-size: .7rem; height: 1.4rem; padding: .05rem .3rem; } |
| 756 | 801 | &.btn-lg { font-size: .9rem; height: 2rem; padding: .35rem .6rem; } |
| @@ -902,9 +947,9 @@ | ||
| 902 | 947 | left: .4rem; |
| 903 | 948 | } |
| 904 | 949 | |
| 905 | 950 | & .off-canvas-sidebar { |
| 906 | - background: white; | |
| 951 | + background: var(--friends-color-surface); | |
| 907 | 952 | bottom: 0; |
| 908 | 953 | min-width: 10rem; |
| 909 | 954 | overflow-y: auto; |
| 910 | 955 | position: fixed; |
| @@ -999,10 +1044,10 @@ | ||
| 999 | 1044 | Cards |
| 1000 | 1045 | ======================================================================== */ |
| 1001 | 1046 | |
| 1002 | 1047 | .card { |
| 1003 | - background: #fff; | |
| 1004 | - border: .05rem solid #eee; | |
| 1048 | + background: var(--friends-color-surface); | |
| 1049 | + border: .05rem solid var(--friends-color-border); | |
| 1005 | 1050 | border-radius: .1rem; |
| 1006 | 1051 | display: flex; |
| 1007 | 1052 | flex-direction: column; |
| 1008 | 1053 | |
| @@ -1061,9 +1106,9 @@ | ||
| 1061 | 1106 | ======================================================================== */ |
| 1062 | 1107 | |
| 1063 | 1108 | .chip { |
| 1064 | 1109 | align-items: center; |
| 1065 | - background: #f7f7f7; | |
| 1110 | + background: var(--friends-color-surface-alt); | |
| 1066 | 1111 | border-radius: 5rem; |
| 1067 | 1112 | display: inline-flex; |
| 1068 | 1113 | font-size: 90%; |
| 1069 | 1114 | height: 1.2rem; |
| @@ -1102,9 +1147,9 @@ | ||
| 1102 | 1147 | ======================================================================== */ |
| 1103 | 1148 | |
| 1104 | 1149 | .menu { |
| 1105 | 1150 | box-shadow: 0 .05rem .15rem rgba(62, 57, 107, 0.3); |
| 1106 | - background: #fff; | |
| 1151 | + background: var(--friends-color-surface); | |
| 1107 | 1152 | border-radius: .1rem; |
| 1108 | 1153 | list-style: none; |
| 1109 | 1154 | margin: 0; |
| 1110 | 1155 | min-width: 180px; |
| @@ -1127,10 +1172,10 @@ | ||
| 1127 | 1172 | margin: 0 -.4rem; |
| 1128 | 1173 | padding: .2rem .4rem; |
| 1129 | 1174 | text-decoration: none; |
| 1130 | 1175 | |
| 1131 | - &:focus, &:hover { background: #dde5fc; color: #2e5bec; } | |
| 1132 | - &:active, &.active { background: #dde5fc; color: #2e5bec; } | |
| 1176 | + &:focus, &:hover { background: var(--friends-color-menu-hover); color: var(--friends-color-link); } | |
| 1177 | + &:active, &.active { background: var(--friends-color-menu-hover); color: var(--friends-color-link); } | |
| 1133 | 1178 | } |
| 1134 | 1179 | |
| 1135 | 1180 | & + .menu-item { margin-top: .2rem; } |
| 1136 | 1181 | } |
| @@ -1239,15 +1284,15 @@ | ||
| 1239 | 1284 | .text-error { color: #e85600 !important; } |
| 1240 | 1285 | a.text-error:focus, a.text-error:hover { color: #cf4d00 !important; } |
| 1241 | 1286 | .text-success { color: #32b643 !important; } |
| 1242 | 1287 | .text-warning { color: #ffb700 !important; } |
| 1243 | -.text-gray { color: #d6d4e8 !important; } | |
| 1244 | -.text-dark { color: #48427c !important; } | |
| 1288 | +.text-gray { color: var(--friends-color-text-soft) !important; } | |
| 1289 | +.text-dark { color: var(--friends-color-text) !important; } | |
| 1245 | 1290 | .text-light { color: #fff !important; } |
| 1246 | 1291 | |
| 1247 | 1292 | .bg-primary { background: #2e5bec !important; color: #fff; } |
| 1248 | 1293 | .bg-dark { background: #3e396b !important; color: #fff; } |
| 1249 | -.bg-gray { background: white !important; } | |
| 1294 | +.bg-gray { background: var(--friends-color-surface) !important; } | |
| 1250 | 1295 | .bg-success { background: #32b643 !important; color: #fff; } |
| 1251 | 1296 | .bg-warning { background: #ffb700 !important; } |
| 1252 | 1297 | .bg-error { background: #e85600 !important; color: #fff; } |
| 1253 | 1298 | |
| @@ -1259,10 +1304,10 @@ | ||
| 1259 | 1304 | display: block; |
| 1260 | 1305 | position: relative; |
| 1261 | 1306 | |
| 1262 | 1307 | &[data-content]::after { |
| 1263 | - background: #fff; | |
| 1264 | - color: #d6d4e8; | |
| 1308 | + background: var(--friends-color-surface); | |
| 1309 | + color: var(--friends-color-text-soft); | |
| 1265 | 1310 | content: attr(data-content); |
| 1266 | 1311 | display: inline-block; |
| 1267 | 1312 | font-size: .7rem; |
| 1268 | 1313 | padding: 0 .4rem; |
| @@ -1270,9 +1315,9 @@ | ||
| 1270 | 1315 | } |
| 1271 | 1316 | } |
| 1272 | 1317 | |
| 1273 | 1318 | .divider { |
| 1274 | - border-top: .05rem solid #eee; | |
| 1319 | + border-top: .05rem solid var(--friends-color-border); | |
| 1275 | 1320 | height: .05rem; |
| 1276 | 1321 | margin: .4rem 0; |
| 1277 | 1322 | |
| 1278 | 1323 | &[data-content] { margin: .8rem 0; } |
| @@ -1282,9 +1327,9 @@ | ||
| 1282 | 1327 | display: block; |
| 1283 | 1328 | padding: .8rem; |
| 1284 | 1329 | |
| 1285 | 1330 | &::before { |
| 1286 | - border-left: .05rem solid #eee; | |
| 1331 | + border-left: .05rem solid var(--friends-color-border); | |
| 1287 | 1332 | bottom: .4rem; |
| 1288 | 1333 | content: ""; |
| 1289 | 1334 | display: block; |
| 1290 | 1335 | left: 50%; |
| @@ -1456,9 +1501,9 @@ | ||
| 1456 | 1501 | margin-bottom: 0; |
| 1457 | 1502 | } |
| 1458 | 1503 | |
| 1459 | 1504 | .off-canvas .off-canvas-sidebar { |
| 1460 | - background-color: #f7f8f9; | |
| 1505 | + background-color: var(--friends-color-background); | |
| 1461 | 1506 | margin-top: 32px; |
| 1462 | 1507 | width: 12rem; |
| 1463 | 1508 | } |
| 1464 | 1509 | |
| @@ -1483,21 +1528,21 @@ | ||
| 1483 | 1528 | background-color: rgba(0, 0, 0, 0.75); |
| 1484 | 1529 | } |
| 1485 | 1530 | |
| 1486 | 1531 | .friends-page { |
| 1487 | - background-color: #f7f8f9; | |
| 1488 | - color: #48427c; | |
| 1532 | + background-color: var(--friends-color-background); | |
| 1533 | + color: var(--friends-color-text); | |
| 1489 | 1534 | overflow-wrap: break-word; |
| 1490 | 1535 | min-height: 100vh; |
| 1491 | 1536 | |
| 1492 | 1537 | & code, & pre { overflow: auto; } |
| 1493 | 1538 | |
| 1494 | - & a:visited { color: #1341d4; } | |
| 1539 | + & a:visited { color: var(--friends-color-link-visited); } | |
| 1495 | 1540 | & a.off-canvas-toggle:visited { color: #fff; } |
| 1496 | - & a, & a:visited, & a:hover, & a:focus, & a:active { color: #2e5bec; } | |
| 1541 | + & a, & a:visited, & a:hover, & a:focus, & a:active { color: var(--friends-color-link); } | |
| 1497 | 1542 | |
| 1498 | 1543 | & summary.accordion-header { |
| 1499 | - color: #2e5bec; | |
| 1544 | + color: var(--friends-color-link); | |
| 1500 | 1545 | cursor: pointer; |
| 1501 | 1546 | white-space: nowrap; |
| 1502 | 1547 | text-overflow: ellipsis; |
| 1503 | 1548 | |
| @@ -1528,9 +1573,9 @@ | ||
| 1528 | 1573 | white-space: nowrap; |
| 1529 | 1574 | } |
| 1530 | 1575 | |
| 1531 | 1576 | & .menu { |
| 1532 | - & a, & a:active, & a:visited { color: #333; padding: .2rem; } | |
| 1577 | + & a, & a:active, & a:visited { color: var(--friends-color-text); padding: .2rem; } | |
| 1533 | 1578 | & .menu-item + .menu-item { margin-top: 0; } |
| 1534 | 1579 | & .divider[data-content] { margin: 0.8rem 0 0.4rem 0; } |
| 1535 | 1580 | & .menu-item.friends-dropdown { margin-top: 0.2rem; margin-bottom: 0.4rem; } |
| 1536 | 1581 | & .menu-item small.label-secondary { display: none; } |
| @@ -1607,14 +1652,14 @@ | ||
| 1607 | 1652 | & figcaption { text-align: center; font-size: .8rem; } |
| 1608 | 1653 | } |
| 1609 | 1654 | |
| 1610 | 1655 | & p.note { |
| 1611 | - border-left: 4px solid #eee; | |
| 1656 | + border-left: 4px solid var(--friends-color-border); | |
| 1612 | 1657 | padding: 1rem; |
| 1613 | 1658 | margin-left: 1rem; |
| 1614 | 1659 | font-size: .8rem; |
| 1615 | - color: #666; | |
| 1616 | - background-color: #f7f7f7; | |
| 1660 | + color: var(--friends-color-text-muted); | |
| 1661 | + background-color: var(--friends-color-note-background); | |
| 1617 | 1662 | } |
| 1618 | 1663 | } |
| 1619 | 1664 | } |
| 1620 | 1665 | |
| @@ -1637,9 +1682,9 @@ | ||
| 1637 | 1682 | } |
| 1638 | 1683 | } |
| 1639 | 1684 | |
| 1640 | 1685 | & .friends-sidebar-customize { |
| 1641 | - color: #999; | |
| 1686 | + color: var(--friends-color-text-soft); | |
| 1642 | 1687 | font-size: .4rem; |
| 1643 | 1688 | line-height: .6rem; |
| 1644 | 1689 | display: block; |
| 1645 | 1690 | } |
| @@ -1675,9 +1720,9 @@ | ||
| 1675 | 1720 | &.open { display: block; } |
| 1676 | 1721 | & p.description { color: #3e396b; font-size: .6rem; } |
| 1677 | 1722 | |
| 1678 | 1723 | & .activitypub_preview { |
| 1679 | - background-color: #f7f8f9; | |
| 1724 | + background-color: var(--friends-color-background); | |
| 1680 | 1725 | padding: .5em; |
| 1681 | 1726 | margin-top: 1em; |
| 1682 | 1727 | margin-bottom: 1em; |
| 1683 | 1728 | max-height: 6em; |
| @@ -1685,9 +1730,9 @@ | ||
| 1685 | 1730 | |
| 1686 | 1731 | & figcaption { |
| 1687 | 1732 | float: right; |
| 1688 | 1733 | |
| 1689 | - & a:any-link { color: #999; } | |
| 1734 | + & a:any-link { color: var(--friends-color-text-soft); } | |
| 1690 | 1735 | } |
| 1691 | 1736 | } |
| 1692 | 1737 | } |
| 1693 | 1738 | |
| @@ -1693,10 +1738,10 @@ | ||
| 1693 | 1738 | |
| 1694 | 1739 | & img.avatar { border-radius: 5px; max-width: 36px; max-height: 36px; } |
| 1695 | 1740 | & img.avatar.avatar-overlay { position: absolute; margin-left: -16px; margin-top: 24px; border-radius: 100%; } |
| 1696 | 1741 | & div.friends-widget { margin-bottom: 2em; } |
| 1697 | - & div.friends-main-widget h1 a { color: #222; text-decoration: none; } | |
| 1698 | - & div.friends-widget h4 a { color: #222; text-decoration: none; } | |
| 1742 | + & div.friends-main-widget h1 a { color: var(--friends-color-text); text-decoration: none; } | |
| 1743 | + & div.friends-widget h4 a { color: var(--friends-color-text); text-decoration: none; } | |
| 1699 | 1744 | & div.friends-widget a.open-requests { font-size: 90%; font-weight: normal; } |
| 1700 | 1745 | & div.friends-widget ul { margin: .5em 0 1em 0; padding: 0; } |
| 1701 | 1746 | |
| 1702 | 1747 | & div.friends-widget h5 { |
| @@ -1809,18 +1854,18 @@ | ||
| 1809 | 1854 | display: flex; |
| 1810 | 1855 | justify-content: flex-end; |
| 1811 | 1856 | |
| 1812 | 1857 | & a { |
| 1813 | - color: #2e5bec; | |
| 1858 | + color: var(--friends-color-link); | |
| 1814 | 1859 | |
| 1815 | 1860 | & .dashicons { vertical-align: middle; } |
| 1816 | 1861 | } |
| 1817 | 1862 | |
| 1818 | - & .btn:hover { color: #2e5bec; } | |
| 1863 | + & .btn:hover { color: var(--friends-color-link); } | |
| 1819 | 1864 | } |
| 1820 | 1865 | |
| 1821 | 1866 | & footer.comments-content { |
| 1822 | - border-top: 1px solid #eee; | |
| 1867 | + border-top: 1px solid var(--friends-color-border); | |
| 1823 | 1868 | |
| 1824 | 1869 | &.closed { display: none; } |
| 1825 | 1870 | |
| 1826 | 1871 | & .comment-list { padding-left: 0; list-style: none; } |
| @@ -1833,9 +1878,9 @@ | ||
| 1833 | 1878 | & .comment-list .children { |
| 1834 | 1879 | list-style: none; |
| 1835 | 1880 | margin-left: 0; |
| 1836 | 1881 | padding-left: 5px; |
| 1837 | - border-left: 3px solid #eee; | |
| 1882 | + border-left: 3px solid var(--friends-color-border); | |
| 1838 | 1883 | } |
| 1839 | 1884 | |
| 1840 | 1885 | & .comment-list .children > li { |
| 1841 | 1886 | margin-top: var(--global--spacing-vertical); |
| @@ -1878,11 +1923,11 @@ | ||
| 1878 | 1923 | box-sizing: border-box; |
| 1879 | 1924 | padding: .35em .6em; |
| 1880 | 1925 | font-size: inherit; |
| 1881 | 1926 | line-height: 1.3; |
| 1882 | - border: 1px solid #ccc; | |
| 1927 | + border: 1px solid var(--friends-color-border-strong); | |
| 1883 | 1928 | border-radius: 3px; |
| 1884 | - background: #fff; | |
| 1929 | + background: var(--friends-color-surface); | |
| 1885 | 1930 | } |
| 1886 | 1931 | |
| 1887 | 1932 | & .friends-search-input:focus { |
| 1888 | 1933 | outline: 2px solid #2271b1; |
| @@ -1984,9 +2029,9 @@ | ||
| 1984 | 2029 | & .btn { flex: 0 0 auto; } |
| 1985 | 2030 | } |
| 1986 | 2031 | |
| 1987 | 2032 | & .opml-file-hint { |
| 1988 | - color: #5f5a7d; | |
| 2033 | + color: var(--friends-color-text-muted); | |
| 1989 | 2034 | font-size: .75rem; |
| 1990 | 2035 | margin: .6rem 0 0; |
| 1991 | 2036 | } |
| 1992 | 2037 | |
| @@ -2028,9 +2073,9 @@ | ||
| 2028 | 2073 | margin: 1rem 0 0; |
| 2029 | 2074 | } |
| 2030 | 2075 | |
| 2031 | 2076 | & .bulk-feed-list > .bulk-feed-row { |
| 2032 | - background: #f8f8fc; | |
| 2077 | + background: var(--friends-color-surface-alt); | |
| 2033 | 2078 | border-radius: .25rem; |
| 2034 | 2079 | padding: .65rem .75rem; |
| 2035 | 2080 | |
| 2036 | 2081 | & > label { |
| @@ -2055,9 +2100,9 @@ | ||
| 2055 | 2100 | margin: .7rem 0 0; |
| 2056 | 2101 | } |
| 2057 | 2102 | |
| 2058 | 2103 | & .feed-preview { |
| 2059 | - background: #fff; | |
| 2104 | + background: var(--friends-color-surface); | |
| 2060 | 2105 | border-radius: .25rem; |
| 2061 | 2106 | box-shadow: inset 3px 0 0 #d9def7; |
| 2062 | 2107 | margin-top: 1rem; |
| 2063 | 2108 | padding: .8rem; |
| @@ -2085,15 +2130,15 @@ | ||
| 2085 | 2130 | flex-direction: column; |
| 2086 | 2131 | min-width: 0; |
| 2087 | 2132 | |
| 2088 | 2133 | & small { |
| 2089 | - color: #6b7280; | |
| 2134 | + color: var(--friends-color-text-muted); | |
| 2090 | 2135 | overflow-wrap: anywhere; |
| 2091 | 2136 | } |
| 2092 | 2137 | } |
| 2093 | 2138 | |
| 2094 | 2139 | & .subscription-preview-description { |
| 2095 | - color: #5f5a7d; | |
| 2140 | + color: var(--friends-color-text-muted); | |
| 2096 | 2141 | margin: .6rem 0; |
| 2097 | 2142 | } |
| 2098 | 2143 | |
| 2099 | 2144 | & .subscription-feed-list { |
| @@ -2130,9 +2175,9 @@ | ||
| 2130 | 2175 | grid-column: 1 / -1; |
| 2131 | 2176 | } |
| 2132 | 2177 | |
| 2133 | 2178 | & .subscription-feed-option { |
| 2134 | - background: #f7f7fb; | |
| 2179 | + background: var(--friends-color-surface-alt); | |
| 2135 | 2180 | border-radius: .25rem; |
| 2136 | 2181 | margin-top: 0; |
| 2137 | 2182 | padding: .65rem; |
| 2138 | 2183 | |
| @@ -2141,9 +2186,9 @@ | ||
| 2141 | 2186 | font-weight: 600; |
| 2142 | 2187 | overflow-wrap: anywhere; |
| 2143 | 2188 | |
| 2144 | 2189 | & small { |
| 2145 | - color: #6b7280; | |
| 2190 | + color: var(--friends-color-text-muted); | |
| 2146 | 2191 | font-weight: 400; |
| 2147 | 2192 | } |
| 2148 | 2193 | } |
| 2149 | 2194 | } |
| @@ -2148,9 +2193,9 @@ | ||
| 2148 | 2193 | } |
| 2149 | 2194 | } |
| 2150 | 2195 | |
| 2151 | 2196 | & .subscription-feed-details { |
| 2152 | - color: #6b7280; | |
| 2197 | + color: var(--friends-color-text-muted); | |
| 2153 | 2198 | font-size: .7rem; |
| 2154 | 2199 | margin: .5rem 0 0; |
| 2155 | 2200 | overflow-wrap: anywhere; |
| 2156 | 2201 | } |
| @@ -2155,9 +2200,9 @@ | ||
| 2155 | 2200 | overflow-wrap: anywhere; |
| 2156 | 2201 | } |
| 2157 | 2202 | |
| 2158 | 2203 | & .subscription-feed-preview { |
| 2159 | - background: #fff; | |
| 2204 | + background: var(--friends-color-surface); | |
| 2160 | 2205 | border-radius: .2rem; |
| 2161 | 2206 | box-shadow: inset 0 0 0 1px #e8e8f3; |
| 2162 | 2207 | margin-top: .6rem; |
| 2163 | 2208 | padding: .6rem; |
| @@ -2172,9 +2217,9 @@ | ||
| 2172 | 2217 | margin-top: .55rem; |
| 2173 | 2218 | } |
| 2174 | 2219 | |
| 2175 | 2220 | & p { |
| 2176 | - color: #5f5a7d; | |
| 2221 | + color: var(--friends-color-text-muted); | |
| 2177 | 2222 | font-size: .75rem; |
| 2178 | 2223 | margin: .25rem 0 0; |
| 2179 | 2224 | } |
| 2180 | 2225 | } |
| @@ -2184,9 +2229,9 @@ | ||
| 2184 | 2229 | flex-direction: column; |
| 2185 | 2230 | gap: .1rem; |
| 2186 | 2231 | |
| 2187 | 2232 | & small { |
| 2188 | - color: #6b7280; | |
| 2233 | + color: var(--friends-color-text-muted); | |
| 2189 | 2234 | font-size: .7rem; |
| 2190 | 2235 | } |
| 2191 | 2236 | } |
| 2192 | 2237 | |
| @@ -2191,9 +2236,9 @@ | ||
| 2191 | 2236 | } |
| 2192 | 2237 | |
| 2193 | 2238 | & .subscription-preview-status, |
| 2194 | 2239 | & .bulk-feed-status { |
| 2195 | - color: #5f5a7d; | |
| 2240 | + color: var(--friends-color-text-muted); | |
| 2196 | 2241 | font-size: .75rem; |
| 2197 | 2242 | |
| 2198 | 2243 | &.error { color: #b91c1c; } |
| 2199 | 2244 | } |
| @@ -2222,9 +2267,9 @@ | ||
| 2222 | 2267 | } |
| 2223 | 2268 | |
| 2224 | 2269 | & .subscription-item { |
| 2225 | 2270 | padding: 8px 0; |
| 2226 | - border-bottom: 1px solid #e8e8e8; | |
| 2271 | + border-bottom: 1px solid var(--friends-color-border); | |
| 2227 | 2272 | display: grid; |
| 2228 | 2273 | grid-template-columns: 40px 1fr; |
| 2229 | 2274 | grid-template-rows: auto auto auto; |
| 2230 | 2275 | column-gap: 8px; |
| @@ -2242,11 +2287,11 @@ | ||
| 2242 | 2287 | } |
| 2243 | 2288 | |
| 2244 | 2289 | & .subscription-info { display: inline-flex; align-items: center; gap: 4px; flex-wrap: wrap; } |
| 2245 | 2290 | & .starred { color: #f5a623; } |
| 2246 | - & .subscription-folder { font-size: 0.8em; background: #e8e8e8; padding: 1px 6px; border-radius: 3px; color: #666; } | |
| 2247 | - & .subscription-meta { grid-column: 2; font-size: 0.85em; color: #888; } | |
| 2248 | - & .subscription-description { grid-column: 2; font-size: 0.85em; color: #666; margin: 0; } | |
| 2291 | + & .subscription-folder { font-size: 0.8em; background: var(--friends-color-surface-alt); padding: 1px 6px; border-radius: 3px; color: var(--friends-color-text-muted); } | |
| 2292 | + & .subscription-meta { grid-column: 2; font-size: 0.85em; color: var(--friends-color-text-soft); } | |
| 2293 | + & .subscription-description { grid-column: 2; font-size: 0.85em; color: var(--friends-color-text-muted); margin: 0; } | |
| 2249 | 2294 | & .subscription-actions { |
| 2250 | 2295 | grid-column: 2; |
| 2251 | 2296 | display: flex; |
| 2252 | 2297 | align-items: center; |
| @@ -2268,9 +2313,9 @@ | ||
| 2268 | 2313 | & .friends-reaction-picker button { |
| 2269 | 2314 | padding: .5rem; |
| 2270 | 2315 | margin: 0; |
| 2271 | 2316 | font-size: 18px; |
| 2272 | - background-color: #fff; | |
| 2317 | + background-color: var(--friends-color-surface); | |
| 2273 | 2318 | border: 0; |
| 2274 | 2319 | cursor: pointer; |
| 2275 | 2320 | z-index: 999999; |
| 2276 | 2321 | } |
| @@ -2284,25 +2329,25 @@ | ||
| 2284 | 2329 | |
| 2285 | 2330 | & .wp-block-friends-message { |
| 2286 | 2331 | max-width: 80%; |
| 2287 | 2332 | margin: 1em; |
| 2288 | - border-bottom: 1px solid #eee; | |
| 2333 | + border-bottom: 1px solid var(--friends-color-border); | |
| 2289 | 2334 | } |
| 2290 | 2335 | } |
| 2291 | 2336 | |
| 2292 | 2337 | & .friends-dm-view { |
| 2293 | - background: #fff; | |
| 2294 | - border-top: 1px solid #e5e7eb; | |
| 2338 | + background: var(--friends-color-surface); | |
| 2339 | + border-top: 1px solid var(--friends-color-border); | |
| 2295 | 2340 | display: grid; |
| 2296 | 2341 | grid-template-columns: minmax(220px, 320px) minmax(0, 1fr); |
| 2297 | - height: calc(100vh - 3.2rem); | |
| 2342 | + height: calc(var(--friends-dm-viewport-height, 100vh) - 3.2rem); | |
| 2298 | 2343 | min-height: 32rem; |
| 2299 | 2344 | } |
| 2300 | 2345 | |
| 2301 | 2346 | & .friends-dm-empty { |
| 2302 | 2347 | align-self: start; |
| 2303 | - background: #fff; | |
| 2304 | - border: 1px solid #e5e7eb; | |
| 2348 | + background: var(--friends-color-surface); | |
| 2349 | + border: 1px solid var(--friends-color-border); | |
| 2305 | 2350 | border-radius: .2rem; |
| 2306 | 2351 | grid-column: 1 / -1; |
| 2307 | 2352 | margin: 1rem; |
| 2308 | 2353 | padding: 1rem; |
| @@ -2311,10 +2356,10 @@ | ||
| 2311 | 2356 | & p { margin-bottom: 0; } |
| 2312 | 2357 | } |
| 2313 | 2358 | |
| 2314 | 2359 | & .friends-dm-sidebar { |
| 2315 | - background: #f8fafc; | |
| 2316 | - border-right: 1px solid #e5e7eb; | |
| 2360 | + background: var(--friends-color-surface-muted); | |
| 2361 | + border-right: 1px solid var(--friends-color-border); | |
| 2317 | 2362 | overflow: auto; |
| 2318 | 2363 | } |
| 2319 | 2364 | |
| 2320 | 2365 | & .friends-profile-messages { |
| @@ -2323,9 +2368,9 @@ | ||
| 2323 | 2368 | } |
| 2324 | 2369 | |
| 2325 | 2370 | & .friends-profile-messages-header { |
| 2326 | 2371 | align-items: center; |
| 2327 | - border-bottom: 1px solid #e5e7eb; | |
| 2372 | + border-bottom: 1px solid var(--friends-color-border); | |
| 2328 | 2373 | display: flex; |
| 2329 | 2374 | justify-content: space-between; |
| 2330 | 2375 | padding: .65rem .7rem; |
| 2331 | 2376 | } |
| @@ -2336,10 +2381,10 @@ | ||
| 2336 | 2381 | } |
| 2337 | 2382 | |
| 2338 | 2383 | & .friends-dm-conversation, |
| 2339 | 2384 | & .friends-dm-conversation:visited { |
| 2340 | - border-bottom: 1px solid #e5e7eb; | |
| 2341 | - color: #2f3542; | |
| 2385 | + border-bottom: 1px solid var(--friends-color-border); | |
| 2386 | + color: var(--friends-color-text); | |
| 2342 | 2387 | display: grid; |
| 2343 | 2388 | gap: .25rem .5rem; |
| 2344 | 2389 | grid-template-columns: 2rem minmax(0, 1fr) auto; |
| 2345 | 2390 | padding: .65rem .7rem; |
| @@ -2348,10 +2393,10 @@ | ||
| 2348 | 2393 | |
| 2349 | 2394 | & .friends-dm-conversation:hover, |
| 2350 | 2395 | & .friends-dm-conversation:focus, |
| 2351 | 2396 | & .friends-dm-conversation.is-selected { |
| 2352 | - background: #edf2ff; | |
| 2353 | - color: #1f2937; | |
| 2397 | + background: var(--friends-color-selected-background); | |
| 2398 | + color: var(--friends-color-text); | |
| 2354 | 2399 | text-decoration: none; |
| 2355 | 2400 | } |
| 2356 | 2401 | |
| 2357 | 2402 | & .friends-dm-conversation.is-unread .friends-dm-conversation-name, |
| @@ -2377,15 +2422,15 @@ | ||
| 2377 | 2422 | white-space: nowrap; |
| 2378 | 2423 | } |
| 2379 | 2424 | |
| 2380 | 2425 | & .friends-dm-conversation-preview { |
| 2381 | - color: #667085; | |
| 2426 | + color: var(--friends-color-text-muted); | |
| 2382 | 2427 | font-size: .72rem; |
| 2383 | 2428 | } |
| 2384 | 2429 | |
| 2385 | 2430 | & .friends-dm-conversation-meta { |
| 2386 | 2431 | align-items: end; |
| 2387 | - color: #667085; | |
| 2432 | + color: var(--friends-color-text-muted); | |
| 2388 | 2433 | display: flex; |
| 2389 | 2434 | flex-direction: column; |
| 2390 | 2435 | font-size: .65rem; |
| 2391 | 2436 | gap: .25rem; |
| @@ -2410,9 +2455,9 @@ | ||
| 2410 | 2455 | } |
| 2411 | 2456 | |
| 2412 | 2457 | & .friends-dm-thread-header { |
| 2413 | 2458 | align-items: center; |
| 2414 | - border-bottom: 1px solid #e5e7eb; | |
| 2459 | + border-bottom: 1px solid var(--friends-color-border); | |
| 2415 | 2460 | display: flex; |
| 2416 | 2461 | gap: .6rem; |
| 2417 | 2462 | min-height: 3.2rem; |
| 2418 | 2463 | padding: .55rem .8rem; |
| @@ -2427,10 +2472,14 @@ | ||
| 2427 | 2472 | font-size: .68rem; |
| 2428 | 2473 | } |
| 2429 | 2474 | } |
| 2430 | 2475 | |
| 2476 | + & .friends-dm-back { | |
| 2477 | + display: none; | |
| 2478 | + } | |
| 2479 | + | |
| 2431 | 2480 | & .friends-dm-messages { |
| 2432 | - background: #fff; | |
| 2481 | + background: var(--friends-color-surface); | |
| 2433 | 2482 | overflow: auto; |
| 2434 | 2483 | padding: .7rem .9rem; |
| 2435 | 2484 | } |
| 2436 | 2485 | |
| @@ -2448,8 +2497,28 @@ | ||
| 2448 | 2497 | & .friends-dm-message-meta { |
| 2449 | 2498 | visibility: hidden; |
| 2450 | 2499 | } |
| 2451 | 2500 | |
| 2501 | + &.is-own-message .friends-dm-message-meta { | |
| 2502 | + visibility: visible; | |
| 2503 | + | |
| 2504 | + & strong, | |
| 2505 | + & time { | |
| 2506 | + display: none; | |
| 2507 | + } | |
| 2508 | + } | |
| 2509 | + | |
| 2510 | + &.is-spaced-message .friends-dm-message-meta { | |
| 2511 | + visibility: visible; | |
| 2512 | + } | |
| 2513 | + | |
| 2514 | + &.is-own-message.is-spaced-message .friends-dm-message-meta { | |
| 2515 | + & strong, | |
| 2516 | + & time { | |
| 2517 | + display: inline; | |
| 2518 | + } | |
| 2519 | + } | |
| 2520 | + | |
| 2452 | 2521 | & .friends-dm-message-content { |
| 2453 | 2522 | margin-top: 0; |
| 2454 | 2523 | } |
| 2455 | 2524 | } |
| @@ -2454,26 +2523,113 @@ | ||
| 2454 | 2523 | } |
| 2455 | 2524 | } |
| 2456 | 2525 | |
| 2457 | 2526 | & .friends-dm-message.is-own-message .friends-dm-message-content { |
| 2458 | - background: #eef6ff; | |
| 2527 | + background: var(--friends-color-info-background); | |
| 2459 | 2528 | } |
| 2460 | 2529 | |
| 2461 | 2530 | & .friends-dm-message-meta { |
| 2462 | 2531 | align-items: baseline; |
| 2463 | 2532 | display: flex; |
| 2533 | + flex-wrap: wrap; | |
| 2464 | 2534 | gap: .35rem; |
| 2465 | 2535 | line-height: 1.2; |
| 2466 | 2536 | |
| 2467 | 2537 | & time { |
| 2468 | - color: #667085; | |
| 2538 | + color: var(--friends-color-text-muted); | |
| 2469 | 2539 | font-size: .65rem; |
| 2470 | 2540 | } |
| 2471 | 2541 | } |
| 2472 | 2542 | |
| 2543 | + & .friends-dm-delivery-status { | |
| 2544 | + color: var(--friends-color-text-muted); | |
| 2545 | + cursor: help; | |
| 2546 | + font-size: .65rem; | |
| 2547 | + | |
| 2548 | + &::before { | |
| 2549 | + content: "·"; | |
| 2550 | + margin-right: .35rem; | |
| 2551 | + } | |
| 2552 | + | |
| 2553 | + &.is-failed { | |
| 2554 | + color: var(--friends-color-error); | |
| 2555 | + } | |
| 2556 | + } | |
| 2557 | + | |
| 2558 | + & .friends-dm-delivery-icon { | |
| 2559 | + align-items: center; | |
| 2560 | + display: inline-flex; | |
| 2561 | + flex: 0 0 auto; | |
| 2562 | + height: 1rem; | |
| 2563 | + justify-content: center; | |
| 2564 | + line-height: 1; | |
| 2565 | + position: relative; | |
| 2566 | + width: 1rem; | |
| 2567 | + | |
| 2568 | + &::before { | |
| 2569 | + border: 1.5px solid currentColor; | |
| 2570 | + border-radius: 50%; | |
| 2571 | + box-sizing: border-box; | |
| 2572 | + content: ""; | |
| 2573 | + height: .9rem; | |
| 2574 | + margin: 0; | |
| 2575 | + width: .9rem; | |
| 2576 | + } | |
| 2577 | + | |
| 2578 | + &::after { | |
| 2579 | + border: solid currentColor; | |
| 2580 | + border-width: 0 1.5px 1.5px 0; | |
| 2581 | + content: ""; | |
| 2582 | + height: .42rem; | |
| 2583 | + left: .37rem; | |
| 2584 | + position: absolute; | |
| 2585 | + top: .22rem; | |
| 2586 | + transform: rotate(45deg); | |
| 2587 | + width: .22rem; | |
| 2588 | + } | |
| 2589 | + | |
| 2590 | + &.is-queued::before { | |
| 2591 | + border-style: dotted; | |
| 2592 | + } | |
| 2593 | + | |
| 2594 | + &.is-sending::before { | |
| 2595 | + border-style: dashed; | |
| 2596 | + } | |
| 2597 | + | |
| 2598 | + &.is-failed::after { | |
| 2599 | + border: 0; | |
| 2600 | + content: "!"; | |
| 2601 | + font-size: .65rem; | |
| 2602 | + font-weight: 700; | |
| 2603 | + height: auto; | |
| 2604 | + left: auto; | |
| 2605 | + position: absolute; | |
| 2606 | + top: .13rem; | |
| 2607 | + transform: none; | |
| 2608 | + width: auto; | |
| 2609 | + } | |
| 2610 | + } | |
| 2611 | + | |
| 2612 | + & .friends-dm-delivery-tooltip { | |
| 2613 | + background: var(--friends-color-surface); | |
| 2614 | + border: 1px solid var(--friends-color-border); | |
| 2615 | + border-radius: .25rem; | |
| 2616 | + box-shadow: 0 .25rem .75rem rgb(0 0 0 / 16%); | |
| 2617 | + color: var(--friends-color-text); | |
| 2618 | + font-size: .75rem; | |
| 2619 | + line-height: 1.3; | |
| 2620 | + overflow-wrap: break-word; | |
| 2621 | + padding: .4rem .5rem; | |
| 2622 | + pointer-events: none; | |
| 2623 | + position: fixed; | |
| 2624 | + white-space: normal; | |
| 2625 | + width: min(18rem, calc(100vw - 2rem)); | |
| 2626 | + z-index: 9999; | |
| 2627 | + } | |
| 2628 | + | |
| 2473 | 2629 | & .friends-dm-message-content { |
| 2474 | - background: #f8fafc; | |
| 2475 | - border: 1px solid #e5e7eb; | |
| 2630 | + background: var(--friends-color-surface-muted); | |
| 2631 | + border: 1px solid var(--friends-color-border); | |
| 2476 | 2632 | border-radius: .3rem; |
| 2477 | 2633 | margin-top: .18rem; |
| 2478 | 2634 | max-width: 48rem; |
| 2479 | 2635 | padding: .45rem .55rem; |
| @@ -2481,11 +2637,29 @@ | ||
| 2481 | 2637 | & > :first-child { margin-top: 0; } |
| 2482 | 2638 | & > :last-child { margin-bottom: 0; } |
| 2483 | 2639 | } |
| 2484 | 2640 | |
| 2641 | + & .friends-dm-message-reactions { | |
| 2642 | + display: flex; | |
| 2643 | + flex-wrap: wrap; | |
| 2644 | + gap: .25rem; | |
| 2645 | + margin-top: .2rem; | |
| 2646 | + } | |
| 2647 | + | |
| 2648 | + & .friends-dm-message-reaction { | |
| 2649 | + background: var(--friends-color-surface); | |
| 2650 | + border: 1px solid var(--friends-color-border); | |
| 2651 | + border-radius: 1rem; | |
| 2652 | + color: var(--friends-color-text-muted); | |
| 2653 | + cursor: help; | |
| 2654 | + font-size: .7rem; | |
| 2655 | + line-height: 1.4; | |
| 2656 | + padding: 0 .4rem; | |
| 2657 | + } | |
| 2658 | + | |
| 2485 | 2659 | & .friends-dm-reply { |
| 2486 | - background: #f8fafc; | |
| 2487 | - border-top: 1px solid #e5e7eb; | |
| 2660 | + background: var(--friends-color-surface-muted); | |
| 2661 | + border-top: 1px solid var(--friends-color-border); | |
| 2488 | 2662 | padding: .65rem .8rem; |
| 2489 | 2663 | |
| 2490 | 2664 | & form.form-horizontal .form-group { |
| 2491 | 2665 | display: flex; |
| @@ -2505,28 +2679,85 @@ | ||
| 2505 | 2679 | & textarea.friends-message-message { |
| 2506 | 2680 | min-height: 4.2rem; |
| 2507 | 2681 | resize: vertical; |
| 2508 | 2682 | } |
| 2683 | + | |
| 2684 | + & .delete-conversation { | |
| 2685 | + height: auto; | |
| 2686 | + line-height: 1.2; | |
| 2687 | + max-width: 100%; | |
| 2688 | + white-space: normal; | |
| 2689 | + } | |
| 2509 | 2690 | } |
| 2510 | 2691 | |
| 2511 | 2692 | @media (max-width: 840px) { |
| 2693 | + & .navbar-section.search.hide-mobile-search { | |
| 2694 | + display: none; | |
| 2695 | + } | |
| 2696 | + | |
| 2512 | 2697 | & .friends-dm-view { |
| 2513 | 2698 | grid-template-columns: 1fr; |
| 2514 | - height: auto; | |
| 2699 | + grid-template-rows: minmax(0, 1fr); | |
| 2700 | + height: min(calc(var(--friends-dm-viewport-height, 100vh) - 3.2rem), 48rem); | |
| 2701 | + min-height: 0; | |
| 2702 | + overflow: hidden; | |
| 2703 | + position: relative; | |
| 2515 | 2704 | } |
| 2516 | 2705 | |
| 2517 | 2706 | & .friends-dm-sidebar { |
| 2518 | - border-bottom: 1px solid #e5e7eb; | |
| 2519 | 2707 | border-right: 0; |
| 2520 | - max-height: 16rem; | |
| 2708 | + grid-column: 1; | |
| 2709 | + grid-row: 1; | |
| 2710 | + height: 100%; | |
| 2711 | + max-height: none; | |
| 2712 | + min-height: 0; | |
| 2713 | + transform: translateX(0); | |
| 2714 | + transition: transform .2s ease; | |
| 2715 | + width: 100%; | |
| 2716 | + z-index: 1; | |
| 2521 | 2717 | } |
| 2522 | 2718 | |
| 2523 | 2719 | & .friends-dm-thread { |
| 2524 | - min-height: 34rem; | |
| 2720 | + grid-column: 1; | |
| 2721 | + grid-row: 1; | |
| 2722 | + height: 100%; | |
| 2723 | + min-height: 0; | |
| 2724 | + overflow: hidden; | |
| 2725 | + transform: translateX(100%); | |
| 2726 | + transition: transform .2s ease; | |
| 2727 | + width: 100%; | |
| 2728 | + z-index: 2; | |
| 2525 | 2729 | } |
| 2730 | + | |
| 2731 | + & .friends-dm-view.is-focused-conversation .friends-dm-sidebar { | |
| 2732 | + transform: translateX(-100%); | |
| 2733 | + } | |
| 2734 | + | |
| 2735 | + & .friends-dm-view.is-focused-conversation .friends-dm-thread { | |
| 2736 | + transform: translateX(0); | |
| 2737 | + } | |
| 2738 | + | |
| 2739 | + & .friends-dm-back { | |
| 2740 | + align-items: center; | |
| 2741 | + border: 0; | |
| 2742 | + color: var(--friends-color-text); | |
| 2743 | + display: flex; | |
| 2744 | + font-size: 1.25rem; | |
| 2745 | + line-height: 1; | |
| 2746 | + text-decoration: none; | |
| 2747 | + } | |
| 2748 | + | |
| 2749 | + & .friends-dm-messages { | |
| 2750 | + min-height: 0; | |
| 2751 | + overscroll-behavior: contain; | |
| 2752 | + } | |
| 2753 | + | |
| 2754 | + & .friends-dm-reply { | |
| 2755 | + padding-bottom: calc(.65rem + env(safe-area-inset-bottom, 0px)); | |
| 2756 | + } | |
| 2526 | 2757 | } |
| 2527 | 2758 | |
| 2528 | - & .chip { background-color: #fff; } | |
| 2759 | + & .chip { background-color: var(--friends-color-surface); } | |
| 2529 | 2760 | |
| 2530 | 2761 | /* to support mastodon style tags */ |
| 2531 | 2762 | & .invisible { |
| 2532 | 2763 | font-size: 0; |
| @@ -2652,6 +2883,71 @@ | ||
| 2652 | 2883 | |
| 2653 | 2884 | @media (max-width: 960px) { |
| 2654 | 2885 | .friends-page section.posts .card header.entry-header div.author { |
| 2655 | 2886 | max-width: 19em; |
| 2887 | + } | |
| 2888 | +} | |
| 2889 | + | |
| 2890 | +/* ======================================================================== | |
| 2891 | + Link Previews | |
| 2892 | + ======================================================================== */ | |
| 2893 | + | |
| 2894 | +.friends-page a.friends-link-preview { | |
| 2895 | + display: flex; | |
| 2896 | + flex-direction: column; | |
| 2897 | + margin-top: .8rem; | |
| 2898 | + overflow: hidden; | |
| 2899 | + border: .05rem solid var(--friends-color-border-strong); | |
| 2900 | + border-radius: .4rem; | |
| 2901 | + background: var(--friends-color-surface-alt); | |
| 2902 | + color: inherit; | |
| 2903 | + text-decoration: none; | |
| 2904 | + | |
| 2905 | + &:hover, &:focus { | |
| 2906 | + border-color: var(--friends-color-link); | |
| 2907 | + text-decoration: none; | |
| 2908 | + } | |
| 2909 | + | |
| 2910 | + & .friends-link-preview-image { | |
| 2911 | + display: block; | |
| 2912 | + background: var(--friends-color-surface-muted); | |
| 2913 | + | |
| 2914 | + & img { | |
| 2915 | + display: block; | |
| 2916 | + width: 100%; | |
| 2917 | + height: auto; | |
| 2918 | + max-height: 24rem; | |
| 2919 | + object-fit: cover; | |
| 2920 | + aspect-ratio: 1.91 / 1; | |
| 2921 | + } | |
| 2922 | + } | |
| 2923 | + | |
| 2924 | + & .friends-link-preview-text { | |
| 2925 | + display: flex; | |
| 2926 | + flex-direction: column; | |
| 2927 | + gap: .2rem; | |
| 2928 | + padding: .6rem .8rem; | |
| 2929 | + min-width: 0; | |
| 2930 | + } | |
| 2931 | + | |
| 2932 | + & .friends-link-preview-host { | |
| 2933 | + color: var(--friends-color-text-soft); | |
| 2934 | + font-size: .7rem; | |
| 2935 | + text-transform: uppercase; | |
| 2936 | + letter-spacing: .02em; | |
| 2937 | + } | |
| 2938 | + | |
| 2939 | + & .friends-link-preview-title { | |
| 2940 | + font-weight: 600; | |
| 2941 | + line-height: 1.3; | |
| 2942 | + } | |
| 2943 | + | |
| 2944 | + & .friends-link-preview-description { | |
| 2945 | + color: var(--friends-color-text-muted); | |
| 2946 | + font-size: .7rem; | |
| 2947 | + line-height: 1.4; | |
| 2948 | + display: -webkit-box; | |
| 2949 | + -webkit-line-clamp: 3; | |
| 2950 | + -webkit-box-orient: vertical; | |
| 2951 | + overflow: hidden; | |
| 2656 | 2952 | } |
| 2657 | 2953 | } |