/* Kad2U V85 — Glassy Outer + Contact Cleanup
   Scope: public/live card sahaja.
   Safe UI override: tidak mengubah PHP flow, form action, DB atau public link.
*/

.ewc-public-page.ewc-opened{
  --ewc-v84-outer-radius: 26px;
  --ewc-v84-inner-radius: 18px;
  --ewc-v84-control-radius: 14px;
  --ewc-v84-section-gap: 14px;
  --ewc-v84-inner-gap: 10px;
  --ewc-v84-surface: rgba(255,255,255,.32);
  --ewc-v84-surface-strong: rgba(255,255,255,.46);
  --ewc-v84-surface-soft: rgba(255,255,255,.18);
  --ewc-v84-border: rgba(255,255,255,.58);
  --ewc-v84-border-soft: rgba(255,255,255,.34);
  --ewc-v84-shadow: 0 18px 42px rgba(42,28,38,.11), inset 0 1px 0 rgba(255,255,255,.58);
  --ewc-v84-inner-shadow: 0 6px 16px rgba(42,28,38,.035), inset 0 1px 0 rgba(255,255,255,.42);
}

/* =========================================================
   1. MASTER SECTION SYSTEM
   ========================================================= */
.ewc-public-page.ewc-opened .ewc-quick-panel-v52,
.ewc-public-page.ewc-opened .ewc-section,
.ewc-public-page.ewc-opened .ewc-countdown-card{
  width: min(340px, calc(100% - 24px)) !important;
  max-width: 340px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: var(--ewc-v84-section-gap) !important;
  box-sizing: border-box !important;
}

