/* Background by https://www.toptal.com/designers/subtlepatterns/ under CC license */
/* Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fontglyphs, Inc. */
/* https://svgencode.com/ */
/* https://isotropic.co/tool/hex-color-to-css-filter/ */
/* Segmented control: https://codepen.io/trevald-the-scripter/pen/eYpYgMp */

/* CSS-RESET */
input[type="text"], input[type="email"], input[type="search"], input[type="password"]
{
	-webkit-appearance: none;
	-moz-appearance: none;
}
html
{
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}
h1
{
	font-size: 2em;
	margin: 0.67em 0;
}
hr
{
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}
pre
{
	font-family: monospace, monospace;
	font-size: 1em;
}
a
{
	background-color: transparent;
}
abbr[title]
{
	border-bottom: none;
	text-decoration: underline;
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted;
}
b, strong
{	font-weight: bolder;
}
code, kbd, samp
{
	font-family: monospace, monospace;
	font-size: 1em;
}
small
{	font-size: 80%;
}
sub, sup
{
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sub
{
	bottom: -0.25em;
}
sup
{
	top: -0.5em;
}
img
{
	border-style: none;
}
button, input, optgroup, select, textarea
{
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}
button, input
{
	overflow: visible;
}
button, select
{
	text-transform: none;
}
button, [type="button"], [type="reset"], [type="submit"]
{
	-webkit-appearance: button;
}
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner
{
	border-style: none;
	padding: 0;
}
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring
{
	outline: 1px dotted ButtonText;
}
fieldset
{
	padding: 0.35em 0.75em 0.625em;
}
legend
{
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}
progress
{
	vertical-align: baseline;
}
textarea
{
	overflow: auto;
}
[type="checkbox"], [type="radio"]
{
	box-sizing: border-box;
	padding: 0;
}
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button
{
	height: auto;
}
[type="search"]
{
	-webkit-appearance: textfield;
	outline-offset: -2px;
}
[type="search"]::-webkit-search-decoration
{
	-webkit-appearance: none;
}
::-webkit-file-upload-button
{
	-webkit-appearance: button;
	font: inherit;
}
details
{
	display: block;
}
summary
{
	display: list-item;
}

.hidden
{
	display: none !important;
}

/* FONTS */
@font-face
{
	font-family: 'Lato';
	src: url('/font/LatoLatin-Regular.woff2') format('woff2') , url('/font/LatoLatin-Regular.woff') format('woff');
	font-style: normal;
	font-weight: normal;
	font-display: swap;
	text-rendering: optimizeLegibility;
	unicode-range: U+0000, U+000D, U+0020-007E, U+00A0-017F, U+0192, U+0218-021B, U+0237, U+02C6-02C7, U+02C9, U+02D8-02DD, U+0394, U+03A9, U+03BC, U+03C0, U+1E80-1E85, U+2010, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20A3-20A4, U+20A7, U+20AC, U+2113, U+2122, U+2126, U+212E, U+2202, U+2206, U+220F, U+2211-2212, U+2215, U+2219-221A, U+221E, U+222B, U+2248, U+2260, U+2264-2265, U+25CA, U+F8FF, U+FB00-FB04;
}

@font-face
{
	font-family: 'Lato';
	src: url('/font/LatoLatin-Bold.woff2') format('woff2') , url('/font/LatoLatin-Bold.woff') format('woff');
	font-style: normal;
	font-weight: bold;
	font-display: swap;
	text-rendering: optimizeLegibility;
	unicode-range: U+0000, U+000D, U+0020-007E, U+00A0-017F, U+0192, U+0218-021B, U+0237, U+02C6-02C7, U+02C9, U+02D8-02DD, U+0394, U+03A9, U+03BC, U+03C0, U+1E80-1E85, U+2010, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20A3-20A4, U+20A7, U+20AC, U+2113, U+2122, U+2126, U+212E, U+2202, U+2206, U+220F, U+2211-2212, U+2215, U+2219-221A, U+221E, U+222B, U+2248, U+2260, U+2264-2265, U+25CA, U+F8FF, U+FB00-FB04;
}

@font-face
{
	font-family: 'Lato';
	src: url('/font/LatoLatin-Italic.woff2') format('woff2') , url('/font/LatoLatin-Italic.woff') format('woff');
	font-style: italic;
	font-weight: normal;
	font-display: swap;
	text-rendering: optimizeLegibility;
	unicode-range: U+0000, U+000D, U+0020-007E, U+00A0-017F, U+0192, U+0218-021B, U+0237, U+02C6-02C7, U+02C9, U+02D8-02DD, U+0394, U+03A9, U+03BC, U+03C0, U+1E80-1E85, U+2010, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20A3-20A4, U+20A7, U+20AC, U+2113, U+2122, U+2126, U+212E, U+2202, U+2206, U+220F, U+2211-2212, U+2215, U+2219-221A, U+221E, U+222B, U+2248, U+2260, U+2264-2265, U+25CA, U+F8FF, U+FB00-FB04;
}

@font-face
{
	font-family: 'Lato';
	src: url('/font/LatoLatin-BoldItalic.woff2') format('woff2') , url('/font/LatoLatin-BoldItalic.woff') format('woff');
	font-style: italic;
	font-weight: bold;
	font-display: swap;
	text-rendering: optimizeLegibility;
	unicode-range: U+0000, U+000D, U+0020-007E, U+00A0-017F, U+0192, U+0218-021B, U+0237, U+02C6-02C7, U+02C9, U+02D8-02DD, U+0394, U+03A9, U+03BC, U+03C0, U+1E80-1E85, U+2010, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20A3-20A4, U+20A7, U+20AC, U+2113, U+2122, U+2126, U+212E, U+2202, U+2206, U+220F, U+2211-2212, U+2215, U+2219-221A, U+221E, U+222B, U+2248, U+2260, U+2264-2265, U+25CA, U+F8FF, U+FB00-FB04;
}

@font-face
{
	font-family: 'Lato';
	src: url('/font/Lato-Regular.woff2') format('woff2') , url('/font/Lato-Regular.woff') format('woff');
	font-style: normal;
	font-weight: normal;
	font-display: swap;
	text-rendering: optimizeLegibility;
	unicode-range: U+0180-0191, U+0193-0217, U+021C-0236, U+0238-02C5, U+02C8, U+02CA-02D7, U+02DE-036F, U+0374-0375, U+037A-037E, U+0384-038A, U+038C, U+038E-0393, U+0395-03A1, U+03A3-03A8, U+03AA-03BB, U+03BD-03BF, U+03C1-03CE, U+03D0-0486, U+0488-0513, U+1D00-1DCA, U+1DFE-1E7F, U+1E86-1E9B, U+1E9E, U+1EA0-1EF9, U+1F00-1F15, U+1F18-1F1D, U+1F20-1F45, U+1F48-1F4D, U+1F50-1F57, U+1F59, U+1F5B, U+1F5D, U+1F5F-1F7D, U+1F80-1FB4, U+1FB6-1FC4, U+1FC6-1FD3, U+1FD6-1FDB, U+1FDD-1FEF, U+1FF2-1FF4, U+1FF6-1FFE, U+2000-200F, U+2012, U+2015-2017, U+201B, U+201F, U+202F, U+2034, U+203C-203E, U+205E-205F, U+2070-2071, U+2074-2094, U+20A0-20A2, U+20A5-20A6, U+20A8-20AB, U+20AD-20B5, U+20B8-20BA, U+20DD, U+2105, U+2116-2117, U+2120, U+2132, U+214D-214E, U+2153-215F, U+2183-2184, U+2190-2199, U+21A8, U+221F, U+2229, U+2261, U+2302, U+2310, U+2320-2321, U+2460-2473, U+24EA-24F4, U+24FF-2500, U+2502, U+250C, U+2510, U+2514, U+2518, U+2C60-2C6C, U+2C74-2C77;
}

@font-face
{
	font-family: 'Lato';
	src: url('/font/Lato-Bold.woff2') format('woff2') , url('/font/Lato-Bold.woff') format('woff');
	font-style: normal;
	font-weight: bold;
	font-display: swap;
	text-rendering: optimizeLegibility;
	unicode-range: U+0180-0191, U+0193-0217, U+021C-0236, U+0238-02C5, U+02C8, U+02CA-02D7, U+02DE-036F, U+0374-0375, U+037A-037E, U+0384-038A, U+038C, U+038E-0393, U+0395-03A1, U+03A3-03A8, U+03AA-03BB, U+03BD-03BF, U+03C1-03CE, U+03D0-0486, U+0488-0513, U+1D00-1DCA, U+1DFE-1E7F, U+1E86-1E9B, U+1E9E, U+1EA0-1EF9, U+1F00-1F15, U+1F18-1F1D, U+1F20-1F45, U+1F48-1F4D, U+1F50-1F57, U+1F59, U+1F5B, U+1F5D, U+1F5F-1F7D, U+1F80-1FB4, U+1FB6-1FC4, U+1FC6-1FD3, U+1FD6-1FDB, U+1FDD-1FEF, U+1FF2-1FF4, U+1FF6-1FFE, U+2000-200F, U+2012, U+2015-2017, U+201B, U+201F, U+202F, U+2034, U+203C-203E, U+205E-205F, U+2070-2071, U+2074-2094, U+20A0-20A2, U+20A5-20A6, U+20A8-20AB, U+20AD-20B5, U+20B8-20BA, U+20DD, U+2105, U+2116-2117, U+2120, U+2132, U+214D-214E, U+2153-215F, U+2183-2184, U+2190-2199, U+21A8, U+221F, U+2229, U+2261, U+2302, U+2310, U+2320-2321, U+2460-2473, U+24EA-24F4, U+24FF-2500, U+2502, U+250C, U+2510, U+2514, U+2518, U+2C60-2C6C, U+2C74-2C77;
}

@font-face
{
	font-family: 'Lato';
	src: url('/font/Lato-Italic.woff2') format('woff2') , url('/font/Lato-Italic.woff') format('woff');
	font-style: italic;
	font-weight: normal;
	font-display: swap;
	text-rendering: optimizeLegibility;
	unicode-range: U+0180-0191, U+0193-0217, U+021C-0236, U+0238-02C5, U+02C8, U+02CA-02D7, U+02DE-036F, U+0374-0375, U+037A-037E, U+0384-038A, U+038C, U+038E-0393, U+0395-03A1, U+03A3-03A8, U+03AA-03BB, U+03BD-03BF, U+03C1-03CE, U+03D0-0486, U+0488-0513, U+1D00-1DCA, U+1DFE-1E7F, U+1E86-1E9B, U+1E9E, U+1EA0-1EF9, U+1F00-1F15, U+1F18-1F1D, U+1F20-1F45, U+1F48-1F4D, U+1F50-1F57, U+1F59, U+1F5B, U+1F5D, U+1F5F-1F7D, U+1F80-1FB4, U+1FB6-1FC4, U+1FC6-1FD3, U+1FD6-1FDB, U+1FDD-1FEF, U+1FF2-1FF4, U+1FF6-1FFE, U+2000-200F, U+2012, U+2015-2017, U+201B, U+201F, U+202F, U+2034, U+203C-203E, U+205E-205F, U+2070-2071, U+2074-2094, U+20A0-20A2, U+20A5-20A6, U+20A8-20AB, U+20AD-20B5, U+20B8-20BA, U+20DD, U+2105, U+2116-2117, U+2120, U+2132, U+214D-214E, U+2153-215F, U+2183-2184, U+2190-2199, U+21A8, U+221F, U+2229, U+2261, U+2302, U+2310, U+2320-2321, U+2460-2473, U+24EA-24F4, U+24FF-2500, U+2502, U+250C, U+2510, U+2514, U+2518, U+2C60-2C6C, U+2C74-2C77;
}

@font-face
{
	font-family: 'Lato';
	src: url('/font/Lato-BoldItalic.woff2') format('woff2') , url('/font/Lato-BoldItalic.woff') format('woff');
	font-style: italic;
	font-weight: bold;
	font-display: swap;
	text-rendering: optimizeLegibility;
	unicode-range: U+0180-0191, U+0193-0217, U+021C-0236, U+0238-02C5, U+02C8, U+02CA-02D7, U+02DE-036F, U+0374-0375, U+037A-037E, U+0384-038A, U+038C, U+038E-0393, U+0395-03A1, U+03A3-03A8, U+03AA-03BB, U+03BD-03BF, U+03C1-03CE, U+03D0-0486, U+0488-0513, U+1D00-1DCA, U+1DFE-1E7F, U+1E86-1E9B, U+1E9E, U+1EA0-1EF9, U+1F00-1F15, U+1F18-1F1D, U+1F20-1F45, U+1F48-1F4D, U+1F50-1F57, U+1F59, U+1F5B, U+1F5D, U+1F5F-1F7D, U+1F80-1FB4, U+1FB6-1FC4, U+1FC6-1FD3, U+1FD6-1FDB, U+1FDD-1FEF, U+1FF2-1FF4, U+1FF6-1FFE, U+2000-200F, U+2012, U+2015-2017, U+201B, U+201F, U+202F, U+2034, U+203C-203E, U+205E-205F, U+2070-2071, U+2074-2094, U+20A0-20A2, U+20A5-20A6, U+20A8-20AB, U+20AD-20B5, U+20B8-20BA, U+20DD, U+2105, U+2116-2117, U+2120, U+2132, U+214D-214E, U+2153-215F, U+2183-2184, U+2190-2199, U+21A8, U+221F, U+2229, U+2261, U+2302, U+2310, U+2320-2321, U+2460-2473, U+24EA-24F4, U+24FF-2500, U+2502, U+250C, U+2510, U+2514, U+2518, U+2C60-2C6C, U+2C74-2C77;
}

/* GLYPHS */
i.glyph
{	
	display: inline-block;
	width: 1em;
	height: 1em;
	background: no-repeat 50% 50%; 
	background-size: contain;
}
i.glyph.white
{
	-webkit-filter: invert(1);
	filter: invert(1);
}
i.glyph.red
{
	-webkit-filter: invert(14%) sepia(91%) saturate(6112%) hue-rotate(1deg) brightness(98%) contrast(117%);
	filter: invert(14%) sepia(91%) saturate(6112%) hue-rotate(1deg) brightness(98%) contrast(117%);

}
i.glyph.green
{
	-webkit-filter:  invert(74%) sepia(63%) saturate(7221%) hue-rotate(88deg) brightness(130%) contrast(115%);
	filter:  invert(74%) sepia(63%) saturate(7221%) hue-rotate(88deg) brightness(130%) contrast(115%);
}
i.glyph.blue
{
	-webkit-filter: invert(9%) sepia(100%) saturate(6428%) hue-rotate(247deg) brightness(94%) contrast(146%);
	filter: invert(9%) sepia(100%) saturate(6428%) hue-rotate(247deg) brightness(94%) contrast(146%);
}

i.glyph.key
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M336 352c97.2 0 176-78.8 176-176S433.2 0 336 0S160 78.8 160 176c0 18.7 2.9 36.8 8.3 53.7L7 391c-4.5 4.5-7 10.6-7 17l0 80c0 13.3 10.7 24 24 24l80 0c13.3 0 24-10.7 24-24l0-40 40 0c13.3 0 24-10.7 24-24l0-40 40 0c6.4 0 12.5-2.5 17-7l33.3-33.3c16.9 5.4 35 8.3 53.7 8.3zM376 96a40 40 0 1 1 0 80 40 40 0 1 1 0-80z'/%3E%3C/svg%3E");
}
i.glyph.add.user
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M96 128a128 128 0 1 1 256 0A128 128 0 1 1 96 128zM0 482.3C0 383.8 79.8 304 178.3 304l91.4 0C368.2 304 448 383.8 448 482.3c0 16.4-13.3 29.7-29.7 29.7L29.7 512C13.3 512 0 498.7 0 482.3zM504 312l0-64-64 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l64 0 0-64c0-13.3 10.7-24 24-24s24 10.7 24 24l0 64 64 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-64 0 0 64c0 13.3-10.7 24-24 24s-24-10.7-24-24z'/%3E%3C/svg%3E");
}
i.glyph.remove.user
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M96 128a128 128 0 1 1 256 0A128 128 0 1 1 96 128zM0 482.3C0 383.8 79.8 304 178.3 304l91.4 0C368.2 304 448 383.8 448 482.3c0 16.4-13.3 29.7-29.7 29.7L29.7 512C13.3 512 0 498.7 0 482.3zM472 200l144 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-144 0c-13.3 0-24-10.7-24-24s10.7-24 24-24z'/%3E%3C/svg%3E");
}
i.glyph.map
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M408 120c0 54.6-73.1 151.9-105.2 192c-7.7 9.6-22 9.6-29.6 0C241.1 271.9 168 174.6 168 120C168 53.7 221.7 0 288 0s120 53.7 120 120zm8 80.4c3.5-6.9 6.7-13.8 9.6-20.6c.5-1.2 1-2.5 1.5-3.7l116-46.4C558.9 123.4 576 135 576 152l0 270.8c0 9.8-6 18.6-15.1 22.3L416 503l0-302.6zM137.6 138.3c2.4 14.1 7.2 28.3 12.8 41.5c2.9 6.8 6.1 13.7 9.6 20.6l0 251.4L32.9 502.7C17.1 509 0 497.4 0 480.4L0 209.6c0-9.8 6-18.6 15.1-22.3l122.6-49zM327.8 332c13.9-17.4 35.7-45.7 56.2-77l0 249.3L192 449.4 192 255c20.5 31.3 42.3 59.6 56.2 77c20.5 25.6 59.1 25.6 79.6 0zM288 152a40 40 0 1 0 0-80 40 40 0 1 0 0 80z'/%3E%3C/svg%3E");
}
i.glyph.trash
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M135.2 17.7C140.6 6.8 151.7 0 163.8 0L284.2 0c12.1 0 23.2 6.8 28.6 17.7L320 32l96 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 96C14.3 96 0 81.7 0 64S14.3 32 32 32l96 0 7.2-14.3zM32 128l384 0 0 320c0 35.3-28.7 64-64 64L96 512c-35.3 0-64-28.7-64-64l0-320zm96 64c-8.8 0-16 7.2-16 16l0 224c0 8.8 7.2 16 16 16s16-7.2 16-16l0-224c0-8.8-7.2-16-16-16zm96 0c-8.8 0-16 7.2-16 16l0 224c0 8.8 7.2 16 16 16s16-7.2 16-16l0-224c0-8.8-7.2-16-16-16zm96 0c-8.8 0-16 7.2-16 16l0 224c0 8.8 7.2 16 16 16s16-7.2 16-16l0-224c0-8.8-7.2-16-16-16z'/%3E%3C/svg%3E");
}
i.glyph.phone
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M164.9 24.6c-7.7-18.6-28-28.5-47.4-23.2l-88 24C12.1 30.2 0 46 0 64C0 311.4 200.6 512 448 512c18 0 33.8-12.1 38.6-29.5l24-88c5.3-19.4-4.6-39.7-23.2-47.4l-96-40c-16.3-6.8-35.2-2.1-46.3 11.6L304.7 368C234.3 334.7 177.3 277.7 144 207.3L193.3 167c13.7-11.2 18.4-30 11.6-46.3l-40-96z'/%3E%3C/svg%3E");
}
i.glyph.mail
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M48 64C21.5 64 0 85.5 0 112c0 15.1 7.1 29.3 19.2 38.4L236.8 313.6c11.4 8.5 27 8.5 38.4 0L492.8 150.4c12.1-9.1 19.2-23.3 19.2-38.4c0-26.5-21.5-48-48-48L48 64zM0 176L0 384c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-208L294.4 339.2c-22.8 17.1-54 17.1-76.8 0L0 176z'/%3E%3C/svg%3E");
}
i.glyph.edit
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M471.6 21.7c-21.9-21.9-57.3-21.9-79.2 0L362.3 51.7l97.9 97.9 30.1-30.1c21.9-21.9 21.9-57.3 0-79.2L471.6 21.7zm-299.2 220c-6.1 6.1-10.8 13.6-13.5 21.9l-29.6 88.8c-2.9 8.6-.6 18.1 5.8 24.6s15.9 8.7 24.6 5.8l88.8-29.6c8.2-2.7 15.7-7.4 21.9-13.5L437.7 172.3 339.7 74.3 172.4 241.7zM96 64C43 64 0 107 0 160L0 416c0 53 43 96 96 96l256 0c53 0 96-43 96-96l0-96c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 96c0 17.7-14.3 32-32 32L96 448c-17.7 0-32-14.3-32-32l0-256c0-17.7 14.3-32 32-32l96 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L96 64z'/%3E%3C/svg%3E");
}
i.glyph.language
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M0 128C0 92.7 28.7 64 64 64l192 0 48 0 16 0 256 0c35.3 0 64 28.7 64 64l0 256c0 35.3-28.7 64-64 64l-256 0-16 0-48 0L64 448c-35.3 0-64-28.7-64-64L0 128zm320 0l0 256 256 0 0-256-256 0zM178.3 175.9c-3.2-7.2-10.4-11.9-18.3-11.9s-15.1 4.7-18.3 11.9l-64 144c-4.5 10.1 .1 21.9 10.2 26.4s21.9-.1 26.4-10.2l8.9-20.1 73.6 0 8.9 20.1c4.5 10.1 16.3 14.6 26.4 10.2s14.6-16.3 10.2-26.4l-64-144zM160 233.2L179 276l-38 0 19-42.8zM448 164c11 0 20 9 20 20l0 4 44 0 16 0c11 0 20 9 20 20s-9 20-20 20l-2 0-1.6 4.5c-8.9 24.4-22.4 46.6-39.6 65.4c.9 .6 1.8 1.1 2.7 1.6l18.9 11.3c9.5 5.7 12.5 18 6.9 27.4s-18 12.5-27.4 6.9l-18.9-11.3c-4.5-2.7-8.8-5.5-13.1-8.5c-10.6 7.5-21.9 14-34 19.4l-3.6 1.6c-10.1 4.5-21.9-.1-26.4-10.2s.1-21.9 10.2-26.4l3.6-1.6c6.4-2.9 12.6-6.1 18.5-9.8l-12.2-12.2c-7.8-7.8-7.8-20.5 0-28.3s20.5-7.8 28.3 0l14.6 14.6 .5 .5c12.4-13.1 22.5-28.3 29.8-45L448 228l-72 0c-11 0-20-9-20-20s9-20 20-20l52 0 0-4c0-11 9-20 20-20z'/%3E%3C/svg%3E");	
}
i.glyph.addressbook
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M96 0C60.7 0 32 28.7 32 64l0 384c0 35.3 28.7 64 64 64l288 0c35.3 0 64-28.7 64-64l0-384c0-35.3-28.7-64-64-64L96 0zM208 288l64 0c44.2 0 80 35.8 80 80c0 8.8-7.2 16-16 16l-192 0c-8.8 0-16-7.2-16-16c0-44.2 35.8-80 80-80zm-32-96a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zM512 80c0-8.8-7.2-16-16-16s-16 7.2-16 16l0 64c0 8.8 7.2 16 16 16s16-7.2 16-16l0-64zM496 192c-8.8 0-16 7.2-16 16l0 64c0 8.8 7.2 16 16 16s16-7.2 16-16l0-64c0-8.8-7.2-16-16-16zm16 144c0-8.8-7.2-16-16-16s-16 7.2-16 16l0 64c0 8.8 7.2 16 16 16s16-7.2 16-16l0-64z'/%3E%3C/svg%3E");
}
i.glyph.logout
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M288 32c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 224c0 17.7 14.3 32 32 32s32-14.3 32-32l0-224zM143.5 120.6c13.6-11.3 15.4-31.5 4.1-45.1s-31.5-15.4-45.1-4.1C49.7 115.4 16 181.8 16 256c0 132.5 107.5 240 240 240s240-107.5 240-240c0-74.2-33.8-140.6-86.6-184.6c-13.6-11.3-33.8-9.4-45.1 4.1s-9.4 33.8 4.1 45.1c38.9 32.3 63.5 81 63.5 135.4c0 97.2-78.8 176-176 176s-176-78.8-176-176c0-54.4 24.7-103.1 63.5-135.4z'/%3E%3C/svg%3E");
}
i.glyph.list
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M0 96C0 60.7 28.7 32 64 32l448 0c35.3 0 64 28.7 64 64l0 320c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96zM128 288a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm32-128a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM128 384a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm96-248c-13.3 0-24 10.7-24 24s10.7 24 24 24l224 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-224 0zm0 96c-13.3 0-24 10.7-24 24s10.7 24 24 24l224 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-224 0zm0 96c-13.3 0-24 10.7-24 24s10.7 24 24 24l224 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-224 0z'/%3E%3C/svg%3E");
}
i.glyph.calendar
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M128 0c17.7 0 32 14.3 32 32l0 32 128 0 0-32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 32 48 0c26.5 0 48 21.5 48 48l0 48L0 160l0-48C0 85.5 21.5 64 48 64l48 0 0-32c0-17.7 14.3-32 32-32zM0 192l448 0 0 272c0 26.5-21.5 48-48 48L48 512c-26.5 0-48-21.5-48-48L0 192zm64 80l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zm128 0l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zm144-16c-8.8 0-16 7.2-16 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0zM64 400l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zm144-16c-8.8 0-16 7.2-16 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0zm112 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16z'/%3E%3C/svg%3E");
}
i.glyph.house
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M575.8 255.5c0 18-15 32.1-32 32.1l-32 0 .7 160.2c0 2.7-.2 5.4-.5 8.1l0 16.2c0 22.1-17.9 40-40 40l-16 0c-1.1 0-2.2 0-3.3-.1c-1.4 .1-2.8 .1-4.2 .1L416 512l-24 0c-22.1 0-40-17.9-40-40l0-24 0-64c0-17.7-14.3-32-32-32l-64 0c-17.7 0-32 14.3-32 32l0 64 0 24c0 22.1-17.9 40-40 40l-24 0-31.9 0c-1.5 0-3-.1-4.5-.2c-1.2 .1-2.4 .2-3.6 .2l-16 0c-22.1 0-40-17.9-40-40l0-112c0-.9 0-1.9 .1-2.8l0-69.7-32 0c-18 0-32-14-32-32.1c0-9 3-17 10-24L266.4 8c7-7 15-8 22-8s15 2 21 7L564.8 231.5c8 7 12 15 11 24z'/%3E%3C/svg%3E");
}
i.glyph.save
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-242.7c0-17-6.7-33.3-18.7-45.3L352 50.7C340 38.7 323.7 32 306.7 32L64 32zm0 96c0-17.7 14.3-32 32-32l192 0c17.7 0 32 14.3 32 32l0 64c0 17.7-14.3 32-32 32L96 224c-17.7 0-32-14.3-32-32l0-64zM224 288a64 64 0 1 1 0 128 64 64 0 1 1 0-128z'/%3E%3C/svg%3E");
}
i.glyph.pdf
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M0 64C0 28.7 28.7 0 64 0L224 0l0 128c0 17.7 14.3 32 32 32l128 0 0 144-208 0c-35.3 0-64 28.7-64 64l0 144-48 0c-35.3 0-64-28.7-64-64L0 64zm384 64l-128 0L256 0 384 128zM176 352l32 0c30.9 0 56 25.1 56 56s-25.1 56-56 56l-16 0 0 32c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-48 0-80c0-8.8 7.2-16 16-16zm32 80c13.3 0 24-10.7 24-24s-10.7-24-24-24l-16 0 0 48 16 0zm96-80l32 0c26.5 0 48 21.5 48 48l0 64c0 26.5-21.5 48-48 48l-32 0c-8.8 0-16-7.2-16-16l0-128c0-8.8 7.2-16 16-16zm32 128c8.8 0 16-7.2 16-16l0-64c0-8.8-7.2-16-16-16l-16 0 0 96 16 0zm80-112c0-8.8 7.2-16 16-16l48 0c8.8 0 16 7.2 16 16s-7.2 16-16 16l-32 0 0 32 32 0c8.8 0 16 7.2 16 16s-7.2 16-16 16l-32 0 0 48c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-64 0-64z'/%3E%3C/svg%3E");
}
i.glyph.profile
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l448 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32zm80 256l64 0c44.2 0 80 35.8 80 80c0 8.8-7.2 16-16 16L80 384c-8.8 0-16-7.2-16-16c0-44.2 35.8-80 80-80zm-32-96a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zm256-32l128 0c8.8 0 16 7.2 16 16s-7.2 16-16 16l-128 0c-8.8 0-16-7.2-16-16s7.2-16 16-16zm0 64l128 0c8.8 0 16 7.2 16 16s-7.2 16-16 16l-128 0c-8.8 0-16-7.2-16-16s7.2-16 16-16zm0 64l128 0c8.8 0 16 7.2 16 16s-7.2 16-16 16l-128 0c-8.8 0-16-7.2-16-16s7.2-16 16-16z'/%3E%3C/svg%3E");
}
i.glyph.apple
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M318.7 268.7c-.2-36.7 16.4-64.4 50-84.8-18.8-26.9-47.2-41.7-84.7-44.6-35.5-2.8-74.3 20.7-88.5 20.7-15 0-49.4-19.7-76.4-19.7C63.3 141.2 4 184.8 4 273.5q0 39.3 14.4 81.2c12.8 36.7 59 126.7 107.2 125.2 25.2-.6 43-17.9 75.8-17.9 31.8 0 48.3 17.9 76.4 17.9 48.6-.7 90.4-82.5 102.6-119.3-65.2-30.7-61.7-90-61.7-91.9zm-56.6-164.2c27.3-32.4 24.8-61.9 24-72.5-24.1 1.4-52 16.4-67.9 34.9-17.5 19.8-27.8 44.3-25.6 71.9 26.1 2 49.9-11.4 69.5-34.3z'/%3E%3C/svg%3E");
}
i.glyph.google
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 488 512'%3E%3Cpath d='M488 261.8C488 403.3 391.1 504 248 504 110.8 504 0 393.2 0 256S110.8 8 248 8c66.8 0 123 24.5 166.3 64.9l-67.5 64.9C258.5 52.6 94.3 116.6 94.3 256c0 86.5 69.1 156.6 153.7 156.6 98.2 0 135-70.4 140.8-106.9H248v-85.3h236.1c2.3 12.7 3.9 24.9 3.9 41.4z'/%3E%3C/svg%3E");
}
i.glyph.repeat
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M0 224c0 17.7 14.3 32 32 32s32-14.3 32-32c0-53 43-96 96-96l160 0 0 32c0 12.9 7.8 24.6 19.8 29.6s25.7 2.2 34.9-6.9l64-64c12.5-12.5 12.5-32.8 0-45.3l-64-64c-9.2-9.2-22.9-11.9-34.9-6.9S320 19.1 320 32l0 32L160 64C71.6 64 0 135.6 0 224zm512 64c0-17.7-14.3-32-32-32s-32 14.3-32 32c0 53-43 96-96 96l-160 0 0-32c0-12.9-7.8-24.6-19.8-29.6s-25.7-2.2-34.9 6.9l-64 64c-12.5 12.5-12.5 32.8 0 45.3l64 64c9.2 9.2 22.9 11.9 34.9 6.9s19.8-16.6 19.8-29.6l0-32 160 0c88.4 0 160-71.6 160-160z'/%3E%3C/svg%3E");
}
i.glyph.search
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z'/%3E%3C/svg%3E");
}
i.glyph.x
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z'/%3E%3C/svg%3E");
}
i.glyph.arrow.left
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l192 192c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256 246.6 86.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-192 192z'/%3E%3C/svg%3E");
}
i.glyph.arrow.right
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M310.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 256 73.4 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z'/%3E%3C/svg%3E");
}
i.glyph.check
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z'/%3E%3C/svg%3E");
}
i.glyph.legal
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 512'%3E%3Cpath d='M64.9 96C67.1 84.4 73.7 76.2 86 70.6c13.8-6.2 34.8-8.9 61.2-4.5c8.8 1.4 36.1 7.1 44.1 9.3c17 4.8 34.7-5.1 39.5-22.2s-5.1-34.7-22.2-39.5c-11.1-3.1-41-9.2-50.9-10.8C123-2.7 88.3-.6 59.7 12.3C29.9 25.8 7.5 50.9 1.6 86.5c-.1 .5-.2 1.1-.2 1.6c-2.2 19.7 .3 37.9 8.1 54.1c7.7 16.1 19.4 28 32 36.9c.6 .5 1.3 .9 2 1.4C22.3 194.2 6.5 215.1 1.7 243c-.1 .6-.2 1.1-.2 1.7c-2.3 19.3 .4 37.1 8.4 53c7.9 15.6 19.8 27 32.3 35.5c22.4 15.2 51.9 24 75.4 31c0 0 0 0 0 0l3.7 1.1c27.2 8.2 46.9 14.6 59.4 23.8c5.5 4 8.2 7.6 9.5 10.9c1.3 3.2 2.6 8.6 .9 18.1c-1.7 10.1-7.7 18-20.7 23.5c-14 6-35.4 8.5-62 4.4c-12.8-2.1-35.1-9.7-54.1-16.2c0 0 0 0 0 0c-4.3-1.5-8.5-2.9-12.3-4.2C25.3 420 7.2 429.1 1.6 445.8s3.5 34.9 20.3 40.5c2.6 .8 5.7 1.9 9.2 3.1c18.6 6.3 48.5 16.6 67.3 19.6c0 0 0 0 0 0l.2 0c34.5 5.4 68.8 3.4 97.2-8.7c29.4-12.6 52.5-36.5 58.5-71.5c3.3-19.3 1.9-37.4-5-53.9c-6.3-15-16.4-26.4-27.6-35.2c16.5-13.9 28.5-33.2 32.6-58.2c3.2-19.8 1.9-38.3-4.8-55.1c-6.7-16.8-17.8-29.4-30.2-39c-22.8-17.6-53.6-27.4-77.7-35l-1.4-.5c-27.4-8.7-47.8-15.3-61.5-25c-6.1-4.4-9.5-8.5-11.4-12.4c-1.8-3.7-3.2-9.3-2.3-18.5zm76.7 208.5l-.6-.2-1.4-.4c-27.4-8.2-47.9-14.5-61.7-23.8c-6.2-4.2-9.3-7.9-11-11.3c-1.5-3-2.9-7.7-2.1-15.7c1.9-9.7 7.9-17.3 20.5-22.7c14-6 35.4-8.5 62.1-4.3l16.4 2.6c6.3 2.9 11.7 6 16.2 9.5c5.5 4.2 8.4 8.2 10 12.2c1.6 4 2.8 10.4 1.1 20.9c-2.4 14.7-12.8 26.4-37.1 31l-12.4 2.3z'/%3E%3C/svg%3E");
}
i.glyph.back
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M48.5 224L40 224c-13.3 0-24-10.7-24-24L16 72c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2L98.6 96.6c87.6-86.5 228.7-86.2 315.8 1c87.5 87.5 87.5 229.3 0 316.8s-229.3 87.5-316.8 0c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0c62.5 62.5 163.8 62.5 226.3 0s62.5-163.8 0-226.3c-62.2-62.2-162.7-62.5-225.3-1L185 183c6.9 6.9 8.9 17.2 5.2 26.2s-12.5 14.8-22.2 14.8L48.5 224z'/%3E%3C/svg%3E");
}
i.glyph.info
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM216 336l24 0 0-64-24 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l48 0c13.3 0 24 10.7 24 24l0 88 8 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-80 0c-13.3 0-24-10.7-24-24s10.7-24 24-24zm40-208a32 32 0 1 1 0 64 32 32 0 1 1 0-64z'/%3E%3C/svg%3E");
}
i.glyph.calendar.add
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M96 32l0 32L48 64C21.5 64 0 85.5 0 112l0 48 448 0 0-48c0-26.5-21.5-48-48-48l-48 0 0-32c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 32L160 64l0-32c0-17.7-14.3-32-32-32S96 14.3 96 32zM448 192L0 192 0 464c0 26.5 21.5 48 48 48l352 0c26.5 0 48-21.5 48-48l0-272zM224 248c13.3 0 24 10.7 24 24l0 56 56 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-56 0 0 56c0 13.3-10.7 24-24 24s-24-10.7-24-24l0-56-56 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l56 0 0-56c0-13.3 10.7-24 24-24z'/%3E%3C/svg%3E");
}
i.glyph.calendar.remove
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M128 0c17.7 0 32 14.3 32 32l0 32 128 0 0-32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 32 48 0c26.5 0 48 21.5 48 48l0 48L0 160l0-48C0 85.5 21.5 64 48 64l48 0 0-32c0-17.7 14.3-32 32-32zM0 192l448 0 0 272c0 26.5-21.5 48-48 48L48 512c-26.5 0-48-21.5-48-48L0 192zM312 376c13.3 0 24-10.7 24-24s-10.7-24-24-24l-176 0c-13.3 0-24 10.7-24 24s10.7 24 24 24l176 0z'/%3E%3C/svg%3E");
}
i.glyph.clock
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 0a256 256 0 1 1 0 512A256 256 0 1 1 256 0zM232 120l0 136c0 8 4 15.5 10.7 20l96 64c11 7.4 25.9 4.4 33.3-6.7s4.4-25.9-6.7-33.3L280 243.2 280 120c0-13.3-10.7-24-24-24s-24 10.7-24 24z'/%3E%3C/svg%3E");
}
i.glyph.group
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M72 88a56 56 0 1 1 112 0A56 56 0 1 1 72 88zM64 245.7C54 256.9 48 271.8 48 288s6 31.1 16 42.3l0-84.7zm144.4-49.3C178.7 222.7 160 261.2 160 304c0 34.3 12 65.8 32 90.5l0 21.5c0 17.7-14.3 32-32 32l-64 0c-17.7 0-32-14.3-32-32l0-26.8C26.2 371.2 0 332.7 0 288c0-61.9 50.1-112 112-112l32 0c24 0 46.2 7.5 64.4 20.3zM448 416l0-21.5c20-24.7 32-56.2 32-90.5c0-42.8-18.7-81.3-48.4-107.7C449.8 183.5 472 176 496 176l32 0c61.9 0 112 50.1 112 112c0 44.7-26.2 83.2-64 101.2l0 26.8c0 17.7-14.3 32-32 32l-64 0c-17.7 0-32-14.3-32-32zm8-328a56 56 0 1 1 112 0A56 56 0 1 1 456 88zM576 245.7l0 84.7c10-11.3 16-26.1 16-42.3s-6-31.1-16-42.3zM320 32a64 64 0 1 1 0 128 64 64 0 1 1 0-128zM240 304c0 16.2 6 31 16 42.3l0-84.7c-10 11.3-16 26.1-16 42.3zm144-42.3l0 84.7c10-11.3 16-26.1 16-42.3s-6-31.1-16-42.3zM448 304c0 44.7-26.2 83.2-64 101.2l0 42.8c0 17.7-14.3 32-32 32l-64 0c-17.7 0-32-14.3-32-32l0-42.8c-37.8-18-64-56.5-64-101.2c0-61.9 50.1-112 112-112l32 0c61.9 0 112 50.1 112 112z'/%3E%3C/svg%3E");
}
i.glyph.plus
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M256 80c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 144L48 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l144 0 0 144c0 17.7 14.3 32 32 32s32-14.3 32-32l0-144 144 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-144 0 0-144z'/%3E%3C/svg%3E");
}
i.glyph.osm
{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M3.563 31.959c-0.469-0.12-0.713-0.313-1.964-1.557-1.484-1.484-1.577-1.631-1.572-2.401 0-0.86-0.267-0.552 4.489-5.317 4.796-4.808 4.552-4.6 5.416-4.6 0.407 0 0.505 0.021 0.828 0.188l0.371 0.188 2.323-2.323-0.292-0.459c-0.563-0.885-1.099-2.172-1.339-3.24-0.677-3.016 0.052-6.172 1.975-8.588 3.317-4.156 9.276-5.084 13.676-2.115 2.417 1.625 3.991 4.129 4.439 7.083 0.093 0.625 0.093 2.104 0 2.767-0.297 2.228-1.333 4.296-2.939 5.869-0.744 0.771-1.624 1.407-2.593 1.869-1.276 0.641-2.364 0.943-3.839 1.068-2.099 0.177-4.427-0.407-6.208-1.547l-0.459-0.292-2.328 2.323 0.188 0.376c0.167 0.323 0.187 0.421 0.187 0.823 0.005 0.864 0.209 0.62-4.567 5.396-3.683 3.676-4.251 4.219-4.532 4.348-0.359 0.167-0.916 0.229-1.26 0.141zM23.312 18.599c2.672-0.495 4.953-2.235 6.141-4.677 1.853-3.869 0.604-8.411-2.975-10.812-0.848-0.573-2.036-1.057-3.156-1.281-0.771-0.156-2.411-0.14-3.219 0.032-1.172 0.244-2.287 0.728-3.265 1.421-0.593 0.416-1.573 1.396-1.984 1.979-2.292 3.209-2.084 7.573 0.505 10.543 1.337 1.541 3.187 2.552 5.203 2.848 0.677 0.104 2.057 0.079 2.755-0.047zM18.328 28.432c-0.979-0.271-1.953-0.563-2.927-0.864-0.032-0.037 1.609-5.865 1.677-5.932 0.031-0.037 5.656 1.536 5.885 1.645 0.083 0.036-0.005 0.385-0.704 2.801-0.281 0.996-0.563 1.991-0.844 2.985-0.036 0.115-0.093 0.208-0.129 0.208-0.036-0.005-1.369-0.385-2.959-0.844zM22.213 29.136c0-0.073 1.636-5.781 1.661-5.797 0.063-0.047 5.765-1.641 5.787-1.615 0.027 0.025-1.599 5.781-1.64 5.812-0.027 0.027-5.5 1.589-5.677 1.625-0.073 0.016-0.131 0-0.131-0.025zM12.74 26.584c1.124-1.136 2.129-2.168 2.229-2.303 0.228-0.292 0.541-0.975 0.629-1.355 0.037-0.156 0.073-0.468 0.079-0.692l0.016-0.412 0.239-0.068c0.141-0.036 0.261-0.057 0.271-0.047 0.032 0.037-1.609 5.761-1.661 5.813-0.025 0.020-0.901 0.285-1.953 0.583l-1.895 0.541 2.047-2.057zM23.792 22.505c-0.032-0.084-0.057-0.167-0.079-0.251l-0.063-0.208 0.209-0.036c1.785-0.303 3.703-1.141 5.213-2.281 0.213-0.167 0.333-0.229 0.353-0.183 0.068 0.219 0.36 1.265 0.355 1.281-0.047 0.041-5.975 1.708-5.989 1.683zM3.683 20.771c-0.068-0.052-1.573-5.151-1.688-5.719-0.021-0.115 0.193-0.057 2.901 0.713 2.823 0.808 2.921 0.839 2.959 0.989 0.041 0.131 0.015 0.172-0.167 0.297-0.109 0.079-1.027 0.964-2.032 1.969-0.604 0.619-1.224 1.224-1.849 1.823-0.020 0-0.077-0.032-0.124-0.073zM4.776 14.932c-1.583-0.453-2.885-0.828-2.891-0.833-0.021-0.016 1.683-5.911 1.713-5.948 0.032-0.025 5.896 1.615 5.959 1.672 0.011 0.011-0.36 1.355-0.823 2.984-0.771 2.693-0.86 2.964-0.964 2.959-0.068 0-1.411-0.38-3-0.833zM8.719 15.651c0.016-0.041 0.287-0.963 0.593-2.047l0.557-1.964 0.079 0.428c0.125 0.739 0.355 1.583 0.62 2.317 0.14 0.396 0.244 0.719 0.239 0.729-0.009 0.011-0.443 0.136-0.957 0.281-0.521 0.145-0.989 0.281-1.047 0.301-0.079 0.021-0.105 0.005-0.084-0.047zM6.541 8.151c-1.583-0.453-2.891-0.848-2.905-0.875-0.057-0.083-1.663-5.76-1.641-5.781 0.032-0.036 5.745 1.604 5.803 1.661 0.063 0.068 1.703 5.839 1.661 5.833l-2.912-0.839zM9.407 5.864l-0.693-2.405-0.104-0.376 2.255-0.645c1.245-0.349 2.297-0.656 2.349-0.677 0.041-0.020-0.115 0.188-0.349 0.448-1.233 1.36-2.129 2.995-2.609 4.765-0.077 0.245-0.135 0.496-0.176 0.745 0 0.396-0.157-0.031-0.672-1.849z' /%3E%3C/svg%3E");
}


