Adding app inventor subject support

Adding app inventor subject support

// A colour that looks well over the subject-color, ideally black or white
@text-color: #FFFFFF;

// A colour related to the subject. Try https://github.com/github/linguist for ideas.
@subject-color: #8fc202;

// A colour that contrasts well with the subject colour, ideally one of the CoderDojo colours
@contrast-color: #73449B;

error: pathspec 'src/css/_subject_style/_master/_app_inventor.less' did not match any file(s) known to git


Improve typographic style line heights

Improve typographic style line heights

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/mplusmuseum/mplusmuseum-stories.git/'


Use static URL for font assets

Use static URL for font assets


change header size

change header size

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/wsxiaoys/wsxiaoys.github.com.git/'


Fixed a couple of typos.

Fixed a couple of typos.

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/USGS-CIDA/enddat_web.git/'


[FEATURE] sap.m.IconTabBar: CSS styles for HCB added

Change-Id: I31ba23449e27417058be8fa97a3b60576154a82d
Signed-off-by: Evgeni Katsarski <7bdaeff4874e740c901b72d042a9e6f228c70fc1@sap.com>

/* ==================================================== */
/* CSS for control sap.m/IconTabBar.control             */
/* High Contrast Black theme                            */

/* Head Container */

.sapMITBHead {
	display: block;
	margin: 1rem 2rem 0 2rem;
	padding: 0.125rem 0.125rem 0 0.125rem;
	white-space: nowrap;
	font-size: @sapMFontSmallSize;
	position: relative;
	overflow: hidden;
}

.sapMITBHead.sapMITBTextOnly {
	margin-left: 1rem;
}

.sap-phone .sapMITBHead {
	display: inline-block;
	margin: 1rem 0 0;
	vertical-align: top;
}

.sap-phone .sapMITBHead.sapMITBTextOnly .sapMITBFilter {
	margin-left: -0.75rem;
}

.sap-tablet .sapMITBHead,
html[data-sap-ui-os=win8] .sapMITBHead {
	display: inline-block;
	margin: 1rem 1rem 0 0;
	vertical-align: top;
}

.sap-tablet .sapMITBHead.sapMITBTextOnly {
	margin-left: -1rem;
}

.sapMITBScrollContainer {
	display: block;
	margin-right: 1rem;
	margin-left: 1rem;
}
.sapMITBScrollContainer::-webkit-scrollbar {
	display: none;
}

.sap-tablet .sapMITBScrollContainer,
html[data-sap-ui-os=win8] .sapMITBScrollContainer {
	margin-right: 2rem;
	margin-left: 2rem;
}

/* scrollbar from iscroll should not be visible */
.sapMITBScrollContainer > div:nth-child(2) {
	visibility: hidden;
}

/* Arrow */

.sapMITBContentArrow {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	height: 1rem;
	border-bottom: 0.25rem solid transparent;
}

.sapMITBSelected > .sapMITBContentArrow {
	border-bottom-color: @sapHCStandardFG;
}

.sapMITBSelected.sapMITBFilterNeutral > .sapMITBContentArrow {
	border-bottom-color: @sapHCStandardFG;
}

.sapMITBSelected.sapMITBFilterPositive > .sapMITBContentArrow {
	border-bottom-color: @sapHCStandardFG;
}

.sapMITBSelected.sapMITBFilterNegative > .sapMITBContentArrow {
	border-bottom-color: @sapHCStandardFG;
}

.sapMITBSelected.sapMITBFilterCritical > .sapMITBContentArrow {
	border-bottom-color: @sapHCStandardFG;
}

.sapMITBNoText > .sapMITBFilter > .sapMITBContentArrow {
	margin: 0 1rem;
	width: 3rem;
}

.sapMITBNoText > .sapMITBFilter:first-child > .sapMITBContentArrow {
	margin: 0 1rem 0 0;
}

.sapMITBVertical.sapMITBFilter > .sapMITBText + .sapMITBContentArrow {
	height: 0.6875rem;
}

.sapMITBTextOnly > .sapMITBFilter > .sapMITBText + .sapMITBContentArrow {
	height: 1rem;
}

.sap-phone .sapMITBTextOnly > .sapMITBFilter > .sapMITBText + .sapMITBContentArrow {
	height: 0.625rem;
}

.sapMITBAll > .sapMITBTab {
	height: 3rem;
	margin-bottom: 1rem;
}

.sapMITBHorizontal.sapMITBFilter > .sapMITBContentArrow {
	width: 3rem;
}

html[dir='rtl'] .sapMITBContentArrow {
	z-index:1;
}

/* Content Container */

.sapMITBContent {
	background-color: @sapHCStandardBG;
	padding: 0 1rem 1rem;
	position: relative;
}

.sap-phone .sapMITBContent {
	padding: 0;
}
.sapMITBContainerContent {
	position: relative;
	padding: 0;
	margin-top: 0;
	border-top: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	border: 0.125rem solid @sapHCStandardFG;
}

.sap-phone .sapMITBContainerContent,
.sap-tablet .sapMITBContainerContent,
html[data-sap-ui-os=win8] .sapMITBContainerContent {
	margin-top: 0;
}

.sapMITBContainerContent.sapMITBContentClosed {
	background-color: transparent;
	border-bottom: none;
}

/* Tab Item */

.sapMITBTab {
	width: 5rem;
}

.sapMITBVertical > .sapMITBTab {
	height: 3rem;
}

.sapMITBTextOnly .sapMITBTab {
	width: auto;
	height: 1rem;
	margin-bottom: 0.375rem;
	text-align: left;
	padding: 0;
}

html[dir=rtl] .sapMITBTextOnly .sapMITBTab {
	text-align: right;
}

.sap-phone .sapMITBTextOnly .sapMITBTab {
	padding-right: 0.25rem;
}

.sapMITBItem {
	display: inline-block;
	color: @sapHCStandardFG;
	vertical-align: top;
	text-align: center;
}

.sapMITBDisabled {
	opacity: 0.5;
}

/* Tab Filter Item */

.sapMITBFilter {
	padding: 0 0.25rem;
}

.sapMITBTextOnly .sapMITBFilter {
	padding: 0;
	margin: 0 1rem;
}

.sap-phone .sapMITBTextOnly .sapMITBFilter {
	padding: 0 0.75rem;
}

.sap-phone .sapMITBFilter {
	padding: 0 0.125rem;
}

.sapMITBNoText .sapMITBFilter > .sapMITBTab {
	width: 3rem;
	height: 3rem;
	padding: 0 1rem;
}

.sap-phone .sapMITBFilter:last-child,
.sap-tablet .sapMITBFilter:last-child,
html[data-sap-ui-os=win8] .sapMITBFilter:last-child,
.sap-phone .sapMITBNoText .sapMITBFilter:last-child,
.sap-tablet .sapMITBNoText .sapMITBFilter:last-child,
html[data-sap-ui-os=win8] .sapMITBNoText .sapMITBFilter:last-child {
	padding-right: 1rem;
}

.sapMITBNoText .sapMITBFilter:first-child .sapMITBTab {
	padding-left: 0;
}

.sapMITBFilter:first-child {
	padding-left: 0;
}

.sapMITBHorizontal.sapMITBFilter:first-child > .sapMITBTab {
	padding-left: 0;
}

.sapMITBHorizontal.sapMITBFilter:first-child > .sapMITBText  {
	padding-left: 3.25rem;
}

.sapMITBNoText .sapMITBFilter,
.sap-phone .sapMITBNoText .sapMITBFilter {
	padding: 0;
}

.sapMITBFilter .sapMITBText {
	position: relative;
	color: @sapHCStandardFG;
	text-shadow: none;
	padding: 0.375rem 0 0;
	width: 5rem;
	overflow: hidden;
	text-overflow: ellipsis;
}

.sapMITBHorizontal.sapMITBFilter .sapMITBText {
	padding: 0.625rem 0 0;
}

.sapMITBVertical {
	height: 5rem;
}

.sapMITBTextOnly > .sapMITBVertical {
	height: 3.375rem;
}

.sap-phone .sapMITBTextOnly > .sapMITBVertical {
	height: 2.9375rem;
}

.sapMITBNoText > .sapMITBVertical {
	height: 4rem;
}

.sapMITBHorizontalWrapper {
	display: inline-block;
	width: auto;
	max-width: 7.5rem;
	overflow: hidden;
	text-overflow: ellipsis;
	height: 3rem;
	left: -1rem;
	vertical-align: top;
}

.sapMITBHorizontal.sapMITBFilter > .sapMITBHorizontalWrapper > .sapMITBText {
	width: auto;
	text-align: left;
	max-width: 7.5rem;
	display: block;
	padding-left: 0.25rem;
	top: 0.3125rem;
}

.sapMITBHorizontal.sapMITBFilter {
	height: 4rem;
}

.sapMITBHorizontal.sapMITBFilter > .sapMITBHorizontalWrapper > .sapMITBCount {
	max-width: 7.5rem;
	display:  block;
	position: relative;
	text-align: left;
	padding-left: 0.25rem;
	top: 0.4375rem;
}

.sapMITBHorizontal.sapMITBFilter > .sapMITBTab {
	width: 3rem;
	height: 3rem;
	padding: 0;
	display: inline-block;
	vertical-align: top;
}

.sapMITBTextOnly .sapMITBText {
	padding: 0.25rem 0.5rem 0.5rem 0.5rem;
	margin: -0.25rem -0.5rem -0.5rem -0.5rem;
	font-size: @sapMFontMediumSize;
	text-align: left;
	width: auto;
}

.sap-phone .sapMITBTextOnly .sapMITBText {
	font-size: @sapMFontSmallSize;
}

.sapMITBTextOnly .sapMITBFilterDefault > .sapMITBText {
	color: @sapHCStandardFG;
	text-shadow: none;
}

.sapMITBTextOnly .sapMITBFilterDefault.sapMITBSelected > .sapMITBText {
	color: @sapHCStandardFG;
}

.sapMITBTextOnly .sapMITBFilterNeutral > .sapMITBText {
	color: @sapHCStandardFG;
}

