@@ -862,6 +862,15 @@ html {
862
862
color : var (--fallback-bc , oklch (var (--bc )/var(--tw-text-opacity )));
863
863
}
864
864
865
+ .menu li > * : not (ul , .menu-title , details , .btn ): active ,
866
+ .menu li > * : not (ul , .menu-title , details , .btn ).active ,
867
+ .menu li > details > summary : active {
868
+ --tw-bg-opacity : 1 ;
869
+ background-color : var (--fallback-n , oklch (var (--n )/var(--tw-bg-opacity )));
870
+ --tw-text-opacity : 1 ;
871
+ color : var (--fallback-nc , oklch (var (--nc )/var(--tw-text-opacity )));
872
+ }
873
+
865
874
.table tr .hover : hover ,
866
875
.table tr .hover : nth-child (even): hover {
867
876
--tw-bg-opacity : 1 ;
@@ -1182,6 +1191,18 @@ html {
1182
1191
border-color : color-mix (in oklab, var (--fallback-p , oklch (var (--p )/ 1 )) 90% , black);
1183
1192
}
1184
1193
}
1194
+
1195
+ : where (.menu li : not (.menu-title , .disabled ) > * : not (ul , details , .menu-title )): not (.active , .btn ): hover , : where (.menu li : not (.menu-title , .disabled ) > details > summary : not (.menu-title )): not (.active , .btn ): hover {
1196
+ cursor : pointer;
1197
+ outline : 2px solid transparent;
1198
+ outline-offset : 2px ;
1199
+ }
1200
+
1201
+ @supports (color : oklch (0% 0 0 )) {
1202
+ : where (.menu li : not (.menu-title , .disabled ) > * : not (ul , details , .menu-title )): not (.active , .btn ): hover , : where (.menu li : not (.menu-title , .disabled ) > details > summary : not (.menu-title )): not (.active , .btn ): hover {
1203
+ background-color : var (--fallback-bc , oklch (var (--bc )/ 0.1 ));
1204
+ }
1205
+ }
1185
1206
}
1186
1207
1187
1208
.form-control {
@@ -1254,6 +1275,59 @@ html {
1254
1275
text-decoration-line : underline;
1255
1276
}
1256
1277
1278
+ .menu {
1279
+ display : flex;
1280
+ flex-direction : column;
1281
+ flex-wrap : wrap;
1282
+ font-size : 0.875rem ;
1283
+ line-height : 1.25rem ;
1284
+ padding : 0.5rem ;
1285
+ }
1286
+
1287
+ .menu : where (li ul ) {
1288
+ position : relative;
1289
+ white-space : nowrap;
1290
+ margin-inline-start : 1rem ;
1291
+ padding-inline-start : 0.5rem ;
1292
+ }
1293
+
1294
+ .menu : where (li : not (.menu-title ) > * : not (ul , details , .menu-title , .btn )), .menu : where (li : not (.menu-title ) > details > summary : not (.menu-title )) {
1295
+ display : grid;
1296
+ grid-auto-flow : column;
1297
+ align-content : flex-start;
1298
+ align-items : center;
1299
+ gap : 0.5rem ;
1300
+ grid-auto-columns : minmax (auto, max-content) auto max-content;
1301
+ -webkit-user-select : none;
1302
+ -moz-user-select : none;
1303
+ user-select : none;
1304
+ }
1305
+
1306
+ .menu li .disabled {
1307
+ cursor : not-allowed;
1308
+ -webkit-user-select : none;
1309
+ -moz-user-select : none;
1310
+ user-select : none;
1311
+ color : var (--fallback-bc , oklch (var (--bc )/ 0.3 ));
1312
+ }
1313
+
1314
+ .menu : where (li > .menu-dropdown : not (.menu-dropdown-show )) {
1315
+ display : none;
1316
+ }
1317
+
1318
+ : where (.menu li ) {
1319
+ position : relative;
1320
+ display : flex;
1321
+ flex-shrink : 0 ;
1322
+ flex-direction : column;
1323
+ flex-wrap : wrap;
1324
+ align-items : stretch;
1325
+ }
1326
+
1327
+ : where (.menu li ) .badge {
1328
+ justify-self : end;
1329
+ }
1330
+
1257
1331
.navbar {
1258
1332
display : flex;
1259
1333
align-items : center;
@@ -1832,6 +1906,88 @@ html {
1832
1906
outline-offset : 2px ;
1833
1907
}
1834
1908
1909
+ : where (.menu li : empty ) {
1910
+ --tw-bg-opacity : 1 ;
1911
+ background-color : var (--fallback-bc , oklch (var (--bc )/var(--tw-bg-opacity )));
1912
+ opacity : 0.1 ;
1913
+ margin : 0.5rem 1rem ;
1914
+ height : 1px ;
1915
+ }
1916
+
1917
+ .menu : where (li ul ): before {
1918
+ position : absolute;
1919
+ bottom : 0.75rem ;
1920
+ inset-inline-start : 0px ;
1921
+ top : 0.75rem ;
1922
+ width : 1px ;
1923
+ --tw-bg-opacity : 1 ;
1924
+ background-color : var (--fallback-bc , oklch (var (--bc )/var(--tw-bg-opacity )));
1925
+ opacity : 0.1 ;
1926
+ content : "" ;
1927
+ }
1928
+
1929
+ .menu : where (li : not (.menu-title ) > * : not (ul , details , .menu-title , .btn )),
1930
+ .menu : where (li : not (.menu-title ) > details > summary : not (.menu-title )) {
1931
+ border-radius : var (--rounded-btn , 0.5rem );
1932
+ padding-left : 1rem ;
1933
+ padding-right : 1rem ;
1934
+ padding-top : 0.5rem ;
1935
+ padding-bottom : 0.5rem ;
1936
+ text-align : start;
1937
+ transition-property : color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
1938
+ transition-property : color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
1939
+ transition-property : color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
1940
+ transition-timing-function : cubic-bezier (0.4 , 0 , 0.2 , 1 );
1941
+ transition-timing-function : cubic-bezier (0 , 0 , 0.2 , 1 );
1942
+ transition-duration : 200ms ;
1943
+ text-wrap : balance;
1944
+ }
1945
+
1946
+ : where (.menu li : not (.menu-title , .disabled ) > * : not (ul , details , .menu-title )): not (summary , .active , .btn ).focus , : where (.menu li : not (.menu-title , .disabled ) > * : not (ul , details , .menu-title )): not (summary , .active , .btn ): focus , : where (.menu li : not (.menu-title , .disabled ) > * : not (ul , details , .menu-title )): is (summary ): not (.active , .btn ): focus-visible , : where (.menu li : not (.menu-title , .disabled ) > details > summary : not (.menu-title )): not (summary , .active , .btn ).focus , : where (.menu li : not (.menu-title , .disabled ) > details > summary : not (.menu-title )): not (summary , .active , .btn ): focus , : where (.menu li : not (.menu-title , .disabled ) > details > summary : not (.menu-title )): is (summary ): not (.active , .btn ): focus-visible {
1947
+ cursor : pointer;
1948
+ background-color : var (--fallback-bc , oklch (var (--bc )/ 0.1 ));
1949
+ --tw-text-opacity : 1 ;
1950
+ color : var (--fallback-bc , oklch (var (--bc )/var(--tw-text-opacity )));
1951
+ outline : 2px solid transparent;
1952
+ outline-offset : 2px ;
1953
+ }
1954
+
1955
+ .menu li > * : not (ul , .menu-title , details , .btn ): active ,
1956
+ .menu li > * : not (ul , .menu-title , details , .btn ).active ,
1957
+ .menu li > details > summary : active {
1958
+ --tw-bg-opacity : 1 ;
1959
+ background-color : var (--fallback-n , oklch (var (--n )/var(--tw-bg-opacity )));
1960
+ --tw-text-opacity : 1 ;
1961
+ color : var (--fallback-nc , oklch (var (--nc )/var(--tw-text-opacity )));
1962
+ }
1963
+
1964
+ .menu : where (li > details > summary )::-webkit-details-marker {
1965
+ display : none;
1966
+ }
1967
+
1968
+ .menu : where (li > details > summary ): after ,
1969
+ .menu : where (li > .menu-dropdown-toggle ): after {
1970
+ justify-self : end;
1971
+ display : block;
1972
+ margin-top : -0.5rem ;
1973
+ height : 0.5rem ;
1974
+ width : 0.5rem ;
1975
+ transform : rotate (45deg );
1976
+ transition-property : transform, margin-top;
1977
+ transition-duration : 0.3s ;
1978
+ transition-timing-function : cubic-bezier (0.4 , 0 , 0.2 , 1 );
1979
+ content : "" ;
1980
+ transform-origin : 75% 75% ;
1981
+ box-shadow : 2px 2px ;
1982
+ pointer-events : none;
1983
+ }
1984
+
1985
+ .menu : where (li > details [open ] > summary ): after ,
1986
+ .menu : where (li > .menu-dropdown-toggle .menu-dropdown-show ): after {
1987
+ transform : rotate (225deg );
1988
+ margin-top : 0 ;
1989
+ }
1990
+
1835
1991
.mockup-browser .mockup-browser-toolbar .input {
1836
1992
position : relative;
1837
1993
margin-left : auto;
@@ -2341,6 +2497,10 @@ html {
2341
2497
margin-right : auto;
2342
2498
}
2343
2499
2500
+ .block {
2501
+ display : block;
2502
+ }
2503
+
2344
2504
.flex {
2345
2505
display : flex;
2346
2506
}
@@ -2365,6 +2525,10 @@ html {
2365
2525
height : 2.5rem ;
2366
2526
}
2367
2527
2528
+ .h-14 {
2529
+ height : 3.5rem ;
2530
+ }
2531
+
2368
2532
.h-20 {
2369
2533
height : 5rem ;
2370
2534
}
@@ -2410,6 +2574,10 @@ html {
2410
2574
max-width : 20rem ;
2411
2575
}
2412
2576
2577
+ .flex-1 {
2578
+ flex : 1 1 0% ;
2579
+ }
2580
+
2413
2581
.grow {
2414
2582
flex-grow : 1 ;
2415
2583
}
@@ -2541,4 +2709,14 @@ html {
2541
2709
2542
2710
input {
2543
2711
color-scheme : dark;
2712
+ }
2713
+
2714
+ @media (min-width : 640px ) {
2715
+ .sm\:block {
2716
+ display : block;
2717
+ }
2718
+
2719
+ .sm\:hidden {
2720
+ display : none;
2721
+ }
2544
2722
}
0 commit comments