.fp-forms-form { max-width: 560px; }
.fp-forms-field { margin-bottom: 18px; }
.fp-forms-field label { display:block; font-weight:600; margin-bottom:6px; font-size:0.9rem; }
.fp-forms-required-mark { color:#dc2626; margin-left:2px; }

.fp-forms-field input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]):not([type="file"]):not([type="submit"]),
.fp-forms-field textarea,
.fp-forms-field select {
    width:100%;
    box-sizing:border-box;
    padding:10px 12px;
    border:1px solid #d1d5db;
    border-radius:8px;
    font-size:0.95rem;
    font-family:inherit;
}
.fp-forms-field input:focus,
.fp-forms-field textarea:focus,
.fp-forms-field select:focus {
    outline:none;
    border-color:#4F46E5;
    box-shadow:0 0 0 3px rgba(79,70,229,.12);
}

.fp-forms-name-row { display:flex; gap:10px; }
.fp-forms-name-row input { flex:1; }

.fp-forms-choice-label { display:flex; align-items:center; gap:8px; font-weight:400; margin-bottom:6px; cursor:pointer; }
.fp-forms-choice-label input { width:auto; margin:0; }

.fp-forms-submit-btn {
    background:transparent;
    color:#1a1a1a;
    border:2px solid #D9B45C;
    padding:12px 28px;
    border-radius:6px;
    font-weight:600;
    font-size:0.95rem;
    cursor:pointer;
    transition:background .15s, color .15s;
}
.fp-forms-submit-btn:hover { background:#D9B45C; color:#1a1a1a; }
.fp-forms-submit-btn:disabled { opacity:.6; cursor:not-allowed; }

.fp-forms-message { margin-top:14px; padding:10px 14px; border-radius:8px; font-size:0.9rem; }
.fp-forms-message-success { background:#f0fdf4; color:#166534; border:1px solid #bbf7d0; }

/* Form yerine geçen tam boy onay mesajı */
.fp-forms-message-standalone { margin-top:0; padding:0; background:none; border:none; color:inherit; }
.fp-forms-message-error { background:#fef2f2; color:#991b1b; border:1px solid #fecaca; }

.fp-forms-error { color:#991b1b; }

/* Karakter sayacı */
.fp-forms-char-counter { font-size:0.75rem; color:#9ca3af; text-align:right; margin-top:4px; }

/* Alan açıklaması (placeholder'dan farklı, girdinin altında sabit görünür) */
.fp-forms-field-description { font-size:0.78rem; color:#9ca3af; margin-top:6px; line-height:1.4; }

/* Faz 2 alanları */
.fp-forms-divider { border:none; border-top:1px solid #e5e7eb; margin:8px 0; }
.fp-forms-divider-label { font-size:0.8rem; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:#6b7280; margin-bottom:6px; }
.fp-forms-section-title { font-size:1rem; font-weight:700; color:#111827; margin-bottom:8px; }
.fp-forms-field-divider { margin-bottom:22px; }
.fp-forms-field-content { color:#374151; line-height:1.7; }
.fp-forms-file-hint { font-size:0.78rem; color:#9ca3af; margin-top:4px; }
.fp-forms-field input[type="file"] { width:100%; box-sizing:border-box; padding:9px 10px; border:1px dashed #d1d5db; border-radius:8px; font-size:0.88rem; background:#fafafa; }

/* Modern dosya yükleme (dropzone) */
.fp-forms-field-title { display:block; font-weight:600; margin-bottom:6px; font-size:0.9rem; }
.fp-forms-dropzone {
    position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center;
    gap:6px; text-align:center; padding:28px 16px; border:2px dashed #c7cad1; border-radius:12px;
    background:#fafbfc; cursor:pointer; transition:border-color .15s, background .15s; font-weight:400 !important; margin-bottom:0 !important;
}
.fp-forms-dropzone:hover, .fp-forms-dropzone.fp-forms-dropzone-drag { border-color:#4F46E5; background:#f5f5ff; }
.fp-forms-dropzone-input {
    position:absolute !important; inset:0; width:100% !important; height:100% !important;
    opacity:0 !important; cursor:pointer; margin:0; padding:0; border:0; z-index:2;
}
.fp-forms-dropzone-icon { font-size:1.8rem; line-height:1; }
.fp-forms-dropzone-text { color:#6b7280; font-size:0.88rem; }
.fp-forms-dropzone-text strong { color:#4F46E5; }
.fp-forms-dropzone-filename { font-size:0.85rem; font-weight:600; color:#111827; margin-top:2px; word-break:break-all; }

.fp-forms-dropzone-visual { padding:0; border:none; background:none; align-items:flex-start; justify-content:flex-start; width:100%; max-width:560px; aspect-ratio:2.8/1; overflow:hidden; border-radius:12px; }
.fp-forms-dropzone-image { width:100% !important; height:100% !important; max-width:none !important; object-fit:cover; display:block; margin:0; pointer-events:none; }

.fp-forms-dropzone-mobile-btn { display:none; }

/* Mobilde görsel yerine sarı çerçeve/siyah yazılı buton */
@media (max-width:600px) {
    .fp-forms-dropzone-image { display:none; }
    .fp-forms-dropzone-visual {
        padding:14px 20px; border:2px solid #D9B45C; border-radius:6px; background:transparent;
        aspect-ratio:auto; max-width:none;
    }
    .fp-forms-dropzone-mobile-btn {
        display:inline-flex; align-items:center; justify-content:center; gap:8px;
        color:#1a1a1a; font-weight:600; font-size:0.9rem; width:100%;
    }
    .fp-forms-step-nav { flex-direction:column; align-items:stretch; }
    .fp-forms-step-nav .fp-forms-submit-btn,
    .fp-forms-step-nav .fp-forms-next-btn,
    .fp-forms-step-nav .fp-forms-prev-btn {
        width:100%; margin-left:0; margin-right:0; text-align:center; box-sizing:border-box;
    }
}

/* Çok adımlı form */
.fp-forms-step { display:none; }
.fp-forms-step.fp-forms-step-active { display:block; }
.fp-forms-step-nav { display:flex; justify-content:space-between; gap:10px; margin-top:8px; }
.fp-forms-step-nav .fp-forms-prev-btn { background:#f3f4f6; color:#374151; border:none; padding:12px 24px; border-radius:8px; font-weight:600; cursor:pointer; }
.fp-forms-step-nav .fp-forms-next-btn { background:#4F46E5; color:#fff; border:none; padding:12px 28px; border-radius:8px; font-weight:600; cursor:pointer; margin-left:auto; }
.fp-forms-step-nav .fp-forms-submit-btn { margin-left:0; margin-right:auto; }

/* Yerleşim (sütunlar) */
.fp-forms-row { display:grid; gap:16px; margin-bottom:18px; }
.fp-forms-row-cols-2 { grid-template-columns:1fr 1fr; }
.fp-forms-row-cols-3 { grid-template-columns:1fr 1fr 1fr; }
.fp-forms-row .fp-forms-field { margin-bottom:0; }
@media(max-width:520px){ .fp-forms-row-cols-2, .fp-forms-row-cols-3 { grid-template-columns:1fr; } }

/* Adres */
.fp-forms-address-group { display:flex; flex-direction:column; gap:10px; }
.fp-forms-address-row { display:flex; gap:10px; }
.fp-forms-address-row input { flex:1; }

/* Map */
.fp-forms-map-preview-wrap { margin-top:10px; border-radius:8px; overflow:hidden; border:1px solid #d1d5db; }
.fp-forms-map-iframe { width:100%; height:220px; border:0; display:block; }

/* İmza */
.fp-forms-signature-wrap { border:1px dashed #d1d5db; border-radius:8px; padding:8px; background:#fafafa; }
.fp-forms-signature-pad { width:100%; height:180px; touch-action:none; background:#fff; border-radius:6px; border:1px solid #e5e7eb; cursor:crosshair; }
.fp-forms-signature-clear { margin-top:8px; background:#f3f4f6; border:none; padding:6px 14px; border-radius:6px; font-size:0.82rem; cursor:pointer; }

/* Zengin metin */
.fp-forms-richtext-toolbar { display:flex; gap:6px; margin-bottom:6px; }
.fp-forms-richtext-toolbar button { background:#f3f4f6; border:1px solid #e5e7eb; border-radius:5px; padding:5px 10px; cursor:pointer; font-size:0.85rem; }
.fp-forms-richtext-editor { min-height:110px; border:1px solid #d1d5db; border-radius:8px; padding:10px 12px; font-size:0.95rem; }
.fp-forms-richtext-editor:empty:before { content:attr(data-placeholder); color:#9ca3af; }

/* Tekrarlayıcı */
.fp-forms-repeater-item { display:flex; gap:8px; align-items:center; margin-bottom:8px; }
.fp-forms-repeater-item input { flex:1; }
.fp-forms-repeater-remove { background:none; border:none; color:#dc2626; cursor:pointer; font-size:1rem; padding:4px 8px; }
.fp-forms-repeater-add { background:#eef1ff; color:#4F46E5; border:none; padding:8px 14px; border-radius:8px; font-size:0.85rem; font-weight:600; cursor:pointer; }

/* Giriş Ön İzlemesi */
.fp-forms-preview-container { background:#f9fafb; border:1px solid #e5e7eb; border-radius:10px; padding:16px 18px; margin-bottom:16px; }
.fp-forms-preview-row { padding:6px 0; border-bottom:1px solid #eef0f2; font-size:0.9rem; }
.fp-forms-preview-row:last-child { border-bottom:none; }
.fp-forms-preview-loading { color:#9ca3af; font-size:0.88rem; }

/* Onay Kutusu (Sözleşme) */
.fp-forms-agreement-label { display:flex; align-items:flex-start; gap:8px; font-weight:400 !important; font-size:0.85rem; line-height:1.5; color:#4b5563; cursor:pointer; }
.fp-forms-agreement-label input[type="checkbox"] { margin-top:3px; flex-shrink:0; width:auto; }
.fp-forms-agreement-label a { color:#4F46E5; text-decoration:underline; }

/* reCAPTCHA */
.fp-forms-recaptcha-field { margin-bottom:18px; }

/* SEO/kullanılabilirlik denetimi (2026-09-27): bu dosyanın hiçbir kuralı dark
   mode'u (isinici-theme'in html.fp-dark sınıfı) hiç hesaba katmıyordu — birçok
   eleman (Gönder butonu, "Dosya Seç", bölüm başlıkları) transparent arka plan +
   koyu/siyaha yakın metin kullanıyordu: açık sayfada okunuyordu ama sayfa
   dark mode'a geçince aynı koyu metin, artık koyu olan sayfa arka planının
   üzerinde kayboluyordu. Tema zaten html.fp-dark altında --color-bg/--color-text
   gibi CSS değişkenlerini tüm sayfaya (dolayısıyla bu ayrı plugin'in CSS'ine de)
   miras bırakıyor, burada onları kullanıyoruz. */
html.fp-dark .fp-forms-field label,
html.fp-dark .fp-forms-section-title,
html.fp-dark .fp-forms-field-title,
html.fp-dark .fp-forms-dropzone-filename { color:var(--color-text,#e2e8f0); }

html.fp-dark .fp-forms-field input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]):not([type="file"]):not([type="submit"]),
html.fp-dark .fp-forms-field textarea,
html.fp-dark .fp-forms-field select,
html.fp-dark .fp-forms-richtext-editor {
    background:var(--color-bg,#0f172a); color:var(--color-text,#e2e8f0); border-color:var(--color-border,#334155);
}

html.fp-dark .fp-forms-submit-btn { color:var(--color-text,#e2e8f0); }
html.fp-dark .fp-forms-submit-btn:hover { color:#1a1a1a; }

html.fp-dark .fp-forms-dropzone,
html.fp-dark .fp-forms-signature-wrap,
html.fp-dark .fp-forms-preview-container {
    background:var(--color-bg,#0f172a); border-color:var(--color-border,#334155);
}
html.fp-dark .fp-forms-dropzone-mobile-btn { color:var(--color-text,#e2e8f0); }
html.fp-dark .fp-forms-dropzone-text { color:var(--color-text-muted,#94a3b8); }
html.fp-dark .fp-forms-field input[type="file"] { background:var(--color-bg,#0f172a); border-color:var(--color-border,#334155); color:var(--color-text,#e2e8f0); }

html.fp-dark .fp-forms-field-content,
html.fp-dark .fp-forms-agreement-label { color:var(--color-text,#e2e8f0); }
html.fp-dark .fp-forms-divider-label,
html.fp-dark .fp-forms-char-counter,
html.fp-dark .fp-forms-field-description,
html.fp-dark .fp-forms-file-hint,
html.fp-dark .fp-forms-preview-loading { color:var(--color-text-muted,#94a3b8); }
html.fp-dark .fp-forms-divider { border-color:var(--color-border,#334155); }

html.fp-dark .fp-forms-message-success { background:#0f3d26; color:#86efac; border-color:#166534; }
html.fp-dark .fp-forms-message-error { background:#4c1d1d; color:#fca5a5; border-color:#991b1b; }
html.fp-dark .fp-forms-step-nav .fp-forms-prev-btn { background:var(--color-border,#334155); color:var(--color-text,#e2e8f0); }
