.section { color: $ui-white; font-size: 1rem; background-color: $white-2; border: 1px solid $gray-1100; border-radius: $panel-border-radius; } .sectionHeader { display: flex; justify-content: space-between; align-items: center; gap: 0.5rem; min-height: 2.75rem; padding: 0.5rem 1rem; font-size: $aux-text-size; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: $gray-300; &.collapsible { cursor: pointer; border-radius: $panel-border-radius; transition-property: color, background-color; transition-duration: $transition-time-action; &:hover { background-color: $white-3; color: $ui-white; } &:focus-visible { outline: 2px solid $blue-500; outline-offset: -2px; } } } .sectionTitle { display: inline-flex; align-items: center; gap: 0.5rem; } /** marks a section which holds values coming from the URL */ .customised { width: 0.4rem; height: 0.4rem; border-radius: 50%; background-color: $active-indicator; flex-shrink: 0; } .chevron { flex-shrink: 0; rotate: 180deg; transition: rotate 300ms cubic-bezier(0.45, 1.005, 0, 1.005); &.closed { rotate: 0deg; } } .options { padding-inline: 1rem; border-top: 1px solid $white-7; } .label { display: grid; grid-template-columns: minmax(0, 1fr); row-gap: 0.25rem; padding: 0.75rem 0; font-size: $inner-section-text-size; &:not(:last-child) { border-bottom: 1px solid $white-7; } } /** * Compact controls sit beside their label instead of below it. * Placement is done with grid areas so that the markup stays flat. */ .inline { grid-template-columns: minmax(0, 1fr) auto; align-items: center; column-gap: 1rem; > .title { grid-area: 1 / 1; } > .description { grid-area: 2 / 1; } > *:last-child { grid-area: 1 / 2 / span 2; } } .title { color: $ui-white; } .description { color: $gray-400; font-size: $aux-text-size; line-height: 1.4; max-width: 60ch; } .hidden { display: none; }