:root {
	box-sizing: border-box;
	--footer-height: 2rem;
	--table-stiky-offset: -1.5em;
	--object-fit: scale-down;
}
html, body {
	line-height: 1.25em;
}
body > .columns {
	margin: 0.5em 0 0;
}
body .skiplink {
	position: absolute;
	left: -10000px;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden;
	background: var(--button-color);
	color: var(--button-font-color);
	border-radius: var(--border-radius, 0.25em);
}
body .skiplink:focus {
	top: 1em;
  	left: 2em;
	width: auto;
	height: auto;
	padding: 1em;
	z-index: 9999;
}
@media screen and (orientation: landscape) {
	html, body {
		height: 100%;
		overflow: hidden;
	}
	.navbar-brand .navbar-item {
		padding: 1.25rem 1.25rem 1.25rem 1.5rem;
	}
	body > .columns {
		height: calc(100% - var(--footer-height));
	}
	.column {
		padding: 1.5rem;
		overflow-y: auto;
	}
	aside {
		padding-top: 1rem;
	}
	footer a {
		margin: 0 1rem;
	}
}
@media screen and (orientation: portrait) {
	body {
		min-width: 360px;
		--mobile-card-width: 75cqmin;
	}
}
@media screen and (max-width: 420px) {
	anura-gallery {
		--asset-width: 10em;
	}
}
@media screen and (max-width: 720px) {
	body {
		--mobile-card-width: 100cqmin;
	}
	body footer {
		flex-wrap: wrap;
		height: 3em;
		padding: 0.25em;
	}
	footer a {
		font-size: 12px;
	}
	footer div {
		height: 1.25em;
	}
	footer div:last-child {
		width: 100%;
	}
	#help-link anura-icon {
		display: none;
	}
	#help-link:after {
		content: attr(title);
	}
}

html, body {
	overscroll-behavior: none; /* iOS */
}
body.anura-lightbox-open main.column {
	overflow-y: hidden;
}

.columns > aside {
	padding-top: 0;
}
.navbar-sub-brand {
	display: flex;
	align-items: center;
	padding-top: 0.6rem;
}
.navbar-sub-brand a:last-child::before {
	content: "|";
	color: var(--eth-grau-dunkel);
	margin: 0 0.6rem 0 0.25rem;
}
.navbar-sub-brand a {
	color: var(--eth-grau-dunkel);
}
#login-button img {
	object-fit: cover;
	width: 24px;
	height: 24px;
	border-radius: 100%;
	border: 1px solid var(--button-color);
}
@media screen and (max-width: 1023px) { /* add labels to navbar buttons for mobile */
	.navbar-menu button, .navbar-menu anura-basket::part(basket-button-main), .navbar-menu #sort {
		width: 100%;
		justify-content: start;
	}
	.navbar-menu button:after, .navbar-menu anura-basket::part(basket-button-main):after, .navbar-menu anura-metadata::part(metadata-button):after, .navbar-menu #sort:before {
		display: inline-block;
		font-size: 1.25em;
		padding-left: 0.5em;
		content: attr(title);
		color: var(--button-color);
	}
	.navbar-menu #sort .navbar-link {
		display: none;
	}
	.navbar-menu anura-basket {
		width: 100%;
		margin-left: 0.6em;
	}
	.navbar-menu anura-metadata {
		width: 100%;
		margin-left: 0.8em;
	}
	.navbar-menu anura-basket::part(basket-button-main):after {
		font-size: 1.25em;
	}
}

#settings {
	display: flex;
	justify-content: end;
	align-items: center;
	margin-top: -2em;
	padding: 1rem 0;
}
#settings .slider {
	margin: 0 0 0 0.5em;
}
#settings anura-counter {
	margin-right: auto;
	padding-top: 0.25em;
}
#settings select {
	margin: 0 0.5em 0 0.25em;
	padding: 0.4em;
	background-color: white;
	border: 1px solid var(--eth-grau-20);
	border-radius: var(--border-radius, 0.25em);
}
#settings select[aria-disabled=true] {
	display: none;
}
#settings select option:checked {
	color: var(--button-color);
}
#settings button {
	border: none;
	background: none;
	cursor: pointer;
	border-bottom: 2px solid transparent;
	transform: translateY(2px);
}
#settings button[aria-current="true"] {
	border-bottom-color: var(--eth-rot-dunkel);
}
#settings button:not([aria-current="true"]):hover {
	border-bottom-color: color-mix(in srgb, var(--eth-rot-dunkel) 50%, transparent);
}
#settings > div {
	display: flex;
}
#main-view {
	margin-bottom: var(--footer-height);
}
anura-modal:not(:defined), anura-gallery:not(:defined), anura-table:not(:defined), anura-asset:not(:defined), anura-category:not(:defined), anura-loader:not(:defined) {
	display: none; /*anti-flicker*/
}
footer {
	position: fixed;
	right: 0;
	bottom: 0;
	left: 0;
	overflow: hidden;
	height: var(--footer-height);
	width: 100%;
	background: black;
	color: white;
	padding: 0.75rem 0.5rem 0.5rem;
	display: flex;
	justify-content: space-between;
}
footer div {
	display: flex;
	align-items: center;
}
footer div:last-child {
	text-align: right;
}
footer a {
	margin: 0 0.25rem;
	color: white;
	white-space: nowrap;
}
footer a:hover {
	color: white; /*bulma*/
	text-decoration: underline;
}
footer anura-icon {
	line-height: 3rem;
}
.screenreader-only { /* https://webaim.org/techniques/css/invisiblecontent */
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	left: -10000px;
}
nav.navbar button:focus, main input[type="range"].slider:focus {
	outline: solid 2px var(--button-color);
}
anura-counter:focus {
	outline: none;
}
anura-counter:focus::part(counter-count) {
	text-decoration: underline var(--button-color);
}
