:root{
  --mftrcf-primary:#081B27;
  --mftrcf-accent:#FF3E3D;
  --mftrcf-radius:10px;
  --mftrcf-input-radius:8px;
  --mftrcf-font-scale:1.0;
  --mftrcf-button-bg: var(--mftrcf-accent);
  --mftrcf-button-color: #fff;
  --mftrcf-button-radius: 999px;
}
.mftrcf-form{ 
  --bg:#fff;
  --fg:#0f1720;
  --muted:#6b7280;
  --border:#d1d5db;
  --border-focus: var(--mftrcf-accent);
  font-size: calc(16px * var(--mftrcf-font-scale));
  color:var(--fg);
  background:var(--bg);
  border:1px solid var(--border);
  border-radius:var(--mftrcf-radius);
  padding:clamp(16px,3vw,28px);
  box-shadow:0 6px 24px rgba(0,0,0,.06);
  max-width:900px;
}
.mftrcf-form label{display:block;font-weight:600;margin:0 0 6px;color:var(--fg)}
.mftrcf-field{margin:14px 0}
.mftrcf-field input[type=text],
.mftrcf-field input[type=email],
.mftrcf-field input[type=tel],
.mftrcf-field input[type=url],
.mftrcf-field input[type=date],
.mftrcf-field input[type=time],
.mftrcf-field input[type=datetime-local],
.mftrcf-field input[type=file],
.mftrcf-field select,
.mftrcf-field textarea{
  width:100%;padding:12px 14px;border-radius:var(--mftrcf-input-radius);
  border:1px solid var(--border);background:#fff;outline:none;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.mftrcf-field input:focus,
.mftrcf-field select:focus,
.mftrcf-field textarea:focus{
  border-color:var(--border-focus);
  box-shadow:0 0 0 3px color-mix(in srgb, var(--mftrcf-accent) 20%, transparent);
}
.mftrcf-help{font-size:.9em;color:var(--muted);margin-top:6px}
.mftrcf-grid{display:grid;grid-template-columns:1fr;gap:14px}
@media(min-width:720px){.mftrcf-grid{grid-template-columns:repeat(2,1fr)}}
.mftrcf-actions{margin-top:20px}
.mftrcf-btn{
  background:var(--mftrcf-button-bg);border:none;color:var(--mftrcf-button-color);font-weight:700;
  padding:12px 18px;border-radius:var(--mftrcf-button-radius);cursor:pointer;
  transition:transform .05s ease, filter .2s ease;width:100%;
}
.mftrcf-btn:hover{filter:brightness(0.95)}
.mftrcf-btn:active{transform:translateY(1px)}
.mftrcf-notice{margin-bottom:10px;padding:10px;border-radius:8px;display:none}
.mftrcf-notice.is-error{display:block;background:#fee2e2;color:#991b1b}
.mftrcf-notice.is-success{display:block;background:#dcfce7;color:#064e3b}
.mftrcf-hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.mftrcf-group{display:none;border:1px dashed #e5e7eb;padding:12px;border-radius:10px;background:#fafafa}
.mftrcf-group.is-visible{display:block}
.mftrcf-consent label{display:flex;gap:10px;align-items:flex-start}
.mftrcf-consent-text{font-size:.9em;color:var(--muted)}
[hidden]{display:none !important}

/* Modal */
.mftrcf-modal[aria-hidden="true"]{display:none}
.mftrcf-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center}
.mftrcf-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.5)}
.mftrcf-modal__dialog{position:relative;background:#fff;border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,.2);max-width:520px;width:90%;padding:20px}
.mftrcf-modal__title{margin:0 0 6px;font-size:1.25em}
.mftrcf-modal__message{margin:0 0 14px;color:var(--fg)}
body.mftrcf-modal-open{overflow:hidden}
