:root
{
	--red: #dc0821;
}

@media all
{
	html, body
	{
		width: 100%;
		height: 100%;
		min-height: 100%;
		background: #fff;
		position: relative;
		padding: 0;
		margin: 0;
	}

	div.page
	{
		background: #fff;
		overflow: hidden;
	}

	div.page>main
	{
		display: grid;
		align-content: center;
		position: relative;
		z-index: 3;
		background: #fff;
	}

	div.page>main section
	{
		opacity: 1!important;
		display: block;
		width: 100%;
		position: relative;
		text-align: center;
		margin: 0 auto;
		padding: 80rem 0;
		z-index: 0;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}

	div.page>main section>div
	{
		display: block;
		font-size: 0!important;
		width: 100%;
		text-align: center;
		margin: 0 auto;
	}

	div.page>main section>div>div
	{
		white-space: normal;
		display: block;
		padding: 40rem 2vw;
		width: 100%;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		position: relative;
		vertical-align: top;
		text-align: left;
	}

	div.page>main section.login form
	{
		display: block;
		width: 300rem;
		margin: 0 auto;
	}

	div.page>main section.login form>*
	{
		display: block;
		margin: 10rem auto 0 auto;
		width: 100%;
	}

	div.page>main section.login form>button.button
	{
		display: block;
		background: var(--red);
		color: #fff!important;
		font-weight: bold;
		padding: 15rem 0;
		text-decoration: none!important;
		font-family: Montserrat, Arial, sans-serif!important;
		text-align: center!important;
	}

	div.page>main section.login form>button.button.dark
	{
		background: #111;
	}

	div.page>main section.login form input
	{
		cursor: text;
		padding: 5rem 15rem;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		border: 1rem solid #999;
	}
}


/* panel */
@media all
{
	gc-panel
	{
		display: grid!important;
		grid-template-columns: 70rem auto 220rem 0;
		width: 100%;
		height: 60rem;
		box-sizing: border-box;
		background: #222;
		position: relative;
		z-index: 1600;
		border-bottom: 2rem solid var(--red);
		overflow: visible;
	}

	gc-panel>img
	{
		cursor: pointer;
		display: block;
		width: 50rem;
		margin: 8rem 12rem 0 8rem;
	}

	gc-panel>gc-user
	{
		width: 220rem;
		height: 58rem;
		padding: 0 10rem;
		box-sizing: border-box;
		display: -ms-grid;
		display: grid;
		grid-gap: 24rem;
		grid-template-columns: repeat(4, 1fr);
		align-items: center;
	}

	gc-panel>gc-user>img
	{
		display: block;
		width: 32rem;
		opacity: 1;
		cursor: pointer;
		transition: all .5s;
	}

	gc-panel>gc-user>img:hover
	{
		opacity: 0.5;
	}

	gc-panel>gc-forms
	{
		background: #eee;
		width: 885rem;
		max-width: 100vw;
		display: block;
		position: absolute;
		top: 60rem;
		right: -900rem;
		height: calc(100vh - 60rem);
		overflow: auto;
		box-sizing: border-box;
		-webkit-transition: all .5s;
		transition: all .5s ease;
		padding: 5rem 0 5rem 10rem;
		box-shadow: 0 0 20rem rgba(0,0,0,.5);
	}

	gc-panel>gc-forms[vsb]
	{
		right: 0;
	}

	gc-panel>gc-forms>gc-group
	{
		display: block;
	}

	gc-panel>gc-forms>gc-group:before
	{
		display: block;
		text-align: left;
		width: 100%;
		font-size: 10rem;
		color: #333;
		content: attr(label);
		font-weight: bold;
		padding: 5rem 0;
	}

	gc-panel>gc-forms>gc-group>gc-buttons
	{
		display: -ms-grid;
		display: grid;
		grid-gap: 5rem;
		grid-template-columns: repeat(auto-fit, 215rem);
	}

	gc-panel>gc-forms>gc-group>gc-buttons>gc-button
	{
		padding-left: 7rem;
		background: #222;
		display: -ms-grid;
		display: grid;
		grid-gap: 7rem;
		grid-template-columns: 16rem auto 31rem;
		align-items: center;
		color: #fff;
		font-size: 10rem;
		-webkit-transition: all .5s;
		transition: all .5s;
		cursor: pointer;
		width: 200rem;
		height: 30rem;
		line-height: 30rem;
	}

	gc-panel>gc-forms>gc-group>gc-buttons>gc-button:hover
	{
		background: var(--red);
	}

	gc-panel>gc-forms>gc-group>gc-buttons>gc-button>img:first-child
	{
		display: block;
		width: 16rem;
		cursor: pointer;
	}

	gc-panel>gc-forms>gc-group>gc-buttons>gc-button>img.fav
	{
		width: 12rem;
		display: block;
		padding: 9rem;
		border-left: 1rem dotted #999;
		opacity: 0;
		cursor: pointer;
		transition: all .5s;
	}

	gc-panel>gc-forms>gc-group>gc-buttons>gc-button:hover>img.fav
	{
		opacity: .75;
	}

	gc-panel>gc-forms>gc-group>gc-buttons>gc-button[fav]>img.fav
	{
		opacity: 1!important;
	}

	gc-panel>gc-favourites
	{
		display: inline-flex;
		flex-wrap: nowrap;
		width: calc(100vw - 300rem);
		grid-gap: 5rem;
		align-items: flex-start;
		box-sizing: border-box;
		height: 60rem;
		overflow: hidden;
		overflow-x: auto;
		position: relative;
	}

	gc-panel>gc-favourites[action]:before
	{
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 58rem;
		line-height: 58rem;
		background: #222;
		color: var(--red);
		content: attr(action);
		text-align: center;
		font-size: 20rem;
		font-weight: bold;
	}

	gc-panel>gc-favourites>gc-button
	{
		padding: 5rem 10rem 0 10rem;
		text-align: center;
		background: #444;
		display: block;
		box-sizing: border-box;
		grid-gap: 7rem;
		font-size: 11rem;
		-webkit-transition: all .5s;
		transition: all .5s;
		cursor: pointer;
		height: 50rem;
		line-height: 20rem;
		margin: 0;
		top: 4rem;
		position: relative;
		white-space: nowrap;
		font-weight: bold;
		color: #fff;
	}

	gc-panel>gc-favourites>gc-button:hover
	{
		background: var(--red);
	}

	gc-panel>gc-favourites>gc-button>img:first-child
	{
		display: block;
		width: 24rem;
		padding: 0 28rem;
		cursor: pointer;
		margin: 0 auto;
	}
}
