:root{
  --lpl-primary: #0ea05a;
}


/* Default font for ALL plugin elements (works inside Elementor widgets too) */
[class^="lpl-"], [class*=" lpl-"]{
  font-family: "Tajawal", system-ui, -apple-system, "Segoe UI", Arial, sans-serif !important;
  box-sizing: border-box;
}

.lpl-wrap{
  max-width: 1200px;
  margin: 0 auto;
  padding: 18px;
}

.lpl-section{ margin: 16px 0; }

.lpl-h1{ font-size: 28px; margin: 0 0 10px; }
.lpl-h2{ font-size: 20px; margin: 0; }
.lpl-muted{ opacity:.75; }

.lpl-card-box{
  background: #fff;
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(0,0,0,.07);
  padding: 18px;
  border: 1px solid rgba(0,0,0,.04);
}

.lpl-card-box__head{ margin-bottom: 12px; }
.lpl-flex{ display:flex; align-items:center; justify-content:space-between; gap:12px; }

.lpl-detail-card{
  display:flex;
  gap: 18px;
  align-items: stretch;
  background:#fff;
  border-radius: 22px;
  overflow:hidden;
  box-shadow: 0 10px 30px rgba(0,0,0,.07);
  border: 1px solid rgba(0,0,0,.04);
}

/* image on RIGHT (RTL) */
.lpl-detail-card__media{
  width: 40%;
  min-height: 260px;
  order: 2;
}
.lpl-detail-card__media img{
  width:100%; height:100%;
  object-fit: cover;
  display:block;
}
.lpl-detail-card__content{
  padding: 18px;
  width: 60%;
  order: 1;
}
@media (max-width: 850px){
  .lpl-detail-card{ flex-direction: column; }
  .lpl-detail-card__media{ width:100%; order:1; min-height: 200px; }
  .lpl-detail-card__content{ width:100%; order:2; }
}

.lpl-row{ margin: 6px 0; }
.lpl-label{ font-weight:700; opacity:.85; }

.lpl-desc{ margin-top: 12px; line-height: 1.8; }

.lpl-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 10px 14px;
  border-radius: 14px;
  text-decoration:none;
  border: 1px solid rgba(0,0,0,.06);
  background: var(--lpl-primary);
  color: #fff;
  font-weight: 700;
  transition: transform .15s ease, filter .15s ease, box-shadow .15s ease;
}
.lpl-btn:hover{
  transform: translateY(-1px);
  filter: brightness(1.02);
  box-shadow: 0 12px 24px rgba(14,160,90,.20);
}
.lpl-btn--wide{ width: 100%; }

.lpl-grid{
  display:grid;
  gap: 16px;
}
.lpl-cols-1{ grid-template-columns: 1fr; }
.lpl-cols-2{ grid-template-columns: repeat(2, 1fr); }
.lpl-cols-3{ grid-template-columns: repeat(3, 1fr); }
.lpl-cols-4{ grid-template-columns: repeat(4, 1fr); }

@media (max-width: 900px){ .lpl-cols-3,.lpl-cols-4{ grid-template-columns: repeat(2, 1fr);} }
@media (max-width: 520px){ .lpl-cols-2,.lpl-cols-3,.lpl-cols-4{ grid-template-columns: 1fr; } }

.lpl-card{
  background:#fff;
  border-radius: 18px;
  overflow:hidden;
  border: 1px solid rgba(0,0,0,.04);
  box-shadow: 0 10px 24px rgba(0,0,0,.06);
  display:flex;
  flex-direction: column;
  min-height: 260px;
}
.lpl-card__media{ display:block; position: relative; overflow:hidden; }
.lpl-card__media img{
  width:100%; height:180px; object-fit: cover; display:block;
  transition: transform .25s ease;
}
.lpl-card:hover .lpl-card__media img{ transform: scale(1.04); }
.lpl-card__body{ padding: 14px; display:flex; flex-direction: column; gap: 10px; }
.lpl-card__title{ margin:0; font-size: 18px; }
.lpl-card__title a{ color: #111; text-decoration:none; }
.lpl-card__title a:hover{ text-decoration: underline; }

.lpl-avg{
  display:flex;
  align-items:center;
  gap:10px;
  padding: 10px 12px;
  border-radius: 14px;
  background: rgba(0,0,0,.03);
}
.lpl-avg__num{ font-weight: 900; font-size: 18px; color: var(--lpl-primary); }
.lpl-avg__txt{ opacity:.8; font-weight:700; }

.lpl-review-form{
  display:grid;
  gap: 12px;
}
.lpl-form-row label{ display:block; font-weight:800; margin-bottom:6px; }
.lpl-form-row input, .lpl-form-row textarea, .lpl-form-row select{
  width:100%;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,.12);
  outline: none;
  background:#fff;
}
.lpl-form-row textarea{ resize: vertical; min-height: 110px; }

.lpl-form-msg{ display:inline-block; margin-top: 8px; opacity:.85; font-weight:700; }

.lpl-stars{
  display:inline-flex; gap: 2px;
}
.lpl-star{ opacity:.25; font-size: 16px; }
.lpl-star.is-on{ opacity: 1; color: var(--lpl-primary); }

.lpl-stars-input{
  display:flex;
  gap: 6px;
  align-items:center;
}
.lpl-star-btn{
  background: rgba(0,0,0,.03);
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 12px;
  padding: 8px 10px;
  cursor:pointer;
  font-size: 16px;
  line-height: 1;
}
.lpl-star-btn.is-on{
  background: rgba(14,160,90,.12);
  border-color: rgba(14,160,90,.35);
  color: var(--lpl-primary);
}

.lpl-review{
  padding: 12px 0;
  border-top: 1px solid rgba(0,0,0,.06);
}
.lpl-review:first-child{ border-top: none; padding-top: 0; }
.lpl-review__head{
  display:flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}
.lpl-review__author{ font-weight: 900; }
.lpl-review__date{ opacity:.7; font-size: 13px; margin-right: 8px; }
.lpl-review__body{ margin-top: 8px; line-height: 1.7; }

.lpl-video iframe, .lpl-video video{ max-width:100%; border-radius: 16px; }
.lpl-video > *{ width: 100%; }

