/*!
 * # Semantic UI - Header
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */


/*******************************
            Header
*******************************/

/* Standard */
.ui.header {
  border: none;
  margin: @headerMargin;
  padding: @headerVerticalPadding @headerHorizontalPadding;
  font-family: @headerFontFamily;
  font-weight: @headerFontWeight;
  line-height: @headerLineHeight;
  text-transform: @headerTextTransform;
  color: @textColor;
}

.ui.header:first-child {
  margin-top: @headerFirstMargin;
}
.ui.header:last-child {
  margin-bottom: @headerLastMargin;
}

/*--------------
   Sub Header
---------------*/

.ui.header .sub.header {
  display: block;
  font-weight: @normal;
  padding: 0em;
  margin: @headerSubHeaderMargin;
  font-size: @headerSubHeaderFontSize;
  line-height: @headerSubHeaderLineHeight;
  color: @headerSubHeaderColor;
}

/*--------------
      Icon
---------------*/

.ui.header > .icon {
  display: table-cell;
  opacity: @headerIconOpacity;
  font-size: @headerIconSize;
  padding-top: @headerIconOffset;
  vertical-align: @headerIconAlignment;
}

/* With Text Node */
.ui.header .icon:only-child {
  display: inline-block;
  padding: 0em;
  margin-right: @headerIconMargin;
}

/*-------------------
        Image
--------------------*/

.ui.header > .image:not(.icon),
.ui.header > img {
  display: inline-block;
  margin-top: @headerImageOffset;
  width: @headerImageWidth;
  height: @headerImageHeight;
  vertical-align: @headerImageAlignment;
}
.ui.header > .image:not(.icon):only-child,
.ui.header > img:only-child {
  margin-right: @headerImageMargin;
}

/*--------------
     Content
---------------*/

.ui.header .content {
  display: inline-block;
  vertical-align: @headerContentAlignment;
}

/* After Image */
.ui.header > img + .content,
.ui.header > .image + .content {
  padding-left: @headerImageMargin;
  vertical-align: @headerContentImageAlignment;
}

/* After Icon */
.ui.header > .icon + .content {
  padding-left: @headerIconMargin;
  display: table-cell;
  vertical-align: @headerContentIconAlignment;
}


/*--------------
 Loose Coupling
---------------*/

.ui.header .ui.label {
  font-size: @headerLabelSize;
  margin-left: @headerLabelDistance;
  vertical-align: @headerLabelVerticalAlign;
}

/* Positioning */
.ui.header + p {
  margin-top: @headerNextParagraphDistance;
}



/*******************************
            Types
*******************************/


/*--------------
     Page
---------------*/

h1.ui.header {
  font-size: @h1;
}
h2.ui.header {
  font-size: @h2;
}
h3.ui.header {
  font-size: @h3;
}
h4.ui.header {
  font-size: @h4;
}
h5.ui.header {
  font-size: @h5;
}


/* Sub Header */
h1.ui.header .sub.header {
  font-size: @h1SubHeaderFontSize;
}
h2.ui.header .sub.header {
  font-size: @h2SubHeaderFontSize;
}
h3.ui.header .sub.header {
  font-size: @h3SubHeaderFontSize;
}
h4.ui.header .sub.header {
  font-size: @h4SubHeaderFontSize;
}
h5.ui.header .sub.header {
  font-size: @h5SubHeaderFontSize;
}


/*--------------
 Content Heading
---------------*/

.ui.huge.header {
  min-height: 1em;
  font-size: @headerHugeFontSize;
}
.ui.large.header {
  font-size: @headerLargeFontSize;
}
.ui.medium.header {
  font-size: @headerMediumFontSize;
}
.ui.small.header {
  font-size: @headerSmallFontSize;
}
.ui.tiny.header {
  font-size: @headerTinyFontSize;
}

/* Sub Header */
.ui.huge.header .sub.header {
  font-size: @headerHugeSubHeaderFontSize;
}
.ui.large.header .sub.header {
  font-size: @headerHugeSubHeaderFontSize;
}
.ui.header .sub.header {
  font-size: @headerSubHeaderFontSize;
}
.ui.small.header .sub.header {
  font-size: @headerSmallSubHeaderFontSize;
}
.ui.tiny.header .sub.header {
  font-size: @headerTinySubHeaderFontSize;
}

/*--------------
   Sub Heading
---------------*/

.ui.sub.header {
  padding: 0em;
  margin-bottom: @headerSubHeadingDistance;
  font-weight: @headerSubHeadingFontWeight;
  font-size: @headerSubHeadingFontSize;
  text-transform: @headerSubHeadingTextTransform;
  color: @headerSubHeadingColor;
}

.ui.small.sub.header {
  font-size: @headerSmallSubHeadingSize;
}
.ui.sub.header {
  font-size: @headerSubHeadingFontSize;
}
.ui.large.sub.header {
  font-size: @headerLargeSubHeadingSize;
}
.ui.huge.sub.header {
  font-size: @headerHugeSubHeadingSize;
}



/*-------------------
        Icon
--------------------*/

.ui.icon.header {
  display: inline-block;
  text-align: center;
  margin: @headerIconHeaderTopMargin 0em @headerIconHeaderBottomMargin;
}
.ui.icon.header:after {
  content: '';
  display: block;
  height: 0px;
  clear: both;
  visibility: hidden;
}

.ui.icon.header:first-child {
  margin-top: @headerIconHeaderFirstMargin;
}
.ui.icon.header .icon {
  float: none;
  display: block;
  width: auto;
  height: auto;
  line-height: 1;
  padding: 0em;
  font-size: @headerIconHeaderSize;
  margin: 0em auto @headerIconHeaderMargin;
  opacity: @headerIconHeaderOpacity;
}
.ui.icon.header .content {
  display: block;
  padding: 0em;
}
.ui.icon.header .circular.icon {
  font-size: @headerCircularHeaderIconSize;
}
.ui.icon.header .square.icon {
  font-size: @headerSquareHeaderIconSize;
}
.ui.block.icon.header .icon {
  margin-bottom: 0em;
}
.ui.icon.header.aligned {
  margin-left: auto;
  margin-right: auto;
  display: block;
}

/*******************************
            States
*******************************/

.ui.disabled.header {
  opacity: @disabledOpacity;
}


/*******************************
           Variations
*******************************/

/*-------------------
      Inverted
--------------------*/

.ui.inverted.header {
  color: @headerInvertedColor;
}
.ui.inverted.header .sub.header {
  color: @headerInvertedSubHeaderColor;
}
.ui.inverted.attached.header {
  background: @headerInvertedAttachedBackground;
  box-shadow: none;
  border-color: transparent;
}
.ui.inverted.block.header {
  background: @headerInvertedBlockBackground;
  box-shadow: none;
}
.ui.inverted.block.header {
  border-bottom: none;
}


/*-------------------
       Colors
--------------------*/

/*--- Red ---*/
.ui.red.header {
  color: @red !important;
}
a.ui.red.header:hover {
  color: @redHover !important;
}
.ui.red.dividing.header {
  border-bottom: @headerDividedColoredBorderWidth solid @red;
}

/* Inverted */
.ui.inverted.red.header {
  color: @lightRed !important;
}
a.ui.inverted.red.header:hover {
  color: @lightRedHover !important;
}

/*--- Orange ---*/
.ui.orange.header {
  color: @orange !important;
}
a.ui.orange.header:hover {
  color: @orangeHover !important;
}
.ui.orange.dividing.header {
  border-bottom: @headerDividedColoredBorderWidth solid @orange;
}
/* Inverted */
.ui.inverted.orange.header {
  color: @lightOrange !important;
}
a.ui.inverted.orange.header:hover {
  color: @lightOrangeHover !important;
}

