$header-height: 90px;
$mobile-header-height: 80px;

%cancel-button {
	@extend %cancel-button;
	color: #000;
	border: 1px solid #999;
	background: #ccc;
}

.site-header {
	background: #fff;
}

.gru-nav-wrapper {
	@media screen and (max-width: $nav-mobile-limit) {
		margin-top: -$nav-menu-side - 10px - 12px;
	}
}

div.gru-nav {
	border-radius: 0;
	.gru-nav-button .icon-bar {
		border-radius: 10px 0 0 10px;
	}
	&.toggled .gru-nav-button .icon-bar {
		border-radius: 10px;
	}
	ul > li {
		&.selected > a {
			border-bottom: 2px solid $primary-color;
		}
		a {
			font-weight: normal;
			padding: 0.55em 20px;
		}
		&:first-child > a {
			border-radius: 0;
		}
	}
}


div.gru-nav .gru-nav-button {
	@media screen and (max-width: 360px) {
		left: -10px;
	}
	+ ul {
		margin: 0;
		@media screen and ($max-mobile-viewport) {
			width: 100%;
			position: absolute;
			z-index: 1000;
			margin-top: 8px;
		}
	}
}

#pwa-navigation {
	border-top: 1px solid #ddd;
	width: 100vw;
	ul li {
		max-width: 30%;
		margin: 0;
		a {
			display: flex;
			align-content: center;
			align-items: center;
			background-size: auto 30px;
			padding-top: $nav-mobile-bottom-bar-height / 2 + 10px;
			> span {
				height: auto;
				width: 100%;
				font-size: 70%;
				overflow: hidden;
				text-overflow: ellipsis;
				white-space: nowrap;
			}
			span.badge {
				font-size: 65%;
			}
		}
	}
}


div.trackingcodeinputcell form {
	input {
		width: 62%;
		@media screen and ($max-mobile-viewport) {
			width: auto;
		}
	}
	button {
		margin: 0;
	}
}

#columns, #sidebar {
	margin-top: 0.5rem;
}

div#header-wrapper {
	background: linear-gradient(#00407c, $primary-color);
	box-shadow: 0 7px 8px #ccc;
}

div#footer-wrapper {
	font-size: 90%;
	background: linear-gradient(#bbb, #eee);
	a {
		color: #3a3a1a;
		&:hover {
			color: $primary-color;
		}
	}
}

div#header {
	height: $header-height;
	padding: 0;
	margin-bottom: 12px;
	@media screen and ($max-mobile-viewport) {
		height: $mobile-header-height;
		h1 {
			padding-left: 0;
		}
	}
	#top {
		height: $header-height;
		@media screen and ($max-mobile-viewport) {
			height: $mobile-header-height;
		}
		#logo a {
			display: block;
			text-indent: -9999px;
			height: $header-height;
			@media screen and ($max-mobile-viewport) {
				height: $mobile-header-height;
			}
		}
	}
	#logo {
		background: url('img/bandeau-arles.png') no-repeat;
		background-position: left top;
		@media screen and ($max-mobile-viewport) {
			background-position: 60px bottom;
			background-size: auto 70px;
		}
		@media screen and (max-width: 360px) {
			background-position: 40px bottom;
		}
	}
}

/* registration page content in columns */

.registration-page .gru-content {
	flex-direction: column;
	#sidebar {
		max-width: 100%;
		flex: 0 0 auto;
	}
	#columns {
		display: flex;
		flex-direction: column;
		> div {
			width: 100%;
		}
	}
}

.gru-content {
	div#sidebar {
		@media screen and ($max-mobile-viewport) {
			margin-top: 0.5rem;
		}
	}
	div.wcsformsofcategorycell {
		picture img {
			padding: 0;
		}
		li a::after {
			color: $primary-color;
			position: absolute;
			font-family: FontAwesome;
			right: 0.5em;
		}
		li.required-authentication, li.is-redirection {
			a {
				padding-right: 1.5em;
				&::after {
					content: '';
					display: block;
				}
			}
		}
		li.required-authentication a::after {
			width: 1.2em;
			height: 1.2em;
			background: url('img/auth-required.svg') center center no-repeat;
			background-size: contain;
		}
		li.is-redirection a::after {
			width: 1em;
			height: 1em;
			background: url('img/external-link.svg') center center no-repeat;
			background-size: contain;
		}
		h2:first-child {
			background: transparent;
			color: $font-color;
		}
	}
}

