/**
Theme Name: Swift FSE
Theme URI: https://wpplover.com/themes/swift-fse/
Author: WP Plover
Author URI: https://wpplover.com
Description: Swift FSE is a multipurpose Full Site Editing theme. Swift FSE theme utilizes the WordPress block editor and the extensions provided by the Plover Kit to create unique and eye-catching web design. Dark mode and mobile optimization can better retain visitors. It’s perfect for agencies, companies, and bloggers to create an impact online website. Startups or marketing campaigns can also easily create landing pages through the block editor, making Swift FSE the fastest and most adaptable theme for any creative endeavor.
Template: plover
Requires at least: 6.6
Tested up to: 6.9
Requires PHP: 7.4
Version: 1.0.3
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: swift-fse
Tags: full-site-editing, editor-style, block-patterns, wide-blocks, block-styles, style-variations, threaded-comments, translation-ready, sticky-post, footer-widgets, custom-background, custom-colors, custom-header, custom-logo, custom-menu, featured-image-header, featured-images, flexible-header, one-column, two-columns, three-columns, full-width-template, rtl-language-support, grid-layout, left-sidebar, right-sidebar, portfolio, blog, news
*/

.plover-sticky.has-sticky-bottom-border {
    border-bottom: 1px solid var(--wp--preset--color--neutral-400);
}

/* Hide avatar in articles */
.wp-block-avatar {
    display: none;
}

/* Hide separator lines around avatar */
.wp-block-separator:has(+ .wp-block-avatar),
.wp-block-avatar + .wp-block-separator,
.wp-block-separator:has(+ .wp-block-avatar + .wp-block-separator) {
    display: none;
}

/* === Header mobile === */
@media (max-width: 782px) {
	/* Hide share buttons in header on mobile */
	.cis-share-buttons {
		display: none !important;
	}
	/* Make header content wrap properly */
	.has-sticky-bottom-border .alignwide {
		flex-wrap: wrap;
	}
}

/* === Mobile menu: right-side sliding panel === */
@media (max-width: 782px) {
	/* Override full-page overlay to right-side panel */
	.wp-block-navigation__responsive-container.is-menu-open {
		justify-content: flex-end !important;
		background-color: rgba(0, 0, 0, 0.3) !important;
	}
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog {
		position: fixed !important;
		top: 0 !important;
		right: 0 !important;
		left: auto !important;
		width: 280px !important;
		max-width: 80vw !important;
		height: 100vh !important;
		background-color: var(--wp--preset--color--neutral-0, #fff) !important;
		box-shadow: -4px 0 20px rgba(0, 0, 0, 0.15) !important;
		padding: 20px !important;
		overflow-y: auto !important;
		transform: translateX(0) !important;
		animation: cis-slide-in 0.25s ease-out !important;
	}
	@keyframes cis-slide-in {
		from { transform: translateX(100%); }
		to { transform: translateX(0); }
	}
	/* Close button position */
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
		position: absolute !important;
		top: 12px !important;
		right: 12px !important;
	}
	/* Menu items styling */
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
		padding: 8px 0 !important;
	}
	/* Hamburger button in top-right */
	.wp-block-navigation__responsive-container-open {
		margin-left: auto !important;
	}
}

/* === Footer width constraint === */
footer.wp-block-template-part > .wp-block-group {
	padding-left: var(--wp--preset--spacing--small, 1.5rem);
	padding-right: var(--wp--preset--spacing--small, 1.5rem);
}

/* === Footer responsive === */
@media (max-width: 782px) {
	.cis-footer-columns {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}
	.cis-footer-columns .wp-block-column {
		flex-basis: 100% !important;
		align-items: center;
	}
	.cis-footer-columns .wp-block-column .wp-block-group {
		align-items: center;
	}
	.cis-footer-columns .wp-block-column ul {
		padding-left: 0;
		list-style: none;
	}
	.cis-footer-columns .wp-block-column ul li {
		text-align: center;
		align-self: center;
	}
	.cis-footer-share {
		justify-content: center;
	}
	/* Center copyright text */
	footer .wp-block-group.alignwide {
		justify-content: center;
		text-align: center;
	}
}

/* === Footer share buttons === */
.cis-footer-share {
	display: flex;
	gap: 16px;
	align-items: center;
	justify-content: center;
	padding: 8px 0 16px 0;
}
.cis-footer-share a {
	color: inherit;
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	transition: transform 0.2s ease;
}
.cis-footer-share a:hover {
	transform: scale(1.1);
}

/* === Hamburger menu: 3 lines (mobile only) === */
@media (max-width: 782px) {
	.wp-block-navigation__responsive-container-open svg {
		display: none !important;
	}
	.wp-block-navigation__responsive-container-open {
		position: relative !important;
		width: 24px !important;
		height: 18px !important;
		display: flex !important;
		flex-direction: column !important;
		justify-content: space-between !important;
		align-items: stretch !important;
		cursor: pointer !important;
		background: transparent !important;
		border: none !important;
		padding: 0 !important;
	}
	.wp-block-navigation__responsive-container-open::before,
	.wp-block-navigation__responsive-container-open::after,
	.wp-block-navigation__responsive-container-open > span {
		content: '' !important;
		display: block !important;
		width: 100% !important;
		height: 2px !important;
		background-color: currentColor !important;
		border-radius: 1px !important;
	}
}

/* === Company ratings: remove max-width === */
.single-company .wp-block-query,
.single-company .wp-block-query .wp-block-post-template,
.single-company .is-layout-constrained > .wp-block-query {
	max-width: none !important;
	width: 100% !important;
}
.single-company .has-neutral-200-background-color .is-layout-constrained > * {
	max-width: 100% !important;
}
/* Rating cards: title fills card width */
.single-company .wp-block-query .wp-block-post-template .wp-block-group {
	max-width: 100% !important;
}
.single-company .wp-block-query .wp-block-post-template .wp-block-group .is-layout-constrained > * {
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}
.single-company .wp-block-query .wp-block-post-title {
	max-width: 100% !important;
	width: 100% !important;
}

/* === Company page: mobile fixes === */
@media (max-width: 782px) {
	/* Center cover image */
	.single-company .wp-block-post-featured-image {
		text-align: center;
	}
	.single-company .wp-block-post-featured-image img {
		margin-left: auto;
		margin-right: auto;
	}
	/* Center company name */
	.single-company h1.wp-block-post-title {
		text-align: center !important;
	}
	/* Left-align "О компании:" heading like text below */
	.single-company .wp-block-columns .wp-block-column > .wp-block-heading {
		text-align: left;
	}
	/* Rating cards: remove left/right padding from title wrappers */
	.single-company .wp-block-query .wp-block-post-template li .wp-block-group .wp-block-group {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	/* Breadcrumbs and "О компании:" - match content left padding */
	.single-company main > .wp-block-breadcrumbs,
	.single-company .wp-block-columns .wp-block-column > .wp-block-heading {
		padding-left: var(--wp--style--root--padding-left, var(--wp--preset--spacing--small, 1.5rem));
	}
}

/* === Footer: center headings on mobile === */
@media (max-width: 782px) {
	.cis-footer-columns .wp-block-column .wp-block-heading {
		text-align: center !important;
	}
}

/* === Dark mode: logo and icons === */
body.is-style-dark .wp-block-site-logo img,
body.is-style-dark header img[src$=".svg"],
body.is-style-dark footer img[src$=".svg"] {
	filter: brightness(0) invert(1);
}
body.is-style-dark .cis-share-x svg,
body.is-style-dark .cis-footer-share .cis-share-x svg {
	fill: #ffffff;
}
