.agreement-overlay {
	display:none;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.8);
	z-index:9999;
	justify-content:center;
	align-items:center;
}

.agreement-overlay.active {
	display:flex;
}

.agreement-modal {
	background:#fff;
	width:1100px;
	max-width:90%;
	height:80%;
	border-radius:8px;
	box-shadow:0 4px 20px rgba(0,0,0,0.6);
	display:flex;
	flex-direction:column;
	overflow:hidden;
}

.agreement-modal-header {
	padding:16px 24px;
	border-bottom:1px solid #ddd;
	font-size:24px;
	font-weight:bold;
	color:#333;
	flex-shrink:0;
	display:flex;
	justify-content:space-between;
	align-items:center;
}

.agreement-modal-body {
	padding:24px;
	overflow-y:auto;
	flex:1;
	line-height:180%;
	color:#444;
	font-size:16px;
}

.agreement-modal-body h3 {
	color:#333;
	margin:18px 0 8px 0;
	font-size:20px;
}

.agreement-modal-body p {
	margin:0 0 10px 0;
}

.agreement-modal-body ol {
	padding-left:20px;
	margin:0 0 10px 0;
}

.agreement-modal-body ol li {
	margin-bottom:6px;
}

.agreement-modal-footer {
	padding:14px 24px;
	border-top:1px solid #ddd;
	flex-shrink:0;
	display:flex;
	justify-content:space-between;
	align-items:center;
}

.agreement-modal-footer .agreement-checkbox-area {
	display:flex;
	align-items:center;
	gap:6px;
	font-size:16px;
	color:#333;
	cursor:pointer;
}

.agreement-modal-footer .agreement-checkbox-area label {
	cursor:pointer;
}

.agreement-modal-footer .agreement-checkbox-area input[type="checkbox"] {
	width:16px;
	height:16px;
	cursor:pointer;
}

.agreement-modal-footer .agreement-btn-area {
	display:flex;
	gap:8px;
}

.agreement-btn {
	padding:8px 20px;
	border:none;
	border-radius:4px;
	font-size:16px;
	cursor:pointer;
	transition:transform 0.05s ease;
}

.agreement-btn:active:not(:disabled) {
	transform:translateY(1px);
}

.agreement-btn-print {
	background:#f0f0f0;
	color:#333;
	border:1px solid #ccc;
}

.agreement-btn-print:hover {
	background:#e0e0e0;
}

.agreement-btn-cancel {
	background:#f0f0f0;
	color:#333;
	border:1px solid #ccc;
}

.agreement-btn-cancel:hover {
	background:#e0e0e0;
}

.agreement-btn-accept {
	background:#007dc1;
	color:#fff;
	border:none;
}

.agreement-btn-accept:hover {
	background:#0061a7;
}

.agreement-btn-accept:disabled {
	background:#a0c4de;
	cursor:not-allowed;
}

@media print {
	body {
		overflow:visible !important;
		min-width:0 !important;
	}
	.center-container {
		width:auto !important;
	}
	#header-container,
	.agreement-modal-footer {
		display:none !important;
	}
	.agreement-overlay.active {
		display:block !important;
		position:static;
		background:none;
		width:100%;
		height:auto;
	}
	.agreement-overlay.active .agreement-modal {
		position:static;
		width:100% !important;
		max-width:none !important;
		height:auto !important;
		max-height:none !important;
		box-shadow:none;
		border:none;
		display:block !important;
	}
	.agreement-overlay.active .agreement-modal-header {
		display:flex !important;
	}
	.agreement-overlay.active .agreement-modal-body {
		display:block !important;
		overflow:visible !important;
		height:auto !important;
		max-height:none !important;
	}
}
