/*******************************
             Label
*******************************/

/*-------------------
       Element
--------------------*/

@labelVerticalAlign: baseline;
@labelVerticalMargin: 0em;
@labelHorizontalMargin: @relative2px;
@labelBackgroundColor: #E8E8E8;
@labelColor: @mutedTextColor;
@labelBackgroundImage: none;
@labelVerticalPadding: 0.5833em; /* medium is not @emSize custom value required */
@labelHorizontalPadding: 0.833em;
@labelBorderRadius: @absoluteBorderRadius;
@labelTextTransform: none;
@labelFontWeight: @bold;
@labelBorderWidth: 1px;
@labelBorder: 0px solid transparent;

@labelLineHeightOffset: -(@labelVerticalPadding / 2);

@labelLabelTransitionDuration: @defaultDuration;
@labelLabelTransitionEasing: @defaultEasing;
@labelTransition: background @labelLabelTransitionDuration @labelLabelTransitionEasing;

/* Group */
@labelGroupVerticalMargin: 0.5em;
@labelGroupHorizontalMargin: 0.5em;

/*-------------------
        Parts
--------------------*/

/* Link */
@labelLinkOpacity: 0.5;
@labelLinkTransition: @labelLabelTransitionDuration opacity @labelLabelTransitionEasing;

/* Icon */
@labelIconDistance: 0.75em;

/* Image */
@labelImageHeight: (1em + @labelVerticalPadding * 2);

/* Detail */
@labelDetailFontWeight: @bold;
@labelDetailOpacity: 0.8;
@labelDetailIconDistance: 0.25em;
@labelDetailMargin: 1em;

/* Delete */
@labelDeleteOpacity: @labelLinkOpacity;
@labelDeleteSize: @relativeSmall;
@labelDeleteMargin: 0.5em;
@labelDeleteTransition: background @labelLabelTransitionDuration @labelLabelTransitionEasing;

/*-------------------
        Types
--------------------*/

/* Image Label */
@labelImageLabelBackground: @labelBackgroundColor;
@labelImageLabelVerticalPadding: @labelVerticalPadding;
@labelImageLabelHorizontalPadding: @labelHorizontalPadding;
@labelImageLabelTextDistance: 0.5em;
@labelImageLabelDetailDistance: @labelImageLabelTextDistance;
@labelImageLabelBorderRadius: @labelBorderRadius;
@labelImageLabelBoxShadow: none;
@labelImageLabelPadding: @labelImageLabelVerticalPadding @labelImageLabelHorizontalPadding @labelImageLabelVerticalPadding @labelImageLabelTextDistance;

@labelImageLabelImageMargin: -@labelVerticalPadding @labelImageLabelTextDistance -@labelVerticalPadding -@labelImageLabelTextDistance;
@labelImageLabelImageBorderRadius: @labelImageLabelBorderRadius 0em 0em @labelImageLabelBorderRadius;
@labelImageLabelImageHeight: @labelImageHeight;

@labelImageLabelDetailBackground: @strongTransparentBlack;
@labelImageLabelDetailPadding: @labelImageLabelVerticalPadding @labelImageLabelHorizontalPadding;
@labelImageLabelDetailMargin: -@labelImageLabelVerticalPadding -@labelImageLabelHorizontalPadding -@labelImageLabelVerticalPadding @labelImageLabelDetailDistance;

/*-------------------
        States
--------------------*/

/* Hover */
@labelLabelHoverBackgroundColor: #E0E0E0;
@labelLabelHoverBackgroundImage: none;
@labelLabelHoverTextColor: @hoveredTextColor;

/* Active */
@labelLabelActiveBackgroundColor: #D0D0D0;
@labelLabelActiveBackgroundImage: none;
@labelLabelActiveTextColor: @selectedTextColor;

/* Active Hover */
@labelLabelActiveHoverBackgroundColor: #C8C8C8;
@labelLabelActiveHoverBackgroundImage: none;
@labelLabelActiveHoverTextColor: @selectedTextColor;


/*-------------------
      Variations
--------------------*/

/* Basic */
@labelBasicBackground: none @white;
@labelBasicBorderWidth: 1px;
@labelBasicBorder: @labelBasicBorderWidth solid @borderColor;
@labelBasicColor: @textColor;
@labelBasicBoxShadow: none;

@labelBasicHoverBackground: @labelBasicBackground;
@labelBasicHoverColor: @linkHoverColor;
@labelBasicHoverBorder: @labelBasicBorder;
@labelBasicHoverBoxShadow: @labelBasicBoxShadow;

/* Tag */
@labelTagCircleColor: @white;
@labelTagCircleSize: 0.5em;
@labelTagHorizontalPadding: 1.5em;
@labelTagCircleBoxShadow: 0 -1px 1px 0 rgba(0, 0, 0, 0.3);
@labelTagTriangleRightOffset: 100%;
@labelTagTriangleTopOffset: 50%;
@labelTagTriangleSize: 1.56em;
@labelTagTriangleBackgroundImage: none;
@labelTagTransition: none; /* Avoids error with background: inherit; on animation */

/* Ribbon */
@labelRibbonTriangleSize: 1.2em;
@labelRibbonShadowColor: rgba(0, 0, 0, 0.15);