/* BUTTONS */
.button
{
	display: block;
	width: 100%;
	border-radius: 0.33em;
	background: #e0e1e2;
	color: black;
	padding: 1em;
	font-weight: bold;
	text-align: center;
	border: none;
	transition: background-color .2s ease;
	cursor: pointer;
}
.button:disabled
{
	opacity: 0.5;
	cursor: not-allowed;
}
.button:not([disabled]):hover
{
	background: #cacbcd;
}
.button .glyph
{	
	position: relative;
    top: 0.125em;
	margin-right: 0.5em;
}
.button.blue
{
	background-color: #2185d0;
	color: white;
}
.button.blue:not([disabled]):hover
{
	background-color: #1678c2;
}
.button.red
{
	background-color: #db2828;
	color: white;
}
.button.red:not([disabled]):hover
{
	background-color: #d01919;
	color: white;
}
.button.green
{
	background-color: #21ba45;
	color: white;
}
.button.green:not([disabled]):hover
{
	background-color: #16ab39;
}
.button.grey
{
	background-color: #767676;
	color: white;
}
.button.grey:not([disabled]):hover
{
	background-color: #838383;
}
.button.teal
{
	background-color: #00b5ad;
	color: white;
}
.button.teal:not([disabled]):hover
{
	background-color: #009c95;
}