#toplinks {
	background: $primary-color;
	border-radius: 0;
	box-shadow: none;
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	min-width: 200px;
	height: $header-height;
	right: 0;
	a {
		color: #fff;
		&:hover {
			color: lighten($primary-color, 55%);
		}
	}
	a.registration {
		display: none;
	}
	@media screen and ($max-mobile-viewport) {
		display: none;
	}
}

ul.account-management .account-logout {
	@media screen and ($min-desktop-viewport) {
		display: none;
	}
}

div#rub_service {
	background-color: #fff;
	h2 {
		background-color: $primary-color;
		color: $body-background;
	}
	.drafts-recall {
		padding: 0 0.5rem;
	}
	h3 {
		padding: 0;
	}
}

div#sidebar div > div h2:first-child {
	background: transparent;
	color: $font-color;
}

div#tracking-code {
	background: url('img/code.png') 0px 0px no-repeat;
	background-size: auto 25px;
	h3, a {
		background: transparent;
		display: inline-block;
		border: none;
		text-transform: uppercase;
		padding-top: 5px;
	}
	a {
		@media screen and ($max-mobile-viewport) {
			padding-top: 0;
			font-size: 175%;
		}
	}
	h3 {
		color: $font-color;
		padding-left: 50px;
		padding-right: 10px;
		&::after {
			content: none;
		}
	}
}

/* custom widget */

div.enquete_satisfaction {
	& div.title {
		margin-bottom: 10px;
	}
	input[type="radio"] {
		margin: 45px 0 0 13px;
	}
	.content {
		& br {
			display: none;
		}
		& label {
			width: 20%;
			display: inline-block;
			background: url('img/satisfaction-0.svg');
			background-repeat: no-repeat;
			background-size: contain;
			height: 40px;
			&:hover, &:focus, &:active {
			  background-image: url('img/satisfaction-0A.svg');
			}
			& span { visibility: hidden; }
		}
		& label ~ label {
			background-image: url('img/satisfaction-1.svg');
			&:hover, &:focus { background-image: url('img/satisfaction-1A.svg'); }
		}
		& label ~ label ~ label {
			background-image: url('img/satisfaction-2.svg');
			&:hover, &:focus {
				background-image: url('img/satisfaction-2A.svg');
			}
		}
		label ~ label ~ label ~ label {
			background-image: url('img/satisfaction-3.svg');
			&:hover, &:focus {
				background-image: url('img/satisfaction-3A.svg');
			}
		}
	}
}

.minutes {
	&::before {
		content: ' ';
		width: 40px;
		height: 35px;
		background: url('img/5min.svg') no-repeat top left;
		background-size: 35px 35px;
		display: inline-block;
		vertical-align: middle;
	}
}

@each $i in 5, 10, 15, 20 {
	.min#{$i}::before {
		background: url('img/#{$i}min.svg');
		background-size: cover;
	}
}


ul#evolutions {
	li div.msg, div.evolution-metadata {
		background: #fff;
	}
}

div.back-home-button {
	padding: 0.5rem;
}

div.cell {
	li {
		font-size: 90%;
	}
}

div.textcell.home-title h2:first-child {
	background-color: rgba(50, 50, 50, 0.75);
	color: #fff;
}

div.carrousel-content input + div div.carrousel-item div.carrousel-item-content {
	font-size: 1.35rem;
	line-height: 2rem;
}
div.carrousel div.carrousel-item-content {
	color: #efefef;
	h2:first-child {
		color: #fff;
		font-size: 130%;
		line-height: 1.5rem;
		font-weight: bold;
	}
	a {
		color: #efefef;
		text-decoration: underline;
		&.carrousel-button {
			@extend %button;
			text-decoration: none;
			background: #333;
			border: 1px solid #777;
		}
	}
}

