/* ========================================
   ✅ LOCKED BASE: Neon Theme by Norgbass (Cleaned Final CSS)
   ======================================== */

/* === TOP & BOTTOM FRAME LINES === */
.site-header::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 1px;
  width: 100%;
  background: linear-gradient(90deg, #00FFFF, rgba(0,0,0,0), #39FF14, rgba(0,0,0,0), #00FFFF);
  background-size: 300% 100%;
  animation: scan-horizontal 6s ease-in-out infinite alternate, neon-glow 4s ease-in-out infinite;
  box-shadow: 0 0 4px #00FFFF, 0 0 8px #39FF14;
  z-index: -1;
}

.site-header::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  background: linear-gradient(270deg, #00FFFF, rgba(0,0,0,0), #39FF14, rgba(0,0,0,0), #00FFFF);
  background-size: 300% 100%;
  animation: scan-horizontal 6s ease-in-out infinite alternate-reverse, neon-glow 4s ease-in-out infinite;
  box-shadow: 0 0 4px #00FFFF, 0 0 8px #39FF14;
  z-index: -1;
}

/* === VERTICAL SIDE LINES === */
.neon-line {
  position: absolute;
  width: 1px;
  height: 100%;
  top: 0;
  background-size: 100% 300%;
  box-shadow: 0 0 4px #00FFFF, 0 0 8px #39FF14;
  z-index: -1;
}

