#ecc-overlay {
	position: fixed;
	inset: 0;
	z-index: 999998;
}

#ecc-banner {
	position: fixed;
	left: 0;
	right: 0;
	z-index: 999999;
	background: var(--ecc-bg, #fff);
	color: var(--ecc-text, #222);
	font-size: var(--ecc-font-size, 14px);
	border: var(--ecc-border, none);
	border-radius: var(--ecc-radius, 0);
	font-family: inherit;
	line-height: 1.6;
	transition: transform 0.35s ease, opacity 0.35s ease;
}
#ecc-banner[hidden] { display: none !important; }

#ecc-banner.ecc-shadow-none { box-shadow: none; }
#ecc-banner.ecc-shadow-soft { box-shadow: 0 -2px 16px rgba(0, 0, 0, 0.12); }
#ecc-banner.ecc-shadow-strong { box-shadow: 0 -6px 30px rgba(0, 0, 0, 0.3); }
#ecc-banner.ecc-type-bar_top.ecc-shadow-soft { box-shadow: 0 2px 16px rgba(0, 0, 0, 0.12); }
#ecc-banner.ecc-type-bar_top.ecc-shadow-strong { box-shadow: 0 6px 30px rgba(0, 0, 0, 0.3); }

#ecc-banner.ecc-type-bar_bottom { bottom: 0; }
#ecc-banner.ecc-type-bar_top { top: 0; }
#ecc-banner.ecc-type-modal_center {
	top: 50%;
	left: 50%;
	right: auto;
	transform: translate(-50%, -50%);
	max-width: 520px;
	width: 92%;
}

/* אנימציות כניסה */
#ecc-banner.ecc-type-bar_bottom.ecc-anim-slide { transform: translateY(100%); opacity: 0; }
#ecc-banner.ecc-type-bar_bottom.ecc-anim-slide.ecc-visible { transform: translateY(0); opacity: 1; }
#ecc-banner.ecc-type-bar_top.ecc-anim-slide { transform: translateY(-100%); opacity: 0; }
#ecc-banner.ecc-type-bar_top.ecc-anim-slide.ecc-visible { transform: translateY(0); opacity: 1; }
#ecc-banner.ecc-type-modal_center.ecc-anim-slide { transform: translate(-50%, -40%); opacity: 0; }
#ecc-banner.ecc-type-modal_center.ecc-anim-slide.ecc-visible { transform: translate(-50%, -50%); opacity: 1; }
#ecc-banner.ecc-anim-fade { opacity: 0; }
#ecc-banner.ecc-anim-fade.ecc-visible { opacity: 1; }
#ecc-banner.ecc-anim-none { opacity: 1; }

.ecc-banner-inner {
	max-width: var(--ecc-maxwidth, 1200px);
	margin: 0 auto;
	padding: var(--ecc-padding, 18px) calc(var(--ecc-padding, 18px) + 6px);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}
.ecc-type-modal_center .ecc-banner-inner {
	flex-direction: column;
	align-items: stretch;
	text-align: center;
}

.ecc-banner-text { flex: 1 1 480px; min-width: 240px; }
.ecc-banner-text p { margin: 0 0 6px; }
.ecc-policy-link { text-decoration: underline; color: inherit; font-weight: 600; }

.ecc-banner-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.ecc-type-modal_center .ecc-banner-actions { justify-content: center; margin-top: 10px; }

.ecc-btn {
	border: none;
	cursor: pointer;
	padding: 10px 20px;
	border-radius: 6px;
	font-size: 14px;
	font-weight: 600;
	white-space: nowrap;
	transition: opacity 0.15s ease;
}
.ecc-btn:hover { opacity: 0.85; }
.ecc-btn-accept { background: var(--ecc-accept-bg, #0073aa); color: var(--ecc-accept-text, #fff); }
.ecc-btn-decline { background: var(--ecc-decline-bg, #e9e9e9); color: var(--ecc-decline-text, #333); }
.ecc-btn-customize { background: transparent; color: inherit; text-decoration: underline; padding: 10px 6px; }

.ecc-credit-badge {
	background: #ffffff;
	color: #555555;
	font-size: 11px;
	line-height: 1.4;
	padding: 5px 12px;
	border-radius: 20px;
	white-space: nowrap;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.15);
	align-self: center;
}
.ecc-credit-badge a {
	color: #0073aa;
	font-weight: 600;
	text-decoration: none;
}
.ecc-credit-badge a:hover { text-decoration: underline; }

/* מודאל התאמה אישית */
.ecc-modal {
	position: fixed;
	inset: 0;
	z-index: 1000000;
	background: rgba(0, 0, 0, 0.55);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
}
.ecc-modal[hidden] { display: none !important; }
.ecc-modal-inner {
	background: #fff;
	color: #222;
	border-radius: 10px;
	padding: 24px;
	max-width: 480px;
	width: 100%;
	max-height: 85vh;
	overflow-y: auto;
	font-family: inherit;
}
.ecc-modal-inner h3 { margin-top: 0; }
.ecc-modal-cat { border-top: 1px solid #eee; padding: 12px 0; }
.ecc-cat-desc { font-size: 13px; color: #666; margin: 4px 0 0; }

.ecc-switch { display: flex; align-items: center; gap: 10px; cursor: pointer; font-weight: 600; }
.ecc-switch input { width: 18px; height: 18px; }
.ecc-switch-disabled { opacity: 0.6; cursor: not-allowed; }

.ecc-modal-actions { display: flex; gap: 10px; margin-top: 18px; justify-content: flex-end; }

/* כפתור צף */
.ecc-floating-btn {
	position: fixed;
	bottom: 20px;
	z-index: 999997;
	background: #222;
	color: #fff;
	border: none;
	border-radius: 30px;
	padding: 10px 16px;
	font-size: 13px;
	cursor: pointer;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.25);
}
.ecc-floating-btn.ecc-pos-bottom-left { left: 20px; }
.ecc-floating-btn.ecc-pos-bottom-right { right: 20px; }

.ecc-revoke-link { cursor: pointer; }
.ecc-revoke-button {
	display: inline-block;
	padding: 8px 16px;
	background: #0073aa;
	color: #fff !important;
	border-radius: 6px;
	text-decoration: none;
}

@media (max-width: 600px) {
	#ecc-banner {
		left: 10% !important;
		right: 10% !important;
		width: 80%;
		top: auto;
		transform: none !important;
		border-radius: var(--ecc-radius, 10px) !important;
		max-height: 70vh;
		overflow-y: auto;
	}
	#ecc-banner.ecc-type-bar_bottom,
	#ecc-banner.ecc-type-modal_center { bottom: 14px; }
	#ecc-banner.ecc-type-bar_top { top: 14px; bottom: auto; }
	#ecc-banner.ecc-anim-slide.ecc-visible,
	#ecc-banner.ecc-anim-fade.ecc-visible { transform: none !important; }

	.ecc-banner-inner {
		flex-direction: column;
		align-items: stretch;
		text-align: center;
		padding: 14px 16px;
		gap: 10px;
	}
	.ecc-banner-text { flex: none; width: 100%; min-width: 0; }
	.ecc-banner-text p { margin: 0 0 4px; font-size: 0.95em; }
	.ecc-banner-actions { justify-content: center; flex-wrap: wrap; gap: 8px; }
	.ecc-btn { padding: 9px 14px; font-size: 13px; }
	.ecc-credit-badge { align-self: center; margin-top: 2px; }
}
