/* variables specific to current element */

$element-specific-variables: "";

.#{$namespace}circularProgress {

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

	$self: &;

	/* properties of current element  + media queries */


	/* 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 {
		@keyframes progress {
			0% {
				stroke-dasharray: 0 100;
			}
		}
	}


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

	// circularProgress__childElement
	&__shape {

		// follows same logic as parent

		@include custom-prop-fallback("stroke","sys-color-text-secondary-vivid");
		fill: none;
		stroke-width: var(--sys-border-width-regular);
		stroke-linecap: round;
		transition: all 0.1s linear;

	}


	/* modifiers */

	&.-circularProgressTokenUsage {

		--comp-circular-progress-token-usage-size: var(--sys-size-width-1250);

		flex: 0 0 var(--comp-circular-progress-token-usage-size);
		width: var(--comp-circular-progress-token-usage-size);
		height: auto;
		aspect-ratio: 1;

		#{$self}__svg {

			display: block;
			width: 100%;
			height: 100%;

		}

		#{$self}__bgShape {

			stroke: var(--sys-color-background-primary-20);
			stroke-width: var(--sys-border-width-regular);
			//vector-effect: non-scaling-stroke;

		}

		#{$self}__shape {

			stroke: var(--sys-color-background-primary-100);
			stroke-width: var(--sys-border-width-regular);
			stroke-linecap: butt;

		}

	}

	&.-circularProgressTokenUsageDanger {

		#{$self}__bgShape,
		#{$self}__shape {

			@include custom-prop-fallback("stroke", "comp-badge-danger-background-color");

		}

	}

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

	/* Pseudo Classes */

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

		}
	}

	&:focus {
	}

	&:active {
	}

	&:focus,
	&:active {
	}

}