.neon-left {
  left: 0;
  background: linear-gradient(0deg, #00FFFF, rgba(0,0,0,0), #39FF14, rgba(0,0,0,0), #00FFFF);
  animation: scan-vertical 6s ease-in-out infinite alternate, neon-glow 4s ease-in-out infinite;
}

.neon-right {
  right: 0;
  background: linear-gradient(180deg, #00FFFF, rgba(0,0,0,0), #39FF14, rgba(0,0,0,0), #00FFFF);
  animation: scan-vertical 6s ease-in-out infinite alternate-reverse, neon-glow 4s ease-in-out infinite;
}

/* === KEYFRAMES === */
@keyframes scan-horizontal {
  0% { background-position: 0% 50%; }
  100% { background-position: 100% 50%; }
}

@keyframes scan-vertical {
  0% { background-position: 50% 0%; }
  100% { background-position: 50% 100%; }
}

@keyframes neon-glow {
  0%, 100% { box-shadow: 0 0 6px #00FFFF, 0 0 10px #39FF14; }
  50% { box-shadow: 0 0 12px #00FFFF, 0 0 18px #39FF14; }
}

@keyframes pulseGlowBtn {
  0%, 100% {
    filter: drop-shadow(0 0 1px #00FFFF) drop-shadow(0 0 2px #00FFFF);
  }
  50% {
    filter: drop-shadow(0 0 3px #00FFFF) drop-shadow(0 0 5px #00FFFF);
  }
}

/* ========================================
   🔘 GLOBAL BUTTON STYLES (Unified + Fixed Sizes)
   ======================================== */
button,
.button,
.wp-block-button__link,
input[type="submit"],
input[type="button"],
.kb-forms-submit,
.kt-blocks-info-box-learnmore,
a.kt-blocks-info-box-learnmore,
.wp-block-kadence-advancedbtn a.kt-button,
#tutor-pn-enable,
#tutor-pn-dont-ask,
#kt-scroll-up,
.site-header .header-html a,
.site-header .header-html-inner a,
.site-header .header-button {
  background-color: #000000 !important;
  color: #00FFFF !important;
  border: 1px solid #00FFFF !important;
  border-radius: 4px;
  font-weight: 600;
  font-size: 14px;
  line-height: 1.2;
  min-height: 40px;
  min-width: 120px;
  padding: 10px 20px;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.3s ease, box-shadow 0.3s ease, color 0.3s ease;
  box-sizing: border-box;
  filter: drop-shadow(0 0 1px #00FFFF) drop-shadow(0 0 2px #00FFFF);
  animation: pulseGlowBtn 2.5s ease-in-out infinite;
}

button:hover,
.button:hover,
.wp-block-button__link:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
.kb-forms-submit:hover,
.kt-blocks-info-box-learnmore:hover,
a.kt-blocks-info-box-learnmore:hover,
#tutor-pn-enable:hover,
#tutor-pn-dont-ask:hover,
#kt-scroll-up:hover,
.site-header .header-html a:hover,
.site-header .header-html-inner a:hover,
.site-header .header-button:hover {
  background-color: #00FFFF !important;
  color: #000000 !important;
  border-color: #00FFFF !important;
  box-shadow: 0 0 6px #00FFFF, 0 0 12px #00FFFF;
}

/* Additional component styling (header, social icons, tutor LMS, plan boxes, etc.)
   ...You can paste or merge your remaining sections here, untouched if not conflicting. */


/* ========================================
   SVG Icons Fix (Including Home Icon)
   ======================================== */
svg,
svg path,
svg polyline,
svg use {
  stroke: #00FFFF !important;
  fill: #00FFFF !important;
  color: #00FFFF !important;
  transition: all 0.3s ease;
  filter: drop-shadow(0 0 1px #00FFFF) drop-shadow(0 0 2px #00FFFF);
}

svg:hover,
svg path:hover,
svg polyline:hover,
svg use:hover {
  transform: scale(1.05);
  filter: drop-shadow(0 0 4px #00FFFF) drop-shadow(0 0 6px #00FFFF);
}
/* Fix: Initial glow for house icon in menu */
#menu-item-309 > a svg {
  filter: drop-shadow(0 0 1px #00FFFF) drop-shadow(0 0 2px #00FFFF);
  color: #00FFFF !important;
}

/* ========================================
   🎯 FINAL Social Icon Styling - Clean & Minimal Glow
   ======================================== */
.header-social-item .kadence-svg-icon {
  stroke: #00FFFF !important;
  fill: #00FFFF !important;
  color: #00FFFF !important;
  filter: none !important; /* No glow initially */
  transition: filter 0.2s ease, transform 0.2s ease;
}

.header-social-item .kadence-svg-icon:hover {
  filter: drop-shadow(0 0 0.5px #00FFFF) drop-shadow(0 0 1px #00FFFF) !important;
  transform: scale(1.05);
}

/* ✅ PATCH: Lock size & cleanup for header social icons */
.header-social-item .kadence-svg-icon,
.header-social-item svg,
.header-social-item svg path {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  max-width: 18px !important;
  max-height: 18px !important;
  stroke: #00FFFF !important;
  fill: #00FFFF !important;
  color: #00FFFF !important;
  filter: none !important;
  box-shadow: none !important;
  animation: none !important;
  transform: scale(1) !important;
  transition: filter 0.2s ease, transform 0.2s ease !important;
}

/* 🔹 Hover effect (clean pulse) */
.header-social-item svg:hover,
.header-social-item svg path:hover,
.header-social-item .kadence-svg-icon:hover {
  filter: drop-shadow(0 0 1px #00FFFF) drop-shadow(0 0 1.5px #00FFFF) !important;
  transform: scale(1.05);
}

/* ✅ LOCK SIZE & PREVENT GLOW: Footer Social Icons */
.footer-social-item svg,
.footer-social-item svg path {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  max-width: 18px !important;
  max-height: 18px !important;
  stroke: #00FFFF !important;
  fill: #00FFFF !important;
  color: #00FFFF !important;
  filter: none !important;
  box-shadow: none !important;
  animation: none !important;
  transition: none !important;
  transform: scale(1) !important;
}

/* ❌ Kill Hover Scaling */
.footer-social-item:hover svg,
.footer-social-item:hover svg path {
  transform: none !important;
  box-shadow: none !important;
  filter: none !important;
}

/* /* /* ========================================
   🛒 FINAL Cart Icon Cleanup (No Glow, Locked Size, Clear Alignment)
   ======================================== */
.header-cart-button {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 0 !important;
  margin: 0 !important;
}

/* 🔐 Lock Cart Icon - Exact Size & No Glow */
.header-cart-button .kadence-shopping-cart-svg,
.header-cart-button .kadence-shopping-cart-svg svg,
.header-cart-button .kadence-shopping-cart-svg use,
.header-cart-button .kadence-shopping-cart-svg path {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  max-width: 18px !important;
  max-height: 18px !important;
  stroke: #00FFFF !important;
  fill: none !important;
  color: #00FFFF !important;
  filter: none !important;
  box-shadow: none !important;
  animation: none !important;
  transform: scale(1) !important;
  transition: none !important;
  line-height: 1 !important;
  display: inline-block !important;
  vertical-align: middle !important;
}

/* 🟢 Glowing number - aligned and glowing */
.header-cart-total {
  background-color: #000000 !important;
  border: 1px solid #00FFFF !important;
  border-radius: 20px;
  padding: 2px 8px;
  font-size: 13px;
  font-weight: 600;
  display: inline-block;
  line-height: 1;
  margin-left: 4px;
  color: #00FFFF !important;
  filter: drop-shadow(0 0 1px #00FFFF) drop-shadow(0 0 2px #00FFFF) !important;
}
.tutor-wrap, .tutor-container, .tutor-dashboard, .tutor-course-single-content-wrap {
  background-color: #0A0A0A !important;
  color: #E0FFFF !important;
}
.tutor-card, .tutor-course-card, .tutor-dashboard-card, .tutor-course-loop, .tutor-course-single-sidebar {
  background-color: #121212 !important;
  color: #E0FFFF !important;
  border: 1px dotted #00FFFF;
  box-shadow: 0 0 10px 5px rgba(0, 255, 255, 0.4);
}
/* 🔷 Make the full course stats table neon-themed */
.tutor-table.table-popular-courses {
  background-color: #0A0A0A !important;
  color: #E0FFFF !important;
  border: 1px solid #00FFFF;
  box-shadow: 0 0 10px 5px rgba(0, 255, 255, 0.4);
  border-collapse: collapse;
  width: 100%;
}

/* 🔷 Make headers glow slightly */
.tutor-table.table-popular-courses thead th {
  background-color: #121212 !important;
  color: #00FFFF !important;
  text-shadow: 0 0 4px rgba(0, 255, 255, 0.6);
  border: 1px dotted #00FFFF;
  padding: 10px;
}

/* 🔷 Style individual table rows and cells */
.tutor-table.table-popular-courses tbody tr {
  background-color: #121212 !important;
  border-top: 1px solid #00FFFF;
}

.tutor-table.table-popular-courses tbody td {
  color: #E0FFFF;
  border: 1px dotted #00FFFF;
  padding: 10px;
}

/* 🔷 Style links inside table */
.tutor-table.table-popular-courses a {
  color: #00FFFF;
  text-decoration: none;
  font-weight: bold;
}

.tutor-table.table-popular-courses a:hover {
  color: #66FFFF;
  text-shadow: 0 0 6px rgba(0, 255, 255, 0.7);
}
/* 🌌 Dark Neon Wrap */
.tutor-dashboard-content-inner {
  background-color: #0A0A0A !important;
  color: #E0FFFF !important;
  padding: 20px;
  border: 1px dotted #00FFFF;
  box-shadow: 0 0 15px 5px rgba(0, 255, 255, 0.3);
  border-radius: 12px;
}

/* 🌌 Table Style */
.tutor-table.table-popular-courses {
  background: none !important;
  color: #E0FFFF !important;
  border-collapse: collapse;
  width: 100%;
  border: none;
  box-shadow: none;
  font-size: 15px;
}

/* 🌌 Header Row */
.thead th,
.tutor-table thead th {
  background-color: #121212 !important;
  color: #00FFFF !important;
  text-shadow: 0 0 4px rgba(0, 255, 255, 0.5);
  padding: 12px;
  text-align: left;
  border-bottom: 1px solid #00FFFF;
}

/* 🌌 Row Style */
.tutor-table tbody tr {
  background-color: transparent !important;
  border-bottom: 1px dotted #00FFFF;
  transition: background-color 0.3s ease;
}

.tutor-table tbody tr:hover {
  background-color: #161616 !important;
}

/* 🌌 Cells (no box look) */
.tutor-table td {
  padding: 10px 12px;
  color: #E0FFFF;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* 🌌 Links */
.tutor-table a {
  color: #00FFFF;
  font-weight: 600;
  text-decoration: none;
}

.tutor-table a:hover {
  color: #66FFFF;
  text-shadow: 0 0 6px rgba(0, 255, 255, 0.7);
}

/* 🌌 RATING FIX: kill internal boxy layout */
.tutor-ratings,
.tutor-ratings-stars {
  display: inline-flex;
  background: none !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
}

/* 🌌 Rating stars clean + glowing */
.tutor-ratings-stars .tutor-icon-star-line {
  color: #00FFFF !important;
  font-size: 15px;
  margin-right: 2px;
  text-shadow: 0 0 4px rgba(0, 255, 255, 0.5);
}
/* 🌌 WRAPPER: Main calendar background and glow */
.tutor-calendar-wrapper {
  background-color: #0A0A0A !important;
  padding: 20px;
  border: 1px dotted #00FFFF;
  box-shadow: 0 0 15px 5px rgba(0, 255, 255, 0.3);
  border-radius: 12px;
  color: #E0FFFF !important;
}

/* 🌌 Month & Year Dropdown Container */
.tutor-calendar-top {
  background-color: #121212 !important;
  border-bottom: 1px solid #00FFFF;
  padding: 12px;
  color: #E0FFFF;
  display: flex;
  justify-content: space-between;
}

/* 🌌 Dropdown Labels */
.tutor-calendar-dropdown-label {
  background-color: #181818 !important;
  color: #00FFFF !important;
  border: 1px dotted #00FFFF;
  padding: 6px 12px;
  border-radius: 6px;
  cursor: pointer;
  text-shadow: 0 0 6px rgba(0, 255, 255, 0.5);
}

/* 🌌 Dropdown List */
.tutor-calendar-dropdown-list,
.tutor-calendar-dropdown-list-year {
  background-color: #121212 !important;
  color: #E0FFFF !important;
  border: 1px solid #00FFFF;
  border-radius: 6px;
  box-shadow: 0 0 10px rgba(0, 255, 255, 0.3);
}

.tutor-calendar-dropdown-list li,
.tutor-calendar-dropdown-list-year li {
  padding: 8px 12px;
  cursor: pointer;
}

.tutor-calendar-dropdown-list li:hover,
.tutor-calendar-dropdown-list-year li:hover,
.tutor-calendar-dropdown-current-month,
.tutor-calendar-dropdown-current-year {
  background-color: #181818 !important;
  color: #00FFFF !important;
}

/* 🌌 Day of Week Headings */
.tutor-calendar-heading div {
  color: #00FFFF !important;
  font-weight: 600;
  background-color: #121212;
  padding: 10px 0;
  border-bottom: 1px dotted #00FFFF;
  text-align: center;
}

/* 🌌 Dates Grid */
.tutor-calendar-date {
  background-color: #121212 !important;
  border: 1px dotted #00FFFF;
  margin: 3px;
  padding: 10px;
  color: #E0FFFF !important;
  text-align: center;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.3s ease;
}

.tutor-calendar-date:hover {
  background-color: #1A1A1A !important;
  box-shadow: 0 0 8px rgba(0, 255, 255, 0.3);
}

/* 🌌 Highlight today */
.tutor-calendar-date.today {
  background-color: #00FFFF !important;
  color: #0A0A0A !important;
  font-weight: bold;
  box-shadow: 0 0 10px rgba(0, 255, 255, 0.8);
}

/* 🌌 Remove space divs background */
.tutor-calendar-body .space {
  background: transparent !important;
  border: none !important;
}
/* 🌌 Empty State Wrapper */
.tutor-calendar-events-wrapper {
  background-color: #0A0A0A !important;
  border: 1px dotted #00FFFF;
  border-radius: 12px;
  padding: 20px;
  box-shadow: 0 0 15px 5px rgba(0, 255, 255, 0.2);
  margin-top: 20px;
}

/* 🌌 Inside Empty Message */
.tutor-empty-state {
  background-color: #121212 !important;
  border: 1px dotted #00FFFF;
  padding: 20px;
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(0, 255, 255, 0.2);
}

/* 🌌 Message Text */
.tutor-empty-state .tutor-fs-6,
.tutor-empty-state .tutor-color-secondary {
  color: #00FFFF !important;
  text-shadow: 0 0 4px rgba(0, 255, 255, 0.5);
  font-weight: 500;
  margin-top: 15px;
}

/* 🌌 Optional: Tint the placeholder image */
.tutor-empty-state img {
  filter: drop-shadow(0 0 5px rgba(0, 255, 255, 0.4));
  opacity: 0.8;
}
/* 🌌 WRAPPERS: Ensure all inner content is dark */
.tutor-dashboard-content,
.tutor-dashboard-setting-profile,
.tutor-dashboard-content-inner {
  background-color: #0A0A0A !important;
  color: #E0FFFF !important;
  border-radius: 10px;
  padding: 20px;
  box-shadow: 0 0 15px rgba(0, 255, 255, 0.2);
}

/* 🌌 Form group blocks */
.tutor-form-group,
.tutor-row,
.tutor-col-12,
.tutor-col-sm-6,
.tutor-col-md-12,
.tutor-col-lg-6 {
  background-color: transparent !important;
  color: #E0FFFF;
}

/* 🌌 Input fields */
.tutor-form-control,
.tutor-form-select,
.tutor-js-form-select,
.tutor-form-control:disabled {
  background-color: #121212 !important;
  color: #00FFFF !important;
  border: 1px dotted #00FFFF !important;
  border-radius: 6px;
  padding: 10px;
  box-shadow: none !important;
}

/* 🌌 Input placeholder */
.tutor-form-control::placeholder {
  color: rgba(0, 255, 255, 0.4) !important;
}

/* 🌌 Dropdown selected label */
.tutor-form-select-label {
  color: #00FFFF !important;
  background-color: #181818 !important;
  border: 1px dotted #00FFFF !important;
  padding: 8px 12px;
  border-radius: 5px;
  display: inline-block;
}

/* 🌌 Dropdown list */
.tutor-form-select-dropdown {
  background-color: #0A0A0A !important;
  border: 1px solid #00FFFF;
  box-shadow: 0 0 10px rgba(0, 255, 255, 0.2);
  border-radius: 5px;
}

.tutor-form-select-option {
  padding: 8px 12px;
  color: #E0FFFF;
  cursor: pointer;
}

.tutor-form-select-option:hover,
.tutor-form-select-option.is-active {
  background-color: #1A1A1A;
  color: #00FFFF;
}

/* 🌌 Section Labels */
.tutor-form-label {
  color: #00FFFF !important;
  font-weight: 500;
  text-shadow: 0 0 3px rgba(0, 255, 255, 0.3);
}

/* 🌌 Helper text / description */
.tutor-fs-7,
.tutor-color-secondary {
  color: rgba(0, 255, 255, 0.5) !important;
}

/* 🌌 Profile & Cover Image Editor */
#tutor_cover_area,
#tutor_profile_area {
  border: 1px dotted #00FFFF;
  background-size: cover !important;
  background-position: center !important;
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(0, 255, 255, 0.2);
}

.tutor_overlay,
.tutor_cover_uploader,
#tutor_pp_option {
  background-color: rgba(0, 255, 255, 0.05) !important;
  color: #00FFFF !important;
}

/* 🌌 Upload button */
.tutor-thumbnail-upload-button,
.tutor-profile-settings-save {
  background-color: #00FFFF !important;
  color: #0A0A0A !important;
  font-weight: bold;
  border-radius: 6px;
  padding: 10px 20px;
  box-shadow: 0 0 12px rgba(0, 255, 255, 0.5);
  transition: all 0.2s ease-in-out;
}

.tutor-thumbnail-upload-button:hover,
.tutor-profile-settings-save:hover {
  background-color: #66FFFF !important;
  box-shadow: 0 0 16px rgba(0, 255, 255, 0.8);
}

/* 🌌 Signature preview background */
.thumbnail-preview {
  background-color: #121212 !important;
  border: 1px dotted #00FFFF !important;
}
/* TINYMCE TOOLBAR + FRAME BORDER */
#wp-tutor_profile_bio-editor-container .mce-panel,
#wp-tutor_profile_bio-editor-container .mce-toolbar-grp,
#wp-tutor_profile_bio-editor-container .mce-statusbar {
  background-color: #121212 !important;
  border: 1px solid #00FFFF !important;
  color: #E0FFFF !important;
}

#wp-tutor_profile_bio-editor-container .mce-btn button {
  background: #181818 !important;
  color: #00FFFF !important;
  border: 1px solid transparent;
}

#wp-tutor_profile_bio-editor-container .mce-btn:hover button {
  background: #1E1E1E !important;
  border-color: #00FFFF !important;
  box-shadow: 0 0 4px rgba(0, 255, 255, 0.4);
}
.page-hero-section {
  position: relative;
  overflow: hidden;
  background: none !important; /* Remove any image or gradient */
}

.entry-hero-container-inner {
  position: relative;
  height: 100%;
  min-height: 200px; /* Ensure overlay has space to show */
}

/* Forced overlay background */
.hero-section-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #121212 !important; /* Force your dark color */
  opacity: 1 !important; /* Make it really dark */
  z-index: 1;
  pointer-events: none;
  background-image: none !important; /* Kill any background image */
}

/* Ensure content is above the overlay */
.hero-container,
.entry-header {
  position: relative;
  z-index: 2;
}
.entry-title {
  animation: subtleNeonPulse 3s ease-in-out infinite alternate;
  text-shadow:
    0 0 2px rgba(0, 255, 255, 0.4),
    0 0 6px rgba(0, 255, 255, 0.2);
}

@keyframes subtleNeonPulse {
  0% {
    text-shadow:
      0 0 2px rgba(0, 255, 255, 0.4),
      0 0 6px rgba(0, 255, 255, 0.2);
  }
  100% {
    text-shadow:
      0 0 4px rgba(0, 255, 255, 0.5),
      0 0 10px rgba(0, 255, 255, 0.3);
  }
}
.menu-item-home > a {
  font-size: 0 !important;
  line-height: 1 !important;
  padding: 0 10px !important;
  background: none !important;
  border: none !important;
  box-shadow: none !important;
}

/* White home icon with dark box */
.menu-item-home > a::before {
  content: "";
  display: inline-block;
  width: 25px;
  height: 25px;
  background-color: #121212; /* Match your site's main dark background */
  background-image: url('https://norgbass.com/wp-content/uploads/2025/04/white-home-icon.png'); /* Replace with your actual icon */
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-position: center;
  border-radius: 4px; /* Slight soft corners */
  box-shadow: 0 0 0 1px #00FFFF; /* Optional faint outline */
}
.wp-block-kadence-infobox {
  background-color: #121212 !important;
  border-radius: 10px;
  animation: glowPulseSoft 5s ease-in-out infinite;
  box-shadow:
    0 0 8px rgba(0, 255, 255, 0.15),
    0 0 12px rgba(0, 255, 255, 0.1);
  transition: box-shadow 0.4s ease-in-out;
}

@keyframes glowPulseSoft {
  0%, 100% {
    box-shadow:
      0 0 8px rgba(0, 255, 255, 0.15),
      0 0 12px rgba(0, 255, 255, 0.1);
  }
  50% {
    box-shadow:
      0 0 14px rgba(0, 255, 255, 0.3),
      0 0 20px rgba(0, 255, 255, 0.2);
  }
}
/* 🌟 Plan Box Glow with Padding & Smooth Animation */
.wp-block-yith-ywsbs-plan {
  background-color: #121212 !important;
  border-radius: 12px !important;
  padding: 30px !important;
  animation: yithGlowLoop 4s ease-in-out infinite;
  box-shadow:
    0 0 6px rgba(0, 255, 255, 0.2),
    0 0 12px rgba(0, 255, 255, 0.15);
  border: 1px solid #00FFFF !important;
  position: relative;
  overflow: hidden;
  transition: box-shadow 0.3s ease;
}

/* 🌟 Plan Box Hover Boost */
.wp-block-yith-ywsbs-plan:hover {
  animation: yithGlowLoopHover 3s ease-in-out infinite;
}

/* ✨ Plan Button Inside — Full Glowing Style */
.wp-block-yith-ywsbs-plan .wp-block-button__link {
  background-color: #000000 !important;
  color: #00FFFF !important;
  border: 1px solid #00FFFF !important;
  border-radius: 5px;
  padding: 10px 20px;
  font-weight: 600;
  font-size: 14px;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  animation: pulseGlowBtn 3s ease-in-out infinite;
  transition: all 0.3s ease;
  filter: drop-shadow(0 0 1px #00FFFF) drop-shadow(0 0 2px #00FFFF);
}

/* 🎯 Button Hover: Enhanced Neon Pulse */
.wp-block-yith-ywsbs-plan .wp-block-button__link:hover {
  background-color: #00FFFF !important;
  color: #000000 !important;
  box-shadow: 0 0 7px #00FFFF, 0 0 14px #00FFFF;
  transform: scale(1.05);
  border-color: #00FFFF !important;
}

/* 🔁 Box Glow Animation */
@keyframes yithGlowLoop {
  0%, 100% {
    box-shadow:
      0 0 6px rgba(0, 255, 255, 0.2),
      0 0 12px rgba(0, 255, 255, 0.15);
  }
  50% {
    box-shadow:
      0 0 12px rgba(0, 255, 255, 0.4),
      0 0 20px rgba(0, 255, 255, 0.3);
  }
}

@keyframes yithGlowLoopHover {
  0%, 100% {
    box-shadow:
      0 0 10px rgba(0, 255, 255, 0.3),
      0 0 18px rgba(0, 255, 255, 0.2);
  }
  50% {
    box-shadow:
      0 0 18px rgba(0, 255, 255, 0.5),
      0 0 28px rgba(0, 255, 255, 0.3);
  }
}

/* 💡 Shared Glowing Pulse for Buttons */
@keyframes pulseGlowBtn {
  0%, 100% {
    filter: drop-shadow(0 0 1px #00FFFF) drop-shadow(0 0 2px #00FFFF);
  }
  50% {
    filter: drop-shadow(0 0 3px #00FFFF) drop-shadow(0 0 5px #00FFFF);
  }
}
/* ✅ FIX: Reset Splide pagination button size and style */
.splide__pagination__page {
  all: unset;
  display: inline-block;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: #00FFFF;
  margin: 0 6px;
  cursor: pointer;
  transition: opacity 0.3s ease, transform 0.3s ease;
  opacity: 0.4;
}

.splide__pagination__page.is-active {
  opacity: 1;
  transform: scale(1.2);
  background-color: #00FFFF;
  box-shadow: 0 0 6px #00FFFF;
}
/* ✅ Reset & Clean Splide Arrows (no box, floating neon look) */
.splide__arrow {
  all: unset;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  cursor: pointer;
  background: transparent !important;
  color: #00FFFF;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  transition: transform 0.2s ease;
}

/* ⬅️ Position the left arrow */
.splide__arrow--prev {
  left: 10px;
}

/* ➡️ Position the right arrow */
.splide__arrow--next {
  right: 10px;
}
/* Bigger mobile menu button with neon styling */
.kadence-header .menu-toggle-open {
  font-size: 32px !important; /* size of the icon */
  color: #00ffff !important;  /* neon cyan */
  text-shadow: 0 0 8px rgba(0, 255, 255, 0.8);
  padding: 12px;
}

/* Optional: glowing effect on hover */
.kadence-header .menu-toggle-open:hover {
  text-shadow: 0 0 12px rgba(0, 255, 255, 1);
  transform: scale(1.1);
  transition: all 0.3s ease;
}
.kadence-header .menu-toggle-open {
  animation: pulseGlowBtn 2.5s infinite ease-in-out;
}

/* ✅ Clean arrow icon SVG inside */
.splide__arrow svg {
  stroke: none;
  fill: #00FFFF;
  width: 28px;
  height: 28px;
  transition: transform 0.2s ease, fill 0.3s ease;
}

/* ✨ Optional hover scale (clean, no glow) */
.splide__arrow:hover svg {
  transform: scale(1.1);
  fill: #66FFFF;
}
/* Force neon text color on mobile menu */
.mobile-menu-container.drawer-menu-container .menu li a {
  color: #00ffff !important; /* Neon cyan or your brand neon */
  text-shadow: 0 0 5px rgba(0, 255, 255, 0.6);
  font-size: 16px;
  font-weight: 500;
  padding: 12px 20px;
  display: block;
}
/* === Events Calendar - Top Bar Layout Fix === */

/* Align arrows (Previous / Next) */
.tribe-events-c-top-bar__nav-link-icon-svg {
  width: 12px !important;
  height: 18px !important;
  vertical-align: middle !important;
  margin: 0 auto !important;
  display: inline-block !important;
}

/* Normalize top nav button sizes */
.tribe-events-c-top-bar__nav-link {
  padding: 4px 10px !important;
  min-height: auto !important;
  font-size: 14px !important;
  line-height: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Fix "Today" button to match size */
.tribe-events-c-top-bar__today-button {
  font-size: 14px !important;
  padding: 4px 12px !important;
  min-height: auto !important;
  line-height: 1 !important;
}

/* Shrink and center Upcoming datepicker toggle */
.tribe-events-c-top-bar__datepicker-button {
  font-size: 14px !important;
  padding: 4px 10px !important;
  min-height: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Reduce size of the caret icon in datepicker */
.tribe-events-c-top-bar__datepicker-button-icon-svg {
  width: 12px !important;
  height: 7px !important;
  margin-left: 6px !important;
}

/* Fix spacing between buttons */
.tribe-events-c-top-bar__nav-list-item,
.tribe-events-c-top-bar__datepicker {
  margin-right: 10px !important;
}
/* === Norgbass Events Calendar: Top Bar Clean Alignment Fix === */

/* Align nav arrows (← and →) */
.tribe-events-c-top-bar__nav-link {
  padding: 4px 8px !important;
  font-size: 14px !important;
  line-height: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 30px !important;
}

.tribe-events-c-top-bar__nav-link-icon-svg {
  width: 10px !important;
  height: 16px !important;
  vertical-align: middle !important;
}

/* Standardize Today button size */
.tribe-events-c-top-bar__today-button {
  font-size: 14px !important;
  padding: 4px 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: auto !important;
  margin-left: 10px !important;
}

/* Fix Upcoming (datepicker) button */
.tribe-events-c-top-bar__datepicker-button {
  font-size: 14px !important;
  padding: 4px 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-left: 10px !important;
}

/* Caret icon in Upcoming */
.tribe-events-c-top-bar__datepicker-button-icon-svg {
  width: 10px !important;
  height: 7px !important;
  margin-left: 6px !important;
  vertical-align: middle !important;
}

/* Align entire Top Bar */
.tribe-events-c-top-bar {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center !important;
  gap: 12px;
}

/* Clean spacing between nav, today, datepicker */
.tribe-events-c-top-bar__nav,
.tribe-events-c-top-bar__today-button,
.tribe-events-c-top-bar__datepicker {
  margin: 0 !important;
}
/* === Align 'Upcoming' button with rest === */
.tribe-events-c-top-bar__datepicker-button {
  line-height: 1.2 !important;
  height: auto !important;
  min-height: 32px !important;
  padding: 4px 12px !important;
  gap: 6px;
}

.tribe-events-c-top-bar__datepicker-time {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.tribe-events-c-top-bar__datepicker-button-icon-svg {
  margin-top: 1px !important; /* fine-tune vertical centering */
}
/* === Norgbass: Disable Glow and Hover Effects in Events Bar === */

.tribe-events-c-events-bar,
.tribe-events-header__events-bar {
  box-shadow: none !important;
  background: none !important;
  border: none !important;
}

/* Remove glow/animation on buttons and links inside the bar */
.tribe-events-header__events-bar button,
.tribe-events-header__events-bar a,
.tribe-events-header__events-bar .tribe-common-c-btn {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  color: inherit !important;
  animation: none !important;
  transition: none !important;
  filter: none !important;
}

/* Disable all hover styles */
.tribe-events-header__events-bar button:hover,
.tribe-events-header__events-bar a:hover,
.tribe-events-header__events-bar .tribe-common-c-btn:hover {
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  color: inherit !important;
  text-decoration: none !important;
  filter: none !important;
}

/* Remove hover cursor change if needed */
.tribe-events-header__events-bar button,
.tribe-events-header__events-bar a {
  cursor: default !important;
}

/* Optional: Remove spacing/padding if needed for more minimal UI */
.tribe-events-c-events-bar__search-button,
.tribe-events-c-view-selector__button {
  padding: 0 !important;
  margin: 0 !important;
}

/* Optional: Dim SVG icons for more neutral look */
.tribe-events-header__events-bar svg {
  opacity: 0.5;
  filter: grayscale(100%);
}
/* === Norgbass: Disable glow and frame around SVG icons in Events Bar === */

/* Target all SVGs and paths inside the events bar */
.tribe-events-header__events-bar svg,
.tribe-events-header__events-bar svg path,
.tribe-events-header__events-bar svg g,
.tribe-events-header__events-bar svg polygon,
.tribe-events-header__events-bar svg rect {
  stroke: none !important;
  fill: currentColor !important;
  box-shadow: none !important;
  filter: none !important;
  animation: none !important;
  outline: none !important;
}

/* Optional: dim or standardize color */
.tribe-events-header__events-bar svg {
  color: #bbb !important; /* Or any other muted tone */
  opacity: 0.6 !important;
}

/* Prevent any hover effects on svg icons */
.tribe-events-header__events-bar svg:hover,
.tribe-events-header__events-bar svg path:hover {
  fill: currentColor !important;
  stroke: none !important;
  filter: none !important;
  opacity: 0.6 !important;
}
/* === Norgbass: Clean UI - Remove Glow/Frames from Top Bar (Events Calendar) === */

/* Reset the full top bar and remove background, borders, glow */
.tribe-events-c-top-bar,
.tribe-events-header__top-bar {
  background: none !important;
  border: none !important;
  box-shadow: none !important;
}

/* Style buttons and links: no background, no glow, no hover effect */
.tribe-events-c-top-bar button,
.tribe-events-c-top-bar a,
.tribe-events-c-top-bar .tribe-common-c-btn,
.tribe-events-c-top-bar .tribe-common-c-btn-border-small,
.tribe-events-c-top-bar .tribe-common-c-btn__clear {
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  color: inherit !important;
  animation: none !important;
  transition: none !important;
  filter: none !important;
  text-decoration: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Disable hover effects */
.tribe-events-c-top-bar button:hover,
.tribe-events-c-top-bar a:hover,
.tribe-events-c-top-bar .tribe-common-c-btn:hover {
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  color: inherit !important;
  filter: none !important;
}

/* Optional: Normalize cursor */
.tribe-events-c-top-bar button,
.tribe-events-c-top-bar a {
  cursor: default !important;
}

/* === SVG Icon Cleanup in Top Bar === */

.tribe-events-c-top-bar svg,
.tribe-events-c-top-bar svg path,
.tribe-events-c-top-bar svg g,
.tribe-events-c-top-bar svg polygon,
.tribe-events-c-top-bar svg rect {
  stroke: none !important;
  fill: currentColor !important;
  box-shadow: none !important;
  filter: none !important;
  animation: none !important;
  outline: none !important;
}

/* Optional: soften all icons */
.tribe-events-c-top-bar svg {
  color: #bbb !important; /* or adjust for site color */
  opacity: 0.6 !important;
}

/* Prevent hover effects on SVGs too */
.tribe-events-c-top-bar svg:hover,
.tribe-events-c-top-bar svg path:hover {
  fill: currentColor !important;
  stroke: none !important;
  filter: none !important;
  opacity: 0.6 !important;
}
/* === Norgbass: Button & Dropdown Styling === */
.bookly-js-next-step.bookly-btn {
  background-color: #121212 !important;
  color: #00FFFF !important;
  border: 1px solid #00FFFF !important;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 14px;
  padding: 12px 24px;
  border-radius: 6px;
  transition: all 0.3s ease;
  filter: drop-shadow(0 0 1px #00FFFF) drop-shadow(0 0 2px #00FFFF);
}
.bookly-js-next-step.bookly-btn:hover {
  background-color: #00FFFF !important;
  color: #121212 !important;
  box-shadow: 0 0 6px #00FFFF, 0 0 10px #00FFFF;
  transform: scale(1.03);
}

/* === Bookly Dropdown Fix === */
.bookly-js-select-time-from,
.bookly-js-select-time-to {
  padding-right: 2.5em !important;
  background-image: none !important;
  appearance: auto !important;
  height: 40px !important;
}
.bookly-form-group select {
  color: #ffffff !important;
  background-color: #121212 !important;
}
.bookly-form-group select option {
  color: #000000 !important;
  background-color: #00FFFF !important;
}

/* === Calendar Text Fixes === */
.bookly-calendar-middle-button-mark span,
.bookly-calendar-left-button-mark span,
.bookly-calendar-right-button-mark span,
.bookly-calendar-months-mark div span,
.bookly-calendar-years-mark span,
.bookly-calendar-dates-mark .bookly\:text-white,
.bookly-calendar-current-month-mark span {
  color: #000 !important;
}

/* === Layout for Calendar Grid === */
.bookly-calendar-years-mark {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 12px !important;
}
.bookly-calendar-years-mark > div {
  width: 100% !important;
}

/* === Tutor LMS Menu: Glow on Active Only === */
.tutor-dashboard-menu-item-link {
  color: #00FFFF !important;
  transition: all 0.3s ease;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
}
.tutor-dashboard-menu-item-link:hover {
  color: #00FFFF !important;
  text-shadow: 0 0 4px #00FFFF, 0 0 8px #00FFFF;
}
.tutor-dashboard-menu-item.active .tutor-dashboard-menu-item-link {
  font-weight: bold;
  color: #00FFFF !important;
  text-shadow: 0 0 5px #00FFFF, 0 0 10px #00FFFF;
  background-color: transparent !important;
}
/* === Norgbass: BuddyBoss Profile Tabs (Right Menu) === */
#object-nav,
#object-nav ul {
  background-color: #1A1A1A !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}

/* Base tab style */
#object-nav .bp-personal-tab a,
#object-nav .bp-personal-tab a .bb-single-nav-item-point {
  display: block;
  padding: 10px 16px !important;
  color: #00FFFF !important;
  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  text-shadow: none !important;
  font-weight: normal !important;
  transition: all 0.2s ease !important;
}

/* ✨ Glow on hover */
#object-nav .bp-personal-tab a:hover .bb-single-nav-item-point {
  text-shadow: 0 0 4px #00FFFF, 0 0 8px #00FFFF;
  color: #00FFFF !important;
}

/* ✨ Glow on active */
#object-nav .bp-personal-tab.current.selected .bb-single-nav-item-point {
  text-shadow: 0 0 5px #00FFFF, 0 0 10px #00FFFF !important;
  color: #00FFFF !important;
}

/* === BuddyBoss: Profile Table Text === */
table.profile-fields.bp-tables-user,
table.profile-fields.bp-tables-user td,
table.profile-fields.bp-tables-user td p,
table.profile-fields.bp-tables-user td a {
  color: #000000 !important;
}

/* === BuddyBoss: Subnav Styling (Under Username) === */
#subnav .bp-personal-sub-tab,
#subnav .bp-personal-sub-tab a,
#subnav .bp-personal-sub-tab a * {
  background: none !important;
  box-shadow: none !important;
  outline: none !important;
  border: none !important;
}

/* ✨ Glow on subnav hover */
#subnav .bp-personal-sub-tab a:hover {
  color: #00FFFF !important;
  text-shadow: 0 0 4px #00FFFF, 0 0 8px #00FFFF;
}

/* ✨ Glow on subnav active */
#subnav .bp-personal-sub-tab.current.selected a {
  color: #00FFFF !important;
  text-shadow: 0 0 5px #00FFFF, 0 0 10px #00FFFF !important;
}
/* 💣 BuddyBoss Hover Artifact Final Kill */
#object-nav .bp-personal-tab:hover,
#object-nav .bp-personal-tab a:hover,
#object-nav .bp-personal-tab a:hover .bb-single-nav-item-point {
  background: transparent !important;
  box-shadow: none !important;
  outline: none !important;
  border: none !important;
}

/* Kill ANY white background still attached on hover */
#object-nav .bp-personal-tab a:hover .bb-single-nav-item-point {
  background-color: transparent !important;
  background-image: none !important;
}

/* Subnav too */
#subnav .bp-personal-sub-tab a:hover {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
  outline: none !important;
  background-image: none !important;
}
/* 🧼 BuddyBoss Right Sidebar Menu: Kill all hover artifacts */
#object-nav .bp-personal-tab a:hover .bb-single-nav-item-point,
#object-nav .bp-personal-tab a:focus .bb-single-nav-item-point,
#object-nav .bp-personal-tab a:active .bb-single-nav-item-point {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border: none !important;
  color: #00FFFF !important;
  text-shadow: 0 0 5px #00FFFF, 0 0 10px #00FFFF !important; /* ⬅️ Now adds glow */
}
/* Full background to #121212 for activity inner content */
#activity-stream,
#activity-stream .activity-item,
#activity-stream .activity-content,
#activity-stream .activity-inner,
#activity-stream .activity-inner .bb-content-inr-wrap,
#activity-stream .activity-inner .bb-content-inr-wrap p,
#activity-stream .activity-header,
#activity-stream .activity-comments,
#activity-stream .ac-form,
#activity-stream .ac-input,
#activity-stream .bp-ac-form-container,
#activity-stream .ac-reply-content,
#activity-stream .ac-textarea,
#activity-stream .ac-submit-wrap,
#activity-stream .activity-meta,
#activity-stream .bp-generic-meta,
#activity-stream .activity-state,
#activity-stream .activity-group-post-meta,
#activity-stream .activity-post-author {
  background-color: #121212 !important;
}
/* Set background for discussion titles without affecting the link color */
#activity-stream .activity-discussion-title-wrap {
  background-color: #121212 !important;
  padding: 10px;
  border-radius: 8px;
}

/* Preserve link color inside discussion title */
#activity-stream .activity-discussion-title-wrap a {
  color: inherit !important;
}
/* Make discussion title text very light gray, including the link */
#activity-stream .activity-discussion-title-wrap,
#activity-stream .activity-discussion-title-wrap a {
  color: #E0E0E0 !important; /* or #f5f5f5 if you want even lighter */
}
/* DARKEN the entire stream wrapper, list, and spacing blocks */
#activity-stream,
#activity-stream ul.activity-list,
#activity-stream ul.activity-list > li,
#activity-stream .activity,
#activity-stream .bp-activity-head-group,
#activity-stream .bp-activity-head-group .activity-header,
#activity-stream .bp-activity-head-group .activity-group-post-meta,
#activity-stream .activity-content,
#activity-stream .activity-inner {
  background-color: #121212 !important;
  color: #e0e0e0 !important;
}

