/* UBevents246 — Night Culture theming for WP Event Manager frontend.
 * WP Event Manager's own frontend.css is almost entirely driven by 6 CSS custom
 * properties (--wpem-primary-color/--wpem-dark-color/--wpem-gray-color/
 * --wpem-white-color/--wpem-gray-border-color/--wpem-gray-bg-color), confirmed by
 * direct inspection of the plugin source (382 var() usages vs ~20 hardcoded colors,
 * those mostly semantic alert/social-brand colors left alone on purpose). Overriding
 * the root vars re-themes the vast majority of the plugin's own UI correctly; the
 * rules below add the site's typography, spacing/radius language, and cover the
 * handful of vendor widgets (chosen.js dropdowns) that are NOT var-driven.
 * Enqueued only on the events submission/dashboard pages and event archive/single
 * templates — never loaded site-wide.
 */

:root {
  --wpem-primary-color: #F5C518;
  --wpem-dark-color: #FFFFFF;
  --wpem-gray-color: #9A9EBE;
  --wpem-white-color: #161832;
  --wpem-gray-border-color: #2A2D52;
  --wpem-gray-bg-color: #0D0E1F;
}

/* ---------- Page shell ---------- */
.ubevents-wpem-page #content {
  background: #0A0A0A;
  padding-top: 32px;
  padding-bottom: 64px;
}
.ubevents-wpem-page .entry-header {
  max-width: 1140px;
  margin: 0 auto 24px;
  padding: 0 20px;
}
.ubevents-wpem-page .entry-title {
  font-family: 'Archivo Black', sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: #FFFFFF;
  font-size: clamp(28px, 4vw, 40px);
}
.ubevents-wpem-page .entry-content {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 20px;
}

/* ---------- Form / dashboard "card" ---------- */
.ubevents-wpem-page .wpem-form-wrapper,
.ubevents-wpem-page .wpem-main-vmenu-dashboard-wrapper {
  background: #11132A;
  border: 1px solid #2A2D52;
  border-radius: 12px;
  padding: 32px;
  box-shadow: none;
}
@media (max-width: 600px) {
  .ubevents-wpem-page .wpem-form-wrapper,
  .ubevents-wpem-page .wpem-main-vmenu-dashboard-wrapper {
    padding: 20px;
    border-radius: 6px;
  }
}

.ubevents-wpem-page .wpem-form-wrapper .wpem-form-title,
.ubevents-wpem-page .wpem-heading-text,
.ubevents-wpem-page .wpem-dashboard-main-title {
  font-family: 'Archivo Black', sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: #F5C518;
  font-size: 18px;
  padding-bottom: 12px;
  margin-bottom: 20px;
  border-bottom: 1px solid #2A2D52;
}

.ubevents-wpem-page .wpem-main,
.ubevents-wpem-page .wpem-form-wrapper,
.ubevents-wpem-page .wpem-main-vmenu-dashboard-wrapper,
.ubevents-wpem-page .wpem-form-wrapper label,
.ubevents-wpem-page .wpem-form-wrapper .wpem-form-label-text {
  font-family: 'Poppins', sans-serif;
}
.ubevents-wpem-page .wpem-form-wrapper label,
.ubevents-wpem-page .wpem-form-wrapper .wpem-form-label-text {
  font-weight: 500;
  color: #FFFFFF;
}
.ubevents-wpem-page .wpem-form-wrapper .wpem-form-group small.description {
  color: #9A9EBE;
}

