/*  ZonaCNC Error Handler — overlay UX styles */
#zcncerr-overlay {
  position: fixed; inset: 0; z-index: 999999;
  background: rgba(20, 22, 30, 0.78);
  backdrop-filter: blur(6px);
  display: none;
  align-items: center; justify-content: center;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
}
#zcncerr-overlay.active { display: flex; }
#zcncerr-card {
  background: #fff;
  width: min(560px, 92vw);
  max-height: 92vh;
  border-radius: 14px;
  box-shadow: 0 20px 60px rgba(0,0,0,.28);
  overflow: hidden;
  display: flex; flex-direction: column;
}
#zcncerr-card .zcncerr-head {
  background: linear-gradient(135deg, #ff7a59, #e63946);
  color: #fff;
  padding: 22px 26px;
}
#zcncerr-card h2 { margin: 0; font-size: 22px; }
#zcncerr-card .zcncerr-sub { margin-top: 6px; font-size: 13px; opacity: .92; }
#zcncerr-card .zcncerr-body { padding: 22px 26px; overflow-y: auto; }
#zcncerr-card p { margin: 0 0 12px; color: #36404d; font-size: 14px; line-height: 1.45; }
#zcncerr-card textarea {
  width: 100%; min-height: 110px; max-height: 220px;
  border: 1px solid #d6dce4; border-radius: 8px;
  padding: 10px 12px; font-family: inherit; font-size: 14px; resize: vertical;
  box-sizing: border-box;
}
#zcncerr-card input[type=email] {
  width: 100%; padding: 9px 12px;
  border: 1px solid #d6dce4; border-radius: 8px;
  font-size: 14px; box-sizing: border-box;
}
#zcncerr-card .zcncerr-row { margin-bottom: 12px; }
#zcncerr-card label { font-size: 12px; font-weight: 600; color: #5a6473; display: block; margin-bottom: 4px; }
#zcncerr-card details { margin-top: 8px; font-size: 12px; color: #828a98; }
#zcncerr-card details pre { background: #f5f7fa; padding: 8px; border-radius: 6px; overflow: auto; max-height: 140px; font-size: 11px; }
#zcncerr-card .zcncerr-foot {
  padding: 14px 26px; background: #f6f8fb;
  display: flex; gap: 10px; justify-content: flex-end;
  border-top: 1px solid #e8edf3;
}
#zcncerr-card button {
  border: 0; padding: 10px 18px; border-radius: 8px;
  font-size: 14px; font-weight: 600; cursor: pointer;
}
#zcncerr-card .zcncerr-cancel { background: #e8edf3; color: #4a5260; }
#zcncerr-card .zcncerr-send { background: #2563eb; color: #fff; }
#zcncerr-card .zcncerr-send:disabled { opacity: .6; cursor: wait; }
#zcncerr-card .zcncerr-ok {
  padding: 30px; text-align: center;
}
#zcncerr-card .zcncerr-ok h3 { margin: 8px 0; color: #16a34a; }
