/**
 * Owlyn Events for WooCommerce — Owlyn Skin v2
 *
 * Strategy: the event engine styles everything through CSS custom
 * properties printed by MPWEM_Global_Style (--color_theme, --dbr,
 * --button_bg …). We override those variables with double-:root
 * specificity so the entire plugin re-themes instantly, then layer
 * component-level restyling on the real template classes.
 */

/* =========================================================
   1. VARIABLE TAKEOVER — recolors & reshapes the whole plugin
   ========================================================= */
:root:root {
	/* Owlyn palette: deep violet + amber (vs. stock blue) */
	--color_theme: #6d28d9 !important;
	--color_theme_ee: #6d28d9ee !important;
	--color_theme_cc: #6d28d9cc !important;
	--color_theme_aa: #6d28d9aa !important;
	--color_theme_88: #6d28d988 !important;
	--color_theme_77: #6d28d977 !important;
	--color_theme_alter: #f59e0b !important;
	--color_active: #6d28d9 !important;
	--color_primary: #6d28d9 !important;
	--color_yellow: #f59e0b !important;

	--d_color: #241b3a !important;
	--color_border: #e8e4f5 !important;
	--color_section: #f7f5fc !important;
	--color_light: #f3f0fa !important;
	--color_light_4: #faf8ff !important;

	/* Shape language: generous rounding vs. stock 5px */
	--dbr: 14px !important;
	--dbrl: 20px !important;

	/* Buttons */
	--button_bg: #6d28d9 !important;
	--color_button: #ffffff !important;
	--button_height: 46px !important;
	--button_shadows: 0 8px 20px rgba(109, 40, 217, .30) !important;

	/* Type */
	--fw-normal: 500;
	--fw-medium: 650;
}

/* =========================================================
   2. GLOBAL FEEL
   ========================================================= */
.mep-events-wrapper,
.mpwem_style,
.default_theme,
.mep_smart_theme {
	font-family: "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;
	color: #241b3a;
	letter-spacing: .01em;
}

.mep-events-wrapper h1, .default_theme h1,
.mep-events-wrapper h2, .default_theme h2,
.mep-events-wrapper h3, .default_theme h3 {
	font-weight: 800;
	letter-spacing: -.02em;
	color: #1e1b4b;
}

/* =========================================================
   3. EVENT LIST / GRID CARDS
   ========================================================= */
.mep_event_list_item,
.mep_event_grid_item,
.mep-event-list-loop,
.mep_event_winter_list,
.mep_event_spring_list,
.mep_event_native_list {
	background: #fff !important;
	border: 1px solid #ece7f8 !important;
	border-radius: 18px !important;
	box-shadow: 0 4px 18px rgba(30, 27, 75, .08) !important;
	overflow: hidden;
	transition: transform .22s ease, box-shadow .22s ease !important;
}

.mep_event_list_item:hover,
.mep_event_grid_item:hover,
.mep-event-list-loop:hover,
.mep_event_winter_list:hover,
.mep_event_spring_list:hover {
	transform: translateY(-5px);
	box-shadow: 0 16px 38px rgba(109, 40, 217, .20) !important;
	border-color: #d9ccf5 !important;
}

/* Thumbnails: rounded inside the card, zoom on hover */
.mep_list_thumb,
.mep_event_list_item .mep_list_thumb {
	border-radius: 18px 18px 0 0 !important;
	overflow: hidden;
}

.mep_list_thumb img {
	transition: transform .35s ease;
	display: block;
	width: 100%;
}

.mep_event_list_item:hover .mep_list_thumb img,
.mep_event_grid_item:hover .mep_list_thumb img {
	transform: scale(1.05);
}

.mep_list_event_details {
	padding: 18px 20px 20px !important;
}

.mep_list_event_details h2 a,
.mep_list_event_details h3 a,
.mep_list_event_details a {
	color: #1e1b4b;
	text-decoration: none;
	transition: color .15s ease;
}

.mep_list_event_details h2 a:hover,
.mep_list_event_details h3 a:hover {
	color: #6d28d9;
}

.mep-event-excerpt {
	color: #6b6480;
	font-size: 14.5px;
	line-height: 1.65;
}

/* Date badge: amber chip instead of stock square */
.mep_list_date,
.mep_list_date_wrapper,
.mep_winter_list_dd,
.mep_winter_list_mm_yy {
	background: #f59e0b !important;
	color: #1e1b4b !important;
	border-radius: 12px !important;
	font-weight: 800 !important;
	box-shadow: 0 4px 12px rgba(245, 158, 11, .35);
}

/* Card footer strip */
.mep-list-footer {
	border-top: 1px dashed #e8e4f5 !important;
	background: #faf8ff !important;
	padding: 12px 20px !important;
}

/* Price */
.mpwem-price-area,
.woocommerce-Price-amount {
	color: #6d28d9 !important;
	font-weight: 800 !important;
}

/* =========================================================
   4. BUTTONS — pill shape with gradient (vs. stock square)
   ========================================================= */