/* ---------- Buttons ---------- */
.ubevents-wpem-page .wpem-theme-button,
.ubevents-wpem-page a.wpem-theme-button,
.ubevents-wpem-page button.wpem-theme-button,
.ubevents-wpem-page input.wpem-theme-button {
  border-radius: 6px;
  letter-spacing: 0.04em;
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
}
.ubevents-wpem-page .wpem-theme-button:hover,
.ubevents-wpem-page a.wpem-theme-button:hover,
.ubevents-wpem-page button.wpem-theme-button:hover,
.ubevents-wpem-page input.wpem-theme-button:hover {
  background: #D9A812;
}
.ubevents-wpem-page .wpem-theme-border-button,
.ubevents-wpem-page a.wpem-theme-border-button,
.ubevents-wpem-page button.wpem-theme-border-button,
.ubevents-wpem-page input.wpem-theme-border-button {
  background-color: transparent;
  color: #F5C518;
  border-radius: 6px;
}
.ubevents-wpem-page .wpem-theme-border-button:hover,
.ubevents-wpem-page a.wpem-theme-border-button:hover,
.ubevents-wpem-page button.wpem-theme-border-button:hover,
.ubevents-wpem-page input.wpem-theme-border-button:hover {
  background-color: #F5C518;
  color: #161832;
}
.ubevents-wpem-page .wpem-theme-text-button {
  font-weight: 600;
}
.ubevents-wpem-page .wpem-theme-text-button:hover {
  color: #FFFFFF !important;
}

/* Dashboard "+ Add Event" / header action buttons */
.ubevents-wpem-page .wpem-dashboard-header-btn,
.ubevents-wpem-page .wpem-dashboard-i-block-btn {
  border-radius: 6px;
}

/* ---------- Inputs ---------- */
.ubevents-wpem-page .wpem-form-wrapper .wpem-form-group input,
.ubevents-wpem-page .wpem-form-wrapper .wpem-form-group select,
.ubevents-wpem-page .wpem-form-wrapper .wpem-form-group textarea {
  border-radius: 4px;
  font-family: 'Poppins', sans-serif;
}
.ubevents-wpem-page .wpem-form-wrapper .wpem-form-group input:focus,
.ubevents-wpem-page .wpem-form-wrapper .wpem-form-group select:focus,
.ubevents-wpem-page .wpem-form-wrapper .wpem-form-group textarea:focus {
  border-color: #F5C518;
}
.ubevents-wpem-page .wpem-form-wrapper .wpem-form-group input::placeholder,
.ubevents-wpem-page .wpem-form-wrapper .wpem-form-group textarea::placeholder {
  color: #6C7093;
}

/* ---------- Tabs (image/gallery tabs, ticket-type repeater tabs) ---------- */
.ubevents-wpem-page .wpem-tabs-wrapper {
  border-radius: 6px;
  overflow: hidden;
}
.ubevents-wpem-page .wpem-tab-link {
  font-family: 'Poppins', sans-serif;
  text-transform: uppercase;
  font-size: 13px;
  letter-spacing: 0.03em;
}
.ubevents-wpem-page .wpem-tabs-wrap .wpem-tab-link.active {
  box-shadow: inset 0 -2px 0 #F5C518;
}

/* Ticket-type repeater rows (our custom "Ticket Types" field) */
.ubevents-wpem-page .wpem-add-tickets-tab-wrapper {
  background: #0D0E1F;
  border: 1px solid #2A2D52;
  border-radius: 6px;
  margin-bottom: 16px;
  overflow: hidden;
}
.ubevents-wpem-page .wpem-ticket-counter {
  background: #F5C518;
  color: #161832;
  font-weight: 700;
  border-radius: 50%;
}
.ubevents-wpem-page .event_ticket_add_link {
  display: inline-block;
  margin-top: 8px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-size: 13px;
}

/* ---------- Alerts (e.g. "you need to be signed in") ---------- */
.ubevents-wpem-page .wpem-alert {
  background: #161832;
  border-width: 1px;
  border-left-width: 3px;
  border-radius: 6px;
  font-family: 'Poppins', sans-serif;
}
.ubevents-wpem-page .wpem-alert-info {
  color: #E8EAF7;
  border-color: #2E63C7;
  border-left-color: #2E63C7;
}
.ubevents-wpem-page .wpem-alert-danger {
  color: #FFD8DA;
  border-color: #B23A44;
  border-left-color: #B23A44;
}
.ubevents-wpem-page .wpem-alert-success {
  color: #D6F5DD;
  border-color: #2E8B4F;
  border-left-color: #2E8B4F;
}
.ubevents-wpem-page .wpem-alert a {
  background: #F5C518;
  color: #161832 !important;
  font-weight: 600;
}
.ubevents-wpem-page .wpem-alert a:hover {
  background: #D9A812;
}

