.mondpe-cert-form,
.mondpe-cert-form *{box-sizing:border-box}
.mondpe-cert-form{
  --header-h:100px;
  --footer-h:40px;
  max-width:980px;
  height:450px;
  min-height:450px;
  max-height:450px;
  padding:10px;
  border-radius:24px;
  overflow:hidden;
  background:
    radial-gradient(1200px 420px at 0% 100%, rgba(255,255,255,.14), transparent 50%),
    radial-gradient(900px 280px at 100% 0%, rgba(255,255,255,.16), transparent 45%),
    linear-gradient(135deg,#5d9dea 0%, #4688d9 42%, #2e68b3 100%);
  color:#f8fbff;
  border:1px solid rgba(255,255,255,.22);
  box-shadow:0 20px 55px rgba(15,53,103,.22), inset 0 1px 0 rgba(255,255,255,.18);
  font-family:Inter,Segoe UI,Arial,sans-serif;
  position:relative;
}
.mondpe-header-band{
  height:var(--header-h);
  min-height:var(--header-h);
  max-height:var(--header-h);
  padding:12px 16px 10px;
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.17),rgba(255,255,255,.09));
  border:1px solid rgba(255,255,255,.26);
  border-bottom:3px solid rgba(236,245,255,.82);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.mondpe-header-top{display:flex;align-items:center;gap:12px;min-height:42px}
