|
21 | 21 | opacity: 0; |
22 | 22 | } |
23 | 23 |
|
24 | | - &:is([open], :focus:not(.collapse-close)), |
| 24 | + &:is([open], :focus:not(.collapse-close), :focus-within:not(.collapse-close)), |
25 | 25 | &:not(.collapse-close):has(> input:is([type="checkbox"], [type="radio"]):checked) { |
26 | 26 | grid-template-rows: max-content 1fr; |
27 | 27 | } |
28 | 28 |
|
29 | | - &:is([open], :focus:not(.collapse-close)) > .collapse-content, |
| 29 | + &:is([open], :focus:not(.collapse-close), :focus-within:not(.collapse-close)) > .collapse-content, |
30 | 30 | &:not(.collapse-close) |
31 | 31 | > :where(input:is([type="checkbox"], [type="radio"]):checked ~ .collapse-content) { |
32 | 32 | visibility: visible; |
|
48 | 48 | } |
49 | 49 | } |
50 | 50 |
|
51 | | - &:focus:not(.collapse-close, .collapse[open]) > .collapse-title { |
52 | | - cursor: unset; |
| 51 | + &:focus:not(.collapse-close, .collapse[open]), |
| 52 | + &:focus-within:not(.collapse-close, .collapse[open]) { |
| 53 | + > .collapse-title { |
| 54 | + cursor: unset; |
| 55 | + } |
53 | 56 | } |
54 | 57 |
|
55 | | - &:is([open], :focus:not(.collapse-close)) > :where(.collapse-content), |
| 58 | + &:is([open], :focus:not(.collapse-close), :focus-within:not(.collapse-close)) |
| 59 | + > :where(.collapse-content), |
56 | 60 | &:not(.collapse-close) |
57 | 61 | > :where(input:is([type="checkbox"], [type="radio"]):checked ~ .collapse-content) { |
58 | 62 | padding-bottom: 1rem; |
|
83 | 87 | } |
84 | 88 | } |
85 | 89 |
|
86 | | - &.collapse-arrow:focus:not(.collapse-close) { |
| 90 | + &.collapse-arrow:focus:not(.collapse-close), |
| 91 | + &.collapse-arrow:focus-within:not(.collapse-close) { |
87 | 92 | > .collapse-title:after { |
88 | 93 | transform: translateY(-50%) rotate(225deg); |
89 | 94 | } |
|
0 commit comments