.sapMITBTextOnly .sapMITBFilterPositive > .sapMITBText {
	color: @sapHCStandardFG;
}

.sapMITBTextOnly .sapMITBFilterNegative > .sapMITBText {
	color: @sapHCStandardFG;
}

.sapMITBTextOnly .sapMITBFilterCritical > .sapMITBText {
	color: @sapHCStandardFG;
}

.sapMITBFilter .sapMITBCount {
	position: absolute;
	color: @sapHCStandardFG;
	text-shadow: none;
	max-width: 2rem;
	overflow: hidden;
	text-overflow: ellipsis;
}

.sapMITBTextOnly .sapMITBFilter .sapMITBCount {
	position: relative;
	color: @sapHCStandardFG;
	font-size: @sapMFontMediumSize;
	max-width: none;
	overflow: hidden;
	text-overflow: ellipsis;
}

.sap-phone .sapMITBTextOnly .sapMITBFilter .sapMITBCount {
	font-size: @sapMFontMediumSize;
}

.sapMITBFilterIcon {
	display: inline-block;
	line-height: 2.75rem;
	overflow: hidden;
	font-size: 1.5rem;
	background: @sapHCStandardBG;
	-moz-border-radius: 3rem;
	/* some native browsers like Samsung Galaxy S4 with Android 4.2 does not support the "border-
	radius" shorthand property but does support the long-hand properties for each corner like
	"border-top-left-radius" */
	border-top-left-radius: 3rem;
	border-top-right-radius: 3rem;
	border-bottom-right-radius: 3rem;
	border-bottom-left-radius: 3rem;
	border: 1px solid @sapHCStandardFG;
	width: 3rem;
	height: 3rem;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-moz-user-select: none;
	-ms-user-select: none;
	-webkit-user-select: none;
}

.sapMITBFilterNoIcon {
	display: inline-block;
	width: 3rem;
	height: 3rem;
	vertical-align: middle;
}

.sapMITBFilterDefault {
	color: @sapHCStandardFG;
}

.sapMITBFilterNeutral {
	color: @sapHCStandardFG;
	border-color: @sapHCStandardFG;
}

.sapMITBFilterPositive {
	color: @sapHCStandardFG;
	border-color: @sapHCStandardFG;
}

.sapMITBFilterNegative {
	color: @sapHCStandardFG;
	border-color: @sapHCStandardFG;
}

.sapMITBFilterCritical {
	color: @sapHCStandardFG;
	border-color: @sapHCStandardFG;
}

.sapMITBCount {
	color: @sapHCStandardFG;
}

.sapMITBSelected .sapMITBFilterDefault {
	background: @sapHCHighlightAltBG;
	color: @sapHCStandardFG;
}

.sapMITBSelected .sapMITBFilterNeutral {
	background: @sapHCHighlightAltBG;
	color: @sapHCStandardFG;
}

.sapMITBSelected .sapMITBFilterPositive {
	background: @sapHCHighlightAltBG;
	color: @sapHCStandardFG;
}

.sapMITBSelected .sapMITBFilterNegative {
	background: @sapHCHighlightAltBG;
	color: @sapHCStandardFG;
}

.sapMITBSelected .sapMITBFilterCritical {
	background: @sapHCHighlightAltBG;
	color: @sapHCStandardFG;
}

/* Tab Filter Show All Item */

.sapMITBAll .sapMITBTab {
	display: inline-block;
	width: auto;
	line-height: 3rem;
	height: 3rem;
}

.sapMITBAll {
	padding-left: 0.5rem;
	padding-right: 1.25rem;
}

.sap-phone .sapMITBAll {
	padding-left: 0;
	padding-right: 0.25rem;
}

.sapMITBAll .sapMITBCount {
	color: @sapHCStandardFG;
	vertical-align: middle;
	font-size: 1.5rem;
	padding: 0 0.5rem;
	display: inline-block;
	width: auto;
	text-shadow: none;
}

.sap-phone .sapMITBAll > .sapMITBTab > .sapMITBCount {
	padding: 0 0.25rem;
}

.sapMITBAll:first-Child > .sapMITBTab > .sapMITBCount {
	padding-left: 0;
}

.sapMITBAll:first-Child {
	padding-left: 0;
}

.sapMITBAll .sapMITBText {
	color: @sapHCStandardFG;
	vertical-align: middle;
	display: inline-block;
	width: auto;
	white-space: normal;
	max-width: 4rem;
	text-align: left;
	max-height: 3rem;
	overflow: hidden;
	text-overflow: ellipsis;
	text-shadow: none;
}

.sap-phone .sapMITBAll .sapMITBText {
	padding-right: 0.5rem;
}

/* Tab Separator Item */
.sapMITBSep {
	width: 1.5rem;
}

.sapMITBSepLine {
	width: 0;
	border: 1px solid @sapHCStandardFG;
	height: 3rem;
	margin: 0 0.25rem;
}

.sap-phone .sapMITBSepLine {
	margin: 0 0.125rem;
}

.sapMITBSepIcon {
	font-size: 1rem;
	color: @sapHCStandardFG;
	line-height: 3rem;
	height: 3rem;
	padding: 0 0.25rem;
}

.sapMITBHorizontal + .sapMITBSep {
	width: auto;
}

.sapMITBHorizontal + .sapMITBSep > .sapMITBSepIcon {
	padding: 0 0.5rem;
}

.sapMITBArrowScroll {
	font-size: 1rem;
	position: absolute;
	top: 1px;
	color: @sapHCStandardFG;
	cursor: pointer;
}

.sap-desktop .sapMITBArrowScroll:hover,
.sap-desktop .sapMITBArrowScroll:active {
	color: @sapHCStandardFG;
}

.sap-phone .sapMITBArrowScroll,
.sap-tablet .sapMITBArrowScroll,
html[data-sap-ui-os=win8] .sapMITBArrowScroll {
	top: 1rem;
}

.sapMITBArrowScrollLeft {
	left: 0.25rem;
	padding: 1rem 0.4rem;
}

.sapMITBArrowScrollRight {
	right: 0.25rem;
	padding: 1rem 0.4rem;
}

.sapMITBArrowScrollLeftTextOnly {
	left: 0.25rem;
	padding: 1.3rem 0.4rem 0.7rem;
}

.sapMITBArrowScrollRightTextOnly {
	right: 0.25rem;
	padding: 1.3rem 0.4rem 0.7rem;
}

.sap-phone .sapMITBArrowScrollLeft {
	left: 0.25rem;
	padding: 1rem 0;
}

.sap-phone .sapMITBArrowScrollRight {
	right: 0.25rem;
	padding: 1rem 0;
}

.sap-phone .sapMITBArrowScrollLeftTextOnly {
	left: 0.25rem;
	padding: 1.25rem 0 0.75rem;
}

.sap-phone .sapMITBArrowScrollRightTextOnly {
	right: 0.25rem;
	padding: 1.25rem 0 0.75rem;
}

.sapMITBNotScrollable > .sapMITBArrowScroll {
	visibility: hidden;
}

.sapMITBScrollable.sapMITBNoScrollBack > .sapMITBArrowScrollLeft,
.sapMITBScrollable.sapMITBNoScrollBack > .sapMITBArrowScrollLeftTextOnly,
.sapMITBScrollable.sapMITBNoScrollForward > .sapMITBArrowScrollRight,
.sapMITBScrollable.sapMITBNoScrollForward > .sapMITBArrowScrollRightTextOnly {
	visibility: hidden;
}

.sapMITBFilter:focus,
.sapMITBArrowScroll:focus,
.sapMITBSep:focus,
.sapMITBSepIcon:focus,
.sapMITBHead:focus,
.sapMITBText:focus,
.sapMITBTextOnly .sapMITBText:focus,
.sapMITBFilterIcon:focus,
.sapMITBAll:focus {
	outline: none;
}

/* Custom focus outline */
.sap-desktop .sapMITBFilterIcon:focus,
.sap-desktop .sapMITBTextOnly .sapMITBText:focus,
.sap-desktop .sapMITBAll:focus {
	outline: 0.125rem dotted @sapHCStandardFG;
}

/* HCB Additional Styles */

.sapMITBTextOnly .sapMITBContentArrow {
	border-bottom-width: 0.375rem;
}

.sapMITBFilterPositive .sapMITBText:before,
.sapMITBFilterNegative .sapMITBText:before,
.sapMITBFilterCritical .sapMITBText:before,
.sapMITBVertical.sapMITBFilterPositive > .sapMITBTab:after,
.sapMITBVertical.sapMITBFilterNegative > .sapMITBTab:after,
.sapMITBVertical.sapMITBFilterCritical > .sapMITBTab:after {
	speak: none;
	margin-right: 0.5rem;
	font-size: 0.75rem;
	font-family: 'SAP-icons';
	-webkit-font-smoothing: antialiased;
}

.sapMITBHorizontal.sapMITBFilterPositive .sapMITBText:before,
.sapMITBTextOnly .sapMITBFilterPositive .sapMITBText:before,
.sapMITBVertical.sapMITBFilterPositive > .sapMITBTab:after {
	content: "\e1ab";
	color: @sapHCPositive;
}

.sapMITBHorizontal.sapMITBFilterNegative .sapMITBText:before,
.sapMITBTextOnly .sapMITBFilterNegative .sapMITBText:before,
.sapMITBVertical.sapMITBFilterNegative > .sapMITBTab:after {
	content: "\e1ac";
	color: @sapHCNegative;
}

.sapMITBHorizontal.sapMITBFilterCritical .sapMITBText:before,
.sapMITBTextOnly .sapMITBFilterCritical .sapMITBText:before,
.sapMITBVertical.sapMITBFilterCritical > .sapMITBTab:after {
	content: "\e1ae";
	color: @sapHCCritical;
}

.sapMITBVertical.sapMITBFilterPositive > .sapMITBTab:after,
.sapMITBVertical.sapMITBFilterNegative > .sapMITBTab:after,
.sapMITBVertical.sapMITBFilterCritical > .sapMITBTab:after {
	margin-right: -1rem;
}

