/* Smart Lead Manager — frontend form */
.slm-wrap { --slm-ink:#1a1a1a; --slm-line:#dcdcdc; --slm-bg:#fff; --slm-ok:#1f6b3a; --slm-bad:#b42318;
	max-width:560px; margin:0 auto; direction:rtl; text-align:right; font-family:inherit; }
.slm-form { background:var(--slm-bg); border:1px solid var(--slm-line); border-radius:10px; padding:28px; }
.slm-title { margin:0 0 20px; font-size:1.25rem; line-height:1.5; color:var(--slm-ink); }
.slm-field { margin:0 0 16px; }
.slm-field label { display:block; margin:0 0 6px; font-size:.9rem; color:var(--slm-ink); }
.slm-req { color:var(--slm-bad); }
.slm-field input, .slm-field select, .slm-field textarea {
	display:block; width:100%; box-sizing:border-box; padding:10px 12px; margin:0;
	border:1px solid var(--slm-line); border-radius:6px; background:#fff; color:var(--slm-ink);
	font:inherit; font-size:1rem; line-height:1.5; transition:border-color .15s; }
.slm-field input[dir="ltr"] { text-align:right; }
.slm-field input:focus, .slm-field select:focus, .slm-field textarea:focus { outline:2px solid var(--slm-ink); outline-offset:1px; border-color:var(--slm-ink); }
.slm-field textarea { resize:vertical; min-height:96px; }
.slm-field.has-error input, .slm-field.has-error select, .slm-field.has-error textarea { border-color:var(--slm-bad); }
.slm-error { display:block; margin-top:4px; font-size:.8rem; color:var(--slm-bad); }
.slm-error:empty { display:none; }
.slm-submit { display:block; width:100%; padding:12px 16px; border:0; border-radius:6px; background:var(--slm-ink); color:#fff;
	font:inherit; font-size:1rem; font-weight:600; cursor:pointer; transition:opacity .15s; }
.slm-submit:hover { opacity:.88; }
.slm-submit:focus-visible { outline:2px solid var(--slm-ink); outline-offset:3px; }
.slm-submit:disabled { opacity:.55; cursor:progress; }
.slm-notice { display:none; margin:0 0 16px; padding:12px 14px; border-radius:6px; font-size:.92rem; line-height:1.7; }
.slm-notice.is-success { display:block; background:#ecf6ef; color:var(--slm-ok); }
.slm-notice.is-error { display:block; background:#fdeeec; color:var(--slm-bad); }
.slm-hp { position:absolute !important; left:-10000px; width:1px; height:1px; overflow:hidden; }
@media (max-width:480px) { .slm-form { padding:20px 16px; } }
@media (prefers-reduced-motion:reduce) { .slm-field input, .slm-submit { transition:none; } }
