/* ===== Kudo eSIM Balance — ORDER + CONTRAST + MARGINS (Elementor-safe) ===== */
.data-usage-checker{
  --kc-purple:#5C2E83;
  --kc-purple-600:#4A256A;
  --kc-grey-050:#FBFAFC;
  --kc-grey-100:#F3F3F5;
  --kc-grey-200:#E8E7EC;
}

/* 1) Normalize container spacing (no layout fights with Elementor) */
.data-usage-checker .packages,
.data-usage-checker .package-list,
.data-usage-checker .results{
  display:flex;
  flex-direction:column;
  gap:14px;              /* consistent vertical rhythm */
}

/* 2) Card base */
.data-usage-checker .package,
.data-usage-checker .card,
.data-usage-checker .result{
  background:#fff;
  border:1px solid var(--kc-grey-200);
  border-radius:14px;
  padding:16px;
  margin:0;              /* remove random margins from themes */
  order:1;               /* default order; active will override */
}

/* 3) ORDER: put ACTIVE first (safe, uses :has OR explicit .active) */
.data-usage-checker .packages > *:has(.progress, .progress-bar, .usage, .usage-bar),
.data-usage-checker .package.active,
.data-usage-checker .package.is-active,
.data-usage-checker .package[data-active="true"]{
  order:0;
}

/* 4) ACTIVE visual — purple card with high contrast text & bar */
.data-usage-checker .packages > *:has(.progress, .progress-bar, .usage, .usage-bar),
.data-usage-checker .package.active,
.data-usage-checker .package.is-active,
.data-usage-checker .package[data-active="true"]{
  background:var(--kc-purple);
  border-color:transparent;
  color:#fff;
}
/* force readable text only INSIDE active card */
.data-usage-checker .packages > *:has(.progress, .progress-bar, .usage, .usage-bar) *,
.data-usage-checker .package.active *,
.data-usage-checker .package.is-active *,
.data-usage-checker .package[data-active="true"] *{
  color:#fff !important;
}
/* progress inside active card */
.data-usage-checker .packages > *:has(.progress, .progress-bar, .usage, .usage-bar) .progress,
.data-usage-checker .package.active .progress{
  height:14px;
  background:rgba(255,255,255,.25);
  border-radius:999px;
  overflow:hidden;
  border:none;
}
.data-usage-checker .packages > *:has(.progress, .progress-bar, .usage, .usage-bar) .progress .progress-bar,
.data-usage-checker .package.active .progress .progress-bar{
  background:#fff;
  height:100%;
}

/* 5) Inactive / expired cards = soft grey */
.data-usage-checker .package.expired,
.data-usage-checker .package.is-inactive,
.data-usage-checker .package.-inactive{
  background:var(--kc-grey-050);
}

/* 6) Buttons — purple only, no blue anywhere */
.data-usage-checker button,
.data-usage-checker .button,
.data-usage-checker input[type="submit"]{
  background:var(--kc-purple) !important;
  color:#fff !important;
  border:none !important;
  border-radius:12px !important;
  padding:12px 16px !important;
  font-weight:700 !important;
}
.data-usage-checker button:hover,
.data-usage-checker .button:hover,
.data-usage-checker input[type="submit"]:hover{
  background:var(--kc-purple-600) !important;
}

/* 7) Links inside plugin — purple, not blue */
.data-usage-checker a{ color:var(--kc-purple); }
.data-usage-checker a:hover{ text-decoration:underline; }

/* 8) Progress base (non-active cards) */
.data-usage-checker .progress{
  width:100%;
  height:12px;
  border-radius:999px;
  background:var(--kc-grey-100);
  overflow:hidden;
  border:1px solid var(--kc-grey-200);
}
.data-usage-checker .progress .progress-bar{
  height:100%;
  background:var(--kc-purple);
  transition:width .6s ease;
}

/* Align KudoSim ID row nicely */
.data-usage-checker form {
  display: flex;
  align-items: center;   /* center vertically */
  gap: 12px;             /* space between label, input and button */
  flex-wrap: nowrap;     /* keep them in one line */
}

.data-usage-checker label {
  font-weight: 600;
  margin-right: 4px;
}

.data-usage-checker input[type="text"] {
  flex: 1;               /* expand input */
  min-width: 220px;      /* keep readable */
}

.data-usage-checker input[type="submit"],
.data-usage-checker button {
  flex-shrink: 0;        /* button stays compact */
}

/* Desktop layout */
.data-usage-checker form {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: nowrap;
}

/* Mobile fix */
@media (max-width: 600px) {
  .data-usage-checker form {
    flex-wrap: wrap;              /* lejon të kalojnë në dy rreshta */
    justify-content: center;      /* qendron input + buton */
  }

  .data-usage-checker label {
    width: 100%;                  /* label del vetë sipër */
    margin-bottom: 6px;
    text-align: center;           /* label në qendër */
  }

  .data-usage-checker input[type="text"] {
    flex: 1 1 100%;                /* input merr gjerësi të plotë */
    min-width: auto;
  }

  .data-usage-checker input[type="submit"],
  .data-usage-checker button {
    flex: 1 1 100%;                /* butoni merr gjerësi të plotë në rreshtin e vet */
    margin-top: 8px;
  }
}