.sapMITBTextOnly .sapMITBTab:after {
	display: none;
}

.sapMITBTextOnly .sapMITBFilterPositive .sapMITBCount,
.sapMITBTextOnly .sapMITBFilterNegative .sapMITBCount,
.sapMITBTextOnly .sapMITBFilterCritical .sapMITBCount {
	margin-left: 1.25rem;
}

.sapMITBHorizontal.sapMITBFilterPositive .sapMITBText:before,
.sapMITBHorizontal.sapMITBFilterNegative .sapMITBText:before,
.sapMITBHorizontal.sapMITBFilterCritical .sapMITBText:before {
	margin-right: 0.25rem;
}

error: pathspec 'src/sap.m/src/sap/m/themes/sap_hcb/IconTabBar.less' did not match any file(s) known to git


Change color theme.

Change color theme.

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/hjiang/1byte.io.git/'


cleanup

cleanup

fatal: unable to access 'https://github.com/aoimedia/uikit.git/': The requested URL returned error: 403


Add quotation card styling

Add quotation card styling

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/hevnly/asset-bazaar.git/'


show a count of contexts and projects

show a count of contexts and projects

.contexts-count {
    float: left;
    width: 50%;
    height: 34px;
    line-height: 34px;
    font-weight: bold;
}

.projects-count {
    float: right;
    width: 50%;
    display: block;
    text-align: right;
    height: 34px;
    line-height: 34px;
    font-weight: bold;

}

error: pathspec 'app/styles/views/inbox.less' did not match any file(s) known to git


Fix css

Fix css

@import "variables";

.card-wrapper {
  margin: 0px 4px 0px 0px;
  vertical-align: middle;
}

.card-frame {
  position: relative;
}

.card {
  position: relative;
  border-radius: 4px;
  box-shadow: 0 0 12px rgba(0,0,0,0.4), inset 0 0 0 1px rgba(255,255,255,0.1);
  overflow: hidden;
  z-index: @layer-cards;

  &.vertical {
    height: @card-height;
    width: @card-width;

    &.honor {
      height: @card-height-honor;

      &.attachment {
        height: @card-height;
        width: @card-width;
      }
    }
  }

  &.horizontal {
    height: @card-width;
    width: @card-height;

    &.honor {
      width: @card-height-honor;
    }

  }

  &.selectable {
    box-shadow: 0 0 10px 1px fadeout(lighten(@brand-primary, 60%), 10%);
  }

  &.unselectable {
    filter: grayscale(100%) brightness(60%);
  }

  &.in-danger {
    box-shadow: 0 0 1px 2px red;
  }

  &.saved {
    box-shadow: 0 0 1px 2px green;
  }

  &.selected {
    box-shadow: 0 0 1px 4px @brand-primary;
  }

  &.new {
    box-shadow: 0 0 1px 2px @brand-info;
  }

  &.controlled {
    box-shadow: 0 0 1px 2px @brand-warning;
  }

  &.challenge {
    box-shadow: 0 0 1px 2px @brand-danger;
  }

  &.stealth {
    box-shadow: 0 0 1px 2px #c14e15;
  }
}

.card-image {
  left: 0;
  position: absolute;
  top: 0;

  &.vertical {
    height: @card-height;
    width: @card-width;
  }

  &.horizontal {
    height: @card-width;
    width: @card-height;
  }

  &.bowed {
    left: 9px;
    top: -10px;
    transform: rotate(90deg);

    &.honor {
      left: 53px;
    }
  }
}

honor .card-image {
  left: 53px;;
  position: absolute;
  top: 0;

  &.vertical {
    height: @card-height;
    width: @card-width;
  }

  &.horizontal {
    height: @card-width;
    width: @card-height;
  }

  &.bowed {
    left: 9px;
    top: -10px;
    transform: rotate(90deg);

    &.honor {
      left: 53px;
    }
  }
}

.honored {
  position: absolute;
  width: @card-width;
  top: @card-height;
  left: 0px;

  &.bowed {
    left: -10px;
    top: 11px;
    transform: rotate(90deg);
  }
}

.dishonored {
  position: absolute;
  width: @card-width;
  top: @card-height;
  left: 0px;

  &.bowed {
    left: @card-height-honor;
    top: -10px;
    transform: rotate(90deg);
  }
}

.card-order {
  background: rgba(0, 0, 0, 0.8);
  border: 1px solid rgba(0, 0, 0, 0.9);
  border-radius: 4px;
  color: white;
  font-size: 16px;
  font-weight: bold;
  height: 26px;
  left: 50%;
  line-height: 24px;
  margin: 0 0 0 -12px;
  position: absolute;
  text-align: center;
  top: -28px;
  width: 24px;
  z-index: @layer-card-menu;
}

.card-name {
  font-size: 10px;
  line-height: 14px;
}

.card-large {
  width: 220px;
  height: 307px;
  position: absolute;
  top: 0;
  right: 0;
  margin-right: 5px;
  margin-top: 5px;
}

.card-large-horizontal {
  width: 307px;
  height: 220px;
  position: relative;
  margin-right: 5px;
  margin-top: 5px;
}

.card-zoomed {
  width: 100%;
  height: 100%;
}

.card-zoomed > img {
  position: absolute;
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
  border-radius: 12px;
}

.attachment {
  margin-top: -(@card-height);

  &.honor {
    margin-top: -(@card-height-honor);
  }

}

.generate-attachments(@n, @i: 1) when (@i =< @n) {
  .attachment-@{i} {
    margin-left: -(@attachment-offset)*@i;
    z-index: @layer-cards - @i;
  }
  .attachment-@{i}.horizontal {
    margin-left: -(@attachment-offset)*@i;
    margin-top: -(@card-height)-(@attachment-offset);
    z-index: @layer-cards - @i;
  }
  .generate-attachments(@n, (@i + 1));
}

.generate-attachments(5, 1);

.card-dupe {
  margin-bottom: @attachment-offset;
  margin-top: -(@attachment-offset + @card-height);
}

.generate-card-dupes(@n, @i: 1) when (@i =< @n) {
  .card-dupe-@{i} {
    z-index: @layer-cards - @i;
  }
  .generate-card-dupes(@n, (@i + 1));
}
.generate-card-dupes(5, 1);

.card-type-faction.horizontal {
    margin: 10px 0 0 -10px;
}

.counters {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  justify-content: center;
  display: flex;
  align-content: center;
  align-items: center;
  flex-wrap: wrap;
  z-index: @layer-cards + 1;
}

.card.vertical .counters {
  flex-direction: column;

  &.many-counters {
    flex-direction: row;
  }
}

.card.horizontal .counters {
  flex-direction: row;

  &.many-counters {
    flex-direction: column;
  }
}

.counter {
  padding: 0;
  font-size: 12px;
  width: 24px;
  height: 24px;
  line-height: 24px;
  text-align: center;
  margin: 2px;
  text-shadow: 1px 1px 2px #000;
  border-radius: 4px;
  color: white;

  &.intrigue {
    span {
      display: none;
    }

    font-family: 'thronesdb';

    &:before {
      content: "\e602";
      color: @intrigue-icon-color;
    }

    background-color: rgba(0, 0, 0, 0.85);
  }

  &.military {
    span {
      display: none;
    }

    font-family: 'thronesdb';

    &:before {
      content: "\e605";
      color: @military-icon-color;
    }

    background-color: rgba(0, 0, 0, 0.85);
  }

  &.power {
    span {
      display: none;
    }

    font-family: 'thronesdb';

    &:before {
      content: "\e607";
      color: @power-icon-color;
    }

    background-color: rgba(0, 0, 0, 0.85);
  }

  &.fade-out {
    opacity: 0.4;
  }

  &.cancel {
    position: relative;

    &:after {
      border-bottom: 0.17em solid @brand-danger;
      content: "";
      left: 0;
      margin-top: calc(0.17em / 2 * -1);
      position: absolute;
      right: 0;
      top: 50%;
    }
  }
}

.dupe {
  background-color: @dupe-color;
}

.attachment-dupe {
  background-color: fade(@dupe-color, 50%);
}

.card-power {
  background-color: @power-color;
}

.attachment-power {
  background-color: fade(@power-color, 50%);
}

.strength {
  background-color: @strength-color;
}

.stand {
  background-color: rgba(128,128,128,0.85);
}

.poison {
  background-color: rgba(43,43, 0, 0.85);
}

.gold {
    background-color: rgba(255, 215, 0, 0.85);
}

.valarmorghulis {
  background-color: rgba(192, 192, 192, 0.85);
}

.betrayal {
  background-color: rgba(153, 77, 0, 0.85);
}

.vengeance {
  background-color: rgba(87, 17, 124, 0.85);
}

.ear {
  background-color: rgba(162, 255, 81, 0.85);
}

.venom {
  background-color: @venom-color;
}

.attachment-venom {
  background-color: fade(@venom-color, 50%);
}

.plot-selected {
  box-shadow: 0 0 1px 2px @brand-danger;
}

.province-attachment {
  margin-top: @attachment-offset - @card-height;
}

.generate-province-attachment(@n, @i: 1) when (@i =< @n) {
  .province-attachment-@{i} {
    z-index: @layer-cards - @i;
  }
  .generate-province-attachment(@n, (@i + 1));
}

.generate-province-attachment(5, 1);

@import "variables";

.card-wrapper {
  margin: 0px 4px 0px 0px;
  vertical-align: middle;
}

.card-frame {
  position: relative;
}

