/*
Theme Name: IPTV USA Provider
Theme URI: https://iptvusaprovider.com/
Author: IPTV USA Provider
Author URI: https://iptvusaprovider.com/
Description: SEO-first IPTV theme built for Elementor. Ships the IPTV USA Provider design system plus importable Elementor page templates for the homepage and marketing pages.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: iptv-usa-provider
Tags: blog, custom-menu, custom-logo, featured-images, footer-widgets, translation-ready
*/

/*
This file only declares the theme. The design system lives in
assets/css/styles.css and is enqueued from functions.php, so the whole site
(and Elementor widgets) share one source of truth for tokens and components.

The rules below are WordPress-specific components that the static marketing
site never needed (pagination, search form, comments, editor alignment) but
the theme does. They reuse the same tokens as the design system.
*/

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: var(--surface);
	border-radius: 6px;
	clip: auto !important;
	clip-path: none;
	color: #fff;
	display: block;
	font-size: .9rem;
	height: auto;
	left: 16px;
	line-height: normal;
	padding: .8rem 1rem;
	text-decoration: none;
	top: 16px;
	width: auto;
	z-index: 100000;
}

/* Pagination */
.pagination {
	display: flex;
	justify-content: center;
	gap: .4rem;
	margin-top: 2.5rem;
	flex-wrap: wrap;
}

.pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	height: 40px;
	padding: 0 .7rem;
	border: 1px solid var(--border);
	border-radius: 10px;
	color: var(--muted);
	font-weight: 700;
	font-size: .9rem;
}

.pagination .page-numbers:hover {
	border-color: var(--primary);
	color: #fff;
	text-decoration: none;
}

.pagination .page-numbers.current {
	background: var(--primary);
	border-color: var(--primary);
	color: #fff;
}

.pagination .page-numbers.dots {
	border: 0;
}

/* Post navigation (prev/next) */
.post-nav {
	margin-top: 2.5rem;
}

.post-nav .nav-links {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	flex-wrap: wrap;
}

.post-nav a {
	font-weight: 700;
	font-size: .95rem;
}

/* Search form */
.search-form {
	display: flex;
	gap: .5rem;
	flex-wrap: wrap;
}

.search-form .search-field {
	flex: 1 1 240px;
	min-width: 0;
	padding: .75rem 1rem;
	background: var(--surface);
	border: 1px solid var(--border-strong);
	border-radius: 10px;
	color: var(--text);
	font: inherit;
}

.search-form .search-field:focus {
	border-color: var(--primary);
	outline: none;
}

/* Comments */
.comment-list {
	list-style: none;
	margin: 0 0 2rem;
	padding: 0;
	display: grid;
	gap: 1.4rem;
}

.comment-list .children {
	list-style: none;
	margin: 1.4rem 0 0 1.6rem;
	padding: 0;
	display: grid;
	gap: 1.4rem;
}

.comment-body {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: var(--radius);
	padding: 1.2rem 1.4rem;
}

.comment-meta {
	font-size: .84rem;
	color: var(--muted);
	margin-bottom: .5rem;
}

.comment-respond {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: var(--radius);
	padding: 1.4rem;
}

.comment-form input,
.comment-form textarea {
	width: 100%;
	padding: .75rem 1rem;
	background: var(--bg);
	border: 1px solid var(--border-strong);
	border-radius: 10px;
	color: var(--text);
	font: inherit;
}

/* Editor alignment + WordPress core classes */
.alignwide {
	max-width: var(--max);
	margin-inline: auto;
}

.alignfull {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
}

.alignleft {
	float: left;
	margin: 0 1.4rem 1rem 0;
}

.alignright {
	float: right;
	margin: 0 0 1rem 1.4rem;
}

.aligncenter {
	display: block;
	margin-inline: auto;
}

.wp-caption,
.gallery-caption {
	max-width: 100%;
	font-size: .86rem;
	color: var(--muted);
	text-align: center;
}

.article table {
	width: 100%;
	border-collapse: collapse;
	margin: 1.6rem 0;
	font-size: .96rem;
}

.article th,
.article td {
	border: 1px solid var(--border);
	padding: .7rem .9rem;
	text-align: left;
}

.article th {
	color: #fff;
	background: var(--surface);
}

.article code {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 6px;
	padding: .1rem .4rem;
	font-size: .9em;
}

.article img {
	max-width: 100%;
	height: auto;
}

.sticky .post-card {
	border-color: var(--primary);
}

/* Footer extras: widget area + contact row */
.footer-widgets {
	display: grid;
	gap: 1.4rem;
	margin-top: 2rem;
	padding-top: 1.6rem;
	border-top: 1px solid var(--border);
}

.footer-contact {
	display: flex;
	flex-wrap: wrap;
	gap: .6rem 1.6rem;
	margin-top: 1.6rem;
	padding-top: 1.2rem;
	border-top: 1px solid var(--border);
	font-size: .92rem;
}

.footer-contact a {
	color: var(--muted);
}

.footer-contact a:hover {
	color: #fff;
}