/* Prevent link overrides */
#activity-stream a {
  color: inherit !important;
}
/* Filter buttons - normal state */
.bb-subnav-filters-container .subnav-filters-opener,
.bb-subnav-filters-container .subnav-filters-opener .selected,
.bb-subnav-filters-modal ul li a,
.bb-subnav-filters-label {
  font-size: 14px !important;
  font-weight: 500 !important;
  text-transform: capitalize !important;
  padding: 4px 10px !important;
  line-height: 1.2 !important;
  color: #e0e0e0 !important;
}

/* On hover — turn text black */
.bb-subnav-filters-container .subnav-filters-opener:hover,
.bb-subnav-filters-container .subnav-filters-opener:hover .selected,
.bb-subnav-filters-modal ul li a:hover {
  color: #000 !important;
}
/* Make text inside 'What's New' post box black */
#whats-new-content #whats-new-textarea #whats-new,
#whats-new-content #whats-new-textarea #whats-new p {
  color: #000 !important;
}
/* Glowing animated border for What's New editor */
#whats-new-content #whats-new-textarea #whats-new {
  border: 2px solid #000 !important;
  border-radius: 8px;
  padding: 12px;
  color: #000 !important;
  animation: norgbassGlowPulse 2s infinite ease-in-out;
}

/* Glowing animation keyframes */
@keyframes norgbassGlowPulse {
  0%, 100% {
    box-shadow: 0 0 6px #00FFFF, 0 0 10px #00FFFF;
  }
  50% {
    box-shadow: 0 0 12px #00FFFF, 0 0 20px #00FFFF;
  }
}
/* Make the text inside Discard Draft button black */
#discard-draft-activity {
  color: #000 !important;
}
/* Default: Hide for all */
.norgbass-portal-button {
  display: none !important;
}

