%title {
	@extend %title;
	display: inline-block;
}

%bigtitle {
	font-size: 1.875rem;
	color: $green;
	text-transform: uppercase;
	font-weight: 500;
	letter-spacing: -1px;
	@media screen and ($max-mobile-viewport) {
		font-size: 1.562rem;
	}
}

#header-wrapper {
	background: white;
	#header {
		padding: 0;
		background: white;
		@media screen and ($max-mobile-viewport) {
			height: auto;
		}
		#signal-publik {
			padding-left: 0;
			a {
				display: block;
				overflow: hidden;
				text-indent: -10000px;
				background: white url(img/logo_signalpublik.svg) 20px 20px no-repeat;
				background-size: auto 100px;
				height: 150px;
			}
		}
		#logo {
			position: absolute;
			right: 0;
			width: $width / 2;
			background: $orange;
			top: 0;
			height: 100px;
			line-height: 100px;
			padding-left: 30px;
			a {
				background: none;
				text-indent: 0;
				color: white;
				text-transform: uppercase;
			}
			&.has-logo::before {
				content: '';
				position: absolute;
				width: 400px;
				top: 15px;
				height: 120px;
				background: transparent url(/assets/header:logo) center center no-repeat;
				background-size: contain;
				left: -420px;
				@media screen and (max-width: $width) {
					width: calc(100vw - 600px - 200px);
					left: calc(0px - (100vw - 600px - 200px + 20px));
				}
			}
			@media screen and ($max-mobile-viewport) {
				position: static;
				width: 100%;
				padding: 0 1rem;
				height: 40px;
				line-height: 40px;
				font-size: 1.125rem;
				&.has-logo::before {
					width: calc(100% - 180px);
					right: 0;
					top: 15px;
					left: auto;
				}
			}
		}
	}
}

.site-nav {
	display: none;
}

#pwa-navigation {
	text-transform: uppercase;
	a {
		background-position: 50% 10px;
		background-size: 100% 20px;
		padding-top: 32px;
		span {
			font-size: 0.688rem;
			letter-spacing: -1px;
		}
	}
	@media screen and (min-width: $nav-mobile-limit + 1px) {
		display: block;
		max-width: $width;
		margin: auto;
		background: transparent;
		position: relative;
		height: auto;
		> div {
			width: $width / 2;
			background: $darkgray;
			position: absolute;
			right: 0;
			top: -50px;
			a {
				height: 50px;
				background-position: 50% 5px;
				padding-top: 30px;
				span {
					font-size: 0.75rem;
					letter-spacing: 0px;
				}
			}
		}
	}
}

div.gru-nav-wrapper {
	@media screen and (max-width: $nav-mobile-limit) {
		position: fixed;
		width: 100%;
		pointer-events: none;
		top: 0;
		left: 0;
		z-index: 1000;
		margin-top: 0;
		background: transparent;
		div.gru-nav .gru-nav-button.toggled + ul {
			min-height: calc(100vh - 40px);
		}
		div.gru-nav .gru-nav-button + ul {
			pointer-events: all;
			border-top: 0;
			padding: 0 1rem;
			li:first-child {
				margin-top: 1rem;
				border-top: 1px solid $green;
			}
			li {
				border-bottom: 1px solid $green;
				a {
					padding: 0;
					line-height: 4em;
				}
				&.footer-link {
					font-size: 80%;
					border-bottom: 0;
					a {
						padding-top: 1rem;
						line-height: 100%;
					}
				}
			}
		}
		div.gru-nav .gru-nav-button {
			width: 80px;
			margin-left: 0;
			pointer-events: all;
		}
	}
}

#nav {
	> ul {
		margin-top: 0;
		margin-bottom: 0;
	}
}

div#page {
	background: #e9e9e9;
}

div#main-content-wrapper {
	margin-top: 1rem;
	@media screen and ($max-mobile-viewport) {
		margin-top: 0;
	}
	#columns div.textcell {
		p {
			margin-left: 0;
			margin-right: 0;
		}
	}

	#columns div.textcell:first-child {
		background: transparent;
		h1:first-child {
			margin-top: 0;
			@extend %bigtitle;
			margin-bottom: 0;
			+ p {
				margin-top: 0;
			}
		}
	}
	@media screen and (max-width: $nav-mobile-limit) {
		#columns-wrapper {
			padding: 1rem;
			padding-bottom: 0;
		}
		#sidebar + #columns-wrapper {
			padding-top: 0;
		}
	}
}

