/* Root variables */
:root{
  --jad-btn-bg:#2563eb;
  --jad-btn-text-color:#ffffff;
  --jad-btn-font-family:inherit;
  --jad-btn-font-weight:inherit;

  --jad-font-size:16px;
  --jad-font-family:Inter,Arial,sans-serif;
  --jad-text-color:#111827;
  --jad-font-weight:600;
  --jad-radius:10px;
}
.jad-download-wrap{
  font-family:var(--jad-font-family);
  font-size:var(--jad-font-size);
  color:var(--jad-text-color);
  font-weight:var(--jad-font-weight);
}
.jad-download-trigger,.jad-submit,.jad-final-download{
  display:inline-block;
  border:none;
  cursor:pointer;
  background:var(--jad-btn-bg);
  color:var(--jad-btn-text-color);
  padding:.75rem 1.25rem;
  border-radius:var(--jad-radius);
  font-weight:var(--jad-btn-font-weight);
  font-family:var(--jad-btn-font-family);
  text-decoration:none;
  line-height:1;
}
/* Button sizes */
.jad-download-wrap.size-small .jad-download-trigger,
.jad-download-wrap.size-small .jad-submit,
.jad-download-wrap.size-small .jad-final-download{padding:.5rem 1rem;font-size:.9em}
.jad-download-wrap.size-medium .jad-download-trigger,
.jad-download-wrap.size-medium .jad-submit,
.jad-download-wrap.size-medium .jad-final-download{padding:.75rem 1.25rem;font-size:1em}
.jad-download-wrap.size-large .jad-download-trigger,
.jad-download-wrap.size-large .jad-submit,
.jad-download-wrap.size-large .jad-final-download{padding:1rem 1.5rem;font-size:1.05em}

.jad-download-trigger:hover,.jad-submit:hover,.jad-final-download:hover{filter:brightness(.95)}
.jad-modal[hidden]{display:none}

/* Center modal in viewport */
.jad-modal{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center}
.jad-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.45);backdrop-filter:saturate(120%) blur(2px)}
.jad-modal__dialog{
  position:relative;
  max-width:520px;
  width:min(92vw,520px);
  background:#fff;
  border-radius:1rem;
  padding:1.25rem 1.25rem 1.5rem;
  box-shadow:0 10px 30px rgba(0,0,0,.15);
  z-index:1;
}
.jad-close{position:absolute;right:.75rem;top:.5rem;border:none;background:transparent;font-size:1.5rem;cursor:pointer}
.jad-form{display:grid;gap:.75rem;margin-top:.5rem}
.jad-form label{display:grid;gap:.25rem}
.jad-form label.jad-extra{margin-top:.25rem}
.jad-form .jad-group{display:flex;flex-wrap:wrap;gap:.5rem}
.jad-form .jad-inline{display:flex;align-items:center;gap:.35rem}
.jad-form select,.jad-form textarea,
.jad-form input[type="text"],.jad-form input[type="email"],.jad-form input[type="tel"],.jad-form input[type="number"],.jad-form input[type="url"],.jad-form input[type="date"]{
  padding:.6rem .7rem;border:1px solid #d1d5db;border-radius:.5rem
}
.jad-note{font-size:.85em;color:#6b7280;margin:.25rem 0 0}
.jad-error{margin-top:.5rem;color:#b91c1c;background:#fee2e2;border:1px solid #fecaca;padding:.5rem .6rem;border-radius:.5rem}
.jad-thanks-title{margin:0 0 .25rem;font-size:1.25rem}
.jad-thanks-msg{margin:.25rem 0 1rem;color:#374151}
.jad-small{font-size:.85em;color:#6b7280;margin-top:.5rem}
