/* TAKAS Website V39 — server-validated coupon entry. */
.takas-v39-coupon {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: auto minmax(190px, .7fr) minmax(320px, 1.3fr);
  gap: clamp(16px, 2.4vw, 28px);
  align-items: center;
  margin: 0 0 18px;
  padding: clamp(19px, 3vw, 30px);
  overflow: hidden;
  border: 1px solid #14e493;
  border-radius: var(--radius, 20px);
  background:
    radial-gradient(circle at 7% 20%, rgba(0, 220, 134, .21), transparent 21rem),
    linear-gradient(145deg, rgba(8, 49, 35, .98), rgba(7, 18, 19, .99));
  box-shadow: 0 0 0 1px rgba(0, 220, 134, .18), 0 0 30px rgba(0, 220, 134, .22), 0 18px 54px rgba(0, 0, 0, .38);
}

.takas-v39-coupon::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -45% -15%;
  background: linear-gradient(105deg, transparent 40%, rgba(129, 255, 204, .08) 50%, transparent 60%);
  transform: translateX(-42%);
  animation: takas-v39-coupon-sheen 5.5s ease-in-out infinite;
  pointer-events: none;
}

@keyframes takas-v39-coupon-sheen {
  0%, 55% { transform: translateX(-42%); }
  82%, 100% { transform: translateX(42%); }
}

.takas-v39-coupon-mark {
  display: grid;
  place-items: center;
  width: 66px;
  height: 66px;
  border: 1px solid rgba(158, 255, 214, .68);
  border-radius: 18px;
  background: linear-gradient(145deg, #16f29d, #009f61);
  box-shadow: 0 0 22px rgba(0, 232, 142, .42);
  color: #032116;
}

.takas-v39-coupon-mark span { font-size: 31px; font-weight: 1000; line-height: 1; }
.takas-v39-coupon-copy { min-width: 0; }
.takas-v39-coupon-copy h2 { margin: 2px 0 6px; font-size: clamp(22px, 3vw, 32px); letter-spacing: -.025em; }
.takas-v39-coupon-copy > p:last-child { margin: 0; color: #c5e7d8; font-size: 13px; line-height: 1.55; }
.takas-v39-coupon-kicker { margin: 0; color: #72ffc1; font-size: 10px; font-weight: 950; letter-spacing: .16em; }
.takas-v39-coupon-entry { min-width: 0; }
.takas-v39-coupon-entry > label { margin-bottom: 7px; color: #edfff7; font-size: 12px; letter-spacing: .04em; }
.takas-v39-coupon-controls { display: grid; grid-template-columns: minmax(150px, 1fr) auto auto; gap: 9px; align-items: stretch; }
.takas-v39-coupon-controls input {
  min-width: 0;
  border-color: #399b72;
  background: rgba(3, 17, 13, .9);
  font-weight: 900;
  letter-spacing: .055em;
  text-transform: uppercase;
}
.takas-v39-coupon-controls input:focus-visible,
.takas-v39-coupon-validate:focus-visible,
.takas-v39-coupon-clear:focus-visible { outline: 3px solid #b8ffdc; outline-offset: 3px; }
.takas-v39-coupon-validate,
.takas-v39-coupon-clear {
  min-height: 49px;
  padding: 10px 15px;
  border-radius: 12px;
  font: inherit;
  font-weight: 950;
  cursor: pointer;
}
.takas-v39-coupon-validate { border: 1px solid #75ffc2; background: linear-gradient(145deg, #18e895, #07915d); color: #031d13; box-shadow: 0 8px 22px rgba(0, 220, 134, .25); }
.takas-v39-coupon-clear { border: 1px solid #527263; background: #12261d; color: #e6fff4; }
.takas-v39-coupon-validate:disabled,
.takas-v39-coupon-clear:disabled { opacity: .55; cursor: wait; box-shadow: none; }
.takas-v39-coupon-status { min-height: 22px; margin: 8px 0 0; color: #b7d8ca; font-size: 12px; line-height: 1.45; }
.takas-v39-coupon-note { grid-column: 2 / -1; margin: -8px 0 0; color: #97bcae; font-size: 11px; }
.takas-v39-coupon[data-state="valid"] { border-color: #63ffbd; box-shadow: 0 0 0 1px rgba(99, 255, 189, .28), 0 0 36px rgba(0, 232, 142, .3), 0 18px 54px rgba(0, 0, 0, .38); }
.takas-v39-coupon[data-state="valid"] .takas-v39-coupon-status { color: #7dffc3; font-weight: 800; }
.takas-v39-coupon[data-state="invalid"] .takas-v39-coupon-status { color: #ff9cae; font-weight: 750; }
.takas-v39-coupon[data-state="checking"] .takas-v39-coupon-status { color: #fff0a9; }

/* V38 created this panel only after a sticker click. V39 keeps one permanent, validated panel instead. */
#takasV38ServerCoupon { display: none !important; }

.brand-domain { color: #7dffc3 !important; text-transform: none; letter-spacing: .025em !important; }

@media (max-width: 900px) {
  .takas-v39-coupon { grid-template-columns: auto 1fr; }
  .takas-v39-coupon-entry,
  .takas-v39-coupon-note { grid-column: 1 / -1; }
  .takas-v39-coupon-note { margin-top: -2px; }
}

@media (max-width: 620px) {
  .takas-v39-coupon { grid-template-columns: 48px minmax(0, 1fr); gap: 13px; padding: 16px 14px; }
  .takas-v39-coupon-mark { width: 48px; height: 48px; border-radius: 14px; }
  .takas-v39-coupon-mark span { font-size: 24px; }
  .takas-v39-coupon-controls { grid-template-columns: 1fr; }
  .takas-v39-coupon-validate,
  .takas-v39-coupon-clear { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .takas-v39-coupon::after { animation: none; transform: none; }
}
