/* v1.15 field rules on feinh.com's public forms (fp-input.js, fp-form.js). Feinh Pro has the same in pro.css, on its tokens. */
.fpn-wrap { position: relative; display: block; width: 100%; }
.fpn-wrap > input { width: 100%; padding-right: 86px !important; }
html[dir="rtl"] .fpn-wrap > input { padding-right: 12px !important; padding-left: 86px !important; }
.fpn-wrap > select.fpn-cur { position: absolute !important; top: 4px !important; bottom: 4px !important; right: 4px; left: auto; width: 76px !important; max-width: none; height: auto !important; min-height: 0 !important; margin: 0 !important; padding: 0 22px 0 8px !important; border: 0 !important; border-left: 1px solid #e3e8ee !important; border-radius: 6px !important; background-color: transparent !important; color: #5b6878; font: inherit; font-size: 13px !important; font-weight: 600; cursor: pointer; box-shadow: none !important; }
html[dir="rtl"] .fpn-wrap > select.fpn-cur { right: auto; left: 4px; border-left: 0 !important; border-right: 1px solid #e3e8ee !important; }
.fpn-wrap > select.fpn-cur:hover { background-color: #f3f5f7 !important; color: #0b1b2b; }
.fpn-foreign ~ .fpn-cur { color: #0b7a5e; }
.fpn-say { display: block; margin-top: 4px; color: #5b6878; font-size: 13px; line-height: 1.4; }
.fpn-say:empty { display: none; }
.fpf-msg { display: block; margin-top: 4px; color: #b42318; font-size: 13px; line-height: 1.4; }
.fpf-msg[hidden] { display: none; }
.fpf-msg.fpf-hint { color: #5b6878; }
input.fpf-bad, select.fpf-bad, textarea.fpf-bad { border-color: #b42318 !important; }
.fpf-use { padding: 0; border: 0; background: none; color: #0b7a5e; font: inherit; font-weight: 600; text-decoration: underline; cursor: pointer; }
button.fpf-tip { display: inline-grid !important; min-width: 0 !important; min-height: 0 !important; box-shadow: none !important; place-items: center; width: 16px; height: 16px; margin: 0 4px; padding: 0; border: 1px solid #a9b4c0; border-radius: 50%; background: #fff; color: #5b6878; font: italic 600 11px/1 Georgia, serif; vertical-align: middle; cursor: help; }
.fpf-tip:hover, .fpf-tip[aria-expanded="true"] { border-color: #0b7a5e; color: #0b7a5e; }
.fpf-pop { position: absolute; z-index: 1000; max-width: min(288px, calc(100vw - 16px)); padding: 8px 12px; border-radius: 8px; background: #0b1b2b; color: #fff; box-shadow: 0 6px 20px rgba(11, 27, 43, .18); font-size: 13px; line-height: 1.45; }
.fpf-lt { display: inline; }