/* Schedule slider */
.lpl-schedule-slider{
  position: relative;
  overflow: hidden;
  border-radius: 18px;
}
.lpl-schedule-track{
  display:flex;
  gap: 14px;
  overflow-x: auto;
  scroll-behavior: smooth;
  padding: 4px 4px 10px;
  scrollbar-width: none;
}
.lpl-schedule-track::-webkit-scrollbar{ display:none; }

.lpl-schedule-item{
  position: relative;
  flex: 0 0 260px;
  height: 160px;
  border-radius: 18px;
  overflow:hidden;
  display:block;
  border: 1px solid rgba(0,0,0,.05);
  box-shadow: 0 10px 24px rgba(0,0,0,.06);
  text-decoration:none;
  color: #fff;
}
.lpl-schedule-item img{ width:100%; height:100%; object-fit: cover; display:block; filter: saturate(1.04); }
.lpl-overlay{
  position:absolute;
  inset: 0;
  display:flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 6px;
  padding: 12px;
  background: linear-gradient(180deg, rgba(0,0,0,0.05) 10%, rgba(0,0,0,.60) 100%);
}
.lpl-overlay__title{ font-weight: 900; font-size: 18px; }
.lpl-overlay__meta{ font-weight: 800; opacity:.95; }

.lpl-hover-meta{
  position:absolute;
  top: 10px;
  right: 10px;
  background: rgba(0,0,0,.55);
  padding: 8px 10px;
  border-radius: 14px;
  font-weight: 800;
  opacity: 0;
  transform: translateY(-6px);
  transition: opacity .18s ease, transform .18s ease;
}
.lpl-schedule-item:hover .lpl-hover-meta{
  opacity: 1;
  transform: translateY(0);
}

.lpl-arrow{
  position:absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.35);
  background: rgba(0,0,0,.45);
  color:#fff;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size: 26px;
  line-height: 1;
  backdrop-filter: blur(6px);
}
.lpl-arrow--prev{ left: 10px; }
.lpl-arrow--next{ right: 10px; }

.lpl-schedule-slider[data-arrows="no"] .lpl-arrow{ display:none; }

.lpl-empty{
  padding: 14px;
  border-radius: 14px;
  background: rgba(0,0,0,.03);
}


/* ====== v1.2.2: Premium schedule widget shell + dots ====== */
.lpl-schedule-shell{
  background:#fff;
  border-radius: 22px;
  border: 1px solid rgba(0,0,0,.05);
  box-shadow: 0 18px 45px rgba(0,0,0,.08);
  padding: 14px;
}
.lpl-schedule-shell__head{
  display:flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding: 6px 6px 12px;
}
.lpl-schedule-shell__title{
  font-weight: 900;
  font-size: 18px;
  letter-spacing: .2px;
}
.lpl-schedule-shell__hint{
  font-weight: 700;
  opacity: .65;
  font-size: 13px;
}

.lpl-schedule-slider{
  border-radius: 18px;
  background: radial-gradient(1200px 220px at 50% 0%, rgba(14,160,90,.10), rgba(0,0,0,0) 55%);
  padding: 6px 4px 12px;
}

.lpl-schedule-item{
  border-radius: 22px;
  transform: translateZ(0);
}
.lpl-schedule-item::after{
  content:"";
  position:absolute;
  inset: 0;
  border-radius: 22px;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.18);
  pointer-events:none;
}
.lpl-schedule-item:hover img{
  transform: scale(1.06);
}
.lpl-schedule-item img{
  transition: transform .28s ease, filter .28s ease;
}
.lpl-overlay__badge{
  display:inline-flex;
  align-self:flex-start;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.16);
  border: 1px solid rgba(255,255,255,.18);
  font-weight: 900;
  font-size: 12px;
  backdrop-filter: blur(6px);
  margin-bottom: 6px;
}
.lpl-overlay__title{ text-shadow: 0 10px 22px rgba(0,0,0,.45); }
.lpl-overlay__meta{ text-shadow: 0 10px 22px rgba(0,0,0,.45); }

.lpl-hover-meta{
  backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,.20);
}

/* Dots */
.lpl-dots{
  display:flex;
  justify-content:center;
  gap: 8px;
  padding: 10px 0 2px;
}
.lpl-dot{
  width: 9px;
  height: 9px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.18);
  background: rgba(0,0,0,.10);
  cursor:pointer;
  padding: 0;
}
.lpl-dot.is-active{
  width: 22px;
  background: var(--lpl-primary);
  border-color: rgba(0,0,0,.0);
}

/* Remove arrows (legacy) */
.lpl-arrow{ display:none !important; }


/* ====== v1.2.3: Softer premium card frame for schedule widget ====== */
.lpl-schedule-shell{
  border: 1px solid rgba(0,0,0,.045);
  box-shadow: 0 14px 40px rgba(0,0,0,.075);
  background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(250,252,251,1) 100%);
  padding: 16px;
  position: relative;
}
.lpl-schedule-shell::before{
  content:"";
  position:absolute;
  inset: 8px;
  border-radius: 18px;
  border: 1px solid rgba(14,160,90,.08);
  pointer-events:none;
}
.lpl-schedule-shell__head{
  padding: 4px 8px 14px;
}
.lpl-schedule-shell__title{
  font-size: 19px;
}
.lpl-schedule-slider{
  border: 1px solid rgba(0,0,0,.04);
  background: radial-gradient(900px 220px at 50% 0%, rgba(14,160,90,.11), rgba(0,0,0,0) 60%);
}


/* ====== v1.2.4: Schedule card redesign (image top + white box + pro hover) ====== */
.lpl-schedule-track{
  padding: 10px 10px 8px;
  gap: 16px;
}

.lpl-sched-card{
  flex: 0 0 280px;
  height: auto;
  color: #111;
  background: transparent;
  box-shadow: none;
  border: none;
  overflow: visible;
  border-radius: 22px;
}

.lpl-sched-card__img{
  position: relative;
  border-radius: 22px;
  overflow: hidden;
  height: 170px;
  border: 1px solid rgba(0,0,0,.05);
  box-shadow: 0 16px 34px rgba(0,0,0,.12);
  transform: translateZ(0);
}
.lpl-sched-card__img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display:block;
  transition: transform .35s ease, filter .35s ease;
}
.lpl-sched-card__badge{
  position:absolute;
  top: 12px;
  right: 12px;
  background: rgba(255,255,255,.92);
  color: #111;
  border-radius: 999px;
  padding: 8px 12px;
  font-weight: 900;
  font-size: 12px;
  border: 1px solid rgba(0,0,0,.06);
  box-shadow: 0 10px 24px rgba(0,0,0,.12);
  backdrop-filter: blur(6px);
}

