/* monazoPartner — [mp_apply_form] (samodzielny, scope .mp-apply) */
.mp-apply { width: 100%; }
.mp-apply *, .mp-apply *::before, .mp-apply *::after { box-sizing: border-box; }

.mp-apply-card {
    max-width: 720px;
    margin: 0 auto;
    background: #fff;
    border: 1px solid #eef0f2;
    border-radius: 22px;
    padding: 34px 38px;
    box-shadow: 0 10px 40px rgba(17, 24, 39, .06);
}
@media (max-width: 560px) { .mp-apply-card { padding: 24px 20px; border-radius: 18px; } }

.mp-apply-form { display: flex; flex-direction: column; gap: 20px; }

.mp-apply-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
@media (max-width: 560px) { .mp-apply-row { grid-template-columns: 1fr; } }

.mp-apply-field { display: flex; flex-direction: column; gap: 8px; }
.mp-apply-field label { font-size: 15px; font-weight: 600; color: #1f2937; }

.mp-apply-field input[type="text"],
.mp-apply-field input[type="email"],
.mp-apply-field textarea {
    width: 100%;
    padding: 13px 15px;
    font: inherit;
    font-size: 15px;
    color: #111827;
    background: #fff;
    border: 1px solid #d7dbe0;
    border-radius: 12px;
    outline: none;
    transition: border-color .15s ease, box-shadow .15s ease;
}
.mp-apply-field input:focus,
.mp-apply-field textarea:focus {
    border-color: #4cbb17;
    box-shadow: 0 0 0 3px rgba(76, 187, 23, .15);
}
.mp-apply-field textarea { resize: vertical; min-height: 150px; line-height: 1.5; }
.mp-apply-field ::placeholder { color: #9aa1ab; }

.mp-apply-field--checkbox .mp-apply-checkbox {
    display: flex; align-items: flex-start; gap: 11px;
    font-size: 14.5px; line-height: 1.5; color: #374151; font-weight: 400; cursor: pointer;
}
.mp-apply-checkbox input { margin-top: 3px; width: 18px; height: 18px; flex: 0 0 auto; accent-color: #4cbb17; }

/* Turnstile invisible → poza układem, bez pustego odstępu (bez display:none) */
.mp-apply-form { position: relative; }
.mp-apply-turnstile { position: absolute; }

.mp-apply-btn {
    appearance: none; border: 0; cursor: pointer; width: 100%;
    padding: 15px 32px; font: inherit; font-size: 17px; font-weight: 600;
    color: #fff; background: #4CBB17; border-radius: 12px;
    transition: background .15s ease, opacity .15s ease;
}
.mp-apply-btn:hover { background: #43a514; }
.mp-apply-btn:disabled { opacity: .6; cursor: default; }

.mp-apply-alert { padding: 12px 14px; border-radius: 12px; font-size: 14px; line-height: 1.5; }
.mp-apply-alert--error { background: #fef2f2; color: #b42318; border: 1px solid #fecaca; }

.mp-apply-note { margin: 0; font-size: 16px; color: #374151; text-align: center; }

/* Sukces z animowanym ptaszkiem */
.mp-apply-success { text-align: center; padding: 20px 8px; }
.mp-apply-check { display: inline-flex; }
.mp-apply-check circle { stroke-dasharray: 151; stroke-dashoffset: 151; animation: mp-apply-circle .5s ease forwards; }
.mp-apply-check path   { stroke-dasharray: 48;  stroke-dashoffset: 48;  animation: mp-apply-tick .35s .45s ease forwards; }
@keyframes mp-apply-circle { to { stroke-dashoffset: 0; } }
@keyframes mp-apply-tick   { to { stroke-dashoffset: 0; } }
.mp-apply-success-title { margin: 16px 0 4px; font-size: 21px; font-weight: 800; color: #1f2937; }
.mp-apply-success-text  { margin: 0; font-size: 15px; color: #6b7280; }

/* Honeypot */
.mp-apply-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }