/* ============================================================
   Blitzball Labs — Licensed download page
   Inherits the pricing page theme tokens (pricing.css) and
   recolors itself once the product behind the key is known.
   ============================================================ */
.dlg-wrap{position:relative;z-index:5;max-width:720px;margin:0 auto;
  padding:150px clamp(20px,5vw,40px) 90px}
.dlg-head{text-align:center;margin-bottom:42px}
.dlg-head h1{font-family:'Sora',sans-serif;font-weight:900;letter-spacing:-.045em;
  line-height:1.05;font-size:clamp(2.2rem,5.6vw,3.9rem)}
.dlg-head p{color:var(--text-dim);margin-top:18px;font-size:1.02rem}

/* payment-return banner */
.dlg-paid{display:flex;gap:16px;align-items:flex-start;margin-bottom:26px;padding:20px 24px;
  border-radius:18px;border:1px solid rgba(57,255,122,.32);
  background:linear-gradient(135deg,rgba(57,255,122,.09),rgba(0,255,213,.05));
  backdrop-filter:blur(12px);animation:dlgIn .55s cubic-bezier(.16,1,.3,1)}
.dlg-paid-ico{flex:none;width:34px;height:34px;border-radius:50%;display:flex;
  align-items:center;justify-content:center;font-weight:800;color:#04120a;
  background:linear-gradient(135deg,#39ff7a,#00ffd5);box-shadow:0 0 22px rgba(57,255,122,.5)}
.dlg-paid b{display:block;font-family:'Sora',sans-serif;font-size:15px;margin-bottom:4px}
.dlg-paid span{color:var(--text-dim);font-size:13.2px;line-height:1.65}
@keyframes dlgIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

/* key form */
.dlg-card{background:var(--px-card);border:1px solid var(--px-bd);border-radius:24px;
  padding:38px clamp(22px,4vw,38px);backdrop-filter:blur(18px);
  box-shadow:0 26px 70px -30px rgba(0,0,0,.8)}
.dlg-lab{display:block;font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--text-muted);margin-bottom:10px}
.dlg-lab i{font-style:normal;text-transform:none;letter-spacing:.04em;opacity:.7}
.dlg-key,.dlg-mail{width:100%;background:rgba(0,0,0,.42);border:1px solid var(--px-bd);
  border-radius:14px;padding:16px 18px;color:var(--text);font-size:16px;
  transition:border-color .3s,box-shadow .3s}
.dlg-key{font-family:'JetBrains Mono',monospace;letter-spacing:2.5px;text-transform:uppercase;
  margin-bottom:24px}
.dlg-mail{font-family:var(--font-body);letter-spacing:normal;margin-bottom:28px}
.dlg-key:focus,.dlg-mail:focus{outline:none;border-color:var(--px-bd-hi);
  box-shadow:0 0 0 4px var(--px-glow)}
.dlg-key::placeholder,.dlg-mail::placeholder{color:var(--text-faint);letter-spacing:1.5px}

.dlg-go{position:relative;width:100%;border:none;cursor:pointer;border-radius:100px;
  padding:17px 26px;font-family:var(--font-body);font-weight:700;font-size:15px;color:#04010c;
  background:linear-gradient(135deg,var(--px-a),var(--px-b));
  box-shadow:0 14px 38px -12px var(--px-glow);
  display:flex;align-items:center;justify-content:center;gap:10px;
  transition:transform .25s,filter .25s,box-shadow .25s}
.dlg-go:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.1)}
.dlg-go:disabled{opacity:.62;cursor:wait;transform:none}
.dlg-spin{width:16px;height:16px;border-radius:50%;border:2px solid rgba(0,0,0,.28);
  border-top-color:#04010c;animation:dlgSpin .7s linear infinite}
@keyframes dlgSpin{to{transform:rotate(360deg)}}

.dlg-err{margin-top:18px;padding:13px 17px;border-radius:12px;font-size:13.2px;line-height:1.6;
  color:#ffb4cf;border:1px solid rgba(255,46,136,.35);background:rgba(255,46,136,.08)}
.dlg-small{margin-top:20px;text-align:center;color:var(--text-muted);font-size:12.5px}
.dlg-small a{color:var(--px-a);text-decoration:underline;text-decoration-color:var(--px-bd)}

/* unlocked state */
.dlg-ok{animation:dlgIn .6s cubic-bezier(.16,1,.3,1)}
.dlg-ok-head{text-align:center;margin-bottom:32px}
.dlg-ok-ico{width:72px;height:72px;margin:0 auto 20px;border-radius:22px;display:flex;
  align-items:center;justify-content:center;font-size:34px;color:#04010c;
  background:linear-gradient(135deg,var(--px-a),var(--px-b));
  box-shadow:0 18px 48px -14px var(--px-a)}
.dlg-ok-head h2{font-family:var(--px-font,'Sora',sans-serif);font-weight:900;
  font-size:clamp(1.7rem,4.4vw,2.6rem);letter-spacing:-.03em}
.dlg-ok-head h2 em{font-style:normal;color:var(--px-a)}
.dlg-ok-head p{color:var(--text-dim);margin-top:12px;font-size:.98rem}

.dlg-files{display:grid;gap:12px}
.dlg-file{display:flex;align-items:center;gap:16px;padding:18px 22px;border-radius:16px;
  border:1px solid var(--px-bd);background:var(--px-card);backdrop-filter:blur(12px);
  transition:transform .3s,border-color .3s,box-shadow .3s}
.dlg-file:hover{transform:translateX(5px);border-color:var(--px-bd-hi);
  box-shadow:0 14px 40px -20px var(--px-glow)}
.dlg-file-ico{flex:none;width:42px;height:42px;border-radius:12px;display:flex;
  align-items:center;justify-content:center;font-size:20px;
  border:1px solid var(--px-bd);color:var(--px-a);background:rgba(0,0,0,.3)}
.dlg-file-txt{flex:1;min-width:0}
.dlg-file-name{font-family:'Sora',sans-serif;font-weight:700;font-size:15px}
.dlg-file-meta{font-family:var(--font-mono);font-size:11.5px;color:var(--text-muted);margin-top:3px}
.dlg-file-arrow{flex:none;font-size:18px;color:var(--px-a)}
.dlg-file.auto{border-color:var(--px-bd-hi);box-shadow:0 0 0 1px var(--px-bd-hi)}

.dlg-exp{margin-top:22px;text-align:center;font-family:var(--font-mono);font-size:11.5px;
  color:var(--text-muted);letter-spacing:.06em}
.dlg-next{margin-top:30px;padding:22px 24px;border-radius:18px;
  border:1px dashed var(--px-bd-hi);background:rgba(0,0,0,.24)}
.dlg-next b{display:block;font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--px-a);margin-bottom:8px}
.dlg-next span{color:var(--text-dim);font-size:13.4px;line-height:1.7}

@media(prefers-reduced-motion:reduce){
  .dlg-paid,.dlg-ok{animation:none}
}