.lpl-sched-card__body{
  background: #fff;
  border-radius: 20px;
  border: 1px solid rgba(0,0,0,.05);
  box-shadow: 0 14px 34px rgba(0,0,0,.08);
  padding: 14px 14px 12px;
  margin-top: -18px; /* overlap under image like premium cards */
  position: relative;
}
.lpl-sched-card__body::before{
  content:"";
  position:absolute;
  inset: 10px;
  border-radius: 16px;
  border: 1px solid rgba(14,160,90,.08);
  pointer-events:none;
}

.lpl-sched-card__title{
  font-weight: 900;
  font-size: 16px;
  margin: 2px 0 10px;
  line-height: 1.35;
}

.lpl-sched-card__time{
  display:flex;
  align-items:center;
  justify-content:flex-start;
}

.lpl-time-btn{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 10px 12px;
  border-radius: 14px;
  background: rgba(14,160,90,.10);
  color: var(--lpl-primary);
  border: 1px solid rgba(14,160,90,.20);
  font-weight: 800;
  font-size: 13px; /* smaller as requested */
  box-shadow: 0 10px 22px rgba(14,160,90,.12);
}
.lpl-time-btn--muted{
  background: rgba(0,0,0,.05);
  color: rgba(0,0,0,.6);
  border-color: rgba(0,0,0,.08);
  box-shadow: none;
}

.lpl-sched-card:hover .lpl-sched-card__img img{
  transform: scale(1.07);
  filter: saturate(1.08) contrast(1.02);
}
.lpl-sched-card:hover .lpl-sched-card__img{
  box-shadow: 0 22px 52px rgba(0,0,0,.18);
}
.lpl-sched-card:hover .lpl-sched-card__body{
  transform: translateY(-2px);
  box-shadow: 0 18px 46px rgba(0,0,0,.12);
}
.lpl-sched-card:hover .lpl-time-btn{
  background: var(--lpl-primary);
  color: #fff;
  border-color: rgba(255,255,255,.0);
  box-shadow: 0 16px 36px rgba(14,160,90,.22);
}

/* Disable old overlay/hover meta for schedule cards (legacy) */
.lpl-schedule-item .lpl-overlay,
.lpl-schedule-item .lpl-hover-meta{
  display:none !important;
}


/* ====== v1.3.0: Reviews widget + Schedule table styles ====== */
.lpl-card-box--tight{ padding: 16px; }

.lpl-table-shell{
  background:#fff;
  border-radius: 22px;
  border: 1px solid rgba(0,0,0,.05);
  box-shadow: 0 18px 45px rgba(0,0,0,.08);
  padding: 14px;
}
.lpl-table-shell__head{
  display:flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 6px 8px 14px;
}
.lpl-table-shell__title{ font-weight: 900; font-size: 18px; }
.lpl-table-shell__hint{ font-weight: 700; opacity: .65; font-size: 13px; }

.lpl-table-wrap{
  border-radius: 18px;
  overflow:hidden;
  border: 1px solid rgba(0,0,0,.04);
}
.lpl-table{
  display:block;
}
.lpl-tr{
  display:grid;
  grid-template-columns: 1.2fr .9fr 1.3fr;
  gap: 0;
  align-items: center;
}
.lpl-table--head .lpl-tr{
  background: rgba(0,0,0,.04);
}
.lpl-th, .lpl-td{
  padding: 14px 14px;
}
.lpl-th{
  font-weight: 900;
  opacity: .85;
}
.lpl-table--body .lpl-tr{
  background:#fff;
  border-top: 1px solid rgba(0,0,0,.05);
}
.lpl-table--body .lpl-tr:hover{
  background: rgba(14,160,90,.035);
}

@media (max-width: 900px){
  .lpl-tr{ grid-template-columns: 1fr; }
  .lpl-table--head{ display:none; }
  .lpl-td{ padding: 12px 14px; }
}

.lpl-program-mini{
  display:flex;
  align-items:center;
  gap: 12px;
  text-decoration:none;
  color:#111;
}
.lpl-program-mini__img{
  width: 58px;
  height: 58px;
  border-radius: 16px;
  overflow:hidden;
  position: relative;
  flex: 0 0 auto;
  border: 1px solid rgba(0,0,0,.05);
  box-shadow: 0 10px 22px rgba(0,0,0,.10);
}
.lpl-program-mini__img img{ width:100%; height:100%; object-fit: cover; display:block; }
.lpl-program-mini__title{
  font-weight: 900;
  line-height: 1.25;
}

.lpl-presenter{ font-weight: 800; opacity: .85; }

.lpl-time-pill{
  display:inline-flex;
  padding: 10px 12px;
  border-radius: 14px;
  background: rgba(0,0,0,.04);
  border: 1px solid rgba(0,0,0,.06);
  font-weight: 800;
  font-size: 13px;
  color: rgba(0,0,0,.75);
}

.lpl-live-badge{
  position:absolute;
  bottom: 8px;
  left: 8px;
  background: #e11d48; /* red */
  color:#fff;
  font-weight: 900;
  font-size: 11px;
  padding: 6px 8px;
  border-radius: 999px;
  box-shadow: 0 12px 22px rgba(225,29,72,.28);
  animation: lplBlink 1.0s infinite;
}
@keyframes lplBlink{
  0%, 49% { opacity: 1; }
  50%, 100% { opacity: .15; }
}


/* ====== v1.3.1: Podcast button under schedule ====== */
.lpl-podcast-row{ margin-top: 10px; }