/* Show for logged-in users */
body.logged-in .norgbass-portal-button {
  display: inline-block !important;
  text-align: center;
  vertical-align: middle;
  padding: 10px 20px;
  background: #00ffff;
  color: #121212;
  border-radius: 5px;
  font-weight: bold;
}

/* Hide portal button unless logged in */
body:not(.logged-in) .portal-header-btn {
  display: none !important;
}

/* Override white background on the ticket form */
#tribe-tickets__tickets-form {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

/* Individual ticket items */
.tribe-tickets__tickets-item {
  background: transparent !important;
  background-color: transparent !important;
  border-color: #FFFFFF33; /* 20% white */
}

/* Unify type color for dark backgrounds */
.tribe-tickets__tickets-item,
.tribe-common {
  color: #f1f1f1 !important;
}

/* Get Tickets button — unified style */
.tribe-events-c-small-cta__link.tribe-common-cta {
  background-color: #000000 !important;
  color: #00FFFF !important;
  border: 1px solid #00FFFF !important;
  border-radius: 4px;
  font-weight: 600;
  font-size: 14px;
  line-height: 1.2;
  min-height: 40px;
  min-width: 120px;
  padding: 10px 20px;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  text-decoration: none !important;
  box-sizing: border-box;
  transition: background-color 0.3s ease, box-shadow 0.3s ease, color 0.3s ease;
  filter: drop-shadow(0 0 1px #00FFFF) drop-shadow(0 0 2px #00FFFF);
  animation: pulseGlowBtn 2.5s ease-in-out infinite;
}

.tribe-events-c-small-cta__link.tribe-common-cta:hover {
  background-color: #00FFFF !important;
  color: #000000 !important;
}

/* Optional: center wrapper */
.get-tickets-wrapper {
  text-align: center;
  margin: 20px 0;
}

/* Modal backdrop (overlay) */
.tribe-dialog__wrapper[role="dialog"],
.tribe-modal__wrapper--ar[role="dialog"] {
  background: transparent !important;
}

/* Modal content surface */
.tribe-dialog__wrapper[role="dialog"] > [role="document"] {
  background: #121212 !important;
  color: #FFFFFF !important;
  border-radius: 14px !important;
}

/* Text inside modal */
.tribe-dialog__wrapper[role="dialog"] h1,
.tribe-dialog__wrapper[role="dialog"] h2,
.tribe-dialog__wrapper[role="dialog"] h3,
.tribe-dialog__wrapper[role="dialog"] h4,
.tribe-dialog__wrapper[role="dialog"] h5,
.tribe-dialog__wrapper[role="dialog"] h6,
.tribe-dialog__wrapper[role="dialog"] p,
.tribe-dialog__wrapper[role="dialog"] span {
  color: #FFFFFF !important;
}

/* Ticket cards inside modal */
.tribe-dialog__wrapper[role="dialog"] .tribe-tickets__tickets-item {
  background: #121212 !important;
  border: 1px solid #2A2A2A !important;
}

/* Footer area inside modal */
.tribe-tickets__attendee-tickets-footer {
  background: #121212 !important;
  padding: 16px !important;
  margin-top: 20px !important;
}

/* Attendee form container (dark) */
.tribe-tickets__attendee-tickets-item {
  background: #121212 !important;
  border-radius: 10px !important;
  padding: 16px !important;
  margin-bottom: 16px !important;
}

/* Text color inside attendee form */
.tribe-tickets__attendee-tickets-item,
.tribe-tickets__attendee-tickets-item label,
.tribe-tickets__attendee-tickets-item h4,
.tribe-tickets__attendee-tickets-item span {
  color: #FFFFFF !important;
}

/* Inputs dark mode */
.tribe-tickets__attendee-tickets-item input[type="text"],
.tribe-tickets__attendee-tickets-item input[type="email"] {
  background: #1A1A1A !important;
  color: #FFFFFF !important;
  border: 1px solid #2A2A2A !important;
  border-radius: 6px !important;
}

/* Hide SVG icon inside attendee remove button */
.tribe-tickets__attendee-tickets-item-remove svg {
  display: none !important;
}

/* Close button — pure CSS X (no data: URL) */
.tribe-dialog__close-button,
.tribe-modal__close-button {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  display: block !important;
  width: 32px !important;
  height: 32px !important;
  cursor: pointer !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

/* Draw the X with pseudo-elements */
.tribe-dialog__close-button::before,
.tribe-dialog__close-button::after,
.tribe-modal__close-button::before,
.tribe-modal__close-button::after {
  content: "" !important;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 2px;
  background: #FFFFFF;
  transform-origin: center;
}

.tribe-dialog__close-button::before,
.tribe-modal__close-button::before {
  transform: translate(-50%, -50%) rotate(45deg);
}

.tribe-dialog__close-button::after,
.tribe-modal__close-button::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

/* Hide any child nodes so only one X shows */
.tribe-dialog__close-button > *,
.tribe-modal__close-button > * {
  display: none !important;
}

/* If more than one close button renders, hide duplicates */
[role="document"] > .tribe-dialog__close-button:not(:first-of-type),
[role="document"] > .tribe-modal__close-button:not(:first-of-type) {
  display: none !important;
}

/* Remove item buttons completely */
.tribe-tickets__tickets-item-remove-wrap,
.tribe-tickets__tickets-item-remove {
  display: none !important;
}

/* Make 'More' look like plain text; hide 'Less' */
.tribe-tickets__tickets-item-details-summary-button--more,
.tribe-tickets__tickets-item-details-summary-button--less {
  all: unset !important;
  cursor: pointer !important;
  color: #FFFFFF !important;
  font-size: inherit !important;
  line-height: 1.4 !important;
}

.tribe-tickets__tickets-item-details-summary-button--more:hover {
  text-decoration: underline;
}

.tribe-tickets__tickets-item-details-summary-button--less {
  display: none !important;
}

/* Modal padding */
.tribe-dialog__content,
.tribe-modal__content {
  padding: 24px !important;
}

/* Ticket item spacing */
.tribe-tickets__tickets-item {
  padding: 16px !important;
  margin-bottom: 20px !important;
}

/* Details content spacing (ticket descriptions) */
.tribe-tickets__tickets-item-details-content {
  padding: 12px !important;
}

/* Title spacing */
.tribe-dialog__title,
.tribe-modal__title {
  margin-bottom: 20px !important;
}

/* Move the attendee remove button higher */
.tribe-tickets__attendee-tickets-item-remove {
  margin-top: -6px !important;
  vertical-align: middle !important;
}

/* Uniform padding inside the ticket modal */
#tribe-tickets__modal-form .tribe-tickets__tickets-item,
#tribe-tickets__modal-form .tribe-tickets__attendee-tickets-item,
#tribe-tickets__modal-form .tribe-tickets__tickets-item-extra,
#tribe-tickets__modal-form .tribe-tickets__tickets-item-quantity,
#tribe-tickets__modal-form .tribe-tickets__tickets-item-total-wrap,
#tribe-tickets__modal-form .tribe-tickets__attendee-tickets-form,
#tribe-tickets__modal-form .tribe-tickets__attendee-tickets-footer {
  padding: 15px !important;
  box-sizing: border-box;
}

/* Subtle pulsing glow for CTA */
@keyframes pulseGlowBtn {
  0%, 100% {
    filter: drop-shadow(0 0 1px #00FFFF) drop-shadow(0 0 2px #00FFFF);
  }
  50% {
    filter: drop-shadow(0 0 4px #00FFFF) drop-shadow(0 0 8px #00FFFF);
  }
}

/* Hide only the specific a11y close button element */
button[data-js="a11y-close-button"].tribe-dialog__close-button.tribe-modal__close-button {
  display: none !important;
}

/* Force a visual offset without affecting layout flow */
.tribe-tickets__attendee-tickets-footer-cart-button {
  transform: translateX(-15px) !important;
}

/* Make "Save and View Cart" match rounded buttons + move left 15px */
.tribe-tickets__attendee-tickets-footer-cart-button {
  /* left shift */
  margin-left: -15px !important;

  /* look like a real button (not linky/square) */
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 10px 20px !important;
  min-height: 40px !important;
  line-height: 1.2 !important;
  border-radius: 4px !important;       /* round corners */
  text-transform: uppercase !important;
  font-weight: 600 !important;
  text-decoration: none !important;

  /* colors to match your button style */
  background-color: #000000 !important;
  color: #00FFFF !important;
  border: 1px solid #00FFFF !important;

  box-sizing: border-box !important;
  cursor: pointer !important;
  transition: background-color 0.3s ease, color 0.3s ease;
}

/* Hover to match other buttons */
.tribe-tickets__attendee-tickets-footer-cart-button:hover {
  background-color: #00FFFF !important;
  color: #000000 !important;
}

/* If the theme forces link styles on this element, neutralize them */
.tribe-common-c-btn-link.tribe-tickets__attendee-tickets-footer-cart-button {
  text-decoration: none !important;
}
/* Make "Subscribe to calendar" match your CTA style */
button.tribe-events-c-subscribe-dropdown__button-text.tribe-common-c-btn--clear {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  /* size so the text fits comfortably */
  white-space: nowrap !important;
  min-height: 40px !important;
  min-width: 200px !important;     /* increase if needed */
  padding: 10px 20px !important;

  /* visual style (hex only) */
  background-color: #000000 !important;
  color: #00FFFF !important;
  border: 1px solid #00FFFF !important;
  border-radius: 4px !important;    /* use 9999px for pill look */
  text-transform: uppercase !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  cursor: pointer !important;
  transition: background-color 0.3s ease, color 0.3s ease !important;
}

/* Hover / focus */
button.tribe-events-c-subscribe-dropdown__button-text.tribe-common-c-btn--clear:hover,
button.tribe-events-c-subscribe-dropdown__button-text.tribe-common-c-btn--clear:focus {
  background-color: #00FFFF !important;
  color: #000000 !important;
  outline: 2px solid #00FFFF !important;
  outline-offset: 2px !important;
}

/* Active state when dropdown is open */
button.tribe-events-c-subscribe-dropdown__button-text.tribe-common-c-btn--clear[aria-expanded="true"] {
  background-color: #00FFFF !important;
  color: #000000 !important;
}
/* ===== Tribe Tickets mobile fixes (compact +/– and no horizontal scroll) ===== */
@media (max-width: 768px) {
  html, body { overflow-x: hidden; }

  /* Keep the modal and its content inside the viewport */
  .tribe-dialog__wrapper.tribe-modal__wrapper--ar,
  .tribe-dialog__content.tribe-modal__content,
  .tribe-modal-cart,
  .tribe-tickets__tickets-wrapper,
  .tribe-tickets__tickets-item {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Undo the sitewide big button rule just for the tickets UI */
  .tribe-tickets__tickets-wrapper button,
  .tribe-modal__wrapper--ar button {
    min-width: 0 !important;
  }

  /* Quantity row – compact layout */
  .tribe-tickets__tickets-item-quantity {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: nowrap !important;
  }

  /* Compact +/- buttons */
  .tribe-tickets__tickets-item-quantity-add,
  .tribe-tickets__tickets-item-quantity-remove {
    width: 34px !important;
    min-width: 34px !important;
    height: 34px !important;
    padding: 0 !important;
    border-radius: 4px !important;
    font-size: 18px !important; /* size of + / – glyph */
    line-height: 1 !important;

    /* match your black/cyan style */
    background: #000 !important;
    color: #00FFFF !important;
    border: 1px solid #00FFFF !important;
    filter: drop-shadow(0 0 .5px #00FFFF) drop-shadow(0 0 1px #00FFFF) !important;
    animation: pulseGlowBtn 2.5s ease-in-out infinite !important;
  }

  /* Quantity input size */
  .tribe-tickets__tickets-item-quantity-number-input {
    width: 56px !important;
    min-width: 56px !important;
    height: 34px !important;
    padding: 0 6px !important;
    text-align: center !important;
    font-size: 14px !important;
    border-radius: 4px !important;
  }

  /* Smaller text so content fits */
  .tribe-tickets__tickets-item-content-title { font-size: 14px !important; }
  .tribe-tickets__tickets-item-details-content { font-size: 12px !important; }
  .tribe-tickets__tickets-item-extra-available { font-size: 12px !important; }

  /* Footer buttons stack nicely on mobile */
  .tribe-tickets__attendee-tickets-footer {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
  .tribe-tickets__attendee-tickets-footer .tribe-tickets__attendee-tickets-footer-divider {
    display: none !important;
  }
  .tribe-tickets__attendee-tickets-footer .tribe-common-c-btn,
  .tribe-tickets__attendee-tickets-footer .tribe-common-c-btn-link,
  #tribe-tickets__tickets-submit {
    width: 100% !important;
    min-width: 0 !important;
    justify-content: center !important;
  }
}

/* Optional: remove native number spinners to keep width tight */
.tribe-tickets__tickets-item-quantity-number-input::-webkit-outer-spin-button,
.tribe-tickets__tickets-item-quantity-number-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.tribe-tickets__tickets-item-quantity-number-input { -moz-appearance: textfield; }

/* Make "Get Tickets" wider so the text fits */
#tribe-tickets__tickets-submit {
  min-width: 200px !important;        /* adjust to taste */
  padding-inline: 20px !important;     /* a bit more horizontal padding */
  white-space: nowrap;                  /* keep text on one line */
  width: max-content;                   /* size to its text + padding */
  display: inline-flex;                 /* keep your centering */
  flex-shrink: 0;                       /* don't let flexbox squeeze it */
  box-sizing: border-box;
}

/* (Optional) still full-width on phones */
@media (max-width: 768px) {
  #tribe-tickets__tickets-submit {
    width: 100% !important;
  }
}

/* Footer with the button */
.tribe-tickets__tickets-footer.tribe-tickets__tickets-footer--active {
  display: flex !important;
  flex-wrap: wrap !important;     /* allow next line */
  align-items: center;
  gap: 12px;
}

/* Make the button take a full new row */
.tribe-tickets__tickets-footer--active > #tribe-tickets__tickets-submit,
.tribe-tickets__tickets-footer--active > .tribe-tickets__tickets-buy {
  order: 3;                        /* after qty + total */
  flex: 0 0 100% !important;       /* full width row */
  width: 100% !important;
  display: block !important;
  margin-top: 8px;
}
/* Widen only the "Add to calendar" button */
button.tribe-events-c-subscribe-dropdown__button-text {
  min-width: 160px !important;    /* tweak to taste: 160–200px */
  padding-inline: 16px !important;
  white-space: nowrap;             /* keep text on one line */
  width: max-content;              /* grow to fit text + padding */
  flex-shrink: 0;                  /* don't let flexbox squeeze it */
  box-sizing: border-box;
}
/* Narrow the mobile menu toggle */
#mobile-toggle {
  min-width: 48px !important;      /* was 120px; keep ≥44px for touch */
  width: auto !important;
  padding: 6px 8px !important;      /* smaller horizontal padding */
  line-height: 1 !important;
  flex: 0 0 auto !important;        /* don't let flex stretch it */
  box-sizing: border-box;
}

/* Make the icon itself a bit smaller (optional) */
#mobile-toggle .kadence-svg-icon {
  width: 20px;
  height: 20px;
}

/* Remove extra spacing inside */
#mobile-toggle .menu-toggle-label { display: none; }
#mobile-toggle .menu-toggle-icon { margin: 0; }

/* In Customizer preview only: keep the pencil overlay from inflating width */
body.customize-preview #mobile-toggle .customize-partial-edit-shortcut {
  position: absolute;
  inset: auto auto auto auto;
  width: 0;
  height: 0;
  overflow: hidden;
  pointer-events: none;
}
/* Make the event title clearly look like a link */
h3.tribe-events-calendar-list__event-title
  a.tribe-events-calendar-list__event-title-link {
  color: var(--global-palette2, #00FFFF) !important;
  text-decoration-line: underline !important;   /* always underline */
  text-decoration-thickness: 2px;
  text-underline-offset: 2px;
  cursor: pointer;
  border-bottom: 0 !important;                  /* undo any thin-border style */
  background-image: none !important;            /* some themes fake underlines */
}

/* Keep same color when visited */
h3.tribe-events-calendar-list__event-title
  a.tribe-events-calendar-list__event-title-link:visited {
  color: var(--global-palette2, #00FFFF) !important;
}

/* Stronger affordance on hover/focus */
h3.tribe-events-calendar-list__event-title
  a.tribe-events-calendar-list__event-title-link:hover,
h3.tribe-events-calendar-list__event-title
  a.tribe-events-calendar-list__event-title-link:focus-visible {
  text-decoration-thickness: 3px;
  outline: 2px solid rgba(0,255,255,.35);
  outline-offset: 2px;
}
/* Put the arrow directly at the end of the link text */
h3.tribe-events-calendar-list__event-title
  a.tribe-events-calendar-list__event-title-link::after {
  content: " →";
  position: static !important;   /* override any absolute rules */
  right: auto !important;
  display: inline-block;         /* so we can animate */
  margin-left: .25em;
  font-weight: 700;
  color: currentColor;           /* uses your electric blue */
  transform: translateX(0);
  transition: transform .2s ease;
}

/* Optional little nudge on hover/focus */
h3.tribe-events-calendar-list__event-title
  a.tribe-events-calendar-list__event-title-link:hover::after,
h3.tribe-events-calendar-list__event-title
  a.tribe-events-calendar-list__event-title-link:focus-visible::after {
  transform: translateX(3px);
}

/* ========================================
   PERMANENT TEC / TICKETS SAFETY PATCH
   Put this at the VERY END of the CSS file
   ======================================== */

/* 1) Undo the global button rule inside Event Tickets / TEC only */
.tribe-common button,
.tribe-tickets__tickets-wrapper button,
.tribe-dialog__wrapper button,
.tribe-modal__wrapper--ar button,
#tribe-tickets__tickets-form button,
#tribe-tickets__modal-form button {
  min-width: 0 !important;
  width: auto !important;
  padding: 0 !important;
  display: inline-flex !important;
  text-transform: none !important;
  animation: none !important;
  filter: none !important;
  box-shadow: none !important;
}

/* 2) Restore the plus/minus controls to real control size */
.tribe-tickets__tickets-item-quantity-add,
.tribe-tickets__tickets-item-quantity-remove {
  width: 34px !important;
  min-width: 34px !important;
  max-width: 34px !important;
  height: 34px !important;
  min-height: 34px !important;
  padding: 0 !important;
  line-height: 1 !important;
  font-size: 18px !important;
  border-radius: 4px !important;
  justify-content: center !important;
  flex: 0 0 34px !important;
}

/* 3) Quantity input should stay compact */
.tribe-tickets__tickets-item-quantity-number-input {
  width: 56px !important;
  min-width: 56px !important;
  max-width: 56px !important;
  height: 34px !important;
  padding: 0 6px !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

/* 4) Price row must not be squeezed */
.tribe-tickets__tickets-item-extra {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  flex-wrap: nowrap !important;
  width: 100% !important;
  overflow: visible !important;
}

.tribe-tickets__tickets-item-extra-price {
  flex: 0 0 auto !important;
  min-width: max-content !important;
  width: auto !important;
  margin-left: auto !important;
  text-align: right !important;
  overflow: visible !important;
}

/* 5) Keep amount + currency together */
.tribe-tickets__tickets-sale-price,
.tribe-formatted-currency-wrap,
.tribe-formatted-currency-wrap.tribe-currency-postfix {
  display: inline-flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
  gap: 4px !important;
  min-width: max-content !important;
  overflow: visible !important;
}

.tribe-formatted-currency-wrap .tribe-amount,
.tribe-formatted-currency-wrap .tribe-currency-symbol {
  display: inline-block !important;
  white-space: nowrap !important;
  overflow: visible !important;
  line-height: 1.15 !important;
}

/* 6) Kill the spacing hack only where it breaks ticket layout */
.tribe-tickets__tickets-item-extra,
.tribe-tickets__tickets-item-total-wrap,
.tribe-tickets__tickets-item-quantity {
  padding-left: 0 !important;
}

/* 7) Modal inner structure should not get giant forced padding */
#tribe-tickets__modal-form .tribe-tickets__tickets-item-extra,
#tribe-tickets__modal-form .tribe-tickets__tickets-item-quantity,
#tribe-tickets__modal-form .tribe-tickets__tickets-item-total-wrap {
  padding: 0 !important;
}

/* 8) Mobile: stack the extra row so price gets its own line */
@media (max-width: 768px) {
  .tribe-tickets__tickets-item-extra {
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 6px !important;
  }

  .tribe-tickets__tickets-item-extra-price {
    margin-left: 0 !important;
    text-align: left !important;
  }
}