/* Sosyal profil penceresi */
.pf-wrap { width: min(560px, calc(100vw - 24px)); max-height: min(90vh, 820px); overflow-y: auto; }
.pf { display: grid; gap: 14px; }
.avatar.xl { width: 88px; height: 88px; } .avatar.xl img { border-radius: 22px; }
.pf-head { display: flex; align-items: flex-start; gap: 14px; }
.pf-id { flex: 1; min-width: 0; display: grid; gap: 4px; }
.pf-name-line { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.pf-name { margin: 0; font-size: 1.25rem; font-weight: 800; overflow-wrap: anywhere; }
.pf-status { color: var(--dim); font-style: italic; font-size: .9rem; overflow-wrap: anywhere; }
.pf-xp { margin-top: 4px; }
.pf-stats { margin: 0; }
.pf-info { display: flex; flex-wrap: wrap; gap: 6px; }
.pf-bio { padding: 10px 12px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface-2); overflow-wrap: anywhere; } .pf-bio p { margin: 0; white-space: pre-wrap; }
.pf-sec h4 { margin: 0 0 8px; font-size: .9rem; }
.pf-ach { display: grid; grid-template-columns: repeat(auto-fill, minmax(88px, 1fr)); gap: 8px; }
.pf-badge { display: grid; justify-items: center; gap: 4px; padding: 8px 4px; border: 1px solid var(--line); border-radius: 12px; text-align: center; opacity: .45; filter: grayscale(1); }
.pf-badge.on { opacity: 1; filter: none; border-color: color-mix(in srgb, var(--accent) 45%, transparent); background: color-mix(in srgb, var(--accent) 8%, transparent); }
.pf-badge .ic { font-size: 1.5rem; } .pf-badge small { font-size: .7rem; line-height: 1.15; }
.pf-matches { display: grid; gap: 6px; }
.pf-match { display: flex; align-items: center; gap: 10px; padding: 7px 10px; border-radius: 10px; border-left: 3px solid var(--line-strong); background: var(--surface-2); font-size: .85rem; }
.pf-match.win { border-left-color: var(--ok); } .pf-match.loss { border-left-color: var(--danger); } .pf-match small { margin-left: auto; }
.pf-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.pf-staff { padding: 10px 12px; border: 1px dashed var(--staff); border-radius: 12px; display: grid; gap: 8px; }
.pf-staff-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; } .pf-staff-row .input { flex: 1; min-width: 160px; }
/* düzenleme */
.pf-form { display: grid; gap: 10px; } .pf-form h4 { margin: 6px 0 0; font-size: .9rem; }
.pf-avedit { display: flex; align-items: flex-start; gap: 14px; flex-wrap: wrap; }
.pf-av-actions { display: grid; gap: 8px; align-content: start; min-width: 180px; flex: 1; } .pf-av-actions .btn { justify-self: start; }
.pf-warn { color: var(--warn); }
.pf-crop-stage { flex-basis: 100%; }
.pf-cropper { display: flex; flex-wrap: wrap; gap: 14px; align-items: flex-start; padding: 10px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface-2); }
.pf-crop { width: 224px; height: 224px; border-radius: 20px; touch-action: none; cursor: grab; background: #000; max-width: 100%; }
.pf-crop-ctl { display: grid; gap: 10px; flex: 1; min-width: 180px; } .pf-crop-btns { display: flex; gap: 8px; }
@media (max-width: 520px) { .pf-head { flex-wrap: wrap; } }
/* yönetim: avatar onay kuyruğu */
.av-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; }
.av-card { display: grid; gap: 6px; justify-items: center; padding: 10px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); text-align: center; }
.av-card img { width: 112px; height: 112px; border-radius: 18px; object-fit: cover; background: var(--surface-2); }
.av-card .ad-actions { justify-content: center; }

.av-gone { width: 112px; height: 112px; border-radius: 18px; display: grid; place-items: center; background: var(--surface-2); color: var(--dim); font-size: .75rem; }

.modal:has(.pf-wrap) { width: min(580px, 100%); padding: 16px; }
.pf-wrap { width: 100%; max-height: none; overflow: visible; }
.pf-wrap .modal-actions { margin-top: 4px; }
.pf-wrap > .pf { min-width: 0; }