@labelRibbonMargin: 1rem;
@labelRibbonOffset: ~"calc("-@labelRibbonMargin~" - "@labelRibbonTriangleSize~")";
@labelRibbonDistance: ~"calc("@labelRibbonMargin~" + "@labelRibbonTriangleSize~")";
@labelRightRibbonOffset:  ~"calc(100% + "@labelRibbonMargin~" + "@labelRibbonTriangleSize~")";

@labelRibbonImageTopDistance: 1rem;
@labelRibbonImageMargin: -0.05rem; /* Rounding Offset on Triangle */
@labelRibbonImageOffset: ~"calc("-@labelRibbonImageMargin~" - "@labelRibbonTriangleSize~")";
@labelRightRibbonImageOffset:  ~"calc(100% + "@labelRibbonImageMargin~" + "@labelRibbonTriangleSize~")";

@labelRibbonTableMargin: @relativeMini; /* Rounding Offset on Triangle */
@labelRibbonTableOffset: ~"calc("-@labelRibbonTableMargin~" - "@labelRibbonTriangleSize~")";
@labelRightRibbonTableOffset:  ~"calc(100% + "@labelRibbonTableMargin~" + "@labelRibbonTriangleSize~")";


/* Colors */
@labelRedTextColor: @white;
@labelOrangeTextColor: @white;
@labelYellowTextColor: @white;
@labelOliveTextColor: @white;
@labelGreenTextColor: @white;
@labelTealTextColor: @white;
@labelBlueTextColor: @white;
@labelVioletTextColor: @white;
@labelPurpleTextColor: @white;
@labelPinkTextColor: @white;
@labelBrownTextColor: @white;
@labelGreyTextColor: @white;
@labelBlackTextColor: @white;

@labelRedHoverTextColor: @white;
@labelOrangeHoverTextColor: @white;
@labelYellowHoverTextColor: @white;
@labelOliveHoverTextColor: @white;
@labelGreenHoverTextColor: @white;
@labelTealHoverTextColor: @white;
@labelBlueHoverTextColor: @white;
@labelVioletHoverTextColor: @white;
@labelPurpleHoverTextColor: @white;
@labelPinkHoverTextColor: @white;
@labelBrownHoverTextColor: @white;
@labelGreyHoverTextColor: @white;
@labelBlackHoverTextColor: @white;

@labelRedRibbonShadow: darken(@red, 10);
@labelOrangeRibbonShadow: darken(@orange, 10);
@labelYellowRibbonShadow: darken(@yellow, 10);
@labelOliveRibbonShadow: darken(@olive, 10);
@labelGreenRibbonShadow: darken(@green, 10);
@labelTealRibbonShadow: darken(@teal, 10);
@labelBlueRibbonShadow: darken(@blue, 10);
@labelVioletRibbonShadow: darken(@violet, 10);
@labelPurpleRibbonShadow: darken(@purple, 10);
@labelPinkRibbonShadow: darken(@pink, 10);
@labelBrownRibbonShadow: darken(@brown, 10);
@labelGreyRibbonShadow: darken(@grey, 10);
@labelBlackRibbonShadow: darken(@black, 10);

/* Attached */
@labelAttachedSegmentPadding: 2rem;
@labelAttachedVerticalPadding: 0.75em;
@labelAttachedHorizontalPadding: 1em;

@labelAttachedCornerBorderRadius: @3px;
@labelAttachedBorderRadius: @labelBorderRadius;

/* Corner */
@labelCornerSizeRatio: 1;
@labelCornerTransition: color @labelLabelTransitionDuration @labelLabelTransitionEasing;
@labelCornerTriangleSize: 4em;
@labelCornerTriangleTransition: border-color @labelLabelTransitionDuration @labelLabelTransitionEasing;
@labelCornerTriangleZIndex: 1;

@labelCornerIconSize: @relativeLarge;
@labelCornerIconTopOffset: @relative9px;
@labelCornerIconLeftOffset: @relative11px;

/* Corner Text */
@labelCornerTextWidth: 3em;
@labelCornerTextWeight: @bold;
@labelCornerTextSize: 1em;

/* Horizontal */
@labelHorizontalLabelMinWidth: 3em;
@labelHorizontalLabelMargin: 0.5em;
@labelHorizontalLabelVerticalPadding: 0.4em;

/* Circular Padding */
@labelCircularPadding: 0.5em;
@labelCircularMinSize: 2em;
@labelEmptyCircleSize: 0.5em;

/* Pointing */
@labelPointingBorderColor: inherit;
@labelPointingBorderWidth: @labelBorderWidth;
@labelPointingVerticalDistance: 1em;
@labelPointingTriangleSize: 0.6666em;
@labelPointingHorizontalDistance: @labelPointingTriangleSize;

@labelPointingTriangleTransition: background @labelLabelTransitionDuration @labelLabelTransitionEasing;
@labelPointingTriangleZIndex: 2;

/* Basic Pointing */
@labelBasicPointingTriangleOffset: -@labelPointingBorderWidth;

/* Floating */
@labelFloatingTopOffset: -1em;
@labelFloatingLeftOffset: -1.5em;
@labelFloatingZIndex: 100;

/*-------------------
        Group
--------------------*/

/* Sizing */
@labelMini    : @9px;
@labelTiny    : @10px;
@labelSmall   : @11px;
@labelMedium  : @12px;
@labelLarge   : @absoluteMedium;
@labelBig     : @absoluteBig;
@labelHuge    : @absoluteHuge;
@labelMassive : @absoluteMassive;
