/* Earn module UI (post bank modal) */

.kp-earn-modal { position: fixed; inset: 0; display: none; z-index: 9999; }
.kp-earn-modal.is-open { display: block; }

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

.kp-earn-modal__dialog {
  position: relative;
  width: min(720px, calc(100vw - 24px));
  margin: 56px auto;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(11, 18, 32, .92);
  box-shadow: 0 12px 48px rgba(0,0,0,.45);
  overflow: hidden;
}

.kp-earn-modal__head {
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  padding:14px 16px;
  border-bottom:1px solid rgba(255,255,255,.08);
}

.kp-earn-modal__title { font-weight:700; letter-spacing:.2px; }

.kp-earn-modal__close {
  border:0; background:transparent; color:inherit;
  font-size:18px; padding:6px 10px; border-radius:12px; cursor:pointer;
}
.kp-earn-modal__close:hover { background: rgba(255,255,255,.07); }

.kp-earn-modal__body { padding: 16px; }

.kp-earn-modal__loading, .kp-earn-modal__error {
  padding:18px; border-radius:16px;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.08);
}

.kp-earn-bank__stats {
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:10px;
  margin-bottom:14px;
}

.kp-earn-stat {
  padding:12px; border-radius:16px;
  background: rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
}
.kp-earn-stat .k { opacity:.78; font-size:12px; }
.kp-earn-stat .v { font-size:18px; font-weight:800; margin-top:2px; }

.kp-earn-withdraw {
  padding:12px; border-radius:16px;
  background: rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  margin-bottom:14px;
}
.kp-earn-withdraw__label { display:block; font-size:12px; opacity:.8; margin-bottom:8px; }
.kp-earn-withdraw__row { display:flex; gap:10px; align-items:center; }

.kp-earn-withdraw__input {
  flex:1; min-width:0;
  padding:10px 12px; border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.18);
  color:inherit;
}

.kp-earn-withdraw__btn {
  padding:10px 14px; border-radius:14px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  color:inherit;
  cursor:pointer;
  font-weight:700;
}
.kp-earn-withdraw__btn:hover { background: rgba(255,255,255,.10); }

.kp-earn-withdraw__hint { font-size:12px; opacity:.75; margin-top:8px; }
.kp-earn-withdraw__msg { font-size:12px; margin-top:8px; }

.kp-earn-bank__table-wrap {
  padding:12px; border-radius:16px;
  background: rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
}
.kp-earn-bank__table-title { font-weight:700; margin:6px 0 10px; }

.kp-earn-bank__table {
  width:100%;
  border-collapse:collapse;
  font-size:13px;
}
.kp-earn-bank__table th, .kp-earn-bank__table td {
  padding:10px 8px;
  border-bottom:1px solid rgba(255,255,255,.08);
  text-align:left;
}

@media (max-width: 520px) {
  .kp-earn-modal__dialog { margin: 18px auto; }
  .kp-earn-bank__stats { grid-template-columns: 1fr; }
  .kp-earn-bank__table th:nth-child(5),
  .kp-earn-bank__table td:nth-child(5) { display:none; }
}
