/* ------------------------------------------------------------------
   Tyresån samtycke: forced first-visit dialog
   ------------------------------------------------------------------ */
.tyresan-consent-required .gdpr_lightbox-close,
.tyresan-consent-required .moove-gdpr-modal-close {
	display: none !important;
}

/* The bottom banner is never shown; the dialog replaces it. */
#moove_gdpr_cookie_info_bar {
	display: none !important;
}

#tyresan-consent-opener {
	display: none;
}

/* ------------------------------------------------------------------
   Dialog styling (mockup A): Tyresån colours and fonts
   ------------------------------------------------------------------ */
.gdpr_lightbox.moove_gdpr_cookie_modal_open {
	background: rgba(10, 39, 59, 0.6) !important;
}

/* Moove sizes the <dialog> itself (1170px) and places the button footer absolutely over
   the content; make the dialog a normal 440px column where everything flows. */
.gdpr_lightbox .gdpr_lightbox-container,
#moove_gdpr_cookie_modal {
	width: 92% !important;
	max-width: 440px !important;
	height: auto !important;
	max-height: 92vh !important;
	overflow-y: auto !important;
}

#moove_gdpr_cookie_modal .moove-gdpr-modal-content,
#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 {
	width: 100% !important;
	min-width: 0 !important;   /* Moove: min-width 700px below 1300px viewport */
	min-height: 0 !important;  /* Moove: min-height 620px below 1000px viewport */
	transform: none !important; /* Moove: scale(.75) below 1000px viewport */
	max-height: none !important;
	border-radius: 12px;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.35);
	font-family: 'Raleway', sans-serif;
	color: #3e3e3e;
	background: #fff !important;
	overflow: hidden;
}

#moove_gdpr_cookie_modal .main-modal-content {
	max-height: none !important;
	height: auto !important;
	overflow: visible !important;
}

#moove_gdpr_cookie_modal .moove-gdpr-modal-footer-content:before {
	display: none !important; /* Moove's absolutely positioned divider line lands on the last row */
}

#moove_gdpr_cookie_modal .moove-gdpr-modal-footer-content {
	position: static !important;
	width: auto !important;
	height: auto !important;
	display: block !important;
	background: transparent !important;
	box-shadow: none !important;
	border: 0 !important;
}

#moove_gdpr_cookie_modal .moove-gdpr-modal-title {
	margin: 0 0 10px !important;
	min-height: 0 !important;
	height: auto !important;
}

/* One-page layout: no side menu, no logo, no "powered by". */
#moove_gdpr_cookie_modal .moove-gdpr-modal-left-content,
#moove_gdpr_cookie_modal #moove-gdpr-menu,
#moove_gdpr_cookie_modal .moove-gdpr-company-logo-holder,
#moove_gdpr_cookie_modal .moove-gdpr-branding-cnt {
	display: none !important;
}

#moove_gdpr_cookie_modal .moove-gdpr-modal-right-content {
	width: 100% !important;
	max-width: 100% !important;
	padding: 24px 26px 22px !important;
	margin: 0 !important;
	float: none !important;
	display: block !important;
	background: #fff !important;
}

#moove_gdpr_cookie_modal .moove-gdpr-modal-title,
#moove_gdpr_cookie_modal .main-modal-content,
#moove_gdpr_cookie_modal .moove-gdpr-modal-footer-content {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

#moove_gdpr_cookie_modal .moove-gdpr-modal-title .tab-title,
#moove_gdpr_cookie_modal .moove-gdpr-tab-main .tab-title {
	font-family: 'Quicksand', sans-serif !important;
	font-weight: 700 !important;
	color: #1c3c51 !important;
}

#moove_gdpr_cookie_modal .moove-gdpr-modal-title .tab-title {
	font-size: 19px !important;
}

#moove_gdpr_cookie_modal .moove-gdpr-tab-main .tab-title {
	font-size: 14px !important;
}

