.pf-card{background:var(--bk-card,#fff);border:1px solid var(--bk-line,#e3eaf2);border-radius:14px;margin-bottom:16px;padding:20px 22px}.pf-h2{color:var(--bk-primary,#123c69);margin:0 0 4px;font-size:17px;font-weight:800}.pf-note{color:var(--bk-mut,#5f6b72);margin:0 0 16px;font-size:13.5px;line-height:1.5}.pf-field{margin-bottom:14px;display:block}.pf-field>span{color:var(--bk-text,#22303c);margin-bottom:6px;font-size:13px;font-weight:700;display:block}.pf-input{border:1.5px solid var(--bk-line,#e3eaf2);background:#fff;border-radius:9px;width:100%;max-width:360px;padding:10px 12px;font-size:14px}.pf-input:focus{border-color:var(--bk-primary,#123c69);outline:none}select.pf-input{appearance:auto}.pf-save{color:var(--bk-accent,#2f9e73);white-space:nowrap;font-size:13px;font-weight:700}.pf-opt{color:#94a3b8;font-style:normal;font-weight:400}.pf-grid{grid-template-columns:1fr 1fr;gap:12px 18px;display:grid}.pf-grid .pf-field{margin:0}@media (max-width:620px){.pf-grid{grid-template-columns:1fr}}.pf-row{border-bottom:1px solid #eef1f5;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.pf-row:last-of-type{border-bottom:0}.pf-row-label{color:#1f2a37;font-size:14px}.pf-yesno{gap:6px;display:inline-flex}.pf-yesno button{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:999px;padding:5px 16px;font-size:13px;font-weight:600}.pf-yesno button.on{background:var(--bk-accent,#2f9e73);border-color:var(--bk-accent,#2f9e73);color:#fff}.pf-chips{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.pf-chip{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:999px;padding:5px 12px;font-size:13px}.pf-chip:hover{border-color:#94a3b8}.pf-chip.on{background:var(--bk-primary,#123c69);border-color:var(--bk-primary,#123c69);color:#fff}.pf-states{border:1px solid #eef1f5;border-radius:8px;max-height:132px;padding:8px;overflow-y:auto}.pf-md{gap:8px;display:inline-flex}.pf-md select{background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:8px 10px;font-size:14px}.pf-md select:disabled{color:#94a3b8;background:#f1f5f9}.pf-seg{border:1px solid #cbd5e1;border-radius:8px;margin-top:4px;display:inline-flex;overflow:hidden}.pf-seg button{color:#475569;cursor:pointer;background:#fff;border:0;border-right:1px solid #cbd5e1;padding:7px 16px;font-size:13px;font-weight:600}.pf-seg button:last-child{border-right:0}.pf-seg button.on{background:var(--bk-primary,#123c69);color:#fff}.pf-textarea{resize:vertical;font-family:inherit;line-height:1.4}.pf-foot{justify-content:flex-end;margin-top:20px;display:flex}.pf-needed{border-left:3px solid var(--bk-accent,#2f9e73);background:#f2faf6;border-radius:8px;padding:8px 10px}.pf-needed>span:first-child:after{content:" • needed";color:var(--bk-accent,#2f9e73);letter-spacing:.01em;font-size:11px;font-weight:700}.pf-purposes{flex-wrap:wrap;gap:8px;display:flex}.pf-purpose{border:1.5px solid var(--bk-line,#e3eaf2);cursor:pointer;color:var(--bk-text,#22303c);-webkit-user-select:none;user-select:none;border-radius:999px;align-items:center;gap:7px;padding:7px 14px;font-size:13.5px;display:inline-flex}.pf-purpose:hover{border-color:var(--bk-mut,#5f6b72)}.pf-purpose.on{border-color:var(--bk-primary,#123c69);color:var(--bk-primary,#123c69);background:#eef3fb;font-weight:600}.pf-purpose input{cursor:pointer;width:15px;height:15px;margin:0}.pf-progress{color:var(--bk-accent,#2f9e73);margin:12px 0 0;font-size:13px;font-weight:700}.pfp-request{border:1px solid #cfe9db;border-left:4px solid var(--bk-accent,#2f9e73);color:#1f2a37;background:#eef7f1;border-radius:10px;margin-bottom:18px;padding:14px 16px;font-size:14px;line-height:1.5}.pfp-request strong{color:var(--bk-primary,#123c69)}.pfp{background:var(--bk-bg,#f4f7fb);min-height:100vh}.pfp-loading{color:#5f6b72;padding:40px}.pfp-top{background:var(--bk-primary,#123c69);color:#fff;justify-content:space-between;align-items:center;padding:14px 24px;display:flex}.pfp-brand{font-size:18px;font-weight:800}.pfp-logo{width:auto;max-width:200px;height:30px;display:block}.pfp-back{color:#fff;opacity:.9;font-size:13.5px;font-weight:600;text-decoration:none}.pfp-back:hover{opacity:1;text-decoration:underline}.pfp-main{max-width:760px;margin:0 auto;padding:24px 20px 60px}.pfp-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.pfp-h1{color:var(--bk-primary,#123c69);margin:0 0 4px;font-size:24px;font-weight:800}.pfp-sub{color:#5f6b72;max-width:560px;margin:0;font-size:14px;line-height:1.5}
