

h1, h2, h3, h4
	{
		padding: 0px;
		margin: 0px;
	}

ul
	{
		list-style: none;
		padding: 0px;
		margin: 0px;
	}

img:is([src=""])
	{
		visibility: hidden;
	}

a
	{
		text-decoration: none;
		color: inherit;
	}

span.space
	{
		padding: 3px;
	}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button
	{
		-webkit-appearance: none;
		margin: 0;
	}

input[type=number]
	{
		-moz-appearance: textfield;
	}

.html::slotted( a )
	{
		text-decoration: underline;
		color: inherit;
	}

.button
	{
		color: %(button.color);
		background-color: %(button.bg-color);
		cursor: pointer;
	}



/***   HIDE SCROLLBAR   ***/



.hide-scrollbar
	{
		-ms-overflow-style: none;
		scrollbar-width: none;
	}
	
.hide-scrollbar::-webkit-scrollbar
	{
		display: none;
	}



/**   FONTS AND SIZES  **/



.template
	{
		font-family: %(font.text.family);
		font-weight: 200;
		color: %(template.color);
	}

.template .text.html::slotted( a )
	{
		color: %(link.color);
		text-decoration: %(link.decoration);
	}



/***   PAGE   ***/


.page
	{
		--background: rgb( 0, 0, 0 );
		--content-background: rgb( 255, 255, 255 );
	}

.block-content-page .title
	{
		font-size: calc( 20px + 10 * var( --font-scale ) );
		line-height: calc( 20px + 10 * var( --font-scale ) );
		font-family: %(font.h1.family);
		font-weight: 800;
		padding: 0px;
		color: var( --template-main-color );
	}

.title:matches( .block-content-page * ):is( :not( :empty ) )
	{
		margin: 0px 0px calc( 10px + 10 * var( --font-scale ) );
	}

.block-content-page .subtitle
	{
		font-size: calc( 24px + 8 * var( --font-scale ) );
		line-height: calc( 24px + 8 * var( --font-scale ) );
		font-family: %(font.h2.family);
		color: %(subtitle.color);
	}

.subtitle:matches( .block-content-page * ):is( :not( :empty ) )
	{
		margin: 0px 0px 20px;
	}


.page .html
	{
		font-size: calc( 16px + 8 * var( --font-scale ) );
		line-height: calc( 28px + 8 * var( --font-scale ) );
	}

.page .buttons:not( :is( [data-length="0"] ) )
	{
		margin: 30px auto 20px;
	}


select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: .3em;
    background: #fff;
    border: 1px solid rgba(45, 45, 45, 0.6);
    border-radius: 3px;
    padding: 0.3em 1em 0.3em 0.3em;
    font-size: 0.9em;
    font-family:  Exo2, sans-serif;
    font-weight: 100;
    color: black;
}
.select-container {position:relative; display: inline;}
.select-container:after {content:">"; width:0; height:0; position:absolute; pointer-events: none;}
.select-container:after {
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    top: .3em;
    right: .75em;
    border-top: 8px solid black;
    opacity: 0.5;
}
select::-ms-expand {
    display: none;
}

