.panpoint-kb{
  position:relative;
  max-width:860px;margin:0 auto;
  padding:30px 20px;
  font-family:Inter,Arial,sans-serif;
  color:#132a4d;
  background:linear-gradient(135deg,#fdf6e3,#f9f1d8);
  border:3px solid #F0D27F;border-radius:14px;overflow:hidden;
}
.panpoint-kb .kb-bg{
  position:absolute;inset:0;
  background-image:
    linear-gradient(90deg,rgba(240,210,127,.08) 1px,transparent 1px),
    linear-gradient(rgba(240,210,127,.08) 1px,transparent 1px);
  background-size:34px 34px;pointer-events:none;
}
.panpoint-kb .kb-inner{ position:relative; z-index:1; }
.panpoint-kb .kb-title{ font-family:'Playfair Display',serif;color:#B8860B;font-size:1.8em;margin:0 0 6px; }
.panpoint-kb .kb-subtitle{ margin:0 0 14px;color:#1f2a44; }
.kb-progress{ height:8px;background:rgba(240,210,127,.25);border-radius:999px;overflow:hidden;margin:10px 0 16px; }
.kb-progress-bar{ height:100%; background:linear-gradient(90deg,#ff00aa,#aaff00); width:0%; }
.kb-card{ background:rgba(255,255,255,.78);border:1px solid rgba(240,210,127,.6);border-radius:12px;padding:18px; }
.kb-nav{ display:flex;gap:10px;justify-content:flex-end;margin-top:12px; }
.kb-btn{ cursor:pointer;font-weight:700;padding:10px 18px;border-radius:999px; }
.kb-btn-ghost{ border:2px solid #F0D27F;background:transparent;color:#B8860B; }
.kb-btn-primary{ border:none;background:#ff00aa;color:#fff;box-shadow:0 0 12px rgba(255,0,170,.5); }
.kb-result{ margin-top:16px;background:rgba(255,255,255,.9);border:1px solid rgba(240,210,127,.6);border-radius:12px;padding:16px; }
.kb-ctas{ text-align:center;margin-top:14px; }
.kb-cta{ display:inline-block;margin:6px 8px;padding:12px 24px;border-radius:30px;background:linear-gradient(135deg,#F0D27F,#b88a2e);color:#111;text-decoration:none;font-weight:700;box-shadow:0 6px 16px rgba(184,138,46,.35); }
.kb-honeypot{ position:absolute; left:-9999px; top:-9999px; opacity:0; height:0; width:0; }

/* Inputs */
.kb-card input[type="text"],
.kb-card input[type="email"],
.kb-card textarea,
.kb-card select{
  width:100%;padding:10px;border:1px solid rgba(240,210,127,.6);border-radius:10px;background:#fff;
}
.kb-card label.kb-opt{ display:block;padding:10px 12px;margin:8px 0;border:1px solid rgba(240,210,127,.6);border-radius:10px;cursor:pointer;background:#fff; }
