Skip to content
Snippets Groups Projects
base.less 66.7 KiB
Newer Older
Gabriel Engel's avatar
Gabriel Engel committed
.clearfix {
	clear: both;
	&::after {
		content: "";
		display: table;
Gabriel Engel's avatar
Gabriel Engel committed
*,
*:before,
bharathkkb's avatar
bharathkkb committed
*:after{
bharathkkb's avatar
bharathkkb committed
}
bharathkkb's avatar
bharathkkb committed
*:not(input):not(textarea),
*:not(input):not(textarea):before,
*:not(input):not(textarea):after {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-user-select: text;
	-moz-user-select: text;
	-ms-user-select: text;
	user-select: text;

:focus {
	outline: 0 !important;
	outline-color: transparent;
	outline-style: none;
}

Gabriel Engel's avatar
Gabriel Engel committed
a {
	text-decoration: none;
Gabriel Engel's avatar
Gabriel Engel committed
code {
	border-radius: 4px;
	border: 1px solid;
Gabriel Engel's avatar
Gabriel Engel committed
	display: block;
Gabriel Engel's avatar
Gabriel Engel committed
	font-size: 13px;
Gabriel Engel's avatar
Gabriel Engel committed
	font-weight: bold;
Gabriel Engel's avatar
Gabriel Engel committed
	margin: 5px 0;
Gabriel Engel's avatar
Gabriel Engel committed
	padding: 0.5em;
Gabriel Engel's avatar
Gabriel Engel committed
	vertical-align: middle;
Gabriel Engel's avatar
Gabriel Engel committed
	word-wrap: break-word;
	text-align: left;
	&.inline {
		display: inline;
		padding: 0 0.5em;
		margin: 0 0.1em;
Gabriel Engel's avatar
Gabriel Engel committed
		line-height: 16px;
		font-family: monospace;
pre {
	display: inline-block;
	width: 100%;
}

	padding-left: 10px;
	position: relative;
	&:before {
		content: ' ';
		position: absolute;
.login-terms {
	max-width: 400px;
	margin: auto;

	a {
		font-weight: bold !important;
		text-decoration: underline;

		&:hover {
		}
	}
}

.upload-preview {
	.upload-preview-file {
		height: 200px;
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center center;
	}
}

.upload-preview-title {
	padding: 3px;
	border-radius: 0 0 5px 5px;
}

	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}

.copyonly {
	float: left;
	display: inline-block;
	vertical-align: baseline;
	width: 0;
	height: 0;
	font-size: 0;
	-moz-box-orient: vertical;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

Rodrigo Nascimento's avatar
Rodrigo Nascimento committed
.first-unread {
	&.first-unread-opaque {
		.body {
			&::before {
			}

			&::after {
			}
		}
	}
Rodrigo Nascimento's avatar
Rodrigo Nascimento committed
	.body {
		&::before {
			content: "";
			display: block;
			height: 1px;
			position: absolute;
			right: 0px;
			left: 20px;
			top: 0px;
			.transition(background-color, .5s, linear);
Rodrigo Nascimento's avatar
Rodrigo Nascimento committed
		}

		&::after {
			content: "unread messages";
			display: block;
			position: absolute;
			right: 0px;
			top: -4px;
Rodrigo Nascimento's avatar
Rodrigo Nascimento committed
			text-transform: uppercase;
			font-size: 8px;
			padding: 0 5px;
			.transition(color, .5s, linear);
.text-center {
	text-align: center;
}

.connection-status > .alert {
	padding: 2px;
	position: absolute;
	width: 100%;
	border-radius: 0px;
}

.alert {
	padding: 15px;
	margin-bottom: 20px;
	border: 1px solid;
	border-radius: 4px;
}

.alert-warning {
}

.full-page .hidden {
Gabriel Engel's avatar
Gabriel Engel committed
	visibility: hidden !important;
	display: none !important;
}
Gabriel Engel's avatar
Gabriel Engel committed

	display: none !important;
.small-title {
	font-size: 13px;
	text-transform: uppercase;
	margin-bottom: 5px;
	font-weight: 600;
}

.fill-all {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.scrollable {
	&:extend(.fill-all);
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
}

Gabriel Engel's avatar
Gabriel Engel committed
.rocket-form {
	max-width: 620px;
	width: 90%;
Gabriel Engel's avatar
Gabriel Engel committed

Gabriel Engel's avatar
Gabriel Engel committed
	legend {
		margin-bottom: 23px;
		position: relative;
		width: 100%;
		display: block;
Gabriel Engel's avatar
Gabriel Engel committed
		h3 {
			margin-bottom: 5px !important;
		}
Gabriel Engel's avatar
Gabriel Engel committed
		&:after {
			content: " ";
			height: 1px;
			display: block;
			position: absolute;
			width: 100%;
			bottom: -10px;
			left: 0;
		}
	}
Gabriel Engel's avatar
Gabriel Engel committed
	fieldset {
		display: block;
		margin-bottom: 40px;

		small {
			font-size: 11px;
		}
Gabriel Engel's avatar
Gabriel Engel committed
	.submit {
		margin-top: 20px;
		text-align: right;
	}

	&.request-password {
		margin: 0 auto;

		fieldset {
			margin-top: 20px;

			label {
				display: block;
				margin-top: 20px;
			}
		}

		.submit {
			text-align: center;
		}
	}
Gabriel Engel's avatar
Gabriel Engel committed
	.clearfix;
	display: block;
Rafael Caferati's avatar
Rafael Caferati committed
	margin-bottom: 12px;
Gabriel Engel's avatar
Gabriel Engel committed
	&:nth-last-child(1) {
Rafael Caferati's avatar
Rafael Caferati committed
		margin-bottom: 0;
	}
Lee Faus's avatar
Lee Faus committed
		.octicon {
Lee Faus's avatar
Lee Faus committed
			left: 10px;
		.icon-spin4 {
			position: absolute;
			right: 5px;
			top: 10px;
			font-weight: 400;
			-webkit-animation-name: spin;
			-webkit-animation-duration: 2000ms;
			-webkit-animation-iteration-count: infinite;
			-webkit-animation-timing-function: linear;
			-moz-animation-name: spin;
			-moz-animation-duration: 2000ms;
			-moz-animation-iteration-count: infinite;
			-moz-animation-timing-function: linear;
			-ms-animation-name: spin;
			-ms-animation-duration: 2000ms;
			-ms-animation-iteration-count: infinite;
			-ms-animation-timing-function: linear;

			animation-name: spin;
			animation-duration: 2000ms;
			animation-iteration-count: infinite;
			animation-timing-function: linear;
		}
		.icon-search,
		.icon-right-open-small {
Diego Sampaio's avatar
Diego Sampaio committed
			position: absolute;
			left: 2px;
			top: 10px;
		}
Lee Faus's avatar
Lee Faus committed
			padding-left: 20px;
	> label {
Rafael Caferati's avatar
Rafael Caferati committed
		display: block;
		margin-bottom: 4px;
	}
Gabriel Engel's avatar
Gabriel Engel committed
	input[type='text'] {
Rafael Caferati's avatar
Rafael Caferati committed
		display: block;
	}
Gabriel Engel's avatar
Gabriel Engel committed
	&.double-col {
		> label {
			width: 30%;
			float: left;
			margin-bottom: 0;
			padding-right: 20px;
			text-align: right;
			line-height: 15px;
			padding: 10px 20px 10px 0;
		}
Gabriel Engel's avatar
Gabriel Engel committed
		> div {
			float: left;
			width: 70%;
Gabriel Engel's avatar
Gabriel Engel committed
			label {
				display: inline-block;
				margin-right: 4px;
				line-height: 35px;
Gabriel Engel's avatar
Gabriel Engel committed
				&:nth-last-child(1) {
					margin-right: 0;
				}
Gabriel Engel's avatar
Gabriel Engel committed
				input {
					margin-right: 4px;
				}
			}
		}
	}
@-ms-keyframes spin {
	from { -ms-transform: rotate(0deg); }
	to { -ms-transform: rotate(360deg); }
}
@-moz-keyframes spin {
	from { -moz-transform: rotate(0deg); }
	to { -moz-transform: rotate(360deg); }
}
@-webkit-keyframes spin {
	from { -webkit-transform: rotate(0deg); }
	to { -webkit-transform: rotate(360deg); }
}
@keyframes spin {
	from {
		transform:rotate(0deg);
	}
	to {
		transform:rotate(360deg);
	}
}

.rocket-h2 {
	font-weight: 300;
	text-transform: uppercase;
	font-size: 20px;
	letter-spacing: -0.5px;
	margin: 18px 0;
}

Gabriel Engel's avatar
Gabriel Engel committed
.unselectable {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.rocket-h3 {
	font-weight: 300;
	text-transform: uppercase;
	font-size: 16px;
	letter-spacing: -0.5px;
	margin: 18px 0;
}

html {
ymegane's avatar
ymegane committed
	font-family: 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif, "Meiryo UI";
	font-size: 0.875rem;
	height: 100%;
	width: 100%;
	-webkit-font-smoothing: antialiased;
	line-height: 1rem;
	padding: 0;
	overflow: visible;
	position: relative;
}

// input & form styles
input,
button,
select,
textarea {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}

input:focus {
	outline: none;
	box-shadow: 0 0 0;
input[type='url'],
	-webkit-appearance: none;
	border: 1px solid;
	border-radius: 5px;
	padding: 2px 8px;
	position: relative;
	width: 100%;
	outline: none;
}

input.input-forward {
	width: 0px;
	visibility: hidden;
	.transition(width .5s ease-in);
}

input.input-forward.show {
	visibility: visible;
	.calc(width, ~'100% - 48px');
}

input.search {
	&:before {
		content: " ";
		width: 30px;
		height: 30px;
		display: block;
		position: absolute;
		top: 0;
		left: 0;
	}
}

Diego Sampaio's avatar
Diego Sampaio committed
form.inline {
	input[type='text'],
	input[type='number'],
	input[type='email'],
	input[type='url'],
Diego Sampaio's avatar
Diego Sampaio committed
	input[type='password'] {
		width: auto;
	}
}

input[disabled],
textarea[disabled] {
	background-color: #f4f4f4 !important;
}

Rodrigo Nascimento's avatar
Rodrigo Nascimento committed
.search-form {
	position: relative;
}

.form-group {
	.-btn {
		margin-left: 2px;
		&:nth-child(1) {
			margin-left: 3px;
		}
	}
	.input-group {
		padding: 2px 0;
	}
}

.form-horizontal .control-label {
	padding-top: 12px;
	font-weight: bold;
}

.-autocomplete-container {
	box-shadow: 1px 1px 0px rgba(0, 0, 0, 0.2);
	border: none;
	border-radius: 0;
	width: 100%;
	top: auto !important;
	p {
		font-size: 14px;
		padding: 8px 8px;
	}
Rafael Caferati's avatar
Rafael Caferati committed
	> i {
		visibility: hidden;
Rafael Caferati's avatar
Rafael Caferati committed
			content: " ";
			visibility: visible;
Gabriel Engel's avatar
Gabriel Engel committed
			background-image: url('/images/logo/loading.gif');
Rafael Caferati's avatar
Rafael Caferati committed
			background-position: center;
			background-repeat: no-repeat;
			display: block;
			height: 40px;
			margin-bottom: 12px;
		}
	}
}

.-autocomplete-item {
	padding: 8px 5px;
	font-size: 12px;
	cursor: pointer;
Gabriel Engel's avatar
Gabriel Engel committed
	i {
Rafael Caferati's avatar
Rafael Caferati committed
	}
	&.selected {
	}
.icon-at.status-offline {
.icon-at.status-online {
.icon-at.status-busy {
.icon-at.status-away {
// TODO -- Refactor favorite styles and logic;
.favorite-room {
}

.toggle-favorite {
}

.loading {
	background-image: url('/images/loading.gif');
	background-repeat: no-repeat;
	background-position: 50%;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	&.inline {
		position: relative;
		min-height: 40px;
		background-size: 24px 24px;
	}
}

.btn-loading {
	pointer-events: none;
	cursor: not-allowed;
	box-shadow: none !important;
	}
	i {
		display: block;
	}
	div {
		display: none;
Rafael Caferati's avatar
Rafael Caferati committed
	&:extend(.unselectable);
	padding: 9px 12px;
	font-weight: 500;
	font-size: 13px;
	margin: 4px;
	text-transform: uppercase;
	word-spacing: 0;
Rafael Caferati's avatar
Rafael Caferati committed
	box-shadow: 1px 1px 0 rgba(0, 0, 0, 0.125);
	border: none;
	line-height: 16px;
	position: relative;
Rafael Caferati's avatar
Rafael Caferati committed
	cursor: pointer;
Gabriel Engel's avatar
Gabriel Engel committed
	span {
Gabriel Engel's avatar
Gabriel Engel committed
	&:before {
		content: " ";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		opacity: 0;
		z-index: 1;
		.transition(opacity .1s ease-out);
	}
	&:hover {
		text-decoration: none;
Gabriel Engel's avatar
Gabriel Engel committed
		&:before {
Rafael Caferati's avatar
Rafael Caferati committed
	&.secondary {
Gabriel Engel's avatar
Gabriel Engel committed
		&:before {
Rafael Caferati's avatar
Rafael Caferati committed
		}
Gabriel Engel's avatar
Gabriel Engel committed
	&.delete,
Rafael Caferati's avatar
Rafael Caferati committed
	&.remove,
	&.short {
		min-width: 100px;
	}
	&.lightblue {
		min-width: 100px;
	}
Gabriel Engel's avatar
Gabriel Engel committed
	&.clean {
Rafael Caferati's avatar
Rafael Caferati committed
		font-size: 14px;
		box-shadow: 0 0 3px rgba(0, 0, 0, 0.08);
Gabriel Engel's avatar
Gabriel Engel committed
		&.primary {
Rafael Caferati's avatar
Rafael Caferati committed
			font-weight: 600;
		}
	}
Gabriel Engel's avatar
Gabriel Engel committed
	&.gitlab {
	}
	&.button-block {
		display: block;
		width: 100%;
	}
.sec-header {
	margin: 16px 0;
	text-align: center;
	> * {
		display: inline-table;
		width: auto;
		vertical-align: middle;
		line-height: 35px;
	}
	label {
		margin-left: 20px;
	}
}

.burger {
	padding: 12px;
	visibility: hidden;
	display: none;
	cursor: pointer;
	margin-left: 7px;
	position: absolute;
Gabriel Engel's avatar
Gabriel Engel committed
	top: 5px;
	left: 0px;
	.transition(transform .2s ease-out .1s);
	i {
		display: block;
		height: 2px;
		width: 20px;
		margin: 5px 0;
		opacity: .8;
		.transition(transform .2s ease-out,
		width .2s ease-out);
		&:nth-child(1) {
			//	.transition-delay(.06s);
		}
		&:nth-child(3) {
			.transition-delay(.1s);
		}
	}
Rodrigo Nascimento's avatar
Rodrigo Nascimento committed

	.unread-burger-alert {
		border-radius: 20px;
		position: absolute;
		min-width: 18px;
		height: 18px;
		line-height: 18px;
		text-align: center;
		font-weight: bold;
		font-size: 12px;
		top: 8px;
		right: 4px;
		z-index: 3;
		padding: 0px 4px;
	}
.arrow {
	display: block;
	width: 25px;
	height: 25px;
	z-index: 100;
	.calc(top,
	~"50% - 13px");
	&:before,
	&:after {
		content: " ";
		display: block;
		width: 2px;
		height: 10px;
		position: absolute;
		.calc(top,
		~"50% - 5px");
		.calc(left,
		~"50% - 5px");
	}
	&:before {
		.transform(rotate(135deg) translateX(-4px));
		.transition(transform .185s ease-out .085s,
		background .15s ease-out);
	}
	&:after {
		.transform(rotate(-135deg) translateX(-4px));
		.transition(transform .185s ease-out,
		background .15s ease-out);
	}
	&.left {
		&:before {
			.transform(rotate(45deg) translateY(-4px));
		}
		&:after {
			.transform(rotate(-45deg) translateY(4px));
		}
	}
	&.top {
		&:before {
			.transform(rotate(45deg) translateX(-2px) translateY(2px));
		}
		&:after {
			.transform(rotate(-45deg) translateX(2px) translateY(2px));
		}
	}
	&.bottom {
		&:before {
			.transform(rotate(-45deg) translateX(-2px) translateY(-2px));
		}
		&:after {
			.transform(rotate(45deg) translateX(2px) translateY(-2px));
		}
	}
	&.close {
		&:before {
			.transform(rotate(-45deg));
		}
		&:after {
			.transform(rotate(45deg));
		}
	}
	display: block;
	width: 260px;
	z-index: 901;
	right: -62px;
	top: 50px;
	background-size: 100% auto;
	cursor: pointer;
	padding: 1em 0 0.95em;
	line-height: 1.04em;
	text-decoration: none;
	font-size: 1.04em;
	box-shadow: -2px 3px 1px rgba(0, 0, 0, 0.23);
	opacity: 1;
	text-transform: uppercase;
	font-weight: 400 !important;
	.transform(rotate(45deg) translateY(0));
	.transition(background-color .2s ease-out,
	transform .45s cubic-bezier(.15,
	0,
	0,
	1) 2.15s,
	opacity .2s ease-out 2.15);
		border-top: 1px dashed;
		position: absolute;
		top: 3px;
		width: 100%;
		left: 0;
		height: 1px;
		z-index: 1;
	}
	&:after {
		content: " ";
		border-top: 1px dashed;
		position: absolute;
		bottom: 2px;
		z-index: 1;
		left: 0;
		width: 100%;
		height: 1px;
	}
Gabriel Engel's avatar
Gabriel Engel committed
	@media all and (max-width: 600px) {
		display: none;
	}
}

.mac-bar {
	display: block;
	position: relative;
	height: 24px;
	z-index: 10;
	i {
		height: 12px;
		width: 12px;
		border-radius: 50%;
		position: absolute;
		top: 6px;
		left: 10px;
		&:nth-child(2) {
			left: 26px;
.avatar {
	height: 100%;
	width: 100%;
	overflow: hidden;
	position: relative;
Gabriel Engel's avatar
Gabriel Engel committed
	border-radius: 4px;
	.emojione {
		height: 100%;
		margin: 0px;
	}
	.avatar-image {
		height: 100%;
		width: 100%;
		min-height: 20px;
		min-width: 20px;
		display: block;
		position: relative;
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center;
Gabriel Engel's avatar
Gabriel Engel committed
		border-radius: 4px;
	&[initials]:before {
		content: attr(initials);
		position: absolute;
		position: absolute;
		font-size: 22px;
		text-align: center;
		width: 100%;
		height: 100%;
		.flex-center;
		justify-content: center;
		font-family: Helvetica;
		text-transform: uppercase;
		font-weight: bold;
	}
Gabriel Engel's avatar
Gabriel Engel committed
	position: fixed;
Gabriel Engel's avatar
Gabriel Engel committed
	bottom: 0;
	left: 0;
	right: 0;
	width: auto;
	height: auto;
	opacity: 1;
	visibility: visible;
	.transition(opacity .2s ease-out);
	&.animated-hidden {
		visibility: hidden;
		opacity: 0;
	}
	> .alert {
		margin-bottom: 0;
		padding: 5px;
Rafael Caferati's avatar
Rafael Caferati committed
		position: absolute;
.account-box {
	position: relative;
	height: 100%;
	cursor: pointer;
	width: 100%;
	.info {
		position: relative;
		height: 100%;
		padding: 10px 0px 10px 18px;
		.thumb {
			float: left;
			height: 100%;
			position: relative;
			width: 42px;
			padding: 0;
			height: 42px;
Gabriel Engel's avatar
Gabriel Engel committed
				width: 8px;
				height: 8px;
Gabriel Engel's avatar
Gabriel Engel committed
				border-radius: 4px;
				top: 18px;
				left: -14px;
			.avatar-initials {
				line-height: 44px;
			}
			padding: 0 25px 0 10px;
			.flex-center;
			flex-flow: row nowrap;
			.calc(width,
			~"100% - 60px");
		}
		h4 {
			display: block;
			line-height: 18px;
			font-size: 16px;
			margin-top: 3px;
			font-weight: 400;
			overflow: hidden;
			text-overflow: ellipsis;
			position: relative;
			width: 130px;
			text-align: left;
			.transition(color .15s ease-out);
		}
		&.status-offline {
			.thumb:after {
			}
		}
		&.status-online {
			.thumb:after {
			}
		}
		&.status-away {
			.thumb:after {
			}
		}
		&.status-busy {
			.thumb:after {
			}
		}
	}
	.options {
		position: fixed;
		top: @header-min-height;
		left: 0;
		padding-top: 15px;
		width: @rooms-box-width;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		direction: rtl;
		.calc(height, ~'100% - ' @header-min-height + @footer-min-height);
		.transition(transform .3s cubic-bezier(.5, 0, .1, 1));
		&.animated-hidden {
			.transform(translateY(-100%) translateY(-50px));
		> .wrapper {
			direction: ltr;
		}
			padding-left: 38px;
			position: relative;
			&:after {
				content: " ";
				display: block;
				width: 13px;
				height: 13px;
				border: 1px solid;
				border-radius: 50%;
				z-index: 5;
				position: absolute;
				left: 18px;
				.calc(top,
				~"50% - 8px");
			}
			&.offline {
				&:after {
				}
			}
			&.online {
				&:after {
				}
			}
			&.away {
				&:after {
				}
			}
			&.busy {
				&:after {
				}
			}
		}
		span.soon {
			// content: "em breve";
			width: 100px;
			position: absolute;
			right: -30px;
			font-size: 10px;
			top: 17px;
		}
		i {
			width: 26px;
			display: inline-block;
			text-align: center;
			margin-left: 0 -1px 0 1px;
		}
		a {
			position: relative;
			display: table;
			width: 100%;
			height: 20px;
			padding: 15px 12px;
			line-height: 1;
			text-decoration: none;
			border-bottom: 1px solid;
		.icon-logout {
			&:before {
				margin-right: 0px;
			}
		}
		.icon-camera {
			&:before {
				margin-left: 1px;
			}
		}
Gabriel Engel's avatar
Gabriel Engel committed
	.info:hover {
Gabriel Engel's avatar
Gabriel Engel committed
	.hover & {
		.info h4 {
Gabriel Engel's avatar
Gabriel Engel committed
.flex-nav {
Rafael Caferati's avatar
Rafael Caferati committed
	position: fixed;
Gabriel Engel's avatar
Gabriel Engel committed
	top: 0;
Rafael Caferati's avatar
Rafael Caferati committed
	left: 0;
Gabriel Engel's avatar
Gabriel Engel committed
	height: 100%;
Rafael Caferati's avatar
Rafael Caferati committed
	z-index: 1000;
	overflow-y: auto;
	overflow-x: hidden;
Rafael Caferati's avatar
Rafael Caferati committed
	width: @rooms-box-width;
	.transition(transform .3s cubic-bezier(.5, 0, .1, 1));
	&.animated-hidden {
Rafael Caferati's avatar
Rafael Caferati committed
		.transform(translateX(-100%));
			.transform(translateX(-100%));
		}
	}
		.transition(transform .425s cubic-bezier(0,
		.8,
		.05,
		1));
		&:extend(.fill-all);
	header {
		display: table;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 110;
Diego Sampaio's avatar
Diego Sampaio committed
		cursor: pointer;
		min-height: @header-min-height;
		height: @header-min-height;
		padding-left: 15px;
		.transition-delay(.05s);
Gabriel Engel's avatar
Gabriel Engel committed
		> div {
			display: table-cell;
			vertical-align: middle;
			text-align: left;
Diego Sampaio's avatar
Diego Sampaio committed
		}
Gabriel Engel's avatar
Gabriel Engel committed
		h4 {
			line-height: 24px;
			font-size: 20px;
			margin-top: 2px;
Rafael Caferati's avatar
Rafael Caferati committed
			font-weight: 300;
			overflow: hidden;
			text-overflow: ellipsis;
			position: relative;
		}
Rafael Caferati's avatar
Rafael Caferati committed
			line-height: 18px;
			margin-top: 4px;
			font-weight: 400;
			font-size: 13px;
		}
	}
Gabriel Engel's avatar
Gabriel Engel committed
	footer {
		display: table;
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		padding: 0 10px;
		z-index: 120;
		text-align: left;
Diego Sampaio's avatar
Diego Sampaio committed
		height: @footer-min-height;
		.transition-delay(.22s);
Gabriel Engel's avatar
Gabriel Engel committed
		> div {
			display: table-cell;
			vertical-align: middle;
			text-align: left;
Gabriel Engel's avatar
Gabriel Engel committed
	.content {
		direction: rtl;
		position: absolute;
		top: @header-min-height;
		.calc(height,
		~"100% - " @header-min-height + @footer-min-height);
		width: 100%;
		overflow-x: hidden;
		display: block;
		-webkit-overflow-scrolling: touch;
		box-shadow: 0 0 5px rgba(0, 0, 0, 0.4) inset;
		padding: 35px 10px;
		.transition-delay(.135s);
Gabriel Engel's avatar
Gabriel Engel committed
		&.no-shadow {
			box-shadow: 0 0 0;
		}
Gabriel Engel's avatar
Gabriel Engel committed
		> .wrapper {
Gabriel Engel's avatar
Gabriel Engel committed
		h4 {
			margin-bottom: 30px;
			font-weight: 400;
			text-transform: uppercase;
			font-size: 13px;
		}
Gabriel Engel's avatar
Gabriel Engel committed
	.input-line {
Rafael Caferati's avatar
Rafael Caferati committed
		margin-bottom: 25px;
Gabriel Engel's avatar
Gabriel Engel committed
		&:nth-last-child(1) {
Gabriel Engel's avatar
Gabriel Engel committed
		label {
Rafael Caferati's avatar
Rafael Caferati committed
			text-transform: uppercase;
			font-weight: 400;
			margin-bottom: 0;
		}
Gabriel Engel's avatar
Gabriel Engel committed
		input[type='text'],
		input[type='password'],
Gabriel Engel's avatar
Gabriel Engel committed
		select {
Rafael Caferati's avatar
Rafael Caferati committed
			border-width: 0 0 1px 0;
			padding: 0 8px;
			box-shadow: 0 0 0;
			border-radius: 0;
			-webkit-appearance: none;
			-webkit-border-radius: 0px;
Gabriel Engel's avatar
Gabriel Engel committed
	.input-submit {
Rafael Caferati's avatar
Rafael Caferati committed
		margin: 35px 0 0 -4px;
	}
Gabriel Engel's avatar
Gabriel Engel committed
	.selected-users {
Rafael Caferati's avatar
Rafael Caferati committed
		padding: 20px 0 0;
Gabriel Engel's avatar
Gabriel Engel committed
		li {
Rafael Caferati's avatar
Rafael Caferati committed
			display: inline-block;
			padding: 5px;
			margin-right: 2px;
			margin-bottom: 2px;
		}
			cursor: pointer;
		}
.side-nav {
	position: fixed;
	display: block;
	top: 0;
	bottom: 0;
	left: 0;
	width: @rooms-box-width;
	height: auto;
	overflow: visible;
	z-index: 100;
	padding: 12px 0 0 0;
	.transition(transform .3s ease-out);
	&:before {
		content: " ";
		height: 1px;
		width: 189px;
		left: 8px;
		position: absolute;
		top: 59px;
	}
	.rooms-list {
		direction: rtl;
		position: absolute;
		top: @header-min-height;
		.calc(height,
		~"100% - " @header-min-height + @footer-min-height);
		display: block;
		-webkit-overflow-scrolling: touch;
		box-shadow: 0 0 5px rgba(0, 0, 0, 0.4) inset;
		> .wrapper {
			direction: ltr;
			padding-left: 8px;
Gabriel Engel's avatar
Gabriel Engel committed
	.more {
		display: block;
		font-size: 11px;
		padding: 4px 0 4px 10px;
		margin-top: 2px;
		&:hover {
Gabriel Engel's avatar
Gabriel Engel committed
	.input-error {
		text-align: center;
		font-size: 12px;
		padding: 0;
		text-align: left;
		margin-bottom: -20px;
		margin-top: -12px;
Gabriel Engel's avatar
Gabriel Engel committed
		strong {
			display: block;
			margin-bottom: 2px;
		}
	}
Gabriel Engel's avatar
Gabriel Engel committed
	.empty {
		font-size: 11px;
Rafael Caferati's avatar
Rafael Caferati committed
		cursor: pointer;
Gabriel Engel's avatar
Gabriel Engel committed
	> .arrow {
		position: absolute;
		top: 18px;
		right: 8px;
		z-index: 1000;
		cursor: pointer;
		&.hover,
		&:hover {
			&:before,
			&:after {
	.footer {
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		padding: 10px 15px 0px 15px;
		min-height: @footer-min-height;
		height: @footer-min-height;
			margin-top: -1px;
			&:hover {
				text-decoration: none;
			}
		}
		small {
			font-size: 11px;
			width: 100%;
			display: block;
			text-transform: lowercase;
Rafael Caferati's avatar
Rafael Caferati committed
			margin-bottom: 0;
Rafael Caferati's avatar
Rafael Caferati committed
			font-weight: 400;
Rafael Caferati's avatar
Rafael Caferati committed
			padding-right: 4px;
			margin-top: 2px;
			max-width: 222px;
			max-height: 43px;
			margin-bottom: -10px;
		}
	}
	.search-form {
		.search {
			padding-left: 25px;
		}
		> div {
			position: relative;
		}
		margin-right: 20px;
	}
	h3 {
		&:extend(.small-title);
		cursor: pointer;
		position: relative;
		text-transform: uppercase;
		font-weight: 500;
Rafael Caferati's avatar
Rafael Caferati committed
		margin: 25px 0 0 0;
		line-height: 28px;
Rafael Caferati's avatar
Rafael Caferati committed
		padding-left: 10px;
Rafael Caferati's avatar
Rafael Caferati committed
		&.add-room {
			i {
Rafael Caferati's avatar
Rafael Caferati committed
				position: absolute;
Rafael Caferati's avatar
Rafael Caferati committed
				top: 1px;
	}
	.unread {
		min-width: 15px;
		padding: 0 2px;
		border-radius: 2px;
		text-align: center;
		position: absolute;
		right: 6px;
		font-size: 11px;
		top: 6px;
		line-height: 16px;
		font-weight: 800;
	}
	ul {
		position: relative;
Rafael Caferati's avatar
Rafael Caferati committed
		//left: 1px;
		li {
			white-space: nowrap;
			max-width: 100%;
			overflow: hidden;
			text-overflow: ellipsis;
			vertical-align: middle;
				position: absolute;
				display: block;
				right: -18px;
				top: 2px;
				opacity: 0;
				.transform(translateX(-10px));
				.transition(opacity .15s ease .35s,
				transform .12s ease-out .35s);
			}
			&:hover {
				.opt {
					opacity: 1;
					.transform(translateX(0));
				}
			}
			&.active {
				a {
				}
				.opt {
				}
			}
			&.has-unread {
				.opt {
					opacity: 0;
				}
			}
			&.has-alert {
				.name {
					font-weight: bold;
				}
			}
Diego Sampaio's avatar
Diego Sampaio committed
			padding: 6px 25px 7px 6px;
			font-size: 15px;
			position: relative;
			line-height: 16px;
			white-space: nowrap;
			max-width: 100%;
			overflow: hidden;
			text-overflow: ellipsis;
			vertical-align: middle;
			text-decoration: none;
			text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
			&:hover {
				text-decoration: none;
			}
		}
		.opt {
			position: absolute;
			right: 0;
			width: 50px;
			padding-right: 10px;
Rafael Caferati's avatar
Rafael Caferati committed
			top: 7px;
			.transition(opacity .12s ease);
			.icon-cancel-circled:before {
				margin-left: 2px;
			}
				margin-left: 1px;
			}
Gabriel Engel's avatar
Gabriel Engel committed
			font-size: 14px;
Rafael Caferati's avatar
Rafael Caferati committed
			width: 16px;
			display: inline-block;
	.unread-rooms {
		background-color: #068FE4;
		position: absolute;
		z-index: 1000;
		width: 100%;
		text-align: center;
		line-height: 24px;
		color: white;
		text-transform: uppercase;
		font-weight: bold;
		display: -webkit-flex;
		display: flex;
		align-items: center;
		-webkit-align-items: center;
		justify-content: center;
		-webkit-justify-content: center;

		&.top-unread-rooms {
			top: 60px;
		}
		&.bottom-unread-rooms {
			bottom: 70px;
		}

		i {
			margin-left: 5px;
			font-size: 12px;
		}
	}
	.unread-rooms-mode {
		max-height: 0;
		opacity: 0;
		overflow: hidden;

		&.has-unread {
			.transition(max-height 1s ease-in,opacity .5s linear);
			max-height: 5000px;
			opacity: 1;
		}
	}
.new-room-highlight a {
	-webkit-animation: highlight 2s infinite;
	-moz-animation: highlight 2s infinite;
	-o-animation: highlight 2s infinite;
	animation: highlight 2s infinite;
}

.page-container {
	&:extend(.fill-all);
	overflow-y: hidden;
	.content {
		&:extend(.fill-all);
		overflow-y: scroll;
		margin-top: 60px;
		-webkit-overflow-scrolling: touch;
		.calc(height,
		~'100% - 60px');
	.flex-center;
	flex-flow: row nowrap;
	padding: 0 10px 0 20px;
	border-bottom: 1px solid;
Gabriel Engel's avatar
Gabriel Engel committed
	width: 100%;
Gabriel Engel's avatar
Gabriel Engel committed
	&.visible {
		h2 {
Gabriel Engel's avatar
Gabriel Engel committed
		width: 100%;
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
		font-size: 22px;
		font-weight: 500;
		line-height: 29px;
		.icon-at,
		.icon-hash,
		.icon-lock {
Rafael Caferati's avatar
Rafael Caferati committed
			margin-right: -7px;
		}
Gabriel Engel's avatar
Gabriel Engel committed
		.icon-star,
		.icon-star-empty {
			margin-right: -4px;
		}
	.animated-hidden {
Rafael Caferati's avatar
Rafael Caferati committed
		visibility: hidden;
		display: none;
	}
Gabriel Engel's avatar
Gabriel Engel committed
	input[type='text'] {
		.calc(width,
		~'100% - 100px');
		vertical-align: top;
		margin-top: -4px;
		margin-left: -3px;
		font-size: 20px;
	}
Gabriel Engel's avatar
Gabriel Engel committed
	.icon-pencil {
		vertical-align: text-top;
		margin-top: -7px;
		display: inline-block;
		font-size: 16px;
	}
Rodrigo Nascimento's avatar
Rodrigo Nascimento committed
.cms-page {
	max-width: 800px;
	margin: 40px auto;
	padding: 20px;
	border-radius: 5px;
	box-shadow: 1px 1px 4px rgba(0,0,0,.3);
}

.spotlight {
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 1000;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	padding: 0 40px;

	> .spotlight-input {
		width: 100%;
		max-width: 600px;
		font-size: 24px;
		margin-top: 6%;

		> input {
			box-shadow: 0px 10px 20px rgba(0,0,0,.5);
			border-width: 0px;
			line-height: 46px;
			height: 46px;
			padding: 18px;
			padding-left: 46px;
		}

		> i {
			position: absolute;
			z-index: 10;
			line-height: 46px;
			width: 46px;
			text-align: center;
			font-weight: 100;
		}
	}
}

.mobile-message-menu {
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 1000;
	justify-content: center;
	padding: 0 40px;

	> .buttons {
		font-size: 24px;
		position: absolute;
		bottom: 0;
		left: 10%;
		right: 10%;
// MAIN CONTENT + MAIN PAGES //
.main-content {
	position: fixed;
	top: 0;
	bottom: 0;
	left: @rooms-box-width;
	right: 0;
	width: auto;
	height: auto;
Aaron's avatar
Aaron committed
	margin-right: 40px;
	.transition(width .25s cubic-bezier(.5, 0, .1, 1));
		right: @flex-tab-width;
Aaron's avatar
Aaron committed
			right: 40px;
	&.layout1 {
		right: @flex-tab-webrtc-width;
		.flex-tab {
			max-width: @flex-tab-webrtc-width;
			.transform(translateX(0));
		}
	}
	&.layout2 {
		right: @flex-tab-webrtc-2-width;
		.flex-tab {
			max-width: @flex-tab-webrtc-2-width;
			.transform(translateX(0));
		}
	}
	&.main-modal {
		left: 0px;
		margin-right: 0px;
	}
	.container-fluid {
		padding-top: 0;
	}
	.history-date {
		margin-bottom: 20px;
	}
}

	.content {
		padding: 20px 0;
		background-color: #f8f8f8;
		color: #444;

		> .info {
			max-width: auto;
			line-height: 24px;
			padding-left: 20px;
			font-size: 16px;
			font-weight: 500;
		}
	}

	.section {
		border: 1px solid #ddd;
		border-left: none;
		background-color: #fff;
		padding: 20px;
		margin-bottom: 20px;

		&.section-collapsed {
			.section-content {
				display: none;
			}
		}

		.section-title {
			display: flex;
			font-size: 24px;
			font-weight: 600;
			color: #444;
			line-height: 40px;

			.section-title-text {
				flex-grow: 1;
			}

			.section-title-right {
				line-height: 0px;
			}
		}

		.section-content {
			border: none !important;
			border-radius: 0px !important;
			padding: 20px 0 0 0 !important;

			.input-line {
				border-bottom: 1px solid #eee;
				padding: 20px 0;
				margin-bottom: 0px;

				&:last-child {
					border-bottom: none;
					padding-bottom: 0;
				}

				&:first-child {
					padding-top: 0;
				}

				&[disabled] {
					label {
						color: #888;
					}
				}

				input {
					color: #444;
				}

				> label {
					text-align: left;
					font-weight: 500;
					font-size: 16px;
					line-height: 20px;
					color: #444;
				}

				.settings-description {
					color: #888;
					padding: 5px;
				}

				.settings-alert {
					background-color: rgb(255, 255, 230);
					border: 1px solid rgb(255, 242, 196);
					color: orange;
					font-weight: bold;
					padding: 5px;
				}
	.settings-description {
		.allow-text-selection;
	}
	.rocket-form {
		max-width: none;
Aaron's avatar
Aaron committed
		width: 100%;

	.settings-file-preview {
		display: flex;
		align-items: center;

		input[type=file] {
			position: absolute !important;
			width: 100%;
			top: 0;
			left: 0;
			height: 100%;
			opacity: 0;
			z-index: 10000;
			cursor: pointer;
			* {
				cursor: pointer;
			}
		}

		.preview {
			height: 50px;
			width: 100px;
			border-radius: 4px;
			overflow: hidden;
			box-shadow: 0 0 1px rgba(0,0,0,.5) inset;
			background-size: contain;
			background-position: center center;
			background-repeat: no-repeat;

			&.no-file {
				background-color: #fafafa;
				display: flex;
				align-items: center;
				justify-content: center;
				color: #ccc;
				font-size: 24px;
			}
		}
	}
Gabriel Engel's avatar
Gabriel Engel committed
.page-static {
Gabriel Engel's avatar
Gabriel Engel committed
	.content {
		> div {
			margin-bottom: 25px;
Gabriel Engel's avatar
Gabriel Engel committed
			&:nth-last-child(1) {
				margin-bottom: 0;
			}
		}
		p {
			margin-bottom: 12px;
Gabriel Engel's avatar
Gabriel Engel committed
			&:nth-last-child(1) {
				margin-bottom: 0;
			}
		}
		.section {
			h1 {
				font-size: 20px;
				margin-top: 40px;
				padding: 0 0 0 10px;
				font-weight: 500;
			}
Gabriel Engel's avatar
Gabriel Engel committed

Gabriel Engel's avatar
Gabriel Engel committed

				border: 1px solid;
				padding: 20px;
				border-radius: 5px;

				.section-helper {
					padding: 20px 20px 40px;

					pre {
						display: inline;
						background-color: #eee;
					}
				}
		h1,
		h2,
		h3,
		h4 {
			font-weight: 300;
			text-transform: uppercase;
			margin-bottom: 12px;
		}
Gabriel Engel's avatar
Gabriel Engel committed
.page-home {
Gabriel Engel's avatar
Gabriel Engel committed
	.fixed-title {
		h2 {
			overflow: visible;
		}
	}
Gabriel Engel's avatar
Gabriel Engel committed
	.logo {
Gabriel Engel's avatar
Gabriel Engel committed
		display: block;
Gabriel Engel's avatar
Gabriel Engel committed
		margin: 10px 0;
		max-width: 325px;
Gabriel Engel's avatar
Gabriel Engel committed
	.info {
Gabriel Engel's avatar
Gabriel Engel committed
		p {}
Gabriel Engel's avatar
Gabriel Engel committed
	.social {
		h4 {
Gabriel Engel's avatar
Gabriel Engel committed
		nav {
			margin-left: -4px;
		}
	}
}

.page-list {
	.search {
		margin-bottom: 12px;
	}
	.results {
		padding: 10px 0;
		border-bottom: 1px solid;
		margin-bottom: 10px;
		font-weight: 300;
		p {
			font-size: 12px;
			text-transform: uppercase;
		}
	}
Gabriel Engel's avatar
Gabriel Engel committed

Rodrigo Nascimento's avatar
Rodrigo Nascimento committed
			display: block;
			padding: 3px;
			margin-bottom: 5px;
			.info {
				h3 {
					margin-bottom: 5px;
				}
				ul {
					margin-left: 3px;
Olivier Beddows's avatar
Olivier Beddows committed
		.room-info {
			padding: 3px;
			margin-bottom: 5px;
			cursor: pointer;
Olivier Beddows's avatar
Olivier Beddows committed
				margin-bottom: 5px;
Diego Sampaio's avatar
Diego Sampaio committed
		.user-image {
Diego Sampaio's avatar
Diego Sampaio committed
			margin-left: 12px;
Diego Sampaio's avatar
Diego Sampaio committed
		table {
			width: 100%;
			thead {
				th {
					text-align: left;
				}
			}
Diego Sampaio's avatar
Diego Sampaio committed
			tbody {
				td {
					vertical-align: middle;
					padding: 0 2px;
				}
				tr {
					cursor: pointer;
.image-to-download {
	border-radius: 6px;
	border: 1px dashed;
	padding: 20px 15px;
	margin-bottom: 5px;
	text-transform: uppercase;
	text-align: center;
	cursor: pointer;
	height: 200px;
	display: flex;
	display: -webkit-flex;
	flex-direction: column;
	-webkit-flex-direction: column;
	align-items: center;
	-webkit-align-items: center;
	justify-content: center;
	-webkit-justify-content: center;
	width: 200px;
.room-not-found {
	display: flex;
	display: -webkit-flex;
	flex-direction: column;
	-webkit-flex-direction: column;
	align-items: center;
	-webkit-align-items: center;
	justify-content: center;
	-webkit-justify-content: center;
	font-size: 30px;

	div {
		line-height: 40px;
		text-align: center;
	}

	i {
		font-size: 100px;
		padding-bottom: 30px;
	}
}

Rodrigo Nascimento's avatar
Rodrigo Nascimento committed
	position: absolute;
	top: 60px;
	width: 100%;
	z-index: 11;
	font-weight: bold;
	display: flex;
	flex-direction: column;
	> div {
		height: 24px;
		line-height: 24px;
		padding: 0 10px;
		border-top: 1px solid;
		&:last-child {
			box-shadow: 0px 1px 2px rgba(0,0,0,.2);
		position: relative;
		text-shadow: 1px 1px 0px rgba(0,0,0,.2);
		.upload-progress-progress {
			position: absolute;
			left: 0px;
			height: 100%;
			width: 0%;
			.transition(width, 1s, ease-out);
		}

		.upload-progress-text {
			padding: 0 10px;
			position: absolute;
			left: 0px;
			right: 0px;
			height: 100%;
			z-index: 2;

			> a {
				float: right;
				text-transform: uppercase;

				&:hover {
					cursor: pointer;
				}
			}
		}
	}

	.unread-bar {
		background-color: #E6F4FD;
		// line-height: 30px;
		// font-size: 12px;
		// padding: 0 10px;
		// box-shadow: 0px 1px 2px rgba(0,0,0,.2);
		color: #068FE4;
		text-transform: uppercase;
		text-align: center;

			float: right;

			&:hover {
				cursor: pointer;
			}
		}
.messages-container {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	.room-topic {
		font-size: 14px;
		opacity: 0.4;
		margin-left: 10px;
	}
	.edit-room-title {
		margin-left: 4px;
		font-size: 16px;
		&:hover {
		}
	}
	.wrapper {
		position: absolute;
		width: 100%;
		height: 100%;
Loading
Loading full blame...