/* /app/friends and /app/people/{slug}. Same palette as shell.css / the Figma "Auth"
   frame: white cards, primary #4F46E5, brand #5F33E1, text #111827 / #64748B. */

.fr, .pe { display: flex; flex-direction: column; gap: 16px; max-width: 880px; }

/* friends lists */
.fr__section { display: flex; flex-direction: column; gap: 12px; }
.fr__section .shell__h2 { margin: 0; display: flex; align-items: center; gap: 8px; }
.fr__count {
    min-width: 22px; height: 22px; padding: 0 7px; border-radius: 999px; box-sizing: border-box;
    display: inline-flex; align-items: center; justify-content: center;
    background: #EEE9FF; color: #5F33E1; font-size: 12px; font-weight: 600;
}
.fr__list { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; }
.fr__row { display: flex; align-items: center; gap: 14px; padding: 12px 0; border-top: 1px solid #E7EAF2; }
.fr__row:first-child { border-top: 0; }
.fr__avatar { width: 48px; height: 48px; flex: none; border-radius: 50%; object-fit: cover; background: #EEE9FF; }
.fr__avatar--blank { display: flex; align-items: center; justify-content: center; background: #5F33E1; color: #fff; font-size: 16px; font-weight: 600; }
.fr__info { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.fr__name { font-size: 15px; font-weight: 600; color: #111827; text-decoration: none; overflow-wrap: anywhere; }
.fr__name:hover { color: #4F46E5; }
.fr__meta { font-size: 13px; color: #64748B; }
.fr__actions { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
.fr__actions .shell__btn { margin-top: 0; height: 36px; font-size: 13px; }

/* member page */
.pe__head { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.pe__avatar { width: 96px; height: 96px; flex: none; border-radius: 50%; object-fit: cover; background: #EEE9FF; }
.pe__avatar--blank { display: flex; align-items: center; justify-content: center; background: #5F33E1; color: #fff; font-size: 32px; font-weight: 600; }
.pe__who { flex: 1; min-width: 200px; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; }
.pe__name { margin: 0; font-size: 26px; line-height: 32px; font-weight: 700; color: #111827; overflow-wrap: anywhere; }
.pe__role { padding: 3px 10px; border-radius: 999px; background: #EEE9FF; color: #5F33E1; font-size: 12px; font-weight: 600; }
.pe__meta { font-size: 14px; color: #64748B; }
.pe__relation { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; min-width: 200px; }
.pe__relation .shell__btn { margin-top: 0; }
.pe__note { margin: 0; font-size: 13px; font-weight: 500; color: #64748B; }
.pe__note--ok { color: #067647; }
.pe__bio { margin: 0; font-size: 14px; line-height: 1.5; color: #111827; white-space: pre-wrap; overflow-wrap: anywhere; }
.pe .shell__card .shell__h2 { margin: 0 0 12px; }
.pe__tags { display: flex; flex-wrap: wrap; gap: 8px; }
.pe__tag { padding: 4px 10px; border: 1px solid #D7DFEA; border-radius: 8px; font-size: 13px; font-weight: 500; color: #475467; }
.pe__tag--prof { border-color: #5F33E1; background: #EEE9FF; color: #5F33E1; }
.pe__skills { display: flex; flex-direction: column; gap: 8px; }
.pe__skill { display: grid; grid-template-columns: minmax(120px, 1fr) auto 84px; align-items: center; gap: 12px; }
.pe__skill-name { font-size: 14px; }
.pe__seg { cursor: default; }
.pe__seg:hover { border-color: #D7DFEA; }
.pe__seg.is-on:hover { border-color: inherit; }

@media screen and (max-width: 720px) {
    .fr__row { flex-wrap: wrap; }
    .fr__info { flex: 1 1 calc(100% - 64px); }
    .fr__actions { width: 100%; justify-content: flex-start; }
    .pe__head { flex-direction: column; align-items: flex-start; }
    .pe__skill { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "name level" "meter meter"; row-gap: 6px; }
    .pe__skill-name { grid-area: name; }
    .pe__skill .pf__skill-level { grid-area: level; text-align: right; }
    .pe__skill .pf__meter { grid-area: meter; }
    .pe__seg { flex: 1; width: auto; height: 26px; }
}
