/*
Theme Name: modern-maps-site
Theme URI:
Author: the WordPress team
Author URI: https://wordpress.org
Description: Modern Maps Site is a custom block theme based on Twenty Twenty-Four.
Requires at least: 6.4
Tested up to: 6.4
Requires PHP: 7.0
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: modern-maps-site
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

:root {
	--glass-bg: rgba(255, 255, 255, 0.8);
	--glass-blur: blur(12px);
	--ambient-shadow: 0 0 24px rgba(25, 28, 34, 0.06);
}

.is-glass {
	background: var(--glass-bg) !important;
	backdrop-filter: var(--glass-blur) !important;
	-webkit-backdrop-filter: var(--glass-blur) !important;
}

.has-ambient-shadow {
	box-shadow: var(--ambient-shadow) !important;
}

.coordinate-chip {
	background-color: var(--wp--preset--color--secondary-container) !important;
	color: var(--wp--preset--color--on-secondary-container) !important;
	padding: 0.25rem 0.5rem;
	border-radius: var(--wp--custom--border--radius--md);
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--label-sm);
	text-transform: uppercase;
	letter-spacing: 0.05em;
	display: inline-flex;
	align-items: center;
}

.pro-badge {
	background-color: var(--wp--preset--color--tertiary-fixed) !important;
	color: var(--wp--preset--color--on-tertiary-fixed) !important;
	padding: 0.2rem 0.4rem;
	border-radius: 4px;
	font-family: var(--wp--preset--font-family--body);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.label-sm {
	font-size: var(--wp--preset--font-size--label-sm) !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	color: var(--wp--preset--color--on-surface-variant) !important;
}

/* Pill — add "pill" as an Additional CSS Class on any paragraph block.
   Set background + text color via the block's color settings. */
.pill {
	display: inline-block !important;
	padding: 0.25rem 0.75rem !important;
	border-radius: 100px !important;
	font-size: var(--wp--preset--font-size--label-sm, 0.6875rem) !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.1em !important;
	line-height: 1.2 !important;
	width: auto !important;
}

/* Icon Box — compact square icon container used in feature cards.
   Add "icon-box" as an Additional CSS Class on a paragraph block. */
.icon-box {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: fit-content !important;
	line-height: 1 !important;
}

.icon-box svg {
	display: block;
}

/* Popup — border-radius + ambient shadow per DESIGN.md */
.modern-maps-popup,
.maplibregl-popup-content {
	border-radius: var(--wp--custom--border--radius--xl, 0.75rem) !important;
	box-shadow: 0 0 24px rgba(25, 28, 34, 0.06) !important;
	overflow: hidden !important;
	border: none !important;
}

/* Sticky Header */
header.wp-block-template-part:has(.site-header) {
	position: sticky !important;
	top: 0 !important;
	z-index: 100 !important;
	box-shadow: 0 0 24px rgba(25, 28, 34, 0.06) !important;
}

/* No Divider Rule for Lists */
.has-no-dividers > * {
	border: none !important;
	margin-bottom: 0.625rem !important;
}

/* Button with inline SVG icon */
.wp-block-button__link {
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.75rem !important;
}
.wp-block-button__link svg {
	width: 1.5em !important;
	height: 1.5em !important;
	flex-shrink: 0 !important;
	fill: currentColor !important;
}

/* Primary CTA Hover */
.wp-block-button__link:hover {
	filter: brightness(1.1) !important;
	box-shadow: var(--ambient-shadow) !important;
}
