.accordion { --header-height: 2.4em; --circle-height: 24px; gap: var(--Spacing-x3); width: 100%; padding-top: var(--Spacing-x3); transition: 0.4s ease-out; display: grid; grid-template-areas: "circle header" "content content"; grid-template-columns: auto 1fr; grid-template-rows: var(--header-height) 0fr; column-gap: var(--Spacing-x-one-and-half); } .accordion:last-child { border-bottom: none; } .header { grid-area: header; } .modifyButton { display: grid; grid-template-areas: "title button" "selection button"; cursor: pointer; background-color: transparent; border: none; width: 100%; padding: 0; } .title { grid-area: title; text-align: start; } .button { grid-area: button; justify-self: flex-end; } .selection { font-weight: 450; font-size: var(--typography-Title-4-fontSize); grid-area: selection; } .iconWrapper { position: relative; grid-area: circle; } .circle { width: var(--circle-height); height: var(--circle-height); border-radius: 100px; transition: background-color 0.4s; border: 2px solid var(--Base-Border-Inverted); display: flex; justify-content: center; align-items: center; } .circle[data-checked="true"] { background-color: var(--UI-Input-Controls-Fill-Selected); } .accordion[data-open="true"] .circle[data-checked="false"] { background-color: var(--UI-Text-Placeholder); } .accordion[data-open="false"] .circle[data-checked="false"] { background-color: var(--Base-Surface-Subtle-Hover); } .accordion[data-open="true"] { grid-template-rows: var(--header-height) 1fr; gap: var(--Spacing-x3); } .content { overflow: hidden; grid-area: content; border-bottom: 1px solid var(--Primary-Light-On-Surface-Divider-subtle); } @media screen and (min-width: 768px) { .accordion { gap: var(--Spacing-x3); grid-template-areas: "circle header" "circle content"; } .iconWrapper { top: var(--Spacing-x1); } .accordion:not(:last-child) .iconWrapper::after { position: absolute; left: 12px; bottom: calc(0px - var(--Spacing-x7)); top: var(--circle-height); content: ""; border-left: 1px solid var(--Primary-Light-On-Surface-Divider-subtle); } }