AT protocol bookmarking platforms in obsidian
at client-cache 1209 lines 23 kB view raw
1/* ATmark View */ 2.atmark-view { 3 padding: 20px; 4} 5 6.atmark-header { 7 margin-bottom: 24px; 8 padding-bottom: 16px; 9 border-bottom: 1px solid var(--background-modifier-border); 10} 11 12.atmark-source-selector { 13 display: flex; 14 align-items: center; 15 justify-content: center; 16 gap: 0; 17 margin-bottom: 12px; 18 border-bottom: 1px solid var(--background-modifier-border); 19 position: relative; 20} 21 22.atmark-source-option { 23 display: flex; 24 align-items: center; 25 justify-content: center; 26 gap: 4px; 27 padding: 10px 20px; 28 cursor: pointer; 29 user-select: none; 30 border: none; 31 background: transparent; 32 transition: all 0.15s ease; 33 position: relative; 34 margin-bottom: -1px; 35} 36 37.atmark-source-option::after { 38 content: ""; 39 position: absolute; 40 bottom: 0; 41 left: 0; 42 right: 0; 43 height: 2px; 44 background: transparent; 45 transition: background 0.15s ease; 46} 47 48.atmark-source-option:hover { 49 background: var(--background-modifier-hover); 50} 51 52.atmark-source-option:has(input:checked)::after { 53 background: var(--interactive-accent); 54} 55 56.atmark-source-option:has(input:checked) .atmark-source-text { 57 color: var(--interactive-accent); 58 font-weight: var(--font-semibold); 59} 60 61.atmark-source-radio { 62 display: none; 63} 64 65.atmark-source-text { 66 font-size: var(--font-ui-small); 67 font-weight: var(--font-medium); 68 color: var(--text-muted); 69} 70 71.atmark-filters { 72 display: flex; 73 flex-direction: column; 74 gap: 16px; 75 margin-bottom: 16px; 76} 77 78.atmark-filter-section { 79 display: flex; 80 flex-direction: column; 81 gap: 6px; 82} 83 84.atmark-filter-title-row { 85 display: flex; 86 align-items: center; 87 gap: 6px; 88 margin-bottom: 2px; 89} 90 91.atmark-filter-title { 92 margin: 0; 93 font-size: var(--font-smallest); 94 font-weight: var(--font-semibold); 95 color: var(--text-faint); 96 text-transform: uppercase; 97 letter-spacing: 0.05em; 98} 99 100.atmark-filter-create-btn { 101 display: flex; 102 align-items: center; 103 justify-content: center; 104 width: 18px; 105 height: 18px; 106 padding: 0; 107 background: transparent; 108 border: none; 109 border-radius: var(--radius-s); 110 cursor: pointer; 111 color: var(--text-faint); 112 transition: all 0.15s ease; 113 opacity: 0.7; 114} 115 116.atmark-filter-create-btn:hover { 117 background: var(--background-modifier-hover); 118 color: var(--interactive-accent); 119 opacity: 1; 120} 121 122.atmark-filter-create-btn svg { 123 width: 12px; 124 height: 12px; 125} 126 127.atmark-filter-chips { 128 display: flex; 129 flex-wrap: wrap; 130 gap: 6px; 131 align-items: center; 132} 133 134.atmark-chip { 135 padding: 3px 10px; 136 border-radius: var(--radius-m); 137 border: none; 138 background: var(--background-modifier-border); 139 color: var(--text-muted); 140 font-size: var(--font-smallest); 141 font-weight: var(--font-medium); 142 cursor: pointer; 143 transition: all 0.12s ease; 144 white-space: nowrap; 145} 146 147.atmark-chip:hover { 148 background: var(--background-modifier-border-hover); 149 color: var(--text-normal); 150 transform: translateY(-1px); 151} 152 153.atmark-chip-active { 154 background: var(--interactive-accent); 155 color: var(--text-on-accent); 156 font-weight: var(--font-semibold); 157} 158 159.atmark-chip-active:hover { 160 background: var(--interactive-accent-hover); 161 transform: translateY(-1px); 162} 163 164.atmark-grid { 165 display: grid; 166 grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); 167 gap: 16px; 168 padding: 8px 0; 169} 170 171.atmark-item { 172 background: var(--background-secondary); 173 border: 1px solid var(--background-modifier-border); 174 border-radius: var(--radius-m); 175 padding: 16px; 176 display: flex; 177 flex-direction: column; 178 transition: box-shadow 0.15s ease, border-color 0.15s ease; 179 cursor: pointer; 180} 181 182.atmark-item:hover { 183 box-shadow: var(--shadow-s); 184 border-color: var(--background-modifier-border-hover); 185} 186 187.atmark-item-header { 188 display: flex; 189 justify-content: space-between; 190 align-items: flex-start; 191 gap: 8px; 192} 193 194.atmark-item-edit-btn { 195 display: flex; 196 align-items: center; 197 justify-content: center; 198 width: 24px; 199 height: 24px; 200 padding: 0; 201 margin-left: auto; 202 background: transparent; 203 border: none; 204 border-radius: var(--radius-s); 205 cursor: pointer; 206 color: var(--text-faint); 207 opacity: 0.6; 208 transition: all 0.15s ease; 209} 210 211.atmark-item:hover .atmark-item-edit-btn { 212 opacity: 1; 213} 214 215.atmark-item-edit-btn:hover { 216 background: var(--background-modifier-hover); 217 color: var(--text-normal); 218 opacity: 1; 219} 220 221.atmark-item-edit-btn svg { 222 width: 14px; 223 height: 14px; 224} 225 226.atmark-badge { 227 font-size: 10px; 228 padding: 3px 8px; 229 border-radius: 12px; 230 text-transform: capitalize; 231 font-weight: var(--font-normal); 232 flex-shrink: 0; 233 letter-spacing: 0.3px; 234} 235 236.atmark-badge-semble { 237 background: color-mix(in srgb, var(--color-orange) 15%, transparent); 238 color: var(--color-orange); 239 border: 1px solid color-mix(in srgb, var(--color-orange) 30%, transparent); 240} 241 242.atmark-badge-bookmark { 243 background: color-mix(in srgb, var(--color-cyan) 15%, transparent); 244 color: var(--color-cyan); 245 border: 1px solid color-mix(in srgb, var(--color-cyan) 30%, transparent); 246} 247 248.atmark-badge-margin { 249 background: color-mix(in srgb, var(--color-purple) 15%, transparent); 250 color: var(--color-purple); 251 border: 1px solid color-mix(in srgb, var(--color-purple) 30%, transparent); 252} 253 254.atmark-item-footer { 255 display: flex; 256 justify-content: space-between; 257 font-size: var(--font-smallest); 258 color: var(--text-faint); 259 margin-top: auto; 260 padding-top: 8px; 261 border-top: 1px solid var(--background-modifier-border); 262} 263 264.atmark-date { 265 font-size: var(--font-smallest); 266 color: var(--text-faint); 267} 268 269.atmark-error { 270 color: var(--text-error); 271} 272 273 274/* Item Content (shared between sources) */ 275.atmark-item-content { 276 display: flex; 277 flex-direction: column; 278 gap: 12px; 279} 280 281.atmark-item-title { 282 font-weight: var(--font-semibold); 283 font-size: 1em; 284 color: var(--text-normal); 285 display: -webkit-box; 286 -webkit-line-clamp: 2; 287 -webkit-box-orient: vertical; 288 overflow: hidden; 289 line-height: 1.4; 290 margin-bottom: 4px; 291} 292 293.atmark-item-image { 294 width: 100%; 295 max-height: 120px; 296 object-fit: cover; 297 border-radius: var(--radius-s); 298} 299 300.atmark-item-desc { 301 color: var(--text-muted); 302 font-size: var(--font-small); 303 margin: 0; 304 display: -webkit-box; 305 -webkit-line-clamp: 2; 306 -webkit-box-orient: vertical; 307 overflow: hidden; 308 line-height: 1.5; 309} 310 311.atmark-item-site { 312 font-size: var(--font-smallest); 313 color: var(--text-faint); 314 margin-bottom: 2px; 315} 316 317.atmark-item-url { 318 font-size: var(--font-smallest); 319 color: var(--text-accent); 320 text-decoration: none; 321 word-break: break-all; 322 display: -webkit-box; 323 -webkit-line-clamp: 1; 324 -webkit-box-orient: vertical; 325 overflow: hidden; 326} 327 328.atmark-item-url:hover { 329 text-decoration: underline; 330} 331 332.atmark-item-tags { 333 display: flex; 334 flex-wrap: wrap; 335 gap: 6px; 336 margin-bottom: 8px; 337} 338 339.atmark-tag { 340 font-size: var(--font-smallest); 341 padding: 2px 8px; 342 border-radius: var(--radius-s); 343 background: var(--background-modifier-border); 344 color: var(--text-muted); 345 border: 1px solid var(--background-modifier-border-hover); 346} 347 348.atmark-item-collections { 349 display: flex; 350 flex-wrap: wrap; 351 gap: 6px; 352 margin-bottom: 8px; 353} 354 355.atmark-collection { 356 font-size: var(--font-smallest); 357 padding: 2px 8px; 358 border-radius: var(--radius-s); 359 background: color-mix(in srgb, var(--color-purple) 10%, transparent); 360 color: var(--color-purple); 361 border: 1px solid color-mix(in srgb, var(--color-purple) 30%, transparent); 362} 363 364.atmark-item-collections-section { 365 margin-top: 20px; 366 padding-top: 20px; 367 border-top: 1px solid var(--background-modifier-border); 368} 369 370.atmark-item-tags-section { 371 margin-top: 20px; 372 padding-top: 20px; 373 border-top: 1px solid var(--background-modifier-border); 374} 375 376/* Note indicator for cards with attached notes */ 377.atmark-note-indicator { 378 display: flex; 379 align-items: center; 380 gap: 4px; 381 font-size: var(--font-smallest); 382 color: var(--text-muted); 383} 384 385.atmark-note-icon { 386 display: flex; 387 align-items: center; 388 color: var(--text-muted); 389} 390 391.atmark-note-icon svg { 392 width: 12px; 393 height: 12px; 394} 395 396.atmark-note-count { 397 font-size: var(--font-smallest); 398} 399 400/* Detail Modal (shared between sources) */ 401.atmark-detail-body { 402 display: flex; 403 flex-direction: column; 404 gap: 16px; 405} 406 407.atmark-detail-title { 408 margin: 0; 409 font-size: var(--h2-size); 410 font-weight: var(--font-semibold); 411 color: var(--text-normal); 412 line-height: 1.3; 413} 414 415.atmark-detail-image { 416 max-width: 100%; 417 max-height: 200px; 418 object-fit: contain; 419 border-radius: var(--radius-m); 420} 421 422.atmark-detail-description { 423 margin: 0; 424 color: var(--text-normal); 425 line-height: var(--line-height-normal); 426} 427 428.atmark-detail-meta { 429 display: grid; 430 grid-template-columns: repeat(2, 1fr); 431 gap: 12px; 432 padding: 16px; 433 background: var(--background-secondary); 434 border-radius: var(--radius-m); 435} 436 437.atmark-detail-meta-item { 438 display: flex; 439 flex-direction: column; 440 gap: 2px; 441} 442 443.atmark-detail-meta-label { 444 font-size: var(--font-smallest); 445 color: var(--text-faint); 446 text-transform: uppercase; 447 letter-spacing: 0.5px; 448} 449 450.atmark-detail-meta-value { 451 font-size: var(--font-small); 452 color: var(--text-normal); 453} 454 455.atmark-detail-link-wrapper { 456 padding-top: 8px; 457} 458 459.atmark-detail-link { 460 font-size: var(--font-small); 461 color: var(--text-accent); 462 text-decoration: none; 463 word-break: break-all; 464} 465 466.atmark-detail-link:hover { 467 text-decoration: underline; 468} 469 470.atmark-detail-section-title { 471 margin: 0 0 12px 0; 472 font-size: var(--font-small); 473 font-weight: var(--font-semibold); 474 color: var(--text-muted); 475 text-transform: uppercase; 476 letter-spacing: 0.5px; 477} 478 479/* Modals and Forms (shared) */ 480.atmark-modal { 481 padding: 16px; 482} 483 484.atmark-modal h2 { 485 margin: 0 0 16px 0; 486 font-size: var(--h2-size); 487 font-weight: var(--font-semibold); 488 color: var(--text-normal); 489} 490 491.atmark-form { 492 display: flex; 493 flex-direction: column; 494 gap: 16px; 495} 496 497.atmark-form-group { 498 display: flex; 499 flex-direction: column; 500 gap: 6px; 501} 502 503.atmark-form-group label { 504 font-size: var(--font-small); 505 font-weight: var(--font-medium); 506 color: var(--text-normal); 507} 508 509.atmark-input, 510.atmark-textarea { 511 padding: 8px 12px; 512 background: var(--background-primary); 513 border: 1px solid var(--background-modifier-border); 514 border-radius: var(--radius-s); 515 color: var(--text-normal); 516 font-size: var(--font-ui-medium); 517 font-family: inherit; 518 transition: border-color 0.15s ease; 519} 520 521.atmark-input:focus, 522.atmark-textarea:focus { 523 outline: none; 524 border-color: var(--interactive-accent); 525 box-shadow: 0 0 0 2px var(--background-modifier-border-focus); 526} 527 528.atmark-input::placeholder, 529.atmark-textarea::placeholder { 530 color: var(--text-faint); 531} 532 533.atmark-textarea { 534 resize: vertical; 535 min-height: 60px; 536} 537 538.atmark-modal-actions { 539 display: flex; 540 align-items: center; 541 gap: 8px; 542 padding-top: 16px; 543 border-top: 1px solid var(--background-modifier-border); 544} 545 546.atmark-spacer { 547 flex: 1; 548} 549 550.atmark-btn { 551 padding: 8px 16px; 552 border-radius: var(--radius-s); 553 font-size: var(--font-small); 554 font-weight: var(--font-medium); 555 cursor: pointer; 556 transition: all 0.15s ease; 557} 558 559.atmark-btn:disabled { 560 opacity: 0.5; 561 cursor: not-allowed; 562} 563 564.atmark-btn-secondary { 565 background: var(--background-secondary); 566 border: 1px solid var(--background-modifier-border); 567 color: var(--text-normal); 568} 569 570.atmark-btn-secondary:hover:not(:disabled) { 571 background: var(--background-modifier-hover); 572} 573 574.atmark-btn-primary { 575 background: var(--interactive-accent); 576 border: 1px solid var(--interactive-accent); 577 color: var(--text-on-accent); 578} 579 580.atmark-btn-primary:hover:not(:disabled) { 581 background: var(--interactive-accent-hover); 582} 583 584.atmark-btn-danger { 585 background: color-mix(in srgb, var(--color-red) 15%, transparent); 586 border: none; 587 color: var(--color-red); 588} 589 590.atmark-btn-danger:hover:not(:disabled) { 591 background: color-mix(in srgb, var(--color-red) 25%, transparent); 592} 593 594.atmark-warning-text { 595 color: var(--text-muted); 596 margin-bottom: 16px; 597} 598 599.atmark-tags-container { 600 display: flex; 601 flex-direction: column; 602 gap: 8px; 603 margin-bottom: 8px; 604} 605 606.atmark-tag-row { 607 display: flex; 608 align-items: center; 609 gap: 8px; 610} 611 612.atmark-tag-row .atmark-input { 613 flex: 1; 614} 615 616.atmark-tag-remove-btn { 617 width: 32px; 618 height: 32px; 619 padding: 0; 620 font-size: 20px; 621 line-height: 1; 622 flex-shrink: 0; 623} 624 625 626.atmark-collection-list { 627 display: flex; 628 flex-direction: column; 629 gap: 8px; 630 max-height: 200px; 631 overflow-y: auto; 632} 633 634.atmark-collection-item { 635 display: flex; 636 align-items: center; 637 gap: 12px; 638 padding: 10px 12px; 639 background: var(--background-secondary); 640 border: 1px solid var(--background-modifier-border); 641 border-radius: var(--radius-m); 642 cursor: pointer; 643 transition: all 0.15s ease; 644} 645 646.atmark-collection-item:hover { 647 background: var(--background-modifier-hover); 648 border-color: var(--background-modifier-border-hover); 649} 650 651.atmark-collection-checkbox { 652 width: 18px; 653 height: 18px; 654 margin: 0; 655 cursor: pointer; 656 accent-color: var(--interactive-accent); 657} 658 659.atmark-collection-item-info { 660 display: flex; 661 flex-direction: column; 662 gap: 2px; 663 flex: 1; 664} 665 666.atmark-collection-item-name { 667 font-weight: var(--font-medium); 668 color: var(--text-normal); 669} 670 671.atmark-collection-item-desc { 672 font-size: var(--font-small); 673 color: var(--text-muted); 674} 675 676.atmark-tag-list { 677 display: flex; 678 flex-wrap: wrap; 679 gap: 6px; 680 margin-bottom: 8px; 681} 682 683.atmark-tag-item { 684 display: flex; 685 align-items: center; 686 padding: 4px 12px; 687 background: var(--background-modifier-border); 688 border-radius: var(--radius-m); 689 cursor: pointer; 690 transition: all 0.15s ease; 691 font-size: var(--font-small); 692 color: var(--text-muted); 693} 694 695.atmark-tag-item:hover { 696 background: var(--background-modifier-border-hover); 697 color: var(--text-normal); 698} 699 700.atmark-tag-item:has(input:checked) { 701 background: var(--interactive-accent); 702 color: var(--text-on-accent); 703} 704 705.atmark-tag-item input { 706 display: none; 707} 708 709/* Semble-specific styles (for NOTE cards and attached notes) */ 710.atmark-semble-card-note { 711 margin: 0; 712 padding: 8px 12px; 713 background: var(--background-primary); 714 border-left: 3px solid var(--color-accent); 715 border-radius: var(--radius-s); 716 font-size: var(--font-small); 717 font-style: italic; 718 color: var(--text-muted); 719 white-space: pre-wrap; 720 line-height: var(--line-height-normal); 721} 722 723.atmark-semble-card-text { 724 margin: 0; 725 line-height: 1.5; 726 color: var(--text-normal); 727 display: -webkit-box; 728 -webkit-line-clamp: 5; 729 -webkit-box-orient: vertical; 730 overflow: hidden; 731} 732 733.atmark-semble-detail-text { 734 margin: 0; 735 white-space: pre-wrap; 736 line-height: var(--line-height-normal); 737 color: var(--text-normal); 738 font-size: 1.1em; 739} 740 741.atmark-semble-detail-notes-section { 742 margin-top: 20px; 743 padding-top: 20px; 744 border-top: 1px solid var(--background-modifier-border); 745} 746 747.atmark-semble-detail-note { 748 display: flex; 749 align-items: flex-start; 750 justify-content: space-between; 751 gap: 12px; 752 padding: 12px 16px; 753 background: var(--background-secondary); 754 border-left: 3px solid var(--color-accent); 755 border-radius: var(--radius-s); 756 margin-bottom: 8px; 757} 758 759.atmark-semble-detail-note-content { 760 display: flex; 761 gap: 12px; 762 flex: 1; 763 min-width: 0; 764} 765 766.atmark-semble-detail-note-icon { 767 flex-shrink: 0; 768 color: var(--color-accent); 769} 770 771.atmark-semble-detail-note-icon svg { 772 width: 16px; 773 height: 16px; 774} 775 776.atmark-semble-detail-note-text { 777 margin: 0; 778 color: var(--text-normal); 779 line-height: var(--line-height-normal); 780 white-space: pre-wrap; 781} 782 783/* Card type badges */ 784.atmark-semble-badge-note { 785 background: var(--color-accent); 786 color: var(--text-on-accent); 787} 788 789.atmark-semble-badge-url { 790 background: color-mix(in srgb, var(--color-purple) 80%, var(--background-primary)); 791 color: var(--text-on-accent); 792} 793 794.atmark-badge-source { 795 font-size: var(--font-smallest); 796 opacity: 0.8; 797} 798 799.atmark-semble-badge-semble { 800 background: color-mix(in srgb, var(--color-green) 80%, var(--background-primary)); 801 color: var(--text-on-accent); 802} 803 804/* Profile Icon */ 805.atmark-profile-icon { 806 display: flex; 807 align-items: center; 808 gap: 6px; 809 padding: 10px 12px; 810 margin-bottom: -1px; 811 margin-left: auto; 812 position: absolute; 813 right: 0; 814 background: transparent; 815 transition: background 0.15s ease; 816} 817 818.atmark-profile-icon:hover { 819 background: var(--background-modifier-hover); 820} 821 822.atmark-avatar-btn { 823 display: flex; 824 align-items: center; 825 justify-content: center; 826 width: 24px; 827 height: 24px; 828 padding: 0; 829 background: var(--background-secondary); 830 border: 1px solid var(--background-modifier-border); 831 border-radius: 50%; 832 cursor: pointer; 833 overflow: hidden; 834 transition: opacity 0.15s ease; 835} 836 837.atmark-avatar-btn:hover { 838 opacity: 0.8; 839} 840 841.atmark-avatar-img { 842 width: 100%; 843 height: 100%; 844 object-fit: cover; 845 border-radius: 50%; 846} 847 848.atmark-avatar-initials { 849 font-size: var(--font-smallest); 850 font-weight: var(--font-semibold); 851 color: var(--text-muted); 852} 853 854.atmark-avatar-placeholder { 855 display: flex; 856 align-items: center; 857 justify-content: center; 858 width: 24px; 859 height: 24px; 860 background: var(--background-secondary); 861 border: 1px solid var(--background-modifier-border); 862 border-radius: 50%; 863 color: var(--text-faint); 864 font-size: var(--font-smallest); 865} 866 867.atmark-profile-info { 868 display: flex; 869 flex-direction: column; 870 align-items: flex-end; 871 gap: 1px; 872} 873 874.atmark-profile-name { 875 font-size: var(--font-ui-small); 876 font-weight: var(--font-medium); 877 color: var(--text-muted); 878 line-height: 1.2; 879} 880 881.atmark-profile-handle { 882 font-size: var(--font-smallest); 883 color: var(--text-faint); 884 line-height: 1.2; 885} 886 887/* Generic Card Detail Modal (used for all sources) */ 888.atmark-detail-modal { 889 padding: 20px; 890 max-width: 600px; 891} 892 893.atmark-detail-header { 894 margin-bottom: 16px; 895} 896 897.atmark-detail-footer { 898 margin-top: 20px; 899 padding-top: 16px; 900 border-top: 1px solid var(--background-modifier-border); 901} 902 903.atmark-detail-date { 904 font-size: var(--font-small); 905 color: var(--text-faint); 906} 907 908/* Semble-specific Add Note Form */ 909.atmark-semble-detail-add-note { 910 margin-top: 20px; 911 padding-top: 20px; 912 border-top: 1px solid var(--background-modifier-border); 913} 914 915.atmark-semble-add-note-form { 916 display: flex; 917 flex-direction: column; 918 gap: 12px; 919} 920 921.atmark-semble-note-input { 922 min-height: 80px; 923 resize: vertical; 924} 925 926.atmark-semble-note-delete-btn { 927 display: flex; 928 align-items: center; 929 justify-content: center; 930 width: 28px; 931 height: 28px; 932 padding: 0; 933 flex-shrink: 0; 934 background: transparent; 935 border: none; 936 border-radius: var(--radius-s); 937 cursor: pointer; 938 color: var(--text-faint); 939 opacity: 0.6; 940 transition: all 0.15s ease; 941} 942 943.atmark-semble-note-delete-btn:hover { 944 background: color-mix(in srgb, var(--color-red) 15%, transparent); 945 color: var(--color-red); 946 opacity: 1; 947} 948 949.atmark-semble-note-delete-btn svg { 950 width: 14px; 951 height: 14px; 952} 953 954/* Responsive styles */ 955@media (max-width: 600px) { 956 .atmark-view { 957 padding: 12px; 958 } 959 960 .atmark-header { 961 margin-bottom: 16px; 962 padding-bottom: 12px; 963 } 964 965 .atmark-profile-icon { 966 display: none; 967 } 968 969 .atmark-source-option { 970 padding: 8px 16px; 971 font-size: var(--font-ui-small); 972 } 973 974 .atmark-source-text { 975 font-size: var(--font-ui-small); 976 } 977 978 .atmark-source-selector { 979 justify-content: center; 980 } 981 982 .atmark-grid { 983 grid-template-columns: 1fr; 984 gap: 12px; 985 } 986 987 .standard-site-list { 988 grid-template-columns: 1fr; 989 gap: 12px; 990 } 991 992 .atmark-filter-section { 993 margin-bottom: 12px; 994 } 995} 996 997/* Hide profile in narrow sidebar widths (but not mobile) */ 998@media (max-width: 400px) { 999 .atmark-profile-icon { 1000 display: none; 1001 } 1002} 1003 1004.is-mobile .atmark-profile-icon { 1005 display: none; 1006} 1007 1008.is-mobile .atmark-source-option { 1009 padding: 8px 16px; 1010 font-size: var(--font-ui-small); 1011} 1012 1013.is-mobile .atmark-source-text { 1014 font-size: var(--font-ui-small); 1015} 1016 1017.is-mobile .atmark-source-selector { 1018 justify-content: center; 1019} 1020 1021/* Standard Site View */ 1022.standard-site-view { 1023 padding: 20px; 1024} 1025 1026.standard-site-header { 1027 display: flex; 1028 align-items: center; 1029 justify-content: space-between; 1030 margin-bottom: 24px; 1031 padding-bottom: 16px; 1032 border-bottom: 1px solid var(--background-modifier-border); 1033} 1034 1035.standard-site-header h2 { 1036 margin: 0; 1037 font-size: var(--h2-size); 1038 font-weight: var(--font-semibold); 1039 color: var(--text-normal); 1040} 1041 1042.standard-site-create-btn { 1043 display: flex; 1044 align-items: center; 1045 justify-content: center; 1046 padding: 8px 16px; 1047 gap: 6px; 1048 background: var(--interactive-accent); 1049 border: none; 1050 border-radius: var(--radius-s); 1051 cursor: pointer; 1052 color: var(--text-on-accent); 1053 font-weight: var(--font-medium); 1054 transition: all 0.15s ease; 1055} 1056 1057.standard-site-create-btn:hover { 1058 background: var(--interactive-accent-hover); 1059} 1060 1061.standard-site-create-btn svg { 1062 width: 16px; 1063 height: 16px; 1064} 1065 1066.standard-site-list { 1067 display: grid; 1068 grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); 1069 gap: 16px; 1070 padding: 8px 0; 1071} 1072 1073.standard-site-publication { 1074 background: var(--background-secondary); 1075 border: 1px solid var(--background-modifier-border); 1076 border-radius: var(--radius-m); 1077 padding: 16px; 1078 display: flex; 1079 flex-direction: column; 1080 transition: box-shadow 0.15s ease, border-color 0.15s ease; 1081} 1082 1083.standard-site-publication.clickable { 1084 cursor: pointer; 1085} 1086 1087.standard-site-publication:hover { 1088 box-shadow: var(--shadow-s); 1089 border-color: var(--background-modifier-border-hover); 1090} 1091 1092.standard-site-publication-header { 1093 display: flex; 1094 align-items: center; 1095 justify-content: space-between; 1096 gap: 12px; 1097 margin-bottom: 12px; 1098} 1099 1100.standard-site-publication-name { 1101 margin: 0; 1102 font-size: var(--h3-size); 1103 font-weight: var(--font-semibold); 1104 color: var(--text-normal); 1105 flex: 1; 1106} 1107 1108.standard-site-publication-actions { 1109 display: flex; 1110 gap: 6px; 1111} 1112 1113.standard-site-action-btn { 1114 display: flex; 1115 align-items: center; 1116 justify-content: center; 1117 width: 32px; 1118 height: 32px; 1119 padding: 0; 1120 background: transparent; 1121 border: none; 1122 border-radius: var(--radius-s); 1123 cursor: pointer; 1124 color: var(--text-faint); 1125 transition: all 0.15s ease; 1126} 1127 1128.standard-site-action-btn:hover { 1129 background: var(--background-modifier-hover); 1130 color: var(--text-normal); 1131} 1132 1133.standard-site-action-btn svg { 1134 width: 16px; 1135 height: 16px; 1136} 1137 1138.standard-site-publication-body { 1139 display: flex; 1140 flex-direction: column; 1141 gap: 12px; 1142} 1143 1144.standard-site-publication-url { 1145 display: flex; 1146 align-items: center; 1147 gap: 6px; 1148} 1149 1150.standard-site-publication-url a { 1151 color: var(--text-accent); 1152 text-decoration: none; 1153 font-size: var(--font-small); 1154} 1155 1156.standard-site-publication-url a:hover { 1157 text-decoration: underline; 1158} 1159 1160.standard-site-publication-description { 1161 margin: 0; 1162 color: var(--text-muted); 1163 line-height: var(--line-height-normal); 1164 font-size: var(--font-small); 1165} 1166 1167.standard-site-publication-footer { 1168 display: flex; 1169 flex-wrap: wrap; 1170 gap: 12px; 1171 align-items: center; 1172 margin-top: 12px; 1173 padding-top: 12px; 1174 border-top: 1px solid var(--background-modifier-border); 1175} 1176 1177.standard-site-publication-uri { 1178 display: flex; 1179 align-items: center; 1180 gap: 4px; 1181 font-size: var(--font-smallest); 1182 color: var(--text-faint); 1183} 1184 1185.standard-site-label { 1186 font-weight: var(--font-medium); 1187} 1188 1189.standard-site-publication-uri code { 1190 font-size: var(--font-smallest); 1191 background: var(--background-primary); 1192 padding: 2px 6px; 1193 border-radius: var(--radius-s); 1194 color: var(--text-muted); 1195} 1196 1197.standard-site-badge { 1198 font-size: var(--font-smallest); 1199 padding: 3px 8px; 1200 border-radius: var(--radius-s); 1201 background: color-mix(in srgb, var(--color-orange) 15%, transparent); 1202 color: var(--color-orange); 1203 border: 1px solid color-mix(in srgb, var(--color-orange) 30%, transparent); 1204 font-weight: var(--font-medium); 1205} 1206 1207.standard-site-error { 1208 color: var(--text-error); 1209}