/* SEGMENTED CONTROL */
.segmented-controls
{
	display: flex;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
	transition: all 0.3s ease;
	margin-bottom: 1em;
}
.segmented-controls input
{
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
	clip: rect(1px 1px 1px 1px);
	clip: rect(1px, 1px, 1px, 1px);
	white-space: nowrap;
}
.segmented-controls label
{
	grid-row: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	cursor: pointer;
	flex: 1 1 0px;
	position: relative;
	z-index: 2;
	transition: inherit;
}
.segmented-controls label:last-of-type
{
	z-index: 1;
}
.segmented-controls label:last-of-type::after
{
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -2;
	background-color: black;
	transition: inherit;
}
.segmented-controls input:nth-last-of-type(2):checked ~ label:last-of-type::after
{
	transform: translateX(-100%);
}
.segmented-controls input:nth-last-of-type(3):checked ~ label:last-of-type::after
{
	transform: translateX(-200%);
}
.segmented-controls input:nth-last-of-type(4):checked ~ label:last-of-type::after
{
	transform: translateX(-300%);
}
.segmented-controls input:nth-last-of-type(5):checked ~ label:last-of-type::after
{
	transform: translateX(-400%);
}
.segmented-controls input:nth-last-of-type(6):checked ~ label:last-of-type::after
{
	transform: translateX(-500%);
}
.segmented-controls input:nth-last-of-type(7):checked ~ label:last-of-type::after
{
	transform: translateX(-600%);
}
.segmented-controls input:nth-last-of-type(8):checked ~ label:last-of-type::after
{
	transform: translateX(-700%);
}
.segmented-controls input:nth-last-of-type(9):checked ~ label:last-of-type::after
{
	transform: translateX(-800%);
}
.segmented-controls input:nth-last-of-type(10):checked ~ label:last-of-type::after
{
	transform: translateX(-900%);
}
.segmented-controls
{
	border-radius: 0.33em;
	background: #f5f5f5;
	height: 3em;
	padding: 0.125em;
}
.segmented-controls label
{
	line-height: 1;
}
.segmented-controls label:not(:first-of-type)::before
{
	content: '';
	position: absolute;
	z-index: -3;
	top: 0.5em;
	left: 0;
	bottom: 0.5em;
	width: 1px;
	background: rgba(0, 0, 0, 0.15);
	transition: inherit;
}
.segmented-controls input:checked + label
{
	font-weight: bold;
}
.segmented-controls input:checked + label::before, .segmented-controls input:checked + label + input + label::before
{
	opacity: 0;
}
.segmented-controls label:last-of-type::after
{
	background-color: white;
	border-radius: 0.33em;
	border: 0.5px solid rgba(0, 0, 0, 0.04);
	box-shadow: 0px 3px 1px rgba(0, 0, 0, 0.04), 0px 3px 8px rgba(0, 0, 0, 0.12);
}


