.amvmsc-wrap{max-width:860px;margin:18px auto;padding:16px;border:1px solid rgba(0,0,0,.08);border-radius:14px;background:rgba(255,255,255,.9)}
.amvmsc-title{margin:0 0 12px 0;font-weight:800}
.amvmsc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (max-width:720px){.amvmsc-grid{grid-template-columns:1fr}}
.amvmsc-field label{display:block;font-size:13px;font-weight:700;margin:0 0 6px 0}
.amvmsc-field input{width:100%;padding:10px 12px;border:1px solid rgba(0,0,0,.18);border-radius:10px;outline:none}
.amvmsc-btn{margin-top:14px;padding:12px 14px;border-radius:12px;border:0;background:#fec245;font-weight:800;cursor:pointer}
.amvmsc-note{margin:10px 0 0 0;font-size:13px;opacity:.85}
.amvmsc-alert{padding:10px 12px;border-radius:12px;margin:0 0 12px 0}
.amvmsc-alert--error{background:#ffe8e8;border:1px solid #ffb4b4}
.amvmsc-alert--ok{background:#ecfff0;border:1px solid #a7f0b6}

.amvmsc-consent{margin-top:10px;padding:12px;border:1px solid rgba(0,0,0,.12);border-radius:12px;background:#fff}
.amvmsc-consent-label{display:block;gap:10px;align-items:flex-start;font-size:13px;line-height:1.6}
.amvmsc-consent-label input{margin-top:3px}


/* --- FIX layout: prevent overlapping in grid (theme-safe) --- */
.amvmsc-wrap,
.amvmsc-wrap * {
  box-sizing: border-box;
}

.amvmsc-form { width: 100%; }

.amvmsc-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 24px;
  row-gap: 18px;
  align-items: start;
}

@media (max-width: 720px){
  .amvmsc-grid{ grid-template-columns: 1fr; }
}

/* IMPORTANT: allow grid items to shrink instead of overflowing */
.amvmsc-field{ min-width: 0; }

/* Neutralize aggressive theme styles */
.amvmsc-wrap .amvmsc-field label{
  display: block;
  float: none !important;
  margin: 0 0 8px 0 !important;
}

.amvmsc-wrap .amvmsc-field input{
  display: block !important;
  float: none !important;
  position: relative !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

.amvmsc-wrap .amvmsc-field input[type="date"]{
  appearance: auto;
}

.amvmsc-amount-row{display:grid;grid-template-columns: 1fr 160px;gap:12px;align-items:baseline;}
@media (max-width:720px){.amvmsc-amount-row{grid-template-columns:1fr}}
.amvmsc-amount-row select{width:100%}
.amvmsc-date-row { display:flex; gap:10px; align-items:center; }

.amvmsc-date-btn { padding:10px 12px; border-radius:10px; }