.lpl-podcast-btn{
  display:inline-flex;
  align-items:center;
  gap: 10px;
  padding: 10px 14px;
  border-radius: 16px;
  border: 1px solid rgba(0,0,0,.06);
  background: var(--lpl-primary);
  color:#fff;
  text-decoration:none;
  font-weight: 900;
  box-shadow: 0 16px 36px rgba(14,160,90,.20);
  transition: transform .15s ease, filter .15s ease, box-shadow .15s ease, opacity .15s ease;
}
.lpl-podcast-btn__icon{
  width: 28px;
  height: 28px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius: 999px;
  background: rgba(255,255,255,.18);
  border: 1px solid rgba(255,255,255,.22);
  line-height: 1;
}
.lpl-podcast-btn:hover{
  transform: translateY(-1px);
  filter: brightness(1.03);
  box-shadow: 0 20px 44px rgba(14,160,90,.28);
}
.lpl-podcast-btn--disabled{
  background: rgba(0,0,0,.12);
  color: rgba(0,0,0,.65);
  border-color: rgba(0,0,0,.10);
  box-shadow: none;
  cursor: not-allowed;
}
.lpl-podcast-btn--disabled .lpl-podcast-btn__icon{
  background: rgba(0,0,0,.08);
  border-color: rgba(0,0,0,.08);
}


/* ====== v1.3.2: Podcast modal (popup) ====== */
.lpl-modal{
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;
}
.lpl-modal.is-open{ display:block; }

.lpl-modal__overlay{
  position:absolute;
  inset: 0;
  background: rgba(0,0,0,.55);
  backdrop-filter: blur(6px);
}

.lpl-modal__card{
  position: relative;
  width: min(920px, calc(100% - 26px));
  margin: 6vh auto;
  background: #fff;
  border-radius: 22px;
  border: 1px solid rgba(0,0,0,.06);
  box-shadow: 0 30px 80px rgba(0,0,0,.30);
  overflow: hidden;
  animation: lplModalIn .18s ease;
}
@keyframes lplModalIn{
  from { transform: translateY(10px); opacity: .2; }
  to { transform: translateY(0); opacity: 1; }
}

.lpl-modal__close{
  position:absolute;
  top: 10px;
  left: 10px; /* RTL friendly */
  width: 40px;
  height: 40px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(0,0,0,.04);
  cursor:pointer;
  font-size: 22px;
  line-height: 1;
  display:flex;
  align-items:center;
  justify-content:center;
}
.lpl-modal__title{
  padding: 16px 18px 10px;
  font-weight: 900;
  font-size: 18px;
  border-bottom: 1px solid rgba(0,0,0,.06);
}
.lpl-modal__body{
  padding: 16px 18px 18px;
}
.lpl-modal__body iframe,
.lpl-modal__body video{
  width: 100% !important;
  max-width: 100% !important;
  border-radius: 18px;
}

html.lpl-modal-open, html.lpl-modal-open body{ overflow:hidden !important; }


/* ====== v1.3.3: Live Broadcast Podcast Frame ====== */
.lpl-liveframe-wrap{
  --lpl-live-radius: 24px;
  --lpl-live-accent: var(--lpl-primary);
  --lpl-live-height: 320px;
}

.lpl-liveframe{
  border-radius: var(--lpl-live-radius);
  border: 1px solid rgba(0,0,0,.06);
  background: linear-gradient(180deg, rgba(255,255,255,1), rgba(250,252,251,1));
  overflow: hidden;
  position: relative;
}

.lpl-liveframe-wrap[data-shadow="yes"] .lpl-liveframe{
  box-shadow: 0 22px 70px rgba(0,0,0,.18);
}

.lpl-liveframe::before{
  content:"";
  position:absolute;
  inset: 10px;
  border-radius: calc(var(--lpl-live-radius) - 10px);
  border: 1px solid rgba(14,160,90,.10);
  border: 1px solid color-mix(in srgb, var(--lpl-live-accent) 18%, transparent);
  pointer-events:none;
  opacity:.9;
}

.lpl-liveframe__top{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  background: radial-gradient(800px 220px at 50% 0%, rgba(14,160,90,.10), rgba(0,0,0,0) 60%);
  border-bottom: 1px solid rgba(0,0,0,.06);
}

.lpl-liveframe__brand{
  display:flex;
  align-items:center;
  gap: 12px;
}
.lpl-liveframe__dot{
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: #ef4444;
  box-shadow: 0 0 0 6px rgba(239,68,68,.12);
  animation: lplBlink 1.0s infinite;
}
.lpl-liveframe__titles{ display:flex; flex-direction:column; }
.lpl-liveframe__title{ font-weight: 900; font-size: 16px; line-height: 1.2; }
.lpl-liveframe__subtitle{ font-weight: 800; font-size: 12px; opacity: .65; margin-top: 2px; }

.lpl-liveframe__badge{
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(239,68,68,.12);
  color: #b91c1c;
  border: 1px solid rgba(239,68,68,.25);
  font-weight: 1000;
  letter-spacing: .6px;
  font-size: 12px;
}

.lpl-liveframe__body{
  padding: 16px;
}

.lpl-liveframe__screen{
  border-radius: calc(var(--lpl-live-radius) - 6px);
  background: #0b0f14;
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.06);
  overflow:hidden;
  position: relative;
}

/* Ensure embeds fill */
.lpl-liveframe__screen iframe,
.lpl-liveframe__screen video,
.lpl-liveframe__screen > *{
  width: 100%;
  max-width: 100%;
  display:block;
}

/* If shortcode outputs something with fixed height, user can control; we provide safe min-height */
.lpl-liveframe__screen{
  min-height: var(--lpl-live-height, 320px);
}
@media (max-width: 600px){
  .lpl-liveframe__screen{ min-height: max(200px, calc(var(--lpl-live-height, 320px) - 120px)); }
}

/* Bottom wave decoration */
.lpl-liveframe__bottom{
  height: 26px;
  background: linear-gradient(90deg, rgba(14,160,90,.10), rgba(14,160,90,.0), rgba(14,160,90,.10));
  border-top: 1px solid rgba(0,0,0,.05);
  position: relative;
}
.lpl-liveframe__wave{
  position:absolute;
  inset: 0;
  background-image:
    radial-gradient(circle at 10% 50%, rgba(14,160,90,.35) 0 2px, transparent 3px),
    radial-gradient(circle at 30% 40%, rgba(14,160,90,.25) 0 2px, transparent 3px),
    radial-gradient(circle at 55% 60%, rgba(14,160,90,.30) 0 2px, transparent 3px),
    radial-gradient(circle at 75% 45%, rgba(14,160,90,.22) 0 2px, transparent 3px),
    radial-gradient(circle at 90% 55%, rgba(14,160,90,.32) 0 2px, transparent 3px);
  opacity: .55;
}


