3.1.2 (Brainy Betty)
f96729dd35f6608332a5d1b4d509c035ef3d3f03
o:Sass::Tree::RootNode
:@has_childrenT:@children[$o:Sass::Tree::CommentNode;[ :@options{ :@lines[ :
@loud0:@value"W/**
 *
 * @class Color
 * @author David Kaneda - http://www.davidkaneda.com
 *
 */:
@linei:@silent0o;;[ ;	@	;
[ ;0;"Å/**
 * Returns the brightness (out of 100) of a specified color.
 * @todo explain why this is useful
 * @param {color} $color The color you want the brightness value of
 * @return {measurement}
 */;i;0o:Sass::Tree::FunctionNode;T;[
o:Sass::Tree::VariableNode:
@expro:Sass::Script::Operation
:@operand2o:Sass::Script::Number:@original"100;	{ :@denominator_units[ :@numerator_units[ ;ii;i;	@:@operand1o;
;o;;"255;	@;@;[ ;iÿ;i;	@;o:Sass::Script::Funcall
;	@:@keywords{ :
@args[o:Sass::Script::Variable	;	@:
@name"
color:@underscored_name"
color;i;"red;i:@operator:div;i;:
times;i;[ ;	@	;"r:@guarded0;io;;o;
;o;;"100;	{ ;@;[ ;ii;i;	@*;o;
;o;;"255;	@*;@;[ ;iÿ;i;	@*;o;
;	@*;{ ;[o;	;	@*;"
color;"
color;i;"
green;i;; ;i;;!;i;[ ;	@	;"g;"0;io;;o;
;o;;"100;	{ ;@;[ ;ii;i;	@=;o;
;o;;"255;	@=;@;[ ;iÿ;i;	@=;o;
;	@=;{ ;[o;	;	@=;"
color;"
color;i;"	blue;i;; ;i;;!;i;[ ;	@	;"b;"0;io;;o;
;o;;"	1000;	{ ;@;[ ;iè;i;	@P;o;
;o;
;o;;"114;	@P;@;[ ;iw;i;	@P;o;	;	@P;"b;"b;i;;!;i;	@P;o;
;o;
;o;;"587;	@P;@;[ ;iK;i;	@P;o;	;	@P;"g;"g;i;;!;i;	@P;o;
;o;;"299;	@P;@;[ ;i+;i;	@P;o;	;	@P;"r;"r;i;;!;i;:	plus;i;;#;i;; ;i;[ ;	@	;"brightness;"0;io:Sass::Tree::ReturnNode	;o;	;	{ ;"brightness;"brightness;i;[ ;	@	;i;	@	;[[o;;	{ ;"
color;"
color0;"brightness;io;;[ ;	@	;
[ ;0;"/* @private */;i;i o;;T;[o;$	;o;
;o;
;o;
;	{ ;{ ;[o;
;	@};{ ;[o;	;	@};"c1;"c1;i;"	blue;io;
;	@};{ ;[o;	;	@};"c2;"c2;i;"	blue;i;"min;i;	@};o;
;	@};{ ;[o;
;	@};{ ;[o;	;	@};"c1;"c1;i;"	blue;io;
;	@};{ ;[o;	;	@};"c2;"c2;i;"	blue;i;"max;i;:
minus;i;	@};o;
;o;
;o;
;	@};{ ;[o;
;	@};{ ;[o;	;	@};"c1;"c1;i;"
green;io;
;	@};{ ;[o;	;	@};"c2;"c2;i;"
green;i;"min;i;	@};o;
;	@};{ ;[o;
;	@};{ ;[o;	;	@};"c1;"c1;i;"
green;io;
;	@};{ ;[o;	;	@};"c2;"c2;i;"
green;i;"max;i;;%;i;	@};o;
;o;
;	@};{ ;[o;
;	@};{ ;[o;	;	@};"c1;"c1;i;"red;io;
;	@};{ ;[o;	;	@};"c2;"c2;i;"red;i;"min;i;	@};o;
;	@};{ ;[o;
;	@};{ ;[o;	;	@};"c1;"c1;i;"red;io;
;	@};{ ;[o;	;	@};"c2;"c2;i;"red;i;"max;i;;%;i;;#;i;;#;i;[ ;	@	;i;	@	;[[o;;	{ ;"c1;"c10[o;;	@ð;"c2;"c20;"color-difference;io;;[ ;	@	;
[ ;0;"/* @private */;i";i o;;T;[u:Sass::Tree::IfNode'[o:Sass::Script::Operation
:@operand2o:Sass::Script::Number:@original"
0.039:@options{ :@denominator_units[ :@numerator_units[ :@valuef0.039280000000000002 #:
@linei$;	@	:@operand1o:Sass::Script::Variable	;	@	:
@name"
value:@underscored_name"
value;i$:@operator:lte;i$u:Sass::Tree::IfNodeX[00[o:Sass::Tree::ReturnNode	:
@expro:Sass::Script::Operation
:@operand2o:Sass::Script::Number:@original"
1.055:@options{ :@denominator_units[ :@numerator_units[ :@valuef1.0549999999999999 zá:
@linei';@:@operand1o;
;o;
;o;	;
"
0.055;@;@;[ ;f0.055 \);i';@;o:Sass::Script::Variable	;@:
@name"
value:@underscored_name"
value;i':@operator:	plus;i';@;o;
;o;	;
"
1.055;@;@;[ ;f1.0549999999999999 zá;i';@;o;
;o;	;
"
0.055;@;@;[ ;f0.055 \);i';@;o;	;@;"
value;"
value;i';;;i';:div;i';:
times;i';;;i':@children[ ;{ ;i'[o:Sass::Tree::ReturnNode	:
@expro; 
;o;;"
12.92;	{ ;
@
;[ ;f12.92 £×;i%;	@;o;	;	@;"
value;"
value;i%;:div;i%:@children[ ;	{ ;i%;	@	;[[o;;	{ ;"
value;"
value0;"color-luminance;i#o;;[ ;	@	;
[ ;0;"z/**
 * Returns the luminosity for a specified color
 * @param {color} The color to check
 * @return {measurement}
 */;i+;0o;;T;[o;;o;
;	{ ;{ ;[o;
;o;;"255;	@;@;[ ;iÿ;i1;	@;o;
;	@;{ ;[o;	;	@;"
color;"
color;i1;"red;i1;; ;i1;"color-luminance;i1;[ ;	@	;"r;"0;i1o;;o;
;	{ ;{ ;[o;
;o;;"255;	@!;@;[ ;iÿ;i2;	@!;o;
;	@!;{ ;[o;	;	@!;"
color;"
color;i2;"
green;i2;; ;i2;"color-luminance;i2;[ ;	@	;"g;"0;i2o;;o;
;	{ ;{ ;[o;
;o;;"255;	@4;@;[ ;iÿ;i3;	@4;o;
;	@4;{ ;[o;	;	@4;"
color;"
color;i3;"	blue;i3;; ;i3;"color-luminance;i3;[ ;	@	;"b;"0;i3o;;o;
;o;
;o;	;	{ ;"b;"b;i4;	@I;o;;"
0.072;	@I;@;[ ;f0.0722 m];i4;;!;i4;	@I;o;
;o;
;o;	;	@I;"g;"g;i4;	@I;o;;"
0.715;	@I;@;[ ;f0.71519999999999995 ,¥;i4;;!;i4;	@I;o;
;o;	;	@I;"r;"r;i4;	@I;o;;"
0.213;	@I;@;[ ;f0.21260000000000001 –¼;i4;;!;i4;;#;i4;;#;i4;[ ;	@	;"l;"0;i4o:Sass::Tree::DebugNode	;o;
;o;	;	{ ;"l;"l;i5;	@f;o;
;o:Sass::Script::String	;	@f;"	 is ;i5:
@type:string;	@f;o;
;o;	;	@f;"
color;"
color;i5;	@f;o;(	;	@f;"luminosity for ;i5;);*;;#;i5;;#;i5;;#;i5;[ ;	@	;i5o;$	;o;	;	{ ;"l;"l;i6;[ ;	@	;i6;	@	;[[o;;	{ ;"
color;"
color0;"luminosity;i0o;;[ ;	@	;
[ ;0;"|/**
 * Returns the contrast ratio between two colors
 * @param {color1} The color to check
 * @return {measurement}
 */;i9;0o;;T;[o;;o;
;	{ ;{ ;[o;	;	@ˆ;"color1;"color1;i?;"luminosity;i?;[ ;	@	;"l1;"0;i?o;;o;
;	{ ;{ ;[o;	;	@“;"color2;"color2;i@;"luminosity;i@;[ ;	@	;"l2;"0;i@u;&;[o:Sass::Script::Operation
:@operand2o:Sass::Script::Variable	:@options{ :
@name"l1:@underscored_name"l1:
@lineiB;@:@operand1o;	;@;	"l2;
"l2;iB:@operator:gt;iBu:Sass::Tree::IfNodeð[00[o:Sass::Tree::ReturnNode	:
@expro:Sass::Script::Operation
:@operand2o:Sass::Script::Variable	:@options{ :
@name"l2:@underscored_name"l2:
@lineiE;
@
:@operand1o;		;
@
;"l1;"l1;iE:@operator:div;iE:@children[ ;
{ ;iE[o:Sass::Tree::ReturnNode	:
@expro; 
;o;	;{ ;	"l1;
"l1;iC;@;o;	;@;	"l2;
"l2;iC;:div;iC:@children[ ;{ ;iC;	@	;[[o;;	{ ;"color1;"color10[o;;	@ ;"color2;"color20;"contrast-ratio;i>o;;T;[u;&b[o:Sass::Script::Operation
:@operand2o:Sass::Script::Number:@original"55:@options{ :@denominator_units[ :@numerator_units[ :@valuei<:
@lineiJ;	@	:@operand1o:Sass::Script::Funcall
;	@	:@keywords{ :
@args[o:Sass::Script::Variable	;	@	:
@name"
color:@underscored_name"
color;iJ;"brightness;iJ:@operator:gt;iJu:Sass::Tree::IfNodeŒ[00[o:Sass::Tree::ReturnNode	:
@expro:Sass::Script::String	:@options{ :@value"	dark:
@lineiM:
@type:identifier:@children[ ;{ ;
iM[o:Sass::Tree::ReturnNode	:
@expro:Sass::Script::String	;	{ ;"
light;iK:
@type:identifier:@children[ ;	{ ;iK;	@	;[[o;;	{ ;"
color;"
color0;"get-color-mode;iIo;;T;[	o;;o;
;	{ ;{ ;[o;	;	@¶;"
color;"
color;iR;"check-opacity;iR;[ ;	@	;"flat_color;"0;iRu;&¨[o:Sass::Script::Operation
:@operand2o:Sass::Script::String	:@options{ :@value"inverse:
@lineiT:
@type:identifier;@:@operand1o:Sass::Script::Variable	;@:
@name"	mode:@underscored_name"	mode;
iT:@operator:eq;
iT0[o:Sass::Tree::VariableNode:
@expro:Sass::Script::Funcall
;{ :@keywords{ :
@args[o;	;@;"color-mode;"color_mode;
iU;"reverse-color-mode;
iU:@children[ ;{ ;"	mode:@guarded0;
iUu;&…[o:Sass::Script::Operation
:@operand2o:Sass::Script::Bool:@options{ :@valueT:
@lineiX;@:@operand1o:Sass::Script::Variable	;@:
@name"inverse:@underscored_name"inverse;
iX:@operator:eq;
iX0[o:Sass::Tree::VariableNode:
@expro:Sass::Script::Funcall
;{ :@keywords{ :
@args[o;	;@;"	mode;"	mode;
iY;"reverse-color-mode;
iY:@children[ ;{ ;"	mode:@guarded0;
iYu;&â[o:Sass::Script::Operation
:@operand2o:Sass::Script::String	:@options{ :@value"
light:
@linei\:
@type:identifier;@:@operand1o:Sass::Script::Variable	;@:
@name"	mode:@underscored_name"	mode;
i\:@operator:eq;
i\u:Sass::Tree::IfNodeÈ[o:Sass::Script::Operation
:@operand2o:Sass::Script::String	:@options{ :@value"	dark:
@linei^:
@type:identifier;@:@operand1o:Sass::Script::Variable	;@:
@name"	mode:@underscored_name"	mode;
i^:@operator:eq;
i^u:Sass::Tree::IfNode°[00[o:Sass::Tree::DebugNode	:
@expro:Sass::Script::List	:@options{ :@separator:
space:@value[o:Sass::Script::Variable	;@	:
@name"	mode:@underscored_name"	mode:
@lineiao:Sass::Script::String	;@	;"= is not a valid color mode. Use light, dark, or inverse.;ia:
@type:string;ia:@children[ ;{ ;iao:Sass::Tree::ReturnNode	;o:Sass::Script::Color	;{ ;0;ib:@attrs{	:rediÿ:
alphai:
greeniÿ:	blueiÿ;[ ;@;ib[o:Sass::Tree::ReturnNode	:
@expro:Sass::Script::Funcall
;{ :@keywords{ :
@args[o;
;@;{ ;[o;	;@;"flat_color;"flat_color;
i_o;	;@;"contrast;"contrast;
i_;"darken;
i_o;
;@;{ ;[o;	;@;"
color;"
color;
i_;"opacity;
i_;"	rgba;
i_:@children[ ;{ ;
i_[o:Sass::Tree::ReturnNode	:
@expro:Sass::Script::Funcall
;{ :@keywords{ :
@args[o;
;@;{ ;[o;	;@;"flat_color;"flat_color;
i]o;	;@;"contrast;"contrast;
i];"lighten;
i]o;
;@;{ ;[o;	;@;"
color;"
color;
i];"opacity;
i];"	rgba;
i]:@children[ ;{ ;
i];	@	;[	[o;;	{ ;"
color;"
color0[o;;	@Å;"contrast;"contrasto;;"85%;	@Å;[ ;["%;iZ;iQ[o;;	@Å;"	mode;"	modeo;	;	@Å;"color-mode;"color_mode;iQ[o;;	@Å;"inverse;"inverseo:Sass::Script::Bool;	@Å;F;iQ;"color-offset;iQo;;T;[u;&Ö[o:Sass::Script::Operation
:@operand2o:Sass::Script::String	:@options{ :@value"	dark:
@lineig:
@type:identifier;@:@operand1o:Sass::Script::Variable	;@:
@name"	mode:@underscored_name"	mode;
ig:@operator:eq;
igu:Sass::Tree::IfNodeŒ[00[o:Sass::Tree::ReturnNode	:
@expro:Sass::Script::String	:@options{ :@value"	dark:
@lineij:
@type:identifier:@children[ ;{ ;
ij[o:Sass::Tree::ReturnNode	:
@expro;	;{ ;	"
light;
ih;;:@children[ ;{ ;
ih;	@	;[[o;;	{ ;"	mode;"	mode0;"reverse-color-mode;ifo;;T;[u;&ð[o:Sass::Script::Operation
:@operand2o:Sass::Script::Number:@original"0:@options{ :@denominator_units[ :@numerator_units[ :@valuei :
@lineio;	@	:@operand1o:Sass::Script::Funcall
;	@	:@keywords{ :
@args[o:Sass::Script::Variable	;	@	:
@name"
color:@underscored_name"
color;io;"opacity;io:@operator:eq;io0[o:Sass::Tree::VariableNode:
@expro;
;	{ ;{ ;[o;	;	@;"
color;"
color;ipo;;"1;	@;
@
;[ ;i;ip;"opacify;ip:@children[ ;	{ ;"
color:@guarded0;ipu;&ö[o:Sass::Script::Operation
:@operand2o:Sass::Script::String	:@options{ :@value"transparent:
@lineir:
@type:identifier;@:@operand1o:Sass::Script::Variable	;@:
@name"
color:@underscored_name"
color;
ir:@operator:eq;
ir0[o:Sass::Tree::VariableNode:
@expro:Sass::Script::Funcall
;{ :@keywords{ :
@args[o;	;@;"
color;"
color;
iso:Sass::Script::Number:@original"1;@:@denominator_units[ :@numerator_units[ ;	i;
is;"opacify;
is:@children[ ;{ ;"
color:@guarded0;
iso;$	;o;	;	{ ;"
color;"
color;iu;[ ;	@	;iu;	@	;[[o;;	{ ;"
color;"
color0;"check-opacity;ino;;T;[o;;o;
;	{ ;{ ;[o;	;	@ý;"bg-color;"bg_color;iy;"check-opacity;iy;[ ;	@	;"bg-color;"0;iyo;;o;
;	{ ;{ ;[o;	;	@;"bg-color;"bg_color;iz;"get-color-mode;iz;[ ;	@	;"tmpmode;"0;izo;$	;o;
;	{ ;{"inverseo;+;	@;T;i|;[o;	;	@;"bg-color;"bg_color;i|o;	;	@;"contrast;"contrast;i|o;	;	@;"tmpmode;"tmpmode;i|;"color-offset;i|;[ ;	@	;i|;	@	;[[o;;	{ ;"bg-color;"bg_color0[o;;	@&;"contrast;"contrasto;	;	@&;"default-text-contrast;"default_text_contrast;ix;"color-by-background;ixo;;T;[u;&O[o:Sass::Script::Operation
:@operand2o:Sass::Script::String	:@options{ :@value"
light:
@linei{:
@type:identifier;@:@operand1o:Sass::Script::Variable	;@:
@name"	mode:@underscored_name"	mode;
i{:@operator:eq;
i{u:Sass::Tree::IfNode¶[00[o:Sass::Tree::ReturnNode	:
@expro:Sass::Script::Number:@original"	-1px:@options{ :@denominator_units[ :@numerator_units["px:@valueiú:
@linei~:@children[ ;	{ ;i~[o:Sass::Tree::ReturnNode	:
@expro:Sass::Script::Number:@original"1px;{ :@denominator_units[ :@numerator_units["px;	i;
i|:@children[ ;{ ;
i|;	@	;[[o;;	{ ;"	mode;"	mode0;"get-inset-offset;io;;T;[u;&–[o:Sass::Script::Operation
:@operand2o:Sass::Script::Number:@original"0:@options{ :@denominator_units[ :@numerator_units[ :@valuei :
@lineiƒ;	@	:@operand1o:Sass::Script::Funcall
;	@	:@keywords{ :
@args[o:Sass::Script::Variable	;	@	:
@name"
color:@underscored_name"
color;iƒ;"saturation;iƒ:@operator:gt;iƒu:Sass::Tree::IfNode—[00[o:Sass::Tree::ReturnNode	:
@expro:Sass::Script::Variable	:@options{ :
@name"
color:@underscored_name"
color:
@linei†:@children[ ;{ ;i†[o:Sass::Tree::ReturnNode	:
@expro;
;	{ ;{ ;[o;	;	@;"
color;"
color;i„o;	;	@;"amount;"amount;i„;"saturate;i„:@children[ ;	{ ;i„;	@	;[[o;;	{ ;"
color;"
color0[o;;	@A;"amount;"amount0;"safe-saturate;i‚o;;[ ;	@	;
[ ;0;"¡/**
 * Colors the text of an element based on lightness of its background.
 *
 *     .my-element {
 *       @include color-by-background(#fff); // Colors text black.
 *     }
 *
 *     .my-element {
 *       @include color-by-background(#fff, 40%); // Colors text gray.
 *     }
 *
 * @param {color} $bg-color Background color of element.
 * @param {percent} $contrast Contrast of text color to its background.
 *
 */;iŠ;0o:Sass::Tree::MixinDefNode;T;[u;&Ô[o:Sass::Script::Variable	:@options{ :
@name"default-color:@underscored_name"default_color:
@lineišu:Sass::Tree::IfNode7[00[o:Sass::Tree::PropNode:@children[ :
@tabsi :@options{ :
@name["
color:@prop_syntax:new:@valueo:Sass::Script::Funcall
;{ :@keywords{ :
@args[o:Sass::Script::Variable	;@;	"bg-color:@underscored_name"bg_color:
@lineio;	;@;	"contrast;"contrast;i;	"color-by-background;i;i[o:Sass::Tree::PropNode:@children[ :
@tabsi ;{ ;["
color:@prop_syntax:new:@valueo:Sass::Script::Funcall
;{ :@keywords{ :
@args[o;
;@;{ ;[	o;
;@;{ ;[o; 	;@;"default-color;"default_color;	i›;"hue;	i›o;
;@;{ ;[o; 	;@;"default-color;"default_color;	i›;"saturation;	i›o;
;@;{ ;[o; 	;@;"bg-color;"bg_color;	i›;"lightness;	i›o;
;@;{ ;[o; 	;@;"bg-color;"bg_color;	i›;"opacity;	i›;"	hsla;	i›o; 	;@;"contrast;"contrast;	i›;"color-by-background;	i›;	i›u;&ê[o:Sass::Script::Variable	:@options{ :
@name"inset-text:@underscored_name"inset_text:
@linei 0[o:Sass::Tree::MixinNode:@children[ ;{ :@keywords{ :
@args[o; 	;{ ;"bg-color;"bg_color;	i¡;"inset-by-background;	i¡;	@	;[	[o;;	{ ;"bg-color;"bg_color0[o;;	@T;"contrast;"contrasto;	;	@T;"default-text-contrast;"default_text_contrast;i™[o;;	@T;"default-color;"default_coloro;+;	@T;F;i™[o;;	@T;"inset-text;"inset_texto;+;	@T;F;i™;"color-by-background;i™o;,;T;[	o;;o;
;	{ ;{ ;[o;	;	@m;"bg-color;"bg_color;i¦;"check-opacity;i¦;[ ;	@	;"bg-color;"0;i¦o;;o;
;	{ ;{ ;[o;
;	@x;{ ;[o;	;	@x;"bg-color;"bg_color;i§;"get-color-mode;i§;"get-inset-offset;i§;[ ;	@	;"offset;"0;i§u;&Ç[o:Sass::Script::Operation
:@operand2o:Sass::Script::Bool:@options{ :@valueT:
@linei©;@:@operand1o:Sass::Script::Variable	;@:
@name"box:@underscored_name"box;
i©:@operator:eq;
i©0[o:Sass::Tree::MixinNode:@children[ ;{ :@keywords{ :
@args[o:Sass::Script::List	;{ :@separator:
space;	[	o:Sass::Script::Funcall
;@;{"	modeo;
;@;{ ;[o;	;@;"bg-color;"bg_color;
iª;"get-color-mode;
iª;[o;	;@;"bg-color;"bg_color;
iªo;	;@;"contrast;"contrast;
iª;"color-offset;
iªo:Sass::Script::Number:@original"0;@:@denominator_units[ :@numerator_units[ ;	i ;
iªo;	;@;"offset;"offset;
iªo;;"0;@;@);[ ;	i ;
iª;
iª;"box-shadow;
iªo:Sass::Tree::MixinNode;[ ;	@	;{ ;[o:Sass::Script::List	;	{ :@separator:
space;[	o;
;	@‹;{"	modeo;
;	@‹;{ ;[o;	;	@‹;"bg-color;"bg_color;i­;"get-color-mode;i­;[o;	;	@‹;"bg-color;"bg_color;i­o;	;	@‹;"contrast;"contrast;i­;"color-offset;i­o;;"0;	@‹;@;[ ;i ;i­o;	;	@‹;"offset;"offset;i­o;;"0;	@‹;@;[ ;i ;i­;i­;"text-shadow;i­;	@	;[[o;;	{ ;"bg-color;"bg_color0[o;;	@¬;"contrast;"contrasto;;"10%;	@¬;[ ;["%;i;i¥[o;;	@¬;"box;"boxo;+;	@¬;F;i¥;"inset-by-background;i¥o;;T;[	o;;o;
;o;;"255;	{ ;@;[ ;iÿ;i±;	@Ä;o;
;	@Ä;{ ;[o;	;	@Ä;"
color;"
color;i±;"red;i±;; ;i±;[ ;	@	;"r;"0;i±o;;o;
;o;;"255;	{ ;@;[ ;iÿ;i²;	@Ó;o;
;	@Ó;{ ;[o;	;	@Ó;"
color;"
color;i²;"
green;i²;; ;i²;[ ;	@	;"g;"0;i²o;;o;
;o;;"255;	{ ;@;[ ;iÿ;i³;	@â;o;
;	@â;{ ;[o;	;	@â;"
color;"
color;i³;"	blue;i³;; ;i³;[ ;	@	;"b;"0;i³o;;o;
;	{ ;{ ;[o;	;	@ï;"
color;"
color;i´;"opacity;i´;[ ;	@	;"a;"0;i´;	@	;[[o;;	{ ;"
color;"
color0;"hsv-to-rgb;i°o;;[ ;	@	;
[ ;0;")/* @debug hsv(rgba(#3E87E3, .5)); */;i·;i o;;T;[o;;o;
;	{ ;{ ;[o;	;	@;"
color;"
color;iº;"brightness;iº;[ ;	@	;"current_brightness;"0;iº;	@	;[[o;;	{ ;"
color;"
color0[o;;	@;"amount;"amount0;"brighten;i¹o;;o:Sass::Script::Color	;	{ ;0;i½:@attrs{	:redi :
alphai:
greeni :	blueiÿ;[ ;	@	;"base-color;""!default;i½o;;o;1	;	{ ;0;i¾;2{	;3iÌ;4i;5iÌ;6iÌ;[ ;	@	;"neutral-color;""!default;i¾o;;o;
;	{ ;{ ;[o;
;	@+;{ ;[o;	;	@+;"base-color;"base_color;i¿o;;"15;	@+;@;[ ;i;i¿;"safe-saturate;i¿o;;"5;	@+;@;[ ;i
;i¿;"darken;i¿;[ ;	@	;"highlight-color;""!default;i¿o;;o;(	;	{ ;"
matte;iÁ;):identifier;[ ;	@	;"base-gradient;""!default;iÁo;;o;;"85%;	{ ;[ ;["%;iZ;iÂ;[ ;	@	;"default-text-contrast;""!default;iÂo;;o;
;	{ ;{ ;[o;	;	@R;"neutral-color;"neutral_color;iÃ;"get-color-mode;iÃ;[ ;	@	;"color-mode;""!default;iÃo;;[ ;	@	;
[ ;0;"°/* @debug color-difference(#95419F, #0FFF90);
 * @debug brightness(#cbea0d) - brightness(#ea850d);
 * @debug contrast-ratio(#95419F, #0FFF90);
 * @debug brightness(#E0F200); */;iÅ;i ;	@	;i:@template"¤/**
 *
 * @class Color
 * @author David Kaneda - http://www.davidkaneda.com
 *
 */

/**
 * Returns the brightness (out of 100) of a specified color.
 * @todo explain why this is useful
 * @param {color} $color The color you want the brightness value of
 * @return {measurement}
 */
@function brightness($color) {
    $r: red($color) / 255 * 100;
    $g: green($color) / 255 * 100;
    $b: blue($color) / 255 * 100;

    $brightness: (($r * 299) + ($g * 587) + ($b * 114)) / 1000;

    @return $brightness;
}

// @private
@function color-difference($c1, $c2) {
    @return (max(red($c1), red($c2)) - min(red($c1), red($c2))) + (max(green($c1), green($c2)) - min(green($c1), green($c2))) + (max(blue($c1), blue($c2)) - min(blue($c1), blue($c2)));
}

// @private
@function color-luminance($value) {
    @if $value <= 0.03928 {
        @return $value / 12.92;
    } @else {
        @return ($value + 0.055)/1.055 * ($value + 0.055)/1.055;
    }
}

/**
 * Returns the luminosity for a specified color
 * @param {color} The color to check
 * @return {measurement}
 */
@function luminosity($color) {
    $r: color-luminance(red($color) / 255);
    $g: color-luminance(green($color) / 255);
    $b: color-luminance(blue($color) / 255);
    $l: 0.2126 * $r + 0.7152 * $g + 0.0722 * $b;
    @debug 'luminosity for ' + $color + ' is ' + $l;
    @return $l;
}

/**
 * Returns the contrast ratio between two colors
 * @param {color1} The color to check
 * @return {measurement}
 */
@function contrast-ratio($color1, $color2) {
    $l1: luminosity($color1);
    $l2: luminosity($color2);

    @if $l2 > $l1 {
        @return $l2 / $l1;
    } @else {
        @return $l1 / $l2;
    }
}

@function get-color-mode($color) {
    @if brightness($color) > 55 {
        @return light;
    } @else {
        @return dark;
    }
}

@function color-offset($color, $contrast: 85%, $mode: $color-mode, $inverse: false) {
    $flat_color: check-opacity($color);

    @if $mode == inverse {
        $mode: reverse-color-mode($color-mode);
    }

    @if $inverse == true {
        $mode: reverse-color-mode($mode);
    }
    
    @if ($mode == light) {
        @return rgba(lighten($flat_color, $contrast), opacity($color));
    } @else if ($mode == dark) {
        @return rgba(darken($flat_color, $contrast), opacity($color));
    } @else {
        @debug $mode " is not a valid color mode. Use light, dark, or inverse.";
        @return white;
    }
}

@function reverse-color-mode($mode) {
    @if $mode == dark {
        @return light;
    } @else {
        @return dark;
    }
}

@function check-opacity($color) {
    @if (opacity($color) == 0) {
        $color: opacify($color, 1);
    }
    @if $color == transparent {
        $color: opacify($color, 1);
    }
    @return $color;
}

@function color-by-background($bg-color, $contrast: $default-text-contrast) {
    $bg-color: check-opacity($bg-color);
    $tmpmode: get-color-mode($bg-color);
    
    @return color-offset($bg-color, $contrast, $tmpmode, $inverse: true);
}

@function get-inset-offset($mode){
    @if $mode == light {
        @return 1px;
    } @else {
        @return -1px;
    }
}

@function safe-saturate($color, $amount) {
    @if saturation($color) > 0 {
        @return saturate($color, $amount);
    } @else {
        @return $color;
    }
}

/**
 * Colors the text of an element based on lightness of its background.
 *
 *     .my-element {
 *       @include color-by-background(#fff); // Colors text black.
 *     }
 *
 *     .my-element {
 *       @include color-by-background(#fff, 40%); // Colors text gray.
 *     }
 *
 * @param {color} $bg-color Background color of element.
 * @param {percent} $contrast Contrast of text color to its background.
 *
 */
@mixin color-by-background($bg-color, $contrast: $default-text-contrast, $default-color: false, $inset-text: false) {
    @if $default-color {
        color: color-by-background(hsla(hue($default-color), saturation($default-color), lightness($bg-color), opacity($bg-color)), $contrast);
    } @else {
        color: color-by-background($bg-color, $contrast);
    }
    
    @if $inset-text {
        @include inset-by-background($bg-color);
    }
}

@mixin inset-by-background($bg-color, $contrast: 10%, $box: false){
    $bg-color: check-opacity($bg-color);
    $offset: get-inset-offset(get-color-mode($bg-color));

    @if ($box == true) {
        @include box-shadow(color-offset($bg-color, $contrast, $mode: get-color-mode($bg-color)) 0 $offset 0);
    }
    
    @include text-shadow(color-offset($bg-color, $contrast, $mode: get-color-mode($bg-color)) 0 $offset 0);
}

@function hsv-to-rgb($color) {
    $r: red($color) / 255;
    $g: green($color) / 255;
    $b: blue($color) / 255;
    $a: opacity($color);
}

// @debug hsv(rgba(#3E87E3, .5));

@function brighten($color, $amount) {
    $current_brightness: brightness($color);
}

$base-color: blue !default;
$neutral-color: #ccc !default;
$highlight-color: darken(safe-saturate($base-color, 15), 5) !default;

$base-gradient: matte !default;
$default-text-contrast: 85% !default;
$color-mode: get-color-mode($neutral-color) !default;

// @debug color-difference(#95419F, #0FFF90);
// @debug brightness(#cbea0d) - brightness(#ea850d);
// @debug contrast-ratio(#95419F, #0FFF90);
// @debug brightness(#E0F200);