/* variables specific to current element */

$element-specific-variables: "";

.#{$namespace}dropdown {

	/* Save root element context for easy access if nesting is needed */

	$self: &;

	/* properties of current element  + media queries */

	width: 320px;
	max-width: max-content;
	min-width: 0;
	top: calc(100% + #{map-deep-get($token-spacer-unit-map, "8")});

	/* Pseudo Elements */

	&::before {
	}

	&::after {
	}

	/*
	Include elements that are linked to the current element but have to reside at the root level of the stylesheet
	(e.g: keyframes)
	*/
	@at-root {
	}


	/* children - write selector in full in comments in order to facilitate search */

	// dropdown__childElement
	&__item {

		// follows same logic as parent

		display: flex;
		align-items: center;
		@include spacer-component-inline("sm");
		font-size: map-deep-get($design-tokens, "sys-font-size-helper-medium");
		font-weight: map-deep-get($token-font-weight-map, "semi-bold");
		@include custom-prop-fallback("color","comp-dropdown-link-text-color");


		@include hover-focus-visible() {
			@include custom-prop-fallback("color","comp-dropdown-link-text-color");
			@include custom-prop-fallback("background-color","comp-dropdown-link-hovered-background-color");
			text-decoration: none;
		}

		&.active,
		&:active {
			color: $dropdown-link-active-color;
			text-decoration: none;
			@include gradient-bg($dropdown-link-active-bg);
		}

		&.disabled,
		&:disabled {
			color: $dropdown-link-disabled-color;
			pointer-events: none;
			background-color: transparent;
			// Remove CSS gradients if they're enabled
			@if $enable-gradients {
				background-image: none;
			}
		}

		&:focus-visible {

			outline-style: solid;
			outline-width: map-deep-get($design-tokens, "comp-button-pressed-border-width");
			@include custom-prop-fallback("outline-color", "comp-dropdown-link-text-color", true, true);

		}

	}

	&__filter {

		margin-top: map-deep-get($token-spacer-stack-max-map, "sm");

	}

	&__energyItem {
		display: flex;
		align-items: center;
		@include spacer-component-inline("md");
		cursor: pointer;
	}

	&__yearSelect {

		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: $dropdown-item-padding-y $dropdown-item-padding-x;

		[class*="icon"] {

			transition: transform 0.15s linear;

		}

		&[aria-expanded="true"] {

			[class*="icon"] {

				transform: rotate(180deg);

			}

		}

	}


	/* modifiers */

	// dropdown -positionTriggerTop
	&.-positionTriggerTop {

		// follows same logic as base element

		top: -($input-padding-y * 3);

	}

	// dropdown -transparentFrame
	&.-transparentFrame {

		// follows same logic as base element

		background-color: transparent;
		box-shadow: none;
		padding: 0;

	}

	&.-scrollHeightMd {

		max-height: 400px;

	}

	/* random parent element */
	/* 
	*
	*   Syntax : .randomParentElt & {}
	*
	*/

	/* Pseudo Classes */

	&:hover {
		@media (hover: hover) {

		}
	}

	&:focus {
	}

	&:active {
	}

	&:focus,
	&:active {
	}

}