.mep-events-wrapper button:not([class*="pagination"]),
.mep-events-wrapper a.button,
.mep-events-wrapper .event_details_link,
.default_theme button,
.mpwem_registration_area button,
.mpwem_booking_panel button,
.mep_more_date_btn,
button.mpwem_get_date_list,
div.mpwem_form_submit_area button[type=submit],
.mpwem_registration_area .single_add_to_cart_button {
	background: linear-gradient(135deg, #7c3aed 0%, #5b21b6 100%) !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 999px !important;
	font-weight: 650 !important;
	letter-spacing: .02em;
	box-shadow: 0 6px 18px rgba(109, 40, 217, .30) !important;
	transition: transform .16s ease, box-shadow .16s ease, filter .16s ease !important;
}

.mep-events-wrapper button:not([class*="pagination"]):hover,
.mep-events-wrapper a.button:hover,
.mep-events-wrapper .event_details_link:hover,
.mpwem_registration_area button:hover,
.mep_more_date_btn:hover,
.mpwem_registration_area .single_add_to_cart_button:hover {
	filter: brightness(1.08);
	transform: translateY(-2px);
	box-shadow: 0 10px 26px rgba(109, 40, 217, .40) !important;
}

/* =========================================================
   5. SINGLE EVENT — booking panel & tickets
   ========================================================= */
.mpwem_registration_area,
.mpwem_booking_panel {
	background: #fff !important;
	border: 1px solid #ece7f8 !important;
	border-radius: 20px !important;
	box-shadow: 0 10px 34px rgba(30, 27, 75, .10) !important;
}

.mep_ticket_item,
.mpwem_ticket_type {
	background: #f7f5fc !important;
	border: 1.5px solid #e8e4f5 !important;
	border-radius: 14px !important;
	transition: border-color .18s ease, background .18s ease, box-shadow .18s ease !important;
}

.mep_ticket_item:hover,
.mpwem_ticket_type:hover {
	border-color: #f59e0b !important;
	background: #fffbf2 !important;
	box-shadow: 0 4px 14px rgba(245, 158, 11, .18);
}

.ticket-data, .ticket-info { color: #241b3a; }
.tkt-pric { color: #6d28d9 !important; font-weight: 800 !important; }

/* Date & time strip */
.date-time-area,
.mpwem_time_area,
.date_time_location_short {
	color: #6b6480;
}

.date-time-area i,
.mpwem_time_area i,
.date_time_location_short i {
	color: #f59e0b !important;
}

/* Form controls */
.formControl,
.mpwem_registration_area input[type="number"],
.mpwem_registration_area input[type="text"],
.mpwem_registration_area input[type="email"],
.mpwem_registration_area select,
.mp_form_item input,
.mp_form_item select,
.mp_form_item textarea {
	border: 1.5px solid #e8e4f5 !important;
	border-radius: 12px !important;
	background: #fff !important;
	transition: border-color .15s ease, box-shadow .15s ease !important;
}

.formControl:focus,
.mpwem_registration_area input:focus,
.mpwem_registration_area select:focus,
.mp_form_item input:focus,
.mp_form_item textarea:focus {
	outline: none !important;
	border-color: #7c3aed !important;
	box-shadow: 0 0 0 4px rgba(124, 58, 237, .14) !important;
}

/* Sidebar */
.mep-default-sidebar,
.df-sidebar-part,
.mpwem_sidebar_content {
	background: #fff;
	border: 1px solid #ece7f8;
	border-radius: 18px;
	box-shadow: 0 4px 18px rgba(30, 27, 75, .07);
}

.mep-default-sidebar-tags a {
	display: inline-block;
	background: #f3f0fa !important;
	color: #5b21b6 !important;
	border: 1px solid #e8e4f5 !important;
	border-radius: 999px !important;
	padding: 5px 14px !important;
	margin: 3px 4px 3px 0;
	font-size: 13px;
	text-decoration: none !important;
	transition: all .15s ease;
}

.mep-default-sidebar-tags a:hover {
	background: #6d28d9 !important;
	color: #fff !important;
	border-color: #6d28d9 !important;
}

/* Extra services */
.mpwem_ex_service {
	background: #faf8ff !important;
	border-radius: 14px !important;
	border: 1px dashed #d9ccf5 !important;
}

/* =========================================================
   6. TABS, TIMELINE, RELATED, PAGINATION
   ========================================================= */
.mpTabs > li.active,
.mpTabs > li:hover {
	color: #6d28d9 !important;
	border-color: #6d28d9 !important;
}

.timeline,
.mpwem_timeline_area,
.mep_event_timeline_list {
	border-radius: 16px;
}

.mpwem_related_area .mep_event_grid_item {
	border-radius: 16px !important;
}

.pagination_area button[class*="defaultButton_xs"] {
	border-radius: 999px !important;
	border-color: #d9ccf5 !important;
	color: #5b21b6 !important;
}

.pagination_area button[class*="defaultButton_xs"].active_pagination {
	background: #6d28d9 !important;
	color: #fff !important;
	border-color: #6d28d9 !important;
}

/* Expired / sold badges */
.mpwem-total-sold-badge { background: #f59e0b !important; color: #1e1b4b !important; border-radius: 999px !important; }
.mpwem-expired-card { border-radius: 16px !important; }

/* =========================================================
   7. RESPONSIVE POLISH
   ========================================================= */
@media (max-width: 640px) {
	.mep_list_event_details { padding: 14px 16px !important; }
	.mpwem_registration_area, .mpwem_booking_panel { border-radius: 16px !important; }
	.mep_event_list_item, .mep_event_grid_item { border-radius: 14px !important; }
}
