.hr-cookie[hidden],
.hr-cookie-modal[hidden]{
	display:none!important;
}

.hr-cookie{
	position:fixed;
	left:16px;
	right:16px;
	bottom:16px;
	z-index:999999;
	background:#fff;
	border:1px solid #e5e7eb;
	border-radius:12px;
	box-shadow:0 10px 35px rgba(0,0,0,.16);
	color:#333;
}

.hr-cookie-inner{
	max-width:1180px;
	margin:auto;
	padding:16px 18px;
	display:flex;
	align-items:center;
	gap:22px;
}

.hr-cookie-content{
	flex:1;
	min-width:0;
}

.hr-cookie-content strong{
	display:block;
	font-size:17px;
	line-height:1.3;
	margin-bottom:4px;
}

.hr-cookie-content p{
	margin:0;
	font-size:13.5px;
	line-height:1.55;
	color:#555;
}

.hr-cookie-content a{
	font-weight:600;
	text-decoration:underline;
}

.hr-cookie-actions{
	display:flex;
	gap:7px;
	flex-shrink:0;
}

.hr-cookie-btn{
	min-height:40px;
	padding:9px 14px;
	border:1px solid #d7d7d7;
	border-radius:7px;
	background:#fff;
	color:#333;
	font-size:13px;
	font-weight:600;
	cursor:pointer;
	white-space:nowrap;
}

.hr-accept,
.hr-save,
.hr-accept-modal{
	background:#222;
	color:#fff;
	border-color:#222;
}

.hr-cookie-modal{
	position:fixed;
	inset:0;
	z-index:1000000;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:16px;
}

.hr-cookie-overlay{
	position:absolute;
	inset:0;
	background:rgba(0,0,0,.5);
}

.hr-cookie-box{
	position:relative;
	width:100%;
	max-width:580px;
	max-height:88vh;
	overflow:auto;
	background:#fff;
	border-radius:13px;
	padding:22px;
	box-shadow:0 18px 55px rgba(0,0,0,.28);
}

.hr-cookie-close{
	position:absolute;
	right:12px;
	top:8px;
	border:0;
	background:none;
	color:#666;
	font-size:28px;
	line-height:1;
	cursor:pointer;
}

.hr-cookie-box h2{
	margin:0 32px 5px 0;
	font-size:21px;
}

.hr-cookie-intro{
	margin:0 0 14px;
	color:#666;
	font-size:13.5px;
	line-height:1.5;
}

.hr-cookie-option{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:16px;
	padding:15px 0;
	border-top:1px solid #eee;
}

.hr-cookie-option strong{
	display:block;
	margin-bottom:3px;
}

.hr-cookie-option p{
	margin:0;
	color:#777;
	font-size:12.5px;
	line-height:1.45;
}

.hr-required{
	font-size:12px;
	font-weight:600;
	white-space:nowrap;
}

.hr-switch{
	position:relative;
	width:44px;
	height:24px;
	flex:0 0 44px;
}

.hr-switch input{
	position:absolute;
	opacity:0;
	pointer-events:none;
}

.hr-switch span{
	position:absolute;
	inset:0;
	background:#bbb;
	border-radius:20px;
	cursor:pointer;
	transition:.2s;
}

.hr-switch span:before{
	content:"";
	position:absolute;
	width:18px;
	height:18px;
	left:3px;
	top:3px;
	background:#fff;
	border-radius:50%;
	transition:.2s;
}

.hr-switch input:checked+span{
	background:#222;
}

.hr-switch input:checked+span:before{
	transform:translateX(20px);
}

.hr-cookie-footer{
	display:flex;
	justify-content:flex-end;
	gap:8px;
	padding-top:15px;
	border-top:1px solid #eee;
}

.hr-cookie-lock{
	overflow:hidden;
}

/* Mobile: banner thấp, gọn và cân đối */
@media(max-width:767px){
	.hr-cookie{
		left:8px;
		right:8px;
		bottom:8px;
		border-radius:10px;
	}

	.hr-cookie-inner{
		display:block;
		padding:12px;
	}

	.hr-cookie-content strong{
		font-size:15px;
		margin-bottom:3px;
	}

	.hr-cookie-content p{
		font-size:12px;
		line-height:1.4;
		display:-webkit-box;
		-webkit-line-clamp:3;
		-webkit-box-orient:vertical;
		overflow:hidden;
	}

	.hr-cookie-actions{
		display:grid;
		grid-template-columns:1fr 1fr;
		gap:6px;
		margin-top:10px;
	}

	.hr-cookie-btn{
		min-height:36px;
		padding:7px 8px;
		font-size:12px;
	}

	.hr-accept{
		grid-column:1/-1;
		grid-row:1;
	}

	.hr-customize{
		grid-column:1;
	}

	.hr-reject{
		grid-column:2;
	}

	.hr-cookie-modal{
		align-items:flex-end;
		padding:8px;
	}

	.hr-cookie-box{
		max-height:72vh;
		border-radius:14px;
		padding:16px;
	}

	.hr-cookie-box h2{
		font-size:18px;
	}

	.hr-cookie-intro{
		font-size:12.5px;
		margin-bottom:10px;
	}

	.hr-cookie-option{
		padding:11px 0;
		gap:10px;
	}

	.hr-cookie-option p{
		font-size:11.5px;
		line-height:1.35;
	}

	.hr-cookie-footer{
		gap:6px;
		padding-top:11px;
	}

	.hr-cookie-footer .hr-cookie-btn{
		flex:1;
	}
}

@media(max-width:380px){
	.hr-cookie-content p{
		-webkit-line-clamp:2;
	}

	.hr-cookie-actions{
		margin-top:8px;
	}

	.hr-cookie-inner{
		padding:10px;
	}
}