/* Tur & Etkinlik Sistemi - Frontend Grid
   Astra temasÄ±nÄ±n global renk/tipografi deÄŸiÅŸkenlerini (varsa) kullanÄ±r,
   yoksa gÃ¼venli fallback renklere dÃ¼ÅŸer. TÃ¼m class isimleri "tes-" Ã¶n ekiyle
   izole edilmiÅŸtir; baÅŸka bir tema/eklenti ile Ã§akÄ±ÅŸmaz. */

.tes-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	gap: 24px;
	margin: 30px 0;
}

.tes-card {
	background: #0d0d0d;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 16px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4);
}

.tes-card:hover {
	transform: translateY(-5px);
	border-color: rgba(186, 255, 0, 0.25);
	box-shadow: 0 10px 30px rgba(186, 255, 0, 0.05), 0 0 15px rgba(186, 255, 0, 0.03);
}

.tes-card-image-link {
	display: block;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: #111;
}

.tes-card-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	margin: 0;
	transition: transform 0.3s ease;
}

.tes-card:hover .tes-card-image {
	transform: scale(1.03);
}

.tes-card-image-placeholder {
	width: 100%;
	height: 100%;
	background: linear-gradient(135deg, #111, #222);
}

.tes-card-body {
	padding: 22px;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}

.tes-card-title {
	font-size: 1.15em;
	margin: 0 0 12px;
	line-height: 1.3;
	font-weight: 700;
}

.tes-card-title a {
	color: #fff;
	text-decoration: none;
	transition: color 0.2s ease;
}

.tes-card-title a:hover {
	color: var(--tes-neon, #baff00);
}

.tes-card-meta {
	font-size: 0.88em;
	color: rgba(255, 255, 255, 0.55);
	margin-bottom: 8px;
	display: flex;
	align-items: center;
	gap: 6px;
}

.tes-card-footer {
	margin-top: auto;
	padding-top: 18px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
	border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.tes-card-price {
	font-weight: 800;
	color: var(--tes-neon, #baff00);
	font-size: 1.2em;
	letter-spacing: -0.01em;
}

.tes-card-price .woocommerce-Price-amount {
	color: var(--tes-neon, #baff00) !important;
}

.tes-fiyat-tipi-etiket {
	font-size: 0.68em;
	color: rgba(255, 255, 255, 0.4);
	font-weight: 500;
	margin-left: 2px;
}

.tes-card-btn {
	display: inline-block;
	padding: 10px 18px;
	border-radius: 8px;
	background: var(--tes-neon, #baff00) !important;
	color: #000 !important;
	text-decoration: none;
	font-size: 0.82em;
	font-weight: 800;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	white-space: nowrap;
	transition: all 0.25s ease;
	box-shadow: 0 4px 12px rgba(186, 255, 0, 0.15);
}

.tes-card-btn:hover {
	background: #fff !important;
	color: #000 !important;
	box-shadow: 0 4px 20px rgba(255, 255, 255, 0.25);
	transform: translateY(-1px);
}

.tes-card-btn.tes-status-tukendi {
	background: #2a2a2a !important;
	color: #777 !important;
	pointer-events: none;
	box-shadow: none;
}

.tes-empty {
	padding: 40px;
	text-align: center;
	color: rgba(255, 255, 255, 0.5);
	background: #0d0d0d;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 12px;
}
}

/* Tekil Ã¼rÃ¼n sayfasÄ± - Ekstra SeÃ§enekler */
.tes-ekstra-secenekler {
	margin: 16px 0;
	padding: 14px;
	background: #f7f9fa;
	border-radius: 6px;
}

.tes-ekstra-secenekler strong {
	display: block;
	margin-bottom: 12px;
}

.tes-ekstra-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}

.tes-ekstra-secenek-item {
	display: flex;
	align-items: center;
	font-weight: 400;
	cursor: pointer;
	margin: 0;
}

.tes-ekstra-secenek-item input {
	margin-right: 8px;
	margin-top: 0;
}

/* Tekil Ã¼rÃ¼n sayfasÄ± - Rota / Konum */
.tes-single-route {
	margin: 24px 0;
}

.tes-single-route-title {
	margin: 0 0 16px;
	font-size: 1.05em;
	font-weight: 700;
}

/* Yatay rota Ã§izgisi (dot + durak adÄ±) */
.tes-route-timeline {
	margin-bottom: 20px;
	padding: 8px 4px 4px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.tes-route-track {
	position: relative;
	min-width: 100%;
	padding: 0 8px;
}

.tes-route-line {
	position: absolute;
	top: 9px;
	left: calc(8px + 9px);
	right: calc(8px + 9px);
	height: 2px;
	background: #d9d9d9;
	border-radius: 1px;
	z-index: 0;
}

.tes-route-stops {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	position: relative;
	z-index: 1;
	gap: 4px;
}

.tes-route-stop {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	min-width: 72px;
	max-width: 160px;
	padding: 0 4px;
}

.tes-route-dot {
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #22c55e;
	box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.22);
	flex-shrink: 0;
}

.tes-route-name {
	margin-top: 12px;
	font-size: 0.88em;
	font-weight: 600;
	color: var(--ast-global-color-2, #1e1e1e);
	line-height: 1.35;
	word-break: break-word;
}

.tes-route-tip {
	margin-top: 4px;
	font-size: 0.72em;
	color: var(--ast-global-color-3, #888);
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.tes-single-route .tes-map-canvas {
	width: 100%;
	height: 280px;
	border-radius: 8px;
	border: 1px solid rgba(0, 0, 0, 0.08);
	margin-top: 4px;
}

@media (max-width: 480px) {
	.tes-route-stop {
		min-width: 64px;
	}

	.tes-route-name {
		font-size: 0.8em;
	}
}

.tes-konaklama-bilgisi {
	margin: 10px 0;
	font-size: 1.05em;
}

/* Responsive kÄ±rÄ±lÄ±mlar */
@media (max-width: 768px) {
	.tes-grid {
		grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
		gap: 16px;
	}
	.tes-card-body {
		padding: 14px;
	}
}

@media (max-width: 480px) {
	.tes-grid {
		grid-template-columns: 1fr;
	}
	.tes-card-footer {
		flex-direction: column;
		align-items: flex-start;
	}
	.tes-card-btn {
		width: 100%;
		text-align: center;
	}
}

/* ==============================================================
   HEADER KULLANICI Ä°KONU (WIDGET)
============================================================== */
.tes-user-menu-widget {
	position: relative;
	display: inline-block;
	line-height: 1;
	z-index: 10000;
}

.tes-user-menu-widget::after {
	content: '';
	position: absolute;
	top: 100%;
	right: 0;
	width: 180px;
	height: 12px;
}

.tes-user-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #f7f9fa;
	color: var(--ast-global-color-0, #2271b1);
	transition: all 0.2s ease;
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
}

.tes-user-icon:hover,
.tes-user-icon:focus {
	background: rgba(0,0,0,0.05);
	transform: scale(1.05);
	outline: none;
}

.tes-user-dropdown {
	position: absolute;
	top: calc(100% + 8px);
	right: 0;
	background: #fff;
	min-width: 160px;
	border-radius: 8px;
	box-shadow: 0 10px 25px rgba(0,0,0,0.1);
	opacity: 0;
	visibility: hidden;
	transform: translateY(-10px);
	transition: all 0.2s ease;
	z-index: 9999;
	pointer-events: none;
}

.tes-user-menu-widget:hover .tes-user-dropdown,
.tes-user-menu-widget:focus-within .tes-user-dropdown,
.tes-user-menu-widget.is-open .tes-user-dropdown {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	pointer-events: auto;
}

.tes-user-dropdown::before {
	content: '';
	position: absolute;
	top: -6px;
	right: 14px;
	width: 12px;
	height: 12px;
	background: #fff;
	transform: rotate(45deg);
	box-shadow: -2px -2px 5px rgba(0,0,0,0.04);
}

.tes-user-dropdown ul {
	list-style: none;
	margin: 0;
	padding: 8px 0;
}

.tes-user-dropdown ul li {
	margin: 0;
}

.tes-user-dropdown ul li a {
	display: block;
	padding: 10px 20px;
	color: #333;
	text-decoration: none;
	font-weight: 500;
	font-size: 0.95em;
	transition: background 0.1s ease;
}

.tes-user-dropdown ul li a:hover {
	background: #f7f9fa;
	color: var(--ast-global-color-0, #2271b1);
}

/* ==============================================================
   PROFÄ°LÄ°M â€” KARANLIK OYUNLAÅTIRILMIÅ PANEL
============================================================== */

.tes-account-dark {
	--tes-neon: #baff00;
	--tes-neon-dim: rgba(186, 255, 0, 0.15);
	--tes-bg: #0a0a0a;
	--tes-surface: #141414;
	--tes-surface-2: #1a1a1a;
	--tes-border: rgba(255, 255, 255, 0.08);
	--tes-text: #ffffff;
	--tes-text-muted: #888888;
}

/* Sayfa arka planÄ± â€” sadece iÃ§erik alanÄ±, footer kesinlikle dokunulmaz */
body.tes-account-dark .site-content,
body.tes-account-dark #content,
body.tes-account-dark #primary,
body.tes-account-dark .entry-content,
body.tes-account-dark .tes-auth-container {
	background: var(--tes-bg) !important;
}

/* Footer + wrap alanÄ± â€” karanlÄ±k tema dÄ±ÅŸÄ±nda bÄ±rak */
body.tes-account-dark #colophon,
body.tes-account-dark .site-footer,
body.tes-account-dark footer {
	background-color: inherit !important;
}

/* Astra: yan sidebar kapat, tam geniÅŸlik */
body.tes-account-dark #secondary,
body.tes-account-dark .widget-area {
	display: none !important;
}

body.tes-account-dark.ast-left-sidebar #primary,
body.tes-account-dark.ast-right-sidebar #primary,
body.tes-account-dark.ast-left-sidebar .site-main,
body.tes-account-dark.ast-right-sidebar .site-main {
	width: 100% !important;
	max-width: 100% !important;
	flex: 1 1 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

body.tes-account-dark .site-content > .ast-container {
	display: block !important;
	width: 100% !important;
	max-width: 1180px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
	background: transparent !important;
}

body.tes-account-dark article,
body.tes-account-dark .ast-article-single,
body.tes-account-dark .hentry {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

body.tes-account-dark .entry-header,
body.tes-account-dark .entry-title,
body.tes-account-dark .ast-single-entry-banner,
body.tes-account-dark .ast-archive-entry-banner,
body.tes-account-dark .ast-title-bar-wrap,
body.tes-account-dark .ast-page-title,
body.tes-account-dark .ast-breadcrumbs-wrapper,
body.tes-account-dark .woocommerce-MyAccount-content > p:not([class*="tes"]) {
	display: none !important;
	height: 0 !important;
	min-height: 0 !important;
	max-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	overflow: hidden !important;
}

/* Ãœst boÅŸluk â€” Astra sayfa baÅŸlÄ±ÄŸÄ± / sticky header offset sÄ±fÄ±rla */
body.tes-account-dark .site-content,
body.tes-account-dark #content,
body.tes-account-dark .site-main,
body.tes-account-dark .ast-separate-container .site-content,
body.tes-account-dark.ast-separate-container .site-content,
body.tes-account-dark.ast-plain-container .site-content,
body.tes-account-dark.ast-box-layout .site-content {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

body.tes-account-dark.ast-theme-transparent-header #content,
body.tes-account-dark.ast-theme-transparent-header .site-content,
body.tes-account-dark.ast-primary-sticky-header-active .site-content {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

body.tes-account-dark .site-content > .ast-container {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

/* Astra + WooCommerce float temizliÄŸi */
body.tes-account-dark .woocommerce::before,
body.tes-account-dark .woocommerce::after {
	content: none !important;
	display: none !important;
}

body.tes-account-dark .woocommerce-MyAccount-navigation,
body.tes-account-dark .woocommerce-MyAccount-content {
	float: none !important;
	clear: none !important;
}

/* Ana dÃ¼zen â€” CSS Grid (sidebar + iÃ§erik) */
body.tes-account-dark .woocommerce {
	display: grid !important;
	grid-template-columns: 280px minmax(0, 1fr) !important;
	grid-template-rows: auto !important;
	align-items: start !important;
	gap: 32px !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 auto !important;
	padding: 16px 0 48px !important;
	box-sizing: border-box !important;
}

/* Sol sidebar */
body.tes-account-dark .tes-account-sidebar {
	grid-column: 1 !important;
	grid-row: 1 !important;
	width: 280px !important;
	align-self: start !important;
	position: sticky !important;
	top: 90px !important;
	display: flex !important;
	flex-direction: column !important;
	background: var(--tes-surface) !important;
	border: 1px solid var(--tes-border) !important;
	border-radius: 16px !important;
	overflow: hidden !important;
}

body.tes-account-dark .woocommerce-MyAccount-content {
	grid-column: 2 !important;
	grid-row: 1 !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	padding: 0 !important;
	background: transparent !important;
	color: var(--tes-text) !important;
}

body.tes-account-dark .tes-dash {
	width: 100% !important;
	max-width: 100% !important;
}

.tes-account-dark .woocommerce-MyAccount-navigation {
	flex: none !important;
	width: 100% !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	overflow: visible !important;
}

.tes-nav-profile {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 20px 16px;
	border-bottom: 1px solid var(--tes-border);
	background: var(--tes-surface);
}

.tes-nav-avatar {
	width: 44px;
	height: 44px;
	min-width: 44px;
	border-radius: 50%;
	background: var(--tes-neon-dim);
	border: 2px solid var(--tes-neon);
	color: var(--tes-neon);
	font-weight: 700;
	font-size: 1.1em;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden; /* Resim taÅŸmalarÄ±nÄ± engelle */
}

.tes-nav-avatar img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	border-radius: 50% !important;
	margin: 0 !important;
	display: block !important;
}

.tes-nav-user {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.tes-nav-user strong {
	color: var(--tes-neon);
	font-size: 0.95em;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.tes-nav-user span {
	color: var(--tes-text-muted);
	font-size: 0.78em;
}

.tes-account-dark .woocommerce-MyAccount-navigation ul {
	list-style: none;
	padding: 8px;
	margin: 0;
}

.tes-account-dark .woocommerce-MyAccount-navigation ul li {
	margin-bottom: 2px;
}

.tes-account-dark .woocommerce-MyAccount-navigation ul li a {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 11px 14px;
	background: transparent;
	color: var(--tes-text-muted);
	border-radius: 10px;
	text-decoration: none;
	font-weight: 500;
	font-size: 0.9em;
	transition: all 0.2s ease;
	border: 1px solid transparent;
}

.tes-account-dark .woocommerce-MyAccount-navigation ul li a::before {
	content: '';
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	opacity: 0.6;
}

.tes-account-dark .woocommerce-MyAccount-navigation-link--dashboard a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Crect x='3' y='3' width='7' height='7'/%3E%3Crect x='14' y='3' width='7' height='7'/%3E%3Crect x='14' y='14' width='7' height='7'/%3E%3Crect x='3' y='14' width='7' height='7'/%3E%3C/svg%3E");
}

.tes-account-dark .woocommerce-MyAccount-navigation-link--orders a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='%23888'%3E%3Cpath d='M21 16v-2l-8-5V3.5c0-.83-.67-1.5-1.5-1.5S10 2.67 10 3.5V9l-8 5v2l8-2.5V19l-2 1.5V22l3.5-1 3.5 1v-1.5L14 19v-5.5l8 2.5z'/%3E%3C/svg%3E");
}

.tes-account-dark .woocommerce-MyAccount-navigation-link--seviye-puan a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Cpolygon points='12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2'/%3E%3C/svg%3E");
}

.tes-account-dark .woocommerce-MyAccount-navigation-link--edit-address a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E");
}

.tes-account-dark .woocommerce-MyAccount-navigation-link--edit-account a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E");
}

.tes-account-dark .woocommerce-MyAccount-navigation-link--customer-logout a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpolyline points='16 17 21 12 16 7'/%3E%3Cline x1='21' y1='12' x2='9' y2='12'/%3E%3C/svg%3E");
}

.tes-account-dark .woocommerce-MyAccount-navigation ul li a:hover {
	background: var(--tes-surface-2);
	color: var(--tes-text);
	border-color: var(--tes-border);
}

.tes-account-dark .woocommerce-MyAccount-navigation ul li.is-active a {
	background: var(--tes-neon-dim);
	color: var(--tes-neon);
	border-color: rgba(186, 255, 0, 0.25);
}

.tes-account-dark .woocommerce-MyAccount-navigation ul li.is-active a::before {
	opacity: 1;
	filter: brightness(0) saturate(100%) invert(83%) sepia(52%) saturate(1000%) hue-rotate(52deg) brightness(103%) contrast(106%);
}

.tes-account-dark .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout {
	margin-top: 8px;
	padding-top: 8px;
	border-top: 1px solid var(--tes-border);
}

.tes-account-dark .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a {
	color: #ff6b6b;
}

.tes-account-dark .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a:hover {
	background: rgba(255, 107, 107, 0.1);
	color: #ff6b6b;
}

/* SaÄŸ iÃ§erik alanÄ± â€” grid ile yÃ¶netiliyor (yukarÄ±da) */
body.tes-account-dark .woocommerce-MyAccount-content {
	border: none;
	box-shadow: none;
}

/* Dashboard baÅŸlÄ±k */
.tes-dash-header {
	margin-bottom: 28px;
}

.tes-dash-header h2 {
	margin: 0 0 6px;
	font-size: 2em;
	font-weight: 700;
	color: var(--tes-text);
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.tes-dash-header p {
	margin: 0;
	color: var(--tes-text-muted);
	font-size: 0.95em;
}

.tes-dash-header--sub {
	margin-bottom: 20px;
}

.tes-dash-header--sub h2 {
	font-size: 1.4em;
}

/* Seviye kartÄ± */
.tes-level-card--dark {
	display: flex;
	align-items: center;
	gap: 28px;
	padding: 28px 32px;
	background: var(--tes-surface);
	border: 1px solid var(--tes-border);
	border-radius: 20px;
	margin-bottom: 20px;
	flex-wrap: nowrap;
	transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.tes-level-card--dark:hover {
	border-color: rgba(186, 255, 0, 0.2);
	box-shadow: 0 0 30px rgba(186, 255, 0, 0.05);
}

.tes-account-dark .tes-level-ring {
	--tes-yuzde: 0;
	width: 100px;
	height: 100px;
	min-width: 100px;
	border-radius: 50%;
	background: conic-gradient(var(--tes-neon) calc(var(--tes-yuzde) * 1%), #1e1e1e 0);
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	box-shadow: 0 0 30px rgba(186, 255, 0, 0.2), 0 0 60px rgba(186, 255, 0, 0.08);
}

.tes-account-dark .tes-level-ring::before {
	content: '';
	position: absolute;
	inset: 8px;
	background: var(--tes-surface);
	border-radius: 50%;
}

.tes-account-dark .tes-level-ring span {
	position: relative;
	z-index: 1;
	font-weight: 800;
	font-size: 1.2em;
	color: var(--tes-neon);
	letter-spacing: -0.02em;
}

.tes-account-dark .tes-level-info {
	flex: 1;
	min-width: 0;
}

.tes-account-dark .tes-level-info h3 {
	margin: 0 0 8px;
	color: var(--tes-text);
	font-size: 1.15em;
	font-weight: 700;
}

.tes-account-dark .tes-level-sub {
	color: var(--tes-text-muted);
	margin-bottom: 10px;
	font-size: 0.82em;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.tes-account-dark .tes-progressbar {
	width: 100%;
	height: 5px;
	background: #1e1e1e;
	border-radius: 3px;
	overflow: hidden;
}

.tes-account-dark .tes-progressbar-fill {
	height: 100%;
	background: linear-gradient(90deg, var(--tes-neon), #a8ff78);
	box-shadow: 0 0 12px rgba(186, 255, 0, 0.6);
	transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.tes-level-hint {
	margin: 8px 0 0;
	font-size: 0.8em;
	color: var(--tes-text-muted);
}

.tes-btn-outline {
	display: inline-flex;
	align-items: center;
	padding: 10px 24px;
	border: 1.5px solid var(--tes-neon);
	border-radius: 8px;
	color: var(--tes-neon) !important;
	text-decoration: none;
	font-weight: 700;
	font-size: 0.8em;
	letter-spacing: 0.08em;
	transition: all 0.2s ease;
	white-space: nowrap;
	flex-shrink: 0;
}

.tes-btn-outline:hover {
	background: var(--tes-neon);
	color: #000 !important;
	box-shadow: 0 0 20px rgba(186, 255, 0, 0.35);
	transform: translateY(-1px);
}

/* Ä°statistik kartlarÄ± */
.tes-dash-stats {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
	margin-bottom: 24px;
}

.tes-stat-card {
	background: var(--tes-surface);
	border: 1px solid var(--tes-border);
	border-radius: 20px;
	padding: 22px;
	display: flex;
	flex-direction: column;
	min-height: 160px;
	transition: border-color 0.3s ease, box-shadow 0.3s ease, transform 0.2s ease;
	cursor: default;
}

.tes-stat-card:hover {
	border-color: rgba(186, 255, 0, 0.2);
	box-shadow: 0 0 30px rgba(186, 255, 0, 0.05);
	transform: translateY(-2px);
}

.tes-stat-card-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 12px;
}

.tes-stat-icon {
	width: 36px;
	height: 36px;
	border-radius: 10px;
	background: var(--tes-neon-dim);
	color: var(--tes-neon);
	display: flex;
	align-items: center;
	justify-content: center;
}

.tes-stat-badge {
	font-size: 0.68em;
	font-weight: 700;
	color: var(--tes-neon);
	background: var(--tes-neon-dim);
	padding: 4px 8px;
	border-radius: 6px;
	letter-spacing: 0.05em;
}

.tes-stat-card h3 {
	margin: 0 0 10px;
	font-size: 0.82em;
	color: var(--tes-text-muted);
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.tes-stat-big {
	margin: 0;
	font-size: 2.4em;
	font-weight: 800;
	color: var(--tes-neon);
	line-height: 1;
	letter-spacing: -0.02em;
}

.tes-stat-big small {
	font-size: 0.38em;
	opacity: 0.7;
	font-weight: 600;
	margin-left: 2px;
}

.tes-stat-desc,
.tes-stat-empty {
	margin: 8px 0 0;
	font-size: 0.82em;
	color: var(--tes-text-muted);
	line-height: 1.4;
}

.tes-stat-tour {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: auto;
}

.tes-stat-tour-thumb {
	width: 48px;
	height: 48px;
	border-radius: 8px;
	object-fit: cover;
	flex-shrink: 0;
}

.tes-stat-tour-thumb--placeholder {
	background: #2a2a2a;
}

.tes-stat-tour strong {
	display: block;
	font-size: 0.88em;
	color: var(--tes-text);
	margin-bottom: 2px;
}

.tes-stat-meta {
	font-size: 0.72em;
	color: var(--tes-neon);
	font-weight: 600;
	letter-spacing: 0.04em;
}

.tes-stat-avatars {
	display: flex;
	align-items: center;
	gap: 0;
	margin-bottom: 12px;
}

.tes-stat-avatar {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	object-fit: cover;
	border: 2px solid var(--tes-surface);
	margin-left: -8px;
}

.tes-stat-avatar:first-child {
	margin-left: 0;
}

.tes-stat-avatar--placeholder {
	display: inline-block;
	background: #2a2a2a;
}

.tes-stat-more {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--tes-surface-2);
	border: 2px solid var(--tes-surface);
	color: var(--tes-text-muted);
	font-size: 0.75em;
	font-weight: 600;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-left: -8px;
}

.tes-stat-link {
	margin-top: auto;
	font-size: 0.82em;
	color: var(--tes-neon) !important;
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* Son hareketler */
.tes-activity--dark {
	background: var(--tes-surface);
	border: 1px solid var(--tes-border);
	border-radius: 20px;
	padding: 24px;
}

.tes-activity--dark h3 {
	margin: 0 0 16px;
	font-size: 1em;
	color: var(--tes-text);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.tes-account-dark .tes-activity-empty {
	color: var(--tes-text-muted);
	font-size: 0.9em;
	padding: 16px;
	background: var(--tes-surface);
	border-radius: 12px;
	border: 1px solid var(--tes-border);
}

.tes-account-dark .tes-activity-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.tes-account-dark .tes-activity-list li {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 14px 18px;
	background: var(--tes-surface);
	border: 1px solid var(--tes-border);
	border-radius: 12px;
}

.tes-account-dark .tes-activity-icon {
	width: 38px;
	height: 38px;
	min-width: 38px;
	border-radius: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--tes-neon-dim);
	color: var(--tes-neon);
}

.tes-account-dark .tes-activity-text {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.tes-account-dark .tes-activity-text strong {
	color: var(--tes-text);
	font-size: 0.92em;
}

.tes-account-dark .tes-activity-text small {
	color: var(--tes-text-muted);
	font-size: 0.82em;
}

.tes-account-dark .tes-activity-date {
	font-size: 0.75em;
	color: var(--tes-text-muted);
	text-transform: uppercase;
	letter-spacing: 0.04em;
	white-space: nowrap;
}

/* WooCommerce alt sayfalarÄ± (sipariÅŸler, formlar) */
.tes-account-dark .woocommerce-orders-table,
.tes-account-dark .woocommerce-table--order-details {
	background: var(--tes-surface);
	border-color: var(--tes-border) !important;
	border-radius: 12px;
	overflow: hidden;
}

.tes-account-dark .woocommerce-orders-table th,
.tes-account-dark .woocommerce-orders-table td,
.tes-account-dark .woocommerce-table--order-details th,
.tes-account-dark .woocommerce-table--order-details td {
	color: var(--tes-text);
	border-color: var(--tes-border) !important;
	padding: 12px 16px;
}

.tes-account-dark .woocommerce-orders-table thead th,
.tes-account-dark .woocommerce-table--order-details thead th {
	background: var(--tes-surface-2);
	color: var(--tes-text-muted);
	font-size: 0.82em;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.tes-account-dark .woocommerce-orders-table tbody tr:hover td {
	background: var(--tes-surface-2);
}

.tes-account-dark .woocommerce-orders-table .woocommerce-orders-table__cell-order-number a,
.tes-account-dark .woocommerce-orders-table .woocommerce-button {
	color: var(--tes-neon) !important;
}

.tes-account-dark .woocommerce-form-row label,
.tes-account-dark .woocommerce-address-fields label {
	color: var(--tes-text-muted);
}

.tes-account-dark .woocommerce-Input,
.tes-account-dark .woocommerce-Input input,
.tes-account-dark input[type="text"],
.tes-account-dark input[type="email"],
.tes-account-dark input[type="password"],
.tes-account-dark input[type="tel"],
.tes-account-dark input[type="number"],
.tes-account-dark select,
.tes-account-dark textarea {
	background: var(--tes-surface) !important;
	border: 1px solid var(--tes-border) !important;
	color: var(--tes-text) !important;
	border-radius: 8px !important;
}

.tes-account-dark .woocommerce-Input:focus,
.tes-account-dark input:focus,
.tes-account-dark select:focus,
.tes-account-dark textarea:focus {
	border-color: var(--tes-neon) !important;
	box-shadow: 0 0 0 2px var(--tes-neon-dim) !important;
	outline: none;
}

.tes-account-dark .woocommerce-button,
.tes-account-dark button[type="submit"],
.tes-account-dark .button {
	background: var(--tes-neon) !important;
	color: #000 !important;
	border: none !important;
	border-radius: 8px !important;
	font-weight: 600 !important;
	padding: 10px 24px !important;
	transition: opacity 0.2s ease;
}

.tes-account-dark .woocommerce-button:hover,
.tes-account-dark button[type="submit"]:hover {
	opacity: 0.85;
	color: #000 !important;
}

.tes-account-dark .woocommerce-message,
.tes-account-dark .woocommerce-info,
.tes-account-dark .woocommerce-error {
	background: var(--tes-surface) !important;
	border-left: 4px solid var(--tes-neon) !important;
	color: var(--tes-text) !important;
	border-radius: 8px;
}

.tes-account-dark .woocommerce-error {
	border-left-color: #ff6b6b !important;
}

/* GiriÅŸ / KayÄ±t formlarÄ± (giriÅŸ yapmamÄ±ÅŸ kullanÄ±cÄ±) */
.tes-account-dark .u-columns,
.tes-account-dark .woocommerce-form-login,
.tes-account-dark .woocommerce-form-register {
	background: var(--tes-surface);
	border: 1px solid var(--tes-border);
	border-radius: 16px;
	padding: 28px;
}

.tes-account-dark .u-column1,
.tes-account-dark .u-column2 {
	background: transparent;
}

.tes-account-dark .woocommerce-form-login h2,
.tes-account-dark .woocommerce-form-register h2 {
	color: var(--tes-text);
}

.tes-account-dark .tes-kvkk-metin {
	background: var(--tes-surface-2) !important;
	border-color: var(--tes-border) !important;
	color: var(--tes-text-muted);
}

.tes-account-dark .tes-kvkk-metin summary {
	color: var(--tes-text);
}

/* DoÄŸrulama durumu kutularÄ± */
.tes-account-dark .woocommerce-message[style*="fff3cd"],
.tes-account-dark .woocommerce-message[style*="d4edda"] {
	border-left-color: var(--tes-neon) !important;
}

/* Responsive */
@media (max-width: 992px) {
	.tes-dash-stats {
		grid-template-columns: 1fr 1fr;
	}
	.tes-dash-stats .tes-stat-card:last-child {
		grid-column: 1 / -1;
	}
}

@media (max-width: 768px) {
	body.tes-account-dark .site-content > .ast-container {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}

	body.tes-account-dark .woocommerce {
		display: flex !important;
		flex-direction: column !important;
		gap: 16px !important;
		padding: 16px 0 32px !important;
	}

	body.tes-account-dark .tes-account-sidebar {
		position: static !important;
		width: 100% !important;
		grid-column: auto !important;
	}

	body.tes-account-dark .woocommerce-MyAccount-content {
		grid-column: auto !important;
		width: 100% !important;
	}

	.tes-account-dark .woocommerce-MyAccount-navigation ul {
		display: flex !important;
		flex-direction: column !important;
		overflow-x: visible !important;
		gap: 2px !important;
		padding: 8px !important;
	}

	.tes-account-dark .woocommerce-MyAccount-navigation ul li {
		margin-bottom: 0 !important;
		flex-shrink: unset !important;
		width: 100% !important;
	}

	.tes-account-dark .woocommerce-MyAccount-navigation ul li a {
		padding: 11px 14px !important;
		font-size: 0.88em !important;
		white-space: nowrap !important;
		width: 100% !important;
		box-sizing: border-box !important;
	}

	/* Çıkış Yap kısmına ekstra alt boşluk */
	.tes-account-dark .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout {
		margin-top: 12px !important;
		margin-bottom: 8px !important;
	}

	.tes-nav-profile {
		display: flex;
	}

	.tes-dash-stats {
		grid-template-columns: 1fr;
	}

	.tes-level-card--dark {
		flex-direction: column;
		text-align: center;
	}

	.tes-btn-outline {
		width: 100%;
		justify-content: center;
	}

	.tes-account-dark .tes-activity-list li {
		flex-wrap: wrap;
	}

	.tes-account-dark .tes-activity-date {
		width: 100%;
		padding-left: 52px;
	}
}

@media (max-width: 480px) {
	.tes-dash-header h2 {
		font-size: 1.4em;
	}
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
 * HEADER PROFIL MENÃœSÃœ & DROPDOWN STÄ°LLERÄ°
 * â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

/* MenÃ¼ Ã–ÄŸesi */
.tes-header-user-item {
	position: relative !important;
}

/* Tetikleyici Link */
.tes-header-user-trigger {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	padding: 5px 10px !important;
	text-decoration: none !important;
	background: transparent !important;
	border: none !important;
	cursor: pointer !important;
}

/* Avatar Ã‡emberi */
#page .tes-header-avatar-container {
	width: 38px !important;
	height: 38px !important;
	border-radius: 50% !important;
	overflow: hidden !important;
	border: 1px dashed rgba(255, 255, 255, 0.5) !important; /* Mockup ile birebir kesikli beyaz halka */
	padding: 2px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: transparent !important;
	flex-shrink: 0 !important;
	box-sizing: border-box !important;
}

#page .tes-header-avatar-img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	display: block !important;
	border-radius: 50% !important; /* Daire resim */
	margin: 0 !important;
}

/* KullanÄ±cÄ± Bilgileri */
#page .tes-header-user-meta {
	display: flex !important;
	flex-direction: column !important; /* Alt alta hizalama */
	align-items: flex-start !important;
	justify-content: center !important;
	text-align: left !important;
	line-height: 1.3 !important;
}

#page .tes-header-label {
	font-size: 11px !important;
	font-weight: 800 !important;
	color: #fff !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
}

#page .tes-header-email {
	font-size: 10px !important;
	color: rgba(255, 255, 255, 0.5) !important;
	font-weight: 500 !important;
	display: block !important;
}

/* Dropdown Caret Oku */
.tes-header-caret {
	color: rgba(255, 255, 255, 0.5);
	display: flex;
	align-items: center;
	transition: transform 0.2s ease, color 0.2s ease;
	margin-left: 2px;
}

/* Hover Efektleri */
.tes-header-user-item:hover .tes-header-caret {
	transform: rotate(180deg);
	color: var(--tes-neon, #baff00);
}

.tes-header-user-item:hover .tes-header-dropdown {
	opacity: 1 !important;
	visibility: visible !important;
	transform: translateY(0) !important;
}

/* Dropdown Listesi */
#page .main-header-menu .menu-item .sub-menu.tes-header-dropdown,
.tes-header-dropdown {
	position: absolute !important;
	top: 100% !important;
	right: 0 !important;
	width: 210px !important;
	background: #0a0a0a !important;
	border: 1px solid rgba(186, 255, 0, 0.2) !important;
	border-radius: 14px !important;
	overflow: hidden !important; /* LÄ°STEDEKÄ° RADÄ°US KORUMA: Alt Ã¶ÄŸelerin taÅŸmasÄ±nÄ± Ã¶nler */
	box-shadow: 0 12px 36px rgba(0, 0, 0, 0.8), 0 0 25px rgba(186, 255, 0, 0.05) !important;
	padding: 8px 0 !important;
	margin: 0 !important; /* Gecikmesiz geÃ§iÅŸ iÃ§in boÅŸluk sÄ±fÄ±rlandÄ±, bÃ¶ylece hover kaybolmaz */
	list-style: none !important;
	opacity: 0;
	visibility: hidden;
	transform: translateY(10px);
	transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1), transform 0.2s cubic-bezier(0.4, 0, 0.2, 1), visibility 0.2s;
	z-index: 99999 !important;
}

/* Dropdown Caret ÃœstÃ¼ ÃœÃ§gen (SÃ¼s) */
#page .main-header-menu .menu-item .sub-menu.tes-header-dropdown::before,
.tes-header-dropdown::before {
	content: '' !important;
	position: absolute !important;
	bottom: 100% !important;
	right: 24px !important;
	border-width: 6px !important;
	border-style: solid !important;
	border-color: transparent transparent #0a0a0a transparent !important;
}

#page .main-header-menu .menu-item .sub-menu.tes-header-dropdown::after,
.tes-header-dropdown::after {
	content: '' !important;
	position: absolute !important;
	bottom: 100% !important;
	right: 23px !important;
	border-width: 7px !important;
	border-style: solid !important;
	border-color: transparent transparent rgba(186, 255, 0, 0.2) transparent !important;
	z-index: -1 !important;
}

/* Dropdown Linkleri */
#page .main-header-menu .menu-item .sub-menu.tes-header-dropdown li,
.tes-header-dropdown li {
	margin: 0 !important;
	padding: 0 !important;
	display: block !important;
}

#page .main-header-menu .menu-item .sub-menu.tes-header-dropdown li a,
.tes-header-dropdown li a {
	display: block !important;
	padding: 10px 22px !important;
	color: rgba(255, 255, 255, 0.75) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	transition: all 0.2s ease !important;
	border: none !important;
	background: transparent !important;
	text-align: left !important;
}

#page .main-header-menu .menu-item .sub-menu.tes-header-dropdown li a:hover,
.tes-header-dropdown li a:hover {
	background: rgba(186, 255, 0, 0.06) !important;
	color: var(--tes-neon, #baff00) !important;
	padding-left: 26px !important;
}

/* Ã‡Ä±kÄ±ÅŸ Yap Butonu */
#page .main-header-menu .menu-item .sub-menu.tes-header-dropdown .tes-header-dropdown-logout a,
.tes-header-dropdown .tes-header-dropdown-logout a {
	color: #ff453a !important;
	border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
	margin-top: 6px !important;
	padding-top: 14px !important;
}

#page .main-header-menu .menu-item .sub-menu.tes-header-dropdown .tes-header-dropdown-logout a:hover,
.tes-header-dropdown .tes-header-dropdown-logout a:hover {
	background: rgba(255, 69, 58, 0.06) !important;
	color: #ff5b52 !important;
}

/* GiriÅŸ/KayÄ±t MenÃ¼ Butonu (ZiyaretÃ§i) */
.tes-header-login-item {
	display: flex !important;
	align-items: center !important;
	padding: 0 10px !important;
}

.tes-header-login-link {
	color: #fff !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 38px !important;
	height: 38px !important;
	border-radius: 50% !important;
	border: 2px solid rgba(255, 255, 255, 0.15) !important;
	background: rgba(255, 255, 255, 0.05) !important;
	transition: all 0.25s ease !important;
	padding: 0 !important;
	margin: 0 !important;
}

.tes-header-login-link:hover {
	border-color: var(--tes-neon, #baff00) !important;
	color: var(--tes-neon, #baff00) !important;
	background: rgba(186, 255, 0, 0.05) !important;
	box-shadow: 0 0 15px rgba(186, 255, 0, 0.25) !important;
	transform: translateY(-1px) !important;
}

.tes-header-login-item a:hover {
	background: var(--tes-neon, #baff00) !important;
	color: #000 !important;
	box-shadow: 0 0 15px rgba(186, 255, 0, 0.35) !important;
}

/* Mobile MenÃ¼ UyumluluÄŸu */
@media (max-width: 921px) {
	.tes-header-dropdown {
		position: static !important;
		width: 100% !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		box-shadow: none !important;
		border: none !important;
		background: transparent !important;
		padding: 0 0 0 15px !important;
		margin: 5px 0 0 0 !important;
		display: none !important;
	}

	.tes-header-user-item.ast-submenu-expanded .tes-header-dropdown {
		display: block !important;
	}

	.tes-header-dropdown::before,
	.tes-header-dropdown::after {
		display: none !important;
	}

	.tes-header-dropdown li a {
		padding: 8px 15px !important;
	}
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
 * PROFÄ°L RESMÄ° (AVATAR) YÃœKLEME ALANI STÄ°LLERÄ°
 * â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.tes-avatar-upload-fieldset {
	border: 1px solid var(--tes-border, #1e1e1e) !important;
	padding: 24px !important;
	border-radius: 20px !important;
	margin-bottom: 30px !important;
	background: var(--tes-surface, #0d0d0d) !important;
}

.tes-avatar-upload-fieldset legend {
	color: var(--tes-neon, #baff00) !important;
	font-weight: 800 !important;
	font-size: 0.85em !important;
	text-transform: uppercase !important;
	letter-spacing: 0.08em !important;
	padding: 0 12px !important;
	background: #0a0a0a !important;
}

.tes-avatar-upload-wrapper {
	display: flex;
	align-items: center;
	gap: 24px;
	flex-wrap: wrap;
}

.tes-avatar-preview-container {
	width: 96px;
	height: 96px;
	border-radius: 50%;
	overflow: hidden;
	border: 2px solid var(--tes-border, #1e1e1e);
	display: flex;
	align-items: center;
	justify-content: center;
	background: #000;
	box-shadow: 0 0 15px rgba(0, 0, 0, 0.5);
	flex-shrink: 0;
}

.tes-avatar-preview-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.tes-avatar-input-container {
	flex: 1;
	min-width: 220px;
}

.tes-avatar-input-container label {
	color: #fff !important;
	font-weight: 700 !important;
	font-size: 0.9em !important;
	margin-bottom: 8px !important;
	display: block !important;
}

.tes-avatar-input-container input[type="file"] {
	background: #111 !important;
	border: 1px solid var(--tes-border, #1e1e1e) !important;
	padding: 10px !important;
	color: #fff !important;
	border-radius: 8px !important;
	width: 100% !important;
}

.tes-avatar-upload-hint {
	display: block;
	font-size: 11px;
	color: var(--tes-text-muted, #777);
	margin-top: 8px;
}

/* ==========================================================================
   Owl Camp Unified Full-Cover Card Styles (Second Image Override)
   ========================================================================== */
.tes-grid-container {
    width: 100% !important;
    margin: 20px 0 !important;
}

.tes-grid {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    gap: 20px !important;
    padding: 10px 4px 20px 4px !important; /* spacing for shadows and card lift */
    -webkit-overflow-scrolling: touch;
}

/* Custom Scrollbar Styles for Webkit Browsers */
.tes-grid::-webkit-scrollbar {
    height: 6px !important;
}

.tes-grid::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.03) !important;
    border-radius: 10px !important;
}

.tes-grid::-webkit-scrollbar-thumb {
    background: rgba(186, 255, 0, 0.25) !important;
    border-radius: 10px !important;
}

.tes-grid::-webkit-scrollbar-thumb:hover {
    background: rgba(186, 255, 0, 0.6) !important;
}

.tes-fe-card {
    position: relative !important;
    height: 420px !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    text-decoration: none !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2) !important;
    transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease !important;
    background: #141414 !important;
    scroll-snap-align: start !important;
    flex-shrink: 0 !important;
}

/* Filtre tarafından gizlenen kartlar — display:flex !important'ı ezmek için !important gerekli */
.tes-fe-card.tes-hidden {
    display: none !important;
}

/* Kategori değişimindeki fade up geçiş animasyonu */
.tes-fe-card.tes-fade-up-active {
    transition: opacity 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
    opacity: 1 !important;
    transform: translateY(0) !important;
}

/* Responsive Card Width Rules - Maximum 5 on Desktop */
@media (min-width: 1024px) {
    .tes-fe-card {
        flex: 0 0 calc(20% - 16px) !important; /* 5 cards per row */
    }
}

@media (max-width: 1023px) and (min-width: 768px) {
    .tes-fe-card {
        flex: 0 0 calc(50% - 10px) !important; /* 2 cards per row */
    }
}

@media (max-width: 767px) {
    .tes-fe-card {
        flex: 0 0 calc(82% - 10px) !important; /* 1.2 cards for swipe peek hint */
    }
}

.tes-fe-card:hover {
    transform: translateY(-6px) !important;
    border-color: #baff00 !important;
    box-shadow: 0 12px 30px rgba(186, 255, 0, 0.25) !important;
}

.tes-fe-card-bg {
    position: absolute !important;
    inset: 0 !important;
    background-size: cover !important;
    background-position: center !important;
    transition: transform 0.5s ease !important;
    z-index: 1 !important;
}

.tes-fe-card:hover .tes-fe-card-bg {
    transform: scale(1.06) !important;
}

.tes-fe-card-overlay {
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 30%, rgba(0, 0, 0, 0.5) 60%, rgba(0, 0, 0, 0.95) 100%) !important;
    z-index: 2 !important;
    pointer-events: none !important;
}

.tes-fe-card-content {
    position: relative !important;
    z-index: 3 !important;
    padding: 24px !important;
    color: #fff !important;
    text-align: left !important;
}

.tes-fe-card-title {
    font-size: 15px !important;
    font-weight: 800 !important;
    color: #fff !important; /* Title in pure white, highlight on hover */
    margin: 0 0 10px 0 !important;
    line-height: 1.4 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    transition: color 0.2s ease !important;
}

.tes-fe-card:hover .tes-fe-card-title {
    color: #baff00 !important; /* lime green color on card hover */
}

.tes-fe-card-meta {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 13px !important;
    color: #fff !important;
    margin-bottom: 6px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
}

.tes-fe-card-meta:last-of-type {
    margin-bottom: 0 !important;
}

.tes-fe-card-meta svg {
    stroke: #baff00 !important;
    flex-shrink: 0 !important;
}

.tes-fe-card-meta .text {
    opacity: 0.85 !important;
}

/* Discount Sale Badge (Top-left Box) */
.tes-fe-card-badge-sale {
    position: absolute !important;
    top: 18px !important;
    left: 18px !important;
    background: #ff3b30 !important;
    color: #ffffff !important;
    padding: 6px 12px !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    letter-spacing: 0.8px !important;
    text-transform: uppercase !important;
    border-radius: 8px !important;
    z-index: 4 !important;
    box-shadow: 0 4px 12px rgba(255, 59, 48, 0.4) !important;
}

/* Bottom Price Styles */
.tes-fe-card-price {
    margin-top: 14px !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    color: #baff00 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    line-height: 1 !important;
}

.tes-fe-card-price del {
    color: rgba(255, 255, 255, 0.45) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-decoration: line-through !important;
}

.tes-fe-card-price ins {
    color: #baff00 !important;
    text-decoration: none !important;
    background: transparent !important;
    padding: 0 !important;
}

.tes-fe-card-price .woocommerce-Price-amount {
    color: inherit !important;
}

.tes-fe-filter-wrap {
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    margin-bottom: 24px !important;
    justify-content: center !important;
}

.tes-fe-cat-pill {
    background: rgba(255,255,255,0.06) !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    color: #888 !important;
    border-radius: 8px !important;
    padding: 7px 16px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    outline: none !important;
}

.tes-fe-cat-pill:hover {
    border-color: #baff00 !important;
    color: #baff00 !important;
}

.tes-fe-cat-pill.active {
    background: #baff00 !important;
    color: #000 !important;
    border-color: #baff00 !important;
    font-weight: 700 !important;
    box-shadow: 0 4px 15px rgba(186, 255, 0, 0.25) !important;
}

/* ==========================================================================
   Horizontal Slider Navigation Styles
   ========================================================================== */
.tes-slider-wrapper {
    position: relative !important;
    width: 100% !important;
}

/* Hide standard scrollbars completely */
.tes-grid {
    scrollbar-width: none !important; /* Firefox */
    -ms-overflow-style: none !important;  /* IE and Edge */
}
.tes-grid::-webkit-scrollbar {
    display: none !important; /* Chrome, Safari and Opera */
}

/* Float Arrow Buttons on Left & Right */
.tes-slider-arrow {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 46px !important;
    height: 46px !important;
    background: rgba(10, 10, 10, 0.85) !important;
    border: 1.5px solid rgba(255, 255, 255, 0.15) !important;
    color: #ffffff !important;
    border-radius: 50% !important;
    font-size: 16px !important;
    font-weight: bold !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    z-index: 100 !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    outline: none !important;
    padding: 0 !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5) !important;
    user-select: none !important;
}

.tes-slider-arrow:hover {
    background: #baff00 !important;
    color: #000000 !important;
    border-color: #baff00 !important;
    box-shadow: 0 0 15px rgba(186, 255, 0, 0.45) !important;
}

.tes-slider-arrow:active {
    transform: translateY(-50%) scale(0.92) !important;
}

.tes-slider-prev {
    left: -23px !important;
}

.tes-slider-next {
    right: -23px !important;
}

/* Mobile & Tablet Adjustments for Navigation Arrows */
@media (max-width: 1200px) {
    /* If the screen width is close to container, bring arrows slightly inside to avoid edge cutting */
    .tes-slider-prev {
        left: -10px !important;
    }
    .tes-slider-next {
        right: -10px !important;
    }
}

@media (max-width: 767px) {
    .tes-slider-prev {
        left: 6px !important;
        background: rgba(10, 10, 10, 0.9) !important;
    }
    .tes-slider-next {
        right: 6px !important;
        background: rgba(10, 10, 10, 0.9) !important;
    }
    .tes-slider-arrow {
        width: 38px !important;
        height: 38px !important;
        font-size: 13px !important;
        border-color: rgba(255, 255, 255, 0.2) !important;
    }
    /* Let the user swipe with momentum scrolling */
    .tes-grid {
        scroll-snap-type: x mandatory !important;
    }
}

/* ==========================================================================
   Static Wrapping Grid Layout Styles (Left-Aligned Flex Grid)
   ========================================================================== */
.tes-grid.tes-layout-grid {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important; /* Align cards to the left in each row */
    gap: 20px !important;
    overflow-x: visible !important;
    padding: 10px 4px !important;
}

/* Ensure grid cards use responsive widths with flex basis */
.tes-grid.tes-layout-grid .tes-fe-card {
    flex: 0 0 calc(20% - 16px) !important; /* 5 columns on desktop */
    min-width: 180px !important; /* prevent cards from shrinking too much */
    max-width: 230px !important; /* standard max width for 5 columns */
}

@media (max-width: 1023px) and (min-width: 768px) {
    .tes-grid.tes-layout-grid .tes-fe-card {
        flex: 0 0 calc(50% - 10px) !important; /* 2 columns on tablet */
        max-width: 340px !important;
    }
}

@media (max-width: 767px) {
    .tes-grid.tes-layout-grid {
        justify-content: center !important; /* Center single card on mobile screens */
    }
    .tes-grid.tes-layout-grid .tes-fe-card {
        flex: 0 0 100% !important; /* 1 column on mobile */
        max-width: 320px !important; /* beautifully centered mobile card width */
    }
}

/* Hidden cards for infinite scroll reveal */
.tes-fe-card.tes-card-hidden {
    display: none !important;
}

/* ============================================================
   TES TAKVİM - Schedule Calendar Component
   Shortcode: [tes_takvim]
   ============================================================ */

.tes-takvim-wrap {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
    font-family: 'Roboto', 'Sofia Pro', sans-serif;
}

/* Month Group */
.tes-takvim-month-group {
    margin-bottom: 12px;
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.06);
}

/* Month Header */
.tes-takvim-month-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 20px;
    background: #1a1a1a;
    border-bottom: 1px solid rgba(255,255,255,0.07);
}

.tes-takvim-month-label {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: #baff00;
}

.tes-takvim-month-count {
    font-size: 11px;
    color: rgba(255,255,255,0.35);
    letter-spacing: 0.5px;
}

/* Row (single event/tour) */
.tes-takvim-row {
    display: flex;
    align-items: center;
    gap: 0;
    padding: 14px 20px;
    background: #111111;
    border-bottom: 1px solid rgba(255,255,255,0.05);
    text-decoration: none !important;
    color: #ffffff !important;
    transition: background 0.2s ease, transform 0.15s ease;
    cursor: pointer;
}

.tes-takvim-row:last-child {
    border-bottom: none;
}

.tes-takvim-row:hover {
    background: #1c1c1c;
    transform: translateX(3px);
}

.tes-takvim-row:hover .tes-takvim-cta {
    color: #baff00 !important;
    letter-spacing: 0.5px;
}

/* Date Column */
.tes-takvim-date-col {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 48px;
    width: 48px;
    margin-right: 16px;
    flex-shrink: 0;
}

.tes-takvim-day-num {
    font-size: 26px;
    font-weight: 800;
    line-height: 1;
    color: #ffffff;
    font-family: 'Anton', 'Roboto', sans-serif;
}

.tes-takvim-day-name {
    font-size: 10px;
    color: rgba(255,255,255,0.4);
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-top: 2px;
}

/* Type Badge Column */
.tes-takvim-type-col {
    min-width: 90px;
    width: 90px;
    flex-shrink: 0;
    margin-right: 18px;
}

.tes-takvim-badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.3px;
}

.tes-takvim-badge--tur {
    background: rgba(186, 255, 0, 0.12);
    color: #baff00;
    border: 1px solid rgba(186, 255, 0, 0.25);
}

.tes-takvim-badge--etkinlik {
    background: rgba(255, 111, 0, 0.12);
    color: #ff9a3c;
    border: 1px solid rgba(255, 111, 0, 0.25);
}

/* Info Column (title + location) */
.tes-takvim-info-col {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
    margin-right: 16px;
}

.tes-takvim-title {
    font-size: 14px;
    font-weight: 600;
    color: #ffffff;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: flex;
    align-items: center;
    gap: 7px;
}

.tes-takvim-sale-dot {
    display: inline-block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #ff4d4d;
    flex-shrink: 0;
    box-shadow: 0 0 6px rgba(255, 77, 77, 0.6);
    animation: takvim-pulse 1.8s infinite;
}

@keyframes takvim-pulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50%       { opacity: 0.5; transform: scale(1.3); }
}

.tes-takvim-location {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    color: rgba(255,255,255,0.4);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Date Range Column */
.tes-takvim-dates-col {
    min-width: 160px;
    width: 160px;
    flex-shrink: 0;
    margin-right: 16px;
}

.tes-takvim-daterange {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 11px;
    color: rgba(255,255,255,0.4);
    white-space: nowrap;
}

/* Price & CTA Column */
.tes-takvim-price-col {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px;
    min-width: 110px;
    flex-shrink: 0;
}

.tes-takvim-price {
    font-size: 15px;
    font-weight: 700;
    color: #ffffff;
    white-space: nowrap;
}

.tes-takvim-price .woocommerce-Price-amount {
    color: #ffffff !important;
    font-weight: 700 !important;
}

.tes-takvim-price ins .woocommerce-Price-amount {
    color: #baff00 !important;
}

.tes-takvim-price del .woocommerce-Price-amount {
    color: rgba(255,255,255,0.3) !important;
    font-size: 11px !important;
}

.tes-takvim-cta {
    display: inline-flex;
    align-items: center;
    padding: 5px 14px;
    background: #baff00;
    color: #000000 !important;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.3px;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.tes-takvim-row:hover .tes-takvim-cta {
    background: #d4ff3d !important;
    color: #000 !important;
    box-shadow: 0 0 12px rgba(186,255,0,0.45);
    letter-spacing: 0.3px !important;
}

/* ---- Responsive ---- */
@media (max-width: 900px) {
    .tes-takvim-dates-col {
        display: none;
    }
}

@media (max-width: 680px) {
    .tes-takvim-type-col {
        display: none;
    }

    .tes-takvim-row {
        padding: 12px 14px;
        gap: 10px;
    }

    .tes-takvim-price-col {
        min-width: 80px;
    }

    .tes-takvim-cta {
        padding: 4px 10px;
        font-size: 10px;
    }
}

@media (max-width: 480px) {
    .tes-takvim-date-col {
        min-width: 36px;
        width: 36px;
        margin-right: 10px;
    }

    .tes-takvim-day-num {
        font-size: 20px;
    }

    .tes-takvim-title {
        font-size: 13px;
    }

    .tes-takvim-price {
        font-size: 13px;
    }

    .tes-takvim-month-header {
        padding: 10px 14px;
    }

    .tes-takvim-row {
        padding: 10px 14px;
    }
}

/* ---- Geçmiş Etkinlik / Tur Stilleri ---- */
.tes-takvim-row--past {
    opacity: 0.45;
}

.tes-takvim-row--past:hover {
    background: #111111 !important;
    transform: none !important;
    opacity: 0.52;
}

.tes-takvim-row--past .tes-takvim-title {
    text-decoration: line-through;
    text-decoration-color: rgba(255,255,255,0.4);
    color: rgba(255,255,255,0.5) !important;
}

.tes-takvim-row--past .tes-takvim-day-num {
    color: rgba(255,255,255,0.35) !important;
}

.tes-takvim-row--past .tes-takvim-badge--tur {
    background: rgba(255,255,255,0.05) !important;
    color: rgba(255,255,255,0.3) !important;
    border-color: rgba(255,255,255,0.1) !important;
}

.tes-takvim-row--past .tes-takvim-badge--etkinlik {
    background: rgba(255,255,255,0.05) !important;
    color: rgba(255,255,255,0.3) !important;
    border-color: rgba(255,255,255,0.1) !important;
}

.tes-takvim-row--past .tes-takvim-price {
    text-decoration: line-through;
    color: rgba(255,255,255,0.3) !important;
}

.tes-takvim-row--past .tes-takvim-price .woocommerce-Price-amount {
    color: rgba(255,255,255,0.3) !important;
}

.tes-takvim-cta--past {
    display: inline-flex;
    align-items: center;
    padding: 5px 12px;
    background: rgba(255,255,255,0.07) !important;
    color: rgba(255,255,255,0.35) !important;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.3px;
    border: 1px solid rgba(255,255,255,0.1);
    white-space: nowrap;
}

.tes-takvim-row--past:hover .tes-takvim-cta--past {
    background: rgba(255,255,255,0.07) !important;
    color: rgba(255,255,255,0.35) !important;
    box-shadow: none !important;
    letter-spacing: 0.3px !important;
}

.tes-takvim-row--past .tes-takvim-sale-dot {
    display: none !important;
}

/* =========================================================
 * EKSTRA SEÇENEKLERİ - RADYO BUTON TASARIMI
 * ========================================================= */

.tes-ekstra-secenekler {
	margin: 18px 0 10px;
}

.tes-ekstra-label {
	display: block;
	font-size: 12px;
	font-weight: 700;
	color: rgba(255,255,255,0.5);
	text-transform: uppercase;
	letter-spacing: 0.8px;
	margin-bottom: 12px;
}

.tes-ekstra-grid {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.tes-ekstra-secenek-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 14px;
	background: rgba(255,255,255,0.03);
	border: 1px solid rgba(255,255,255,0.08);
	border-radius: 10px;
	cursor: pointer;
	transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
	position: relative;
}

.tes-ekstra-secenek-item:hover {
	border-color: rgba(186,255,0,0.3);
	background: rgba(186,255,0,0.04);
}

.tes-ekstra-secenek-item.selected {
	border-color: #baff00;
	background: rgba(186,255,0,0.07);
	box-shadow: 0 0 12px rgba(186,255,0,0.12);
}

.tes-ekstra-secenek-item input[type="radio"] {
	display: none;
}

.tes-ekstra-radio-custom {
	width: 18px;
	height: 18px;
	border-radius: 50%;
	border: 2px solid rgba(255,255,255,0.25);
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: border-color 0.2s ease;
}

.tes-ekstra-secenek-item.selected .tes-ekstra-radio-custom {
	border-color: #baff00;
	background: radial-gradient(circle, #baff00 38%, transparent 42%);
}

.tes-ekstra-ad {
	flex: 1;
	font-size: 13.5px;
	font-weight: 600;
	color: #fff;
}

.tes-ekstra-fiyat {
	font-size: 13px;
	font-weight: 700;
	color: #baff00;
	white-space: nowrap;
}

.tes-ekstra-none .tes-ekstra-fiyat {
	color: rgba(255,255,255,0.35);
}

/* =========================================================
 * DİNAMİK TOPLAM FİYAT GÖSTERİMİ
 * ========================================================= */

.tes-total-price-wrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 14px 16px;
	background: rgba(186,255,0,0.05);
	border: 1px solid rgba(186,255,0,0.2);
	border-radius: 12px;
	margin: 14px 0;
}

.tes-total-price-label {
	font-size: 12px;
	font-weight: 600;
	color: rgba(255,255,255,0.55);
	text-transform: uppercase;
	letter-spacing: 0.7px;
}

.tes-total-price-value {
	font-size: 22px;
	font-weight: 800;
	color: #baff00;
	letter-spacing: -0.5px;
}

/* =========================================================
 * YORUM FOTOĞRAF GALERİSİ (Ürün sayfası altı)
 * ========================================================= */

.tes-review-photos {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: 12px;
	flex-wrap: wrap;
}

.tes-review-thumb {
	width: 72px;
	height: 72px;
	object-fit: cover;
	border-radius: 8px;
	cursor: pointer;
	border: 2px solid transparent;
	transition: border-color 0.2s ease, transform 0.15s ease;
}

.tes-review-thumb:hover {
	border-color: #baff00;
	transform: scale(1.04);
}

.tes-review-thumb-more {
	position: relative;
	width: 72px;
	height: 72px;
	border-radius: 8px;
	overflow: hidden;
	cursor: pointer;
	flex-shrink: 0;
}

.tes-review-thumb-more img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.tes-review-thumb-overlay {
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,0.62);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 16px;
	font-weight: 800;
	line-height: 1.2;
	transition: background 0.2s ease;
	text-align: center;
}

.tes-review-thumb-overlay span {
	font-size: 9px;
	font-weight: 600;
	letter-spacing: 0.4px;
	opacity: 0.85;
	margin-top: 2px;
}

.tes-review-thumb-more:hover .tes-review-thumb-overlay {
	background: rgba(186,255,0,0.55);
	color: #000;
}

/* =========================================================
 * LİGHTBOX GALERİ
 * ========================================================= */

.tes-review-lightbox {
	position: fixed;
	inset: 0;
	z-index: 999999;
	display: none;
	align-items: center;
	justify-content: center;
}
.tes-review-lightbox.active {
	display: flex;
}

.tes-lb-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,0.9);
}

.tes-lb-inner {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	max-width: 90vw;
	max-height: 90vh;
	z-index: 1;
}

.tes-lb-img-wrap {
	max-width: 80vw;
	max-height: 70vh;
	display: flex;
	align-items: center;
	justify-content: center;
}

#tes-lb-main {
	max-width: 100%;
	max-height: 70vh;
	border-radius: 10px;
	box-shadow: 0 0 60px rgba(0,0,0,0.8);
	object-fit: contain;
}

.tes-lb-close {
	position: absolute;
	top: -46px;
	right: 0;
	background: transparent;
	border: none;
	color: #fff;
	font-size: 32px;
	cursor: pointer;
	line-height: 1;
	opacity: 0.75;
	transition: opacity 0.15s ease;
}

.tes-lb-close:hover { opacity: 1; }

.tes-lb-prev,
.tes-lb-next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: rgba(255,255,255,0.1);
	border: none;
	color: #fff;
	font-size: 22px;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.15s ease;
	z-index: 2;
}

.tes-lb-prev { left: -54px; }
.tes-lb-next { right: -54px; }
.tes-lb-prev:hover, .tes-lb-next:hover { background: rgba(186,255,0,0.25); }

.tes-lb-counter {
	margin-top: 10px;
	color: rgba(255,255,255,0.5);
	font-size: 12px;
	font-weight: 600;
}

.tes-lb-strip {
	display: flex;
	gap: 6px;
	margin-top: 10px;
	max-width: 80vw;
	overflow-x: auto;
	padding-bottom: 4px;
}

.tes-lb-strip-thumb {
	width: 50px;
	height: 50px;
	object-fit: cover;
	border-radius: 6px;
	cursor: pointer;
	border: 2px solid transparent;
	flex-shrink: 0;
	opacity: 0.6;
	transition: opacity 0.15s ease, border-color 0.15s ease;
}

.tes-lb-strip-thumb.active,
.tes-lb-strip-thumb:hover {
	opacity: 1;
	border-color: #baff00;
}

/* =========================================================
 * DEĞERLENDİRME MODALI - FOTOĞRAF YÜKLEME ALANI
 * ========================================================= */

.tes-eval-upload-area {
	border: 1.5px dashed rgba(255,255,255,0.15);
	border-radius: 10px;
	padding: 14px 16px;
	transition: border-color 0.2s ease;
}

.tes-eval-upload-area:hover {
	border-color: rgba(186,255,0,0.4);
}

.tes-eval-upload-label {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	font-weight: 600;
	color: rgba(255,255,255,0.7);
	cursor: pointer;
	margin-bottom: 10px;
	transition: color 0.15s ease;
}

.tes-eval-upload-label:hover { color: #baff00; }
.tes-eval-upload-label svg  { color: #baff00; flex-shrink: 0; }

.tes-eval-preview-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 4px;
}

.tes-eval-thumb-wrap {
	position: relative;
	width: 56px;
	height: 56px;
	border-radius: 6px;
	overflow: hidden;
}

.tes-eval-thumb-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.tes-eval-thumb-remove {
	position: absolute;
	top: 2px;
	right: 3px;
	background: rgba(0,0,0,0.65);
	color: #fff;
	font-size: 12px;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	line-height: 1;
}

/* =========================================================
 * MOBİL UYUMLULUK
 * ========================================================= */

@media (max-width: 600px) {
	.tes-lb-prev { left: -38px; }
	.tes-lb-next { right: -38px; }
	.tes-lb-img-wrap { max-width: 95vw; }
	#tes-lb-main { max-height: 60vh; }
	.tes-total-price-value { font-size: 18px; }
}

/* ══════════════════════════════════════════════════════
   CUSTOM SINGLE PRODUCT PAGE — TES
   ══════════════════════════════════════════════════════ */

/* Page wrapper */
.tes-sp-page {
	max-width: 1200px;
	margin: 80px auto 0 !important;
	padding: 24px 20px 60px !important;
	color: #fff;
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* ─── 1. HERO GALERİ ─── */
.tes-sp-hero {
	margin-bottom: 0;
}

.tes-sp-gallery {
	border-radius: 18px;
	overflow: hidden;
	height: 420px;
	background: #0d0d0d;
}

.tes-sp-gallery-item {
	position: relative;
	overflow: hidden;
	cursor: pointer;
	background: #111;
	height: 100%;
}

.tes-sp-gallery-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.35s ease;
}

.tes-sp-gallery-item:hover img {
	transform: scale(1.03);
}

.tes-sp-gallery-placeholder {
	width: 100%;
	height: 100%;
	background: linear-gradient(135deg, #1a1a1a, #0d0d0d);
}

.tes-sp-gallery-overlay {
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,0.65);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	text-align: center;
	transition: background 0.2s ease, color 0.2s ease;
	z-index: 5;
}
.tes-sp-gallery-overlay:hover {
	background: rgba(186,255,0,0.45);
	color: #000;
}

/* 4+ Images Grid (3 Columns layout matching the reference) */
.tes-sp-gallery--count-4 {
	display: grid;
	grid-template-columns: 1.2fr 1.2fr 0.8fr;
	grid-template-rows: 1fr 1fr;
	gap: 8px;
}
.tes-sp-gallery--count-4 .tes-sp-gallery-item--0 {
	grid-column: 1;
	grid-row: 1 / span 2;
}
.tes-sp-gallery--count-4 .tes-sp-gallery-item--1 {
	grid-column: 2;
	grid-row: 1 / span 2;
}
.tes-sp-gallery--count-4 .tes-sp-gallery-item--2 {
	grid-column: 3;
	grid-row: 1;
}
.tes-sp-gallery--count-4 .tes-sp-gallery-item--3 {
	grid-column: 3;
	grid-row: 2;
}

/* 3 Images Grid */
.tes-sp-gallery--count-3 {
	display: grid;
	grid-template-columns: 1.2fr 1.2fr 0.8fr;
	gap: 8px;
}

/* 2 Images Grid */
.tes-sp-gallery--count-2 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
}

/* 1 Image Grid */
.tes-sp-gallery--count-1 {
	display: block;
}

/* ─── BADGE BAR ─── */
.tes-sp-badge-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 16px 0;
	background: transparent;
	border: none;
	border-radius: 0;
	margin-top: 14px;
	margin-bottom: 24px;
	flex-wrap: wrap;
}

.tes-sp-badges {
	display: flex;
	align-items: center;
	gap: 20px;
	flex-wrap: wrap;
}

.tes-sp-badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	color: #fff;
	text-decoration: none;
	background: transparent;
	border: none;
	padding: 0;
}
.tes-sp-badge svg {
	flex-shrink: 0;
}
.tes-sp-badge--route:hover {
	text-decoration: underline;
}

/* ─── FİYAT KUTULARI ─── */
.tes-sp-price-boxes {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 2px;
}
.tes-sp-price-values {
	display: flex;
	align-items: baseline;
	gap: 8px;
}
.tes-sp-price-amount--sale {
	font-size: 24px;
	font-weight: 800;
	color: #baff00;
}
.tes-sp-price-amount--old {
	font-size: 15px;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.35);
}
.tes-sp-price-amount--old del {
	text-decoration: line-through;
}
.tes-sp-price-label {
	font-size: 11px;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.4);
	text-transform: capitalize;
}

/* ─── TAB NAVİGASYON ─── */
.tes-sp-tabs-wrap {
	border-bottom: 1px solid rgba(255,255,255,0.07);
	margin-bottom: 24px;
}

.tes-sp-tabs {
	display: flex;
	gap: 0;
}

.tes-sp-tab {
	background: transparent;
	border: none;
	border-bottom: 2.5px solid transparent;
	color: rgba(255,255,255,0.45);
	font-size: 13px;
	font-weight: 600;
	padding: 12px 20px 11px;
	cursor: pointer;
	transition: color 0.2s ease, border-color 0.2s ease;
	margin-bottom: -1px;
	white-space: nowrap;
}
.tes-sp-tab:hover { color: rgba(255,255,255,0.8); }
.tes-sp-tab.active {
	color: #baff00;
	border-bottom-color: #baff00;
}

.tes-sp-tab-count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(186,255,0,0.12);
	color: #baff00;
	border-radius: 10px;
	font-size: 10px;
	font-weight: 700;
	padding: 1px 6px;
	margin-left: 4px;
}

/* ─── TAB PANEL ─── */
.tes-sp-tab-panel { display: none; }
.tes-sp-tab-panel.active { display: block; }

/* ─── ANA GÖVDE ─── */
.tes-sp-body {
	display: grid;
	grid-template-columns: 1fr 360px;
	gap: 24px;
	align-items: start;
}

/* ─── SOL: AÇIKLAMA ─── */
.tes-sp-desc {
	font-size: 14px;
	line-height: 1.75;
	color: rgba(255,255,255,0.75);
}
.tes-sp-desc p { margin: 0 0 14px; }

.tes-sp-section-title {
	font-size: 15px;
	font-weight: 700;
	color: #fff;
	margin: 28px 0 14px;
	display: flex;
	align-items: center;
	gap: 8px;
}
.tes-sp-section-title::before {
	content: '';
	display: block;
	width: 3px;
	height: 16px;
	background: #baff00;
	border-radius: 2px;
}

/* Dahil Olmayanlar */
.tes-sp-dahil-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.tes-sp-dahil-item {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 13.5px;
	color: rgba(255,255,255,0.7);
	padding: 10px 14px;
	background: rgba(255,107,107,0.05);
	border: 1px solid rgba(255,107,107,0.12);
	border-radius: 8px;
}

/* Diğer Turlar */
.tes-sp-related-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 14px;
}
.tes-sp-related-card {
	border-radius: 12px;
	overflow: hidden;
	text-decoration: none;
	background: #141414;
	border: 1px solid rgba(255,255,255,0.07);
	transition: border-color 0.2s ease, transform 0.2s ease;
	display: block;
}
.tes-sp-related-card:hover { border-color: #baff00; transform: translateY(-3px); }
.tes-sp-related-card img { width: 100%; height: 130px; object-fit: cover; display: block; }
.tes-sp-related-info { padding: 10px 12px; }
.tes-sp-related-name { display: block; font-size: 13px; font-weight: 600; color: #fff; margin-bottom: 4px; }
.tes-sp-related-price { display: block; font-size: 12px; color: #baff00; font-weight: 700; }

/* Rota Timeline */
.tes-sp-rota-timeline {
	display: flex;
	flex-direction: column;
	gap: 0;
	padding: 0 0 16px;
}
.tes-rota-stop {
	display: flex;
	gap: 0;
	position: relative;
	padding-bottom: 18px;
}
.tes-rota-dot {
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: rgba(255,255,255,0.25);
	border: 2px solid #0d0d0d;
	flex-shrink: 0;
	margin-top: 3px;
	z-index: 1;
}
.tes-rota-stop.start .tes-rota-dot { background: #baff00; }
.tes-rota-stop.end .tes-rota-dot { background: #ff6b6b; }
.tes-rota-line {
	position: absolute;
	left: 5px;
	top: 14px;
	bottom: 0;
	width: 2px;
	background: rgba(255,255,255,0.07);
}
.tes-rota-label {
	margin-left: 14px;
	display: flex;
	flex-direction: column;
}
.tes-rota-tip {
	font-size: 9.5px;
	font-weight: 700;
	text-transform: uppercase;
	color: rgba(255,255,255,0.35);
	letter-spacing: 0.5px;
	margin-bottom: 2px;
}
.tes-rota-label strong { font-size: 13.5px; color: #fff; }

/* Map */
.tes-map-canvas {
	width: 100%;
	height: 340px;
	border-radius: 14px;
	overflow: hidden;
	border: 1px solid rgba(255,255,255,0.07);
	margin-top: 16px;
}

/* ─── YORUMLAR ─── */
.tes-sp-reviews {
	display: flex;
	flex-direction: column;
	gap: 18px;
}
.tes-sp-review {
	padding: 16px 18px;
	background: rgba(255,255,255,0.02);
	border: 1px solid rgba(255,255,255,0.06);
	border-radius: 14px;
	transition: border-color 0.2s ease;
}
.tes-sp-review:hover { border-color: rgba(186,255,0,0.15); }
.tes-sp-review--hidden { display: none; }

.tes-sp-review-header {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 10px;
}
.tes-sp-review-avatar {
	width: 42px;
	height: 42px;
	border-radius: 50%;
	object-fit: cover;
	flex-shrink: 0;
}
.tes-sp-review-meta { flex: 1; }
.tes-sp-review-author { display: block; font-size: 13.5px; font-weight: 700; color: #fff; }
.tes-sp-review-date { font-size: 11px; color: rgba(255,255,255,0.35); }
.tes-sp-review-stars { display: flex; gap: 2px; }
.tes-star { font-size: 15px; color: rgba(255,255,255,0.15); }
.tes-star.active { color: #f6c90e; }
.tes-sp-review-text {
	font-size: 13.5px;
	line-height: 1.65;
	color: rgba(255,255,255,0.7);
	margin: 0 0 10px;
}
.tes-sp-no-reviews {
	color: rgba(255,255,255,0.35);
	font-size: 14px;
	text-align: center;
	padding: 40px 0;
}

/* Daha Fazlası İçin butonu */
.tes-sp-reviews-more-wrap { text-align: center; margin-top: 20px; }
.tes-sp-more-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: transparent;
	border: 1.5px solid #baff00;
	color: #baff00;
	font-size: 13px;
	font-weight: 700;
	border-radius: 10px;
	padding: 10px 28px;
	cursor: pointer;
	transition: background 0.2s ease, color 0.2s ease;
}
.tes-sp-more-btn:hover { background: #baff00; color: #000; }

/* ─── GÜNLÜK PROGRAM ─── */
.tes-sp-program { display: flex; flex-direction: column; gap: 0; }
.tes-sp-prog-item {
	display: flex;
	gap: 0;
	position: relative;
	padding-bottom: 20px;
}
.tes-sp-prog-dot {
	width: 12px;
	height: 12px;
	border-radius: 50%;
	flex-shrink: 0;
	margin-top: 4px;
	z-index: 1;
	border: 2px solid #0d0d0d;
}
.tes-sp-prog-line {
	position: absolute;
	left: 5px;
	top: 16px;
	bottom: 0;
	width: 2px;
	background: rgba(255,255,255,0.06);
}
.tes-sp-prog-body { margin-left: 14px; }
.tes-sp-prog-time { display: block; font-size: 11px; font-weight: 700; margin-bottom: 3px; }
.tes-sp-prog-name { font-size: 14px; font-weight: 600; color: #fff; }
.tes-sp-prog-type { font-size: 10px; font-weight: 700; text-transform: uppercase; color: rgba(255,255,255,0.35); margin-top: 2px; }
.tes-sp-prog-desc { font-size: 12.5px; color: rgba(255,255,255,0.55); margin-top: 4px; line-height: 1.5; }

/* ─── SAĞ: REZERVASYOn PANELİ ─── */
.tes-sp-sidebar {
	position: sticky;
	top: 100px;
}

.tes-sp-booking-card {
	background: #141414;
	border: 1px solid rgba(255,255,255,0.08);
	border-radius: 18px;
	padding: 22px;
}

.tes-sp-booking-title {
	font-size: 17px;
	font-weight: 800;
	color: #fff;
	margin: 0 0 14px;
	line-height: 1.3;
}

.tes-sp-booking-badges {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	margin-bottom: 18px;
}

.tes-sp-bb {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 4px 10px;
	border-radius: 6px;
	font-size: 9.5px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}
.tes-sp-bb--green {
	background: rgba(52,211,153,0.1);
	border: 1px solid rgba(52,211,153,0.2);
	color: #34d399;
}
.tes-sp-bb--orange {
	background: rgba(255,150,50,0.1);
	border: 1px solid rgba(255,150,50,0.2);
	color: #ff9632;
}
.tes-sp-bb--orange strong { margin-left: 3px; }

/* WooCommerce'in kendi add-to-cart formu sidebar'da düzgün görünsün */
.tes-sp-booking-card .cart {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.tes-sp-booking-card .quantity .qty {
	background: #0d0d0d !important;
	border: 1px solid rgba(255,255,255,0.1) !important;
	color: #fff !important;
	border-radius: 8px !important;
	padding: 8px 12px !important;
	font-size: 14px !important;
	width: 80px !important;
}
.tes-sp-booking-card .single_add_to_cart_button {
	width: 100% !important;
	background: #baff00 !important;
	color: #000 !important;
	font-weight: 800 !important;
	font-size: 14px !important;
	border: 0 !important;
	border-radius: 12px !important;
	padding: 14px !important;
	cursor: pointer !important;
	transition: background 0.2s ease !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
	margin-top: 4px;
}
.tes-sp-booking-card .single_add_to_cart_button:hover {
	background: #d4ff2a !important;
}

/* ─── POPÜLER SEYAHATLER ─── */
.tes-sp-popular {
	margin-top: 60px;
}
.tes-sp-popular-title {
	font-size: 22px;
	font-weight: 900;
	color: #fff;
	margin: 0 0 20px;
	letter-spacing: -0.3px;
}
.tes-sp-popular-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 16px;
}
.tes-popular-card {
	background: #141414;
	border: 1px solid rgba(255,255,255,0.07);
	border-radius: 16px;
	overflow: hidden;
	text-decoration: none;
	display: flex;
	flex-direction: column;
	transition: transform 0.25s ease, border-color 0.25s ease;
}
.tes-popular-card:hover {
	transform: translateY(-5px);
	border-color: rgba(186,255,0,0.25);
}
.tes-popular-card-img {
	position: relative;
	height: 160px;
	overflow: hidden;
}
.tes-popular-card-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.3s ease;
}
.tes-popular-card:hover .tes-popular-card-img img { transform: scale(1.05); }
.tes-popular-card-img-placeholder { width: 100%; height: 100%; background: #1a1a1a; }

.tes-popular-card-badge {
	position: absolute;
	top: 10px;
	left: 10px;
	font-size: 9px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	padding: 3px 8px;
	border-radius: 6px;
}
.tes-popular-card-badge--k { background: rgba(99,179,255,0.9); color: #000; }
.tes-popular-card-badge--g { background: rgba(186,255,0,0.9); color: #000; }

.tes-popular-card-body { padding: 14px; flex: 1; display: flex; flex-direction: column; }
.tes-popular-card-loc {
	font-size: 11px;
	color: rgba(255,255,255,0.4);
	margin: 0 0 5px;
	display: flex;
	align-items: center;
	gap: 4px;
}
.tes-popular-card-title {
	font-size: 14px;
	font-weight: 700;
	color: #fff;
	margin: 0 0 5px;
	line-height: 1.3;
	flex: 1;
}
.tes-popular-card-dates { font-size: 11px; color: rgba(255,255,255,0.35); margin: 0 0 10px; }
.tes-popular-card-price { display: flex; align-items: center; gap: 6px; margin-bottom: 10px; }
.tes-popular-card-price-old { font-size: 12px; color: rgba(255,255,255,0.3); text-decoration: line-through; }
.tes-popular-card-price-cur { font-size: 15px; font-weight: 800; color: #baff00; }

.tes-popular-card-btn {
	display: block;
	text-align: center;
	background: rgba(186,255,0,0.1);
	border: 1px solid rgba(186,255,0,0.25);
	color: #baff00;
	font-size: 11.5px;
	font-weight: 700;
	border-radius: 8px;
	padding: 8px;
	transition: background 0.2s ease, color 0.2s ease;
}
.tes-popular-card:hover .tes-popular-card-btn {
	background: #baff00;
	color: #000;
}

/* ─── MOBİL ─── */
@media (max-width: 900px) {
	.tes-sp-gallery { grid-template-columns: 1fr; height: auto; }
	.tes-sp-gallery-main { height: 260px; }
	.tes-sp-gallery-thumbs { display: flex; overflow-x: auto; height: 90px; }
	.tes-sp-thumb-cell { flex-shrink: 0; width: 130px; height: 90px; }
	.tes-sp-body { grid-template-columns: 1fr; }
	.tes-sp-sidebar { position: static; }
	.tes-sp-badge-bar { flex-direction: column; align-items: flex-start; }
	.tes-sp-price-boxes { align-self: flex-start; align-items: flex-start; }
	.tes-sp-popular-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 540px) {
	.tes-sp-tabs { overflow-x: auto; }
	.tes-sp-tab { padding: 10px 14px 9px; font-size: 12px; }
	.tes-sp-popular-grid { grid-template-columns: 1fr 1fr; }
	.tes-sp-gallery-main { height: 200px; }
}

/* =========================================================
   PHOTOSHOP MOCKUP DESIGN RULES
   ========================================================= */

body.single-product .ast-single-entry-banner,
body.single-product .entry-header {
	display: none !important;
}

.tes-sp-top-title {
	font-size: 26px !important;
	font-weight: 800 !important;
	color: #fff !important;
	text-transform: uppercase !important;
	margin: 0 0 18px 0 !important;
	letter-spacing: 0.5px !important;
}

.tes-sp-dahil-olmayanlar-list {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-top: 18px;
}
.tes-sp-dahil-olmayanlar-item {
	display: flex;
	align-items: center;
	gap: 16px;
	background: rgba(255,255,255,0.02);
	border: 1px solid rgba(255,255,255,0.04);
	border-radius: 12px;
	padding: 14px 18px;
}
.tes-sp-dahil-icon-wrap {
	width: 42px;
	height: 42px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.tes-sp-dahil-text-wrap {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.tes-sp-dahil-item-title {
	font-size: 13px !important;
	font-weight: 700 !important;
	color: #fff !important;
	margin: 0 !important;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}
.tes-sp-dahil-item-desc {
	font-size: 11.5px !important;
	color: rgba(255,255,255,0.4) !important;
	margin: 0 !important;
	line-height: 1.4 !important;
}

.tes-sp-dahil-olanlar-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.tes-sp-dahil-olanlar-item {
	display: flex;
	gap: 14px;
	align-items: flex-start;
	background: rgba(255,255,255,0.02);
	border: 1px solid rgba(255,255,255,0.04);
	border-radius: 12px;
	padding: 14px 18px;
}
.tes-sp-dahil-olanlar-item svg {
	flex-shrink: 0;
	margin-top: 3px;
}
.tes-sp-dahil-olanlar-item div {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.tes-sp-dahil-olanlar-item strong {
	font-size: 13.5px;
	font-weight: 700;
	color: #fff;
}
.tes-sp-dahil-olanlar-item span {
	font-size: 11.5px;
	color: rgba(255,255,255,0.45);
	line-height: 1.4;
}

.tes-sp-durak-timeline {
	display: flex;
	flex-direction: column;
	gap: 12px;
	position: relative;
	padding-left: 20px;
	border-left: 1.5px dashed rgba(255,255,255,0.08);
	margin-left: 10px;
	margin-top: 10px;
}
.tes-sp-durak-item {
	position: relative;
	display: flex;
	align-items: center;
}
.tes-sp-durak-marker {
	position: absolute;
	left: -28px;
	background: #0d0d0d;
	padding: 2px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.tes-sp-durak-info {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	background: rgba(255,255,255,0.02);
	border: 1px solid rgba(255,255,255,0.04);
	border-radius: 8px;
	padding: 12px 16px;
}
.tes-sp-durak-name {
	font-size: 13.5px;
	font-weight: 700;
	color: #fff;
}
.tes-sp-durak-time {
	font-size: 12px;
	font-weight: 800;
	color: #baff00;
	background: rgba(186,255,0,0.12);
	padding: 2px 8px;
	border-radius: 4px;
}

.tes-sp-faq-list {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.tes-sp-faq-item {
	background: rgba(255,255,255,0.02);
	border: 1px solid rgba(255,255,255,0.04);
	border-radius: 10px;
	overflow: hidden;
	transition: border-color 0.2s ease;
}
.tes-sp-faq-item.active {
	border-color: rgba(186,255,0,0.25);
}
.tes-sp-faq-question {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 16px 20px;
	font-size: 13.5px;
	font-weight: 700;
	color: #fff;
	cursor: pointer;
	user-select: none;
}
.tes-sp-faq-question svg {
	transition: transform 0.2s ease;
	color: rgba(255,255,255,0.3);
}
.tes-sp-faq-item.active .tes-sp-faq-question svg {
	transform: rotate(180deg);
	color: #baff00;
}
.tes-sp-faq-answer {
	display: none;
}
.tes-sp-faq-answer p {
	padding: 0 20px 18px;
	margin: 0;
	font-size: 12.5px;
	line-height: 1.6;
	color: rgba(255,255,255,0.45);
}

.tes-sp-secure-payment {
	margin-top: 20px;
	border-top: 1px solid rgba(255,255,255,0.06);
	padding-top: 16px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
}
.tes-sp-secure-title {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 11px;
	color: rgba(255,255,255,0.4);
	text-transform: uppercase;
	letter-spacing: 0.5px;
}
.tes-sp-secure-title svg {
	stroke: rgba(255,255,255,0.4);
}
.tes-sp-payment-icons {
	display: flex;
	gap: 8px;
	align-items: center;
}
.tes-sp-payment-icons svg {
	border-radius: 4px;
	box-shadow: 0 2px 6px rgba(0,0,0,0.15);
	opacity: 0.8;
	transition: opacity 0.2s ease;
}
.tes-sp-payment-icons svg:hover {
	opacity: 1;
}

.tes-sp-reviews-section {
	max-width: 1200px;
	margin: 50px auto 40px;
	padding: 0 15px;
}
.tes-sp-reviews-title {
	font-size: 22px !important;
	font-weight: 800 !important;
	color: #fff !important;
	text-transform: uppercase !important;
	text-align: center !important;
	margin: 0 0 6px 0 !important;
	letter-spacing: 1px !important;
}
.tes-sp-reviews-rating-sub {
	text-align: center;
	font-size: 13px;
	color: #baff00;
	font-weight: 700;
	margin-bottom: 30px;
}
.tes-sp-reviews-list-wrapper {
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.tes-sp-review-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px 24px;
	background: #141414;
	border: 1px solid rgba(255,255,255,0.06);
	border-radius: 16px;
	transition: all 0.2s ease;
	gap: 24px;
}
.tes-sp-review-row:hover {
	border-color: rgba(186,255,0,0.2);
}
.tes-sp-review-row--hidden {
	display: none;
}
.tes-sp-review-left {
	flex: 1;
}
.tes-sp-review-right {
	flex-shrink: 0;
	display: flex;
	gap: 8px;
}

.tes-popular-card-badge--sale {
	background: #ff4d4d !important;
	color: #fff !important;
	border-color: rgba(255,77,77,0.3) !important;
}

/* =========================================================
   STEP 2: CONTENT & BOOKING CARD FLAT DESIGN RULES
   ========================================================= */

/* Tab Headers Flat Style */
.tes-sp-tab {
	border-bottom: none !important;
	padding: 10px 20px !important;
	text-transform: uppercase !important;
	color: rgba(255, 255, 255, 0.4) !important;
	font-weight: 700 !important;
}
.tes-sp-tab.active {
	color: #baff00 !important;
}

/* Sol Açıklama Tab Panel */
.tes-sp-tab-title {
	font-size: 26px !important;
	font-weight: 800 !important;
	color: #fff !important;
	margin: 0 0 16px 0 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
}

/* Dahil Olmayanlar Flat List */
.tes-sp-section-title-flat {
	font-size: 16px !important;
	font-weight: 800 !important;
	color: #fff !important;
	margin: 32px 0 16px 0 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
	display: block !important;
}
.tes-sp-dahil-olmayanlar-list {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-top: 12px;
}
.tes-sp-dahil-olmayanlar-item {
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	padding: 8px 0 !important;
	gap: 16px !important;
	display: flex !important;
	align-items: flex-start !important;
}
.tes-sp-dahil-icon-wrap-flat {
	flex-shrink: 0 !important;
	margin-top: 4px !important;
	display: flex;
	align-items: center;
	justify-content: center;
}
.tes-sp-dahil-item-title {
	font-size: 13.5px !important;
	font-weight: 700 !important;
	color: #fff !important;
	margin: 0 0 4px 0 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
}
.tes-sp-dahil-item-desc {
	font-size: 10px !important;
	color: rgba(255, 255, 255, 0.35) !important;
	margin: 0 !important;
	text-transform: uppercase !important;
	line-height: 1.45 !important;
	letter-spacing: 0.2px !important;
}

/* Sağ Sütun: Flat Booking Card */
.tes-sp-booking-card {
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	padding: 0 !important;
	box-shadow: none !important;
}
.tes-sp-booking-title {
	font-size: 24px !important;
	font-weight: 800 !important;
	color: #fff !important;
	text-transform: uppercase !important;
	margin: 0 0 12px 0 !important;
	letter-spacing: 0.5px !important;
	text-align: center !important;
}

/* Flat Badges under Sidebar Title */
.tes-sp-booking-badges-flat {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	margin-bottom: 24px;
	flex-wrap: wrap;
}
.tes-sp-bb-flat {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 11px;
	font-weight: 700;
	color: #fff;
	text-transform: uppercase;
}

/* Form Dropdown & Labels Custom Override */
.tes-sp-booking-card label,
.tes-sp-booking-card p,
.tes-sp-booking-card .tes-ekstra-label {
	color: #fff !important;
	font-weight: 700 !important;
	font-size: 13px !important;
	text-transform: uppercase !important;
	margin-top: 0 !important;
	margin-bottom: 6px !important;
	letter-spacing: 0.5px !important;
}
.tes-sp-booking-card select {
	background: #141414 !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	color: rgba(255, 255, 255, 0.5) !important;
	border-radius: 8px !important;
	padding: 10px 14px !important;
	font-size: 13px !important;
	width: 100% !important;
	outline: none !important;
	margin-bottom: 12px !important;
}
.tes-sp-booking-card select:focus {
	border-color: rgba(186, 255, 0, 0.4) !important;
}

/* Extra Options Radio List Flat Style */
.tes-ekstra-secenekler {
	margin-top: 14px !important;
	border-top: none !important;
	padding-top: 0 !important;
}
.tes-ekstra-grid {
	display: flex !important;
	flex-direction: column !important;
	gap: 6px !important;
}
.tes-ekstra-secenek-item {
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	padding: 4px 0 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	width: 100% !important;
	cursor: pointer !important;
	gap: 12px !important;
	box-shadow: none !important;
	margin-bottom: 0 !important;
}
.tes-ekstra-secenek-item input[type="radio"] {
	display: none !important;
}
.tes-ekstra-radio-custom {
	width: 16px !important;
	height: 16px !important;
	border-radius: 50% !important;
	border: 2px solid rgba(255, 255, 255, 0.15) !important;
	background: transparent !important;
	display: inline-block !important;
	flex-shrink: 0 !important;
	position: relative !important;
	margin-right: 8px !important;
	transition: all 0.2s ease !important;
}
.tes-ekstra-secenek-item.selected .tes-ekstra-radio-custom {
	border-color: #baff00 !important;
	background: #baff00 !important;
}
.tes-ekstra-ad {
	font-size: 13.5px !important;
	font-weight: 700 !important;
	color: #fff !important;
	flex: 1 !important;
	text-align: left !important;
	text-transform: uppercase !important;
}
.tes-ekstra-fiyat {
	font-size: 13.5px !important;
	font-weight: 700 !important;
	color: #baff00 !important;
}

/* Hide Quantity input */
.single-product .quantity {
	display: none !important;
}

/* Total Price Wrap Flat Style */
.tes-total-price-wrap {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 4px !important;
	border: none !important;
	background: transparent !important;
	padding: 16px 0 12px 0 !important;
	margin-top: 16px !important;
}
.tes-total-price-label {
	font-size: 13px !important;
	font-weight: 700 !important;
	color: #fff !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
}
.tes-total-price-value {
	font-size: 26px !important;
	font-weight: 800 !important;
	color: #baff00 !important;
	letter-spacing: -0.5px !important;
}

/* Secure Payment Flat Container */
.tes-sp-secure-payment-flat {
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-radius: 8px !important;
	padding: 16px !important;
	text-align: center !important;
	margin-top: 24px !important;
}
.tes-sp-secure-header {
	position: relative !important;
	text-align: center !important;
	margin-bottom: 12px !important;
}
.tes-sp-secure-header::before {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	height: 1px;
	background: rgba(255, 255, 255, 0.1);
	z-index: 0;
}
.tes-sp-secure-title-flat {
	background: #0d0d0d !important;
	padding: 0 12px !important;
	font-size: 11px !important;
	color: rgba(255, 255, 255, 0.4) !important;
	text-transform: uppercase;
	position: relative !important;
	z-index: 1 !important;
	letter-spacing: 0.5px !important;
	font-weight: 700 !important;
}
.tes-sp-payment-icons {
	display: flex;
	gap: 10px;
	align-items: center;
	justify-content: center;
}
.tes-sp-payment-icons svg {
	border-radius: 4px;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
	opacity: 0.8;
	transition: opacity 0.2s ease;
}
.tes-sp-payment-icons svg:hover {
	opacity: 1;
}

/* =========================================================
   STEP 3: HOVER BACKGROUND FIX & COLUMN DIVISION
   ========================================================= */

/* Prevent theme/Astra adding background to tab buttons */
.tes-sp-tab,
.tes-sp-tab:hover,
.tes-sp-tab:focus,
.tes-sp-tab:active {
	background: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
	outline: none !important;
}

/* Layout Columns & Separator Line */
.tes-sp-body {
	display: grid !important;
	grid-template-columns: 1fr 380px !important;
	gap: 40px !important;
	align-items: start !important;
}

.tes-sp-sidebar {
	border-left: 1px solid rgba(255, 255, 255, 0.1) !important;
	padding-left: 40px !important;
}

@media (max-width: 900px) {
	.tes-sp-body {
		grid-template-columns: 1fr !important;
		gap: 24px !important;
	}
	.tes-sp-sidebar {
		border-left: none !important;
		padding-left: 0 !important;
	}
}

/* =========================================================
   STEP 4: REVIEWS (DEĞERLENDİRMELER) SECTION FLAT DESIGN
   ========================================================= */

.tes-sp-reviews-title {
	font-size: 24px !important;
	font-weight: 800 !important;
	color: #fff !important;
	text-transform: uppercase !important;
	text-align: center !important;
	margin: 0 0 8px 0 !important;
	letter-spacing: 0.5px !important;
}

.tes-sp-reviews-rating-sub {
	text-align: center !important;
	margin-bottom: 32px !important;
}
.tes-sp-reviews-rating-sub span {
	font-size: 12px !important;
	font-weight: 800 !important;
	color: #baff00 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
}

/* Row flat resets */
.tes-sp-review-row {
	background: transparent !important;
	border: none !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 0 !important;
	padding: 24px 0 !important;
	box-shadow: none !important;
	gap: 32px !important;
}
.tes-sp-review-row:hover {
	border-color: rgba(255, 255, 255, 0.08) !important;
}

/* Left layout: Avatar and Meta info */
.tes-sp-review-header-flat {
	display: flex !important;
	gap: 16px !important;
	align-items: flex-start !important;
}
.tes-sp-review-avatar-flat {
	width: 48px !important;
	height: 48px !important;
	border-radius: 50% !important;
	object-fit: cover !important;
	flex-shrink: 0 !important;
}
.tes-sp-review-meta-flat {
	flex: 1 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 6px !important;
}
.tes-sp-review-author-date {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	flex-wrap: wrap !important;
}
.tes-sp-review-author {
	font-size: 14px !important;
	font-weight: 700 !important;
	color: #fff !important;
}
.tes-sp-review-date {
	font-size: 12px !important;
	color: rgba(255, 255, 255, 0.4) !important;
	font-weight: 500 !important;
}
.tes-sp-review-text {
	font-size: 13.5px !important;
	color: rgba(255, 255, 255, 0.8) !important;
	margin: 2px 0 6px 0 !important;
	line-height: 1.5 !important;
}

/* Star rating styling */
.tes-sp-review-stars-flat {
	display: flex !important;
	gap: 2px !important;
}
.tes-sp-review-stars-flat .tes-star {
	font-size: 13px !important;
	color: rgba(255, 255, 255, 0.15) !important;
}
.tes-sp-review-stars-flat .tes-star.active {
	color: #baff00 !important;
}

/* Right layout: photos */
.tes-sp-review-right {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
}
.tes-review-photos {
	gap: 12px !important;
}
.tes-review-thumb {
	width: 90px !important;
	height: 60px !important;
	border-radius: 6px !important;
	object-fit: cover !important;
}
.tes-review-thumb-more {
	width: 90px !important;
	height: 60px !important;
	border-radius: 6px !important;
}
.tes-review-thumb-more img {
	width: 100% !important;
	height: 100% !important;
	border-radius: 6px !important;
}
.tes-review-thumb-overlay {
	border-radius: 6px !important;
	font-size: 13px !important;
}

/* Load More button flat style */
.tes-sp-reviews-more-wrap {
	text-align: center !important;
	margin-top: 36px !important;
}
.tes-sp-more-btn-flat {
	background: #baff00 !important;
	color: #000 !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	border: none !important;
	padding: 12px 36px !important;
	border-radius: 30px !important;
	text-transform: uppercase !important;
	cursor: pointer !important;
	letter-spacing: 0.5px !important;
	transition: background 0.2s ease, transform 0.1s ease !important;
}
.tes-sp-more-btn-flat:hover {
	background: #a3e600 !important;
}
.tes-sp-more-btn-flat:active {
	transform: scale(0.98) !important;
}

/* Checkout Stop Selection */
.tes-stop-selection-wrap { margin-bottom: 20px; }
.tes-sp-stop-label { display:block; font-weight:700; margin-bottom:8px; color: #fff; }
.tes-sp-stop-select { width:100%; max-width:400px; padding:10px 14px; background:#141414; color:#fff; border:1px solid rgba(255,255,255,0.08); border-radius:10px; font-size:14px; outline:none; transition: border-color 0.2s; }
.tes-sp-stop-select:focus { border-color: #baff00 !important; box-shadow: 0 0 10px rgba(186, 255, 0, 0.2); }


/* =========================================
   WooCommerce Checkout Customization (Owl Tour Theme)
========================================= */
.woocommerce-checkout {
	background: #0d0d0d;
	color: #e0e0e0;
}
.woocommerce-checkout h3 {
	color: #fff;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	border-bottom: 2px solid rgba(186, 255, 0, 0.2);
	padding-bottom: 10px;
	margin-bottom: 25px;
}
.woocommerce-checkout form.checkout {
	/* Let the theme (Astra) handle the layout (it uses floats) */
}
.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review {
	background: #141414;
	padding: 30px;
	border-radius: 12px;
	border: 1px solid rgba(255, 255, 255, 0.05);
	margin-bottom: 30px;
}

/* WooCommerce Notices Dark Theme */
.woocommerce-error,
.woocommerce-info,
.woocommerce-message,
.woocommerce-checkout .woocommerce-error,
.woocommerce-checkout .woocommerce-info,
.woocommerce-checkout .woocommerce-message {
	background: #1a1a1a !important;
	color: #fff !important;
	border-radius: 8px !important;
	border: 1px solid rgba(255,255,255,0.1) !important;
	border-top: 3px solid #baff00 !important;
	padding: 15px 20px !important;
	margin-bottom: 25px !important;
	box-shadow: 0 4px 15px rgba(0,0,0,0.5) !important;
	list-style: none !important;
}
.woocommerce-error, .woocommerce-checkout .woocommerce-error {
	border-top-color: #ff3b3b !important;
}
.woocommerce-info, .woocommerce-checkout .woocommerce-info {
	border-top-color: #2196f3 !important;
}
.woocommerce-message, .woocommerce-checkout .woocommerce-message {
	border-top-color: #baff00 !important;
}
.woocommerce-error::before,
.woocommerce-info::before,
.woocommerce-message::before {
	color: inherit !important;
}
.woocommerce-error li, .woocommerce-info li, .woocommerce-message li {
	color: #ccc !important;
}
.woocommerce-checkout .woocommerce-input-wrapper input,
.woocommerce-checkout .woocommerce-input-wrapper select,
.woocommerce-checkout .woocommerce-input-wrapper textarea {
	width: 100%;
	background: #0d0d0d !important;
	border: 1px solid rgba(255,255,255,0.1) !important;
	color: #fff !important;
	padding: 14px 18px !important;
	border-radius: 8px !important;
	transition: all 0.3s;
}
.woocommerce-checkout .woocommerce-input-wrapper input:focus,
.woocommerce-checkout .woocommerce-input-wrapper select:focus,
.woocommerce-checkout .woocommerce-input-wrapper textarea:focus {
	border-color: #baff00 !important;
	box-shadow: 0 0 10px rgba(186,255,0,0.2) !important;
	outline: none;
}
.woocommerce-checkout label {
	color: #bbb;
	font-weight: 600;
	margin-bottom: 8px;
	display: block;
}
.woocommerce-checkout table.shop_table {
	border-collapse: collapse;
	width: 100%;
	border: none;
	border-radius: 0;
	margin-bottom: 30px;
}
.woocommerce-checkout table.shop_table th,
.woocommerce-checkout table.shop_table td {
	border-top: 1px solid rgba(255,255,255,0.05) !important;
	padding: 15px 0 !important;
	color: #ccc;
	background: transparent !important;
}
.woocommerce-checkout table.shop_table th {
	color: #fff;
	text-transform: uppercase;
	font-size: 13px;
	letter-spacing: 1px;
	text-align: left;
}
.woocommerce-checkout table.shop_table tfoot th,
.woocommerce-checkout table.shop_table tfoot td {
	border-top: 1px solid rgba(255,255,255,0.1) !important;
}
.woocommerce-checkout table.shop_table tfoot .order-total th,
.woocommerce-checkout table.shop_table tfoot .order-total td {
	font-size: 20px;
	color: #baff00;
	font-weight: 900;
}
.woocommerce-checkout #payment {
	background: #0d0d0d !important;
	border-radius: 8px;
	padding: 20px;
	margin-top: 20px;
}
.woocommerce-checkout #payment ul.payment_methods {
	border-bottom: 1px solid rgba(255,255,255,0.1) !important;
}
.woocommerce-checkout #payment div.payment_box {
	background: #1a1a1a !important;
	color: #aaa !important;
	box-shadow: none !important;
}
.woocommerce-checkout #payment div.payment_box::before {
	border-bottom-color: #1a1a1a !important;
}
.woocommerce-checkout #place_order {
	background: #baff00 !important;
	color: #000 !important;
	font-weight: 800 !important;
	text-transform: uppercase !important;
	padding: 20px 24px !important;
	border-radius: 8px !important;
	border: none !important;
	width: 100% !important;
	font-size: 18px !important;
	letter-spacing: 0.5px !important;
	cursor: pointer;
	transition: all 0.3s;
	margin-top: 20px;
}
.woocommerce-checkout #place_order:hover {
	background: #a2e600 !important;
	transform: translateY(-2px);
	box-shadow: 0 4px 15px rgba(186, 255, 0, 0.3) !important;
}
.woocommerce-checkout .select2-container--default .select2-selection--single {
	background-color: #0d0d0d !important;
	border: 1px solid rgba(255,255,255,0.1) !important;
	border-radius: 8px !important;
	height: 48px !important;
}
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
	color: #fff !important;
	line-height: 48px !important;
	padding-left: 18px !important;
}
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 46px !important;
}
.woocommerce-checkout .select2-dropdown {
	background-color: #141414 !important;
	border: 1px solid rgba(255,255,255,0.1) !important;
}
.woocommerce-checkout .select2-results__option {
	color: #fff !important;
}
.woocommerce-checkout .select2-container--default .select2-results__option--highlighted[aria-selected], .woocommerce-checkout .select2-container--default .select2-results__option--highlighted[data-selected] {
	background-color: #baff00 !important;
	color: #000 !important;
}
/* Custom Toast Notification */
#tes-toast-container {
    position: fixed;
    bottom: 40px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 999999;
    display: flex;
    flex-direction: column;
    gap: 15px;
    align-items: center;
}
@media (max-width: 768px) {
    #tes-toast-container {
        bottom: 25px;
        width: 100%;
        padding: 0 15px;
    }
}
.tes-toast {
    background: #1a1a1a;
    color: #fff;
    padding: 14px 20px;
    border-radius: 12px;
    box-shadow: 0 8px 30px rgba(0,0,0,0.5);
    font-size: 15px;
    font-weight: 500;
    opacity: 0;
    transform: translateY(100px);
    transition: all 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    display: flex;
    align-items: center;
    min-width: 320px;
    max-width: 500px;
    border: 1px solid rgba(255,255,255,0.05);
}
@media (max-width: 768px) {
    .tes-toast {
        min-width: 100%;
    }
}
.tes-toast.show {
    opacity: 1;
    transform: translateY(0);
}
.tes-toast-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    color: #000;
    font-size: 14px;
    font-weight: 900;
    margin-right: 14px;
    flex-shrink: 0;
}
.tes-toast.success .tes-toast-icon {
    background-color: #baff00;
}
.tes-toast.error .tes-toast-icon {
    background-color: #ff3b3b;
    color: #fff;
}
.tes-toast-content {
    flex-grow: 1;
    margin-right: 15px;
    color: #e0e0e0;
}
.tes-toast-close {
    border-left: 1px solid rgba(255, 255, 255, 0.15);
    padding-left: 15px;
    cursor: pointer;
    font-size: 20px;
    color: #888;
    display: flex;
    align-items: center;
    height: 100%;
    transition: color 0.2s;
}
.tes-toast-close:hover {
    color: #baff00;
}
/* =========================================
   WooCommerce Multi-Step Split Checkout (Owl Tour)
========================================= */

/* Hide Theme Header & Footer on Checkout */
body.woocommerce-checkout .ast-main-header-wrap,
body.woocommerce-checkout .site-footer,
body.woocommerce-checkout .ast-footer-wrapper,
body.woocommerce-checkout .ast-header-breadcrumb,
body.woocommerce-checkout .woocommerce-form-coupon-toggle {
    display: none !important;
}

/* Reset Constraints & Fix Background */
body.woocommerce-checkout {
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background-color: #0b0c0e !important;
}

/* Flex Container for Split Screen */
body.woocommerce-checkout .woocommerce {
    display: flex !important;
    flex-wrap: nowrap !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #0b0c0e !important;
    z-index: 99999;
}
.admin-bar.woocommerce-checkout .woocommerce {
    top: 32px !important;
    height: calc(100vh - 32px) !important;
}

/* Left Column (Form) */
.tes-checkout-left-col {
    flex: 0 0 550px !important;
    width: 550px !important;
    background: #0b0c0e !important;
    padding: 30px 40px !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100vh !important;
    overflow-y: auto !important;
    max-height: 100vh !important;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    box-shadow: 10px 0 30px rgba(0,0,0,0.5);
    z-index: 10;
}

/* Custom Scrollbar for Left Col */
.tes-checkout-left-col::-webkit-scrollbar {
    width: 6px;
}
.tes-checkout-left-col::-webkit-scrollbar-track {
    background: #0b0c0e;
}
.tes-checkout-left-col::-webkit-scrollbar-thumb {
    background: #222;
    border-radius: 10px;
}
.tes-checkout-left-col::-webkit-scrollbar-thumb:hover {
    background: #baff00;
}

/* Right Column (Media Column) */
.tes-checkout-right-col {
    flex: 1 !important;
    height: 100vh !important;
    position: relative !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background-color: #050505 !important;
}

.tes-bg-video {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    z-index: 1 !important;
}

.tes-checkout-right-overlay {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(90deg, #0b0c0e 0%, rgba(11, 12, 14, 0.4) 30%, rgba(0, 0, 0, 0.6) 100%) !important;
    z-index: 2 !important;
    pointer-events: none !important;
}

.tes-right-logo-container {
    position: relative !important;
    z-index: 5 !important;
    max-width: 280px !important;
    text-align: center !important;
    pointer-events: none !important;
}

.tes-right-logo {
    max-width: 100% !important;
    height: auto !important;
    filter: drop-shadow(0 4px 25px rgba(0,0,0,0.8)) !important;
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
    .tes-checkout-left-col {
        flex: 1 1 100% !important;
        width: 100% !important;
        padding: 20px 16px !important;
    }
    .tes-checkout-right-col {
        display: none !important;
    }
}

/* Topbar & Back Link */
.tes-checkout-topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    background: transparent !important;
    padding: 0;
    border: none !important;
}
.tes-checkout-back a {
    color: #888 !important;
    text-decoration: none !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 6px 12px !important;
    border-radius: 6px !important;
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    transition: all 0.2s ease !important;
}
.tes-checkout-back a:hover {
    color: #baff00 !important;
    background: rgba(186, 255, 0, 0.08) !important;
    border-color: rgba(186, 255, 0, 0.3) !important;
}

/* Timeline Indicator */
.tes-timeline {
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
    padding-top: 5px;
    width: 100%;
}
.tes-timeline-step {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
}
.tes-timeline-step::before {
    content: '';
    position: absolute;
    top: 40px;
    left: -50%;
    width: 100%;
    height: 2px;
    background: rgba(255, 255, 255, 0.1);
    z-index: 1;
    transition: background 0.3s ease;
}
.tes-timeline-step:first-child::before {
    display: none;
}
.tes-timeline-step.completed::before,
.tes-timeline-step.active::before {
    background: #baff00;
}
.tes-timeline-num {
    font-size: 13px;
    font-weight: 800;
    color: #666;
    margin-bottom: 6px;
    transition: color 0.3s;
}
.tes-timeline-circle {
    width: 30px;
    height: 30px;
    background: #141414;
    border: 2px solid rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    margin-bottom: 8px;
    z-index: 2;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #666;
    transition: all 0.3s;
}
.tes-timeline-circle svg {
    display: block;
}
.tes-timeline-label {
    font-size: 11px;
    font-weight: 700;
    color: #666;
    text-transform: uppercase;
    transition: color 0.3s;
}

/* Timeline Status Colors */
.tes-timeline-step.active .tes-timeline-num { color: #fff; }
.tes-timeline-step.active .tes-timeline-label { color: #fff; }
.tes-timeline-step.active .tes-timeline-circle {
    background: #baff00;
    border-color: #baff00;
    color: #000;
    box-shadow: 0 0 18px rgba(186, 255, 0, 0.4);
}
.tes-timeline-step.completed .tes-timeline-num { color: #baff00; }
.tes-timeline-step.completed .tes-timeline-label { color: #baff00; }
.tes-timeline-step.completed .tes-timeline-circle {
    background: #baff00;
    border-color: #baff00;
    color: #000;
}

/* Multi-Step Visibility Control */
body.tes-step-1 #customer_details,
body.tes-step-1 #payment ul.payment_methods,
body.tes-step-1 #place_order {
    display: none !important;
}
body.tes-step-2 #order_review,
body.tes-step-2 #order_review_heading,
body.tes-step-2 form.checkout_coupon {
    display: none !important;
}
body.tes-step-3 #customer_details,
body.tes-step-3 form.checkout_coupon,
body.tes-step-3 #order_review_heading,
body.tes-step-3 .woocommerce-checkout-review-order-table {
    display: none !important;
}

/* Form Cards & WooCommerce Table Clean Dark Styling */
body.woocommerce-checkout form.checkout_coupon,
.woocommerce-checkout #order_review,
.woocommerce-checkout #customer_details {
    width: 100% !important;
    float: none !important;
    margin-right: 0 !important;
    background: #121316 !important;
    padding: 24px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    box-shadow: none !important;
    margin-bottom: 24px !important;
}

.woocommerce-checkout #order_review_heading {
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin-bottom: 16px !important;
    padding-bottom: 0 !important;
    border: none !important;
}

.woocommerce-checkout table.shop_table {
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    margin-bottom: 10px !important;
    width: 100% !important;
}
.woocommerce-checkout table.shop_table th,
.woocommerce-checkout table.shop_table td,
.woocommerce-checkout table.shop_table tr {
    border: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    background: transparent !important;
    padding: 12px 0 !important;
    color: #ccc !important;
}
.woocommerce-checkout table.shop_table th {
    color: #888 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
}
.woocommerce-checkout table.shop_table tfoot tr:last-child th,
.woocommerce-checkout table.shop_table tfoot tr:last-child td {
    border-bottom: none !important;
}
.woocommerce-checkout table.shop_table tfoot .order-total th,
.woocommerce-checkout table.shop_table tfoot .order-total td {
    font-size: 18px !important;
    color: #baff00 !important;
    font-weight: 900 !important;
}

/* Coupon Button */
body.woocommerce-checkout form.checkout_coupon button.button {
    background: #baff00 !important;
    color: #000 !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    padding: 12px 20px !important;
    border-radius: 8px !important;
    border: none !important;
    margin-top: 10px;
}

/* Inputs & Selects */
body.woocommerce-checkout input.input-text,
body.woocommerce-checkout textarea.input-text {
    background-color: #0b0c0e !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    color: #fff !important;
    border-radius: 8px !important;
    padding: 12px 16px !important;
}
body.woocommerce-checkout input.input-text:focus,
body.woocommerce-checkout textarea.input-text:focus {
    border-color: #baff00 !important;
    outline: none !important;
}

/* ─────────────────────────────────────────────────────────────────────────
   HEADER NOTIFICATIONS DROPDOWN (HESABIM DROPDOWN BİREBİR UYUMLU KART)
   ───────────────────────────────────────────────────────────────────────── */
#page .main-header-menu .menu-item #tes-notifications-dropdown,
#tes-notifications-dropdown {
    position: absolute !important;
    top: 48px !important;
    right: 0 !important;
    width: 280px !important;
    background: #0a0a0a !important;
    border: 1px solid rgba(186, 255, 0, 0.2) !important;
    border-radius: 14px !important;
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.8), 0 0 25px rgba(186, 255, 0, 0.05) !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    z-index: 99999 !important;
    font-family: inherit !important;
    box-sizing: border-box !important;
}

#tes-notifications-dropdown * {
    box-sizing: border-box !important;
}

/* Caret Üçgen Süs (Hesabım Menüsü ile Aynı) */
#tes-notifications-dropdown::before {
    content: '' !important;
    position: absolute !important;
    bottom: 100% !important;
    right: 14px !important;
    border-width: 6px !important;
    border-style: solid !important;
    border-color: transparent transparent #0a0a0a transparent !important;
    z-index: 100000 !important;
}

#tes-notifications-dropdown::after {
    content: '' !important;
    position: absolute !important;
    bottom: 100% !important;
    right: 13px !important;
    border-width: 7px !important;
    border-style: solid !important;
    border-color: transparent transparent rgba(186, 255, 0, 0.2) transparent !important;
    z-index: 99999 !important;
}

/* Wrapper to maintain border-radius */
#tes-notifications-dropdown .tes-notif-inner-wrap {
    border-radius: 14px !important;
    overflow: hidden !important;
}

/* Header Kısmı */
#tes-notifications-dropdown .tes-notif-header {
    padding: 12px 16px !important;
    margin: 0 !important;
    background: #0a0a0a !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    height: auto !important;
    min-height: 0 !important;
}

#tes-notifications-dropdown .tes-notif-header span {
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: 0.5px !important;
    color: #fff !important;
    text-transform: uppercase !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
}

#tes-notifications-dropdown .tes-notif-header a {
    font-size: 11px !important;
    color: var(--tes-neon, #baff00) !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    transition: opacity 0.2s ease !important;
}

#tes-notifications-dropdown .tes-notif-header a:hover {
    opacity: 0.8 !important;
}

/* Liste Alanı */
#tes-notifications-dropdown .tes-notif-list-container {
    max-height: 250px !important;
    overflow-y: auto !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* İnce Özel Scrollbar */
#tes-notifications-dropdown .tes-notif-list-container::-webkit-scrollbar {
    width: 4px !important;
}
#tes-notifications-dropdown .tes-notif-list-container::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.3) !important;
}
#tes-notifications-dropdown .tes-notif-list-container::-webkit-scrollbar-thumb {
    background: rgba(186, 255, 0, 0.25) !important;
    border-radius: 4px !important;
}
#tes-notifications-dropdown .tes-notif-list-container::-webkit-scrollbar-thumb:hover {
    background: var(--tes-neon, #baff00) !important;
}

/* Hesap Onay Durumu Özel Kartı */
#tes-notifications-dropdown .tes-notif-system {
    margin: 10px 12px !important;
    padding: 10px 12px !important;
    border-radius: 10px !important;
    display: block !important;
}

#tes-notifications-dropdown .tes-notif-system.tes-status-pending {
    background: rgba(255, 183, 3, 0.06) !important;
    border: 1px solid rgba(255, 183, 3, 0.2) !important;
}
#tes-notifications-dropdown .tes-notif-system.tes-status-approved {
    background: rgba(186, 255, 0, 0.06) !important;
    border: 1px solid rgba(186, 255, 0, 0.2) !important;
}
#tes-notifications-dropdown .tes-notif-system.tes-status-rejected {
    background: rgba(255, 59, 59, 0.06) !important;
    border: 1px solid rgba(255, 59, 59, 0.2) !important;
}

