/* Wrapper stays where the shortcode/widget is placed */
.mcqf-wrap{
  position:relative;
  display:inline-block;
  z-index:9999;
  overflow:visible !important;
}

/* Button (same aesthetic, but NOT fixed to viewport) */
.mcqf-button{
  background:#2ea6d8;
  color:#fff;
  border:none;
  border-radius:999px;
  padding:16px 34px;
  font-weight:700;
  letter-spacing:.6px;
  text-transform:uppercase;
  cursor:pointer;
  box-shadow:0 10px 25px rgba(0,0,0,.18);
  transition:transform .15s ease, filter .15s ease;
}
.mcqf-button:hover{ transform:translateY(-1px); filter:brightness(1.03); }
.mcqf-button:focus{ outline:2px solid rgba(46,166,216,.35); outline-offset:3px; }

/* Popover container */
.mcqf-modal{
  position:absolute;
  top:calc(100% + 12px);
  left:0;
  display:none;
  width:420px;
  max-width:min(92vw, 520px);
}
.mcqf-modal.is-open{ display:block; }

/* Open upwards when needed (JS will toggle) */
.mcqf-modal.is-open.mcqf-open-up{
  top:auto;
  bottom:calc(100% + 12px);
}

/* Panel */
.mcqf-panel{
  background:#fff;
  border-radius:18px;
  box-shadow:0 18px 45px rgba(0,0,0,.25);
  overflow:hidden;
}

/* Header */
.mcqf-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:14px 16px;
  border-bottom:1px solid #eee;
}
.mcqf-title{ margin:0; font-size:16px; }
.mcqf-close{
  border:none; background:transparent;
  font-size:22px; line-height:1;
  cursor:pointer;
}

/* Form */
.mcqf-form{ padding:14px 16px 16px; }

/* Two-column grid for fields */
.mcqf-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:10px 12px;
}
.mcqf-span-2{ grid-column: 1 / -1; }

.mcqf-field{ display:block; }
.mcqf-field span{ display:block; font-size:12px; margin-bottom:6px; color:#444; }

.mcqf-field input, .mcqf-field textarea{
  width:100%;
  border:1px solid #ddd;
  border-radius:12px;
  padding:10px 12px;
  font-size:14px;
}
.mcqf-field input:focus, .mcqf-field textarea:focus{
  outline:none;
  border-color:#2ea6d8;
  box-shadow:0 0 0 3px rgba(46,166,216,.18);
}

.mcqf-submit{
  width:100%;
  margin-top:12px;
  border:none;
  border-radius:12px;
  background:#2ea6d8;
  color:#fff;
  padding:12px 14px;
  font-weight:700;
  cursor:pointer;
}
.mcqf-submit[disabled]{ opacity:.7; cursor:not-allowed; }

.mcqf-note{
  margin:10px 0 0;
  font-size:12px;
  color:#666;
  text-align:center;
}

.mcqf-message{ margin-top:10px; font-size:13px; }
.mcqf-message.is-ok{ color:#0a7a2f; }
.mcqf-message.is-err{ color:#b00020; }

/* Mobile: single column */
@media (max-width:520px){
  .mcqf-modal{ width:min(92vw, 520px); }
  .mcqf-grid{ grid-template-columns: 1fr; }
  .mcqf-span-2{ grid-column:auto; }
}
