/* ═══════════════════════════════════════════════════════
   LETS FRANCHISE — Franchisee Public Form
═══════════════════════════════════════════════════════ */
.lf-ff-wrap { max-width:740px; margin:0 auto; font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; padding:0 16px; }
#lf-ff-loading { text-align:center; padding:60px 0; color:#6b7280; }
.lf-spinner { width:36px;height:36px;border:3px solid #e5e7eb;border-top-color:#2563eb;border-radius:50%;animation:lf-spin .7s linear infinite;margin:0 auto 14px; }
@keyframes lf-spin { to { transform:rotate(360deg); } }
.lf-ff-error { background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;padding:16px 20px;color:#991b1b;margin:20px 0; }
.lf-ff-done  { text-align:center;margin:40px 0; }
.lf-done-box { background:#ecfdf5;border:1px solid #6ee7b7;border-radius:12px;padding:40px 30px;display:inline-block;max-width:480px; }
.lf-done-box h3 { color:#065f46;font-size:24px;margin-top:0; }
.lf-ff-brand { font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#2563eb;margin-bottom:4px; }
.lf-ff-wrap h2 { font-size:24px;margin-bottom:6px; }
.lf-ff-intro { color:#6b7280;margin-bottom:28px; }
.lf-ff-section { background:#fff;border:1px solid #e5e7eb;border-radius:10px;margin-bottom:18px;overflow:hidden; }
.lf-ff-section h3 { margin:0;padding:12px 20px;background:#1e3a5f;color:#fff;font-size:13px;font-weight:700; }
.lf-ff-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:16px;padding:20px; }
.lf-ff-full { grid-column:1/-1; }
.lf-ff-field { display:flex;flex-direction:column;gap:5px; }
.lf-ff-field label { font-size:13px;font-weight:600;color:#374151; }
.lf-ff-field input,
.lf-ff-field textarea { border:1px solid #d1d5db;border-radius:6px;padding:9px 12px;font-size:14px;width:100%;box-sizing:border-box;transition:border-color .15s,box-shadow .15s; }
.lf-ff-field input:focus,
.lf-ff-field textarea:focus { border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.12);outline:none; }
.lf-field-err { border-color:#dc2626 !important;background:#fff5f5 !important; }
.lf-ff-hint { font-size:11px;color:#9ca3af; }
.lf-req { color:#dc2626; }
.lf-ff-footer { text-align:center;padding:28px 0; }
.lf-btn-submit { background:#1e3a5f;color:#fff;border:none;border-radius:8px;padding:14px 44px;font-size:16px;font-weight:700;cursor:pointer;transition:background .15s; }
.lf-btn-submit:hover { background:#2563eb; }
.lf-btn-submit:disabled { background:#93c5fd;cursor:not-allowed; }
@media(max-width:580px){ .lf-ff-grid{grid-template-columns:1fr;} .lf-ff-full{grid-column:1;} }