.card {
  position: relative;
  border-radius: 4px;
  box-shadow: 0 0 12px rgba(0,0,0,0.4), inset 0 0 0 1px rgba(255,255,255,0.1);
  overflow: hidden;
  z-index: @layer-cards;

  &.vertical {
    height: @card-height;
    width: @card-width;

    &.honor {
      height: @card-height-honor;

      &.attachment {
        height: @card-height;
        width: @card-width;
      }
    }
  }

  &.horizontal {
    height: @card-width;
    width: @card-height;

    &.honor {
      width: @card-height-honor;
    }

  }

  &.selectable {
    box-shadow: 0 0 10px 1px fadeout(lighten(@brand-primary, 60%), 10%);
  }

  &.unselectable {
    filter: grayscale(100%) brightness(60%);
  }

  &.in-danger {
    box-shadow: 0 0 1px 2px red;
  }

  &.saved {
    box-shadow: 0 0 1px 2px green;
  }

  &.selected {
    box-shadow: 0 0 1px 4px @brand-primary;
  }

  &.new {
    box-shadow: 0 0 1px 2px @brand-info;
  }

  &.controlled {
    box-shadow: 0 0 1px 2px @brand-warning;
  }

  &.challenge {
    box-shadow: 0 0 1px 2px @brand-danger;
  }

  &.stealth {
    box-shadow: 0 0 1px 2px #c14e15;
  }
}

.card-image {
  left: 0;
  position: absolute;
  top: 0;

  &.vertical {
    height: @card-height;
    width: @card-width;
  }

  &.horizontal {
    height: @card-width;
    width: @card-height;
  }

  &.bowed {
    left: 9px;
    top: -10px;
    transform: rotate(90deg);

    &.honor {
      left: 53px;
    }
  }
}

honor .card-image {
  left: left: 53px;;
  position: absolute;
  top: 0;

  &.vertical {
    height: @card-height;
    width: @card-width;
  }

  &.horizontal {
    height: @card-width;
    width: @card-height;
  }

  &.bowed {
    left: 9px;
    top: -10px;
    transform: rotate(90deg);

    &.honor {
      left: 53px;
    }
  }
}

.honored {
  position: absolute;
  width: @card-width;
  top: @card-height;
  left: 0px;

  &.bowed {
    left: -10px;
    top: 11px;
    transform: rotate(90deg);
  }
}

.dishonored {
  position: absolute;
  width: @card-width;
  top: @card-height;
  left: 0px;

  &.bowed {
    left: @card-height-honor;
    top: -10px;
    transform: rotate(90deg);
  }
}

.card-order {
  background: rgba(0, 0, 0, 0.8);
  border: 1px solid rgba(0, 0, 0, 0.9);
  border-radius: 4px;
  color: white;
  font-size: 16px;
  font-weight: bold;
  height: 26px;
  left: 50%;
  line-height: 24px;
  margin: 0 0 0 -12px;
  position: absolute;
  text-align: center;
  top: -28px;
  width: 24px;
  z-index: @layer-card-menu;
}

.card-name {
  font-size: 10px;
  line-height: 14px;
}

.card-large {
  width: 220px;
  height: 307px;
  position: absolute;
  top: 0;
  right: 0;
  margin-right: 5px;
  margin-top: 5px;
}

.card-large-horizontal {
  width: 307px;
  height: 220px;
  position: relative;
  margin-right: 5px;
  margin-top: 5px;
}

.card-zoomed {
  width: 100%;
  height: 100%;
}

.card-zoomed > img {
  position: absolute;
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
  border-radius: 12px;
}

.attachment {
  margin-top: -(@card-height);

  &.honor {
    margin-top: -(@card-height-honor);
  }

}

.generate-attachments(@n, @i: 1) when (@i =< @n) {
  .attachment-@{i} {
    margin-left: -(@attachment-offset)*@i;
    z-index: @layer-cards - @i;
  }
  .attachment-@{i}.horizontal {
    margin-left: -(@attachment-offset)*@i;
    margin-top: -(@card-height)-(@attachment-offset);
    z-index: @layer-cards - @i;
  }
  .generate-attachments(@n, (@i + 1));
}

.generate-attachments(5, 1);

.card-dupe {
  margin-bottom: @attachment-offset;
  margin-top: -(@attachment-offset + @card-height);
}

.generate-card-dupes(@n, @i: 1) when (@i =< @n) {
  .card-dupe-@{i} {
    z-index: @layer-cards - @i;
  }
  .generate-card-dupes(@n, (@i + 1));
}
.generate-card-dupes(5, 1);

.card-type-faction.horizontal {
    margin: 10px 0 0 -10px;
}

.counters {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  justify-content: center;
  display: flex;
  align-content: center;
  align-items: center;
  flex-wrap: wrap;
  z-index: @layer-cards + 1;
}

.card.vertical .counters {
  flex-direction: column;

  &.many-counters {
    flex-direction: row;
  }
}

.card.horizontal .counters {
  flex-direction: row;

  &.many-counters {
    flex-direction: column;
  }
}

.counter {
  padding: 0;
  font-size: 12px;
  width: 24px;
  height: 24px;
  line-height: 24px;
  text-align: center;
  margin: 2px;
  text-shadow: 1px 1px 2px #000;
  border-radius: 4px;
  color: white;

  &.intrigue {
    span {
      display: none;
    }

    font-family: 'thronesdb';

    &:before {
      content: "\e602";
      color: @intrigue-icon-color;
    }

    background-color: rgba(0, 0, 0, 0.85);
  }

  &.military {
    span {
      display: none;
    }

    font-family: 'thronesdb';

    &:before {
      content: "\e605";
      color: @military-icon-color;
    }

    background-color: rgba(0, 0, 0, 0.85);
  }

  &.power {
    span {
      display: none;
    }

    font-family: 'thronesdb';

    &:before {
      content: "\e607";
      color: @power-icon-color;
    }

    background-color: rgba(0, 0, 0, 0.85);
  }

  &.fade-out {
    opacity: 0.4;
  }

  &.cancel {
    position: relative;

    &:after {
      border-bottom: 0.17em solid @brand-danger;
      content: "";
      left: 0;
      margin-top: calc(0.17em / 2 * -1);
      position: absolute;
      right: 0;
      top: 50%;
    }
  }
}

.dupe {
  background-color: @dupe-color;
}

.attachment-dupe {
  background-color: fade(@dupe-color, 50%);
}

.card-power {
  background-color: @power-color;
}

.attachment-power {
  background-color: fade(@power-color, 50%);
}

.strength {
  background-color: @strength-color;
}

.stand {
  background-color: rgba(128,128,128,0.85);
}

.poison {
  background-color: rgba(43,43, 0, 0.85);
}

.gold {
    background-color: rgba(255, 215, 0, 0.85);
}

.valarmorghulis {
  background-color: rgba(192, 192, 192, 0.85);
}

.betrayal {
  background-color: rgba(153, 77, 0, 0.85);
}

.vengeance {
  background-color: rgba(87, 17, 124, 0.85);
}

.ear {
  background-color: rgba(162, 255, 81, 0.85);
}

.venom {
  background-color: @venom-color;
}

.attachment-venom {
  background-color: fade(@venom-color, 50%);
}

.plot-selected {
  box-shadow: 0 0 1px 2px @brand-danger;
}

.province-attachment {
  margin-top: @attachment-offset - @card-height;
}

.generate-province-attachment(@n, @i: 1) when (@i =< @n) {
  .province-attachment-@{i} {
    z-index: @layer-cards - @i;
  }
  .generate-province-attachment(@n, (@i + 1));
}

.generate-province-attachment(5, 1);


no message

no message

fatal: unable to access 'https://github.com/darkmuzo/ararum.git/': The requested URL returned error: 403


Optimized layout

Optimized layout

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/ulrichson/lehner-photography.git/'


Proper LESS

Proper LESS

fatal: unable to access 'https://github.com/basarevych/pean-skeleton.git/': The requested URL returned error: 403


input width

input width

fatal: unable to access 'https://github.com/figaromedias/Ateliers_figaro.git/': The requested URL returned error: 403


removed my_account_less

removed my_account_less

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/Det-Kongelige-Bibliotek/rex.git/'


Demo - Result/preview style updated

Demo - Result/preview style updated

fatal: unable to access 'https://github.com/LUI-3/website.git/': The requested URL returned error: 403


Removed gradients

Removed gradients

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/brennaveen/bootstrap.git/'


add wells

add wells

/* ================== */
/* === WELLS.less === */
/* ================== */

.well {
	min-height: 20px;
	padding: 19px;
	margin-bottom: 20px;
	background-color: #f5f5f5;
	border: 1px solid #eee;
	border: 1px solid rgba(0,0,0,.05);
	.border-radius(4px);
	.box-shadow(inset 0 1px 1px rgba(0,0,0,.05));
	blockquote {
		border-color: #ddd;
		border-color: rgba(0,0,0,.15);
	}
}

// Sizes
.well-large {
	padding: 24px;
	.border-radius(6px);
}
.well-small {
	padding: 9px;
	.border-radius(3px);
}

error: pathspec 'less/wells.less' did not match any file(s) known to git


import the pygments borland style

import the pygments borland style

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/dedalozzo/pit-bootstrap.git/'


