// Removes the unit (px, %, etc) from a value @function strip-unit($number) { @if type-of($number) == "number" and not unitless($number) { @return $number / ($number * 0 + 1); } @return $number; } // Helper method to scale a value, for use in calc() etc @function D($v) { $baseValue: strip-unit($v) * 1px; @return calc(#{$baseValue} * var(--ui-scale)); } // Helper method to scale the font size @mixin ScaleFont($fontSize, $lineHeight) { font-size: D($fontSize * $mainFontScale); line-height: D($lineHeight * $mainFontScale); } // Helper method to scale a property value @mixin S($propName, $v1, $v2: "", $v3: "", $v4: "", $important: false) { $impSuffix: ""; @if $important == true { $impSuffix: "!important"; } $v1: D($v1); @if $v2 != "" { $v2: D($v2); } @if $v3 != "" { $v3: D($v3); } @if $v4 != "" { $v4: D($v4); } #{$propName}: #{$v1} #{$v2} #{$v3} #{$v4} #{$impSuffix}; }