2024-07-03 20:07:08 +00:00
|
|
|
.citizen-dropdown {
|
|
|
|
&-summary {
|
|
|
|
cursor: pointer;
|
|
|
|
|
|
|
|
// Icons have to use span inside label elements
|
|
|
|
> span:not( .citizen-ui-icon ) {
|
|
|
|
.sr-only;
|
|
|
|
}
|
|
|
|
|
|
|
|
&:hover {
|
|
|
|
background-color: var( --background-color-button-quiet--hover );
|
|
|
|
|
|
|
|
> .citizen-ui-icon::before {
|
|
|
|
opacity: var( --opacity-icon-base--hover );
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
&:active {
|
|
|
|
background-color: var( --background-color-button-quiet--active );
|
|
|
|
|
|
|
|
> .citizen-ui-icon::before {
|
|
|
|
opacity: var( --opacity-icon-base--selected );
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// Remove Safari summary marker
|
|
|
|
&::-webkit-details-marker {
|
|
|
|
display: none;
|
|
|
|
}
|
|
|
|
|
|
|
|
// Reset hover styles if it is a touch device
|
|
|
|
// This is dumb but hover:hover overrides active states
|
|
|
|
@media ( hover: none ) {
|
|
|
|
&:hover {
|
|
|
|
background-color: transparent;
|
|
|
|
|
|
|
|
.citizen-ui-icon::before {
|
|
|
|
opacity: var( --opacity-icon-base );
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
&-details {
|
|
|
|
&[ open ] {
|
|
|
|
+ .citizen-menu__card {
|
|
|
|
transition: var( --transition-menu );
|
|
|
|
transition-property: transform;
|
|
|
|
transform: none;
|
|
|
|
|
|
|
|
> * {
|
|
|
|
opacity: 1;
|
|
|
|
transition: var( --transition-menu );
|
2024-07-08 19:33:02 +00:00
|
|
|
transition-delay: var( --transition-delay-menu );
|
2024-07-03 20:07:08 +00:00
|
|
|
transition-property: opacity;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
> .citizen-dropdown-summary {
|
2024-07-07 02:41:54 +00:00
|
|
|
/* Make button visible above backdrop */
|
|
|
|
position: relative;
|
|
|
|
z-index: 1;
|
2024-07-03 20:07:08 +00:00
|
|
|
background-color: var( --background-color-button-quiet--active );
|
|
|
|
|
|
|
|
&:hover {
|
|
|
|
background-color: var( --background-color-button-quiet--hover );
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
@media ( max-width: @max-width-breakpoint-tablet ) {
|
|
|
|
&-details {
|
|
|
|
// Dismiss affordnance overlay
|
|
|
|
&::before {
|
|
|
|
z-index: -1;
|
|
|
|
content: '';
|
|
|
|
background: var( --background-color-backdrop-light );
|
|
|
|
backdrop-filter: blur( 2px );
|
|
|
|
opacity: 0;
|
|
|
|
}
|
|
|
|
|
|
|
|
&[ open ]::before {
|
|
|
|
position: fixed;
|
|
|
|
inset: 0;
|
|
|
|
z-index: 0; // Needed for menu to work in Safari
|
|
|
|
opacity: 1;
|
|
|
|
transition: var( --transition-menu );
|
|
|
|
transition-property: opacity;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
@media ( max-width: @max-width-breakpoint-tablet ) {
|
|
|
|
/* HACK: Disable page from scolling when a dropdown menu is opened */
|
|
|
|
body:has( .citizen-dropdown-details[ open ] ) {
|
|
|
|
overflow: hidden;
|
|
|
|
}
|
|
|
|
}
|