fix alignement condition rating (#1573)

fix alignement condition rating (#1573)

fatal: unable to access 'https://github.com/c2corg/v6_ui.git/': The requested URL returned error: 403


Create grid.less

Create grid.less

/*!
Tact v0.1.0
Copyright 2014 Plant The Idea Web Design. All rights reserved.
Licensed under the MIT License.
*/

.grid {
	& {
		display:block;
		width:100%;
	}

	&:before,
	&:after {
		content:' ';
		display:table;
	}
}

[data-col] {
	display:block;
	float:left;
	padding-left:@gutter;
	padding-right:@gutter;
}

.p-float-class(100,all);
.f-float-class-all(all);
.gr-float-class(1,all,5,1);

@media screen and (min-width:0.063em) {
	[data-p-xs],
	[data-f-xs],
	[data-gr-xs] {
		display:block;
		float:left;
	}

	.p-float-class(100,xs);
	.f-float-class-all(xs);
	.gr-float-class(1,xs,5,1);
}

@media screen and (min-width:35.5em) {
	[data-p-s],
	[data-f-s],
	[data-gr-s] {
		display:block;
		float:left;
	}

	.p-float-class(100,s);
	.f-float-class-all(s);
	.gr-float-class(1,s,5,1);
}

@media screen and (min-width:48em) {
	[data-p-m],
	[data-f-m],
	[data-gr-m] {
		display:block;
		float:left;
	}

	.p-float-class(100,m);
	.f-float-class-all(m);
	.gr-float-class(1,m,5,1);
}

@media screen and (min-width:64em) {
	[data-p-l],
	[data-f-l],
	[data-gr-l] {
		display:block;
		float:left;
	}

	.p-float-class(100,l);
	.f-float-class-all(l);
	.gr-float-class(1,l,5,1);
}

@media screen and (min-width:80em) {
	[data-p-xl],
	[data-f-xl],
	[data-gr-xl] {
		display:block;
		float:left;
	}

	.p-float-class(100,xl);
	.f-float-class-all(xl);
	.gr-float-class(1,xl,5,1);
}

error: pathspec 'less/grid.less' did not match any file(s) known to git


Specificity

Specificity

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/kappataumu/kappataumu.github.com.git/'


Create grayscale.less

Create grayscale.less

@import "variables.less";
@import "mixins.less";

body {
    width: 100%;
    height: 100%;
    font-family: "Lora","Helvetica Neue",Helvetica,Arial,sans-serif;
    color: white;
    background-color: black;
}

html {
    width: 100%;
    height: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0 0 35px;
    text-transform: uppercase;
    font-family: "Montserrat","Helvetica Neue",Helvetica,Arial,sans-serif;
    font-weight: 700;
    letter-spacing: 1px;
}

p {
    margin: 0 0 25px;
    font-size: 18px;
    line-height: 1.5;
    @media(min-width:768px) {
        margin: 0 0 35px;
        font-size: 20px;
        line-height: 1.6;
    }
}

a {
    color: @primary;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
    &:hover,
    &:focus {
        text-decoration: none;
        color: darken(@primary,20%);
    }
}

.light {
    font-weight: 400;
}

.navbar-custom {
    margin-bottom: 0;
    border-bottom: 1px solid fade(white, 30%);
    text-transform: uppercase;
    font-family: "Montserrat","Helvetica Neue",Helvetica,Arial,sans-serif;
    background-color: black;
    .navbar-brand {
        font-weight: 700;
        &:focus {
            outline: none;
        }
        .navbar-toggle {
            padding: 4px 6px;
            font-size: 16px;
            color: white;
            &:focus,
            &:active {
                outline: none;
            }
        }
    }
    a {
        color: white;
    }
    .nav {
        li {
            a {
                -webkit-transition: background .3s ease-in-out;
                -moz-transition: background .3s ease-in-out;
                transition: background .3s ease-in-out;
                &:hover {
                    color: fade(white, 80%);
                    outline: none;
                    background-color: transparent;
                }
                &:focus,
                &:active {
                    outline: none;
                    background-color: transparent;
                }
            }
            &.active {
                outline: none;
                a {
                    background-color: fade(white, 30%);
                    &:hover {
                        color: white;
                    }
                }
            }
        }
    }
    @media(min-width:768px) {
        padding: 20px 0;
        border-bottom: none;
        letter-spacing: 1px;
        background: transparent;
        -webkit-transition: background .5s ease-in-out,padding .5s ease-in-out;
        -moz-transition: background .5s ease-in-out,padding .5s ease-in-out;
        transition: background .5s ease-in-out,padding .5s ease-in-out;
        &.top-nav-collapse {
            padding: 0;
            background: black;
            border-bottom: 1px solid fade(white, 30%);
        }
    }
}

.intro {
    display: table;
    width: 100%;
    height: auto;
    padding: 100px 0;
    text-align: center;
    color: white;
    background: url(../img/intro-bg.jpg) no-repeat bottom center scroll;
    background-color: black;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
    -o-background-size: cover;
    .intro-body {
        display: table-cell;
        vertical-align: middle;
        .brand-heading {
            font-size: 40px;
        }
        .intro-text {
            font-size: 18px;
        }
    }
    @media(min-width:768px) {
        height: 100%;
        padding: 0;
        .intro-body {
            .brand-heading {
                font-size: 100px;
            }
            .intro-text {
                font-size: 26px;
            }
        }
    }
}

.btn-circle {
    width: 70px;
    height: 70px;
    margin-top: 15px;
    padding: 7px 16px;
    border: 2px solid white;
    border-radius: 100% !important;
    font-size: 40px;
    color: white;
    background: transparent;
    -webkit-transition: background .3s ease-in-out;
    -moz-transition: background .3s ease-in-out;
    transition: background .3s ease-in-out;
    &:hover,
    &:focus {
        outline: none;
        color: white;
        background: fade(white, 10%);
    }
    i.animated {
        -webkit-transition-property: -webkit-transform;
        -webkit-transition-duration: 1s;
        -moz-transition-property: -moz-transform;
        -moz-transition-duration: 1s;
    }
    &:hover {
        i.animated {
            -webkit-animation-name: pulse;
            -moz-animation-name: pulse;
            -webkit-animation-duration: 1.5s;
            -moz-animation-duration: 1.5s;
            -webkit-animation-iteration-count: infinite;
            -moz-animation-iteration-count: infinite;
            -webkit-animation-timing-function: linear;
            -moz-animation-timing-function: linear;
        }
    }
}

@-webkit-keyframes pulse {
    0 {
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    50% {
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@-moz-keyframes pulse {
    0 {
        -moz-transform: scale(1);
        transform: scale(1);
    }

    50% {
        -moz-transform: scale(1.2);
        transform: scale(1.2);
    }

    100% {
        -moz-transform: scale(1);
        transform: scale(1);
    }
}

.content-section {
    padding-top: 100px;
}

.download-section {
    width: 100%;
    padding: 50px 0;
    color: white;
    background: url(../img/downloads-bg.jpg) no-repeat center center scroll;
    background-color: black;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
    -o-background-size: cover;
}

#map {
    width: 100%;
    height: 200px;
    margin-top: 100px;
}

@media(min-width:767px) {
    .content-section {
        padding-top: 250px;
    }

    .download-section {
        padding: 100px 0;
    }

    #map {
        height: 400px;
        margin-top: 250px;
    }
}

.btn {
    text-transform: uppercase;
    font-family: "Montserrat","Helvetica Neue",Helvetica,Arial,sans-serif;
    font-weight: 400;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
    border-radius: 0;
}

.btn-default {
    border: 1px solid @primary;
    color: @primary;
    background-color: transparent;
    &:hover,
    &:focus {
        border: 1px solid @primary;
        outline: none;
        color: black;
        background-color: @primary;
    }
}

ul.banner-social-buttons {
    margin-top: 0;
    @media(max-width:1199px) {
        margin-top: 15px;
    }
    @media(max-width:767px) {
        li {
            display: block;
            margin-bottom: 20px;
            padding: 0;
            &:last-child {
                margin-bottom: 0;
            }
        }
    }
}

footer {
    padding: 50px 0;
    p {
        margin: 0;
    }
}

::-moz-selection {
    text-shadow: none;
    background: #fcfcfc;
    background: fade(white, 20%);
}

::selection {
    text-shadow: none;
    background: #fcfcfc;
    background: fade(white, 20%);
}

img::selection {
    background: transparent;
}

img::-moz-selection {
    background: transparent;
}

body {
    webkit-tap-highlight-color: fade(white, 20%);
}

error: pathspec 'less/grayscale.less' did not match any file(s) known to git


better recap on mobile

better recap on mobile

@import 'lib';

.recaptcha-container {
    position: relative;
}

#abuse {
    padding: 0 15px;
    form, form .simple-field {
        margin: 0;
    }
    form label[for=id_text] {
        display: none;
    }
    #recap-container {
        margin-top: 15px;
    }
    #recap-label {
        display: block;
        font-weight: normal;
        margin-bottom: 15px;
    }
    .form-footer button {
        margin-bottom: 15px;
    }
}

#recap-container {
    .border-radius(5px);
    border: 1px solid @border-blue;
    background: @white;
    margin-bottom: 10px;
    position: relative;
    padding: 10px;
    color: @text;
    p, label {
        font-weight: 300;
        font-size: 14px;
        line-height: 20px;
    }
    label:first-child {
        font-weight: bold;
        a {
            font-weight: 300;
        }
    }
    a {
        text-decoration: underline;
    }
}

#recaptcha_table {
    color: @text;
    tr {
        td {
            background: #fff;
        }
        &:nth-child(4) {
            td {
                display: none;
            }
            td:first-child {
                display: table-cell;
                width: 290px;
            }
        }
        &:nth-child(5), &:nth-child(6) {
            td {
                display: none;
            }
        }
    }
    // This will be fun if we have to resize later!
    .recaptcha_image_cell {
        #recaptcha_image, img {
            width: 278px !important;
        }
    }
    .recaptcha_input_area {
        width: auto !important;
    }
    .recaptcha_input_area #recaptcha_response_field {
        border: 1px solid @note-gray !important;
        width: 225px !important;
        position: static !important;
        height: 30px;
        font-size: 16px;
    }
    .recaptcha_input_area_text span {
        font-size: 12px;
    }
}

#recaptcha_div {
    position: relative;
    #recaptcha_table {
        width: 275px !important;
    }
}

#abuse #recaptcha_area, #abuse #recaptcha_table {
    width: auto !important;
}

#recaptcha_help {
    float: right;
    font-size: 11px;
}

#recaptcha_widget_div {
    display: none !important;
}

@import 'lib';

.recaptcha-container {
    position: relative;
}

#abuse {
    padding: 0 15px;
    form, form .simple-field {
        margin: 0;
    }
    form label[for=id_text] {
        display: none;
    }
    #recap-container {
        margin-top: 15px;
    }
    #recap-label {
        display: block;
        font-weight: normal;
        margin-bottom: 15px;
    }
    .form-footer button {
        margin-bottom: 15px;
    }
}

#recap-container {
    .border-radius(5px);
    border: 1px solid @border-blue;
    background: @white;
    margin-bottom: 10px;
    position: relative;
    padding: 10px;
    color: @text;
    p, label {
        font-weight: 300;
        font-size: 14px;
        line-height: 20px;
    }
    label:first-child {
        font-weight: bold;
        a {
            font-weight: 300;
        }
    }
    a {
        text-decoration: underline;
    }
}