/*--- Olive ---*/
.ui.olive.header {
  color: @olive !important;
}
a.ui.olive.header:hover {
  color: @oliveHover !important;
}
.ui.olive.dividing.header {
  border-bottom: @headerDividedColoredBorderWidth solid @olive;
}
/* Inverted */
.ui.inverted.olive.header {
  color: @lightOlive !important;
}
a.ui.inverted.olive.header:hover {
  color: @lightOliveHover !important;
}

/*--- Yellow ---*/
.ui.yellow.header {
  color: @yellow !important;
}
a.ui.yellow.header:hover {
  color: @yellowHover !important;
}
.ui.yellow.dividing.header {
  border-bottom: @headerDividedColoredBorderWidth solid @yellow;
}
/* Inverted */
.ui.inverted.yellow.header {
  color: @lightYellow !important;
}
a.ui.inverted.yellow.header:hover {
  color: @lightYellowHover !important;
}

/*--- Green ---*/
.ui.green.header {
  color: @green !important;
}
a.ui.green.header:hover {
  color: @greenHover !important;
}
.ui.green.dividing.header {
  border-bottom: @headerDividedColoredBorderWidth solid @green;
}
/* Inverted */
.ui.inverted.green.header {
  color: @lightGreen !important;
}
a.ui.inverted.green.header:hover {
  color: @lightGreenHover !important;
}

/*--- Teal ---*/
.ui.teal.header {
  color: @teal !important;
}
a.ui.teal.header:hover {
  color: @tealHover !important;
}
.ui.teal.dividing.header {
  border-bottom: @headerDividedColoredBorderWidth solid @teal;
}
/* Inverted */
.ui.inverted.teal.header {
  color: @lightTeal !important;
}
a.ui.inverted.teal.header:hover {
  color: @lightTealHover !important;
}

/*--- Blue ---*/
.ui.blue.header {
  color: @blue !important;
}
a.ui.blue.header:hover {
  color: @blueHover !important;
}
.ui.blue.dividing.header {
  border-bottom: @headerDividedColoredBorderWidth solid @blue;
}
/* Inverted */
.ui.inverted.blue.header {
  color: @lightBlue !important;
}
a.ui.inverted.blue.header:hover {
  color: @lightBlueHover !important;
}

/*--- Violet ---*/
.ui.violet.header {
  color: @violet !important;
}
a.ui.violet.header:hover {
  color: @violetHover !important;
}
.ui.violet.dividing.header {
  border-bottom: @headerDividedColoredBorderWidth solid @violet;
}
/* Inverted */
.ui.inverted.violet.header {
  color: @lightViolet !important;
}
a.ui.inverted.violet.header:hover {
  color: @lightVioletHover !important;
}

/*--- Purple ---*/
.ui.purple.header {
  color: @purple !important;
}
a.ui.purple.header:hover {
  color: @purpleHover !important;
}
.ui.purple.dividing.header {
  border-bottom: @headerDividedColoredBorderWidth solid @purple;
}
/* Inverted */
.ui.inverted.purple.header {
  color: @lightPurple !important;
}
a.ui.inverted.purple.header:hover {
  color: @lightPurpleHover !important;
}

/*--- Pink ---*/
.ui.pink.header {
  color: @pink !important;
}
a.ui.pink.header:hover {
  color: @pinkHover !important;
}
.ui.pink.dividing.header {
  border-bottom: @headerDividedColoredBorderWidth solid @pink;
}
/* Inverted */
.ui.inverted.pink.header {
  color: @lightPink !important;
}
a.ui.inverted.pink.header:hover {
  color: @lightPinkHover !important;
}

/*--- Brown ---*/
.ui.brown.header {
  color: @brown !important;
}
a.ui.brown.header:hover {
  color: @brownHover !important;
}
.ui.brown.dividing.header {
  border-bottom: @headerDividedColoredBorderWidth solid @brown;
}
/* Inverted */
.ui.inverted.brown.header {
  color: @lightBrown !important;
}
a.ui.inverted.brown.header:hover {
  color: @lightBrownHover !important;
}