div.notificationscell,
div.link-list-cell,
div.wcscurrentdraftscell,
div.wcscurrentformscell,
div.trackingcodeinputcell,
div.block,
div.a2-block {
	h2:first-child, h3:first-child {
		&::after {
			content: "";
			height: 2px;
			width: 60px;
			margin-top: 5px;
			background: $primary-color;
			display: block;
		}
	}
}

div.trackingcodeinputcell h2:first-child::after {
	background: $font-color;
}

div.wcscurrentdraftscell span.form-status {
	display: none;
}

div.notificationscell, div.wcscurrentformscell span.form-status {
	color: #aaa;
	font-size: 90%;
}

div.searchcell {
	position: relative;
	input.combo-search-input {
		border: 1px solid #aaa;
		height: 35px;
		padding-right: 35px;
		appearance: textfield;
		-webkit-appearance: textfield;
	}
	input.combo-search-input {
		margin-right: 0;
		border-radius: $border-radius 0 0 $border-radius;
		&:focus {
			border: 1px solid #aaa;
		}
	}
	button {
		position: absolute;
		right: 1em;
		background-color: transparent;
		border: 0;
		box-shadow: none;
		line-height: 24px;
		width: 35px;
		padding: 5px 0px;
		text-indent: -99999px;
		&::before {
			position: absolute;
			right: 5px;
			width: 30px;
			height: 25px;
			content: '';
			background: url('img/loupe.svg') center center no-repeat;
			background-size: contain;
		}
		&:hover {
			background-color: transparent;
			box-shadow: none;
		}
	}
}

div#user-files {
	@media screen and ($max-mobile-viewport) {
		tr::before {
			display: none;
		}
		td.action-column {
			padding: 0.3em 0.5em;
		}
	}
	@media screen and (max-width: 600px) {
		th.size, td.size, th.created, td.created {
			display: none;
		}
	}
}

div.SubmitWidget {
	@media screen and (max-width: $very-small-limit) {
		&.widget {
			margin-bottom: 1rem;
		}
		&.submit-button {
			order: 2;
		}
		&.previous-button {
			order: 1;
			flex-grow: 1;
		}
		&.cancel-button {
			order: 3;
		}
	}
}

/* always hide agent portal link */
a#publik-portal-agent {
	display: none;
}

label[for="id_remember_me"] {
	display: inline;
}

#login-page.methods2 {
	> .block {
		width: calc(33% - 2em);
		@media screen and ($max-mobile-viewport) {
			width: 100%;
		}
	}
	div.block-password {
		padding: 0;
		margin: 0;
		@media screen and (min-width: $mobile-limit) {
			width: 66%;
		}
		> div {
			display: flex;
			padding: 0;
			@media screen and ($max-mobile-viewport) {
				flex-direction: column;
			}
			> div {
				padding: 1em 0;
				@media screen and (min-width: $mobile-limit) {
					padding: 0 2em;
					width: 50%;
				}
				&.first-login {
					padding-right: 0;
					@media screen and ($max-mobile-viewport) {
						padding-right: 1rem;
					}
				}
			}
		}
	}
}

div.first-login {
	p {
		text-align: center;
	}
}

#frontend-registration-fc + #frontend-registration-email {
	@media screen and ($max-mobile-viewport) {
		padding: 2em 0;
	}
}

#frontend-registration-fc.a2-block {
	h2 {
		display: none;
	}
	> div {
		padding: 0;
	}
	h3 {
		@extend %title;
	}
}

hr {
	border-bottom: 3px solid #3d7e9a;
	margin: 30px 0;
}


.list-with-images {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	li {
		width: 210px;
		padding: 185px 10px 10px 10px;
		background-image: var(--bg-image);
		background-repeat: no-repeat;
		background-position: center 7px;
		background-size: 165px auto;
		cursor: pointer;
		margin: 10px;
		border-radius: 5px;
                text-align: center;
		&.selected {
			box-shadow: inset 1px 0px 7px  #bbb;
		}
		&:focus {
			box-shadow: inset 1px 0px 5px  #ccc;
		}
		@media screen and (max-width: $very-small-limit) {
			width: 100%;
		}
	}
}

.template-with-images.three-items-row {
	.list-with-images li  {
		width: 285px;
		padding-top: 200px;
		background-size: 180px auto;
	}
}