#recaptcha_table {
    color: @text;
    tr {
        td {
            background: #fff;
        }
        &:nth-child(4) {
            td {
                display: none;
            }
            td:first-child {
                display: table-cell;
                width: 290px;
            }
        }
        &:nth-child(5), &:nth-child(6) {
            td {
                display: none;
            }
        }
    }
    // This will be fun if we have to resize later!
    .recaptcha_image_cell {
        #recaptcha_image, img {
            width: 278px !important;
        }
    }
    .recaptcha_input_area {
        width: auto !important;
    }
    .recaptcha_input_area #recaptcha_response_field {
        border: 1px solid @note-gray !important;
        width: 225px !important;
        position: static !important;
        height: 30px;
        font-size: 16px;
    }
    .recaptcha_input_area_text span {
        font-size: 12px;
    }
}

#recaptcha_div {
    position: relative;
}

#abuse #recaptcha_area, #abuse #recaptcha_table {
    width: auto !important;
}

#recaptcha_help {
    float: right;
    font-size: 11px;
}

#recaptcha_widget_div {
    display: none !important;
}


Fixes select height for multiple and size attributes

fatal: unable to access 'https://github.com/fjvalencian/uikit.git/': The requested URL returned error: 403


Removed `font` and `margin-bottom` property declarations from `.info-box__title` within the alternative class

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/putterschool/styleguide.git/'


Renamed wave to shimmer in stylesheet. Because why not.

@import 'constants.less';

@column-border-radius: 5px;
@activity-width: 500px;

.loading-shimmer-frames () {
  from {
    background-position-x: -100000px;
  }
  to {
    background-position-x: 100000px;
  }
}

@-webkit-keyframes loading_shimmer {.loading-shimmer-frames;}
@-moz-keyframes loading_shimmer {.loading-shimmer-frames;}
@-o-keyframes loading_shimmer {.loading-shimmer-frames;}
@keyframes loading_shimmer {.loading-shimmer-frames;}

.room-container {
  margin-left: 0;
  margin-right: 0;
}

.room-activity {
  & > h1 {
    border-bottom: solid 1px lighten(@color-grey-border, 10%);
    margin-top: 0;
    text-align: center;
    padding-bottom: 10px;
    font-size: 22px;
  }
}

.room-alert {
  padding: 5px;
  text-align: center;
  border-radius: 0;
  border-width: 0 0 1px 0;
  -moz-box-shadow: @site-box-shadow;
  -webkit-box-shadow: @site-box-shadow;
  box-shadow: @site-box-shadow;
  margin-left: -1000px;
  margin-right: -1000px;
  margin-top: -20px;

  &:empty {
    display: none;
  }
}

.fixed-column {
  padding: 0;
  height: 850px;

  #previews, #dj-list {
    overflow: auto;
    max-height: 550px;
  }

  @height_iterations: 1000px;
  @height_difference: 180px;
  @min_height: @height_difference + 100px;
  .loopingClass (@index) when (@index > @min_height) {
    @media only screen and (min-width: 768px) and (max-height: @index) {
      height: @index - @height_difference;
      #previews, #dj-list {
        max-height: @index - @height_difference - 300px;
      }
    }
    .loopingClass(@index - 50px);
  }
  .loopingClass (0) {}
  .loopingClass (@height_iterations);

  @media only screen and (max-width: 768px) {
    min-height: 400px;
    #preview {
      max-height: 200px;
    }
  }

  .column-table {
    margin: 0;
    padding: 0;
    display: table;
    width: 100%;
    height: 100%;
    background-color: @color-grey-background;
    border: solid 1px @color-grey-border;
    border-radius: @site-border-radius;
    -webkit-box-shadow: @site-box-shadow;
    box-shadow: @site-box-shadow;

    .column-table-row {
      @section-padding: 5px;
      display: table-row;

      .column-section {
        @section-header-bg: darken(@color-grey-background, 5.5%);
        position: relative;
        padding: @section-padding;
        height: 100%;
        color: darken(@color-grey-background, 60%);
        border-top: solid 1px lighten(@color-grey-border, 3%);

        &, &:before, &:after {
          @box-sizing: content-box;
          -webkit-box-sizing: @box-sizing;
          -moz-box-sizing: @box-sizing;
          box-sizing: @box-sizing;
        }

        &:empty {
          display: none;
        }

        &.section-header {
          background-color: @section-header-bg;
        }

        & > h1 {
          color: black;
          margin: -@section-padding;
          font-size: 17px;
          text-align: center;
          background-color: @section-header-bg;
          padding: 8px;
          position: relative;
          min-height: 34px;

          .button {
            position: absolute;
            right: 6px;
            top: 6px;
            padding: 2px 8px;
            color: darken(@color-grey-background, 50%);

            &:hover:not(.disabled) {
              color: darken(@color-grey-background, 70%);
            }

            &.disabled {
              color: darken(@color-grey-background, 30%);
            }
          }

          .error {
            color: darken(red, 10%);
            font-size: 12px;
            font-weight: bold;
            margin-top: 3px;
            display: none;
          }

          .faded-edge {
            @box-shadow: inset 8px 0 8px 0px @section-header-bg;
            -webkit-box-shadow: @box-shadow;
            -moz-box-shadow: @box-shadow;
            box-shadow: @box-shadow;
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            pointer-events: none;
          }

          input[type=text] {
            border: none;
            background: none;
            padding: 0;
            padding-right: 10px;
            position: absolute;
            top: 0;
            bottom: 0;
            left: 0;
            right: 0;
            width: 100%;
            outline: none;
            font-family: inherit;
            font-weight: inherit;
            text-indent: 10px;
          }
        }

        & > ul  {
          list-style: none;
          margin: -@section-padding;
          padding: 0;

          li {
            @padding: 5px;
            background-color: @color-grey-background;
            border-bottom: solid 1px lighten(@color-grey-border, 8%);
            padding: @padding;
            position: relative;
            word-break: break-word;
            margin: 0;

            &:last-child {
              border-bottom-width: 0;
            }

            .background {
              position: absolute;
              top: 0;
              bottom: 0;
              left: 0;
              right: 0;
              background-color: darken(@color-grey-background, 60%);
              opacity: 0.1;
              z-index: 0;
            }

            .foreground {
              position: relative;
              background: none;
              z-index: 1;
            }

            .error-message {
              margin: auto -@padding;
              padding: @padding;
              color: red;

              &:empty {
                display: none;
              }
            }
          }
        }
      }

      .section-empty {
        font-style: italic;
        color: darken(@color-grey-background, 40%);
        margin-top: @section-padding * 2;

        &.center {
          @height: 160px;

          text-align: center;
          position: absolute;
          top: 50%;
          width: 100%;
          padding: 10px;
          margin: -@section-padding;
          height: @height;
          margin-top: -@height/2;
          font-size: 19px;
          font-style: normal;
          font-weight: 200;
        }
      }

      &.stretch {
        height: 100%;

        .column-section {
          overflow-x: hidden;
          overflow-y: auto;

          & > ul {
            li:last-child {
              border-bottom-width: 1px;
            }
          }
        }
      }

      &:first-child {
        .column-section, h1 {
          border-top: none;
          border-top-left-radius: @site-border-radius - 1px;
          border-top-right-radius: @site-border-radius - 1px;
        }
      }

      &:last-child {
        .column-section, h1 {
          border-bottom-left-radius: @site-border-radius - 1px;
          border-bottom-right-radius: @site-border-radius - 1px;
        }
      }

      #queue-section {
        #search-results-list {
          background-color: @color-grey-background;
          margin: 0;
          position: absolute;
          left: 0;
          right: 0;
          top: 0;
          bottom: 0;
        }

        #search-results-list .section-results-placeholder {
          color: darken(@color-grey-background, 40%);
          margin: 5px;
          font-size: 13px;
        }

        #search-results-list .section-header {
          position: relative;
          min-height: 24px;
          border-bottom: none;
          background-color: darken(@color-grey-background, 3%);
          border: solid 1px lighten(@color-grey-border, 10%);

          .loading-gradient, .content {
            position: absolute;
            top: 0;
            bottom: 0;
            left: 0;
            right: 0;
          }

          .loading-gradient {
            z-index: 99;

            @background: darken(@color-grey-background, 3%);
            @background-emphasis: darken(@background, 20%);
            @background-emphasis: lighten(@color-purple, 45%);
            @background-emphasis: lighten(@background, 10%);

            @gradient: left, @background 10%, @background-emphasis 50%, @background 90%;
            background: -moz-linear-gradient(@gradient);
            background: -webkit-linear-gradient(@gradient);
            background: -o-linear-gradient(@gradient);
            background: -ms-linear-gradient(@gradient);
            background: linear-gradient(@gradient);
            background-size: 170%;

            @animation-def: loading_shimmer 800s linear 0s infinite;
            @animation-def: loading_shimmer 500s linear 0s infinite;
            -webkit-animation: @animation-def;
            -moz-animation: @animation-def;
            -o-animation: @animation-def;
            animation: @animation-def;

            opacity: 0;
            -webkit-transition: opacity 1s;
            transition: opacity 1s;

            text-align: right;
            font-size: 11px;
            padding: 3px 10px;
            color: darken(@color-grey-background, 30%);
            letter-spacing: 0.4px;
            font-weight: 300;
          }

          .content {
            font-size: 12px;
            font-weight: 400;
            padding: 3px 5px;
            z-index: 100;
          }
        }

        #search-results-list.loading .section-header {
          .loading-gradient {
            opacity: 1;
          }
        }

        #queue-list li, #search-results-list li.song {
          @height: 40px;
          @inner-height: @height - 10px;

          position: relative;
          height: @height;

          &:hover {
            .fg .controls {
              opacity: 1;
            }
          }

          .artwork {
            width: @inner-height;
            height: @inner-height;
            background-color: darken(@color-grey-background, 10%);
            background-image: url('/images/unknown_song.png');
            background-size: contain;
            display: inline-block;
            border-radius: 3px;
          }

          .fg {
            overflow: hidden;
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            display: inline-block;
            margin-left: @height;
            line-height: 18px;
            font-size: 13px;
            white-space: nowrap;

            .faded-edge {
              @box-shadow: inset -30px 0 24px -15px @color-grey-background;
              -webkit-box-shadow: @box-shadow;
              -moz-box-shadow: @box-shadow;
              box-shadow: @box-shadow;
              position: absolute;
              top: 0;
              left: 0;
              width: 100%;
              height: 100%;
              pointer-events: none;
            }

            .controls {
              @transition: opacity .06s ease-in-out;
              transition: @transition;
              -moz-transition: @transition;
              -webkit-transition: @transition;
              z-index: 10;
              opacity: 0;
              position: absolute;
              top: 0;
              right: 0;
              padding-top: 1px;
              padding-right: 3px;

              a {
                text-decoration: none;
                color: darken(@color-grey-background, 50%);

                &:hover:not(.disabled) {
                  color: darken(@color-grey-background, 70%);
                }

                &.disabled {
                  color: darken(@color-grey-background, 30%);
                }
              }
            }

            .title, .artist, .album {
              white-space: nowrap;
            }

            .title {
              display: block;
              font-weight: 300;
              color: darken(@color-grey-background, 60%);
            }

            .artist, .album {
              font-weight: 200;
              color: darken(@color-grey-background, 30%);
            }
          }

          &.playing, &.highlighted {
            background-color: @color-purple;
            @box-shadow: inset 0 0 5px 0 rgba(0,0,0,0.2);
            -webkit-box-shadow: @box-shadow;
            box-shadow: @box-shadow;

            .fg {
              .title, .artist, .album {
                color: white;
              }

              .faded-edge {
                @box-shadow: inset -30px 0 24px -15px @color-purple;
                -webkit-box-shadow: @box-shadow;
                -moz-box-shadow: @box-shadow;
                box-shadow: @box-shadow;
              }
            }
          }
        }
      }
    }
  }

  .drag-overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(255,255,255,0.9);
    @shadow: inset 0 0 40px 1px rgba(0,0,0,0.1);
    -webkit-box-shadow: @shadow;
    box-shadow: @shadow;
    pointer-events: none;
    z-index: 20;

    opacity: 0;
    @fadetime: .1s;
    transition: opacity @fadetime ease-in-out;
    -moz-transition: opacity @fadetime ease-in-out;
    -webkit-transition: opacity @fadetime ease-in-out;

    & > div {
      @height: 100px;
      @width: 200px;

      position: absolute;
      top: 50%;
      left: 50%;
      display: block;
      width: @width;
      height: @height;
      margin-top: -(@height/2);
      margin-left: -(@width/2);
      text-align: center;
      vertical-align: center;
      line-height: @height;
      font-size: 20px;
      font-weight: 200;
      color: darken(@color-grey-background, 80%);
      opacity: 0.8;
    }
  }

  &.dragging .drag-overlay {
    opacity: 1;
  }

  @media only screen and (max-width: 767px) {
    height: 400px;
    margin: 10px;
  }
}

