/*
 * Casino Widget Pro v1.0.0
 * Все стили изолированы под .cwp-wrap — без конфликтов с темой
 * Поддержка: Chrome, Firefox, Safari, Edge, IE11+
 */

/* ============================================================
   СПИСОК ВИДЖЕТОВ
   ============================================================ */
.cwp-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

/* ============================================================
   ОБЁРТКА КАРТОЧКИ
   ============================================================ */
.cwp-wrap {
	position: relative;
	background: #ffffff;
	border: 1px solid #e2e5e9;
	border-radius: 12px;
	overflow: hidden;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
	font-size: 14px !important;
	line-height: 1.45 !important;
	color: #1a1a2e !important;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin-bottom: 14px;
	-webkit-transition: -webkit-box-shadow 0.25s ease, -webkit-transform 0.2s ease;
	-moz-transition: box-shadow 0.25s ease, transform 0.2s ease;
	transition: box-shadow 0.25s ease, transform 0.2s ease;
}

.cwp-wrap *,
.cwp-wrap *::before,
.cwp-wrap *::after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

/* Цветная полоса слева */
.cwp-wrap::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 5px;
	background: var(--cwp-accent, #e67e22);
	z-index: 2;
}

/* Hover-эффект: тень + поднятие */
.cwp-wrap:hover {
	-webkit-box-shadow: 0 8px 28px rgba(0, 0, 0, 0.13);
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.13);
	-webkit-transform: translateY(-2px);
	-moz-transform: translateY(-2px);
	-ms-transform: translateY(-2px);
	transform: translateY(-2px);
}

