
.mn-terms-modal[open] {
	display: flex;
	flex-direction: column;
}

.mn-terms-modal {
	width: min(760px, calc(100vw - 32px));
	max-width: none;
	max-height: min(84vh, 900px);
	padding: 0;
	border: 0;
	border-radius: var(--mn-radius-box, 15px);
	background: var(--mn-white, #fff);
	color: var(--mn-text, #595959);
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.22), 0 4px 12px rgba(0, 0, 0, 0.08);
	overflow: hidden;
}

.mn-terms-modal::backdrop {
	background: rgba(0, 0, 0, 0.45);
}

body.mn-terms-open {
	overflow: hidden;
}


.mn-terms-modal__head {
	display: flex;
	align-items: center;
	gap: 12px;
	flex: 0 0 auto;
	padding: 18px 20px;
	border-bottom: 1px solid var(--mn-border, #eee);
	background: var(--mn-beige, #f3f0e6);
}

.mn-terms-modal__title {
	flex: 1 1 auto;
	margin: 0;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.3;
	color: var(--mn-text-dark, #2c2c2a);
}

.mn-terms-modal__close {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 34px;
	height: 34px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: var(--mn-text, #595959);
	cursor: pointer;
	transition: background-color 0.15s ease, color 0.15s ease;
}

.mn-terms-modal__close:hover,
.mn-terms-modal__close:focus-visible {
	background: rgba(0, 0, 0, 0.07);
	color: var(--mn-text-dark, #2c2c2a);
}

.mn-terms-modal__close svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
}


.mn-terms-modal__body {
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	overscroll-behavior: contain;
	padding: 4px 24px 24px;
}

.mn-terms-modal__body:focus-visible {
	outline-offset: -3px;
}

.mn-terms-modal__note {
	margin: 24px 0;
	color: var(--mn-muted, #6b6b6b);
	text-align: center;
}

.mn-terms-modal__note.is-error {
	color: var(--mn-uvp, #871414);
}


.mn-terms-modal__foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex: 0 0 auto;
	padding: 14px 20px;
	border-top: 1px solid var(--mn-border, #eee);
	background: var(--mn-box, #fbfbfb);
}

.mn-terms-modal__page {
	font-size: 14px;
	color: var(--mn-link, #4a7c59);
	text-decoration: underline;
	text-underline-offset: 2px;
}

.mn-terms-modal__ok {
	padding: 9px 20px;
	border: 1px solid var(--mn-btn-border, #d5d2c8);
	border-radius: var(--mn-radius-s, 6px);
	background: var(--mn-white, #fff);
	color: var(--mn-text-dark, #2c2c2a);
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	transition: background-color 0.15s ease;
}

.mn-terms-modal__ok:hover,
.mn-terms-modal__ok:focus-visible {
	background: var(--mn-beige, #f3f0e6);
}


@media (max-width: 639.98px) {
	.mn-terms-modal {
		width: 100%;
		max-width: 100%;
		height: 100%;
		max-height: 100%;
		border-radius: 0;
	}

	.mn-terms-modal__body {
		padding: 4px 16px 20px;
	}

	.mn-terms-modal__head,
	.mn-terms-modal__foot {
		padding-left: 16px;
		padding-right: 16px;
	}

	.mn-terms-modal__page {
		font-size: 13px;
	}
}