#moove_gdpr_cookie_modal .moove-gdpr-tab-main-content,
#moove_gdpr_cookie_modal .moove-gdpr-tab-main-content p {
	font-family: 'Raleway', sans-serif !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
	color: #3e3e3e !important;
}

#moove_gdpr_cookie_modal .moove-gdpr-tab-main-content a {
	color: #1c3c51 !important;
	text-decoration: underline !important;
}

/* Category rows separated by a thin line. */
#moove_gdpr_cookie_modal .moove-gdpr-tab-main {
	border-top: 1px solid #eee;
	padding: 10px 0 !important;
	margin: 0 !important;
}

#moove_gdpr_cookie_modal #privacy_overview {
	border-top: 0;
	padding-top: 0 !important;
}

/* Switches in brand colour. */
#moove_gdpr_cookie_modal .cookie-switch input:checked + .cookie-slider {
	background-color: #1c3c51 !important;
}

#moove_gdpr_cookie_modal .gdpr-checkbox-disabled .cookie-slider {
	opacity: 0.45;
}

/* Buttons: nej and ja equally big, "Spara mina val" as a text link below. */
#moove_gdpr_cookie_modal .moove-gdpr-button-holder {
	display: flex !important;
	flex-wrap: wrap;
	gap: 8px;
	margin: 16px 0 0 !important;
	padding: 0 !important;
}

#moove_gdpr_cookie_modal .moove-gdpr-button-holder .mgbutton {
	flex: 1 1 0;
	margin: 0 !important;
	font-family: 'Quicksand', sans-serif !important;
	font-weight: 700 !important;
	font-size: 13px !important;
	line-height: 1.2 !important;
	padding: 11px 8px !important;
	border-radius: 7px !important;
	text-align: center;
	box-shadow: none !important;
	text-transform: none !important;
}

#moove_gdpr_cookie_modal .mgbutton.moove-gdpr-modal-reject-all {
	order: 1;
	background: #fff !important;
	color: #1c3c51 !important;
	border: 2px solid #1c3c51 !important;
}

#moove_gdpr_cookie_modal .mgbutton.moove-gdpr-modal-allow-all {
	order: 2;
	background: #1c3c51 !important;
	color: #fff !important;
	border: 2px solid #1c3c51 !important;
}

#moove_gdpr_cookie_modal .mgbutton.moove-gdpr-modal-save-settings {
	order: 3;
	flex-basis: 100%;
	background: transparent !important;
	color: #1c3c51 !important;
	border: 0 !important;
	text-decoration: underline;
	font-weight: 600 !important;
	padding: 6px 0 0 !important;
}

#moove_gdpr_cookie_modal .mgbutton:focus-visible {
	outline: 3px solid #efd2a5 !important;
	outline-offset: 2px;
}

@media (max-width: 480px) {
	#moove_gdpr_cookie_modal .moove-gdpr-modal-right-content {
		padding: 18px 16px 16px !important;
	}
	#moove_gdpr_cookie_modal .moove-gdpr-button-holder .mgbutton {
		flex-basis: 100%;
	}
}

/* Moove reserves 190px on the right for the switch; 70px is enough for a switch and "På/Av". */
#moove_gdpr_cookie_modal .moove-gdpr-tab-main .tab-title,
#moove_gdpr_cookie_modal .moove-gdpr-tab-main .moove-gdpr-tab-main-content {
	padding-right: 84px !important;
}

#moove_gdpr_cookie_modal #privacy_overview .moove-gdpr-tab-main-content,
#moove_gdpr_cookie_modal #privacy_overview .tab-title {
	padding-right: 0 !important;
}

#moove_gdpr_cookie_modal .moove-gdpr-status-bar {
	width: 80px !important;
	padding: 5px 0 !important;
	right: 0 !important;
}

#moove_gdpr_cookie_modal .moove-gdpr-status-bar .gdpr-cc-form-wrap {
	width: auto !important;
}