div.gru-content div.wcsformcell {
	background: white;
	a.form-link {
		display: block;
		div {
			display: flex;
			padding: 5px;
			span {
				display: block;
				height: 75px;
				width: 75px;
				background: $green center center no-repeat;
				background-size: 40px;
			}
			strong {
				display: block;
				margin: 0 0.5rem;
				flex: 1;
				display: flex;
				align-items: center;
				color: $darkgray;
				text-transform: uppercase;
			}
		}
		&:focus,
		&:hover {
			outline: 2px solid $green;
			outline-offset: 1px;
		}
	}
	&:nth-child(4n+3),
	&:nth-child(4n+2) {
		a.form-link {
			div span {
				background-color: $orange;
			}
			&:focus,
			&:hover {
				outline-color: $orange;
			}
		}
	}
	@media screen and ($max-mobile-viewport) {
		&:nth-child(4n) {
			a.form-link {
				div span {
					background-color: $orange;
				}
				&:focus,
				&:hover {
					outline-color: $orange;
				}
			}
		}
		&:nth-child(4n+3) {
			a.form-link {
				div span {
					background-color: $green;
				}
				&:focus,
				&:hover {
					outline-color: $green;
				}
			}

		}
	}
}


footer {
	.liens,
	.signal-publik {
		p {
			margin: 0;
			padding: 0.5rem 1rem;
			text-transform: uppercase;
			display: inline-block;
			a {
				color: $darkgray;
				margin: 0 5px;
				&:hover {
					text-decoration: underline;
				}
			}
		}
	}
	.signal-publik {
		float: left;
		p {
			background: #f4f4f4;
			font-weight: 500;
			color: lighten($darkgray, 50%);
			a {
				color: $darkgray;
				margin-left: 0;
			}
		}
	}
	.liens {
		float: right;
	}
	@media screen and (max-width: $nav-mobile-limit) {
		#footer-wrapper {
			padding-bottom: 0;
		}
		.liens,
		.signal-publik {
			float: none;
			width: 100%;
			p {
				a {
					display: block;
					margin: 0;
				}
			}
			span.sep {
				display: block;
				color: transparent;
				height: 5px;
			}
		}
	}
}

@media screen and ($max-mobile-viewport) {
	.gru-content {
		#sidebar {
			order: 0;
			margin: 1rem;
			margin-bottom: 0;
		}
	}
}

.gru-content div.cell {
	&.transparent {
		background: transparent;
		h2:first-child {
			padding-left: 0;
		}
	}
}

div.gru-content div.cell.trackingcodeinputcell {
	background: $green;
	color: white;
	border-radius: 5px;
	h2 {
		font-weight: bold;
		margin-bottom: 0;
		padding-bottom: 3px;
		background: transparent;
	}
	h2 ~ * {
		background: transparent;
	}
	p {
		padding-top: 0;
		margin: 0 1rem;
	}
	form {
		margin: 0 1rem;
		padding-bottom: 1rem;
		display: flex;
		input {
			flex: 1;
			margin: 0;
			border: 1px solid white;
			background: $green;
			color: white;
			max-width: 12rem;
		}
		button {
			margin: 0;
			flex: 0;
			box-shadow: none;
			text-indent: -10000px;
			background: white;
			position: relative;
			&:focus {
				outline: 0;
			}
			&::after {
				content: ">";
				font-weight: bold;
				color: $darkgray;
				text-indent: 0;
				position: absolute;
				right: 0.6rem;
			}
		}
	}
}

div.hint {
	margin-left: 0.7rem;
}

#columns div#login-page > div.block {
	@media screen and (max-width: $nav-mobile-limit) {
		background: transparent;
		> div {
			padding: 0;
		}
		margin: 0 -1rem;
	}
	h2 {
		display: none;
	}
}

#login-title {
	font-family: $title-font-family;
	font-size: 1.125rem;
	color: $title-color;
	text-transform: uppercase;
	span {
		text-transform: none;
		font-size: 0.875rem;
		font-family: $font-family;
	}
}

div.widget div.title label,
form p label {
	font-weight: bold;
	color: $darkgray;
}

#login-buttons {
	display: flex;
	align-items: center;
	a {
		display: inline-block;
		font-size: 0.75rem;
	}
}

