.cer-wrap { max-width: 520px; }
.cer-row { margin-bottom: 12px; }
.cer-row label { display:block; font-weight:600; margin-bottom:6px; }
.cer-required { color:#b02a37; }

.cer-row input {
  width:100%;
  padding:10px;
  border:1px solid #ccc;
  border-radius:8px;
}

.cer-btn {
  width:100%;
  padding:12px 14px;
  border:0;
  border-radius:10px;
  cursor:pointer;
  font-weight:700;
  background-color:#036DC4;
  color:#ffffff;
  transition: background 0.25s ease;
}

.cer-btn:hover { background-color:#025aa2; }
.cer-btn:disabled { opacity:0.7; cursor:not-allowed; }

.cer-inline-msg { margin-top:10px; min-height: 20px; }
.cer-inline-msg.ok { color: #1e7e34; }
.cer-inline-msg.err { color: #b02a37; }

.cer-alert { padding:12px; border-radius:10px; background:#fff3cd; border:1px solid #ffeeba; }
.cer-alert--full { background:#f8d7da; border-color:#f5c6cb; }

.cer-modal { display:none; }
.cer-modal.is-open { display:block; }
.cer-modal__overlay { position:fixed; inset:0; background:rgba(0,0,0,.55); z-index:9998; }
.cer-modal__content {
  position:fixed; left:50%; top:50%;
  transform:translate(-50%,-50%);
  width:min(520px, 92vw);
  background:#fff; border-radius:16px; padding:18px 18px 14px;
  z-index:9999; box-shadow:0 20px 60px rgba(0,0,0,.25);
}
.cer-modal__close {
  position:absolute; right:12px; top:8px;
  border:0; background:transparent; font-size:28px; cursor:pointer;
}
