/**
 * Scoped styles for the archive filter bar and its local empty/pagination
 * elements. The filter-bar treatment adapts the public reference filter
 * without importing its CSS or affecting unrelated forms and controls.
 *
 * @package programafullpc
 */

/* Reference filter surface: dark-to-orange gradient, warm glow, compact cards. */
.pfpc-archive-filters {
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 12px;
    width: 100%;
    margin: 10px 0;
    padding: 15px;
    background: #fff;
    border: 1px solid #222;
    border-radius: 10px;
    backdrop-filter: blur(6px);
}

.pfpc-archive-filters > .pfpc-archive-filter-group {
	box-sizing: border-box;
	display: flex;
	flex: 1 1 180px;
	flex-direction: column;
	min-width: 140px;
	padding: 8px;
	background: rgba(0, 0, 0, .55);
	border: 1px solid #222;
	border-radius: 8px;
	transition: border-color .2s, box-shadow .2s;
}

.pfpc-archive-filters > .pfpc-archive-filter-group:hover {
	border-color: #5a0000;
	box-shadow: 0 0 12px rgba(90, 0, 0, .5);
}

.pfpc-archive-filters .pfpc-archive-filter-group > label {
	margin: 0 0 5px;
	color: #5a0000;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .5px;
	line-height: 16.5px;
	text-align: left;
}

.pfpc-archive-filters select {
	box-sizing: border-box;
	display: block;
	width: 100%;
	max-width: 100%;
	height: 30px;
	min-height: 30px;
	margin: 0 0 5px;
	padding: 6px 8px;
	color: #fff;
	font: 12px "Segoe UI", Calibri, "Myriad Pro", Myriad, "Trebuchet MS", Helvetica, Arial, sans-serif;
	background: #0b0b0b;
	border: 1px solid #333;
	border-radius: 6px;
	cursor: pointer;
	transition: border-color .2s, box-shadow .2s;
}

.pfpc-archive-filters select:hover {
	border-color: #5a0000;
}

.pfpc-archive-filters select:focus {
	border-color: #5a0000;
	box-shadow: 0 0 8px rgba(90, 0, 0, .6);
	outline-offset: 2px;
}

.pfpc-archive-filters .pfpc-archive-filter-submit {
	justify-content: center;
}

.pfpc-archive-filters .pfpc-filter-submit {
    box-sizing: border-box;
    min-height: 35px;
    padding: 10px 18px;
    color: #fff;
    font: 700 13px Arial, sans-serif;
    background: #5f0000;
    border: 0;
    border-radius: 8px;
    box-shadow: 0 0 12px rgba(90, 0, 0, .6);
    cursor: pointer;
    transition: transform .2s, box-shadow .2s;
}

.pfpc-archive-filters .pfpc-filter-submit:hover {
	transform: scale(1.04);
	box-shadow: 0 0 18px rgba(90, 0, 0, .8);
}

.pfpc-archive-filters .pfpc-filter-submit:active {
	transform: scale(.95);
}

.pfpc-archive-filters .pfpc-filter-submit:focus-visible {
	outline: 2px solid #5a0000;
	outline-offset: 3px;
}

/* Reference breakpoint behavior: two columns on compact tablets. */
@media (max-width: 1024px) {
	.pfpc-archive-filters {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.pfpc-archive-filters > .pfpc-archive-filter-group {
		min-width: 0;
	}

	.pfpc-archive-filters .pfpc-archive-filter-submit {
		grid-column: span 2;
	}
}

/* Single-column touch layout and larger native controls on phones. */
@media (max-width: 600px) {
	.pfpc-archive-filters {
		grid-template-columns: 1fr;
		gap: 10px;
		padding: 12px;
	}

	.pfpc-archive-filters > .pfpc-archive-filter-group {
		padding: 6px;
	}

	.pfpc-archive-filters .pfpc-archive-filter-group > label {
		font-size: 10px;
	}

	.pfpc-archive-filters select {
		height: 36px;
		min-height: 36px;
		font-size: 13px;
	}

	.pfpc-archive-filters .pfpc-archive-filter-submit {
		grid-column: auto;
	}

	.pfpc-archive-filters .pfpc-filter-submit {
		width: 100%;
		padding: 12px;
		font-size: 14px;
	}
}

/* Pagination adapts the public archive's rounded page-number treatment. */
#pfpc-archive-pagination .pfpc-archive-pagination-nav {
    margin: 15px 0 2em;
}

#pfpc-archive-pagination .pfpc-archive-pagination-nav .nav-links {
    text-align: center;
    font: 16px/24px sans-serif;
}

#pfpc-archive-pagination .pfpc-archive-pagination-nav .page-numbers {
    box-sizing: border-box;
    display: inline-block;
    min-width: 49px;
    overflow: hidden;
    padding: .6rem;
    color: #a70000;
    background: #fff;
    border-radius: 87px;
    box-shadow: 0 .125rem .25rem rgba(0, 0, 0, .08);
    line-height: 24px;
    text-decoration: none;
    vertical-align: middle;
}

#pfpc-archive-pagination .pfpc-archive-pagination-nav a.prev,
#pfpc-archive-pagination .pfpc-archive-pagination-nav a.next {
    padding-right: 1rem;
    padding-left: 1rem;
}

#pfpc-archive-pagination .pfpc-archive-pagination-nav a:hover,
#pfpc-archive-pagination .pfpc-archive-pagination-nav a:active {
    color: #f00;
}

#pfpc-archive-pagination .pfpc-archive-pagination-nav .current {
    color: #020202;
    font-weight: 400;
}

#pfpc-archive-pagination .pfpc-archive-pagination-nav a:focus-visible {
    outline: 2px solid #a70000;
    outline-offset: 3px;
}

#pfpc-archive-pagination .pfpc-archive-pagination-nav .dots {
    color: #020202;
}

@media (max-width: 600px) {
    #pfpc-archive-pagination .pfpc-archive-pagination-nav .nav-links {
        line-height: 24px;
    }

    #pfpc-archive-pagination .pfpc-archive-pagination-nav .page-numbers {
        margin-bottom: 7px;
    }
}

.pfpc-archive-empty,
.pfpc-archive-empty-inline {
	padding: 30px 16px;
	color: #666;
	font-size: 15px;
	text-align: center;
}