div.form-validation form,  // target form validation
div#rub_service form[action="."] {  // target form pages
	div.buttons {
		margin: 0;
		display: flex;
		width: 100%;
		div.widget {
			margin-bottom: 0;
			div.content {
				display: block;
			}
			button {
				text-align: center;
				padding-bottom: 20px;
				padding-top: 20px;
				text-transform: uppercase;
				font-weight: bold;
				font-size: $font-size * 1.1;
				border: none;
				box-shadow: none;
				border-radius: 0;
				margin-right: 0;
				width: 100%;
				padding-right: 10px;
			}
			&.previous-button {
				order: 1;
				button {
					background: $orange;
					&:focus {
						outline-color: $orange;
					}
				}
			}
			&.submit-button {
				order: 2;
				flex: 1;
			}
			&.cancel-button {
				order: 0;
				button {
					background: #dddddd url(img/close.svg) center center no-repeat;
					background-size: 25px;
					text-indent: -10000px;
					overflow: hidden;
					color: transparent;
					width: 60px;
					&:focus {
						outline-color: #a5a5a5;
					}
				}
			}
			&.savedraft-button {
				display: none;
			}
		}
	}
}

@media screen and ($max-mobile-viewport) {
	#columns-wrapper {
		padding: 0;
	}
	#login-title {
		padding: 0 0.7rem;
		height: 45px;
	}
	#login-page > .block {
		padding: 0 0.7rem;
		&.block-fc {
			padding: 0;
		}
	}
	#login-page {
		div div#fc-button {
			padding: 0;
			box-shadow: none;
			border-radius: 0;
			&:hover {
				background: transparent;
			}
			width: 100%;
			img {
				height: 80px;
			}
		}
		div div#fc-button-wrapper {
			padding-bottom: 0;
		}
		div div#fc-explanation-text {
			display: none;
		}
	}
	#frontend-registration-email {
		padding-bottom: 3px;
		margin-bottom: 1rem;
	}
	#registration-button {
		background: $green;
		margin: 0 -1rem;
		a {
			text-align: center;
			display: block;
			padding: 1rem;
			color: white;
			font-size: 0.875rem;
			strong {
				font-size: 1.125rem;
				text-transform: uppercase;
			}
		}
	}
	#columns div#login-page > div.block.block-password {
		background: white;
		padding-top: 0.5rem;
		min-height: calc(100vh - 50px - 55px - 95px - 130px - 65px);
		margin: 0;
		input {
			width: 100%;
		}
		button[name=login-password-submit] {
			text-transform: uppercase;
		}
	}
	div.a2-block {
		margin: 0 auto;
	}
	div#illu {
		display: none;
	}
}

div#gauche, div#rub_service {
	margin-top: 0;
	background: white;
	@media screen and (max-width: $nav-mobile-limit) {
		margin-top: -1rem;
		margin-left: -1rem;
		margin-right: -1rem;
		width: auto;
		padding: 1rem;
	}
}

div#rub_service.has-sidebox > h2 {
	padding-left: 0.5rem;
	@media screen and (max-width: $nav-mobile-limit) {
		display: none;
	}
}

div#rub_service {
	div.drafts-recall,
	div.text-check-before-submit,
	form {
		padding: 0 1rem;
		@media screen and ($max-mobile-viewport) {
			padding: 0.5rem 0;
		}
	}
	div.tracking-code-part {
		h3, a {
			background: transparent;
			border: none;
			color: $darkgray;
			font-size: $font-size * 1.2;
			padding: 0.5rem 1rem;
			display: inline-block;
		}
		a {
			font-weight: bold;
		}
		border: 2px solid $darkgray;
		display: inline-block;
		background: white;
		position: absolute;
		right: 0;
		top: 0px;
		@media screen and (max-width: $nav-mobile-limit) {
			position: static;
		}
	}
	div#receipt-intro {
		padding-top: 1px;
		@media screen and (max-width: $nav-mobile-limit) {
			padding-top: 0;
			margin-left: 0;
			margin-right: 0;
		}
	}
	div#summary,
	div#evolution-log {
		padding: 0 1rem;
		@media screen and (max-width: $nav-mobile-limit) {
			padding: 0;
		}
		h2:first-child {
			display: inline-block;
			padding-right: 3rem;
		}
	}

	div#evolution-log {
		padding-bottom: 1rem;
		h2:first-child {
			margin-bottom: 2rem;
		}
	}

	ul#evolutions li span.item {
		background: white !important;
		&::before {
			background: $green;
		}
	}
}