.ewc-public-page.ewc-opened .ewc-glass,
.ewc-public-page.ewc-opened .overlay-none .ewc-glass,
.ewc-public-page.ewc-opened .overlay-blur .ewc-glass,
.ewc-public-page.ewc-opened .overlay-gradient .ewc-glass{
  position: relative !important;
  overflow: hidden !important;
  padding: 20px !important;
  border: 1px solid var(--ewc-v84-border) !important;
  border-radius: var(--ewc-v84-outer-radius) !important;
  background: linear-gradient(145deg, rgba(255,255,255,.34), rgba(255,255,255,.18)) !important;
  box-shadow: var(--ewc-v84-shadow) !important;
  backdrop-filter: blur(18px) saturate(145%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(145%) !important;
}

.ewc-public-page.ewc-opened .ewc-glass::before{
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  opacity: .86 !important;
  background: linear-gradient(135deg, rgba(255,255,255,.28), rgba(255,255,255,.06) 42%, transparent 68%) !important;
}

.ewc-public-page.ewc-opened .ewc-glass > *{
  position: relative !important;
  z-index: 1 !important;
}

/* Tajuk semua section guna hierarchy yang sama. */
.ewc-public-page.ewc-opened .ewc-section-label,
.ewc-public-page.ewc-opened .ewc-small-title{
  display: block !important;
  margin: 0 0 7px !important;
  text-align: center !important;
  font-size: 10px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  color: var(--button, var(--primary, #B76E8A)) !important;
}

.ewc-public-page.ewc-opened .ewc-section h2{
  margin: 0 0 15px !important;
  text-align: center !important;
  font-size: 21px !important;
  line-height: 1.2 !important;
  letter-spacing: -.025em !important;
  color: var(--text, #342936) !important;
}

.ewc-public-page.ewc-opened .ewc-section > .ewc-muted-copy{
  max-width: 286px !important;
  margin: -5px auto 15px !important;
  text-align: center !important;
  line-height: 1.55 !important;
}

/* =========================================================
   2. QUICK INFO — SATU BUBBLE, ROW YANG KEMAS
   ========================================================= */
.ewc-public-page.ewc-opened .ewc-quick-panel-v52{
  display: grid !important;
  gap: 0 !important;
  margin-top: 12px !important;
  padding: 10px 14px 14px !important;
}

.ewc-public-page.ewc-opened .ewc-quick-item{
  display: grid !important;
  grid-template-columns: 68px minmax(0,1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  min-height: 48px !important;
  padding: 10px 4px !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(var(--primary-rgb,183,110,138),.11) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.ewc-public-page.ewc-opened .ewc-quick-item:last-of-type{
  border-bottom: 0 !important;
}

.ewc-public-page.ewc-opened .ewc-quick-item span{
  opacity: .62 !important;
  font-size: 9px !important;
  letter-spacing: .12em !important;
}

.ewc-public-page.ewc-opened .ewc-quick-item strong{
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
  text-align: right !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
}

.ewc-public-page.ewc-opened .ewc-quick-actions-v52{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  gap: 8px !important;
  margin-top: 10px !important;
}

.ewc-public-page.ewc-opened .ewc-quick-actions-v52 a{
  min-width: 0 !important;
  min-height: 40px !important;
  padding: 10px 8px !important;
  border-radius: 999px !important;
  font-size: 10px !important;
  line-height: 1.15 !important;
}

/* =========================================================
   3. COUNTDOWN — EMPAT TILE YANG SAMA SAIZ
   ========================================================= */
.ewc-public-page.ewc-opened .ewc-countdown-card{
  padding: 18px !important;
}

.ewc-public-page.ewc-opened .ewc-countdown{
  grid-template-columns: repeat(4, minmax(0,1fr)) !important;
  gap: 8px !important;
}

.ewc-public-page.ewc-opened .ewc-countdown > div{
  min-width: 0 !important;
  min-height: 70px !important;
  padding: 9px 4px !important;
  border: 1px solid var(--ewc-v84-border-soft) !important;
  border-radius: 17px !important;
  background: linear-gradient(145deg, rgba(255,255,255,.20), rgba(255,255,255,.10)) !important;
  box-shadow: var(--ewc-v84-inner-shadow) !important;
}

.ewc-public-page.ewc-opened .ewc-countdown strong{
  font-size: 25px !important;
}

.ewc-public-page.ewc-opened .ewc-countdown span{
  font-size: 9px !important;
  letter-spacing: .04em !important;
}

/* =========================================================
   4. INNER CONTENT TILES — RADIUS/PADDING/SHADOW SERAGAM
   ========================================================= */
.ewc-public-page.ewc-opened .ewc-invite-wording,
.ewc-public-page.ewc-opened .ewc-detail-item,
.ewc-public-page.ewc-opened .ewc-itinerary-list li,
.ewc-public-page.ewc-opened .ewc-location-card,
.ewc-public-page.ewc-opened .ewc-contact-card,
.ewc-public-page.ewc-opened .ewc-prayer-text,
.ewc-public-page.ewc-opened .ewc-memory-upload,
.ewc-public-page.ewc-opened .ewc-empty-gallery,
.ewc-public-page.ewc-opened .ewc-wish,
.ewc-public-page.ewc-opened .ewc-rsvp-success-card{
  border: 1px solid var(--ewc-v84-border-soft) !important;
  border-radius: var(--ewc-v84-inner-radius) !important;
  background: var(--ewc-v84-surface-soft) !important;
  box-shadow: var(--ewc-v84-inner-shadow) !important;
}

.ewc-public-page.ewc-opened .ewc-invite-wording{
  max-width: 100% !important;
  margin: 0 0 10px !important;
  padding: 16px !important;
  font-size: 13px !important;
  line-height: 1.7 !important;
}

/* Butiran Majlis: tarikh & masa sama tinggi, sama lebar. */
.ewc-public-page.ewc-opened .ewc-detail-grid,
.ewc-public-page.ewc-opened .ewc-detail-grid--compact{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  gap: var(--ewc-v84-inner-gap) !important;
  max-width: 100% !important;
  margin: 0 !important;
}

.ewc-public-page.ewc-opened .ewc-detail-item{
  min-width: 0 !important;
  min-height: 102px !important;
  padding: 13px 10px !important;
  align-content: center !important;
  gap: 5px !important;
}

.ewc-public-page.ewc-opened .ewc-detail-item:only-child{
  grid-column: 1 / -1 !important;
  min-height: 88px !important;
}

.ewc-public-page.ewc-opened .ewc-detail-item i{
  width: 31px !important;
  height: 31px !important;
  border: 0 !important;
  background: rgba(var(--button-rgb, var(--primary-rgb,183,110,138)),.10) !important;
}

.ewc-public-page.ewc-opened .ewc-detail-item strong{
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
  font-size: 13px !important;
  line-height: 1.38 !important;
  text-align: center !important;
}

.ewc-public-page.ewc-opened .ewc-prayer-text{
  max-width: 100% !important;
  margin: 10px 0 0 !important;
  padding: 14px 16px !important;
  line-height: 1.65 !important;
}

/* =========================================================
   5. ATURCARA — TIMELINE RINGKAS, BUKAN PETAK RAWAK
   ========================================================= */
.ewc-public-page.ewc-opened .ewc-itinerary-list{
  gap: 8px !important;
}

.ewc-public-page.ewc-opened .ewc-itinerary-list li{
  grid-template-columns: 36px minmax(0,1fr) !important;
  gap: 11px !important;
  min-height: 58px !important;
  padding: 10px 13px !important;
}

.ewc-public-page.ewc-opened .ewc-itinerary-list span{
  width: 34px !important;
  height: 34px !important;
  border: 1px solid rgba(var(--button-rgb, var(--primary-rgb,183,110,138)),.12) !important;
  font-family: inherit !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  background: rgba(var(--button-rgb, var(--primary-rgb,183,110,138)),.10) !important;
}

.ewc-public-page.ewc-opened .ewc-itinerary-list p{
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
  font-weight: 750 !important;
}

/* =========================================================
   6. LOKASI & CONTACT — FULL WIDTH DAN ACTION BALANCE
   ========================================================= */
.ewc-public-page.ewc-opened .ewc-location-card{
  max-width: 100% !important;
  margin: 0 !important;
  padding: 17px 16px !important;
}

.ewc-public-page.ewc-opened .ewc-location-card strong{
  margin-bottom: 7px !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
  overflow-wrap: anywhere !important;
}

.ewc-public-page.ewc-opened .ewc-location-card p,
.ewc-public-page.ewc-opened .ewc-location-card small{
  font-size: 12px !important;
  line-height: 1.55 !important;
  overflow-wrap: anywhere !important;
}

.ewc-public-page.ewc-opened .ewc-centered-actions{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  gap: 8px !important;
  margin-top: 10px !important;
}

.ewc-public-page.ewc-opened .ewc-centered-actions > a:only-child{
  grid-column: 1 / -1 !important;
}

.ewc-public-page.ewc-opened .ewc-contact-list{
  gap: 9px !important;
}

.ewc-public-page.ewc-opened .ewc-contact-card{
  min-width: 0 !important;
  padding: 15px !important;
  gap: 5px !important;
}

.ewc-public-page.ewc-opened .ewc-contact-card strong{
  font-size: 15px !important;
  line-height: 1.3 !important;
}

.ewc-public-page.ewc-opened .ewc-contact-card p{
  font-size: 12px !important;
}

.ewc-public-page.ewc-opened .ewc-contact-actions{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  margin-top: 8px !important;
}

.ewc-public-page.ewc-opened .ewc-contact-actions > a{
  min-width: 0 !important;
  min-height: 39px !important;
  padding: 9px 8px !important;
}



/* V85 CONTACT CLEANUP — buang rasa petak berat, bagi floating glass cards */
.ewc-public-page.ewc-opened .ewc-contact-section{
  background: linear-gradient(145deg, rgba(255,255,255,.30), rgba(255,255,255,.16)) !important;
}

.ewc-public-page.ewc-opened .ewc-contact-list{
  display: grid !important;
  gap: 12px !important;
}

.ewc-public-page.ewc-opened .ewc-contact-card{
  padding: 14px 16px 16px !important;
  background: linear-gradient(145deg, rgba(255,255,255,.16), rgba(255,255,255,.08)) !important;
  border: 1px solid rgba(255,255,255,.30) !important;
  box-shadow: 0 8px 18px rgba(42,28,38,.025), inset 0 1px 0 rgba(255,255,255,.30) !important;
  backdrop-filter: blur(10px) saturate(135%) !important;
  -webkit-backdrop-filter: blur(10px) saturate(135%) !important;
}

.ewc-public-page.ewc-opened .ewc-contact-card small{
  display:block !important;
  margin-bottom: 4px !important;
  text-align:center !important;
  letter-spacing:.18em !important;
  opacity:.72 !important;
}

.ewc-public-page.ewc-opened .ewc-contact-card strong{
  text-align:center !important;
  margin-bottom: 2px !important;
}

.ewc-public-page.ewc-opened .ewc-contact-card p{
  text-align:center !important;
  margin: 0 0 8px !important;
  opacity:.82 !important;
}

.ewc-public-page.ewc-opened .ewc-contact-actions{
  margin-top: 10px !important;
}

.ewc-public-page.ewc-opened .ewc-contact-actions > a{
  min-height: 40px !important;
  border-radius: 999px !important;
}

.ewc-public-page.ewc-opened .ewc-contact-actions > a.ewc-btn-soft{
  background: rgba(255,255,255,.44) !important;
  border: 1px solid rgba(255,255,255,.50) !important;
  box-shadow: none !important;
}

.ewc-public-page.ewc-opened .ewc-contact-actions > a.ewc-btn-primary{
  box-shadow: 0 10px 18px rgba(var(--button-rgb, var(--primary-rgb,183,110,138)), .18) !important;
}

/* Sedikit glassy juga untuk lokasi supaya selari dengan contact */
.ewc-public-page.ewc-opened .ewc-location-card{
  background: linear-gradient(145deg, rgba(255,255,255,.18), rgba(255,255,255,.09)) !important;
  border-color: rgba(255,255,255,.32) !important;
}
/* =========================================================
   7. BUTTON & FORM SYSTEM
   ========================================================= */
.ewc-public-page.ewc-opened .ewc-btn-primary,
.ewc-public-page.ewc-opened .ewc-btn-soft,
.ewc-public-page.ewc-opened .ewc-form button[type="submit"],
.ewc-public-page.ewc-opened .ewc-gallery-more-btn{
  border-radius: 999px !important;
  min-height: 42px !important;
  font-size: 11px !important;
  font-weight: 900 !important;
}

.ewc-public-page.ewc-opened .ewc-form{
  gap: 10px !important;
}

.ewc-public-page.ewc-opened .ewc-form label{
  gap: 6px !important;
  font-size: 11px !important;
  line-height: 1.3 !important;
}

.ewc-public-page.ewc-opened .ewc-form input,
.ewc-public-page.ewc-opened .ewc-form select,
.ewc-public-page.ewc-opened .ewc-form textarea{
  min-height: 43px !important;
  padding: 11px 12px !important;
  border: 1px solid rgba(var(--primary-rgb,183,110,138),.10) !important;
  border-radius: var(--ewc-v84-control-radius) !important;
  background: rgba(255,255,255,.72) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.78), 0 5px 12px rgba(42,28,38,.035) !important;
}

.ewc-public-page.ewc-opened .ewc-form textarea{
  min-height: 82px !important;
  resize: vertical !important;
}

.ewc-public-page.ewc-opened .ewc-form input:focus,
.ewc-public-page.ewc-opened .ewc-form select:focus,
.ewc-public-page.ewc-opened .ewc-form textarea:focus{
  border-color: rgba(var(--button-rgb, var(--primary-rgb,183,110,138)),.34) !important;
  box-shadow: 0 0 0 3px rgba(var(--button-rgb, var(--primary-rgb,183,110,138)),.08) !important;
}

.ewc-public-page.ewc-opened .ewc-form-row{
  grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  gap: 9px !important;
}

.ewc-public-page.ewc-opened .ewc-form button[type="submit"]{
  width: 100% !important;
  margin-top: 2px !important;
}

.ewc-public-page.ewc-opened .ewc-rsvp-success-card{
  margin-bottom: 12px !important;
  padding: 15px !important;
}

.ewc-public-page.ewc-opened .ewc-success-actions{
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 8px !important;
}

.ewc-public-page.ewc-opened .ewc-success-actions a{
  min-width: 0 !important;
  padding: 10px 7px !important;
  font-size: 10px !important;
}

/* =========================================================
   8. GALLERY, UPLOAD & UCAPAN
   ========================================================= */
.ewc-public-page.ewc-opened .ewc-gallery{
  gap: 9px !important;
}

.ewc-public-page.ewc-opened .ewc-gallery-item{
  border: 1px solid var(--ewc-v84-border-soft) !important;
  border-radius: var(--ewc-v84-inner-radius) !important;
  background: var(--ewc-v84-surface-soft) !important;
  box-shadow: var(--ewc-v84-inner-shadow) !important;
}

.ewc-public-page.ewc-opened .ewc-gallery-item img{
  height: 132px !important;
  border-radius: var(--ewc-v84-inner-radius) var(--ewc-v84-inner-radius) 0 0 !important;
}

.ewc-public-page.ewc-opened .ewc-memory-upload{
  margin-top: 12px !important;
  padding: 16px !important;
}

.ewc-public-page.ewc-opened .ewc-memory-upload h3{
  margin-bottom: 6px !important;
  text-align: center !important;
  font-size: 16px !important;
}

.ewc-public-page.ewc-opened .ewc-memory-upload > p{
  max-width: 270px !important;
  margin: 0 auto 13px !important;
  text-align: center !important;
  font-size: 11px !important;
  line-height: 1.55 !important;
}

.ewc-public-page.ewc-opened .ewc-empty-gallery{
  padding: 16px !important;
  text-align: center !important;
}

.ewc-public-page.ewc-opened .ewc-wishes{
  gap: 9px !important;
  margin-top: 12px !important;
}

.ewc-public-page.ewc-opened .ewc-wish{
  padding: 14px 15px !important;
}

.ewc-public-page.ewc-opened .ewc-wish strong{
  margin-bottom: 4px !important;
  font-size: 13px !important;
}

.ewc-public-page.ewc-opened .ewc-wish p{
  font-size: 12px !important;
  line-height: 1.55 !important;
}

/* Last section dan footer kekal dekat dengan menu, tidak tinggalkan gap pelik. */
.ewc-public-page.ewc-opened .ewc-card-main > .ewc-section:last-of-type{
  margin-bottom: 8px !important;
}

.ewc-public-page.ewc-opened .ewc-footer{
  padding-top: 8px !important;
}

/* Small-screen safety */
@media (max-width: 360px){
  .ewc-public-page.ewc-opened .ewc-glass{
    padding: 17px !important;
  }
  .ewc-public-page.ewc-opened .ewc-detail-item{
    min-height: 96px !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
  .ewc-public-page.ewc-opened .ewc-detail-item strong{
    font-size: 12px !important;
  }
  .ewc-public-page.ewc-opened .ewc-countdown > div{
    min-height: 66px !important;
  }
  .ewc-public-page.ewc-opened .ewc-countdown strong{
    font-size: 23px !important;
  }
}
