/**
* CSS themes for simplePagination.js
* Author: Flavius Matis - http://flaviusmatis.github.com/
* URL: https://github.com/flaviusmatis/simplePagination.js
*/

ul.simple-pagination {
	list-style: none;
}

.simple-pagination {
	display: block;
	overflow: hidden;
	padding: 0 5px 5px 0;
	margin: 0;
}

.simple-pagination ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.simple-pagination li {
	list-style: none;
	padding: 0;
	margin: 0;
	float: left;
}
span.ellipse.clickable {
	cursor: pointer;
}

.ellipse input {
	width: 3em;
}

/*------------------------------------*\
	Compact Theme Styles
\*------------------------------------*/
.compact-theme span {
	cursor:pointer;
}

.compact-theme a, .compact-theme span {
	float: left;
	color: #333;
	font-size:14px;
	line-height:24px;
	font-weight: normal;
	text-align: center;
	border: 1px solid #AAA;
	border-left: none;
	min-width: 14px;
	padding: 0 7px;
	box-shadow: 2px 2px 2px rgba(0,0,0,0.2);
	background: #efefef; /* Old browsers */
	background: -moz-linear-gradient(top, #ffffff 0%, #efefef 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#efefef)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top, #ffffff 0%,#efefef 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top, #ffffff 0%,#efefef 100%); /* Opera11.10+ */
	background: -ms-linear-gradient(top, #ffffff 0%,#efefef 100%); /* IE10+ */
	background: linear-gradient(top, #ffffff 0%,#efefef 100%); /* W3C */
}

.compact-theme a:hover, .compact-theme li:not(.disabled):not(.active) span:hover {
	text-decoration: none;
	background: #efefef; /* Old browsers */
	background: -moz-linear-gradient(top, #efefef 0%, #bbbbbb 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#efefef), color-stop(100%,#bbbbbb)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top, #efefef 0%,#bbbbbb 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top, #efefef 0%,#bbbbbb 100%); /* Opera11.10+ */
	background: -ms-linear-gradient(top, #efefef 0%,#bbbbbb 100%); /* IE10+ */
	background: linear-gradient(top, #efefef 0%,#bbbbbb 100%); /* W3C */
}

.compact-theme li:first-child a, .compact-theme li:first-child span {
	border-left: 1px solid #AAA;
	border-radius: 3px 0 0 3px;
}

.compact-theme li:last-child a, .compact-theme li:last-child span {
	border-radius: 0 3px 3px 0;
}

.compact-theme .current {
	background: #bbbbbb; /* Old browsers */
	background: -moz-linear-gradient(top, #bbbbbb 0%, #efefef 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#bbbbbb), color-stop(100%,#efefef)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top, #bbbbbb 0%,#efefef 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top, #bbbbbb 0%,#efefef 100%); /* Opera11.10+ */
	background: -ms-linear-gradient(top, #bbbbbb 0%,#efefef 100%); /* IE10+ */
	background: linear-gradient(top, #bbbbbb 0%,#efefef 100%); /* W3C */
	cursor: default;
}

.compact-theme .ellipse {
	background: #EAEAEA;
	padding: 0 10px;
	cursor: default;
}

/*------------------------------------*\
	Light Theme Styles
\*------------------------------------*/
.light-theme span {
	cursor:pointer;
}

.light-theme a, .light-theme span {
	float: left;
	color: #666;
	font-size:14px;
	line-height:24px;
	font-weight: normal;
	text-align: center;
	border: 1px solid #BBB;
	min-width: 14px;
	padding: 0 7px;
	margin: 0 5px 0 0;
	border-radius: 3px;
	box-shadow: 0 1px 2px rgba(0,0,0,0.2);
	background: #efefef; /* Old browsers */
	background: -moz-linear-gradient(top, #ffffff 0%, #efefef 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#efefef)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top, #ffffff 0%,#efefef 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top, #ffffff 0%,#efefef 100%); /* Opera11.10+ */
	background: -ms-linear-gradient(top, #ffffff 0%,#efefef 100%); /* IE10+ */
	background: linear-gradient(top, #ffffff 0%,#efefef 100%); /* W3C */
}

.light-theme a:hover, .light-theme li:not(.disabled):not(.active) span:hover {
	text-decoration: none;
	background: #FCFCFC;
}

.light-theme .current {
	background: #666;
	color: #FFF;
	border-color: #444;
	box-shadow: 0 1px 0 rgba(255,255,255,1), 0 0 2px rgba(0, 0, 0, 0.3) inset;
	cursor: default;
}

.light-theme .ellipse {
	background: none;
	border: none;
	border-radius: 0;
	box-shadow: none;
	font-weight: bold;
	cursor: default;
}

/*------------------------------------*\
	Dark Theme Styles
\*------------------------------------*/
.dark-theme span {
	cursor:pointer;
}

.dark-theme a, .dark-theme span {
	float: left;
	color: #CCC;
	font-size:14px;
	line-height:24px;
	font-weight: normal;
	text-align: center;
	border: 1px solid #222;
	min-width: 14px;
	padding: 0 7px;
	margin: 0 5px 0 0;
	border-radius: 3px;
	box-shadow: 0 1px 2px rgba(0,0,0,0.2);
	background: #555; /* Old browsers */
	background: -moz-linear-gradient(top, #555 0%, #333 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#555), color-stop(100%,#333)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top, #555 0%,#333 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top, #555 0%,#333 100%); /* Opera11.10+ */
	background: -ms-linear-gradient(top, #555 0%,#333 100%); /* IE10+ */
	background: linear-gradient(top, #555 0%,#333 100%); /* W3C */
}

.dark-theme a:hover, .dark-theme li:not(.disabled):not(.active) span:hover {
	text-decoration: none;
	background: #444;
}

.dark-theme .current {
	background: #222;
	color: #FFF;
	border-color: #000;
	box-shadow: 0 1px 0 rgba(255,255,255,0.2), 0 0 1px 1px rgba(0, 0, 0, 0.1) inset;
	cursor: default;
}

.dark-theme .ellipse {
	background: none;
	border: none;
	border-radius: 0;
	box-shadow: none;
	font-weight: bold;
	cursor: default;
}

/*------------------------------------*\
	Simple Clean Pagination Styles
\*------------------------------------*/

/* Main pagination container */
.simple-pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 40px 0;
	padding: 0;
}

.simple-pagination ul {
	display: flex;
	list-style: none;
	margin: 0;
	padding: 0;
	background: transparent;
	border-radius: 0;
	box-shadow: none;
	overflow: visible;
	gap: 8px;
}

.simple-pagination li {
	margin: 0;
	padding: 0;
}

/* Page links and spans */
.simple-pagination a,
.simple-pagination span {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	height: 40px;
	padding: 0 12px;
	text-decoration: none;
	font-size: 16px;
	font-weight: 500;
	color: #6b7280;
	background: transparent;
	border: none;
	transition: all 0.2s ease;
	position: relative;
	border-radius: 50%;
}

/* Hover effects */
.simple-pagination a:hover {
	background: var(--color-primary);
	color: #fff !important;
	transform: none;
}

/* Active/Current page */
.simple-pagination .active span {
	background: var(--color-primary);
	color: #fff !important;
	font-weight: 600;
	box-shadow: none;
}

/* Disabled states */
.simple-pagination .disabled span {
	color: #d1d5db;
	cursor: not-allowed;
	background: transparent;
}

.simple-pagination .disabled span:hover {
	background: transparent;
	transform: none;
}

/* Previous/Next buttons */
.simple-pagination .prev,
.simple-pagination .next {
	font-weight: 500;
	background: transparent;
	color: #6b7280;
	border-radius: 50%;
	margin: 0;
	font-size: 18px;
	font-family: Arial, sans-serif;
}

.simple-pagination .prev:hover,
.simple-pagination .next:hover {
	background: var(--color-primary);
	color: #fff;
	transform: none;
	box-shadow: none;
}

.simple-pagination .disabled.prev,
.simple-pagination .disabled.next {
	background: transparent;
	color: #d1d5db;
}

.simple-pagination .disabled.prev:hover,
.simple-pagination .disabled.next:hover {
	background: transparent;
	transform: none;
	box-shadow: none;
}

/* Ellipsis */
.simple-pagination .ellipse {
	background: transparent;
	color: #6b7280;
	font-weight: bold;
	cursor: default;
}

/* Responsive design */
@media (max-width: 768px) {
	.simple-pagination a,
	.simple-pagination span {
		min-width: 36px;
		height: 36px;
		padding: 0 8px;
		font-size: 14px;
	}
	
	.simple-pagination .prev,
	.simple-pagination .next {
		font-size: 16px;
	}
}

@media (max-width: 480px) {
	.simple-pagination a,
	.simple-pagination span {
		min-width: 32px;
		height: 32px;
		padding: 0 6px;
		font-size: 13px;
	}
	
	.simple-pagination .prev,
	.simple-pagination .next {
		font-size: 14px;
	}
}

/* Animation for page changes */
@keyframes pageChange {
	0% {
		opacity: 0;
		transform: scale(0.8);
	}
	100% {
		opacity: 1;
		transform: scale(1);
	}
}

.simple-pagination li {
	animation: pageChange 0.3s ease-out;
}

/* Special styling for clients and projects pagination */
.clients__list-page-pag,
.projects__list-page-pag {
	margin: 60px 0;
}

.clients__list-page-pag .simple-pagination ul,
.projects__list-page-pag .simple-pagination ul {
	background: transparent;
	padding: 0;
	border-radius: 0;
	border: none;
	gap: 8px;
}

.clients__list-page-pag .simple-pagination a,
.clients__list-page-pag .simple-pagination span,
.projects__list-page-pag .simple-pagination a,
.projects__list-page-pag .simple-pagination span {
	background: transparent;
	color: #6b7280;
	margin: 0;
	border-radius: 50%;
	border: none;
}

.clients__list-page-pag .simple-pagination .active span,
.projects__list-page-pag .simple-pagination .active span {
	background: var(--color-primary);
	color: #fff;
	border: none;
	box-shadow: none;
}

.clients__list-page-pag .simple-pagination a:hover,
.projects__list-page-pag .simple-pagination a:hover {
	background: var(--color-primary);
	color: #fff !important;
	transform: none;
	box-shadow: none;
}

/* Loading state */
.simple-pagination.loading {
	opacity: 0.6;
	pointer-events: none;
}

.simple-pagination.loading::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 20px;
	height: 20px;
	margin: -10px 0 0 -10px;
	border: 2px solid #f3f3f3;
	border-top: 2px solid #667eea;
	border-radius: 50%;
	animation: spin 1s linear infinite;
}

@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}
