
.pf{font-size:15px}
.pf fieldset{border:1px solid var(--line);border-radius:var(--radius);padding:0;margin:0 0 22px;background:#fff;overflow:hidden}
.pf legend{float:left;width:100%;padding:12px 16px;background:var(--tint);border-bottom:1px solid var(--line);font-weight:600;color:var(--ink);font-size:16px}
.pf legend+*{clear:both}
.pf-grid{display:grid;grid-template-columns:200px 1fr;margin:0}
.pf-grid>label,.pf-grid>.pf-k{padding:11px 16px;border-bottom:1px solid var(--line);color:var(--ink);font-weight:500;background:#FBFDFD;border-right:1px solid var(--line)}
.pf-grid>.pf-v{padding:8px 16px;border-bottom:1px solid var(--line)}
.pf-grid>*:nth-last-child(-n+2){border-bottom:0}
.pf input[type=text],.pf input[type=tel],.pf input[type=email],.pf input[type=date],.pf select,.pf textarea{font:inherit;font-size:15px;width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);box-sizing:border-box}
.pf textarea{min-height:70px;resize:vertical}
.pf input:focus,.pf select:focus,.pf textarea:focus{outline:2px solid var(--teal);outline-offset:0;border-color:var(--teal)}
.pf .req{color:#B3261E}
.pf .hint{display:block;font-size:13px;color:var(--muted);margin-top:4px}
.pf .inline{display:flex;flex-wrap:wrap;gap:6px 16px}
.pf .inline label{display:flex;align-items:center;gap:6px;font-weight:400}
.pf input[type=checkbox],.pf input[type=radio]{width:18px;height:18px;accent-color:var(--teal-deep)}
.pf-tbl{width:100%;border-collapse:collapse}
.pf-tbl th{font-size:13px;font-weight:600;color:var(--muted);text-align:left;padding:9px 8px;border-bottom:1px solid var(--line);background:#FBFDFD}
.pf-tbl td{padding:8px;border-bottom:1px solid var(--line);vertical-align:middle}
.pf-tbl td.num,.pf-tbl th.num{text-align:right;white-space:nowrap}
.pf-tbl select{padding:7px 6px}
.pf-tbl .subj label{display:flex;align-items:center;gap:8px;font-weight:500;color:var(--ink);cursor:pointer}
.pf-tbl tr.off td:not(.subj){opacity:.35}
.pf-tbl tr.off td:not(.subj) *{pointer-events:none}
.pf-tbl tr.ch td{background:#FBFDFD;border-bottom:1px solid var(--line)}
.pf-tbl tr.ch.hide,.pf-tbl tr.off+tr.ch{display:none}
.pf-tbl .rate{display:block;font-size:11.5px;color:var(--muted);white-space:nowrap;margin-top:2px}
.pf-tbl select[data-k=plan]{min-width:132px}.pf-tbl select[data-k=mode]{min-width:86px}.pf-tbl select[data-k^=c],.pf-tbl select[data-k=ds]{min-width:58px}
.pf-tbl th{white-space:nowrap}
.pf-tbl .warn{display:block;color:#B3261E;font-size:12.5px;margin-top:3px;white-space:normal}
.pf-tot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 18px;padding:14px 16px;background:var(--tint);border-top:1px solid var(--line)}
.pf-tot .big{font-size:26px;font-weight:600;color:var(--teal-deep)}
.pf-err{color:#B3261E;font-size:14px;margin:10px 0}
.pf-err ul{margin:6px 0 0 18px;padding:0}
.pf .bad{border-color:#B3261E!important;background:#FFF7F6!important}
.pf-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:6px}
.pf-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.pf-review table{width:100%;border-collapse:collapse;font-size:14px;margin-bottom:16px}
.pf-review th,.pf-review td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
.pf-review th{background:var(--tint);font-weight:600;width:34%}
.pf-review .plan th{width:auto}
.pf-review td.num{text-align:right;white-space:nowrap}
.pf-done{border:1px solid var(--line);border-radius:var(--radius);padding:22px;background:var(--tint)}
.btn[disabled]{opacity:.55;cursor:progress}
@media (max-width:760px){
 .pf-grid{grid-template-columns:1fr}
 .pf-grid>label,.pf-grid>.pf-k{border-right:0;border-bottom:0;padding:10px 14px 2px;background:#fff}
 .pf-grid>.pf-v{padding:4px 14px 12px}
 .pf-tbl thead{display:none}
 .pf-tbl,.pf-tbl tbody,.pf-tbl tr,.pf-tbl td{display:block;width:100%;box-sizing:border-box}
 .pf-tbl tr.sr{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;padding:12px 14px;border-bottom:1px solid var(--line)}
 .pf-tbl tr.sr td{border:0;padding:0}
 .pf-tbl tr.sr td.subj{grid-column:1/-1}
 .pf-tbl tr.sr td[data-l]::before{content:attr(data-l);display:block;font-size:12.5px;color:var(--muted);margin-bottom:3px}
 .pf-tbl tr.sr td.num{text-align:left;grid-column:1/-1;font-size:15px}
 .pf-tbl tr.off{display:block}
 .pf-tbl tr.off td:not(.subj){display:none}
 .pf-tbl tr.ch td{padding:0 14px 12px;border:0}
 .pf-tbl tr.ch{border-bottom:1px solid var(--line)}
}
.pf input[type=file]{font:inherit;font-size:14px;max-width:100%}
.wf-files{list-style:none;margin:8px 0 0;padding:0;font-size:14px}
.wf-files li{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:4px 0}
.wf-files button{font:inherit;font-size:13px;border:1px solid var(--line);background:#fff;border-radius:5px;padding:2px 8px;color:#B3261E;cursor:pointer}
.wf-ferr{display:block;color:#B3261E;font-size:13px}
.pf .bad-wrap{background:#FFF7F6}
.pf .stack{display:flex;flex-direction:column;gap:6px}
.pf .stack label{display:flex;align-items:flex-start;gap:8px;font-weight:400}
.pf .stack label input{margin-top:2px;flex:none}
.pf-review h4{font-size:15px;color:var(--teal-deep)}
.pf-terms{padding:14px 16px;border-bottom:1px solid var(--line);font-size:14.5px}