/* ---------- Modals (Add Organizer / Add Venue popups) ---------- */
.ubevents-wpem-page .wpem-modal-content-wrapper {
  background: #11132A;
  border: 1px solid #2A2D52;
  border-radius: 12px;
}
.ubevents-wpem-page .wpem-modal-header {
  border-bottom: 1px solid #2A2D52;
}
.ubevents-wpem-page .wpem-modal-header-title-text {
  font-family: 'Archivo Black', sans-serif;
  text-transform: uppercase;
  color: #F5C518;
}

/* ---------- Dashboard vertical nav ---------- */
.ubevents-wpem-page .wpem-main-vmenu-dashboard-nav {
  background: #0D0E1F;
  border-radius: 12px;
  overflow: hidden;
}
.ubevents-wpem-page .wpem-main-vmenu-dashboard-link {
  font-family: 'Poppins', sans-serif;
  font-weight: 500;
  color: #C6C9E0;
  border-left: 3px solid transparent;
}
.ubevents-wpem-page .wpem-main-vmenu-dashboard-li.active > .wpem-main-vmenu-dashboard-link,
.ubevents-wpem-page .wpem-main-vmenu-dashboard-link:hover {
  color: #F5C518;
  background: rgba(245, 197, 24, 0.08);
  border-left-color: #F5C518;
}

/* Dashboard event list cards */
.ubevents-wpem-page .wpem-dashboard-event-inner-list-wrap {
  background: #0D0E1F;
  border: 1px solid #2A2D52;
  border-radius: 8px;
}
.ubevents-wpem-page .wpem-dashboard-event-name a {
  color: #FFFFFF;
  font-weight: 600;
}
.ubevents-wpem-page .wpem-dashboard-event-name a:hover {
  color: #F5C518;
}

/* ---------- chosen.js multiselect (Organizer / Venue picker) — not CSS-var driven ---------- */
.ubevents-wpem-page .chosen-container-multi .chosen-choices,
.ubevents-wpem-page .chosen-container-single .chosen-single {
  background: #0D0E1F;
  border: 1px solid #2A2D52;
  border-radius: 4px;
  box-shadow: none;
  color: #FFFFFF;
}
.ubevents-wpem-page .chosen-container-multi .chosen-choices li.search-choice {
  background: #232640;
  border: 1px solid #2A2D52;
  color: #FFFFFF;
  box-shadow: none;
}
.ubevents-wpem-page .chosen-container .chosen-results li.highlighted {
  background: #F5C518;
  color: #161832;
}
.ubevents-wpem-page .chosen-container .chosen-drop {
  background: #161832;
  border-color: #2A2D52;
}
.ubevents-wpem-page .chosen-container .chosen-results li {
  color: #E8EAF7;
}
.ubevents-wpem-page .chosen-container .chosen-search input[type="text"] {
  background: #0D0E1F;
  border-color: #2A2D52;
  color: #FFFFFF;
}

/* ---------- Datepicker accent (jQuery UI + lightpick) — light chrome kept, accent only ---------- */
.ubevents-wpem-page .ui-datepicker .ui-datepicker-header,
.ubevents-wpem-page .lightpick__month-header {
  background: #161832;
  color: #FFFFFF;
}
.ubevents-wpem-page .ui-state-active,
.ubevents-wpem-page .ui-datepicker-today a,
.ubevents-wpem-page .lightpick__day.is-selected {
  background: #F5C518 !important;
  color: #161832 !important;
  border-color: #F5C518 !important;
}