/* Mobile and tablet: Moove scales the dialog to 75 %, gives the content fixed vh-heights and a
   fixed-height footer that overlaps the last row. Let everything flow and let the dialog scroll. */
@media (max-width: 999px) {
	#moove_gdpr_cookie_modal .moove-gdpr-modal-content,
	#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 {
		transform: none !important;
		width: 100% !important;
		min-height: 0 !important;
		max-height: none !important;
	}
	#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-right-content {
		height: auto !important;
		min-height: 0 !important;
		max-height: none !important;
		padding: 18px 16px 16px !important;
	}
	#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content {
		display: block !important;
		max-height: none !important;
		overflow: visible !important;
		padding-right: 0 !important;
	}
	#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .tab-title {
		padding-right: 0 !important;
	}
	#moove_gdpr_cookie_modal .moove-gdpr-tab-main .moove-gdpr-status-bar {
		position: relative !important;
		width: 100% !important;
		margin: 6px 0 0 !important;
		padding: 0 !important;
	}
	#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content {
		height: auto !important;
		padding: 0 !important;
	}
	#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content:before {
		display: none !important;
	}
	#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder {
		padding: 0 !important;
		margin: 12px 0 0 !important;
	}
	#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder .mgbutton {
		padding: 11px 8px !important;
		font-size: 13px !important;
		border-radius: 7px !important;
	}
}

/* The title receives programmatic focus when the dialog opens; no focus box on it. */
#moove_gdpr_cookie_modal .moove-gdpr-modal-title:focus {
	outline: none !important;
	box-shadow: none !important;
}

/* Compact dialog on low viewports (laptops with browser/DPI zoom): smaller type and tighter
   spacing so the whole dialog fits without scrolling. */
#moove_gdpr_cookie_modal .moove-gdpr-tab-main-content p {
	margin: 0 0 8px !important;
}
@media (max-height: 820px), (max-width: 1100px) {
	#moove_gdpr_cookie_modal .moove-gdpr-modal-right-content { padding: 18px 20px 16px !important; }
	#moove_gdpr_cookie_modal .moove-gdpr-modal-title { margin: 0 0 6px !important; }
	#moove_gdpr_cookie_modal .moove-gdpr-modal-title .tab-title { font-size: 17px !important; }
	#moove_gdpr_cookie_modal .moove-gdpr-tab-main .tab-title { font-size: 13px !important; margin-bottom: 4px !important; }
	#moove_gdpr_cookie_modal .moove-gdpr-tab-main-content,
	#moove_gdpr_cookie_modal .moove-gdpr-tab-main-content p { font-size: 12px !important; line-height: 1.4 !important; }
	#moove_gdpr_cookie_modal .moove-gdpr-tab-main { padding: 7px 0 !important; }
	#moove_gdpr_cookie_modal .moove-gdpr-button-holder { margin-top: 10px !important; }
	#moove_gdpr_cookie_modal .moove-gdpr-button-holder .mgbutton { padding: 9px 6px !important; font-size: 12px !important; }
	#moove_gdpr_cookie_modal .mgbutton.moove-gdpr-modal-save-settings { padding: 4px 0 0 !important; }
	#moove_gdpr_cookie_modal .cookie-switch { transform: scale(0.85); transform-origin: right center; }
}
@media (max-height: 660px) {
	#moove_gdpr_cookie_modal .moove-gdpr-modal-right-content { padding: 14px 16px 12px !important; }
	#moove_gdpr_cookie_modal .moove-gdpr-modal-title .tab-title { font-size: 16px !important; }
	#moove_gdpr_cookie_modal .moove-gdpr-tab-main-content,
	#moove_gdpr_cookie_modal .moove-gdpr-tab-main-content p { font-size: 11.5px !important; line-height: 1.35 !important; }
	#moove_gdpr_cookie_modal .moove-gdpr-tab-main { padding: 7px 0 !important; }
}
