/* ============================================================
   LEXTOVA — secure application link layer
   Additive only. Reuses the existing engraved tokens from
   lx.css: no new fonts, no new colours, no new requests.
   Covers: trust panel, resume note, consent block.
   ============================================================ */

/* ---- trust panel (sits above the form, always visible) ---- */
.lx-trust{
  display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:start;
  position:relative;overflow:hidden;
  border:1px solid var(--lx-rule);border-radius:6px;
  background:linear-gradient(180deg,var(--lx-panel-2),rgba(17,19,21,.35));
  padding:20px 22px 20px 24px;
  margin-bottom:clamp(32px,4vw,44px);
}
.lx-trust::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:2px;
  background:linear-gradient(180deg,var(--lx-chrome-mid),var(--lx-gold) 45%,transparent);
}
.lx-trust__mark{color:var(--lx-gold);opacity:.85;padding-top:2px}
.lx-trust__mark svg{display:block}
.lx-trust__head{
  font-family:var(--lx-display);font-weight:500;font-size:18px;
  letter-spacing:-.01em;line-height:1.2;color:var(--lx-ink);margin-bottom:11px;
}
.lx-trust__list{list-style:none;display:flex;flex-direction:column;gap:7px}
.lx-trust__list li{
  position:relative;padding-left:15px;
  font-size:13.5px;line-height:1.55;color:var(--lx-ink-dim);
}
.lx-trust__list li::before{
  content:"";position:absolute;left:0;top:.66em;width:6px;height:1px;
  background:var(--lx-gold);opacity:.75;
}
.lx-trust__foot{
  margin-top:13px;
  font-family:var(--lx-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;
}
.lx-trust__foot a{
  color:var(--lx-ink-faint);border-bottom:1px solid var(--lx-rule);
  transition:color .2s ease,border-color .2s ease;
}
.lx-trust__foot a:hover{color:var(--lx-gold-hi);border-color:var(--lx-gold)}

/* ---- restored-progress note (built by JS, never present as hidden markup) ---- */
.lx-resume{
  display:flex;align-items:flex-start;gap:14px;
  border:1px solid rgba(201,162,74,.34);border-radius:5px;
  background:var(--lx-gold-soft);
  padding:12px 14px;margin-bottom:24px;
}
.lx-resume p{flex:1;font-size:13.5px;line-height:1.5;color:var(--lx-ink-dim)}
.lx-resume p b{color:var(--lx-ink);font-weight:500}
.lx-resume button{
  flex:none;font-family:var(--lx-mono);font-size:11px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--lx-ink-faint);padding:2px 4px;
  transition:color .2s ease;
}
.lx-resume button:hover,.lx-resume button:focus-visible{color:var(--lx-ink);outline:none}

/* ---- checkbox repair --------------------------------------
   .lx-field input in lx.css applies appearance:none plus text-input
   padding/background to EVERY input inside a field, checkboxes
   included — which leaves a checked box with no visible mark at all.
   This restores a visible, on-brand control. Same markup, same names,
   no change to lx.css.
   ----------------------------------------------------------- */
.lx-field .lx-check input[type="checkbox"]{
  appearance:none;-webkit-appearance:none;
  width:17px;height:17px;flex:none;padding:0;border-radius:3px;
  background:rgba(10,11,12,.6);border:1px solid var(--lx-rule-strong);
  position:relative;cursor:pointer;
  transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease;
}
.lx-field .lx-check input[type="checkbox"]:hover{border-color:var(--lx-gold)}
.lx-field .lx-check input[type="checkbox"]:focus-visible{
  outline:none;border-color:var(--lx-gold);box-shadow:0 0 0 3px rgba(201,162,74,.25);
}
.lx-field .lx-check input[type="checkbox"]:checked{
  background:var(--lx-gold-soft);border-color:var(--lx-gold);
}
.lx-field .lx-check input[type="checkbox"]:checked::after{
  content:"";position:absolute;left:5px;top:1px;width:5px;height:10px;
  border:solid var(--lx-gold-hi);border-width:0 1.7px 1.7px 0;transform:rotate(42deg);
}

/* ---- contact consent (step 5) ---- */
.lx-consentbox{margin-bottom:30px}
/* beats `.lx-field label` (0,1,1), which would otherwise force this
   paragraph into block-level uppercase mono tracking. */
.lx-field label.lx-check--consent{
  display:flex;align-items:flex-start;gap:11px;margin:0 0 0 0;
  font-family:var(--lx-body);text-transform:none;letter-spacing:normal;
  color:var(--lx-ink-dim);cursor:pointer;
}
.lx-field .lx-check--consent input[type="checkbox"]{margin-top:3px}
.lx-field .lx-check--consent span{
  font-size:13px;line-height:1.6;color:var(--lx-ink-dim);
  text-transform:none;letter-spacing:normal;
}
.lx-consentbox.is-bad .lx-check--consent input[type="checkbox"]{border-color:#c8654f}
.lx-consentbox.is-bad .lx-check--consent span{color:var(--lx-ink)}
.lx-consentbox__note{
  margin-top:9px;padding-left:28px;
  font-family:var(--lx-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;
}
.lx-consentbox__note a{
  color:var(--lx-ink-faint);border-bottom:1px solid var(--lx-rule);
  transition:color .2s ease,border-color .2s ease;
}
.lx-consentbox__note a:hover{color:var(--lx-gold-hi);border-color:var(--lx-gold)}

@media (max-width:600px){
  .lx-trust{grid-template-columns:1fr;gap:12px;padding:18px 18px 18px 20px}
  .lx-trust__mark{padding-top:0}
}