/*--- Grey ---*/
.ui.grey.header {
  color: @grey !important;
}
a.ui.grey.header:hover {
  color: @greyHover !important;
}
.ui.grey.dividing.header {
  border-bottom: @headerDividedColoredBorderWidth solid @grey;
}
/* Inverted */
.ui.inverted.grey.header {
  color: @lightGrey !important;
}
a.ui.inverted.grey.header:hover {
  color: @lightGreyHover !important;
}


/*-------------------
       Aligned
--------------------*/

.ui.left.aligned.header {
  text-align: left;
}
.ui.right.aligned.header {
  text-align: right;
}
.ui.centered.header,
.ui.center.aligned.header {
  text-align: center;
}
.ui.justified.header {
  text-align: justify;
}
.ui.justified.header:after {
  display: inline-block;
  content: '';
  width: 100%;
}

/*-------------------
       Floated
--------------------*/

.ui.floated.header,
.ui[class*="left floated"].header {
  float: left;
  margin-top: 0em;
  margin-right: @headerFloatedMargin;
}
.ui[class*="right floated"].header {
  float: right;
  margin-top: 0em;
  margin-left: @headerFloatedMargin;
}

/*-------------------
       Fitted
--------------------*/

.ui.fitted.header {
  padding: 0em;
}


/*-------------------
      Dividing
--------------------*/

.ui.dividing.header {
  padding-bottom: @headerDividedBorderPadding;
  border-bottom: @headerDividedBorder;
}
.ui.dividing.header .sub.header {
  padding-bottom: @headerDividedSubHeaderPadding;
}
.ui.dividing.header .icon {
  margin-bottom: @headerDividedIconPadding;
}

.ui.inverted.dividing.header {
  border-bottom-color: @headerInvertedDividedBorderColor;
}


/*-------------------
        Block
--------------------*/

.ui.block.header {
  background: @headerBlockBackground;
  padding: @headerBlockVerticalPadding @headerBlockHorizontalPadding;
  box-shadow: @headerBlockBoxShadow;
  border: @headerBlockBorder;
  border-radius: @headerBlockBorderRadius;
}

.ui.tiny.block.header {
  font-size: @headerTinyBlock;
}
.ui.small.block.header {
  font-size: @headerSmallBlock;
}
.ui.block.header:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6) {
  font-size: @headerMediumBlock;
}
.ui.large.block.header {
  font-size: @headerLargeBlock;
}
.ui.huge.block.header {
  font-size: @headerHugeBlock;
}

/*-------------------
       Attached
--------------------*/

.ui.attached.header {
  background: @headerAttachedBackground;
  padding: @headerAttachedVerticalPadding @headerAttachedHorizontalPadding;
  margin-left: @headerAttachedOffset;
  margin-right: @headerAttachedOffset;
  box-shadow: @headerAttachedBoxShadow;
  border: @headerAttachedBorder;
}
.ui.attached.block.header {
  background: @headerBlockBackground;
}

.ui.attached:not(.top):not(.bottom).header {
  margin-top: 0em;
  margin-bottom: 0em;
  border-top: none;
  border-radius: 0em;
}
.ui.top.attached.header {
  margin-bottom: 0em;
  border-radius: @headerAttachedBorderRadius @headerAttachedBorderRadius 0em 0em;
}
.ui.bottom.attached.header {
  margin-top: 0em;
  border-top: none;
  border-radius: 0em 0em @headerAttachedBorderRadius @headerAttachedBorderRadius;
}

/* Attached Sizes */
.ui.tiny.attached.header {
  font-size: @headerTinyAttachedSize;
}
.ui.small.attached.header {
  font-size: @headerSmallAttachedSize;
}
.ui.attached.header:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6) {
  font-size: @headerMediumAttachedSize;
}
.ui.large.attached.header {
  font-size: @headerLargeAttachedSize;
}
.ui.huge.attached.header {
  font-size: @headerHugeAttachedSize;
}

/*-------------------
        Sizing
--------------------*/

.ui.header:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6) {
  font-size: @headerMediumFontSize;
}

