Changeset fa0fbaf for KernelRecordsMVC.Web/wwwroot/css/site.css
- Timestamp:
- 09/01/26 06:11:34 (4 weeks ago)
- Branches:
- main
- Children:
- d2eccb3
- Parents:
- 08aefc6
- File:
-
- 1 edited
-
KernelRecordsMVC.Web/wwwroot/css/site.css (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
KernelRecordsMVC.Web/wwwroot/css/site.css
r08aefc6 rfa0fbaf 1 /* ========================================================= 2 KERNEL RECORDS 3 MAIN STYLESHEET 4 ========================================================= */ 5 6 * { 7 box-sizing: border-box; 8 margin: 0; 9 padding: 0; 10 } 11 1 12 html { 13 font-size: 16px; 14 scroll-behavior: smooth; 15 } 16 17 body { 18 font-family: 19 Inter, 20 -apple-system, 21 BlinkMacSystemFont, 22 "Segoe UI", 23 sans-serif; 24 25 background: #f5f5f3; 26 color: #171717; 27 28 min-height: 100vh; 29 30 display: flex; 31 flex-direction: column; 32 } 33 34 a { 35 color: inherit; 36 text-decoration: none; 37 } 38 39 button, 40 input, 41 select, 42 textarea { 43 font: inherit; 44 } 45 46 button { 47 cursor: pointer; 48 } 49 50 51 /* ========================================================= 52 NAVBAR 53 ========================================================= */ 54 55 .site-header { 56 position: relative; 57 z-index: 1000; 58 } 59 60 .navbar { 61 background: #111; 62 color: white; 63 border-bottom: 1px solid #292929; 64 } 65 66 .navbar-container { 67 max-width: 1450px; 68 height: 82px; 69 70 margin: auto; 71 padding: 0 30px; 72 73 display: flex; 74 align-items: center; 75 gap: 35px; 76 } 77 78 .brand { 79 display: flex; 80 flex-direction: column; 81 flex-shrink: 0; 82 83 line-height: .9; 84 letter-spacing: 2px; 85 } 86 87 .brand-main { 88 font-size: 25px; 89 font-weight: 900; 90 } 91 92 .brand-sub { 93 margin-top: 6px; 94 95 font-size: 11px; 96 font-weight: 600; 97 letter-spacing: 5px; 98 99 opacity: .65; 100 } 101 102 .navbar-content { 103 flex: 1; 104 105 display: flex; 106 align-items: center; 107 gap: 25px; 108 } 109 110 .nav-links { 111 display: flex; 112 align-items: center; 113 gap: 25px; 114 115 list-style: none; 116 white-space: nowrap; 117 } 118 119 .nav-links a { 120 position: relative; 121 122 color: #d5d5d5; 123 124 font-size: 13px; 125 font-weight: 700; 126 } 127 128 .nav-links a:hover { 129 color: white; 130 } 131 132 .nav-links > li > a::after { 133 content: ""; 134 135 position: absolute; 136 137 left: 0; 138 bottom: -8px; 139 140 width: 0; 141 height: 2px; 142 143 background: white; 144 145 transition: width .2s ease; 146 } 147 148 .nav-links > li > a:hover::after { 149 width: 100%; 150 } 151 152 .nav-sale { 153 color: #ffb4b4 !important; 154 } 155 156 157 /* ========================================================= 158 DROPDOWNS 159 ========================================================= */ 160 161 .nav-dropdown { 162 position: relative; 163 } 164 165 .dropdown-toggle { 166 display: flex; 167 align-items: center; 168 gap: 6px; 169 } 170 171 .arrow { 172 font-size: 12px; 173 opacity: .7; 174 } 175 176 .dropdown-menu { 177 position: absolute; 178 179 top: calc(100% + 22px); 180 left: -15px; 181 182 width: 190px; 183 184 padding: 8px 0; 185 186 background: #1b1b1b; 187 188 border: 1px solid #303030; 189 border-radius: 8px; 190 191 box-shadow: 0 15px 40px rgba(0,0,0,.35); 192 193 opacity: 0; 194 visibility: hidden; 195 196 transform: translateY(-5px); 197 198 transition: 199 opacity .2s ease, 200 transform .2s ease, 201 visibility .2s ease; 202 } 203 204 .nav-dropdown:hover .dropdown-menu { 205 opacity: 1; 206 visibility: visible; 207 transform: translateY(0); 208 } 209 210 .dropdown-menu a { 211 display: block; 212 213 padding: 11px 17px; 214 215 color: #ccc; 216 } 217 218 .dropdown-menu a:hover { 219 background: #292929; 220 color: white; 221 } 222 223 224 /* ========================================================= 225 NAV SEARCH 226 ========================================================= */ 227 228 .navbar-search { 229 flex: 1; 230 231 max-width: 320px; 232 height: 40px; 233 234 margin-left: auto; 235 236 display: flex; 237 238 background: #242424; 239 240 border: 1px solid #343434; 241 border-radius: 6px; 242 243 overflow: hidden; 244 } 245 246 .navbar-search input { 247 flex: 1; 248 249 min-width: 0; 250 251 padding: 0 14px; 252 253 border: none; 254 outline: none; 255 256 background: transparent; 257 color: white; 258 259 font-size: 13px; 260 } 261 262 .navbar-search input::placeholder { 263 color: #888; 264 } 265 266 .navbar-search button { 267 width: 43px; 268 269 border: none; 270 background: transparent; 271 272 color: #aaa; 273 274 font-size: 22px; 275 } 276 277 .navbar-search button:hover { 278 background: #303030; 279 color: white; 280 } 281 282 283 /* ========================================================= 284 NAV ACTIONS 285 ========================================================= */ 286 287 .navbar-actions { 288 display: flex; 289 align-items: center; 290 gap: 17px; 291 292 flex-shrink: 0; 293 } 294 295 .nav-icon { 296 display: flex; 297 align-items: center; 298 gap: 7px; 299 300 color: #d1d1d1; 301 302 transition: color .2s ease; 303 } 304 305 .nav-icon:hover { 306 color: white; 307 } 308 309 .icon { 310 font-size: 21px; 311 } 312 313 .icon-label { 314 font-size: 12px; 315 font-weight: 700; 316 } 317 318 .cart-icon { 319 font-size: 17px; 320 } 321 322 323 /* ========================================================= 324 AUTH 325 ========================================================= */ 326 327 .auth-buttons { 328 display: flex; 329 align-items: center; 330 gap: 8px; 331 } 332 333 .login-button, 334 .register-button { 335 height: 38px; 336 337 padding: 0 15px; 338 339 display: flex; 340 align-items: center; 341 justify-content: center; 342 343 border-radius: 5px; 344 345 font-size: 12px; 346 font-weight: 800; 347 } 348 349 .login-button { 350 border: 1px solid #555; 351 background: transparent; 352 color: #eee; 353 } 354 355 .login-button:hover { 356 background: #292929; 357 } 358 359 .register-button { 360 border: 1px solid white; 361 background: white; 362 color: #111; 363 } 364 365 .register-button:hover { 366 background: #ddd; 367 } 368 369 370 /* ========================================================= 371 ACCOUNT 372 ========================================================= */ 373 374 .account-dropdown { 375 position: relative; 376 } 377 378 .account-button { 379 height: 40px; 380 381 display: flex; 382 align-items: center; 383 gap: 8px; 384 385 padding: 0 5px; 386 387 border: none; 388 background: transparent; 389 color: white; 390 } 391 392 .user-icon { 393 width: 28px; 394 height: 28px; 395 396 display: flex; 397 align-items: center; 398 justify-content: center; 399 400 border-radius: 50%; 401 402 background: #303030; 403 color: #aaa; 404 405 font-size: 10px; 406 } 407 408 .account-name { 409 max-width: 100px; 410 411 overflow: hidden; 412 text-overflow: ellipsis; 413 white-space: nowrap; 414 415 font-size: 12px; 416 font-weight: 700; 417 } 418 419 .account-menu { 420 position: absolute; 421 422 right: 0; 423 top: calc(100% + 15px); 424 425 width: 210px; 426 427 padding: 7px 0; 428 429 background: #1b1b1b; 430 431 border: 1px solid #303030; 432 border-radius: 8px; 433 434 box-shadow: 0 15px 40px rgba(0,0,0,.35); 435 436 opacity: 0; 437 visibility: hidden; 438 439 transform: translateY(-5px); 440 441 transition: 442 opacity .2s ease, 443 transform .2s ease, 444 visibility .2s ease; 445 } 446 447 .account-dropdown:hover .account-menu { 448 opacity: 1; 449 visibility: visible; 450 transform: translateY(0); 451 } 452 453 .account-menu a, 454 .logout-button { 455 width: 100%; 456 457 display: flex; 458 align-items: center; 459 gap: 11px; 460 461 padding: 11px 16px; 462 463 border: none; 464 background: transparent; 465 466 color: #d0d0d0; 467 468 font-size: 13px; 469 text-align: left; 470 } 471 472 .account-menu a:hover, 473 .logout-button:hover { 474 background: #292929; 475 color: white; 476 } 477 478 .menu-divider { 479 height: 1px; 480 481 margin: 6px 0; 482 483 background: #303030; 484 } 485 486 487 /* ========================================================= 488 ANNOUNCEMENT 489 ========================================================= */ 490 491 .announcement-bar { 492 height: 32px; 493 494 display: flex; 495 align-items: center; 496 justify-content: center; 497 gap: 10px; 498 499 background: #e8e8e8; 500 color: #333; 501 502 font-size: 9px; 503 font-weight: 900; 504 letter-spacing: 1.3px; 505 } 506 507 .announcement-separator { 508 opacity: .45; 509 } 510 511 512 /* ========================================================= 513 MAIN 514 ========================================================= */ 515 516 .main-content { 517 flex: 1; 518 width: 100%; 519 } 520 521 522 /* ========================================================= 523 GENERAL 524 ========================================================= */ 525 526 .page-eyebrow, 527 .section-label { 528 display: block; 529 530 color: #777; 531 532 font-size: 10px; 533 font-weight: 900; 534 535 letter-spacing: 1.8px; 536 text-transform: uppercase; 537 } 538 539 .store-button { 540 min-height: 42px; 541 542 display: inline-flex; 543 align-items: center; 544 justify-content: center; 545 546 padding: 0 18px; 547 548 border: 1px solid #171717; 549 border-radius: 6px; 550 551 font-size: 12px; 552 font-weight: 800; 553 554 transition: 555 background .2s ease, 556 color .2s ease, 557 transform .2s ease; 558 } 559 560 .store-button:hover { 561 transform: translateY(-1px); 562 } 563 564 .store-button.primary { 565 background: #171717; 566 color: white; 567 } 568 569 .store-button.primary:hover { 570 background: #333; 571 } 572 573 .store-button.secondary { 574 background: white; 575 color: #171717; 576 border-color: #d4d4d4; 577 } 578 579 .store-button.secondary:hover { 580 background: #eee; 581 } 582 583 .store-button.small { 584 min-height: 36px; 585 padding: 0 14px; 586 } 587 588 .store-button.full { 589 width: 100%; 590 } 591 592 593 /* ========================================================= 594 RELEASE INDEX 595 ========================================================= */ 596 597 .releases-page { 598 max-width: 1380px; 599 600 margin: 0 auto; 601 602 padding: 55px 30px 80px; 603 } 604 605 .releases-header { 606 display: flex; 607 align-items: flex-end; 608 justify-content: space-between; 609 610 margin-bottom: 35px; 611 } 612 613 .releases-header h1 { 614 margin-top: 8px; 615 616 font-size: 44px; 617 font-weight: 900; 618 letter-spacing: -1.5px; 619 } 620 621 .releases-header p { 622 margin-top: 8px; 623 624 color: #777; 625 626 font-size: 15px; 627 } 628 629 .release-count { 630 color: #777; 631 632 font-size: 12px; 633 font-weight: 800; 634 } 635 636 637 /* ========================================================= 638 FILTERS 639 ========================================================= */ 640 641 .release-filters { 642 display: grid; 643 644 grid-template-columns: 645 2fr 646 1fr 647 1fr 648 1fr 649 1fr 650 auto; 651 652 gap: 12px; 653 654 align-items: end; 655 656 padding: 18px; 657 658 margin-bottom: 35px; 659 660 background: white; 661 662 border: 1px solid #ddd; 663 border-radius: 10px; 664 665 box-shadow: 0 5px 20px rgba(0,0,0,.04); 666 } 667 668 .release-filters label { 669 display: block; 670 671 margin-bottom: 7px; 672 673 color: #666; 674 675 font-size: 9px; 676 font-weight: 900; 677 678 text-transform: uppercase; 679 letter-spacing: 1px; 680 } 681 682 .release-filters input, 683 .release-filters select { 684 width: 100%; 685 height: 44px; 686 687 padding: 0 13px; 688 689 border: 1px solid #d5d5d5; 690 border-radius: 6px; 691 692 outline: none; 693 694 background: white; 695 color: #171717; 696 697 font-size: 12px; 698 } 699 700 .release-filters input:focus, 701 .release-filters select:focus { 702 border-color: #777; 703 } 704 705 .filter-button .store-button { 706 height: 44px; 707 } 708 709 .clear-filter { 710 grid-column: 1 / -1; 711 } 712 713 .clear-filter a { 714 color: #777; 715 716 font-size: 11px; 717 font-weight: 700; 718 } 719 720 .clear-filter a:hover { 721 color: #111; 722 } 723 724 725 /* ========================================================= 726 RELEASE GRID 727 ========================================================= */ 728 729 .release-grid { 730 display: grid; 731 732 grid-template-columns: 733 repeat(4, minmax(0, 1fr)); 734 735 gap: 24px; 736 } 737 738 .release-card { 739 overflow: hidden; 740 741 background: white; 742 743 border: 1px solid #ddd; 744 border-radius: 10px; 745 746 transition: 747 transform .25s ease, 748 box-shadow .25s ease; 749 } 750 751 .release-card:hover { 752 transform: translateY(-5px); 753 754 box-shadow: 755 0 18px 40px rgba(0,0,0,.10); 756 } 757 758 .release-card-cover { 759 position: relative; 760 761 display: block; 762 763 aspect-ratio: 1 / 1; 764 765 overflow: hidden; 766 767 background: #ddd; 768 } 769 770 .release-card-cover img { 771 width: 100%; 772 height: 100%; 773 774 display: block; 775 776 object-fit: cover; 777 778 transition: transform .4s ease; 779 } 780 781 .release-card:hover .release-card-cover img { 782 transform: scale(1.04); 783 } 784 785 .release-no-cover { 786 width: 100%; 787 height: 100%; 788 789 display: flex; 790 align-items: center; 791 justify-content: center; 792 793 background: 794 linear-gradient( 795 135deg, 796 #222, 797 #555 798 ); 799 800 color: white; 801 } 802 803 .release-no-cover span { 804 font-size: 55px; 805 } 806 807 .release-type-badge { 808 position: absolute; 809 810 top: 12px; 811 left: 12px; 812 813 padding: 6px 9px; 814 815 background: rgba(17,17,17,.9); 816 color: white; 817 818 border-radius: 4px; 819 820 font-size: 9px; 821 font-weight: 900; 822 823 letter-spacing: 1px; 824 } 825 826 .release-card-body { 827 padding: 19px; 828 } 829 830 .release-card-meta { 831 display: flex; 832 justify-content: space-between; 833 834 margin-bottom: 8px; 835 836 color: #888; 837 838 font-size: 9px; 839 font-weight: 800; 840 841 text-transform: uppercase; 842 letter-spacing: .8px; 843 } 844 845 .release-card h2 { 846 margin-bottom: 5px; 847 848 font-size: 20px; 849 font-weight: 800; 850 851 line-height: 1.2; 852 } 853 854 .release-card h2 a:hover { 855 text-decoration: underline; 856 } 857 858 .release-card-artist { 859 min-height: 20px; 860 861 color: #666; 862 863 font-size: 13px; 864 } 865 866 .format-list { 867 display: flex; 868 flex-wrap: wrap; 869 870 gap: 6px; 871 872 margin-top: 14px; 873 } 874 875 .format-pill { 876 padding: 5px 8px; 877 878 background: #f0f0ee; 879 880 border-radius: 4px; 881 882 color: #555; 883 884 font-size: 9px; 885 font-weight: 900; 886 887 letter-spacing: .6px; 888 } 889 890 .release-card-bottom { 891 display: flex; 892 align-items: center; 893 justify-content: space-between; 894 895 gap: 10px; 896 897 margin-top: 18px; 898 padding-top: 15px; 899 900 border-top: 1px solid #eee; 901 } 902 903 .release-starting { 904 color: #888; 905 906 font-size: 10px; 907 } 908 909 .release-starting strong { 910 display: block; 911 912 margin-top: 2px; 913 914 color: #171717; 915 2 916 font-size: 14px; 3 917 } 4 918 5 @media (min-width: 768px) { 6 html { 7 font-size: 16px; 8 } 9 } 10 11 .btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus { 12 box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb; 13 } 14 15 html { 919 920 /* ========================================================= 921 EMPTY STATES 922 ========================================================= */ 923 924 .empty-store, 925 .no-sales-data { 926 padding: 80px 25px; 927 928 text-align: center; 929 930 background: white; 931 932 border: 1px solid #ddd; 933 border-radius: 10px; 934 } 935 936 .empty-store-icon { 937 margin-bottom: 15px; 938 939 color: #777; 940 941 font-size: 48px; 942 } 943 944 .empty-store h2, 945 .no-sales-data h2 { 946 margin-bottom: 8px; 947 948 font-size: 25px; 949 } 950 951 .empty-store p, 952 .no-sales-data p { 953 margin-bottom: 22px; 954 955 color: #777; 956 } 957 958 959 /* ========================================================= 960 RELEASE DETAILS 961 ========================================================= */ 962 963 .release-details-page { 964 max-width: 1250px; 965 966 margin: 0 auto; 967 968 padding: 50px 30px 80px; 969 } 970 971 .release-hero { 972 display: grid; 973 974 grid-template-columns: 975 minmax(350px, 500px) 976 1fr; 977 978 gap: 55px; 979 980 align-items: start; 981 } 982 983 .release-hero-cover { 984 aspect-ratio: 1 / 1; 985 986 overflow: hidden; 987 988 border-radius: 8px; 989 990 background: #ddd; 991 } 992 993 .release-hero-cover img { 994 width: 100%; 995 height: 100%; 996 997 object-fit: cover; 998 } 999 1000 .release-hero-info h1 { 1001 margin-top: 8px; 1002 1003 font-size: 55px; 1004 line-height: .95; 1005 letter-spacing: -2px; 1006 font-weight: 900; 1007 } 1008 1009 .release-artists-main { 1010 margin: 22px 0 32px; 1011 1012 color: #555; 1013 1014 font-size: 19px; 1015 } 1016 1017 .release-facts { 1018 display: grid; 1019 1020 grid-template-columns: 1021 repeat(3, 1fr); 1022 1023 gap: 15px; 1024 1025 padding: 20px 0; 1026 1027 border-top: 1px solid #ddd; 1028 border-bottom: 1px solid #ddd; 1029 } 1030 1031 .release-facts div { 1032 display: flex; 1033 flex-direction: column; 1034 1035 gap: 5px; 1036 } 1037 1038 .release-facts span { 1039 color: #888; 1040 1041 font-size: 9px; 1042 font-weight: 900; 1043 1044 text-transform: uppercase; 1045 letter-spacing: 1px; 1046 } 1047 1048 .release-facts strong { 1049 font-size: 13px; 1050 } 1051 1052 .artist-section { 1053 margin-top: 25px; 1054 } 1055 1056 .release-artists { 1057 display: flex; 1058 flex-wrap: wrap; 1059 1060 gap: 7px; 1061 1062 margin-top: 10px; 1063 } 1064 1065 .artist-tag { 1066 padding: 7px 10px; 1067 1068 background: white; 1069 1070 border: 1px solid #ddd; 1071 border-radius: 5px; 1072 1073 font-size: 12px; 1074 font-weight: 700; 1075 } 1076 1077 .artist-role { 1078 color: #888; 1079 1080 font-size: 9px; 1081 1082 text-transform: uppercase; 1083 } 1084 1085 1086 /* ========================================================= 1087 RELEASE SECTIONS 1088 ========================================================= */ 1089 1090 .release-section { 1091 margin-top: 70px; 1092 } 1093 1094 .section-heading { 1095 display: flex; 1096 align-items: flex-end; 1097 justify-content: space-between; 1098 1099 margin-bottom: 22px; 1100 padding-bottom: 15px; 1101 1102 border-bottom: 1px solid #ddd; 1103 } 1104 1105 .section-heading h2 { 1106 margin-top: 5px; 1107 1108 font-size: 28px; 1109 font-weight: 900; 1110 } 1111 1112 .track-count { 1113 color: #888; 1114 1115 font-size: 12px; 1116 } 1117 1118 1119 /* ========================================================= 1120 PRODUCT CARDS 1121 ========================================================= */ 1122 1123 .product-grid { 1124 display: grid; 1125 1126 grid-template-columns: 1127 repeat(3, minmax(0, 1fr)); 1128 1129 gap: 18px; 1130 } 1131 1132 .store-product-card { 1133 padding: 23px; 1134 1135 background: white; 1136 1137 border: 1px solid #ddd; 1138 border-radius: 9px; 1139 1140 transition: 1141 transform .2s ease, 1142 box-shadow .2s ease; 1143 } 1144 1145 .store-product-card:hover { 1146 transform: translateY(-3px); 1147 1148 box-shadow: 1149 0 12px 30px rgba(0,0,0,.08); 1150 } 1151 1152 .product-card-top { 1153 display: flex; 1154 align-items: center; 1155 justify-content: space-between; 1156 1157 margin-bottom: 20px; 1158 } 1159 1160 .product-format { 1161 font-size: 13px; 1162 font-weight: 900; 1163 1164 letter-spacing: 1px; 1165 } 1166 1167 .product-stock { 1168 font-size: 10px; 1169 font-weight: 800; 1170 } 1171 1172 .product-stock.available { 1173 color: #27804d; 1174 } 1175 1176 .product-stock.unavailable { 1177 color: #a33; 1178 } 1179 1180 .product-price { 1181 margin-bottom: 10px; 1182 1183 font-size: 28px; 1184 font-weight: 900; 1185 } 1186 1187 .product-description { 1188 min-height: 48px; 1189 1190 color: #777; 1191 1192 font-size: 12px; 1193 line-height: 1.6; 1194 } 1195 1196 .product-actions { 1197 display: grid; 1198 1199 grid-template-columns: 1200 1fr 1fr; 1201 1202 gap: 8px; 1203 1204 margin-top: 20px; 1205 } 1206 1207 1208 /* ========================================================= 1209 TRACK LIST 1210 ========================================================= */ 1211 1212 .track-list { 1213 background: white; 1214 1215 border: 1px solid #ddd; 1216 border-radius: 8px; 1217 1218 overflow: hidden; 1219 1220 list-style: none; 1221 } 1222 1223 .track-row { 1224 min-height: 68px; 1225 1226 display: grid; 1227 1228 grid-template-columns: 1229 55px 1fr auto; 1230 1231 align-items: center; 1232 1233 gap: 15px; 1234 1235 padding: 10px 20px; 1236 1237 border-bottom: 1px solid #eee; 1238 } 1239 1240 .track-row:last-child { 1241 border-bottom: none; 1242 } 1243 1244 .track-number { 1245 color: #999; 1246 1247 font-size: 12px; 1248 font-weight: 800; 1249 } 1250 1251 .track-main strong { 1252 font-size: 13px; 1253 } 1254 1255 .song-artists { 1256 margin-top: 4px; 1257 1258 color: #888; 1259 1260 font-size: 11px; 1261 } 1262 1263 .track-duration { 1264 color: #777; 1265 1266 font-size: 12px; 1267 } 1268 1269 1270 /* ========================================================= 1271 SINGLE 1272 ========================================================= */ 1273 1274 .single-info-card { 1275 display: flex; 1276 align-items: center; 1277 justify-content: space-between; 1278 1279 padding: 25px; 1280 1281 background: white; 1282 1283 border: 1px solid #ddd; 1284 border-radius: 8px; 1285 } 1286 1287 .single-info-card h2 { 1288 margin-top: 5px; 1289 1290 font-size: 22px; 1291 } 1292 1293 .single-duration { 1294 text-align: right; 1295 } 1296 1297 .single-duration span { 1298 display: block; 1299 1300 color: #888; 1301 1302 font-size: 9px; 1303 font-weight: 900; 1304 1305 text-transform: uppercase; 1306 letter-spacing: 1px; 1307 } 1308 1309 .single-duration strong { 1310 display: block; 1311 1312 margin-top: 4px; 1313 1314 font-size: 20px; 1315 } 1316 1317 1318 /* ========================================================= 1319 CART 1320 ========================================================= */ 1321 1322 .cart-page { 1323 max-width: 1250px; 1324 1325 margin: 0 auto; 1326 1327 padding: 55px 30px 80px; 1328 } 1329 1330 .cart-header { 1331 display: flex; 1332 align-items: flex-end; 1333 justify-content: space-between; 1334 1335 margin-bottom: 35px; 1336 } 1337 1338 .cart-header h1 { 1339 margin-top: 7px; 1340 1341 font-size: 44px; 1342 font-weight: 900; 1343 1344 letter-spacing: -1.5px; 1345 } 1346 1347 .cart-header p { 1348 margin-top: 8px; 1349 1350 color: #777; 1351 1352 font-size: 14px; 1353 } 1354 1355 .cart-layout { 1356 display: grid; 1357 1358 grid-template-columns: 1359 1fr 330px; 1360 1361 gap: 25px; 1362 1363 align-items: start; 1364 } 1365 1366 .cart-items { 1367 background: white; 1368 1369 border: 1px solid #ddd; 1370 border-radius: 9px; 1371 1372 overflow: hidden; 1373 } 1374 1375 .cart-items-header { 1376 padding: 16px 20px; 1377 1378 background: #fafafa; 1379 1380 border-bottom: 1px solid #ddd; 1381 1382 color: #777; 1383 1384 font-size: 12px; 1385 font-weight: 800; 1386 } 1387 1388 .cart-item { 1389 min-height: 130px; 1390 1391 display: grid; 1392 1393 grid-template-columns: 1394 90px 1fr auto auto 30px; 1395 1396 align-items: center; 1397 1398 gap: 18px; 1399 1400 padding: 20px; 1401 1402 border-bottom: 1px solid #eee; 1403 } 1404 1405 .cart-item:last-child { 1406 border-bottom: none; 1407 } 1408 1409 .cart-item-cover { 1410 width: 90px; 1411 height: 90px; 1412 1413 display: flex; 1414 align-items: center; 1415 justify-content: center; 1416 1417 overflow: hidden; 1418 1419 background: 1420 linear-gradient( 1421 135deg, 1422 #222, 1423 #555 1424 ); 1425 1426 color: white; 1427 1428 border-radius: 5px; 1429 } 1430 1431 .cart-item-cover img { 1432 width: 100%; 1433 height: 100%; 1434 1435 object-fit: cover; 1436 } 1437 1438 .cart-item-type { 1439 color: #888; 1440 1441 font-size: 9px; 1442 font-weight: 900; 1443 1444 text-transform: uppercase; 1445 letter-spacing: 1px; 1446 } 1447 1448 .cart-item-info h2 { 1449 margin-top: 5px; 1450 1451 font-size: 17px; 1452 font-weight: 800; 1453 } 1454 1455 .cart-item-info h2 a:hover { 1456 text-decoration: underline; 1457 } 1458 1459 .cart-item-price { 1460 margin-top: 6px; 1461 1462 color: #777; 1463 1464 font-size: 11px; 1465 } 1466 1467 .cart-item-quantity form { 1468 display: flex; 1469 align-items: center; 1470 1471 gap: 6px; 1472 } 1473 1474 .cart-item-quantity input { 1475 width: 58px; 1476 height: 36px; 1477 1478 padding: 0 8px; 1479 1480 border: 1px solid #ccc; 1481 border-radius: 5px; 1482 1483 text-align: center; 1484 } 1485 1486 .cart-item-quantity button { 1487 height: 36px; 1488 1489 padding: 0 9px; 1490 1491 border: 1px solid #ccc; 1492 border-radius: 5px; 1493 1494 background: white; 1495 color: #555; 1496 1497 font-size: 10px; 1498 font-weight: 800; 1499 } 1500 1501 .cart-item-quantity button:hover { 1502 background: #eee; 1503 } 1504 1505 .cart-item-total { 1506 min-width: 80px; 1507 1508 text-align: right; 1509 1510 font-size: 15px; 1511 font-weight: 900; 1512 } 1513 1514 .cart-remove { 1515 width: 28px; 1516 height: 28px; 1517 1518 border: none; 1519 background: transparent; 1520 1521 color: #999; 1522 1523 font-size: 24px; 1524 } 1525 1526 .cart-remove:hover { 1527 color: #a33; 1528 } 1529 1530 .cart-summary { 1531 position: sticky; 1532 top: 25px; 1533 1534 padding: 25px; 1535 1536 background: white; 1537 1538 border: 1px solid #ddd; 1539 border-radius: 9px; 1540 1541 box-shadow: 0 8px 25px rgba(0,0,0,.05); 1542 } 1543 1544 .cart-summary h2 { 1545 margin-top: 6px; 1546 1547 font-size: 23px; 1548 } 1549 1550 .summary-line { 1551 display: flex; 1552 justify-content: space-between; 1553 1554 padding: 15px 0; 1555 1556 color: #777; 1557 1558 font-size: 13px; 1559 1560 border-bottom: 1px solid #eee; 1561 } 1562 1563 .summary-line.total { 1564 margin-bottom: 20px; 1565 1566 color: #171717; 1567 1568 font-size: 17px; 1569 font-weight: 900; 1570 } 1571 1572 1573 /* ========================================================= 1574 WISHLIST 1575 ========================================================= */ 1576 1577 .wishlist-page { 1578 max-width: 1250px; 1579 1580 margin: 0 auto; 1581 1582 padding: 55px 30px 80px; 1583 } 1584 1585 .page-header { 1586 margin-bottom: 35px; 1587 } 1588 1589 .page-header h1 { 1590 margin-top: 7px; 1591 1592 font-size: 44px; 1593 font-weight: 900; 1594 1595 letter-spacing: -1.5px; 1596 } 1597 1598 .page-header p { 1599 margin-top: 8px; 1600 1601 color: #777; 1602 1603 font-size: 14px; 1604 } 1605 1606 .wishlist-grid { 1607 display: grid; 1608 1609 grid-template-columns: 1610 repeat(2, minmax(0, 1fr)); 1611 1612 gap: 20px; 1613 } 1614 1615 .wishlist-card { 1616 display: grid; 1617 1618 grid-template-columns: 1619 190px 1fr; 1620 1621 overflow: hidden; 1622 1623 background: white; 1624 1625 border: 1px solid #ddd; 1626 border-radius: 9px; 1627 } 1628 1629 .wishlist-cover { 1630 aspect-ratio: 1 / 1; 1631 1632 overflow: hidden; 1633 1634 background: #ddd; 1635 } 1636 1637 .wishlist-cover img { 1638 width: 100%; 1639 height: 100%; 1640 1641 display: block; 1642 1643 object-fit: cover; 1644 1645 transition: transform .35s ease; 1646 } 1647 1648 .wishlist-card:hover .wishlist-cover img { 1649 transform: scale(1.04); 1650 } 1651 1652 .wishlist-info { 1653 padding: 22px; 1654 } 1655 1656 .wishlist-format { 1657 color: #888; 1658 1659 font-size: 9px; 1660 font-weight: 900; 1661 1662 text-transform: uppercase; 1663 letter-spacing: 1px; 1664 } 1665 1666 .wishlist-info h2 { 1667 margin-top: 7px; 1668 1669 font-size: 20px; 1670 font-weight: 900; 1671 } 1672 1673 .wishlist-info h2 a:hover { 1674 text-decoration: underline; 1675 } 1676 1677 .wishlist-genre { 1678 margin-top: 6px; 1679 1680 color: #777; 1681 1682 font-size: 12px; 1683 } 1684 1685 .wishlist-price { 1686 margin-top: 18px; 1687 1688 font-size: 22px; 1689 font-weight: 900; 1690 } 1691 1692 .stock { 1693 display: inline-block; 1694 1695 margin-top: 7px; 1696 1697 font-size: 10px; 1698 font-weight: 800; 1699 } 1700 1701 .stock.available { 1702 color: #27804d; 1703 } 1704 1705 .stock.unavailable { 1706 color: #a33; 1707 } 1708 1709 .wishlist-actions { 1710 display: flex; 1711 flex-wrap: wrap; 1712 1713 gap: 8px; 1714 1715 margin-top: 20px; 1716 } 1717 1718 .btn-remove { 1719 min-height: 42px; 1720 1721 padding: 0 17px; 1722 1723 border: 1px solid #ccc; 1724 border-radius: 6px; 1725 1726 background: white; 1727 color: #777; 1728 1729 font-size: 12px; 1730 font-weight: 800; 1731 } 1732 1733 .btn-remove:hover { 1734 border-color: #a33; 1735 color: #a33; 1736 } 1737 1738 1739 /* ========================================================= 1740 SALE 1741 ========================================================= */ 1742 1743 .sale-page { 1744 max-width: 1380px; 1745 1746 margin: 0 auto; 1747 1748 padding: 55px 30px 80px; 1749 } 1750 1751 .sale-header { 1752 margin-bottom: 40px; 1753 } 1754 1755 .sale-header h1 { 1756 margin-top: 8px; 1757 1758 font-size: 48px; 1759 font-weight: 900; 1760 1761 letter-spacing: -2px; 1762 } 1763 1764 .sale-header p { 1765 margin-top: 8px; 1766 1767 color: #777; 1768 } 1769 1770 .sale-grid { 1771 display: grid; 1772 1773 grid-template-columns: 1774 repeat(4, minmax(0, 1fr)); 1775 1776 gap: 24px; 1777 } 1778 1779 .sale-card { 1780 overflow: hidden; 1781 1782 background: white; 1783 1784 border: 1px solid #ddd; 1785 border-radius: 10px; 1786 1787 transition: 1788 transform .25s ease, 1789 box-shadow .25s ease; 1790 } 1791 1792 .sale-card:hover { 1793 transform: translateY(-5px); 1794 1795 box-shadow: 1796 0 18px 40px rgba(0,0,0,.10); 1797 } 1798 1799 .sale-card-cover { 16 1800 position: relative; 17 min-height: 100%; 18 } 19 20 body { 21 margin-bottom: 60px; 22 } 1801 1802 display: block; 1803 1804 aspect-ratio: 1 / 1; 1805 1806 overflow: hidden; 1807 1808 background: #ddd; 1809 } 1810 1811 .sale-card-cover img { 1812 width: 100%; 1813 height: 100%; 1814 1815 object-fit: cover; 1816 1817 transition: transform .4s ease; 1818 } 1819 1820 .sale-card:hover .sale-card-cover img { 1821 transform: scale(1.04); 1822 } 1823 1824 .sale-badge { 1825 position: absolute; 1826 1827 top: 12px; 1828 right: 12px; 1829 1830 padding: 7px 9px; 1831 1832 background: #171717; 1833 color: white; 1834 1835 border-radius: 4px; 1836 1837 font-size: 10px; 1838 font-weight: 900; 1839 } 1840 1841 .sale-card-body { 1842 padding: 20px; 1843 } 1844 1845 .sale-card-body h2 { 1846 margin-top: 7px; 1847 1848 font-size: 20px; 1849 font-weight: 900; 1850 } 1851 1852 .sale-card-body h2 a:hover { 1853 text-decoration: underline; 1854 } 1855 1856 .sale-price-row { 1857 display: flex; 1858 align-items: baseline; 1859 gap: 9px; 1860 1861 margin-top: 18px; 1862 } 1863 1864 .sale-old-price { 1865 color: #999; 1866 1867 font-size: 13px; 1868 1869 text-decoration: line-through; 1870 } 1871 1872 .sale-price { 1873 font-size: 25px; 1874 font-weight: 900; 1875 } 1876 1877 .sale-actions { 1878 display: grid; 1879 1880 gap: 8px; 1881 1882 margin-top: 20px; 1883 } 1884 1885 1886 /* ========================================================= 1887 TOP SELLERS 1888 ========================================================= */ 1889 1890 .top-sellers-page { 1891 max-width: 1380px; 1892 1893 margin: 0 auto; 1894 1895 padding: 55px 30px 80px; 1896 } 1897 1898 .top-sellers-header { 1899 margin-bottom: 40px; 1900 } 1901 1902 .top-sellers-header h1 { 1903 margin-top: 8px; 1904 1905 font-size: 48px; 1906 font-weight: 900; 1907 1908 letter-spacing: -2px; 1909 } 1910 1911 .top-sellers-header p { 1912 margin-top: 8px; 1913 1914 color: #777; 1915 } 1916 1917 1918 /* ========================================================= 1919 HOME 1920 ========================================================= */ 1921 1922 .home-page { 1923 max-width: 1400px; 1924 1925 margin: 0 auto; 1926 1927 padding: 35px 30px 80px; 1928 } 1929 1930 .home-hero { 1931 min-height: 540px; 1932 1933 position: relative; 1934 1935 display: flex; 1936 align-items: center; 1937 1938 padding: 75px; 1939 1940 overflow: hidden; 1941 1942 background: #111; 1943 color: white; 1944 1945 border-radius: 16px; 1946 } 1947 1948 .home-hero-content { 1949 position: relative; 1950 z-index: 2; 1951 1952 max-width: 680px; 1953 } 1954 1955 .home-eyebrow { 1956 color: #aaa; 1957 1958 font-size: 11px; 1959 font-weight: 900; 1960 1961 letter-spacing: 3px; 1962 } 1963 1964 .home-hero h1 { 1965 margin-top: 16px; 1966 1967 font-size: clamp(48px, 6vw, 82px); 1968 1969 line-height: .93; 1970 1971 font-weight: 900; 1972 1973 letter-spacing: -4px; 1974 } 1975 1976 .home-hero h1 span { 1977 color: #777; 1978 } 1979 1980 .home-hero p { 1981 max-width: 540px; 1982 1983 margin-top: 25px; 1984 1985 color: #bbb; 1986 1987 font-size: 17px; 1988 line-height: 1.7; 1989 } 1990 1991 .home-hero-actions { 1992 display: flex; 1993 gap: 10px; 1994 1995 margin-top: 30px; 1996 } 1997 1998 .home-button { 1999 min-height: 46px; 2000 2001 display: inline-flex; 2002 align-items: center; 2003 justify-content: center; 2004 2005 padding: 0 21px; 2006 2007 border-radius: 6px; 2008 2009 font-size: 12px; 2010 font-weight: 900; 2011 } 2012 2013 .home-button.primary { 2014 background: white; 2015 color: #111; 2016 } 2017 2018 .home-button.primary:hover { 2019 background: #ddd; 2020 } 2021 2022 .home-button.secondary { 2023 border: 1px solid #555; 2024 color: white; 2025 } 2026 2027 .home-button.secondary:hover { 2028 background: #292929; 2029 } 2030 2031 .home-hero-mark { 2032 position: absolute; 2033 2034 right: 5%; 2035 bottom: -60px; 2036 2037 color: #1e1e1e; 2038 2039 font-size: 420px; 2040 font-weight: 900; 2041 2042 line-height: 1; 2043 } 2044 2045 .home-section { 2046 margin-top: 70px; 2047 } 2048 2049 .home-section-header { 2050 margin-bottom: 25px; 2051 } 2052 2053 .home-section-header h2 { 2054 margin-top: 7px; 2055 2056 font-size: 32px; 2057 font-weight: 900; 2058 } 2059 2060 .home-feature-grid { 2061 display: grid; 2062 2063 grid-template-columns: 2064 repeat(3, 1fr); 2065 2066 gap: 18px; 2067 } 2068 2069 .home-feature-card { 2070 min-height: 220px; 2071 2072 padding: 27px; 2073 2074 background: white; 2075 2076 border: 1px solid #ddd; 2077 border-radius: 10px; 2078 2079 transition: 2080 transform .2s ease, 2081 box-shadow .2s ease; 2082 } 2083 2084 .home-feature-card:hover { 2085 transform: translateY(-4px); 2086 2087 box-shadow: 2088 0 15px 35px rgba(0,0,0,.08); 2089 } 2090 2091 .home-feature-card > span { 2092 color: #999; 2093 2094 font-size: 10px; 2095 font-weight: 900; 2096 } 2097 2098 .home-feature-card h3 { 2099 margin-top: 35px; 2100 2101 font-size: 23px; 2102 font-weight: 900; 2103 } 2104 2105 .home-feature-card p { 2106 margin-top: 8px; 2107 2108 color: #777; 2109 2110 font-size: 13px; 2111 } 2112 2113 .home-feature-card strong { 2114 display: block; 2115 2116 margin-top: 25px; 2117 2118 font-size: 12px; 2119 } 2120 2121 .home-feature-card.sale-feature { 2122 background: #171717; 2123 color: white; 2124 } 2125 2126 .home-feature-card.sale-feature p { 2127 color: #aaa; 2128 } 2129 2130 .home-collection { 2131 margin-top: 70px; 2132 padding: 40px; 2133 2134 display: flex; 2135 justify-content: space-between; 2136 gap: 40px; 2137 2138 background: #e9e9e7; 2139 2140 border-radius: 10px; 2141 } 2142 2143 .home-collection h2 { 2144 margin-top: 7px; 2145 2146 font-size: 32px; 2147 font-weight: 900; 2148 } 2149 2150 .home-collection p { 2151 max-width: 450px; 2152 2153 color: #666; 2154 2155 line-height: 1.7; 2156 } 2157 2158 2159 /* ========================================================= 2160 PROFILE 2161 ========================================================= */ 2162 2163 .profile-page { 2164 max-width: 1100px; 2165 2166 margin: 0 auto; 2167 2168 padding: 55px 30px 80px; 2169 } 2170 2171 .profile-header { 2172 margin-bottom: 35px; 2173 } 2174 2175 .profile-header h1 { 2176 margin-top: 8px; 2177 2178 font-size: 44px; 2179 font-weight: 900; 2180 2181 letter-spacing: -1.5px; 2182 } 2183 2184 .profile-header p { 2185 margin-top: 8px; 2186 2187 color: #777; 2188 } 2189 2190 .profile-layout { 2191 display: grid; 2192 2193 grid-template-columns: 2194 280px 1fr; 2195 2196 gap: 25px; 2197 2198 align-items: start; 2199 } 2200 2201 .profile-sidebar, 2202 .profile-card { 2203 background: white; 2204 2205 border: 1px solid #ddd; 2206 border-radius: 10px; 2207 } 2208 2209 .profile-sidebar { 2210 padding: 30px; 2211 2212 text-align: center; 2213 } 2214 2215 .profile-avatar { 2216 width: 80px; 2217 height: 80px; 2218 2219 margin: 0 auto 18px; 2220 2221 display: flex; 2222 align-items: center; 2223 justify-content: center; 2224 2225 border-radius: 50%; 2226 2227 background: #171717; 2228 color: white; 2229 2230 font-size: 32px; 2231 font-weight: 900; 2232 } 2233 2234 .profile-sidebar h2 { 2235 font-size: 21px; 2236 } 2237 2238 .profile-sidebar > p { 2239 margin-top: 5px; 2240 2241 color: #777; 2242 2243 font-size: 12px; 2244 2245 word-break: break-word; 2246 } 2247 2248 .profile-member, 2249 .profile-points { 2250 margin-top: 28px; 2251 padding-top: 20px; 2252 2253 border-top: 1px solid #eee; 2254 } 2255 2256 .profile-member span, 2257 .profile-points span { 2258 display: block; 2259 2260 color: #888; 2261 2262 font-size: 9px; 2263 font-weight: 900; 2264 2265 letter-spacing: 1px; 2266 } 2267 2268 .profile-member strong, 2269 .profile-points strong { 2270 display: block; 2271 2272 margin-top: 6px; 2273 2274 font-size: 14px; 2275 } 2276 2277 .profile-points strong { 2278 font-size: 25px; 2279 } 2280 2281 .profile-card { 2282 padding: 30px; 2283 } 2284 2285 .profile-card-header { 2286 padding-bottom: 20px; 2287 2288 border-bottom: 1px solid #eee; 2289 } 2290 2291 .profile-card-header h2 { 2292 margin-top: 6px; 2293 2294 font-size: 24px; 2295 } 2296 2297 .profile-form { 2298 padding-top: 25px; 2299 } 2300 2301 .profile-field { 2302 margin-bottom: 20px; 2303 } 2304 2305 .profile-field label { 2306 display: block; 2307 2308 margin-bottom: 7px; 2309 2310 color: #555; 2311 2312 font-size: 10px; 2313 font-weight: 900; 2314 2315 text-transform: uppercase; 2316 letter-spacing: 1px; 2317 } 2318 2319 .profile-field input, 2320 .profile-field textarea { 2321 width: 100%; 2322 2323 padding: 12px 13px; 2324 2325 border: 1px solid #d4d4d4; 2326 border-radius: 6px; 2327 2328 outline: none; 2329 2330 background: white; 2331 color: #171717; 2332 2333 font-size: 13px; 2334 } 2335 2336 .profile-field textarea { 2337 resize: vertical; 2338 } 2339 2340 .profile-field input:focus, 2341 .profile-field textarea:focus { 2342 border-color: #777; 2343 } 2344 2345 .profile-field input[readonly] { 2346 background: #f3f3f3; 2347 color: #777; 2348 } 2349 2350 .profile-field small { 2351 display: block; 2352 2353 margin-top: 5px; 2354 2355 color: #999; 2356 2357 font-size: 10px; 2358 } 2359 2360 .field-error, 2361 .validation-summary { 2362 color: #a33; 2363 2364 font-size: 11px; 2365 } 2366 2367 .profile-form-actions { 2368 display: flex; 2369 gap: 8px; 2370 2371 margin-top: 25px; 2372 } 2373 2374 .profile-alert { 2375 margin-bottom: 20px; 2376 2377 padding: 14px 16px; 2378 2379 border-radius: 6px; 2380 2381 font-size: 12px; 2382 font-weight: 700; 2383 } 2384 2385 .profile-alert.success { 2386 background: #e8f5ed; 2387 color: #28734a; 2388 2389 border: 1px solid #c9e6d4; 2390 } 2391 2392 2393 /* ========================================================= 2394 FOOTER 2395 ========================================================= */ 2396 2397 .site-footer { 2398 margin-top: 80px; 2399 2400 background: #111; 2401 color: #aaa; 2402 } 2403 2404 .footer-container { 2405 max-width: 1200px; 2406 2407 margin: 0 auto; 2408 2409 padding: 55px 30px; 2410 2411 display: grid; 2412 2413 grid-template-columns: 2414 2fr 1fr 1fr 1fr; 2415 2416 gap: 50px; 2417 } 2418 2419 .footer-logo { 2420 color: white; 2421 2422 font-size: 20px; 2423 font-weight: 900; 2424 2425 letter-spacing: 2px; 2426 } 2427 2428 .footer-brand p { 2429 max-width: 260px; 2430 2431 margin-top: 13px; 2432 2433 color: #777; 2434 2435 font-size: 13px; 2436 line-height: 1.7; 2437 } 2438 2439 .footer-column { 2440 display: flex; 2441 flex-direction: column; 2442 2443 gap: 10px; 2444 } 2445 2446 .footer-column h4 { 2447 margin-bottom: 8px; 2448 2449 color: white; 2450 2451 font-size: 11px; 2452 font-weight: 900; 2453 2454 text-transform: uppercase; 2455 letter-spacing: 1.3px; 2456 } 2457 2458 .footer-column a { 2459 width: fit-content; 2460 2461 color: #777; 2462 2463 font-size: 12px; 2464 } 2465 2466 .footer-column a:hover { 2467 color: white; 2468 } 2469 2470 .footer-bottom { 2471 max-width: 1200px; 2472 2473 margin: auto; 2474 padding: 18px 30px; 2475 2476 border-top: 1px solid #292929; 2477 2478 display: flex; 2479 justify-content: space-between; 2480 2481 color: #666; 2482 2483 font-size: 10px; 2484 } 2485 2486 2487 /* ========================================================= 2488 RESPONSIVE 2489 ========================================================= */ 2490 2491 .mobile-menu-button { 2492 display: none; 2493 } 2494 2495 @media (max-width: 1200px) { 2496 2497 .navbar-container { 2498 gap: 20px; 2499 } 2500 2501 .nav-links { 2502 gap: 15px; 2503 } 2504 2505 .icon-label { 2506 display: none; 2507 } 2508 2509 .release-grid, 2510 .sale-grid { 2511 grid-template-columns: 2512 repeat(3, minmax(0, 1fr)); 2513 } 2514 2515 .release-filters { 2516 grid-template-columns: 2517 2fr 1fr 1fr 1fr; 2518 } 2519 2520 .filter-search { 2521 grid-column: 1 / -1; 2522 } 2523 2524 .filter-button { 2525 grid-column: 1 / -1; 2526 } 2527 } 2528 2529 2530 @media (max-width: 1000px) { 2531 2532 .release-grid, 2533 .sale-grid { 2534 grid-template-columns: 2535 repeat(2, minmax(0, 1fr)); 2536 } 2537 2538 .wishlist-grid { 2539 grid-template-columns: 1fr; 2540 } 2541 2542 .release-hero { 2543 grid-template-columns: 2544 1fr 1fr; 2545 2546 gap: 30px; 2547 } 2548 2549 .product-grid { 2550 grid-template-columns: 2551 repeat(2, minmax(0, 1fr)); 2552 } 2553 2554 .cart-layout { 2555 grid-template-columns: 1fr; 2556 } 2557 2558 .cart-summary { 2559 position: static; 2560 } 2561 2562 .profile-layout { 2563 grid-template-columns: 1fr; 2564 } 2565 2566 .profile-sidebar { 2567 text-align: left; 2568 } 2569 2570 .profile-avatar { 2571 margin-left: 0; 2572 } 2573 2574 .home-feature-grid { 2575 grid-template-columns: 1fr 1fr; 2576 } 2577 } 2578 2579 2580 @media (max-width: 950px) { 2581 2582 .navbar-container { 2583 height: 70px; 2584 } 2585 2586 .mobile-menu-button { 2587 display: block; 2588 2589 margin-left: auto; 2590 2591 width: 42px; 2592 height: 42px; 2593 2594 border: 1px solid #444; 2595 border-radius: 6px; 2596 2597 background: #222; 2598 color: white; 2599 2600 font-size: 21px; 2601 } 2602 2603 .navbar-content { 2604 display: none; 2605 2606 position: absolute; 2607 2608 top: 70px; 2609 left: 0; 2610 right: 0; 2611 2612 padding: 20px 25px 25px; 2613 2614 background: #111; 2615 2616 border-top: 1px solid #292929; 2617 2618 flex-direction: column; 2619 align-items: stretch; 2620 2621 gap: 20px; 2622 } 2623 2624 .navbar-content.mobile-open { 2625 display: flex; 2626 } 2627 2628 .nav-links { 2629 flex-direction: column; 2630 align-items: stretch; 2631 2632 gap: 0; 2633 } 2634 2635 .nav-links li { 2636 border-bottom: 1px solid #292929; 2637 } 2638 2639 .nav-links a { 2640 display: block; 2641 2642 padding: 13px 0; 2643 } 2644 2645 .nav-links > li > a::after { 2646 display: none; 2647 } 2648 2649 .dropdown-menu { 2650 position: static; 2651 2652 width: 100%; 2653 2654 display: none; 2655 2656 opacity: 1; 2657 visibility: visible; 2658 2659 transform: none; 2660 2661 border: none; 2662 2663 box-shadow: none; 2664 2665 background: #181818; 2666 } 2667 2668 .nav-dropdown:hover .dropdown-menu { 2669 display: block; 2670 } 2671 2672 .navbar-search { 2673 width: 100%; 2674 max-width: none; 2675 2676 margin: 0; 2677 } 2678 2679 .navbar-actions { 2680 width: 100%; 2681 2682 justify-content: flex-start; 2683 } 2684 2685 .icon-label { 2686 display: inline; 2687 } 2688 2689 .auth-buttons { 2690 margin-left: auto; 2691 } 2692 } 2693 2694 2695 @media (max-width: 768px) { 2696 2697 .releases-page, 2698 .release-details-page, 2699 .cart-page, 2700 .wishlist-page, 2701 .sale-page, 2702 .top-sellers-page, 2703 .profile-page, 2704 .home-page { 2705 padding: 35px 18px 60px; 2706 } 2707 2708 .releases-header, 2709 .cart-header { 2710 align-items: flex-start; 2711 2712 flex-direction: column; 2713 2714 gap: 18px; 2715 } 2716 2717 .releases-header h1, 2718 .cart-header h1, 2719 .page-header h1, 2720 .sale-header h1, 2721 .top-sellers-header h1, 2722 .profile-header h1 { 2723 font-size: 36px; 2724 } 2725 2726 .release-filters { 2727 grid-template-columns: 1fr; 2728 } 2729 2730 .filter-search, 2731 .filter-button, 2732 .clear-filter { 2733 grid-column: auto; 2734 } 2735 2736 .release-grid, 2737 .sale-grid { 2738 grid-template-columns: 1fr; 2739 } 2740 2741 .release-hero { 2742 grid-template-columns: 1fr; 2743 2744 gap: 30px; 2745 } 2746 2747 .release-hero-cover { 2748 max-width: 550px; 2749 2750 margin: 0 auto; 2751 } 2752 2753 .release-hero-info h1 { 2754 font-size: 43px; 2755 } 2756 2757 .release-facts { 2758 grid-template-columns: 2759 1fr 1fr; 2760 } 2761 2762 .product-grid { 2763 grid-template-columns: 1fr; 2764 } 2765 2766 .product-actions { 2767 grid-template-columns: 1fr; 2768 } 2769 2770 .track-row { 2771 grid-template-columns: 2772 35px 1fr; 2773 2774 padding: 14px; 2775 } 2776 2777 .track-duration { 2778 grid-column: 2; 2779 } 2780 2781 .cart-item { 2782 grid-template-columns: 2783 70px 1fr 30px; 2784 2785 gap: 12px; 2786 } 2787 2788 .cart-item-cover { 2789 width: 70px; 2790 height: 70px; 2791 } 2792 2793 .cart-item-quantity, 2794 .cart-item-total { 2795 grid-column: 2; 2796 } 2797 2798 .cart-item-total { 2799 text-align: left; 2800 } 2801 2802 .cart-remove { 2803 grid-column: 3; 2804 grid-row: 1; 2805 } 2806 2807 .wishlist-grid { 2808 grid-template-columns: 1fr; 2809 } 2810 2811 .wishlist-card { 2812 grid-template-columns: 2813 120px 1fr; 2814 } 2815 2816 .home-hero { 2817 min-height: 500px; 2818 2819 padding: 45px 30px; 2820 } 2821 2822 .home-hero-mark { 2823 font-size: 250px; 2824 } 2825 2826 .home-feature-grid { 2827 grid-template-columns: 1fr; 2828 } 2829 2830 .home-collection { 2831 flex-direction: column; 2832 } 2833 2834 .profile-sidebar { 2835 text-align: center; 2836 } 2837 2838 .profile-avatar { 2839 margin-left: auto; 2840 } 2841 2842 .footer-container { 2843 grid-template-columns: 2844 1fr 1fr; 2845 2846 gap: 35px; 2847 2848 padding: 40px 25px; 2849 } 2850 2851 .footer-brand { 2852 grid-column: 1 / -1; 2853 } 2854 2855 .footer-bottom { 2856 padding: 18px 25px; 2857 2858 flex-direction: column; 2859 2860 gap: 5px; 2861 } 2862 } 2863 2864 2865 @media (max-width: 500px) { 2866 2867 .wishlist-card { 2868 grid-template-columns: 1fr; 2869 } 2870 2871 .wishlist-cover { 2872 max-height: 300px; 2873 } 2874 2875 .wishlist-actions { 2876 flex-direction: column; 2877 } 2878 2879 .wishlist-actions .store-button, 2880 .wishlist-actions .btn-remove { 2881 width: 100%; 2882 } 2883 2884 .home-hero { 2885 padding: 35px 22px; 2886 } 2887 2888 .home-hero h1 { 2889 font-size: 45px; 2890 } 2891 2892 .home-hero-actions { 2893 flex-direction: column; 2894 } 2895 2896 .home-button { 2897 width: 100%; 2898 } 2899 2900 .profile-card { 2901 padding: 20px; 2902 } 2903 2904 .profile-form-actions { 2905 flex-direction: column; 2906 } 2907 2908 .profile-form-actions .store-button { 2909 width: 100%; 2910 } 2911 } 2912 2913 /* ========================================================= 2914 ADMIN 2915 ========================================================= */ 2916 2917 .admin-page { 2918 max-width: 1250px; 2919 2920 margin: 0 auto; 2921 2922 padding: 55px 30px 80px; 2923 } 2924 2925 2926 /* ========================================================= 2927 ADMIN HEADER 2928 ========================================================= */ 2929 2930 .admin-header { 2931 display: flex; 2932 align-items: flex-end; 2933 justify-content: space-between; 2934 2935 gap: 30px; 2936 2937 margin-bottom: 35px; 2938 } 2939 2940 .admin-eyebrow { 2941 display: block; 2942 2943 margin-bottom: 7px; 2944 2945 color: #888; 2946 2947 font-size: 9px; 2948 font-weight: 900; 2949 2950 letter-spacing: 1.7px; 2951 text-transform: uppercase; 2952 } 2953 2954 .admin-header h1 { 2955 font-size: 44px; 2956 font-weight: 900; 2957 2958 letter-spacing: -1.5px; 2959 } 2960 2961 .admin-header p { 2962 margin-top: 8px; 2963 2964 color: #777; 2965 2966 font-size: 14px; 2967 } 2968 2969 .admin-back-link { 2970 display: block; 2971 2972 margin-bottom: 22px; 2973 2974 color: #777; 2975 2976 font-size: 12px; 2977 font-weight: 700; 2978 } 2979 2980 .admin-back-link:hover { 2981 color: #111; 2982 } 2983 2984 2985 /* ========================================================= 2986 ADMIN BUTTONS 2987 ========================================================= */ 2988 2989 .admin-button { 2990 min-height: 41px; 2991 2992 display: inline-flex; 2993 align-items: center; 2994 justify-content: center; 2995 2996 gap: 7px; 2997 2998 padding: 0 17px; 2999 3000 border-radius: 6px; 3001 3002 font-size: 12px; 3003 font-weight: 800; 3004 3005 transition: 3006 background .2s ease, 3007 border-color .2s ease, 3008 color .2s ease, 3009 transform .2s ease; 3010 } 3011 3012 .admin-button:hover { 3013 transform: translateY(-1px); 3014 } 3015 3016 .admin-button.primary { 3017 border: 1px solid #171717; 3018 3019 background: #171717; 3020 color: white; 3021 } 3022 3023 .admin-button.primary:hover { 3024 background: #333; 3025 } 3026 3027 .admin-button.secondary { 3028 border: 1px solid #d4d4d4; 3029 3030 background: white; 3031 color: #333; 3032 } 3033 3034 .admin-button.secondary:hover { 3035 background: #eee; 3036 } 3037 3038 .admin-button.small { 3039 min-height: 34px; 3040 3041 padding: 0 13px; 3042 3043 font-size: 10px; 3044 } 3045 3046 3047 /* ========================================================= 3048 ALERT 3049 ========================================================= */ 3050 3051 .admin-alert { 3052 display: flex; 3053 align-items: center; 3054 3055 gap: 9px; 3056 3057 margin-bottom: 25px; 3058 3059 padding: 14px 17px; 3060 3061 border-radius: 7px; 3062 3063 font-size: 12px; 3064 font-weight: 700; 3065 } 3066 3067 .admin-alert.success { 3068 border: 1px solid #c9e6d3; 3069 3070 background: #ecf8f0; 3071 3072 color: #287348; 3073 } 3074 3075 3076 /* ========================================================= 3077 DASHBOARD STATS 3078 ========================================================= */ 3079 3080 .admin-stat-grid { 3081 display: grid; 3082 3083 grid-template-columns: 3084 repeat(4, minmax(0, 1fr)); 3085 3086 gap: 16px; 3087 3088 margin-bottom: 55px; 3089 } 3090 3091 .admin-stat-card { 3092 min-height: 150px; 3093 3094 padding: 22px; 3095 3096 background: white; 3097 3098 border: 1px solid #ddd; 3099 border-radius: 9px; 3100 } 3101 3102 .admin-stat-label { 3103 display: block; 3104 3105 color: #888; 3106 3107 font-size: 9px; 3108 font-weight: 900; 3109 3110 letter-spacing: 1.2px; 3111 } 3112 3113 .admin-stat-card > strong { 3114 display: block; 3115 3116 margin-top: 13px; 3117 3118 font-size: 34px; 3119 font-weight: 900; 3120 } 3121 3122 .admin-stat-card p { 3123 margin-top: 7px; 3124 3125 color: #888; 3126 3127 font-size: 11px; 3128 line-height: 1.5; 3129 } 3130 3131 .admin-stat-card.warning { 3132 border-top: 3px solid #c88a27; 3133 } 3134 3135 .admin-stat-card.danger { 3136 border-top: 3px solid #ad4545; 3137 } 3138 3139 3140 /* ========================================================= 3141 DASHBOARD ACTIONS 3142 ========================================================= */ 3143 3144 .admin-section { 3145 margin-top: 20px; 3146 } 3147 3148 .admin-section-heading { 3149 margin-bottom: 20px; 3150 3151 padding-bottom: 15px; 3152 3153 border-bottom: 1px solid #ddd; 3154 } 3155 3156 .admin-section-heading h2 { 3157 margin-top: 5px; 3158 3159 font-size: 27px; 3160 font-weight: 900; 3161 } 3162 3163 .admin-action-grid { 3164 display: grid; 3165 3166 grid-template-columns: 3167 repeat(2, minmax(0, 1fr)); 3168 3169 gap: 16px; 3170 } 3171 3172 .admin-action-card { 3173 min-height: 170px; 3174 3175 display: grid; 3176 3177 grid-template-columns: 3178 55px 1fr 25px; 3179 3180 align-items: center; 3181 3182 gap: 18px; 3183 3184 padding: 25px; 3185 3186 background: white; 3187 3188 border: 1px solid #ddd; 3189 border-radius: 9px; 3190 3191 transition: 3192 transform .2s ease, 3193 box-shadow .2s ease; 3194 } 3195 3196 .admin-action-card:hover { 3197 transform: translateY(-3px); 3198 3199 box-shadow: 3200 0 12px 30px rgba(0,0,0,.07); 3201 } 3202 3203 .admin-action-icon { 3204 width: 48px; 3205 height: 48px; 3206 3207 display: flex; 3208 align-items: center; 3209 justify-content: center; 3210 3211 border-radius: 7px; 3212 3213 background: #171717; 3214 color: white; 3215 3216 font-size: 21px; 3217 } 3218 3219 .admin-action-card h3 { 3220 font-size: 18px; 3221 font-weight: 900; 3222 } 3223 3224 .admin-action-card p { 3225 margin-top: 6px; 3226 3227 color: #777; 3228 3229 font-size: 12px; 3230 line-height: 1.5; 3231 } 3232 3233 .admin-action-arrow { 3234 color: #999; 3235 3236 font-size: 18px; 3237 } 3238 3239 3240 /* ========================================================= 3241 PRODUCT TABLE 3242 ========================================================= */ 3243 3244 .admin-list-summary { 3245 display: flex; 3246 3247 gap: 20px; 3248 3249 margin-bottom: 13px; 3250 3251 color: #777; 3252 3253 font-size: 11px; 3254 font-weight: 700; 3255 } 3256 3257 .admin-table-wrapper { 3258 overflow-x: auto; 3259 3260 background: white; 3261 3262 border: 1px solid #ddd; 3263 border-radius: 9px; 3264 } 3265 3266 .admin-table { 3267 width: 100%; 3268 3269 border-collapse: collapse; 3270 } 3271 3272 .admin-table th { 3273 padding: 14px 18px; 3274 3275 background: #fafafa; 3276 3277 border-bottom: 1px solid #ddd; 3278 3279 color: #777; 3280 3281 font-size: 9px; 3282 font-weight: 900; 3283 3284 text-align: left; 3285 text-transform: uppercase; 3286 letter-spacing: 1px; 3287 } 3288 3289 .admin-table td { 3290 padding: 14px 18px; 3291 3292 border-bottom: 1px solid #eee; 3293 3294 font-size: 12px; 3295 3296 vertical-align: middle; 3297 } 3298 3299 .admin-table tbody tr:last-child td { 3300 border-bottom: none; 3301 } 3302 3303 .admin-table tbody tr:hover { 3304 background: #fcfcfc; 3305 } 3306 3307 .admin-product-release { 3308 display: flex; 3309 align-items: center; 3310 3311 gap: 13px; 3312 } 3313 3314 .admin-product-cover { 3315 width: 48px; 3316 height: 48px; 3317 3318 flex-shrink: 0; 3319 3320 display: flex; 3321 align-items: center; 3322 justify-content: center; 3323 3324 overflow: hidden; 3325 3326 border-radius: 4px; 3327 3328 background: #eee; 3329 } 3330 3331 .admin-product-cover img { 3332 width: 100%; 3333 height: 100%; 3334 3335 object-fit: cover; 3336 } 3337 3338 .admin-product-release strong { 3339 display: block; 3340 3341 font-size: 12px; 3342 } 3343 3344 .admin-product-release small { 3345 display: block; 3346 3347 margin-top: 3px; 3348 3349 color: #999; 3350 3351 font-size: 9px; 3352 } 3353 3354 .admin-format-badge { 3355 display: inline-flex; 3356 3357 padding: 5px 8px; 3358 3359 border-radius: 4px; 3360 3361 background: #eee; 3362 3363 color: #555; 3364 3365 font-size: 9px; 3366 font-weight: 900; 3367 } 3368 3369 .admin-price { 3370 font-weight: 800; 3371 } 3372 3373 .admin-stock { 3374 display: inline-flex; 3375 3376 padding: 5px 8px; 3377 3378 border-radius: 20px; 3379 3380 font-size: 9px; 3381 font-weight: 800; 3382 } 3383 3384 .admin-stock.success { 3385 background: #e7f5ec; 3386 color: #287148; 3387 } 3388 3389 .admin-stock.warning { 3390 background: #fbf1df; 3391 color: #976317; 3392 } 3393 3394 .admin-stock.danger { 3395 background: #fae8e8; 3396 color: #983b3b; 3397 } 3398 3399 .admin-table-action { 3400 text-align: right; 3401 } 3402 3403 3404 /* ========================================================= 3405 FORMS 3406 ========================================================= */ 3407 3408 .admin-form-layout { 3409 display: grid; 3410 3411 grid-template-columns: 3412 minmax(0, 1fr) 3413 300px; 3414 3415 gap: 22px; 3416 3417 align-items: start; 3418 } 3419 3420 .admin-form-card, 3421 .admin-help-card, 3422 .admin-product-summary { 3423 background: white; 3424 3425 border: 1px solid #ddd; 3426 border-radius: 9px; 3427 } 3428 3429 .admin-form-card { 3430 padding: 30px; 3431 } 3432 3433 .admin-form-card-header { 3434 margin-bottom: 27px; 3435 3436 padding-bottom: 19px; 3437 3438 border-bottom: 1px solid #eee; 3439 } 3440 3441 .admin-form-card-header h2 { 3442 margin-top: 5px; 3443 3444 font-size: 23px; 3445 font-weight: 900; 3446 } 3447 3448 .admin-form-row { 3449 display: grid; 3450 3451 grid-template-columns: 3452 1fr 1fr; 3453 3454 gap: 16px; 3455 } 3456 3457 .admin-form-field { 3458 margin-bottom: 20px; 3459 } 3460 3461 .admin-form-field label { 3462 display: block; 3463 3464 margin-bottom: 7px; 3465 3466 color: #555; 3467 3468 font-size: 10px; 3469 font-weight: 900; 3470 3471 text-transform: uppercase; 3472 letter-spacing: .8px; 3473 } 3474 3475 .admin-form-field input, 3476 .admin-form-field select, 3477 .admin-form-field textarea { 3478 width: 100%; 3479 3480 padding: 11px 12px; 3481 3482 border: 1px solid #d4d4d4; 3483 border-radius: 6px; 3484 3485 outline: none; 3486 3487 background: white; 3488 color: #171717; 3489 3490 font-size: 12px; 3491 } 3492 3493 .admin-form-field select, 3494 .admin-form-field input { 3495 min-height: 42px; 3496 } 3497 3498 .admin-form-field textarea { 3499 resize: vertical; 3500 3501 line-height: 1.6; 3502 } 3503 3504 .admin-form-field input:focus, 3505 .admin-form-field select:focus, 3506 .admin-form-field textarea:focus { 3507 border-color: #777; 3508 } 3509 3510 .admin-form-field small { 3511 display: block; 3512 3513 margin-top: 6px; 3514 3515 color: #999; 3516 3517 font-size: 10px; 3518 line-height: 1.5; 3519 } 3520 3521 .admin-input-prefix, 3522 .admin-input-suffix { 3523 display: flex; 3524 3525 overflow: hidden; 3526 3527 border: 1px solid #d4d4d4; 3528 border-radius: 6px; 3529 } 3530 3531 .admin-input-prefix:focus-within, 3532 .admin-input-suffix:focus-within { 3533 border-color: #777; 3534 } 3535 3536 .admin-input-prefix > span, 3537 .admin-input-suffix > span { 3538 min-width: 42px; 3539 3540 display: flex; 3541 align-items: center; 3542 justify-content: center; 3543 3544 background: #f5f5f5; 3545 3546 color: #777; 3547 3548 font-size: 12px; 3549 font-weight: 800; 3550 } 3551 3552 .admin-input-prefix input, 3553 .admin-input-suffix input { 3554 border: none; 3555 border-radius: 0; 3556 } 3557 3558 .admin-field-error, 3559 .admin-validation { 3560 display: block; 3561 3562 margin-top: 5px; 3563 3564 color: #a33; 3565 3566 font-size: 10px; 3567 } 3568 3569 .admin-validation { 3570 margin-bottom: 18px; 3571 } 3572 3573 .admin-form-actions { 3574 display: flex; 3575 3576 gap: 8px; 3577 3578 margin-top: 28px; 3579 3580 padding-top: 22px; 3581 3582 border-top: 1px solid #eee; 3583 } 3584 3585 3586 /* ========================================================= 3587 HELP CARD 3588 ========================================================= */ 3589 3590 .admin-help-card { 3591 padding: 25px; 3592 } 3593 3594 .admin-help-card h3 { 3595 margin-top: 6px; 3596 margin-bottom: 22px; 3597 3598 font-size: 18px; 3599 } 3600 3601 .admin-help-item { 3602 display: grid; 3603 3604 grid-template-columns: 3605 30px 1fr; 3606 3607 gap: 11px; 3608 3609 padding: 15px 0; 3610 3611 border-top: 1px solid #eee; 3612 } 3613 3614 .admin-help-item strong { 3615 color: #999; 3616 3617 font-size: 10px; 3618 } 3619 3620 .admin-help-item p { 3621 color: #777; 3622 3623 font-size: 11px; 3624 line-height: 1.6; 3625 } 3626 3627 3628 /* ========================================================= 3629 EDIT PRODUCT 3630 ========================================================= */ 3631 3632 .admin-product-summary { 3633 display: flex; 3634 align-items: center; 3635 justify-content: space-between; 3636 3637 gap: 30px; 3638 3639 padding: 24px; 3640 3641 margin-bottom: 20px; 3642 } 3643 3644 .admin-product-summary h2 { 3645 margin-top: 5px; 3646 3647 font-size: 23px; 3648 } 3649 3650 .admin-product-summary-meta { 3651 display: flex; 3652 3653 gap: 35px; 3654 } 3655 3656 .admin-product-summary-meta div { 3657 text-align: right; 3658 } 3659 3660 .admin-product-summary-meta span { 3661 display: block; 3662 3663 color: #999; 3664 3665 font-size: 8px; 3666 font-weight: 900; 3667 3668 letter-spacing: 1px; 3669 } 3670 3671 .admin-product-summary-meta strong { 3672 display: block; 3673 3674 margin-top: 5px; 3675 3676 font-size: 13px; 3677 } 3678 3679 .admin-edit-card { 3680 max-width: 900px; 3681 } 3682 3683 .admin-modification-options { 3684 display: grid; 3685 3686 grid-template-columns: 3687 1fr 1fr; 3688 3689 gap: 10px; 3690 } 3691 3692 .admin-modification-option { 3693 display: flex !important; 3694 align-items: flex-start; 3695 3696 gap: 10px; 3697 3698 padding: 15px; 3699 3700 border: 1px solid #ddd; 3701 border-radius: 7px; 3702 3703 cursor: pointer; 3704 3705 text-transform: none !important; 3706 letter-spacing: normal !important; 3707 } 3708 3709 .admin-modification-option:hover { 3710 border-color: #999; 3711 } 3712 3713 .admin-modification-option input { 3714 width: auto; 3715 3716 min-height: 0; 3717 3718 margin-top: 3px; 3719 } 3720 3721 .admin-modification-option strong { 3722 display: block; 3723 3724 color: #222; 3725 3726 font-size: 12px; 3727 } 3728 3729 .admin-modification-option small { 3730 margin-top: 4px; 3731 3732 color: #888; 3733 3734 font-size: 10px; 3735 } 3736 3737 .admin-edit-section { 3738 margin-top: 28px; 3739 3740 padding-top: 25px; 3741 3742 border-top: 1px solid #eee; 3743 } 3744 3745 .admin-edit-section-heading { 3746 margin-bottom: 22px; 3747 } 3748 3749 .admin-edit-section-heading h3 { 3750 margin-top: 5px; 3751 3752 font-size: 19px; 3753 } 3754 3755 .admin-edit-section-heading p { 3756 margin-top: 5px; 3757 3758 color: #777; 3759 3760 font-size: 11px; 3761 } 3762 3763 .admin-discount-preview { 3764 display: grid; 3765 3766 grid-template-columns: 3767 1fr 1fr; 3768 3769 gap: 8px 20px; 3770 3771 padding: 18px; 3772 3773 background: #f7f7f7; 3774 3775 border-radius: 7px; 3776 } 3777 3778 .admin-discount-preview span { 3779 color: #888; 3780 3781 font-size: 8px; 3782 font-weight: 900; 3783 3784 letter-spacing: 1px; 3785 } 3786 3787 .admin-discount-preview strong { 3788 font-size: 18px; 3789 } 3790 3791 3792 /* ========================================================= 3793 ADMIN RESPONSIVE 3794 ========================================================= */ 3795 3796 @media (max-width: 1000px) { 3797 3798 .admin-stat-grid { 3799 grid-template-columns: 3800 repeat(2, 1fr); 3801 } 3802 3803 .admin-form-layout { 3804 grid-template-columns: 1fr; 3805 } 3806 3807 .admin-help-card { 3808 order: -1; 3809 } 3810 3811 } 3812 3813 3814 @media (max-width: 750px) { 3815 3816 .admin-page { 3817 padding: 35px 18px 60px; 3818 } 3819 3820 .admin-header { 3821 flex-direction: column; 3822 align-items: flex-start; 3823 } 3824 3825 .admin-header h1 { 3826 font-size: 35px; 3827 } 3828 3829 .admin-stat-grid, 3830 .admin-action-grid { 3831 grid-template-columns: 1fr; 3832 } 3833 3834 .admin-form-row, 3835 .admin-modification-options { 3836 grid-template-columns: 1fr; 3837 } 3838 3839 .admin-product-summary { 3840 align-items: flex-start; 3841 flex-direction: column; 3842 } 3843 3844 .admin-product-summary-meta { 3845 width: 100%; 3846 3847 justify-content: space-between; 3848 } 3849 3850 .admin-product-summary-meta div { 3851 text-align: left; 3852 } 3853 3854 } 3855 3856 3857 @media (max-width: 500px) { 3858 3859 .admin-stat-grid { 3860 grid-template-columns: 1fr; 3861 } 3862 3863 .admin-form-card { 3864 padding: 20px; 3865 } 3866 3867 .admin-form-actions { 3868 flex-direction: column; 3869 } 3870 3871 .admin-form-actions .admin-button { 3872 width: 100%; 3873 } 3874 3875 } 3876 /* ========================================================= 3877 ADMIN RELEASE CREATOR 3878 ========================================================= */ 3879 3880 .release-create-section { 3881 margin-bottom: 20px; 3882 } 3883 3884 .admin-section-description { 3885 margin-top: 7px; 3886 3887 color: #888; 3888 3889 font-size: 11px; 3890 line-height: 1.6; 3891 } 3892 3893 3894 /* ========================================================= 3895 MULTI SELECT 3896 ========================================================= */ 3897 3898 .admin-multi-select { 3899 min-height: 130px !important; 3900 3901 padding: 7px !important; 3902 } 3903 3904 .admin-multi-select option { 3905 padding: 8px 9px; 3906 3907 border-radius: 4px; 3908 } 3909 3910 3911 /* ========================================================= 3912 COVER PREVIEW 3913 ========================================================= */ 3914 3915 .admin-cover-preview { 3916 margin-top: 25px; 3917 3918 padding-top: 22px; 3919 3920 border-top: 1px solid #eee; 3921 } 3922 3923 .admin-cover-preview-image { 3924 width: 150px; 3925 height: 150px; 3926 3927 margin-top: 10px; 3928 3929 display: flex; 3930 align-items: center; 3931 justify-content: center; 3932 3933 overflow: hidden; 3934 3935 background: 3936 linear-gradient( 3937 135deg, 3938 #222, 3939 #555 3940 ); 3941 3942 color: white; 3943 3944 border-radius: 7px; 3945 3946 font-size: 35px; 3947 } 3948 3949 .admin-cover-preview-image img { 3950 width: 100%; 3951 height: 100%; 3952 3953 display: block; 3954 3955 object-fit: cover; 3956 } 3957 3958 3959 /* ========================================================= 3960 TRACK HEADER 3961 ========================================================= */ 3962 3963 .track-header { 3964 display: flex; 3965 align-items: center; 3966 justify-content: space-between; 3967 3968 gap: 25px; 3969 } 3970 3971 3972 /* ========================================================= 3973 TRACK CARDS 3974 ========================================================= */ 3975 3976 .admin-track-card { 3977 position: relative; 3978 3979 display: grid; 3980 3981 grid-template-columns: 3982 42px 3983 minmax(0, 1fr) 3984 35px; 3985 3986 gap: 15px; 3987 3988 margin-bottom: 12px; 3989 padding: 20px; 3990 3991 background: #fafafa; 3992 3993 border: 1px solid #ddd; 3994 border-radius: 8px; 3995 } 3996 3997 .admin-track-number { 3998 width: 36px; 3999 height: 36px; 4000 4001 display: flex; 4002 align-items: center; 4003 justify-content: center; 4004 4005 background: #171717; 4006 color: white; 4007 4008 border-radius: 50%; 4009 4010 font-size: 11px; 4011 font-weight: 900; 4012 } 4013 4014 .admin-track-content { 4015 min-width: 0; 4016 } 4017 4018 .admin-track-remove { 4019 width: 32px; 4020 height: 32px; 4021 4022 display: flex; 4023 align-items: center; 4024 justify-content: center; 4025 4026 border: 1px solid #ddd; 4027 border-radius: 5px; 4028 4029 background: white; 4030 color: #888; 4031 4032 font-size: 20px; 4033 } 4034 4035 .admin-track-remove:hover { 4036 border-color: #a44; 4037 4038 background: #fff5f5; 4039 color: #a44; 4040 } 4041 4042 4043 /* ========================================================= 4044 RELEASE SUBMIT 4045 ========================================================= */ 4046 4047 .admin-release-submit { 4048 display: flex; 4049 align-items: center; 4050 justify-content: space-between; 4051 4052 gap: 25px; 4053 4054 margin-top: 30px; 4055 padding: 25px 30px; 4056 4057 background: #171717; 4058 color: white; 4059 4060 border-radius: 9px; 4061 } 4062 4063 .admin-release-submit p { 4064 margin-top: 5px; 4065 4066 color: #aaa; 4067 4068 font-size: 11px; 4069 } 4070 4071 .admin-release-submit .admin-eyebrow { 4072 color: #888; 4073 } 4074 4075 .admin-release-submit .release-actions { 4076 margin: 0; 4077 padding: 0; 4078 4079 border: none; 4080 } 4081 4082 .admin-release-submit .admin-button.primary { 4083 border-color: white; 4084 4085 background: white; 4086 color: #171717; 4087 } 4088 4089 .admin-release-submit .admin-button.primary:hover { 4090 background: #ddd; 4091 } 4092 4093 .admin-release-submit .admin-button.secondary { 4094 border-color: #444; 4095 4096 background: transparent; 4097 color: white; 4098 } 4099 4100 .admin-release-submit .admin-button.secondary:hover { 4101 background: #292929; 4102 } 4103 4104 4105 /* ========================================================= 4106 RELEASE CREATOR RESPONSIVE 4107 ========================================================= */ 4108 4109 @media (max-width: 750px) { 4110 4111 .track-header { 4112 align-items: flex-start; 4113 4114 flex-direction: column; 4115 } 4116 4117 .admin-track-card { 4118 grid-template-columns: 4119 35px 4120 1fr; 4121 } 4122 4123 .admin-track-remove { 4124 position: absolute; 4125 4126 top: 15px; 4127 right: 15px; 4128 } 4129 4130 .admin-release-submit { 4131 align-items: flex-start; 4132 4133 flex-direction: column; 4134 } 4135 4136 .admin-release-submit .release-actions { 4137 width: 100%; 4138 } 4139 4140 }
Note:
See TracChangeset
for help on using the changeset viewer.
