/* ==========================================================================
   EZTECH Elementor Elements — frontend core
   Token, nút, form, modal, sticky CTA và tiện ích dùng chung.

   PHẠM VI: token khai báo trên wrapper widget của Elementor
   (.elementor-widget-eztech-*), KHÔNG đụng :root hay thẻ toàn cục của theme.
   Mọi class đều có tiền tố ezds- hoặc ezel-.
   ========================================================================== */

[class*="elementor-widget-eztech-"],
.ezds-landing-scope,
.ezds-modal,
.ezds-sticky {
  /* --- Xanh lá thương hiệu --- */
  --ezds-green:        #35DE7C;
  --ezds-green-hover:  #4BE68C;
  --ezds-green-active: #22C468;
  --ezds-green-light:  #7CEBAE;
  --ezds-mint:         #BEF7D8;
  --ezds-green-soft:   rgba(53, 222, 124, .10);
  --ezds-green-soft-2: rgba(53, 222, 124, .17);
  --ezds-green-line:   rgba(53, 222, 124, .30);
  --ezds-green-glow:   rgba(53, 222, 124, .28);

  /* --- Nền --- */
  --ezds-bg:         #040908;
  --ezds-bg-alt:     #0A150F;
  --ezds-bg-deep:    #020604;
  --ezds-surface:    #0B1610;
  --ezds-surface-2:  #101F16;
  --ezds-surface-3:  #14281C;

  /* --- Viền --- */
  --ezds-border:     rgba(255, 255, 255, .08);
  --ezds-border-2:   rgba(255, 255, 255, .15);
  --ezds-border-3:   rgba(255, 255, 255, .24);

  /* --- Chữ --- */
  --ezds-heading:    #FFFFFF;
  --ezds-text:       #9FB3A7;
  --ezds-muted:      #869A8D;
  --ezds-on-green:   #041A0C;

  /* --- Trạng thái --- */
  --ezds-success:      #35DE7C;
  --ezds-success-soft: rgba(53, 222, 124, .12);
  --ezds-warning:      #F5C451;
  --ezds-warning-soft: rgba(245, 196, 81, .12);
  --ezds-danger:       #FF6B6B;
  --ezds-danger-soft:  rgba(255, 107, 107, .12);

  /* --- Gradient --- */
  --ezds-grad:        linear-gradient(135deg, #35DE7C 0%, #5FE59A 48%, #BEF7D8 100%);
  --ezds-grad-text:   linear-gradient(94deg, #35DE7C 0%, #6BE7A4 52%, #BEF7D8 100%);
  --ezds-grad-btn:    linear-gradient(135deg, #35DE7C 0%, #23C96C 100%);
  --ezds-grad-panel:  linear-gradient(155deg, rgba(53,222,124,.10) 0%, rgba(53,222,124,.02) 55%, transparent 100%);

  /* --- Typography --- */
  --ezds-font: "Plus Jakarta Sans", "Inter", -apple-system, BlinkMacSystemFont,
               "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
  --ezds-fs-display: clamp(2rem, 1.32rem + 2.7vw, 3.125rem);
  --ezds-fs-h2:      clamp(1.55rem, 1.15rem + 1.7vw, 2.5rem);
  --ezds-fs-h3:      clamp(1.125rem, 1.03rem + .42vw, 1.375rem);
  --ezds-fs-h4:      clamp(1rem, .96rem + .2vw, 1.125rem);
  --ezds-fs-lead:    clamp(1rem, .95rem + .38vw, 1.1875rem);
  --ezds-fs-body:    1rem;
  --ezds-fs-sm:      .9375rem;
  --ezds-fs-xs:      .8125rem;
  --ezds-fs-2xs:     .75rem;
  --ezds-lh-tight:   1.18;
  --ezds-lh-snug:    1.38;
  --ezds-lh-base:    1.7;

  /* --- Spacing --- */
  --ezds-sp-1: 4px;   --ezds-sp-2: 8px;   --ezds-sp-3: 12px;
  --ezds-sp-4: 16px;  --ezds-sp-5: 20px;  --ezds-sp-6: 24px;
  --ezds-sp-8: 32px;  --ezds-sp-10: 40px; --ezds-sp-12: 48px;
  --ezds-sp-16: 64px; --ezds-sp-20: 80px;
  --ezds-section-y:  clamp(64px, 6.5vw, 112px);
  --ezds-head-gap:   clamp(36px, 3.6vw, 60px);

  /* --- Radius --- */
  --ezds-r-sm: 8px;  --ezds-r-md: 12px;  --ezds-r-lg: 16px;
  --ezds-r-xl: 20px; --ezds-r-2xl: 24px; --ezds-r-pill: 999px;

  /* --- Shadow --- */
  --ezds-sh-sm:    0 2px 8px rgba(0, 0, 0, .35);
  --ezds-sh-md:    0 10px 28px rgba(0, 0, 0, .42);
  --ezds-sh-lg:    0 20px 48px rgba(0, 0, 0, .50);
  --ezds-sh-xl:    0 34px 80px rgba(0, 0, 0, .60);
  --ezds-sh-green: 0 8px 24px rgba(53, 222, 124, .26);
  --ezds-sh-green-h: 0 12px 32px rgba(53, 222, 124, .38);

  /* --- Layout --- */
  --ezds-container: 1280px;
  --ezds-pad: clamp(16px, 4vw, 32px);

  /* --- Motion --- */
  --ezds-ease: cubic-bezier(.22, .61, .36, 1);
  --ezds-dur: .26s;
}

/* Focus state */
.ezds-landing-scope :focus-visible,
[class*="elementor-widget-eztech-"] :focus-visible {
  outline: 3px solid var(--ezds-green);
  outline-offset: 2px;
  border-radius: var(--ezds-r-sm);
}

[class*="elementor-widget-eztech-"] ul.ezds-checklist,
[class*="elementor-widget-eztech-"] ul.ezds-hero__usp,
[class*="elementor-widget-eztech-"] ul.ezds-microcopy,
[class*="elementor-widget-eztech-"] ol.ezds-steps,
[class*="elementor-widget-eztech-"] .ezds-card__bullets,
[class*="elementor-widget-eztech-"] .ezds-crumb ol,
.ezds-modal ul,
.ezel-header__menu,
.ezel-footer ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.ezds-sr-only {
  position: absolute !important;
  width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%);
  white-space: nowrap; border: 0;
}

.ezel-editor-notice {
  margin: 0 0 16px;
  padding: 12px 16px;
  border-radius: 10px;
  background: rgba(245, 196, 81, .14);
  border: 1px dashed rgba(245, 196, 81, .5);
  color: #F5C451;
  font-size: 13px;
  line-height: 1.6;
}

.ezds-field--w100 { grid-column: 1 / -1; }
@media (min-width: 768px) {
  .ezds-form-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .ezds-field--w100 { grid-column: span 6; }
  .ezds-field--w50  { grid-column: span 3; }
  .ezds-field--w33  { grid-column: span 2; }
}

.ezds-consent {
  display: grid;
  grid-template-columns: 20px 1fr;
  gap: 10px;
  align-items: start;
  font-size: var(--ezds-fs-xs);
  line-height: 1.6;
  color: var(--ezds-text);
}
.ezds-consent input { margin-top: 3px; inline-size: 18px; block-size: 18px; accent-color: var(--ezds-green); }

.ezds-form__note { margin-top: 14px; font-size: var(--ezds-fs-xs); color: var(--ezds-muted); line-height: 1.6; }
.ezds-form__submit { margin-top: 20px; }
.ezds-turnstile { margin-top: 16px; }

.ezds-leadform {
  padding: clamp(22px, 2.4vw, 34px);
  border-radius: var(--ezds-r-2xl);
  background: var(--ezds-surface);
  border: 1px solid var(--ezds-border-2);
  color: var(--ezds-text);
}
.ezds-leadform--plain { padding: 0; background: transparent; border: 0; }
.ezds-leadform__title { margin: 0 0 6px; color: var(--ezds-heading); font-size: var(--ezds-fs-h3); font-weight: 800; }
.ezds-leadform__sub { margin: 0 0 20px; color: var(--ezds-muted); font-size: var(--ezds-fs-xs); }

.ezds-section--plain { background: transparent; }

.ezds-card__bullets {
  margin-top: 16px; padding-top: 16px;
  border-top: 1px solid var(--ezds-border);
  display: grid; gap: 8px;
}
.ezds-card__bullets li {
  position: relative; padding-inline-start: 18px;
  font-size: var(--ezds-fs-xs); color: var(--ezds-muted); line-height: 1.6;
}
.ezds-card__bullets li::before {
  content: ""; position: absolute; inset-inline-start: 0; top: 8px;
  width: 6px; height: 6px; border-radius: 50%; background: var(--ezds-green);
}
.ezds-card__tags { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 16px; }
.ezds-card--stack { display: flex; flex-direction: column; }
.ezds-head__desc { margin-top: 16px; font-size: var(--ezds-fs-lead); color: var(--ezds-text); }

@media (min-width: 1024px) {
  .ezds-steps--vertical { grid-template-columns: 1fr !important; }
  .ezds-steps--vertical .ezds-step { grid-template-columns: 52px 1fr; padding-bottom: 40px; }
  .ezds-steps--vertical .ezds-step::before {
    left: 25px; right: auto; top: 56px; bottom: 8px;
    width: 2px; height: auto;
    background: linear-gradient(180deg, var(--ezds-green-line), var(--ezds-border));
  }
  .ezds-steps--vertical .ezds-step__body { padding-top: 8px; }
  .ezds-pricing__cards.is-desktop { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

.ezds-sticky--mobile { display: grid; }
@media (min-width: 768px) { .ezds-sticky--mobile { display: none; } }
.ezds-sticky--tablet { display: grid; }
@media (min-width: 1024px) { .ezds-sticky--tablet { display: none; } }
.ezds-sticky--all { display: grid; }

.admin-bar .ezel-header.is-sticky { top: 32px; }
@media screen and (max-width: 782px) {
  .admin-bar .ezel-header.is-sticky { top: 46px; }
}

.ezds-faq__layout--full { grid-template-columns: 1fr !important; }

/* ==========================================================================
   [FIX 1.0.1] TYPOGRAPHY & MÀU CHỮ TRONG PHẠM VI WIDGET
   --------------------------------------------------------------------------
   Bản 1.0.0 bỏ hẳn reset khi port từ HTML sang plugin, khiến p / li / a /
   heading rơi về font và màu chữ của theme (thường là serif + màu tối) nên
   chìm trên nền tối của widget.

   Specificity ở đây là 0,2,1 — đủ thắng các selector thường gặp của theme
   (.entry-content p = 0,2,0) mà vẫn không dùng !important và không đụng
   bất kỳ phần tử nào ngoài widget của plugin.
   ========================================================================== */

[class*="elementor-widget-eztech-"] .ezds-section,
[class*="elementor-widget-eztech-"] .ezds-leadform,
[class*="elementor-widget-eztech-"] .ezds-hero,
.ezds-modal .ezds-modal__dialog,
.ezel-header,
.ezel-footer {
  font-family: var(--ezds-font);
  font-size: var(--ezds-fs-body);
  line-height: var(--ezds-lh-base);
  color: var(--ezds-text);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Chữ thường */
[class*="elementor-widget-eztech-"] .ezds-section :is(p, span, li, dt, dd, td, small, figcaption, label, blockquote),
[class*="elementor-widget-eztech-"] .ezds-leadform :is(p, span, li, label),
.ezds-modal .ezds-modal__dialog :is(p, span, li, label),
.ezel-footer :is(p, span, li),
.ezel-header :is(span, li) {
  font-family: var(--ezds-font);
  color: inherit;
}

/* Heading */
[class*="elementor-widget-eztech-"] .ezds-section :is(h1, h2, h3, h4, h5, h6),
[class*="elementor-widget-eztech-"] .ezds-leadform :is(h2, h3, h4),
.ezds-modal .ezds-modal__dialog :is(h2, h3, h4),
.ezel-footer :is(h2, h3, h4) {
  font-family: var(--ezds-font);
  color: var(--ezds-heading);
  font-weight: 800;
  letter-spacing: -.018em;
  line-height: var(--ezds-lh-tight);
  margin: 0;
  text-wrap: balance;
}
[class*="elementor-widget-eztech-"] .ezds-section :is(h3, h4) {
  font-weight: 700;
  line-height: var(--ezds-lh-snug);
}

/* Đoạn văn không dính margin của theme */
[class*="elementor-widget-eztech-"] .ezds-section :is(p, ul, ol, dl, dd, figure),
[class*="elementor-widget-eztech-"] .ezds-leadform :is(p, ul, ol),
.ezds-modal .ezds-modal__dialog :is(p, ul, ol) {
  margin: 0;
}

/* In đậm */
[class*="elementor-widget-eztech-"] .ezds-section :is(strong, b),
.ezds-modal .ezds-modal__dialog :is(strong, b),
.ezel-footer :is(strong, b) {
  font-weight: 700;
  color: var(--ezds-heading);
}

/* Liên kết */
[class*="elementor-widget-eztech-"] .ezds-section a:not(.ezds-btn),
[class*="elementor-widget-eztech-"] .ezds-leadform a,
.ezds-modal .ezds-modal__dialog a:not(.ezds-btn),
.ezel-footer a,
.ezel-header a:not(.ezds-btn) {
  color: var(--ezds-green);
  text-decoration: none;
  box-shadow: none;
  transition: color .25s ease;
}
[class*="elementor-widget-eztech-"] .ezds-section a:not(.ezds-btn):hover,
.ezds-modal .ezds-modal__dialog a:not(.ezds-btn):hover,
.ezel-footer a:hover {
  color: var(--ezds-green-hover);
  text-decoration: none;
}

/* Breadcrumb dùng màu chú thích, không dùng màu link của theme */
[class*="elementor-widget-eztech-"] .ezds-crumb a { color: var(--ezds-muted); }
[class*="elementor-widget-eztech-"] .ezds-crumb a:hover { color: var(--ezds-green); }
[class*="elementor-widget-eztech-"] .ezds-crumb [aria-current="page"] span {
  color: var(--ezds-heading);
  font-weight: 600;
}

/* Nút — chặn theme ghi đè màu và font */
[class*="elementor-widget-eztech-"] .ezds-btn,
.ezds-modal .ezds-btn,
.ezds-sticky .ezds-sticky__btn,
.ezel-header .ezds-btn {
  font-family: var(--ezds-font);
  text-decoration: none;
  box-shadow: none;
}
[class*="elementor-widget-eztech-"] .ezds-btn--primary,
.ezds-modal .ezds-btn--primary,
.ezel-header .ezds-btn--primary {
  color: var(--ezds-on-green);
  box-shadow: var(--ezds-sh-green);
}
[class*="elementor-widget-eztech-"] .ezds-btn--secondary,
.ezds-modal .ezds-btn--secondary { color: var(--ezds-heading); }
[class*="elementor-widget-eztech-"] .ezds-btn--outline,
[class*="elementor-widget-eztech-"] .ezds-btn--ghost { color: var(--ezds-green); }

/* Ô nhập — theme hay ghi đè nền trắng */
[class*="elementor-widget-eztech-"] :is(.ezds-input, .ezds-select, .ezds-textarea),
.ezds-modal :is(.ezds-input, .ezds-select, .ezds-textarea) {
  font-family: var(--ezds-font);
  background-color: rgba(255, 255, 255, .04);
  color: var(--ezds-heading);
  border: 1px solid var(--ezds-border-2);
}
[class*="elementor-widget-eztech-"] :is(.ezds-input, .ezds-textarea)::placeholder,
.ezds-modal :is(.ezds-input, .ezds-textarea)::placeholder {
  color: var(--ezds-muted);
  opacity: 1;
}

/* Bảng — bỏ style bảng của theme */
[class*="elementor-widget-eztech-"] :is(.ezds-table, .ezds-compare-table) {
  border-collapse: collapse;
  width: 100%;
  margin: 0;
  font-family: var(--ezds-font);
}
[class*="elementor-widget-eztech-"] :is(.ezds-table, .ezds-compare-table) :is(th, td) {
  background-image: none;
}

/* Ảnh trong widget */
[class*="elementor-widget-eztech-"] .ezds-section img { display: block; max-width: 100%; height: auto; }

/* ==========================================================================
   [FIX 1.0.1] HERO KHI CHƯA CÓ ẢNH
   Dashboard có margin-block-start âm để chồng lên đáy ảnh. Nếu quản trị viên
   chưa chọn ảnh, phần tử ảnh không render và dashboard bị kéo lệch lên trên.
   ========================================================================== */
[class*="elementor-widget-eztech-"] .ezds-hero__dash:first-child {
  margin-block-start: 0;
  margin-inline: 0;
}

/* ==========================================================================
   [FIX 1.0.1] KHOẢNG CÁCH KHI THEME BỌC THÊM CONTAINER
   ========================================================================== */
[class*="elementor-widget-eztech-"] > .elementor-widget-container { padding: 0; }
[class*="elementor-widget-eztech-"] .ezds-section > .ezds-container { position: relative; z-index: 1; }

/* ==========================================================================
   [FIX 1.0.2] SECTION TRÀN HẾT CHIỀU NGANG CONTAINER ELEMENTOR
   --------------------------------------------------------------------------
   Widget dạng section được thiết kế để chiếm trọn chiều ngang màn hình, với
   .ezds-container tự lo max-width và padding — đúng như bản HTML gốc.

   Khi thả vào một Container của Elementor có padding (mặc định 10px hoặc theo
   theme), padding bị cộng dồn nên nội dung lệch và bị bó hẹp.

   Elementor đặt --padding-inline-start / --padding-inline-end trên container.
   Custom property kế thừa xuống widget nên bù ngược lại được bằng margin âm.
   ========================================================================== */
.ezds-stretch-yes > .elementor-widget-container,
.ezds-stretch-yes.elementor-widget > .elementor-widget-container {
  margin-inline: calc(-1 * var(--padding-inline-start, 0px)) calc(-1 * var(--padding-inline-end, 0px));
}

/* Container boxed: nới tối đa chiều ngang cho widget section */
.e-con-boxed > .e-con-inner > .ezds-stretch-yes { --content-width: 100%; }

/* Không bao giờ để tràn ngang màn hình */
[class*="elementor-widget-eztech-"] { max-inline-size: 100%; }
[class*="elementor-widget-eztech-"] .ezds-section { overflow-x: clip; }
[class*="elementor-widget-eztech-"] .ezds-hero { overflow: hidden; }

/* ==========================================================================
   [FIX 1.0.2] ĐỒNG BỘ .ezds-head__desc VỚI BẢN HTML GỐC
   ========================================================================== */
[class*="elementor-widget-eztech-"] .ezds-head__desc {
  margin-block-start: var(--ezds-sp-4);
  font-size: var(--ezds-fs-lead);
  line-height: var(--ezds-lh-base);
  color: var(--ezds-text);
}
[class*="elementor-widget-eztech-"] .ezds-head--center .ezds-head__desc { margin-inline: auto; }

/* Card grid: bảo đảm chiều cao đều nhau như bản gốc */
[class*="elementor-widget-eztech-"] .ezds-grid > article { block-size: 100%; }

/* ==========================================================================
   [FIX 1.0.3] LỖI GỐC: SECTION KHÔNG CÓ NỀN → LỘ NỀN TRẮNG CỦA THEME
   --------------------------------------------------------------------------
   Bản HTML đặt nền tối trên .ezds-landing bọc ngoài toàn bộ trang, còn
   .ezds-section chỉ lo padding. Khi tách thành widget Elementor thì không còn
   phần tử bọc ngoài đó, nên section preset "base" trong suốt và lộ nền trắng
   của theme — thấy rõ ở section So sánh, Quy trình và FAQ.

   Từ 1.0.3, mỗi section tự chịu trách nhiệm về nền của chính nó.
   ========================================================================== */
[class*="elementor-widget-eztech-"] .ezds-section,
[class*="elementor-widget-eztech-"] .ezds-hero {
  background-color: var(--ezds-bg);
  color: var(--ezds-text);
}
[class*="elementor-widget-eztech-"] .ezds-section--alt  { background-color: var(--ezds-bg-alt); }
[class*="elementor-widget-eztech-"] .ezds-section--glow { background-color: var(--ezds-bg-alt); }
[class*="elementor-widget-eztech-"] .ezds-section--deep { background-color: var(--ezds-bg-deep); }
[class*="elementor-widget-eztech-"] .ezds-section--plain { background-color: transparent; }

/* Widget bọc ngoài cũng lấy nền để không hở khe sáng giữa các section */
[class*="elementor-widget-eztech-ds-"] { background-color: var(--ezds-bg); }
[class*="elementor-widget-eztech-"] .ezds-leadform { background-color: var(--ezds-surface); }

/* ==========================================================================
   [FIX 1.0.3] BREADCRUMB — khối CSS này bị regex cắt nhầm cùng phần header
   ở bản 1.0.0 nên breadcrumb xếp dọc thay vì nằm ngang có dấu phân cách.
   ========================================================================== */
[class*="elementor-widget-eztech-"] .ezds-crumb { margin-block-end: var(--ezds-sp-5); }
[class*="elementor-widget-eztech-"] .ezds-crumb ol {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
[class*="elementor-widget-eztech-"] .ezds-crumb li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: var(--ezds-fs-xs);
  margin: 0;
}
[class*="elementor-widget-eztech-"] .ezds-crumb li + li::before {
  content: "/";
  color: var(--ezds-border-3);
  font-size: var(--ezds-fs-xs);
}

/* ==========================================================================
   [FIX 1.0.3] TIMELINE QUY TRÌNH — tiêu đề bước bị mất hút
   Trên nền trắng của theme, h3 màu trắng thành vô hình. Sau khi section đã có
   nền tối thì hiện lại, nhưng ép thêm màu cho chắc.
   ========================================================================== */
[class*="elementor-widget-eztech-"] .ezds-step__body h3 {
  color: var(--ezds-heading);
  font-size: var(--ezds-fs-h4);
  font-weight: 700;
  margin: 0 0 8px;
}
[class*="elementor-widget-eztech-"] .ezds-step__body p { color: var(--ezds-text); font-size: var(--ezds-fs-sm); }
[class*="elementor-widget-eztech-"] .ezds-step__num { color: var(--ezds-on-green); }

/* ==========================================================================
   [FIX 1.0.3] FAQ — mục accordion phải là nền tối, chữ sáng
   ========================================================================== */
[class*="elementor-widget-eztech-"] .ezds-faq__item {
  background-color: var(--ezds-surface);
  border: 1px solid var(--ezds-border);
}
[class*="elementor-widget-eztech-"] .ezds-faq__item.is-open {
  background-color: var(--ezds-surface-2);
  border-color: var(--ezds-green-line);
}
[class*="elementor-widget-eztech-"] .ezds-faq__q {
  background-color: transparent;
  color: var(--ezds-heading);
  border: 0;
  cursor: pointer;
}
[class*="elementor-widget-eztech-"] .ezds-faq__q:hover { background-color: rgba(255, 255, 255, .03); }
[class*="elementor-widget-eztech-"] .ezds-faq__heading { margin: 0; }
[class*="elementor-widget-eztech-"] .ezds-faq__a p { color: var(--ezds-text); }

/* ==========================================================================
   [FIX 1.0.3] BẢNG SO SÁNH — nền tối, không để theme tô trắng
   ========================================================================== */
[class*="elementor-widget-eztech-"] .ezds-table-scroll {
  background-color: var(--ezds-surface);
  border: 1px solid var(--ezds-border);
}
[class*="elementor-widget-eztech-"] .ezds-compare-table tbody :is(th, td),
[class*="elementor-widget-eztech-"] .ezds-table tbody :is(th, td) {
  background-color: transparent;
  color: var(--ezds-text);
}
[class*="elementor-widget-eztech-"] .ezds-compare-table th[scope="row"] { color: var(--ezds-heading); }
[class*="elementor-widget-eztech-"] .ezds-compare-table .ezds-col-dedi { background-color: rgba(53, 222, 124, .055); }
[class*="elementor-widget-eztech-"] .ezds-compare-table thead .ezds-col-dedi {
  background-image: var(--ezds-grad-btn);
  color: var(--ezds-on-green);
}
[class*="elementor-widget-eztech-"] .ezds-compare-table thead .ezds-col-dedi :is(small, span) { color: var(--ezds-on-green); }

/* ==========================================================================
   [FIX 1.0.3] CARD — bảo đảm nền và viền đúng thiết kế
   ========================================================================== */
[class*="elementor-widget-eztech-"] .ezds-card,
[class*="elementor-widget-eztech-"] .ezds-plan {
  background-color: var(--ezds-surface);
  border: 1px solid var(--ezds-border);
}
[class*="elementor-widget-eztech-"] .ezds-plan--featured {
  background-color: var(--ezds-surface-2);
  border-color: var(--ezds-green);
}