/* LDS-Roller by loading.io under CC0 license */
.lds-roller
{	display: inline-block;
	position: relative;
	width: 5em;
	height: 5em;
	color: white;
}
.lds-roller.centered
{
	display: block;
	margin: auto;
}
.lds-roller div
{	animation: lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
	transform-origin: 2.5em 2.5em;
}
.lds-roller div:after
{	content: " ";
	display: block;
	position: absolute;
	width: 0.4375em;
	height: 0.4375em;
	border-radius: 50%;
	background: #fff;
	margin: -0.25em 0 0 -0.25em;
}
.lds-roller div:nth-child(1)
{	animation-delay: -0.036s;
}
.lds-roller div:nth-child(1):after
{	top: 3.9375em;
	left: 3.9375em;
}
.lds-roller div:nth-child(2)
{	animation-delay: -0.072s;
}
.lds-roller div:nth-child(2):after
{	top: 4.25em;
	left: 3.5em;
}
.lds-roller div:nth-child(3)
{	animation-delay: -0.108s;
}
.lds-roller div:nth-child(3):after
{	top: 4.4375em;
	left: 3em;
}
.lds-roller div:nth-child(4)
{	animation-delay: -0.144s;
}
.lds-roller div:nth-child(4):after
{	top: 4.5em;
	left: 2.5em;
}
.lds-roller div:nth-child(5)
{	animation-delay: -0.18s;
}
.lds-roller div:nth-child(5):after
{	top: 4.4375em;
	left: 2em;
}
.lds-roller div:nth-child(6)
{	animation-delay: -0.216s;
}
.lds-roller div:nth-child(6):after
{	top: 4.25em;
	left: 1.5em;
}
.lds-roller div:nth-child(7)
{	animation-delay: -0.252s;
}
.lds-roller div:nth-child(7):after
{	top: 3.9375em;
	left: 1.0625em;
}
.lds-roller div:nth-child(8)
{	animation-delay: -0.288s;
}
.lds-roller div:nth-child(8):after
{	top: 3.5em;
	left: 0.75em;
}
@keyframes lds-roller
{	0% 
	{	transform: rotate(0deg);
	}
  	100% 
	{	transform: rotate(360deg);
	}
}