/* Hover: подсветка названия */
.cwp-wrap:hover .cwp-name {
	color: var(--cwp-accent, #e67e22) !important;
}

/* Hover: анимация кнопки */
.cwp-wrap:hover .cwp-cta-btn {
	background: var(--cwp-accent-dark, #ca6f1e);
	-webkit-transform: scale(1.04);
	-moz-transform: scale(1.04);
	-ms-transform: scale(1.04);
	transform: scale(1.04);
}

/* Фокус с клавиатуры */
.cwp-wrap.cwp-is-focused {
	-webkit-box-shadow: 0 0 0 3px var(--cwp-accent, #e67e22);
	box-shadow: 0 0 0 3px var(--cwp-accent, #e67e22);
	outline: none;
}

/* ============================================================
   ССЫЛКА НА ВСЮ КАРТОЧКУ
   ============================================================ */
.cwp-card-link {
	display: block;
	text-decoration: none !important;
	color: inherit !important;
	outline: none;
}

.cwp-card-link:link,
.cwp-card-link:hover,
.cwp-card-link:visited,
.cwp-card-link:focus,
.cwp-card-link:active {
	text-decoration: none !important;
	color: inherit !important;
}

/* ============================================================
   ВНУТРЕННЯЯ РАСКЛАДКА
   ============================================================ */
.cwp-inner {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}

/* ============================================================
   КОЛОНКА ЛОГО
   ============================================================ */
.cwp-logo-col {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding: 16px 10px 16px 20px;
	min-width: 92px;
	-webkit-flex-shrink: 0;
	-ms-flex-negative: 0;
	flex-shrink: 0;
}

.cwp-logo-col--sm {
	min-width: 68px;
	padding: 10px 8px 10px 16px;
}

.cwp-logo-img {
	display: block;
	max-width: 70px;
	max-height: 58px;
	width: auto;
	height: auto;
	-o-object-fit: contain;
	object-fit: contain;
	border-radius: 6px;
}

.cwp-logo-col--sm .cwp-logo-img {
	max-width: 50px;
	max-height: 44px;
}

.cwp-logo-fallback {
	display: -webkit-inline-box;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 66px;
	height: 52px;
	background: #f4f6f8;
	border: 2px solid #dde1e6;
	border-radius: 8px;
	font-weight: 700;
	font-size: 11px;
	color: #555;
	text-align: center;
	word-break: break-word;
	padding: 4px 3px;
	line-height: 1.2;
	letter-spacing: 0.3px;
}

.cwp-logo-col--sm .cwp-logo-fallback {
	width: 50px;
	height: 42px;
	font-size: 9px;
}

/* ============================================================
   СРЕДНЯЯ КОЛОНКА (контент)
   ============================================================ */
.cwp-mid-col {
	-webkit-box-flex: 1;
	-webkit-flex: 1 1 0%;
	-ms-flex: 1 1 0%;
	flex: 1 1 0%;
	padding: 14px 10px 14px 12px;
	min-width: 0;
	overflow: hidden;
}

/* ============================================================
   НАЗВАНИЕ КАЗИНО (сброс темовых стилей)
   ============================================================ */
.cwp-wrap h3.cwp-name {
	display: block !important;
	font-size: 17px !important;
	font-weight: 800 !important;
	color: #111827 !important;
	line-height: 1.25 !important;
	margin: 0 0 8px 0 !important;
	padding: 0 !important;
	border: none !important;
	background: none !important;
	text-transform: none !important;
	letter-spacing: normal !important;
	text-shadow: none !important;
	font-family: inherit !important;
	word-break: break-word;
	-webkit-transition: color 0.2s ease;
	-moz-transition: color 0.2s ease;
	transition: color 0.2s ease;
	float: none !important;
}

.cwp-compact .cwp-mid-col h3.cwp-name {
	font-size: 13px !important;
	margin-bottom: 3px !important;
}

/* ============================================================
   БЛОК БОНУСА
   ============================================================ */
.cwp-bonus-box {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	background: var(--cwp-bonus-bg, #fff6ee);
	border: 1px solid var(--cwp-bonus-border, #fdd8aa);
	border-radius: 8px;
	padding: 8px 12px;
	margin-bottom: 8px;
	gap: 2px;
}

.cwp-bonus-lbl {
	font-size: 11px !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	color: var(--cwp-accent, #e67e22) !important;
	display: block;
}

.cwp-bonus-txt {
	font-size: 14px !important;
	font-weight: 800 !important;
	color: var(--cwp-accent, #e67e22) !important;
	word-break: break-word;
	display: block;
}

.cwp-bonus-compact {
	font-size: 12px !important;
	font-weight: 700 !important;
	color: var(--cwp-accent, #e67e22) !important;
	margin-bottom: 4px;
	word-break: break-word;
	display: block;
}

/* ============================================================
   ТЕГИ
   ============================================================ */
.cwp-tags {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-bottom: 6px;
	/* gap-fallback через margin */
	margin-top: -4px;
	margin-left: -4px;
}

.cwp-tag {
	display: -webkit-inline-box;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 3px;
	font-size: 11.5px !important;
	font-weight: 500 !important;
	padding: 3px 9px !important;
	border: 1px solid #d9dde3 !important;
	border-radius: 100px !important;
	background: #f8f9fa !important;
	color: #374151 !important;
	white-space: nowrap;
	line-height: 1.4;
	margin-top: 4px;
	margin-left: 4px;
	text-decoration: none !important;
}

.cwp-tag--green {
	border-color: #22c55e !important;
	background: #f0fdf4 !important;
	color: #15803d !important;
	font-weight: 700 !important;
}

.cwp-tag-check {
	font-weight: 800;
	line-height: 1;
}

/* ============================================================
   ЗНАЧКИ СПОСОБОВ ОПЛАТЫ
   ============================================================ */
.cwp-payments {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-top: -4px;
	margin-left: -4px;
}

.cwp-payment-badge {
	display: inline-block;
	font-size: 10.5px !important;
	font-weight: 600 !important;
	padding: 2px 7px !important;
	border: 1.5px solid #cbd5e1 !important;
	border-radius: 4px !important;
	background: #ffffff !important;
	color: #475569 !important;
	white-space: nowrap;
	line-height: 1.5;
	margin-top: 4px;
	margin-left: 4px;
	text-decoration: none !important;
}

/* ============================================================
   ПРАВАЯ КОЛОНКА
   ============================================================ */
.cwp-right-col {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 14px 16px;
	min-width: 120px;
	-webkit-flex-shrink: 0;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	border-left: 1px solid #f1f5f9;
	gap: 8px;
}

.cwp-right-col--sm {
	min-width: 88px;
	padding: 10px 12px;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
}

/* ============================================================
   БЛОК РЕЙТИНГА
   ============================================================ */
.cwp-rating-block {
	text-align: center;
	line-height: 1.2;
}

.cwp-stars-row {
	display: -webkit-inline-box;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	gap: 1px;
	font-size: 16px !important;
	line-height: 1;
	margin-bottom: 3px;
}

.cwp-star {
	display: inline-block;
	line-height: 1;
}

.cwp-star--full  { color: #f59e0b; }
.cwp-star--half  { color: #f59e0b; opacity: 0.5; }
.cwp-star--empty { color: #d1d5db; }

.cwp-rating-num {
	font-size: 22px !important;
	font-weight: 800 !important;
	color: #111827 !important;
	line-height: 1;
	display: block;
}

.cwp-rating-lbl {
	font-size: 9.5px !important;
	color: #9ca3af !important;
	line-height: 1.3;
	max-width: 88px;
	margin: 0 auto;
	display: block;
}

/* Компактный рейтинг */
.cwp-rating-mini {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 4px;
	margin-bottom: 3px;
}

.cwp-rating-mini .cwp-stars-row {
	font-size: 12px !important;
}

.cwp-rating-num-sm {
	font-size: 12px !important;
	font-weight: 700 !important;
	color: #374151 !important;
}

/* ============================================================
   КНОПКА CTA
   ============================================================ */
.cwp-cta-btn {
	display: block;
	background: var(--cwp-accent, #e67e22);
	color: #ffffff !important;
	text-align: center;
	padding: 10px 14px;
	border-radius: 8px;
	font-weight: 700 !important;
	font-size: 14px !important;
	line-height: 1.3;
	cursor: pointer;
	-webkit-transition: background 0.2s ease, -webkit-transform 0.15s ease;
	-moz-transition: background 0.2s ease, transform 0.15s ease;
	transition: background 0.2s ease, transform 0.15s ease;
	white-space: nowrap;
	width: 100%;
	text-decoration: none !important;
	letter-spacing: 0.2px;
	border: none !important;
}

.cwp-right-col--sm .cwp-cta-btn {
	font-size: 12px !important;
	padding: 8px 10px;
	width: auto;
}

/* ============================================================
   СТАТИСТИКА (RTP + лимит вывода)
   ============================================================ */
.cwp-stats-block {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 4px;
	width: 100%;
}

.cwp-rtp {
	display: inline-block;
	font-size: 11px !important;
	font-weight: 700 !important;
	padding: 3px 9px;
	border: 1.5px solid #22c55e;
	border-radius: 100px;
	color: #15803d !important;
	background: #f0fdf4;
	white-space: nowrap;
}

.cwp-withdraw {
	font-size: 10px !important;
	color: #9ca3af !important;
	text-align: center;
}

/* ============================================================
   БЕЙДЖ (#1, TOP и т.д.)
   ============================================================ */
.cwp-badge-wrap {
	position: absolute;
	top: 10px;
	right: 12px;
	z-index: 5;
}

.cwp-badge {
	font-size: 11px !important;
	font-weight: 700 !important;
	color: #9ca3af !important;
	background: transparent;
	display: inline-block;
}

/* ============================================================
   ЦВЕТОВЫЕ ПРЕСЕТЫ
   CSS-переменные + fallback-классы для старых браузеров
   ============================================================ */

/* Default / оранжевый */
.cwp-preset-default {
	--cwp-accent: #e67e22;
	--cwp-accent-dark: #ca6f1e;
	--cwp-bonus-bg: #fff6ee;
	--cwp-bonus-border: #fdd8aa;
}

/* Красный */
.cwp-preset-red {
	--cwp-accent: #dc2626;
	--cwp-accent-dark: #b91c1c;
	--cwp-bonus-bg: #fff1f2;
	--cwp-bonus-border: #ffc9c9;
}
.cwp-preset-red .cwp-bonus-box   { background: #fff1f2; border-color: #ffc9c9; }
.cwp-preset-red .cwp-bonus-lbl,
.cwp-preset-red .cwp-bonus-txt,
.cwp-preset-red .cwp-bonus-compact { color: #dc2626 !important; }
.cwp-preset-red .cwp-cta-btn     { background: #dc2626; }
.cwp-preset-red::before           { background: #dc2626; }

/* Зелёный */
.cwp-preset-green {
	--cwp-accent: #16a34a;
	--cwp-accent-dark: #15803d;
	--cwp-bonus-bg: #f0fdf4;
	--cwp-bonus-border: #86efac;
}
.cwp-preset-green .cwp-bonus-box   { background: #f0fdf4; border-color: #86efac; }
.cwp-preset-green .cwp-bonus-lbl,
.cwp-preset-green .cwp-bonus-txt,
.cwp-preset-green .cwp-bonus-compact { color: #16a34a !important; }
.cwp-preset-green .cwp-cta-btn     { background: #16a34a; }
.cwp-preset-green::before           { background: #16a34a; }

/* Фиолетовый */
.cwp-preset-purple {
	--cwp-accent: #7c3aed;
	--cwp-accent-dark: #6d28d9;
	--cwp-bonus-bg: #f5f3ff;
	--cwp-bonus-border: #c4b5fd;
}
.cwp-preset-purple .cwp-bonus-box   { background: #f5f3ff; border-color: #c4b5fd; }
.cwp-preset-purple .cwp-bonus-lbl,
.cwp-preset-purple .cwp-bonus-txt,
.cwp-preset-purple .cwp-bonus-compact { color: #7c3aed !important; }
.cwp-preset-purple .cwp-cta-btn     { background: #7c3aed; }
.cwp-preset-purple::before           { background: #7c3aed; }

/* Синий */
.cwp-preset-blue {
	--cwp-accent: #2563eb;
	--cwp-accent-dark: #1d4ed8;
	--cwp-bonus-bg: #eff6ff;
	--cwp-bonus-border: #93c5fd;
}
.cwp-preset-blue .cwp-bonus-box   { background: #eff6ff; border-color: #93c5fd; }
.cwp-preset-blue .cwp-bonus-lbl,
.cwp-preset-blue .cwp-bonus-txt,
.cwp-preset-blue .cwp-bonus-compact { color: #2563eb !important; }
.cwp-preset-blue .cwp-cta-btn     { background: #2563eb; }
.cwp-preset-blue::before           { background: #2563eb; }

/* Жёлтый */
.cwp-preset-yellow {
	--cwp-accent: #ca8a04;
	--cwp-accent-dark: #a16207;
	--cwp-bonus-bg: #fefce8;
	--cwp-bonus-border: #fde047;
}
.cwp-preset-yellow .cwp-bonus-box   { background: #fefce8; border-color: #fde047; }
.cwp-preset-yellow .cwp-bonus-lbl,
.cwp-preset-yellow .cwp-bonus-txt,
.cwp-preset-yellow .cwp-bonus-compact { color: #ca8a04 !important; }
.cwp-preset-yellow .cwp-cta-btn     { background: #ca8a04; color: #1a1a2e !important; }
.cwp-preset-yellow::before           { background: #ca8a04; }

/* Оранжевый тёплый */
.cwp-preset-orange {
	--cwp-accent: #ea580c;
	--cwp-accent-dark: #c2410c;
	--cwp-bonus-bg: #fff7ed;
	--cwp-bonus-border: #fed7aa;
}
.cwp-preset-orange .cwp-bonus-box   { background: #fff7ed; border-color: #fed7aa; }
.cwp-preset-orange .cwp-bonus-lbl,
.cwp-preset-orange .cwp-bonus-txt,
.cwp-preset-orange .cwp-bonus-compact { color: #ea580c !important; }
.cwp-preset-orange .cwp-cta-btn     { background: #ea580c; }
.cwp-preset-orange::before           { background: #ea580c; }

/* ============================================================
   АДАПТИВНОСТЬ
   ============================================================ */

/* Планшет ≤ 768px */
@media screen and (max-width: 768px) {
	.cwp-full .cwp-right-col {
		min-width: 102px;
		padding: 12px;
	}

	.cwp-full .cwp-logo-col {
		min-width: 76px;
		padding: 12px 8px 12px 14px;
	}

	.cwp-full .cwp-logo-img {
		max-width: 58px;
		max-height: 50px;
	}

	.cwp-full .cwp-logo-fallback {
		width: 56px;
		height: 46px;
	}

	.cwp-wrap h3.cwp-name {
		font-size: 15px !important;
	}

	.cwp-bonus-txt {
		font-size: 13px !important;
	}

	.cwp-rating-num {
		font-size: 18px !important;
	}
}

/* Мобильный ≤ 520px */
@media screen and (max-width: 520px) {
	.cwp-full .cwp-inner {
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.cwp-full .cwp-logo-col {
		min-width: auto;
		width: 100%;
		padding: 12px 14px 4px 20px;
		-webkit-box-pack: start;
		-webkit-justify-content: flex-start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		-webkit-box-ordinal-group: 1;
		-webkit-order: 0;
		-ms-flex-order: 0;
		order: 0;
	}

	.cwp-full .cwp-mid-col {
		width: 100%;
		-webkit-box-ordinal-group: 2;
		-webkit-order: 1;
		-ms-flex-order: 1;
		order: 1;
		padding-bottom: 4px;
	}

	.cwp-full .cwp-right-col {
		width: 100%;
		-webkit-box-ordinal-group: 3;
		-webkit-order: 2;
		-ms-flex-order: 2;
		order: 2;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		border-left: none;
		border-top: 1px solid #f1f5f9;
		padding: 10px 14px;
		-webkit-box-pack: justify;
		-webkit-justify-content: space-between;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-align: center;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
	}

	.cwp-full .cwp-rating-block {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
		gap: 6px;
		text-align: left;
	}

	.cwp-full .cwp-rating-block .cwp-stars-row {
		margin-bottom: 0;
	}

	.cwp-full .cwp-rating-lbl { display: none; }

	.cwp-full .cwp-stats-block {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		width: auto;
		gap: 6px;
	}

	.cwp-full .cwp-cta-btn {
		width: auto;
		-webkit-flex-shrink: 0;
		-ms-flex-negative: 0;
		flex-shrink: 0;
	}
}

/* Маленький мобильный ≤ 360px */
@media screen and (max-width: 360px) {
	.cwp-compact .cwp-inner {
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.cwp-compact .cwp-right-col--sm {
		width: 100%;
		border-left: none;
		border-top: 1px solid #f1f5f9;
		padding: 8px 12px;
	}

	.cwp-compact .cwp-cta-btn {
		width: 100%;
	}
}
