/* ============================================================================
   BASE STYLES
   ============================================================================ */

html,
body {
	margin: 0;
	padding: 0;
	height: 100%;
	font-weight: 400;
	--sb-width: 78px;
	-webkit-font-smoothing: antialiased;
}

body.compact-mode {
	--sb-width: 73px;
}

body.sb-expanded {
	--sb-width: 312px;
}

/* ============================================================================
   LAYOUT
   ============================================================================ */

main {
	margin-left: 5rem;
	width: 100%;
	overflow-y: scroll;
}

/* ============================================================================
   TYPOGRAPHY
   ============================================================================ */

strong {
	font-weight: 600;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: var(--text-text-primary);
}

h1 {
	font-weight: 600;
	margin: 10px 0;
}

h2 {
	margin-bottom: 10px;
	font-weight: 600;
}

h3 {
	font-weight: 600;
	margin-bottom: 10px;
}

h4 {
	font-weight: 600;
}

p {
	font-weight: 400;
	margin-bottom: 10px;
	color: var(--text-text-tertiary);
}

hr {
	width: 100%;
	border: none;
	border-top: 1px solid var(--surface-surface-tertiary);
	margin: 20px 0;
}

/* ============================================================================
   FORMS
   ============================================================================ */

form {
	width: 100%;
	display: grid;
	gap: 10px;
}

/* ============================================================================
   COMPONENTS
   ============================================================================ */

.select-language {
	color: var(--grey-600);
	font-size: 14px;
	font-weight: 400;
	display: inline-block;
	clear: both;
	width: 100%;
	text-align: center;
	margin-bottom: 30px;
}

#mobile-menu {
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	background: var(--surface-surface-primary);
	color: var(--text-text-primary);
	border-radius: 100%;
	font-size: var(--font-l);
	position: fixed;
	right: 20px;
	top: 20px;
	display: none;
	z-index: 500;
}

#steps:before {
	content: "";
	height: 2px;
	width: 20%;
	position: absolute;
	top: calc(50% - 2px);
	background: var(--surface-brand-surface-brand-primary);
	z-index: 2;
	transition: width 0.2s ease;
}

#steps:after {
	content: "";
	height: 2px;
	width: 100%;
	position: absolute;
	top: calc(50% - 2px);
	background: var(--grey-300);
	z-index: 1;
}

.pagination-item {
	width: 32px;
	height: 32px;
}

.pagination-inner {
	width: 24px;
	height: 24px;
}

.pagination-dot {
	width: 8px;
	height: 8px;
}

/* ============================================================================
   TOOLTIPS - ACTIONS
   ============================================================================ */

.tooltip.warning:before { content: "\e90d"; }
.tooltip.ssl:before { content: "\ebb7"; }
.tooltip.delete:before { content: "\ed2c"; }
.tooltip.edit:before { content: "\eaa6"; }
.tooltip.login:before { content: "\ebc0"; }
.tooltip.history:before { content: "\e9ff"; }
.tooltip.restore:before { content: "\e9fe"; }
.tooltip.restore_options:before { content: "\e9fe"; }
.tooltip.email:before { content: "\ebcd"; }
.tooltip.check:before { content: "\e9da"; }
.tooltip.x:before { content: "\ed89"; }
.tooltip.qr:before { content: "\eb73"; }
.tooltip.qr.download:before { content: "\ea99"; }
.tooltip.connectioninfo:before { content: "\eb73"; }

/* ============================================================================
   TOOLTIPS - MAIL
   ============================================================================ */

.tooltip.mail_spamfilter:before { content: "\ecba"; }
.tooltip.mail_is_disabled:before { content: "\ecd1"; }
.tooltip.mail_sender_alias:before { content: "\ec5e"; }
.tooltip.mail_copy_address:before { content: "\e948"; }
.tooltip.mail_responder:before { content: "\ea46"; }
.tooltip.mail_catchall:before { content: "\e90d"; }

/* ============================================================================
   TOOLTIPS - THEME
   ============================================================================ */