.navbar .playback-placeholder {
  line-height: @navbar-height;
  cursor: default;
  color: #777;
}

.navbar .playback {
  @playback-height: @navbar-height;
  @timeline-height: 18px;
  @timeline-padding: 3px;
  @info-height: @playback-height - @timeline-height;
  @info-padding: @timeline-padding;

  .info {
    @inner-height: @info-height - @info-padding;
    @font-color: darken(@color-grey-background, 60%);

    height: @info-height;
    padding: @info-padding;
    font-size: 12px;
    line-height: @inner-height / 2;
    text-align: left;
    overflow: hidden;
    cursor: default;
    position: relative;

    .artwork {
      @size: @inner-height;
      width: @size;
      height: @size;
      float: left;
      background-size: contain;
      margin-right: @info-padding;
      border-radius: 3px;

      &.no-artwork {
        background-image: url('/images/unknown_song.png');
      }
    }

    .title {
      color: @font-color;
      font-weight: bold;
    }

    .artist, .album {
      display: inline-block;
      color: lighten(@font-color, 20%);
    }

    .controls {
      text-align: right;
      position: absolute;
      top: 0;
      bottom: 0;
      right: 0;
      padding-right: 5px;
      padding-top: 5px;

      &:empty {
        display: none;
      }

      a {
        text-decoration: none;
        font-size: 22px;
        color: darken(@color-grey-background, 50%);

        &:hover:not(.disabled) {
          color: darken(@color-grey-background, 70%);
        }

        &.disabled {
          color: darken(@color-grey-background, 30%);
        }
      }

      .btn-skip {
        font-size: 17px;
        position: relative;
        bottom: 3px;
      }
    }
  }

  .timeline {
    @inner-height: @timeline-height - (@timeline-padding * 2);
    height: @inner-height;
    margin: @timeline-padding;
    background-color: darken(@color-grey-background, 12%);
    position: relative;
    border-radius: @site-border-radius;
    cursor: default;

    .left, .right {
      position: absolute;
      font-size: 10px;
      line-height: @inner-height;
      color: darken(@color-grey-background, 60%);
      padding-bottom: 1px;
    }

    .left {
      left: 5px;
    }

    .right {
      right: 4px;
    }

    .played-container {
      background-color: darken(@color-grey-background, 5%);
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      margin: 0 30px;
      @box-shadow: inset 0 0 5px 0 rgba(0,0,0,0.05);
      -webkit-box-shadow: @box-shadow;
      box-shadow: @box-shadow;

      .played {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        width: 0%;
        background-color: @color-purple;
        @box-shadow: inset 0 0 3px 0 rgba(0,0,0,0.4);
        -webkit-box-shadow: @box-shadow;
        box-shadow: @box-shadow;
      }
    }
  }
}

#btn-upload {
  padding: 4px;
  width: 100%;
}

#btn-begin-dj, #btn-end-dj {
  display: none;
}

@import 'constants.less';

@column-border-radius: 5px;
@activity-width: 500px;

.loading-wave-frames () {
  from {
    background-position-x: -100000px;
  }
  to {
    background-position-x: 100000px;
  }
}

@-webkit-keyframes loading_wave {.loading-wave-frames;}
@-moz-keyframes loading_wave {.loading-wave-frames;}
@-o-keyframes loading_wave {.loading-wave-frames;}
@keyframes loading_wave {.loading-wave-frames;}

.room-container {
  margin-left: 0;
  margin-right: 0;
}

.room-activity {
  & > h1 {
    border-bottom: solid 1px lighten(@color-grey-border, 10%);
    margin-top: 0;
    text-align: center;
    padding-bottom: 10px;
    font-size: 22px;
  }
}

.room-alert {
  padding: 5px;
  text-align: center;
  border-radius: 0;
  border-width: 0 0 1px 0;
  -moz-box-shadow: @site-box-shadow;
  -webkit-box-shadow: @site-box-shadow;
  box-shadow: @site-box-shadow;
  margin-left: -1000px;
  margin-right: -1000px;
  margin-top: -20px;

  &:empty {
    display: none;
  }
}