div#rub_service h3[data-field-id] {
	font-family: $title-font-family;
	color: $title-color;
	font-weight: normal;
	text-transform: uppercase;
	margin: 0 0 0.5rem 0;
	background: $green;
	padding: 0.2rem 0.5rem;
	display: inline-block;
	font-weight: bold;
}

div#rub_service h4[data-field-id] {
	color: $title-color;
}

.form-content--title,
div#rub_service h2 {
	text-align: left;
}

div#summary {
	background: white url(img/arrow-down.png) no-repeat top 1.5rem right 1rem;
	#disclose-dataview {
		margin-top: 0;
		padding-bottom: 0.7rem;
	}
}

ul#evolutions {
	li {
		&:first-child {
			margin-top: 0;
		}
		&::after {
			content: none;
		}
		span.item {
			top: 0;
			background: $darkgray !important;
			border-color: $darkgray;
			&::before {
				background: white;
			}
		}
		div.evolution-metadata {
			padding-top: 0;
			span.status {
				color: $darkgray;
			}
		}
		span.time {
			font-size: 90%;
			color: $green;
		}
		span.user {
			color: $green;
			opacity: 1;
		}
	}
	&::after {
		background: $darkgray;
	}
}

div.qommon-map {
	height: 500px;
	@media screen and ($max-mobile-viewport) {
		height: 280px;
		max-height: 40vh;
	}
}

div#illu {
	p {
		margin: 0;
	}
}

div.back-home-button {
	display: none;
}

@media screen and (max-width: $nav-mobile-limit) {
	div.cell.map {
		div.combo-cell-map.leaflet-container {
			height: calc(100vh - #{$mobile-header-height} - #{$nav-mobile-bottom-bar-height} - 2rem);
		}
	}
}

ul#evolutions li div.msg div.comment {
	background: white;
	color: $darkgray;
}

li.combo-notification {
	cursor: pointer;
	&.combo-notification-acked {
		opacity: 0.6;
		cursor: inherit;
	}
}

div.notificationscell h2 + p {
	padding: 0 1rem 1rem 1rem;
}

.gru-nav-button {
	border-radius: 0;
}

@media screen and ($max-mobile-viewport) {
	body.focus-in {
		#pwa-navigation {
			display: none;
		}
	}
}

div#title-section {
	margin: -1rem 0 -1rem -1rem;
	padding: 0 0.5rem;
	h1 {
		@extend %bigtitle;
		padding-bottom: 0.5rem;
		padding-left: 0.5rem;
	}
}

// Steps
.wcs-steps {
	font-size: 1em;

	&.steps-1 {
		display: none;
	}
}
.wcs-step {
	flex: 1 0 auto;
	&--marker {
		position: relative;
		&::after {
			content: "";
			width: 0px;
			height: 0px;
			display: block;
			background: transparent;
			position: absolute;
			top: 0;
			bottom: 0;
			left: 100%;
			margin: auto;
			border: .6em solid transparent;
			border-left-color: $wcs-step-marker-background;
		}
	}
	&--label {
		padding-left: 1em;
		padding-right: 1em;
		text-transform: uppercase;
		font-weight: normal !important;
		@media ($mq-min--wcs-steps-horizontal-layout) {
			position: static;
			display: block !important;
		}
	}
	&.step-before {
		background-color: darken($wcs-step-current-background, 20%);
		color: $wcs-step-current-color;
	}
	&.current & {
		&--marker {
			&::after {
				border-left-color: $wcs-step-current-marker-background;
			}
		}
	}
}

div.a2-block,
.gru-content div.cell,
.column div.block {
	background: transparent;
	h2 ~ * {
		background: white;
	}
	h2 + form,
	h2 + ul,
	h2 + p {
		margin-top: 0;
		padding-top: 1rem;
	}
	h2 + ul.account-management {
		padding-top: 0;
	}
	&.textcell {
		h2 ~ p {
			padding: 0.5rem 1rem;
			margin: 0;
		}
	}
}

div.a2-block > div, div.a2-block > form, div.a2-block > p {
	margin: 0;
	padding: 0.5rem;
}

div#fc-linking {
	padding-top: 1rem;
}

div#login-page.methods2 > div.block.block-fc {
	margin-right: 0;
	width: 50%;
	@media screen and ($max-mobile-viewport) {
		width: auto;
	}
}