/* ====== v1.4.0: Reviews Ticker (vertical up) ====== */
.lpl-ticker{
  overflow:hidden;
  border-radius: 18px;
  border: 1px solid rgba(0,0,0,.06);
  background: rgba(0,0,0,.02);
  position: relative;
}
.lpl-ticker__track{
  display:flex;
  flex-direction: column;
  gap: 10px;
  padding: 10px;
}
.lpl-ticker__item .lpl-review-item{
  margin: 0;
}
.lpl-ticker-hint{
  font-weight: 800;
  font-size: 12px;
  opacity: .65;
}

/* subtle top/bottom fades */
.lpl-ticker:before, .lpl-ticker:after{
  content:"";
  position:absolute;
  left:0; right:0;
  height: 22px;
  pointer-events:none;
  z-index: 2;
}
.lpl-ticker:before{
  top:0;
  background: linear-gradient(180deg, rgba(255,255,255,.95), rgba(255,255,255,0));
}
.lpl-ticker:after{
  bottom:0;
  background: linear-gradient(0deg, rgba(255,255,255,.95), rgba(255,255,255,0));
}


/* ====== v1.4.4: reviews spacing + form msg ====== */
.lpl-reviews-ticker-shell .lpl-card-box--tight + .lpl-card-box--tight{
  margin-top: 16px;
}
.lpl-review-form .lpl-form-msg{
  display:inline-block;
  margin-inline-start: 12px;
  font-weight: 800;
  opacity: .92;
}


/* ====== v1.4.5: Smooth looping ticker ====== */
.lpl-ticker--smooth{
  position: relative;
}
.lpl-ticker--smooth .lpl-ticker__track{
  will-change: transform;
  animation: lplTickerScroll var(--lpl-ticker-dur, 18s) linear infinite;
}
.lpl-ticker--smooth:hover .lpl-ticker__track{
  animation-play-state: paused;
}
@keyframes lplTickerScroll{
  from { transform: translateY(0); }
  to   { transform: translateY(calc(-1 * var(--lpl-ticker-scroll, 0px))); }
}


/* ====== v1.4.6: Live Tabs Widget ====== */
.lpl-live-tabs{
  font-family: 'Tajawal', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}
.lpl-live-tabs__frame{
  border-radius: 26px;
  background: #fff;
  border: 1px solid rgba(0,0,0,.06);
  box-shadow: 0 22px 60px rgba(0,0,0,.12);
  overflow: hidden;
  position: relative;
}
.lpl-live-tabs__frame:before{
  content:"";
  position:absolute;
  inset:-2px;
  border-radius: 28px;
  border: 2px solid color-mix(in srgb, var(--lpl-live-accent, var(--lpl-primary)) 30%, transparent);
  pointer-events:none;
  opacity:.8;
}
.lpl-live-tabs__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding: 16px 18px;
  background: linear-gradient(90deg,
    color-mix(in srgb, var(--lpl-live-accent, var(--lpl-primary)) 16%, transparent),
    transparent);
}
.lpl-live-tabs__title{
  font-weight: 900;
  font-size: 18px;
  letter-spacing: .2px;
}
.lpl-live-tabs__badge{
  font-weight: 900;
  font-size: 12px;
  padding: 6px 10px;
  border-radius: 999px;
  color:#fff;
  background: #ef4444;
  animation: lplBlink 1.1s ease-in-out infinite;
}
@keyframes lplBlink{ 0%,100%{opacity:1} 50%{opacity:.35} }