/* NAVIGATION */
#header-section
{
	display: flex;
	position: absolute;
    top: 0;
    left: 0;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 3.125em;
	margin: 0;
	padding: 1em;	
	background-color: rgba(185, 204, 225, 0.95);
	color: white;
	z-index: 1000;
}
#header-section-logo img
{	
	width: 3em;
	margin-top: 0.5em;
}
#header-section-caption
{
	font-weight: bold;
	font-size: 1.5em;
}

.menu
{
	display: flex;
	flex-direction: row;
    position: absolute;
    top: 0;
    left: 0;
	list-style-type: none;
	margin: 0;
	padding: 0;
    margin-top: 3.125em;
    flex-direction: column;
    width: 100%;
    justify-content: center;
    align-items: center;
}
.menu > li
{
	display: flex;
	justify-content: center;
	width: 100%;
	color: white;
	background-color: rgba(0, 0, 0, 0.8);
	overflow: hidden;
}
.menu > li:not(:last-child)
{
	border-bottom: 1px solid #444;
}
.menu > li a
{	
	width: 100%;
	padding: 0.5em 0;
	text-align: center;
	text-decoration: none;
	color: white;
	font-weight: bold;
	transition: background-color: 0.2s ease;
}
.menu > li a:hover
{
	background-color: rgba(0, 0, 0, 0.88);
}
.menu > li .glyph
{	
	margin-right: 0.5em;
	margin-bottom: -0.125em;
}