.tooltip.settings-04:before { content: "\edbd"; }
/* ============================================================================
   TOOLTIPS - LANGUAGES
   ============================================================================ */

.tooltip.en:before { font-family: Inter, sans-serif !important; content: "EN"; font-weight: 500; }
.tooltip.de:before { font-family: Inter, sans-serif !important; content: "DE"; font-weight: 500; }
.tooltip.pl:before { font-family: Inter, sans-serif !important; content: "PL"; font-weight: 500; }
.tooltip.fr:before { font-family: Inter, sans-serif !important; content: "FR"; font-weight: 500; }
.tooltip.es:before { font-family: Inter, sans-serif !important; content: "ES"; font-weight: 500; }
.tooltip.it:before { font-family: Inter, sans-serif !important; content: "IT"; font-weight: 500; }
.tooltip.nl:before { font-family: Inter, sans-serif !important; content: "NL"; font-weight: 500; }

.lang-code.en:before { font-family: Inter, sans-serif !important; content: "EN"; font-weight: 500; }
.lang-code.de:before { font-family: Inter, sans-serif !important; content: "DE"; font-weight: 500; }
.lang-code.pl:before { font-family: Inter, sans-serif !important; content: "PL"; font-weight: 500; }
.lang-code.fr:before { font-family: Inter, sans-serif !important; content: "FR"; font-weight: 500; }
.lang-code.es:before { font-family: Inter, sans-serif !important; content: "ES"; font-weight: 500; }
.lang-code.it:before { font-family: Inter, sans-serif !important; content: "IT"; font-weight: 500; }
.lang-code.nl:before { font-family: Inter, sans-serif !important; content: "NL"; font-weight: 500; }

/* ============================================================================
   TOOLTIPS - INTERACTIVE
   ============================================================================ */

.tooltip.delete, .tooltip.edit, .tooltip.login, .tooltip.history, .tooltip.restore, .tooltip.restore_options, .tooltip.email, .tooltip.qr, .tooltip.connectioninfo  { cursor: pointer; }

/* ============================================================================
   ANIMATIONS
   ============================================================================ */

@keyframes spin {
	to {
		transform: rotate(360deg);
	}
}

.animate-spin {
	display: inline-block;
	animation: spin 1s linear infinite;
}

/* ============================================================================
   MEDIA QUERIES
   ============================================================================ */

@media (min-width: 769px) {
	main {
		margin-left: var(--sb-width);
	}
}

@media (max-width: 768px) {
	main {
		margin: 0;
	}

	body.sb-expanded aside {
		margin-left: 0;
	}

	aside {
		margin-left: -85px;
	}

	#mobile-menu {
		display: flex;
	}

	body.compact-mode #mobile-menu {
		top: 10px;
		right: 10px;
		font-size: 20px;
	}

	.collapse {
		display: none;
	}

	#accessibility-bar-container {
		left: 0;
		right: auto;
	}

	#accessibility-bar-container #accessibility-bar {
		margin-left: 0;
	}
}

#accessibility-bar-container {
	left: 0;
}

@media (min-width: 769px) {
	#accessibility-bar-container {
		left: var(--sb-width);
		right: 0;
	}
}

main > .flex-1 {
	transition: padding-top 0.2s ease;
}

@media print {
    :root {
        --sb-width: 0px !important;
    }
    @page {
        size: landscape;
    }
    #mobile-menu,
    #accessibility-bar,
    #breadcrumb, aside,
    body.sb-expanded aside,
    body:not(.sb-expanded) aside,
    .sticky_actions, .btn, .input-group,
    select, textarea, #footer, main, button,
    #contact_information_email, #in_progress_tooltip,
    #tablesBar, #tabs, .print\:none{
        display: none !important;
    }
    body.sb-expanded main,
    body:not(.sb-expanded) main,
    main{
        overflow-y: unset !important;
        margin: 0 auto !important;
    }
    .mb-5, .mb-10, .mb-20, .mb-30{
        margin-bottom: 2px !important;
    }
    .mt-5,.mt-10,.mt-20,.mt-30{
        margin-top: 2px !important;
    }
}