/**
 * WT Elementor Widgets – Shared Base Stylesheet
 *
 * Contains CSS custom properties (design tokens) and shared utility classes
 * reused across all WT widgets.
 *
 * @package WTElementorWidgets
 * @version 1.0.0
 */

/* ==========================================================================
   CSS Custom Properties (Design Tokens)
   ========================================================================== */

:root {
	/* Brand colours */
	--wt-primary: #4f86c6;
	--wt-primary-light: #6ba3d6;
	--wt-primary-dark: #2f5d96;
	--wt-secondary: #f5a623;
	--wt-success: #27ae60;
	--wt-danger: #e74c3c;

	/* Neutrals */
	--wt-text: #2d3748;
	--wt-text-light: #718096;
	--wt-bg: #ffffff;
	--wt-bg-alt: #f7fafc;
	--wt-border: #e2e8f0;

	/* Spacing */
	--wt-space-xs: 0.25rem;
	--wt-space-sm: 0.5rem;
	--wt-space-md: 1rem;
	--wt-space-lg: 1.5rem;
	--wt-space-xl: 2rem;
	--wt-space-2xl: 3rem;
	--wt-space-3xl: 4rem;

	/* Typography */
	--wt-font-base: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	--wt-font-mono: "SFMono-Regular", Consolas, monospace;
	--wt-text-sm: 0.875rem;
	--wt-text-base: 1rem;
	--wt-text-lg: 1.125rem;
	--wt-text-xl: 1.25rem;
	--wt-text-2xl: 1.5rem;
	--wt-text-3xl: 2rem;

	/* Borders */
	--wt-radius-sm: 4px;
	--wt-radius-md: 8px;
	--wt-radius-lg: 16px;
	--wt-radius-full: 9999px;

	/* Transitions */
	--wt-transition: 0.3s ease;
	--wt-transition-fast: 0.15s ease;

	/* Shadows */
	--wt-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.1);
	--wt-shadow-md: 0 4px 16px rgba(0, 0, 0, 0.12);
	--wt-shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.15);
}

/* ==========================================================================
   Shared Utility Classes
   ========================================================================== */

.wt-widget {
	box-sizing: border-box;
}

.wt-widget *,
.wt-widget *::before,
.wt-widget *::after {
	box-sizing: inherit;
}

/* Visually hide an element but keep it accessible to screen readers */
.wt-sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* Clearfix */
.wt-clearfix::after {
	content: "";
	display: table;
	clear: both;
}