/* Rozet */
#tes-notifications-dropdown .tes-status-badge {
    font-size: 9.5px !important;
    font-weight: 800 !important;
    padding: 3px 8px !important;
    border-radius: 6px !important;
    line-height: 1.2 !important;
    height: auto !important;
    min-height: 0 !important;
    display: inline-block !important;
    white-space: nowrap !important;
    margin: 0 !important;
}

/* Normal Bildirim Öğeleri */
#tes-notifications-dropdown .tes-notif-item {
    padding: 10px 16px !important;
    margin: 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;
    background: transparent !important;
    transition: background 0.2s ease !important;
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
}

#tes-notifications-dropdown .tes-notif-item:last-child {
    border-bottom: none !important;
}

#tes-notifications-dropdown .tes-notif-item:hover {
    background: rgba(186, 255, 0, 0.04) !important;
}

#tes-notifications-dropdown .tes-notif-item.unread {
    background: rgba(186, 255, 0, 0.04) !important;
}

#tes-notifications-dropdown .tes-notif-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin: 0 0 3px 0 !important;
    padding: 0 !important;
    height: auto !important;
    min-height: 0 !important;
}

#tes-notifications-dropdown .tes-notif-item strong {
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: inline-block !important;
    transition: color 0.2s ease !important;
}

#tes-notifications-dropdown .tes-notif-item:hover strong {
    color: var(--tes-neon, #baff00) !important;
}

#tes-notifications-dropdown .tes-notif-item p {
    font-size: 11px !important;
    color: rgba(255, 255, 255, 0.65) !important;
    line-height: 1.35 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
}

#tes-notifications-dropdown .tes-notif-date {
    font-size: 9.5px !important;
    color: rgba(255, 255, 255, 0.4) !important;
    margin: 4px 0 0 0 !important;
    padding: 0 !important;
    display: block !important;
    line-height: 1 !important;
}
