/* PlaySlots Mobile Optimization CSS v1.0 */

/* ===== GLOBAL PERFORMANCE ===== */

/* Smooth font rendering */
body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeSpeed;
}

/* Prevent layout shift from images */
img {
	height: auto;
	max-width: 100%;
}

/* ===== MOBILE TOUCH TARGETS ===== */
/* Google recommends minimum 48x48px touch targets */

@media screen and (max-width: 1024px) {

	/* Larger touch targets for navigation links */
	.space-mobile-menu-list ul li a {
		padding: 14px 20px;
		min-height: 48px;
		display: flex;
		align-items: center;
	}

	/* Better hamburger menu touch target */
	.space-mobile-menu-icon {
		min-width: 48px;
		min-height: 48px;
		display: flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
	}

	/* Search icon touch target */
	.space-header-search,
	.space-header-search i {
		min-width: 48px;
		min-height: 48px;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	/* Mobile menu close button */
	.space-mobile-menu-close-button {
		min-width: 48px;
		min-height: 48px;
		top: 15px;
		right: 15px;
	}

	/* Footer menu links */
	.space-footer-copy-menu ul li a {
		padding: 8px 12px;
		display: inline-block;
	}

	/* CTA buttons - bigger on mobile */
	.space-companies-archive-item-button a,
	.space-units-archive-item-button a,
	.space-offers-archive-item-button a,
	.space-aces-single-offer-info-button-ins a,
	.space-companies-sidebar-item-button a,
	.space-units-sidebar-item-button a {
		min-height: 48px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		padding: 12px 24px;
	}

	/* Back to top button */
	.space-to-top a {
		min-width: 48px;
		min-height: 48px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
}

/* ===== MOBILE MENU IMPROVEMENTS ===== */

@media screen and (max-width: 1024px) {

	/* Smooth slide-in transition for mobile menu */
	.space-mobile-menu .space-mobile-menu-block {
		transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
		transform: translateX(100%);
	}

	.space-mobile-menu.active .space-mobile-menu-block {
		transform: translateX(0);
	}

	/* Better scrolling in mobile menu */
	.space-mobile-menu-block-ins {
		-webkit-overflow-scrolling: touch;
		overflow-y: auto;
		overscroll-behavior: contain;
	}

	/* Smoother submenu toggle */
	.space-mobile-menu-list ul li ul {
		transition: max-height 0.3s ease, opacity 0.3s ease;
		overflow: hidden;
	}

	/* Adequate spacing between menu items for fat-finger prevention */
	.space-mobile-menu-list ul li {
		border-bottom: 1px solid rgba(0, 0, 0, 0.06);
	}
}

/* ===== SMALL PHONE OPTIMIZATIONS (479px and below) ===== */

@media screen and (max-width: 479px) {

	/* Better body text readability */
	.space-page-content,
	.space-page-content p {
		font-size: 16px;
		line-height: 1.65;
		word-break: break-word;
		overflow-wrap: break-word;
	}

	/* Prevent horizontal overflow */
	.space-box {
		overflow-x: hidden;
	}

	/* Tables responsive on mobile */
	.space-page-content table {
		display: block;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		max-width: 100%;
	}

	/* Embedded content responsive */
	.space-page-content iframe,
	.space-page-content embed,
	.space-page-content object,
	.space-page-content video {
		max-width: 100%;
		height: auto;
	}

	/* Casino/game item cards - better spacing */
	.space-companies-archive-item-ins,
	.space-casinos-3-archive-item-ins,
	.space-units-archive-item-ins {
		margin-bottom: 15px;
	}

	/* Better button sizing for casino CTA buttons */
	.space-companies-archive-item-button a,
	.space-companies-sidebar-item-button a {
		width: 100%;
		text-align: center;
		padding: 14px 20px;
		font-size: 15px;
		box-sizing: border-box;
	}

	/* Form inputs full width and proper size */
	input[type="text"],
	input[type="email"],
	input[type="search"],
	input[type="url"],
	textarea {
		font-size: 16px; /* Prevents iOS zoom on focus */
		max-width: 100%;
		box-sizing: border-box;
	}

	/* Search input in header */
	.space-header-search-block input[type="search"] {
		font-size: 16px;
		padding: 12px 15px;
	}

	/* Footer stacking improvements */
	.space-footer-top-center {
		padding: 0 15px;
	}

	/* Widget spacing on mobile */
	.space-widget {
		margin-bottom: 30px;
	}

	/* Sidebar items full width */
	.space-companies-sidebar-item-ins {
		padding: 15px;
	}

	/* Rating stars better visibility */
	.space-organizations-3-archive-item-count,
	.space-organizations-3-archive-item-count-2 {
		font-size: 14px;
		padding: 6px 12px;
	}
}

/* ===== MEDIUM PHONES (480px - 767px) ===== */

@media screen and (max-width: 767px) and (min-width: 480px) {

	/* Body text readability */
	.space-page-content,
	.space-page-content p {
		font-size: 16px;
		line-height: 1.6;
	}

	/* Form inputs - prevent iOS zoom */
	input[type="text"],
	input[type="email"],
	input[type="search"],
	textarea {
		font-size: 16px;
	}

	/* Casino buttons full width */
	.space-companies-archive-item-button a {
		min-width: 200px;
		text-align: center;
	}
}

/* ===== TABLET OPTIMIZATIONS (768px - 1024px) ===== */

@media screen and (max-width: 1024px) and (min-width: 768px) {

	/* Better card grid spacing */
	.space-companies-archive-item-ins {
		padding: 20px;
	}

	/* Adequate touch spacing for casino list items */
	.space-companies-archive-item {
		margin-bottom: 20px;
	}
}

/* ===== CONTENT LAYOUT SHIFT PREVENTION ===== */

/* Reserve space for common elements to prevent CLS */
.space-header-height {
	contain: layout style;
}

.space-companies-archive-item-img img,
.space-news-1-item-img img,
.space-news-2-item-big-img img,
.space-archive-loop-item-img img {
	aspect-ratio: auto;
	width: 100%;
	height: auto;
}

/* Owl Carousel CLS prevention */
.owl-carousel {
	min-height: 200px;
}

.owl-carousel.owl-loaded {
	min-height: auto;
}

/* ===== PRINT OPTIMIZATIONS ===== */

@media print {
	.space-header,
	.space-header-height,
	.space-mobile-menu,
	.space-to-top,
	.space-footer {
		display: none !important;
	}
}