.lpl-live-tabs__tabs{
  display:flex;
  gap: 10px;
  padding: 12px 14px 0;
  background: #fff;
}
.lpl-live-tabs__tab{
  flex:1;
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 8px;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(0,0,0,.02);
  border-radius: 18px;
  padding: 10px 12px;
  cursor:pointer;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;
  font-weight: 900;
}
.lpl-live-tabs__tab:hover{
  transform: translateY(-1px);
  box-shadow: 0 12px 26px rgba(0,0,0,.10);
  border-color: color-mix(in srgb, var(--lpl-live-accent, var(--lpl-primary)) 25%, rgba(0,0,0,.08));
}
.lpl-live-tabs__tab.is-active{
  background: color-mix(in srgb, var(--lpl-live-accent, var(--lpl-primary)) 12%, #fff);
  border-color: color-mix(in srgb, var(--lpl-live-accent, var(--lpl-primary)) 35%, rgba(0,0,0,.10));
  box-shadow: 0 14px 34px rgba(0,0,0,.12);
}
.lpl-live-tabs__icon{
  display:inline-flex;
  width: 18px;
  height: 18px;
  align-items:center;
  justify-content:center;
}
.lpl-live-tabs__icon:before{
  font-size: 18px;
}
.lpl-live-tabs__label{
  font-size: 14px;
}

.lpl-live-tabs__body{
  padding: 14px;
}
.lpl-live-tabs__screen{
  height: var(--lpl-live-height, 360px);
  min-height: 220px;
  border-radius: 22px;
  background: radial-gradient(circle at 30% 20%,
    color-mix(in srgb, var(--lpl-live-accent, var(--lpl-primary)) 12%, transparent),
    rgba(0,0,0,.08)), #0b0f19;
  border: 1px solid rgba(255,255,255,.10);
  overflow:hidden;
  position:relative;
  display:flex;
  align-items:stretch;
  justify-content:stretch;
}
.lpl-live-tabs__screen iframe,
.lpl-live-tabs__screen video,
.lpl-live-tabs__screen > *{
  width:100% !important;
  height:100% !important;
  display:block;
}
.lpl-live-tabs__linkwrap{
  padding: 18px;
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap: 10px;
  color:#fff;
}
.lpl-live-tabs__hint{
  font-size: 12px;
  opacity: .75;
  text-align:center;
}
.lpl-live-tabs__footer{
  padding: 12px 16px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.lpl-live-tabs__note{
  font-size: 12px;
  opacity: .65;
  font-weight: 800;
}
.lpl-live-tabs__spark{
  width: 72px;
  height: 10px;
  border-radius: 999px;
  background: linear-gradient(90deg,
    transparent,
    color-mix(in srgb, var(--lpl-live-accent, var(--lpl-primary)) 50%, transparent),
    transparent);
  filter: blur(.2px);
}

@media (max-width: 700px){
  .lpl-live-tabs__tabs{ gap: 8px; }
  .lpl-live-tabs__tab{ padding: 10px 8px; border-radius: 16px; }
  .lpl-live-tabs__label{ font-size: 13px; }
  .lpl-live-tabs__body{ padding: 12px; }
  .lpl-live-tabs__screen{ border-radius: 18px; }
}


/* ====== v1.4.8: tabs polish + emoji icons ====== */
.lpl-live-tabs__emoji{
  font-size: 16px;
  line-height: 1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width: 22px;
}
.lpl-live-tabs__tabs{
  padding: 14px 16px 0;
}
.lpl-live-tabs__tab{
  box-shadow: 0 10px 22px rgba(0,0,0,.08);
  background: #ffffff;
}
.lpl-live-tabs__tab:hover{
  background: color-mix(in srgb, var(--lpl-live-accent, var(--lpl-primary)) 10%, #fff);
}
.lpl-live-tabs__tab.is-active{
  background: linear-gradient(180deg,
    color-mix(in srgb, var(--lpl-live-accent, var(--lpl-primary)) 14%, #fff),
    #fff);
}


/* ====== v1.5.0: Matches Table (Live Sports) ====== */
.lpl-matches-wrap{
  font-family: 'Tajawal', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background:#fff;
  border:1px solid rgba(0,0,0,.06);
  border-radius: 26px;
  box-shadow: 0 22px 60px rgba(0,0,0,.10);
  overflow:hidden;
}
.lpl-matches-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap: 12px;
  padding: 16px 18px;
  background: linear-gradient(90deg,
    color-mix(in srgb, var(--lpl-primary) 14%, transparent),
    transparent);
}
.lpl-matches-title{
  font-weight: 900;
  font-size: 18px;
}
.lpl-matches-note{
  font-size: 12px;
  opacity:.72;
  font-weight: 800;
}

.lpl-matches-table-shell{
  padding: 14px 14px 6px;
}
.lpl-matches-table{
  width:100%;
  border-collapse: separate;
  border-spacing: 0 10px;
}
.lpl-matches-table thead th{
  font-size: 12px;
  opacity:.7;
  font-weight: 900;
  text-transform: none;
  padding: 0 12px 6px;
}
.lpl-matches-table tbody td{
  background: #fff;
  border-top: 1px solid rgba(0,0,0,.06);
  border-bottom: 1px solid rgba(0,0,0,.06);
  padding: 12px 12px;
  vertical-align: middle;
}
.lpl-matches-table tbody tr td:first-child{
  border-left: 1px solid rgba(0,0,0,.06);
  border-radius: 18px 0 0 18px;
}
.lpl-matches-table tbody tr td:last-child{
  border-right: 1px solid rgba(0,0,0,.06);
  border-radius: 0 18px 18px 0;
}
.lpl-match-row{
  transition: transform .18s ease, box-shadow .18s ease;
}
.lpl-match-row:hover td{
  box-shadow: 0 14px 32px rgba(0,0,0,.10);
}
.lpl-team{
  display:flex;
  align-items:center;
  gap: 10px;
  font-weight: 900;
}
.lpl-flag{
  width: 34px;
  height: 34px;
  border-radius: 10px;
  object-fit: cover;
  border: 1px solid rgba(0,0,0,.10);
  box-shadow: 0 10px 20px rgba(0,0,0,.08);
}
.lpl-team-name{ font-size: 14px; }
.lpl-match-vs{
  text-align:center;
  font-weight: 900;
  opacity:.6;
  letter-spacing:.5px;
}
.lpl-match-time{
  white-space: nowrap;
  text-align:center;
}
.lpl-time{
  display:inline-block;
  font-weight: 900;
  font-size: 12px;
  opacity:.8;
}
.lpl-live-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  margin-inline-start: 8px;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(239,68,68,.12);
  color:#ef4444;
  font-weight: 900;
  font-size: 12px;
  border: 1px solid rgba(239,68,68,.35);
  animation: lplBlink 1.1s ease-in-out infinite;
}
.lpl-match-row.is-live td{
  background: color-mix(in srgb, #ef4444 6%, #fff);
  border-color: rgba(239,68,68,.20);
}

.lpl-match-score{
  text-align:center;
  font-weight: 900;
  font-size: 16px;
}
.lpl-score{ min-width: 18px; display:inline-block; }
.lpl-score-sep{ opacity:.55; margin: 0 6px; }

.lpl-live-events-card{
  margin: 14px;
  border-radius: 22px;
  border: 1px solid rgba(0,0,0,.06);
  background: #fff;
  box-shadow: 0 18px 46px rgba(0,0,0,.10);
  overflow:hidden;
}
.lpl-live-events-card__head{
  padding: 14px 16px;
  background: linear-gradient(90deg, rgba(239,68,68,.10), transparent);
}
.lpl-live-events-card__title{
  font-weight: 900;
  font-size: 16px;
}
.lpl-live-events-card__sub{
  margin-top: 4px;
  font-size: 12px;
  opacity:.75;
  font-weight: 800;
}
.lpl-live-events-card__body{
  padding: 14px 16px 18px;
}
.lpl-events-list{
  margin: 0;
  padding: 0 18px 0 0;
  list-style: none;
}
.lpl-events-list li{
  padding: 10px 12px;
  border-radius: 14px;
  background: rgba(0,0,0,.03);
  border: 1px solid rgba(0,0,0,.05);
  margin-bottom: 10px;
  font-weight: 800;
  font-size: 13px;
}
@media (max-width: 720px){
  .lpl-matches-table thead{ display:none; }
  .lpl-matches-table tbody tr td{ padding: 10px; }
  .lpl-team-name{ font-size: 13px; }
  .lpl-match-score{ font-size: 15px; }
  .lpl-match-time{ font-size: 12px; }
}


/* ====== v1.5.1: Watch button + modal for matches ====== */
.lpl-match-watch{ text-align:center; }
.lpl-watch-btn{
  border: 0;
  cursor: pointer;
  font-family: inherit;
  font-weight: 900;
  font-size: 13px;
  padding: 10px 14px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--lpl-primary) 16%, #fff);
  box-shadow: 0 12px 26px rgba(0,0,0,.10);
  border: 1px solid rgba(0,0,0,.07);
  transition: transform .18s ease, box-shadow .18s ease;
}
.lpl-watch-btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 16px 36px rgba(0,0,0,.12);
}

body.lpl-modal-open{ overflow:hidden; }
.lpl-match-modal{
  position: fixed;
  inset: 0;
  z-index: 99999;
  display:flex;
  align-items:center;
  justify-content:center;
}
.lpl-match-modal__backdrop{
  position:absolute;
  inset:0;
  background: rgba(0,0,0,.55);
  backdrop-filter: blur(6px);
}
.lpl-match-modal__panel{
  position:relative;
  width: min(980px, 92vw);
  border-radius: 26px;
  background:#fff;
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 30px 80px rgba(0,0,0,.35);
  overflow:hidden;
  transform: translateY(10px) scale(.98);
  opacity: 0;
  transition: transform .16s ease, opacity .16s ease;
  z-index: 1;
}
.lpl-match-modal__panel.is-open{
  transform: translateY(0) scale(1);
  opacity: 1;
}
.lpl-match-modal__close{
  position:absolute;
  top: 10px;
  left: 10px;
  width: 38px;
  height: 38px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.10);
  background: rgba(255,255,255,.90);
  cursor:pointer;
  font-size: 22px;
  line-height: 1;
  font-weight: 900;
}
.lpl-match-modal__head{
  padding: 14px 16px 12px;
  background: linear-gradient(90deg,
    rgba(239,68,68,.10),
    transparent);
}
.lpl-match-modal__title{
  font-weight: 900;
  font-size: 16px;
}
.lpl-match-modal__sub{
  margin-top: 4px;
  font-size: 12px;
}
.lpl-match-modal__body{
  padding: 14px;
}
.lpl-match-modal__screen{
  border-radius: 22px;
  overflow:hidden;
  background: #0b0f19;
  border: 1px solid rgba(255,255,255,.10);
  min-height: 420px;
}
.lpl-match-modal__screen iframe,
.lpl-match-modal__screen video,
.lpl-match-modal__screen > *{
  width:100% !important;
  height:100% !important;
  display:block;
}

.lpl-match-modal__screen iframe{min-height:420px;height:420px;}


/* ====== v1.5.7: Live Tabs - full frame video + width control ====== */
.lpl-live-tabs{
  width: 100%;
  max-width: var(--lpl-live-width, 100%);
  margin-inline: auto;
}

.lpl-live-tabs__screen{
  height: var(--lpl-live-height, 420px);
  display:block;
}

/* Force embeds to fill the screen */
.lpl-live-tabs__screen iframe,
.lpl-live-tabs__screen video,
.lpl-live-tabs__screen embed,
.lpl-live-tabs__screen object{
  width: 100% !important;
  height: 100% !important;
  display:block !important;
  border: 0 !important;
}

/* Common wrappers */
.lpl-live-tabs__screen .wp-video,
.lpl-live-tabs__screen .wp-video-shortcode,
.lpl-live-tabs__screen .fluid-width-video-wrapper,
.lpl-live-tabs__screen .video-container,
.lpl-live-tabs__screen .elementor-video{
  width: 100% !important;
  height: 100% !important;
}

.lpl-live-tabs__screen .wp-video video{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}


/* ====== Live Tabs (URL auto embed) ====== */
.lpl-live-tabs{width:100%;max-width:var(--lpl-live-width, 100%);margin-inline:auto}
.lpl-live-tabs__screen{height:var(--lpl-live-height, 420px);background:#0b1220;border-radius:18px;overflow:hidden}
.lpl-live-tabs__screen iframe,
.lpl-live-tabs__screen video,
.lpl-live-tabs__screen embed,
.lpl-live-tabs__screen object{width:100%!important;height:100%!important;display:block;border:0}
.lpl-iframe,.lpl-video{width:100%!important;height:100%!important;display:block;border:0}
.lpl-watch-link{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:12px;background:#0ea5a0;color:#fff;font-weight:800;text-decoration:none}
.lpl-watch-link:hover{opacity:.92}


/* v1.6.5 Live Tabs polish */
.lpl-live-tabs{width: var(--lpl-live-width, 100%); max-width: 100%;}
.lpl-live-tabs__tabs{gap:12px;}
.lpl-live-tabs__tab{
  font-weight: 800;
  letter-spacing: .2px;
  box-shadow: 0 10px 26px rgba(0,0,0,.06);
}
.lpl-live-tabs__tab.is-active{
  background: linear-gradient(135deg, rgba(0,0,0,.02), color-mix(in srgb, var(--lpl-primary) 12%, transparent));
  border-color: color-mix(in srgb, var(--lpl-primary) 55%, rgba(0,0,0,.10));
  box-shadow: 0 16px 40px rgba(0,0,0,.10);
  transform: translateY(-1px);
}
.lpl-live-tabs__icon{filter: drop-shadow(0 2px 6px rgba(0,0,0,.15));}
.lpl-live-tabs__screen{
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.06), 0 22px 60px rgba(0,0,0,.22);
}
.lpl-watch-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--lpl-primary) 18%, #fff);
  border: 1px solid color-mix(in srgb, var(--lpl-primary) 45%, rgba(0,0,0,.08));
  font-weight: 900;
  text-decoration:none;
}
.lpl-watch-link:hover{transform: translateY(-1px);}
.lpl-watch-link.is-disabled{
  opacity:.55;
  cursor:not-allowed;
}


