.pf { max-width: 1040px; margin: 0 auto; padding: 40px 16px 72px; }
.pf-card { background: #fff; border: 1px solid rgba(20,27,45,.08); border-radius: 22px; padding: 22px 24px; box-shadow: 0 10px 30px rgba(11,20,38,.06); }
.pf-card h2 { font-size: 18px; margin: 0 0 14px; letter-spacing: -.01em; }
.pf-hero { display: flex; gap: 20px; align-items: center; margin-bottom: 16px; }
.pf-hero h1 { margin: 0; font-size: clamp(24px, 3vw, 32px); letter-spacing: -.02em; }
.pf-sub { margin: 2px 0 0; color: var(--ink-2, #3c4562); } .pf-meta { margin: 6px 0 0; font-size: 14px; color: var(--muted, #6b7280); }
.pf-avatar { width: 44px; height: 44px; border-radius: 50%; overflow: hidden; display: inline-grid; place-items: center; flex: none;
  background: linear-gradient(135deg, #ff8a1f, #e2553b); color: #fff; font-weight: 800; }
.pf-avatar.lg { width: 92px; height: 92px; font-size: 36px; box-shadow: 0 10px 26px rgba(226,85,59,.25); }
.pf-avatar img { width: 100%; height: 100%; object-fit: cover; }
.pf-grid { display: grid; grid-template-columns: 1.4fr 1fr; gap: 16px; align-items: start; }
.pf-side { display: flex; flex-direction: column; gap: 16px; }
@media (max-width: 860px) { .pf-grid { grid-template-columns: 1fr; } .pf-hero { flex-direction: column; text-align: center; } }
.pf form { display: flex; flex-direction: column; gap: 12px; }
.pf label { display: flex; flex-direction: column; gap: 5px; font-size: 13px; font-weight: 600; color: #2a3350; }
.pf label small, .pf-fine { font-weight: 500; color: var(--muted, #6b7280); font-size: 12px; }
.pf input:not([type=checkbox]):not([type=file]), .pf select { font: inherit; font-size: 15px; padding: 10px 12px; border: 1.5px solid #dfe3ec; border-radius: 11px; background: #fbfcfe; width: 100%; box-sizing: border-box; }
.pf input:focus, .pf select:focus { outline: none; border-color: #ff8a1f; box-shadow: 0 0 0 3px rgba(255,138,31,.18); background: #fff; }
.pf-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; } @media (max-width: 560px) { .pf-row { grid-template-columns: 1fr; } }
.pf .pf-check { flex-direction: row; align-items: center; gap: 8px; font-weight: 500; }
.pf-check input { width: 16px; height: 16px; accent-color: #ff8a1f; }
.pf form > .btn, .pf-card .btn { align-self: flex-start; }
.pf-upload { position: relative; flex-direction: row !important; align-items: center; gap: 10px !important; cursor: pointer; }
.pf-upload input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.pf-or { margin: 4px 0 0; font-size: 13px; color: var(--muted, #6b7280); }
.pf-avatars { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.pf-avatars button { border: 2px solid transparent; border-radius: 50%; padding: 2px; background: none; cursor: pointer; transition: transform .15s; }
.pf-avatars button:hover { transform: scale(1.06); } .pf-avatars button.on { border-color: #ff8a1f; }
.pf-avatars img { width: 100%; display: block; }
.pf-err { color: #c0352b; font-weight: 600; font-size: 13px; margin: 0; }
.pf-msg { margin: 0 0 14px; padding: 10px 14px; border-radius: 12px; background: #ecfdf3; color: #166534; font-weight: 600; font-size: 14px; }
.pf-msg.info { background: #eff6ff; color: #1e40af; }
.pf-empty { max-width: 520px; margin: 40px auto; text-align: center; } .pf-empty .btn { align-self: center; }
.pf-code { margin-top: 14px; padding-top: 14px; border-top: 1px solid #eef0f6; }
.linkbtn { background: none; border: 0; color: #2b5bd7; cursor: pointer; padding: 0; font: inherit; font-size: 13px; text-decoration: underline; align-self: flex-start; }
.pf-btn2 { display: inline-flex; align-items: center; gap: 6px; align-self: flex-start; font: inherit; font-weight: 700; font-size: 14px; color: var(--navy, #0b1f3a);
  background: #fff; border: 1.5px solid #dfe3ec; border-radius: 999px; padding: 9px 16px; cursor: pointer; height: auto; white-space: nowrap; }
.pf-btn2:hover { border-color: #ff8a1f; }
.pf-upload { align-self: flex-start; flex-wrap: wrap; }
.pf-upload input { width: 100%; height: 100%; }