.menu-button-container
{
	display: flex;
	height: 100%;
	width: 2em;
	cursor: pointer;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
#menu-toggle
{	display: none;
}
.menu-button, .menu-button::before, .menu-button::after
{	display: block;
	background-color: #fff;
	position: absolute;
	height: 0.25em;
	width: 2em;
	transition: transform 400ms cubic-bezier(0.23, 1, 0.32, 1);
	border-radius: 0.125em;
}
.menu-button::before
{
	content: '';
	margin-top: -0.5em;
}
.menu-button::after
{
	content: '';
	margin-top: 0.5em;
}
#menu-toggle:checked + .menu-button-container .menu-button::before
{
	margin-top: 0px;
	transform: rotate(405deg);
}
#menu-toggle:checked + .menu-button-container .menu-button
{
	background: rgba(255, 255, 255, 0);
}
#menu-toggle:checked + .menu-button-container .menu-button::after
{
	margin-top: 0px;
	transform: rotate(-405deg);
}
#menu-toggle ~ .menu li
{
	height: 0;
	margin: 0;
	padding: 0;
	border: 0;
	transition: height 400ms cubic-bezier(0.23, 1, 0.32, 1);
}
#menu-toggle:checked ~ .menu li
{
	border: 1px solid #333;
	height: 2.5em;
	transition: height 400ms cubic-bezier(0.23, 1, 0.32, 1);
}

#header-sub-section
{
    display: block;
	position: absolute;
    top: 0;
    left: 0;
	margin: 0;
	padding: 0;
    margin-top: 3.125em;
    width: 100%;
	background-color: rgba(0, 0, 0, 0.7);
}
#menu-toggle:checked ~ #header-sub-section
{
	display: none !important;
}
#header-sub-section-content-container
{
	margin: 0 auto;
    padding: 0.5em;
    width: 100%;
    max-width: 64em;
	height: 3.8em;
}


/* SEARCH-CONTAINER */
.search-container
{
	display: flex;
	width: 100%;
	border: none;
    font-size: 1.125em;
    padding: 0.5em 0.75em;
    border-radius: 0.33em;
    background-color: white;
    color: black;
}
.search-container input
{	border: none;
    width: 100%;
    height: 1.5em;
    outline: none;
    padding-left: 0.5em;
}
.search-container .glyph
{
	margin-top: 0.25em;
}
.search-container .glyph:hover
{
	cursor: pointer;
}

/* EDITOR-CONTAINER */
.editor-container
{
	border-radius: 0.75em;
	background-color: white;
	color: black;
	margin: 0;
	padding: 0;
	overflow: hidden;
	border: none;
}
.editor-container .header
{
	padding: 0.5em 0 0 0;
	background-color: white;
	color: black;
	font-weight: bold;
	text-align: center;
	font-size: 1.5em;
}
.editor-container .content
{
	padding: 1em;
}
.editor-container .content button
{
	margin-top: 1em;
}
.editor-container .content button:first-of-type
{
	margin-top: 2em;
}
.editor-container .input-line
{
	margin-bottom: 1em;
}
.editor-container .input-line input[type="text"]
{
	width: 100%;
	padding: 0.9em;
	border-radius: 0.33em;
	border: 1px solid grey;
	background-color: #f5f5f5;
}
.editor-container .input-line .error-container
{
	top: 0.33em;
	display: none;
	position: relative;
	border: none;
	padding: 0.5em;
	border-radius: 0.33em;
	background-color: #db2828;
	color: white;
}
.editor-container .input-line.error label
{
	color: #db2828;
}
.editor-container .input-line.error .error-container
{
	display: block;
}
.editor-container .input-line.error .error-container::after
{
	content: '';
	position: absolute;
	bottom: 100%;
	left: 50%;
	margin-left: -0.33em;
	border-width: 0.33em;
	border-style: solid;
	border-color: transparent transparent #db2828 transparent;
}
.editor-container .input-line.error input[type="text"]
{
	border: 1px solid #db2828;
	background-color: #fff5f5;
}
.editor-container .segmented-controls
{
	border: 1px solid grey;
}


/* GENERAL PAGE-STRUCTURE */
*, *::before, *::after
{	box-sizing: border-box;
}

html
{
	height: 100%;
	width: 100%;
	margin: 0;
	padding: 0;
	overflow: hidden;
	overscroll-behaviour: none;
}

body
{	
	height: 100%;
	width: 100%;
	margin: 0;
	padding: 0;
	font-family: 'Lato', sans-serif;
	font-size: 14px;
	color: black;
	background-image: url('/img/45degree-fabric.png');
	background-repeat: repeat;
	overflow: auto;
	overflow-x: hidden;
	overscroll-behaviour: scroll;
}
#page-root
{	height: 100%;
	width: 100%;
	margin: 0;
	padding: 0;
}
#loginpage-root
{
	height: 100%;
	width: 100vw;
	margin: 0;
	padding: 0;
	display: table;
	overflow: auto;
	overscroll-behavior: contain;
}
#loginpage-center
{
	width: 100%;
	display: table-cell !important;
	vertical-align: middle;
	text-align: center;
}
#loginpage-reset-container
{	margin: 0;
	padding: 1em;
	display: inline-block;
	width: 100%;
	max-width: 32em;
}
#page-container
{
	height: 100%;
	width: 100vw;
	margin: 0;
	padding: 0;
	display: table;
	align-items: center;
	justify-content: center;
	overflow: auto;
	overscroll-behavior: contain;
	padding-top: 3.125em;
}
#header-section:has(#header-sub-section:not(.hidden)) ~ #page-container
{
	padding-top: 7em;
}
#center-container
{
	width: 100%;
	margin-top: 3.125em;
	display: table-cell !important;
	vertical-align: middle;
	text-align: center;
}
#content-container
{
	margin: 0;
	padding: 1em;
	display: inline-block;
	width: 100%;
	max-width: 64em;
	text-align: left;
}


/* MODAL */
#modal-container
{
	position: fixed;
	top: 50%;
	left: 50%;
	width: 50%;
	min-width: 24em;
	max-width: 32em;
	height: auto;
	margin: 0;
	padding: 1.5em;
	z-index: 5000;
	visibility: hidden;
	background-color: white;
	color: black;
	-webkit-transform: translateX(-50%) translateY(-50%) scale(0.7);
	-moz-transform: translateX(-50%) translateY(-50%) scale(0.7);
	-ms-transform: translateX(-50%) translateY(-50%) scale(0.7);
	transform: translateX(-50%) translateY(-50%) scale(0.7);
	opacity: 0;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	border-radius: 0.5em;
}
#modal-container.visible
{
	-webkit-transform: translateX(-50%) translateY(-50%) scale(1.0);
	-moz-transform: translateX(-50%) translateY(-50%) scale(1.0);
	-ms-transform: translateX(-50%) translateY(-50%) scale(1.0);
	transform: translateX(-50%) translateY(-50%) scale(1.0);
	visibility: visible;
	opacity: 1;
}
#modal-container.green
{	
	background-color: #f2fff2;
	border: 0.33em solid green;
}
#modal-container.red
{	
	background-color: #fff2f2;
	border: 0.33em solid red;
}
#modal-overlay
{
	position: fixed;
	width: 100%;
	height: 100%;
	visibility: hidden;
	top: 0;
	left: 0;
	z-index: 2000;
	opacity: 0;
	background: rgba(0, 0, 0, 0.8);
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
#modal-container.visible ~ #modal-overlay
{
	opacity: 1;
	visibility: visible;
}
#modal-content-container
{
	display: flex;
}
#modal-glyph-container
{
	font-size: 2em;
	width: 1em;
	margin-right: 0.5em;
	padding-top: 0.11em;
}
#modal-caption
{
	font-weight: bold;
	font-size: 1.25em;
	margin-bottom: 0.5em;
}
#modal-button-container
{
	margin-top: 1.5em;
	text-align: right;
}
#modal-button-container .button
{
	display: inline-block;
	width: auto;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	margin-right: 0.5em;
}
#modal-button-container .button:last-of-type
{
	margin-right: 0;
}
#modal-button-container .button:only-of-type
{
	display: block;
	margin: 0 auto;
}

#block-ui-container
{
	position: fixed;
	top: 50%;
	left: 50%;
	width: 50%;
	max-width: 64em;
	height: auto;
	z-index: 100000;
	color: white;
	-webkit-transform: translateX(-50%) translateY(-50%);
	-moz-transform: translateX(-50%) translateY(-50%);
	-ms-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
	text-align: center;
}
#block-ui-text
{
	text-align: center;
	color: white;
}
#block-ui-overlay
{
	display: none;
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 99999;
	background: rgba(0, 0, 0, 0.8);
}
#block-ui-container:not(.hidden) ~ #block-ui-overlay
{
	display: block;
}


/* LOGIN-PAGE */
.glassbox-container 
{
	border: 0;
	border-radius: 0.5em;
	box-shadow: 0 0 0.5em #000;
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
}
.glassbox-header
{
	border: 0;
	border-radius: 0.5em 0.5em 0 0;
	padding: 2.5em;
	background-color: rgba(185, 204, 225, 0.9);
	color: white;
}
.glassbox-content
{
	border: 0;
	border-radius: 0 0 0.5em 0.5em;
	padding: 2.5em;
}
.glassbox-content.grey
{
	background-color: rgba(255, 255, 255, 0.3);
	color: white;
}
.glassbox-content.black
{
	background-color: rgba(0, 0, 0, 0.3);
	color: white;
}
.glassbox-content.green
{
	background-color: rgba(0, 255, 0, 0.3);
	color: white;
}
.glassbox-content.red
{
	background-color: rgba(255, 0, 0, 0.3);
	color: white;
}

body.loginpage .input-container
{
	display: flex;
	width: 100%;
	border: none;
    font-size: 1.125em;
    padding: 0.5em 0.75em;
    border-radius: 0.33em;
    background-color: white;
    color: black;
	margin-bottom: 1em;
}
body.loginpage .input-container input
{	border: none;
    width: 100%;
    height: 1.5em;
    outline: none;
    padding-left: 0.5em;
}
body.loginpage .input-container .glyph
{
	margin-top: 0.25em;
}

body.loginpage .error-tooltip
{
	margin-top: -0.67em;
	display: flex;
	position: relative;
	margin-bottom: 1em;
	border: none;
	padding: 0.5em;
	border-radius: 0.33em;
	background-color: rgba(255, 0, 0, 0.5);;
	color: white;
}
body.loginpage .error-tooltip::after
{
	content: " ";
	position: absolute;
	bottom: 100%;
	left: 50%;
	margin-left: -0.33em;
	border-width: 0.33em;
	border-style: solid;
	border-color: transparent transparent rgba(255, 0, 0, 0.5) transparent;
}

#loginpage-error-text
{
	margin-bottom: 1em;
	padding: 1em;
	border: none;
	background-color: rgba(255, 0, 0, 0.5);
	border-radius: 0.5em;
}
#loginpage-spinner
{
	text-align: center;
}
#loginpage-password-reset-button
{
	margin-top: 1em;
}
.input-container:has(#loginpage-reset-mail)
{
	margin-top: 1em;
}


/* USERS-PAGE */

ul.user-list
{	
	list-style-type: none;
	border-radius: 0.33em;
	background-color: #f5f5f5;
	color: black;
	margin: 0;
	padding: 0;
	overflow: hidden;
	border: none;
}
ul.user-list li .username
{
	display: block;
	position: relative;
	padding: 1em;
	font-weight: bold;
	border-top: 1px solid lightgrey;
}
ul.user-list li:first-of-type .username
{
	border-top: none;
}
ul.user-list li .username.red
{	
	color: red;
}
ul.user-list li .username.orange
{
	color: orange;
}
ul.user-list li .not-found
{
	display: block;
	width: 100%;
	padding: 1em;
	color: #b5b5b5;
	text-align: center;
}

ul.user-list li:has(input:checked) .username:before
{
	content: '';
	position: absolute;
	width: 1em;
	height: 1em;
	border-left: 0.5em solid transparent;
	border-right: 0.5em solid transparent;
	border-top: 0.5em solid #f5f5f5;
	right: 1em;
	bottom: -1em;
	z-index: 10;
}
ul.user-list li .username a
{
	margin-top: -0.5em;
    margin-bottom: -0.5em;
    margin-right: -1em;
    padding: 0.5em 1em 0.5em 1em;
    border-left: 1px solid lightgrey;
    float: right;
}

ul.user-list li .username a:hover
{
	margin-top: -1em;
    margin-bottom: -1em;
    padding-top: 1em;
    padding-bottom: 1em;
    background-color: #e5e5e5;
}

ul.user-list li .username input
{
	display: none;
}

ul.user-list .sub-content
{
	display: table;
	width: 100%;
	align-items: center;
	justify-content: center;
	background-color: rgba(185, 204, 225, 1);
	color: white;
}

ul.user-list li .sub-content-container
{
	max-height: 0;
	overflow: hidden;
	transition: max-height 400ms cubic-bezier(0.23, 1, 0.32, 1);
}
ul.user-list li:has(input:checked) .sub-content-container
{
	max-height: 24em;
}

ul.user-list .sub-content .line
{
	display: table-row;
	max-height: 0px;
	overflow: hidden;
}
ul.user-list .sub-content .name
{
	display: table-cell;
	vertical-align: middle;
	width: 10em;
	padding: 1em 0 1em 1em;
	border-top: 1px solid white;
}
ul.user-list .sub-content .name .glyph
{
	position: relative;
	top: 0.15em;
	margin-right: 0.5em;
}

ul.user-list .sub-content .value
{
	display: table-cell;
	vertical-align: middle;
	padding: 1em 1em 1em 0;
	border-top: 1px solid white;
	font-weight: bold;
}
ul.user-list .sub-content .line:first-of-type .name, ul.user-list .sub-content .line:first-of-type .value
{
	border-top: none;
}

#button-add-user
{
	margin-top: 1em;
}

/* SHIFTS-PAGE */
#calendar-bar-container
{
	display: flex;
	width: 100%;
	border: none;
    font-size: 1.125em;
    padding: 0.5em 0.75em;
    border-radius: 0.33em;
    background-color: white;
    color: black;
}
#calendar-bar-container .text
{	border: none;
    width: 100%;
    height: 1.5em;
    outline: none;
    padding-left: 0.5em;
	padding-top: 0.125em;
	text-align: center;
	font-weight: bold;
}
#calendar-bar-container .glyph
{
	margin-top: 0.25em;
}

#calendar-overlay
{	
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 5000;
}
#calendar-header-line
{	
	display: block;
    position: absolute;
    top: 0;
    left: 0;
    margin: 0;
    padding: 0;
    margin-top: 3.125em;
    width: 100%;
	height: 3.8em;
	overflow: hidden;
    background-color: rgba(0, 0, 0, 0.7);
}
#calendar-header-center
{
	margin: 0 auto;
    padding: 0.5em;
    width: 100%;
    max-width: 64em;
    height: 3.8em;
}
#calendar-header-container
{
	display: flex;
    width: 100%;
	height: 6em;
    border: none;
    font-size: 0.95em;
    padding: 0.5em 0.75em;
    border-radius: 0.53em;
    background-color: white;
    color: black;
	transition: font-size 0.4s ease;
}
#calendar-header-container.active
{
    font-size: 1.5em;
	height: 3em;
}

#calendar-header-container .glyph
{
	margin-top: 0.25em;
}
#calendar-header-container .glyph.active
{
	cursor: pointer;
}
#calendar-header-date-container
{
	width: 100%;
    height: 0.95em;
    outline: none;
    padding-left: 0.5em;
    padding-top: 0.125em;
    text-align: center;
    font-weight: bold;
}
#calendar-body
{
	max-width: 64em;
    margin: 0 auto;
	margin-top: 6.9125em;
	background-color: rgba(0, 0, 0, 0.7);
	border-radius: 0 0 1em 1em;
	padding: 0 0.5em 0.5em 0.5em;
}
#calendar-body-container
{	
	background-color: white;
	padding: 0 1em 1em 1em;
	border-radius: 0 0 0.7em 0.7em;
}

#calendar-body-container .line
{
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: calc(100% / 32);
	overflow: hidden;
	transition: height 0.4s ease;
}
#calendar-body-container.active .line
{
	height: 3.5em;
}
#calendar-body-container:not(.active) .line
{
	height: 0;
}
#calendar-body-container .header
{
	display: inline-block;
	border-bottom: 1px solid grey;
	padding: 0.5em;
	text-align: center;
	font-weight: bold;
}
#calendar-body-container .entry
{
	color: grey;
	text-align: center;
	padding: 1em 0;
	border-radius: 0.33em;
	border: 2px solid transparent;
}
#calendar-body-container .entry.active
{
	color: black;
	font-weight: bold; 
}
#calendar-body-container .entry.active:hover
{
	border: 2px solid grey;
	cursor: pointer;
}
#calendar-body-container .entry.selected
{
	background-color: lightgrey;
}

body:has(#calendar-overlay:not(.hidden)) #page-container
{	padding-top: 7em;
}

body .booking-container:first-of-type
{
	margin-top: 0;
}
.booking-container
{
	border-radius: 0.75em;
	background-color: white;
	color: black;
	margin: 0;
	padding: 0;
	overflow: hidden;
	border: none;
	margin-top: 2em;
}
.booking-container .header
{
	padding: 0.5em 0 0 0;
	background-color: white;
	color: black;
	font-weight: bold;
	text-align: center;
	font-size: 1.5em;
	line-height: 1.5;
}
.booking-container .content
{
	margin: 1em;
}
.booking-container .content:not(.grid) .shift
{
	margin-top: 0.5em;
}
.booking-container .content.grid
{
	margin: 1em;
	display: grid;
	grid-template-columns: repeat(3, 1fr); /* Creates three equal columns */
	gap: 1em; /* Adjusts spacing between divs */
}

.booking-container .shift
{	
	border-radius: 0.33em;
	padding: 1em;
	text-align: center;
	background-color: #e0e1e2;
	color: black;
	transition: color 0.2s ease;
	font-weight: bold;
}
.booking-container .shift:hover
{
	background-color: #cacbcd;
	cursor: pointer;
}
.booking-container .shift.taken
{
	background-color: #db2828;
	color: white;
}
.booking-container .shift.taken:hover
{
	background-color: #d01919;
	color: white;
}
.booking-container .shift.my
{
	background-color: #21ba45;
	color: white;
}
.booking-container .shift.my:hover
{
	background-color: #16ab39;
}

.booking-container label
{
	display: block;
	font-weight: bold;
	padding-bottom: 0.2em;
}
.booking-container textarea
{
	display: block;
	width: 100%;
	border: none;
	padding: 1em;
	border-radius: 0.33em;
	background-color: #f5f5f5;
	resize: none;
	overflow: hidden;
}
.booking-container textarea:focus
{
	outline: none;
}

#button-update-comment
{
	margin-top: 0.5em;
}

.booking-container .section
{
	margin-bottom: 2em;
}
.booking-container .section:last-of-type
{
	margin-bottom: 0
}

#search-container
{
	display: flex;
	width: 100%;
	border: none;
    font-size: 1.125em;
    padding: 0.5em 1em;
    border-radius: 0.33em;
    background-color: #f5f5f5;
    color: black;
}
#search-container input
{	border: none;
    width: 100%;
    height: 1.5em;
    outline: none;
	background-color: #f5f5f5;
    padding-left: 0.5em;
}
#search-container .glyph
{
	margin-top: 0.25em;
}
#search-container.active
{	
	border-radius: 0.33em 0.33em 0 0;
}
#search-results
{
	display: none;
	background-color: #f5f5f5;
	border-radius: 0 0 0.33em 0.33em;
}
#search-container.active ~ #search-results
{	
	display: block;
}
#search-results ul
{	
	list-style-type: none;
	overflow: hidden;
	border: none;
	margin: 0;
	padding: 0;
}
#search-results li
{
	display: block;
	position: relative;
	padding: 0.75em 1em;
	border-top: 1px solid grey;
	background-color: #f5f5f5;
	transition: background-color 0.4s ease;
}
#search-results li .glyph
{
	position: absolute;
	margin-top: 0.05em;
}
#search-results li span
{
	margin-left: 1.5em;
}
#search-results li:not(.not-found):hover
{
	cursor: pointer;
	background-color: #b5b5b5;
}
#search-results ul li:last-of-type
{
	border-radius: 0 0 0.33em 0.33em;
}
#search-results ul li.not-found
{	
	text-align: center;
	color: #858585;
}
#button-release
{
	margin-top: 2em;
}
#button-return-list
{
	margin-top: 1em;
}

/* OVERVIEW-PAGE */
.booking-container div.not-found
{	
	padding: 1em;
	color: #b5b5b5;
	text-align: center;
}
.booking-container ul.truckstop-list
{	
	list-style-type: none;
	overflow: hidden;
	border: none;
	margin: 1em;
	padding: 0;
}
.booking-container ul.truckstop-list a
{
	text-decoration: none;
	display: flex;
}

.booking-container ul.truckstop-list li
{
	position: relative;
	padding: 0.75em 1em;
	border-top: 1px solid grey;
	background-color: #f5f5f5;
	transition: background-color 0.4s ease;
}
.booking-container ul.truckstop-list li:hover
{
	cursor: pointer;
	background-color: #b5b5b5;
}

.booking-container ul.truckstop-list li:first-of-type
{
	border-top-left-radius: 0.33em; 
	border-top-right-radius: 0.33em; 
	border-top: none;
}
.booking-container ul.truckstop-list li:last-of-type
{
	border-bottom-left-radius: 0.33em; 
	border-bottom-right-radius: 0.33em; 
}
.booking-container ul.truckstop-list li div.name
{
	width: 100%;
	text-decoration: none;
	color: black;
	font-weight: bold;
}


/* TRUCKSTOPS-PAGE */
.booking-container .action-container
{
	display: flex;
}
.booking-container .action-container .action
{
	display: block;
	width: 100%;
	padding: 0.5em 0;
	background-color: #f5f5f5;
	transition: background-color 0.4s ease;
}
.booking-container .action-container .action:last-of-type
{
	border-top-right-radius: 0.33em;
	border-bottom-right-radius: 0.33em;
}
.booking-container .action-container .action:first-of-type
{
	border-top-left-radius: 0.33em;
	border-bottom-left-radius: 0.33em;
}
.booking-container .action-container .action:hover
{
	cursor: pointer;
	background-color: #e5e5e5;
}
.booking-container .action-container .action a
{
	border-right: 1px solid lightgrey;
    display: block;
    padding: 0.5em;
	text-decoration: none;
}
.booking-container .action-container .action:last-of-type a, .booking-container .action-container .action:hover a
{
	border-right-color: transparent;
}
.booking-container .action-container .action div.glyph
{
	font-size: 1.75em;
}
.booking-container .action-container .action div.glyph i.glyph
{
	display: block;
	margin: 0 auto;
}
.booking-container .action-container .action .text
{
	margin-top: 0.5em;
	color: black;
	text-align: center;
	font-weight: bold;
}