.fixed-column {
  padding: 0;
  height: 850px;

  #previews, #dj-list {
    overflow: auto;
    max-height: 550px;
  }

  @height_iterations: 1000px;
  @height_difference: 180px;
  @min_height: @height_difference + 100px;
  .loopingClass (@index) when (@index > @min_height) {
    @media only screen and (min-width: 768px) and (max-height: @index) {
      height: @index - @height_difference;
      #previews, #dj-list {
        max-height: @index - @height_difference - 300px;
      }
    }
    .loopingClass(@index - 50px);
  }
  .loopingClass (0) {}
  .loopingClass (@height_iterations);

  @media only screen and (max-width: 768px) {
    min-height: 400px;
    #preview {
      max-height: 200px;
    }
  }

  .column-table {
    margin: 0;
    padding: 0;
    display: table;
    width: 100%;
    height: 100%;
    background-color: @color-grey-background;
    border: solid 1px @color-grey-border;
    border-radius: @site-border-radius;
    -webkit-box-shadow: @site-box-shadow;
    box-shadow: @site-box-shadow;

    .column-table-row {
      @section-padding: 5px;
      display: table-row;

      .column-section {
        @section-header-bg: darken(@color-grey-background, 5.5%);
        position: relative;
        padding: @section-padding;
        height: 100%;
        color: darken(@color-grey-background, 60%);
        border-top: solid 1px lighten(@color-grey-border, 3%);

        &, &:before, &:after {
          @box-sizing: content-box;
          -webkit-box-sizing: @box-sizing;
          -moz-box-sizing: @box-sizing;
          box-sizing: @box-sizing;
        }

        &:empty {
          display: none;
        }

        &.section-header {
          background-color: @section-header-bg;
        }

        & > h1 {
          color: black;
          margin: -@section-padding;
          font-size: 17px;
          text-align: center;
          background-color: @section-header-bg;
          padding: 8px;
          position: relative;
          min-height: 34px;

          .button {
            position: absolute;
            right: 6px;
            top: 6px;
            padding: 2px 8px;
            color: darken(@color-grey-background, 50%);

            &:hover:not(.disabled) {
              color: darken(@color-grey-background, 70%);
            }

            &.disabled {
              color: darken(@color-grey-background, 30%);
            }
          }

          .error {
            color: darken(red, 10%);
            font-size: 12px;
            font-weight: bold;
            margin-top: 3px;
            display: none;
          }

          .faded-edge {
            @box-shadow: inset 8px 0 8px 0px @section-header-bg;
            -webkit-box-shadow: @box-shadow;
            -moz-box-shadow: @box-shadow;
            box-shadow: @box-shadow;
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            pointer-events: none;
          }

          input[type=text] {
            border: none;
            background: none;
            padding: 0;
            padding-right: 10px;
            position: absolute;
            top: 0;
            bottom: 0;
            left: 0;
            right: 0;
            width: 100%;
            outline: none;
            font-family: inherit;
            font-weight: inherit;
            text-indent: 10px;
          }
        }

        & > ul  {
          list-style: none;
          margin: -@section-padding;
          padding: 0;

          li {
            @padding: 5px;
            background-color: @color-grey-background;
            border-bottom: solid 1px lighten(@color-grey-border, 8%);
            padding: @padding;
            position: relative;
            word-break: break-word;
            margin: 0;

            &:last-child {
              border-bottom-width: 0;
            }

            .background {
              position: absolute;
              top: 0;
              bottom: 0;
              left: 0;
              right: 0;
              background-color: darken(@color-grey-background, 60%);
              opacity: 0.1;
              z-index: 0;
            }

            .foreground {
              position: relative;
              background: none;
              z-index: 1;
            }

            .error-message {
              margin: auto -@padding;
              padding: @padding;
              color: red;

              &:empty {
                display: none;
              }
            }
          }
        }
      }

      .section-empty {
        font-style: italic;
        color: darken(@color-grey-background, 40%);
        margin-top: @section-padding * 2;

        &.center {
          @height: 160px;

          text-align: center;
          position: absolute;
          top: 50%;
          width: 100%;
          padding: 10px;
          margin: -@section-padding;
          height: @height;
          margin-top: -@height/2;
          font-size: 19px;
          font-style: normal;
          font-weight: 200;
        }
      }

      &.stretch {
        height: 100%;

        .column-section {
          overflow-x: hidden;
          overflow-y: auto;

          & > ul {
            li:last-child {
              border-bottom-width: 1px;
            }
          }
        }
      }

      &:first-child {
        .column-section, h1 {
          border-top: none;
          border-top-left-radius: @site-border-radius - 1px;
          border-top-right-radius: @site-border-radius - 1px;
        }
      }

      &:last-child {
        .column-section, h1 {
          border-bottom-left-radius: @site-border-radius - 1px;
          border-bottom-right-radius: @site-border-radius - 1px;
        }
      }

      #queue-section {
        #search-results-list {
          background-color: @color-grey-background;
          margin: 0;
          position: absolute;
          left: 0;
          right: 0;
          top: 0;
          bottom: 0;
        }

        #search-results-list .section-results-placeholder {
          color: darken(@color-grey-background, 40%);
          margin: 5px;
          font-size: 13px;
        }

        #search-results-list .section-header {
          position: relative;
          min-height: 24px;
          border-bottom: none;
          background-color: darken(@color-grey-background, 3%);
          border: solid 1px lighten(@color-grey-border, 10%);

          .loading-gradient, .content {
            position: absolute;
            top: 0;
            bottom: 0;
            left: 0;
            right: 0;
          }

          .loading-gradient {
            z-index: 99;

            @background: darken(@color-grey-background, 3%);
            @background-emphasis: darken(@background, 20%);
            @background-emphasis: lighten(@color-purple, 45%);
            @background-emphasis: lighten(@background, 10%);

            @gradient: left, @background 0%, @background-emphasis 50%, @background 100%;
            background: -moz-linear-gradient(@gradient);
            background: -webkit-linear-gradient(@gradient);
            background: -o-linear-gradient(@gradient);
            background: -ms-linear-gradient(@gradient);
            background: linear-gradient(@gradient);
            background-size: 170%;

            @animation-def: loading_wave 800s linear 0s infinite;
            @animation-def: loading_wave 500s linear 0s infinite;
            -webkit-animation: @animation-def;
            -moz-animation: @animation-def;
            -o-animation: @animation-def;
            animation: @animation-def;

            opacity: 0;
            -webkit-transition: opacity 1s;
            transition: opacity 1s;

            text-align: right;
            font-size: 11px;
            padding: 3px 10px;
            color: darken(@color-grey-background, 30%);
            letter-spacing: 0.4px;
            font-weight: 300;
          }

          .content {
            font-size: 12px;
            font-weight: 400;
            padding: 3px 5px;
            z-index: 100;
          }
        }

        #search-results-list.loading .section-header {
          .loading-gradient {
            opacity: 1;
          }
        }

        #queue-list li, #search-results-list li.song {
          @height: 40px;
          @inner-height: @height - 10px;

          position: relative;
          height: @height;

          &:hover {
            .fg .controls {
              opacity: 1;
            }
          }

          .artwork {
            width: @inner-height;
            height: @inner-height;
            background-color: darken(@color-grey-background, 10%);
            background-image: url('/images/unknown_song.png');
            background-size: contain;
            display: inline-block;
            border-radius: 3px;
          }

          .fg {
            overflow: hidden;
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            display: inline-block;
            margin-left: @height;
            line-height: 18px;
            font-size: 13px;
            white-space: nowrap;

            .faded-edge {
              @box-shadow: inset -30px 0 24px -15px @color-grey-background;
              -webkit-box-shadow: @box-shadow;
              -moz-box-shadow: @box-shadow;
              box-shadow: @box-shadow;
              position: absolute;
              top: 0;
              left: 0;
              width: 100%;
              height: 100%;
              pointer-events: none;
            }

            .controls {
              @transition: opacity .06s ease-in-out;
              transition: @transition;
              -moz-transition: @transition;
              -webkit-transition: @transition;
              z-index: 10;
              opacity: 0;
              position: absolute;
              top: 0;
              right: 0;
              padding-top: 1px;
              padding-right: 3px;

              a {
                text-decoration: none;
                color: darken(@color-grey-background, 50%);

                &:hover:not(.disabled) {
                  color: darken(@color-grey-background, 70%);
                }

                &.disabled {
                  color: darken(@color-grey-background, 30%);
                }
              }
            }

            .title, .artist, .album {
              white-space: nowrap;
            }

            .title {
              display: block;
              font-weight: 300;
              color: darken(@color-grey-background, 60%);
            }

            .artist, .album {
              font-weight: 200;
              color: darken(@color-grey-background, 30%);
            }
          }

          &.playing, &.highlighted {
            background-color: @color-purple;
            @box-shadow: inset 0 0 5px 0 rgba(0,0,0,0.2);
            -webkit-box-shadow: @box-shadow;
            box-shadow: @box-shadow;

            .fg {
              .title, .artist, .album {
                color: white;
              }

              .faded-edge {
                @box-shadow: inset -30px 0 24px -15px @color-purple;
                -webkit-box-shadow: @box-shadow;
                -moz-box-shadow: @box-shadow;
                box-shadow: @box-shadow;
              }
            }
          }
        }
      }
    }
  }

  .drag-overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(255,255,255,0.9);
    @shadow: inset 0 0 40px 1px rgba(0,0,0,0.1);
    -webkit-box-shadow: @shadow;
    box-shadow: @shadow;
    pointer-events: none;
    z-index: 20;

    opacity: 0;
    @fadetime: .1s;
    transition: opacity @fadetime ease-in-out;
    -moz-transition: opacity @fadetime ease-in-out;
    -webkit-transition: opacity @fadetime ease-in-out;

    & > div {
      @height: 100px;
      @width: 200px;

      position: absolute;
      top: 50%;
      left: 50%;
      display: block;
      width: @width;
      height: @height;
      margin-top: -(@height/2);
      margin-left: -(@width/2);
      text-align: center;
      vertical-align: center;
      line-height: @height;
      font-size: 20px;
      font-weight: 200;
      color: darken(@color-grey-background, 80%);
      opacity: 0.8;
    }
  }

  &.dragging .drag-overlay {
    opacity: 1;
  }

  @media only screen and (max-width: 767px) {
    height: 400px;
    margin: 10px;
  }
}

.navbar .playback-placeholder {
  line-height: @navbar-height;
  cursor: default;
  color: #777;
}

.navbar .playback {
  @playback-height: @navbar-height;
  @timeline-height: 18px;
  @timeline-padding: 3px;
  @info-height: @playback-height - @timeline-height;
  @info-padding: @timeline-padding;

  .info {
    @inner-height: @info-height - @info-padding;
    @font-color: darken(@color-grey-background, 60%);

    height: @info-height;
    padding: @info-padding;
    font-size: 12px;
    line-height: @inner-height / 2;
    text-align: left;
    overflow: hidden;
    cursor: default;
    position: relative;

    .artwork {
      @size: @inner-height;
      width: @size;
      height: @size;
      float: left;
      background-size: contain;
      margin-right: @info-padding;
      border-radius: 3px;

      &.no-artwork {
        background-image: url('/images/unknown_song.png');
      }
    }

    .title {
      color: @font-color;
      font-weight: bold;
    }

    .artist, .album {
      display: inline-block;
      color: lighten(@font-color, 20%);
    }

    .controls {
      text-align: right;
      position: absolute;
      top: 0;
      bottom: 0;
      right: 0;
      padding-right: 5px;
      padding-top: 5px;

      &:empty {
        display: none;
      }

      a {
        text-decoration: none;
        font-size: 22px;
        color: darken(@color-grey-background, 50%);

        &:hover:not(.disabled) {
          color: darken(@color-grey-background, 70%);
        }

        &.disabled {
          color: darken(@color-grey-background, 30%);
        }
      }

      .btn-skip {
        font-size: 17px;
        position: relative;
        bottom: 3px;
      }
    }
  }

  .timeline {
    @inner-height: @timeline-height - (@timeline-padding * 2);
    height: @inner-height;
    margin: @timeline-padding;
    background-color: darken(@color-grey-background, 12%);
    position: relative;
    border-radius: @site-border-radius;
    cursor: default;

    .left, .right {
      position: absolute;
      font-size: 10px;
      line-height: @inner-height;
      color: darken(@color-grey-background, 60%);
      padding-bottom: 1px;
    }

    .left {
      left: 5px;
    }

    .right {
      right: 4px;
    }

    .played-container {
      background-color: darken(@color-grey-background, 5%);
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      margin: 0 30px;
      @box-shadow: inset 0 0 5px 0 rgba(0,0,0,0.05);
      -webkit-box-shadow: @box-shadow;
      box-shadow: @box-shadow;

      .played {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        width: 0%;
        background-color: @color-purple;
        @box-shadow: inset 0 0 3px 0 rgba(0,0,0,0.4);
        -webkit-box-shadow: @box-shadow;
        box-shadow: @box-shadow;
      }
    }
  }
}

#btn-upload {
  padding: 4px;
  width: 100%;
}

#btn-begin-dj, #btn-end-dj {
  display: none;
}