.mondpe-header-main{flex:1;min-width:0}
.mondpe-header-main h2{
  margin:0;
  font-size:16px;
  line-height:1.08;
  letter-spacing:-.02em;
  font-weight:800;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.mondpe-header-main p{
  margin:6px 0 0;
  font-size:12px;
  line-height:1.15;
  font-weight:700;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  color:#f4f8ff;
}
.mondpe-progress{
  display:grid;
  grid-template-columns:1fr 18px 1fr 18px 1fr;
  align-items:center;
  gap:8px;
}
.mondpe-progress span{
  height:34px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.32);
  background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.07));
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  padding:2px 8px;
  text-align:center;
}
.mondpe-progress span em,
.mondpe-progress span strong{font-style:normal}
.mondpe-progress span em{
  font-size:11px;
  line-height:1;
  font-weight:800;
  color:#fff;
}
.mondpe-progress span .step-label{
  margin-top:2px;
  font-size:9px;
  line-height:1;
  font-weight:500;
  color:#edf5ff;
}
.mondpe-progress span.is-active{background:linear-gradient(180deg,rgba(255,255,255,.24),rgba(255,255,255,.1));box-shadow:0 0 0 1px rgba(255,255,255,.2) inset}
.mondpe-progress span.is-done{opacity:.92}
.mondpe-progress i{font-style:normal;font-size:13px;font-weight:800;color:#f8fbff;text-align:center}
.mondpe-steps-viewport{height:calc(100% - var(--header-h) - 10px);padding-top:10px}
.mondpe-step{display:none;height:100%}
.mondpe-step.active{display:flex;flex-direction:column;gap:10px;min-height:0;height:100%}
.mondpe-step-copy{flex:0 0 auto}
.mondpe-step-copy h3{
  margin:0;
  font-size:13px;
  line-height:1.15;
  font-weight:800;
}
.mondpe-step-copy p{
  margin:6px 0 0;
  font-size:12px;
  line-height:1.35;
  color:#f1f7ff;
}
.mondpe-grid{display:grid;gap:10px;align-content:start}
.mondpe-grid-step1{grid-template-columns:1.65fr .95fr}
.mondpe-grid-step3{grid-template-columns:1fr 1fr 1.25fr}
.mondpe-grid .field-span-2{grid-column:span 1}
.mondpe-cert-form label{
  display:block;
  margin:0 0 5px;
  font-size:12px;
  line-height:1.15;
  font-weight:700;
  color:#fbfdff;
}
.mondpe-cert-form label small{font-size:11px;color:#dceafd}
.mondpe-cert-form input[type="text"],
.mondpe-cert-form input[type="email"]{
  width:100%;
  height:40px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.24);
  background:rgba(255,255,255,.14);
  color:#fff;
  padding:10px 12px;
  font-size:13px;
  outline:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.mondpe-cert-form input::placeholder{color:rgba(255,255,255,.78)}
.mondpe-honeypot{position:absolute!important;left:-9999px!important;opacity:0!important;height:0!important;width:0!important}
.mondpe-results-intro{
  flex:0 0 auto;
  padding:10px 12px;
  border-radius:14px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  font-size:12px;
  line-height:1.3;
  color:#f8fbff;
}
.mondpe-results{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}
.mondpe-results-shell{
  flex:1 1 auto;
  min-height:0;
  overflow:auto;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(6,31,79,.3);
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,.45) rgba(8,28,60,.28);
}
.mondpe-results-shell::-webkit-scrollbar{width:10px;height:10px}
.mondpe-results-shell::-webkit-scrollbar-thumb{background:rgba(255,255,255,.45);border-radius:999px}
.mondpe-results-shell::-webkit-scrollbar-track{background:rgba(8,28,60,.28)}
.mondpe-results-table{width:100%;border-collapse:collapse}
.mondpe-results-table th,
.mondpe-results-table td{padding:12px 14px;text-align:left;white-space:nowrap}
.mondpe-results-table thead th{position:sticky;top:0;background:#173a72;color:#eef5ff;font-size:12px;font-weight:800;z-index:2}
.mondpe-results-table tbody td{font-size:12px;color:#fff;border-top:1px solid rgba(255,255,255,.09)}
.mondpe-results-table tbody tr:hover{background:rgba(255,255,255,.06)}
.mondpe-results-table input[type="radio"]{transform:scale(1.15)}
.mondpe-consent{display:flex;align-items:center;gap:8px;font-size:12px;line-height:1.25;color:#f7fbff}
.mondpe-consent input{accent-color:#14b8a6}
.mondpe-feedback{min-height:18px;font-size:12px;line-height:1.25;font-weight:700;color:#7ff0a9}
.mondpe-feedback.error{color:#ffd5d8}
.mondpe-actions{
  flex:0 0 var(--footer-h);
  height:var(--footer-h);
  min-height:var(--footer-h);
  margin-top:auto;
  display:flex;
  align-items:center;
  gap:10px;
  padding-top:6px;
  border-top:1px solid rgba(255,255,255,.1);
  background:linear-gradient(180deg,rgba(19,57,112,0),rgba(19,57,112,.22));
}
.mondpe-step-1 .mondpe-actions,
.mondpe-step-3 .mondpe-actions{justify-content:flex-end}
.mondpe-step-2 .mondpe-actions{justify-content:space-between}
.mondpe-actions .button{
  min-width:124px;
  height:34px;
  padding:7px 16px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.15);
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:13px;
  line-height:1;
  font-weight:800;
  cursor:pointer;
  visibility:visible;
  opacity:1;
}
.mondpe-actions .button-primary{background:linear-gradient(135deg,#2d8cff,#25b0ff);color:#fff;box-shadow:0 8px 20px rgba(17,87,170,.2)}
.mondpe-actions .button:not(.button-primary){background:rgba(255,255,255,.1);color:#fff}
.mondpe-step-1 .mondpe-grid{margin-top:2px}
.mondpe-step-3 .mondpe-step-copy p{max-width:760px}
@media (max-width:780px){
  .mondpe-cert-form{height:auto;min-height:450px;max-height:none}
  .mondpe-grid-step1,.mondpe-grid-step3{grid-template-columns:1fr}
  .mondpe-header-main h2{font-size:15px}
  .mondpe-header-main p{font-size:11px}
  .mondpe-progress span{height:32px}
  .mondpe-steps-viewport{height:auto;min-height:calc(450px - var(--header-h) - 10px)}
}


/* v6.5 compactness / theme override hardening */
.mondpe-cert-form .mondpe-header-band{height:100px!important;min-height:100px!important;max-height:100px!important;padding:8px 14px 8px!important;overflow:hidden}
.mondpe-cert-form .mondpe-header-top{min-height:30px!important;align-items:flex-start!important}
.mondpe-cert-form .mondpe-header-main{width:100%!important}
.mondpe-cert-form .mondpe-header-main h2{font-size:12px!important;line-height:1.05!important;font-weight:800!important;margin:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;letter-spacing:-.01em!important}
.mondpe-cert-form .mondpe-header-main p{font-size:10px!important;line-height:1.05!important;font-weight:700!important;margin:3px 0 0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%!important}
.mondpe-cert-form .mondpe-progress{grid-template-columns:1fr 16px 1fr 16px 1fr!important;gap:6px!important;margin-top:4px!important}
.mondpe-cert-form .mondpe-progress span{height:24px!important;min-height:24px!important;padding:1px 6px!important;border-radius:999px!important}
.mondpe-cert-form .mondpe-progress span em{font-size:9px!important;line-height:1!important}
.mondpe-cert-form .mondpe-progress span .step-label{font-size:7px!important;line-height:1!important;margin-top:1px!important}
.mondpe-cert-form .mondpe-progress i{font-size:12px!important;line-height:1!important}

.mondpe-cert-form .mondpe-steps-viewport{height:330px!important;min-height:330px!important;max-height:330px!important;padding-top:6px!important;display:flex!important;flex-direction:column!important}
.mondpe-cert-form .mondpe-step{height:100%!important;min-height:0!important}
.mondpe-cert-form .mondpe-step.active{display:flex!important;flex-direction:column!important;gap:8px!important;height:100%!important;min-height:0!important}
.mondpe-cert-form .mondpe-step-copy{flex:0 0 auto!important}
.mondpe-cert-form .mondpe-step-copy h3{font-size:12px!important;line-height:1.1!important;font-weight:800!important;margin:0!important}
.mondpe-cert-form .mondpe-step-copy p{font-size:11px!important;line-height:1.25!important;margin:4px 0 0!important;max-width:100%!important}
.mondpe-cert-form .mondpe-grid{gap:8px!important;align-content:start!important}
.mondpe-cert-form .mondpe-grid-step1{grid-template-columns:1.55fr .85fr!important}
.mondpe-cert-form .mondpe-grid-step3{grid-template-columns:1fr 1fr 1.1fr!important}
.mondpe-cert-form label{font-size:11px!important;line-height:1.1!important;margin:0 0 4px!important}
.mondpe-cert-form input[type="text"],
.mondpe-cert-form input[type="email"]{height:36px!important;padding:8px 10px!important;font-size:12px!important;border-radius:10px!important}
.mondpe-cert-form .mondpe-results-intro{padding:8px 10px!important;font-size:11px!important;line-height:1.2!important}
.mondpe-cert-form .mondpe-results{flex:1 1 auto!important;min-height:0!important;padding-bottom:0!important}
.mondpe-cert-form .mondpe-results-shell{flex:1 1 auto!important;min-height:178px!important;max-height:none!important}
.mondpe-cert-form .mondpe-results-table th,
.mondpe-cert-form .mondpe-results-table td{padding:10px 12px!important;font-size:11px!important;line-height:1.15!important}
.mondpe-cert-form .mondpe-results-table thead th{font-size:11px!important;color:#f2f6fd!important}
.mondpe-cert-form .mondpe-results-table tbody tr{height:48px!important}
.mondpe-cert-form .mondpe-consent{font-size:11px!important;line-height:1.2!important}
.mondpe-cert-form .mondpe-feedback{font-size:11px!important;line-height:1.2!important;min-height:16px!important}
.mondpe-cert-form .mondpe-actions{height:40px!important;min-height:40px!important;max-height:40px!important;padding-top:4px!important;margin-top:auto!important;position:relative!important;z-index:3!important}
.mondpe-cert-form .mondpe-actions .button{height:32px!important;min-width:112px!important;padding:6px 14px!important;font-size:12px!important;border-radius:10px!important}
.mondpe-cert-form .mondpe-step-1 .mondpe-grid,
.mondpe-cert-form .mondpe-step-3 .mondpe-grid{flex:1 1 auto!important;align-content:start!important}
.mondpe-cert-form .mondpe-step-1 .mondpe-step-copy,
.mondpe-cert-form .mondpe-step-3 .mondpe-step-copy{margin-bottom:2px!important}
.mondpe-cert-form .mondpe-step-2 .mondpe-step-copy{margin-bottom:0!important}
.mondpe-cert-form .nowrap-cell{white-space:nowrap!important}


/* v7.1 requested UX updates */
.mondpe-cert-form .mondpe-step-body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;justify-content:center;gap:10px}
.mondpe-cert-form .mondpe-step-2 .mondpe-step-body{justify-content:flex-start}
.mondpe-cert-form .mondpe-step-3 .mondpe-step-body{justify-content:center}
.mondpe-cert-form .mondpe-progress span.is-done{background:linear-gradient(180deg,rgba(111,232,161,.24),rgba(54,170,98,.22))!important;border-color:rgba(134,255,186,.36)!important;box-shadow:inset 0 0 0 1px rgba(167,255,204,.18)!important}
.mondpe-cert-form .mondpe-progress span.is-done em,.mondpe-cert-form .mondpe-progress span.is-done .step-label{color:#eafff0!important}
.mondpe-cert-form .mondpe-progress span.is-done em::before{content:"✓";display:inline-block;margin-right:4px;color:#86ffb6;font-weight:900}
.mondpe-cert-form .mondpe-feedback.error{color:#ffd0d6!important}
.mondpe-cert-form .mondpe-feedback:not(.error){color:#87f3ab!important}
