.plfx-hidden{display:none!important}
.plfx-rating{display:inline-flex;flex-direction:row-reverse;gap:2px}
.plfx-rating input{position:absolute;opacity:0;width:1px;height:1px}
.plfx-rating label{font-size:30px;line-height:1;color:#c3c4c7;cursor:pointer;padding:0 2px}
.plfx-rating input:checked~label,.plfx-rating label:hover,.plfx-rating label:hover~label{color:#f0b429}
.plfx-rating input:focus-visible+label{outline:2px solid #2271b1;outline-offset:2px}
.plfx-calc{font-size:1.4em;font-weight:700}
.plfx-payment{background:#f6f7f7;border:1px dashed #8c8f94;padding:.8em 1em;border-radius:4px}
.plfx-section-title{margin:.6em 0 .1em}
.plfx-section-desc{margin:0;color:#50575e}
.plfx-step[hidden]{display:none}
.plfx-step{display:flex;flex-direction:column;gap:1.1em}
.plfx-progress{margin-bottom:1.2em}
.plfx-bar{height:8px;background:#dcdcde;border-radius:4px;overflow:hidden}
.plfx-bar span{display:block;height:100%;background:#2271b1;transition:width .25s}
.plfx-bar-label{font-size:.8em;color:#50575e;margin-top:.3em}
.plfx-progress-steps{display:flex;gap:8px}
.plfx-dot{width:28px;height:28px;border-radius:50%;background:#dcdcde;color:#50575e;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:600}
.plfx-dot.is-done{background:#2271b1;color:#fff}
.plfx-nav{display:flex;gap:10px;margin-top:1.2em}
.plfx-prev{background:#f0f0f1;color:#1d2327;border:1px solid #8c8f94;border-radius:4px;padding:.7em 1.4em;font:inherit;cursor:pointer}
.plfx-nav [hidden]{display:none}
.plfm-actions[hidden]{display:none}
.plfm-field[hidden]{display:none}
