
:root{
  --mps-primary:#1366d6; --mps-primary-600:#0f56b4; --mps-card:#ffffffcc; --mps-border:#e6eef7; --mps-text:#1f2a37; --mps-muted:#667085; --mps-shadow:0 10px 30px rgba(19,102,214,.15);
}
.mps-tfa-wrap{background: linear-gradient(180deg,#eef5ff 0%, #f7fbff 100%);padding: 18px;border-radius: 16px;}
.card{background: var(--mps-card);backdrop-filter: blur(6px);border: 1px solid var(--mps-border);border-radius: 16px;box-shadow: var(--mps-shadow);padding: 18px;}
.mps-tfa{display:block;gap:16px}
.mps-tfa__row{display:grid;grid-template-columns:1fr;gap:14px;margin-bottom:14px}
@media(min-width:640px){.mps-tfa__row{grid-template-columns:repeat(2,1fr)}}
@media(min-width:980px){.mps-tfa__row{grid-template-columns:repeat(3,1fr)}}
.mps-tfa__row--date{grid-template-columns:1fr}
.mps-field{display:flex;flex-direction:column;gap:8px}
.mps-label{font-weight:700;color:var(--mps-text)}
.mps-help{color:var(--mps-muted);font-size:.85rem;margin-top:2px}
.mps-field input{width:100%;padding:12px 14px;border:1px solid var(--mps-border);border-radius:12px;background:#fff;font-size:16px;transition:border .15s ease, box-shadow .15s ease, transform .02s ease;outline:none;}
.mps-field input:focus{border-color:var(--mps-primary);box-shadow:0 0 0 4px rgba(19,102,214,.10);}
.mps-tfa__actions{margin-top:14px;display:flex;justify-content:center;align-items:center}
/* Custom button class ONLY for our form (no Woo triggers) */
.mps-btn-primary{
  padding:12px 22px; border-radius:14px; border:none; font-weight:800; letter-spacing:.2px; color:#fff;
  background: linear-gradient(90deg, #0f6cf1 0%, #2aa1ff 50%, #0f6cf1 100%);
  background-size: 200% 100%;
  box-shadow: 0 8px 20px rgba(15,108,241,.25);
  transition: background-position .4s ease, transform .12s ease, box-shadow .2s ease;
  cursor:pointer;
}
.mps-btn-primary:hover{background-position: 100% 0; transform: translateY(-1px); box-shadow: 0 12px 28px rgba(15,108,241,.38), 0 0 0 6px rgba(42,161,255,.18)}
.mps-btn-primary:active{transform: translateY(0); box-shadow: 0 8px 18px rgba(15,108,241,.28)}
.mps-btn-primary:focus{outline:none; box-shadow: 0 0 0 4px rgba(15,108,241,.22)}
.mps-tfa__results{margin-top:18px;min-height:90px}
.mps-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:22px;border:1px dashed var(--mps-border);border-radius:14px;background:linear-gradient(180deg,#f8fbff,#f3f7fd)}
.mps-loader__text{margin:0;color:var(--mps-text);font-weight:700;text-align:center}
.mps-loader__ring{position:relative;width:64px;height:64px}
.mps-loader__ring span{position:absolute;box-sizing:border-box;display:block;width:100%;height:100%;border:4px solid var(--mps-primary);border-radius:50%;animation:mps-spin 1.2s linear infinite;border-color:var(--mps-primary) transparent transparent transparent}
.mps-loader__ring span:nth-child(1){animation-delay:-.45s}
.mps-loader__ring span:nth-child(2){animation-delay:-.3s}
.mps-loader__ring span:nth-child(3){animation-delay:-.15s}
@keyframes mps-spin{to{transform:rotate(360deg)}}
.mps-loader__bubbles{position:relative;width:70px;height:26px;display:flex;justify-content:space-between;align-items:flex-end;gap:10px}
.mps-loader__bubbles i{display:block;width:12px;height:12px;background:var(--mps-primary);border-radius:50%;opacity:.35;animation:mps-bubble 1.4s ease-in-out infinite}
.mps-loader__bubbles i:nth-child(2){animation-delay:.2s}
.mps-loader__bubbles i:nth-child(3){animation-delay:.4s}
@keyframes mps-bubble{0%{transform:translateY(8px);opacity:.35}50%{transform:translateY(-8px);opacity:.9}100%{transform:translateY(8px);opacity:.35}}
@media (prefers-reduced-motion: reduce){.mps-loader__ring span,.mps-loader__bubbles i{animation:none}}
