@@ -844,6 +844,44 @@ input[type="checkbox"] {
844844 overflow : hidden;
845845}
846846
847+ /* File table body with max height for 6 rows + scroll */
848+ .file-table tbody {
849+ display : block;
850+ max-height : calc (6 * 3rem ); /* 6 rows * ~3rem height per row (compact) */
851+ overflow-y : auto;
852+ scrollbar-width : thin;
853+ scrollbar-color : var (--shadow-dark ) transparent;
854+ }
855+
856+ .file-table thead ,
857+ .file-table tbody tr {
858+ display : table;
859+ width : 100% ;
860+ table-layout : fixed;
861+ }
862+
863+ /* Compact table header */
864+ .file-table thead th {
865+ padding : 0.75rem 0.5rem ;
866+ }
867+
868+ .file-table tbody ::-webkit-scrollbar {
869+ width : 6px ;
870+ }
871+
872+ .file-table tbody ::-webkit-scrollbar-track {
873+ background : transparent;
874+ }
875+
876+ .file-table tbody ::-webkit-scrollbar-thumb {
877+ background : var (--shadow-dark );
878+ border-radius : 3px ;
879+ }
880+
881+ .file-table tbody ::-webkit-scrollbar-thumb : hover {
882+ background : var (--text-muted-light );
883+ }
884+
847885.file-table thead tr {
848886 background : rgba (54 , 118 , 216 , 0.05 );
849887}
@@ -868,43 +906,65 @@ input[type="checkbox"] {
868906}
869907
870908.file-table td {
871- padding : 1 rem ;
909+ padding : 0.5 rem ;
872910 color : var (--text-dark );
873911 font-size : 0.875rem ;
912+ vertical-align : middle;
913+ }
914+
915+ /* File icon in table cell */
916+ .file-table .file-icon-cell {
917+ font-size : 1.125rem ;
918+ vertical-align : middle;
919+ margin-right : 0.5rem ;
920+ flex-shrink : 0 ;
921+ }
922+
923+ /* Filename text with ellipsis */
924+ .file-table .filename-text {
925+ overflow : hidden;
926+ text-overflow : ellipsis;
927+ white-space : nowrap;
928+ display : block;
874929}
875930
876931.clickable-filename {
877932 cursor : pointer;
878933 color : var (--primary-light );
879934 font-weight : 600 ;
880935 transition : all 0.2s ;
936+ display : flex;
937+ align-items : center;
938+ min-width : 0 ;
881939}
882940
883941.clickable-filename : hover {
884942 text-decoration : underline;
885943}
886944
945+ /* Compact action buttons */
887946.file-action-btn {
888947 padding : 0 ;
889948 background : var (--background-light );
890- box-shadow : 3 px 3 px 6 px var (--shadow-dark ), -3 px -3 px 6 px var (--shadow-light );
949+ box-shadow : 2 px 2 px 4 px var (--shadow-dark ), -2 px -2 px 4 px var (--shadow-light );
891950 border : 1px solid var (--border-light );
892951 color : var (--text-dark );
893- border-radius : 0.5 rem ;
952+ border-radius : 0.375 rem ;
894953 cursor : pointer;
895- font-size : 1.125 rem ;
954+ font-size : 1 rem ;
896955 font-weight : 600 ;
897956 transition : all 0.2s ;
898957 display : inline-flex;
899958 align-items : center;
900959 justify-content : center;
901- width : 2 rem ;
902- height : 2 rem ;
960+ width : 1.625 rem ;
961+ height : 1.625 rem ;
903962 flex-shrink : 0 ;
904963}
905964
906965.file-action-btn : hover {
907966 transform : translateY (-1px );
967+ box-shadow : 3px 3px 6px var (--shadow-dark ), -3px -3px 6px var (--shadow-light );
908968}
909969
910970.file-action-btn .download {
@@ -915,6 +975,10 @@ input[type="checkbox"] {
915975 color : # ef4444 ;
916976}
917977
978+ .file-action-btn .audiobook {
979+ color : # 8b5cf6 ;
980+ }
981+
918982/* ========================================
919983 Messages
920984 ======================================== */
@@ -950,41 +1014,54 @@ input[type="checkbox"] {
9501014 ======================================== */
9511015
9521016.app-footer {
953- text-align : center;
954- padding : 2rem ;
1017+ padding : 1.5rem 2rem ;
9551018 margin-top : 3rem ;
956- color : var (--text-muted-light );
9571019 border-top : 1px solid var (--border-light );
9581020 border-radius : 2rem ;
9591021}
9601022
961- .app-footer p {
962- margin : 0 ;
963- font-size : 0.75rem ;
1023+ .footer-links {
1024+ display : flex;
1025+ justify-content : center;
1026+ align-items : center;
1027+ flex-wrap : wrap;
1028+ gap : 0.5rem 1.5rem ;
1029+ }
1030+
1031+ .footer-links a {
1032+ display : inline-flex;
1033+ align-items : center;
1034+ gap : 0.4rem ;
1035+ color : var (--text-muted-light );
1036+ text-decoration : none;
1037+ font-size : 0.8125rem ;
9641038 font-weight : 500 ;
965- text-transform : uppercase;
966- letter-spacing : 0.1em ;
1039+ transition : color 0.2s ease;
9671040}
9681041
969- .app- footer a {
1042+ .footer-links a : hover {
9701043 color : var (--primary-light );
971- text-decoration : none;
972- font-weight : 700 ;
973- transition : color 0.3s ;
9741044}
9751045
976- .app-footer a : hover {
977- color : # 5a8ee8 ;
1046+ .footer-links a .material-symbols-outlined {
1047+ font-size : 1rem ;
1048+ }
1049+
1050+ .footer-links .sponsor-btn {
1051+ color : # db61a2 ;
1052+ font-weight : 600 ;
9781053}
9791054
980- .app-footer .footer-separator {
981- margin : 0 0.75rem ;
982- color : var (--border-light );
1055+ .footer-links .sponsor-btn : hover {
1056+ color : # f472b6 ;
9831057}
9841058
985- .app-footer .heart {
986- color : # ef4444 ;
987- animation : heartbeat 1.5s ease-in-out infinite;
1059+ html .dark .footer-links .sponsor-btn {
1060+ color : # f472b6 ;
1061+ }
1062+
1063+ html .dark .footer-links .sponsor-btn : hover {
1064+ color : # f9a8d4 ;
9881065}
9891066
9901067@keyframes heartbeat {
@@ -1476,38 +1553,7 @@ html.dark .file-icon {
14761553 background : rgba (90 , 142 , 232 , 0.1 );
14771554}
14781555
1479- html .dark .sponsor-section iframe {
1480- display : none;
1481- }
1482-
1483- html .dark .sponsor-section .sponsor-link {
1484- display : inline-flex;
1485- }
1486-
1487- .sponsor-section .sponsor-link {
1488- display : none;
1489- align-items : center;
1490- gap : 0.5rem ;
1491- padding : 1rem 2rem ;
1492- background : var (--background-light );
1493- box-shadow : 5px 5px 10px var (--shadow-dark ), -5px -5px 10px var (--shadow-light );
1494- border : 1px solid var (--border-light );
1495- border-radius : 1rem ;
1496- color : var (--text-dark );
1497- text-decoration : none;
1498- font-weight : 600 ;
1499- transition : all 0.3s ;
1500- }
1501-
1502- .sponsor-section .sponsor-link : hover {
1503- transform : translateY (-2px );
1504- box-shadow : 6px 6px 12px var (--shadow-dark ), -6px -6px 12px var (--shadow-light );
1505- color : # db61a2 ;
1506- }
15071556
1508- .sponsor-section .sponsor-link .material-symbols-outlined {
1509- color : # db61a2 ;
1510- }
15111557
15121558html .dark .file-info {
15131559 color : var (--text-light );
0 commit comments