/**
 * RoufWeb Auth Pro - Frontend Base Stylesheet
 *
 * This file intentionally stays minimal in Milestone 1: it defines the
 * shared base (font, box-sizing reset scoped to plugin components) and
 * relies on the --rwap-* CSS custom properties injected inline by
 * BrandingManager::css_variables() (see AssetLoader) for all color
 * values. The auth modal, forms, dashboard, and toast components are
 * built out in their own milestones on top of this foundation.
 */

.rwap-scope,
.rwap-scope * {
	box-sizing: border-box;
	font-family: var(--rwap-font, 'Poppins'), -apple-system, BlinkMacSystemFont, sans-serif;
}

.rwap-scope {
	color: var(--rwap-text, #2D2D2D);
}

.rwap-scope a {
	color: var(--rwap-primary, #1F4D3A);
}

.rwap-scope .rwap-btn-primary {
	background: var(--rwap-primary, #1F4D3A);
	color: #FFFFFF;
	border: none;
	border-radius: 10px;
	padding: 12px 20px;
	font-weight: 500;
	cursor: pointer;
	transition: opacity 0.15s ease, transform 0.15s ease;
}

.rwap-scope .rwap-btn-primary:hover {
	opacity: 0.92;
}

.rwap-scope .rwap-btn-primary:active {
	transform: scale(0.98);
}

.rwap-scope .rwap-surface {
	background: var(--rwap-background, #F8F6F1);
	border: 1px solid var(--rwap-border, #E8E2D8);
	border-radius: 14px;
}

/* ---------- Wishlist toggle button (shop loop + single product) ---------- */

.rwap-wishlist-btn {
	background: #FFFFFF !important;
	border: 1px solid var(--rwap-border, #E8E2D8);
	color: var(--rwap-text, #2D2D2D) !important;
	border-radius: 50%;
	width: 36px !important;
	height: 36px !important;
	min-width: 0 !important;
	min-height: 0 !important;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	padding: 0 !important;
	margin: 0 !important;
	line-height: 0 !important;
	transition: transform 0.12s ease, color 0.15s ease, border-color 0.15s ease;
}

.rwap-wishlist-btn svg {
	display: block !important;
	width: 18px !important;
	height: 18px !important;
	pointer-events: none;
}

.rwap-wishlist-btn:hover {
	border-color: var(--rwap-primary, #1F4D3A);
}

.rwap-wishlist-btn:active {
	transform: scale(0.92);
}

.rwap-wishlist-btn.is-active {
	color: #C0392B !important;
	border-color: #C0392B;
}

.rwap-wishlist-btn-loop {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 2;
	box-shadow: 0 2px 8px rgba(45, 45, 45, 0.12);
}

.rwap-wishlist-btn-single {
	margin-left: 12px;
	vertical-align: middle;
}

ul.products li.product {
	position: relative;
}

/* ---------- Wishlist icon shortcode (header/menu placement) ---------- */

.rwap-wishlist-icon-link {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	vertical-align: middle;
	color: var(--rwap-text, #2D2D2D) !important;
	text-decoration: none !important;
	line-height: 0;
	opacity: 1;
	transition: color 0.15s ease, opacity 0.15s ease;
}

.rwap-wishlist-icon-link svg {
	display: block !important;
	width: 26px !important;
	height: 26px !important;
	pointer-events: none;
}

.rwap-wishlist-icon-link:hover {
	color: var(--rwap-primary, #1F4D3A) !important;
	opacity: 0.75;
}

.rwap-wishlist-icon-link:active {
	opacity: 0.6;
}

@media (prefers-reduced-motion: reduce) {
	.rwap-wishlist-icon-link {
		transition: none !important;
	}
}
