  :root{
    --brand:#5b2be0; --brand2:#7f54b3; --ink:#222838; --soft:#69718a;
    --line:#e6e6f0; --bg1:#f3f0fb; --bg2:#ece9fa; --error:#e74c3c; --accent:#00b894; --radius:16px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);
    min-height:100vh;background:linear-gradient(160deg,var(--bg1),var(--bg2));
    display:flex;align-items:center;justify-content:center;padding:40px 20px;line-height:1.55}
  a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}
  .card{width:100%;max-width:560px;background:#fff;border-radius:var(--radius);
    box-shadow:0 24px 60px rgba(70,40,140,.18);padding:40px 44px 34px;text-align:center}

  /* WC Affiliate logo */
  .brand-logo{display:inline-flex;align-items:center;gap:10px;margin-bottom:14px}
  .brand-logo .name{font-weight:800;font-size:21px;letter-spacing:-.4px;color:#262b3b}

  /* You bought through CodeRedeemer badge */
  .pc-badge{display:inline-flex;align-items:center;gap:8px;background:#f1ecfc;
    border:1px solid #e2d8f8;border-radius:999px;padding:7px 16px;margin-bottom:20px;
    font-size:13.5px;font-weight:600;color:#5b4a7a}
  .pc-badge .pc-logo{display:inline-flex;align-items:center;gap:5px}
  .pc-badge .pc-word b{color:#1f2a3a}
  .pc-badge .pc-word span{color:#f0563f}

  h1{font-size:30px;letter-spacing:-.5px;margin-bottom:10px}
  .sub{color:var(--soft);font-size:15px;margin-bottom:28px}
  form{text-align:left}
  .field{margin-bottom:15px}
  .field label{display:block;font-size:12.5px;font-weight:600;color:var(--soft);
    text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px}
  .field label .req{color:var(--error)}
  .field label .opt{color:#a4abbd;font-weight:500;text-transform:none;letter-spacing:0}
  .group-label{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;
    color:var(--brand);margin:24px 0 13px;text-align:left;display:flex;align-items:center;gap:10px}
  .group-label::after{content:"";flex:1;height:1px;background:var(--line)}
  .group-label:first-child{margin-top:0}
  .pw-wrap{position:relative}
  .pw-wrap input{padding-right:60px}
  .pw-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;
    cursor:pointer;font-size:12px;font-weight:700;color:var(--brand);padding:4px 6px}
  .pw-toggle:hover{text-decoration:underline}
  .field input,.field select{width:100%;padding:15px 16px;border:1.5px solid var(--line);border-radius:11px;
    font-size:15px;font-family:inherit;color:var(--ink);background:#fff;transition:border-color .15s,box-shadow .15s,background .15s}
  .field input:hover,.field select:hover{border-color:color-mix(in srgb,var(--brand) 35%,var(--line))}
  .field input:focus,.field select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 18%,transparent)}
  .field input::placeholder{color:#a4abbd}
  .field input:disabled,.field select:disabled{background:#f5f5f7;color:#a4abbd;cursor:not-allowed;border-color:var(--line)}
  .field input:-webkit-autofill,.field input:-webkit-autofill:focus{-webkit-text-fill-color:var(--ink);box-shadow:0 0 0 100px #fff inset,0 0 0 3px color-mix(in srgb,var(--brand) 18%,transparent);transition:background-color 9999s ease-out}
  .two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  @media(max-width:480px){.two{grid-template-columns:1fr}}
  .code-field input{font-family:"SF Mono",Menlo,Consolas,monospace;letter-spacing:3px;text-transform:uppercase;
    text-align:center;font-weight:600;font-size:17px;border:2px dashed var(--brand);background:color-mix(in srgb,var(--brand) 5%,#fff)}
  .code-field input:hover{background:color-mix(in srgb,var(--brand) 9%,#fff)}
  .code-field input:focus{background:#fff;border-style:solid;box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 18%,transparent)}
  .err-msg{display:none;font-size:12.5px;color:var(--error);margin-top:5px;font-weight:500}
  .field.invalid input,.field.invalid select{border-color:var(--error)}
  .field.invalid input:focus,.field.invalid select:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--error) 18%,transparent)}
  .field.invalid .err-msg{display:block}
  .submit{width:100%;margin-top:8px;background:linear-gradient(135deg,#2b2be0,#5b2be0 60%,#7f3bd6);color:#fff;
    border:none;padding:16px;font-size:15px;font-weight:700;letter-spacing:.5px;border-radius:11px;cursor:pointer;
    box-shadow:0 12px 26px rgba(91,43,224,.30);transition:transform .1s,box-shadow .2s}
  .submit:hover{box-shadow:0 16px 34px rgba(91,43,224,.40)}.submit:active{transform:translateY(1px)}
  .submit:disabled{opacity:.65;cursor:not-allowed}
  .privacy{font-size:12px;color:var(--soft);text-align:center;margin-top:14px}
  .foot{margin-top:24px;font-size:12.5px;color:var(--soft)}
  .success{display:none}.success.show{display:block}.form-view.hide{display:none}
  .tick{width:64px;height:64px;margin:0 auto 18px;border-radius:50%;background:var(--accent);color:#fff;
    font-size:34px;display:grid;place-items:center;animation:pop .35s ease}
  @keyframes pop{0%{transform:scale(.4);opacity:0}100%{transform:scale(1);opacity:1}}
  .success h1{margin-bottom:10px}.success p{color:var(--soft);font-size:15px;margin-bottom:8px}

/* Inline privacy lock icon — centered row */
.privacy--lock{display:flex;align-items:center;justify-content:center;gap:5px}
.privacy__icon{flex-shrink:0}

/* Success CTA button */
.success__cta{display:inline-block;margin-top:22px;padding:14px 28px;border-radius:11px;
  background:var(--brand);color:#fff;font-size:15px;font-weight:700;text-decoration:none;
  box-shadow:0 12px 26px rgba(91,43,224,.30);transition:transform .1s,box-shadow .2s}
.success__cta:hover{box-shadow:0 16px 34px rgba(91,43,224,.40);text-decoration:none}
.success__cta:active{transform:translateY(1px)}