/* ---------- Single event page: title, sidebar card, "cards" for organizer/venue/additional info ---------- */
.ubevents-wpem-page .wpem-single-event-wrapper .wpem-event-title h3,
.ubevents-wpem-page .wpem-single-event-wrapper .wpem-organizer-name,
.ubevents-wpem-page .wpem-additional-info-block h3,
.ubevents-wpem-page .wpem_related_events h3 {
  font-family: 'Archivo Black', sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
.ubevents-wpem-page .wpem-single-event-wrapper .wpem-event-title h3 {
  font-size: clamp(24px, 3vw, 34px);
}
.ubevents-wpem-page .wpem-single-event-body-sidebar,
.ubevents-wpem-page .wpem-additional-info-block-wrapper,
.ubevents-wpem-page .wpem-organizer-profile-wrapper,
.ubevents-wpem-page .ubevents-ticket-widget {
  background: #11132A;
  border: 1px solid #2A2D52;
  border-radius: 12px;
  padding: 24px;
}
.ubevents-wpem-page .wpem-additional-info-block-wrapper,
.ubevents-wpem-page .wpem-organizer-profile-wrapper {
  margin-top: 24px;
}
@media (max-width: 600px) {
  .ubevents-wpem-page .wpem-single-event-body-sidebar,
  .ubevents-wpem-page .wpem-additional-info-block-wrapper,
  .ubevents-wpem-page .wpem-organizer-profile-wrapper,
  .ubevents-wpem-page .ubevents-ticket-widget {
    padding: 16px;
    border-radius: 8px;
  }
}
.ubevents-wpem-page .wpem-event-ticket-price {
  color: #F5C518;
  font-weight: 700;
}
.ubevents-wpem-page .wpem-single-event-slider-wrapper,
.ubevents-wpem-page .wpem-event-single-image-wrapper {
  border-radius: 12px;
  overflow: hidden;
}
.ubevents-wpem-page .wpem-listing-accordion,
.ubevents-wpem-page .wpem-event-organizer-info-title {
  border-bottom: 1px solid #2A2D52;
  padding-bottom: 12px;
  margin-bottom: 16px;
}

/* ---------- Ticket widget (real ticket tiers + Get Tickets CTA) ---------- */
.ubevents-ticket-widget {
  margin-bottom: 20px;
}
.ubevents-ticket-widget h3 {
  color: #F5C518;
  font-size: 16px;
  margin-bottom: 14px;
}
.ubevents-ticket-tier-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 18px;
}
.ubevents-ticket-tier-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #2A2D52;
  font-family: 'Poppins', sans-serif;
}
.ubevents-ticket-tier-row:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.ubevents-ticket-tier-name {
  color: #FFFFFF;
  font-weight: 600;
  flex: 1;
}
.ubevents-ticket-tier-price {
  color: #F5C518;
  font-weight: 700;
  white-space: nowrap;
}
.ubevents-ticket-tier-stock {
  color: #9A9EBE;
  font-size: 12px;
  white-space: nowrap;
}
.ubevents-ticket-tier-stock.ubevents-sold-out {
  color: #FF9AA2;
}
.ubevents-ticket-cta-wrap .ubevents-get-tickets-btn {
  display: block;
  text-align: center;
  width: 100%;
}

/* ---------- Category / event-type archive hero (real term name + live count + real description) ---------- */
.ubevents-archive-hero {
  max-width: 1140px;
  margin: 32px auto 32px;
  padding: 0 20px;
}
.ubevents-archive-hero-back {
  display: inline-block;
  color: #9A9EBE;
  font-family: 'Poppins', sans-serif;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  margin-bottom: 16px;
}
.ubevents-archive-hero-back:hover {
  color: #F5C518;
}
.ubevents-archive-hero-eyebrow {
  display: block;
  color: #F5C518;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-size: 13px;
  font-family: 'Poppins', sans-serif;
  margin-bottom: 8px;
}
.ubevents-archive-hero-title {
  font-family: 'Archivo Black', sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: #FFFFFF;
  font-size: clamp(28px, 4vw, 44px);
  margin: 0 0 12px;
}
.ubevents-archive-hero-desc {
  color: #C6C9E0;
  font-family: 'Poppins', sans-serif;
  font-size: 16px;
  line-height: 1.6;
  max-width: 720px;
  margin-bottom: 12px;
}
.ubevents-archive-hero-count {
  display: inline-block;
  color: #9A9EBE;
  font-family: 'Poppins', sans-serif;
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}