/* v1.6.5 oEmbed fill */
.lpl-live-tabs__screen .wp-video,
.lpl-live-tabs__screen .wp-video-shortcode,
.lpl-live-tabs__screen .wp-embedded-content,
.lpl-live-tabs__screen .fluid-width-video-wrapper,
.lpl-live-tabs__screen .embed-container,
.lpl-live-tabs__screen > div{
  width:100% !important;
  height:100% !important;
}
.lpl-live-tabs__screen iframe{min-height:100% !important;}


/* Messages */
.lpl-form-msg.is-ok{color: #0ea05a;}
.lpl-form-msg.is-err{color:#c0002a;}


/* ========== LiveHub Tabs (Rebuilt) ========== */
.lpl-livehub{font-family:'Tajawal',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif}
.lpl-livehub__card{width:var(--lpl-live-width,100%);margin:18px auto;background:#fff;border-radius:26px;overflow:hidden;
  border:1px solid rgba(148,163,184,.35);box-shadow:0 22px 70px rgba(15,23,42,.12)}
.lpl-livehub__top{padding:16px 18px 10px;background:linear-gradient(135deg,rgba(16,185,129,.16),rgba(56,189,248,.14))}
.lpl-livehub__title{display:flex;align-items:center;gap:10px;justify-content:flex-start;font-weight:900;font-size:20px;color:#0f172a;direction:rtl}
.lpl-livehub__badge{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;font-weight:900;font-size:12px;
  background:rgba(255,255,255,.65);border:1px solid rgba(148,163,184,.35)}
.lpl-livehub__dot{width:8px;height:8px;border-radius:999px;background:#ef4444;box-shadow:0 0 0 6px rgba(248,113,113,.32);animation:lplLiveDot 1.3s infinite}
@keyframes lplLiveDot{0%{transform:scale(1);opacity:1}100%{transform:scale(1.45);opacity:0}}
.lpl-livehub__tabs{margin-top:12px;display:flex;gap:10px;direction:rtl}
.lpl-livehub__tab{flex:1;min-width:0;border:1px solid rgba(244,63,94,.55);background:#fff;border-radius:14px;padding:10px 12px;
  display:flex;align-items:center;justify-content:center;gap:8px;font-weight:800;color:#e11d48;cursor:pointer;transition:.18s ease}
.lpl-livehub__tab:hover{transform:translateY(-1px);box-shadow:0 10px 26px rgba(15,23,42,.10)}
.lpl-livehub__tab.is-active{background:linear-gradient(135deg,#f43f5e,#b91c1c);color:#fff;border-color:transparent}
.lpl-livehub__ico{font-size:16px;line-height:1}
.lpl-livehub__txt{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lpl-livehub__stage{padding:14px 18px 18px}
.lpl-livehub__screen{height:var(--lpl-live-height,420px);min-height:240px;border-radius:22px;background:#020617;overflow:hidden;position:relative}
.lpl-livehub__screen iframe,.lpl-livehub__screen video,.lpl-livehub__screen embed,.lpl-livehub__screen object{width:100%!important;height:100%!important;display:block;border:0}
.lpl-livehub__placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;
  color:rgba(226,232,240,.92);padding:22px;text-align:center}
.lpl-livehub__ph-title{font-weight:900;font-size:16px;margin-bottom:6px}
.lpl-livehub__ph-sub{font-size:13px;color:rgba(148,163,184,.95)}
.lpl-livehub__hint{padding:0 18px 16px;color:#64748b;font-size:13px;direction:rtl}
@media (max-width:768px){
  .lpl-livehub__tabs{flex-direction:column}
  .lpl-livehub__title{font-size:18px}
  .lpl-livehub__stage{padding:12px}
}



/* Matches Cards (Basra Live) */
.lpl-matchcards{display:flex;flex-direction:column;gap:12px;direction:rtl}
.lpl-matchcard{display:block;text-decoration:none;background:#fff;border:1px solid rgba(148,163,184,.35);
  border-radius:10px;overflow:hidden}
.lpl-matchcard:hover{box-shadow:0 14px 34px rgba(15,23,42,.10)}
.lpl-matchcard__main{display:grid;grid-template-columns:1fr 70px 170px 70px 1fr;align-items:center;gap:10px;padding:14px 14px 10px}
.lpl-matchcard__team{display:flex;align-items:center;gap:10px;min-width:0}
.lpl-matchcard__team--right{justify-content:flex-end;text-align:right}
.lpl-matchcard__team--left{justify-content:flex-start;text-align:left}
.lpl-matchcard__flag{width:44px;height:44px;object-fit:contain}
.lpl-matchcard__name{font-weight:800;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lpl-matchcard__score{font-weight:900;font-size:34px;color:#0f4c81;text-align:center}
.lpl-matchcard__mid{text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px}
.lpl-matchcard__tz{font-size:12px;color:#ef4444;font-weight:800}
.lpl-matchcard__time{font-size:30px;font-weight:900;color:#0f172a;line-height:1}
.lpl-matchcard__badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 12px;border-radius:999px;font-weight:900;font-size:13px}
.lpl-badge--live{background:#dc2626;color:#fff;animation:lplPulse 1.1s infinite}
.lpl-badge--soon{background:#22c55e;color:#fff}
.lpl-badge--upcoming{background:#64748b;color:#fff}
.lpl-badge--ended{background:#94a3b8;color:#fff}
@keyframes lplPulse{0%{opacity:1}50%{opacity:.55}100%{opacity:1}}
.lpl-matchcard__meta{display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid rgba(148,163,184,.22);padding:10px 14px;gap:10px}
.lpl-matchmeta{display:flex;align-items:center;gap:8px;font-size:13px;color:#0f172a;justify-content:center}
.lpl-mi{color:#f59e0b}
@media (max-width:768px){
  .lpl-matchcard__main{grid-template-columns:1fr 54px 120px 54px 1fr}
  .lpl-matchcard__score{font-size:26px}
  .lpl-matchcard__time{font-size:22px}
  .lpl-matchcard__flag{width:34px;height:34px}
  .lpl-matchcard__meta{grid-template-columns:1fr;gap:6px}
  .lpl-matchmeta{justify-content:flex-start}
}


/* --- Extra polish for form fields (soft, modern) --- */
.lpl-form-row input, .lpl-form-row textarea, .lpl-form-row select{
  box-shadow: 0 8px 18px rgba(15,23,42,.06);
  transition: box-shadow .18s ease, border-color .18s ease, transform .18s ease;
}

.lpl-form-row input:focus, .lpl-form-row textarea:focus, .lpl-form-row select:focus{
  border-color: var(--lpl-primary);
  box-shadow: 0 0 0 4px rgba(14,160,90,.16), 0 14px 28px rgba(15,23,42,.10);
  transform: translateY(-1px);
}

.lpl-star-btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 12px 26px rgba(15,23,42,.10);
}

.lpl-btn, .lpl-review-submit, button.lpl-review-submit{
  box-shadow: 0 12px 28px rgba(15,23,42,.12);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.lpl-btn:hover, .lpl-review-submit:hover, button.lpl-review-submit:hover{
  transform: translateY(-1px);
  box-shadow: 0 18px 36px rgba(15,23,42,.16);
  filter: brightness(1.02);
}
