/* «Люди» и «Вход по приглашению» (доска V84People, стиль v4; 05.11.2026). Свой файл: app.css правят соседи. Токены — из app.css. */

.pp-sec-h { display: flex; align-items: baseline; gap: 6px; margin: 18px 0 8px; font-size: var(--fs-14); font-weight: 700; }
.pp-sec-h .n { color: var(--ink2); font-weight: 600; }
.pp-ava { flex: none; width: 40px; height: 40px; box-sizing: border-box; border-radius: 50%; background: var(--surface2); color: var(--ink);
  display: flex; align-items: center; justify-content: center; font-size: var(--fs-12); font-weight: 700; letter-spacing: .02em; }
.pp-ava.big { width: 56px; height: 56px; font-size: var(--fs-16); }
.pp-row { display: flex; align-items: flex-start; gap: 12px; min-height: 56px; padding: 12px 0; box-sizing: border-box; width: 100%;
  border: 0; border-top: 1px solid var(--line); background: transparent; color: var(--ink); text-align: left; font: inherit; text-decoration: none; }
.pp-row:first-child { border-top: 0; }
.pp-row .chev { align-self: center; flex: none; }
.pp-row .pp-l { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.pp-top { display: flex; align-items: baseline; gap: 8px; }
.pp-nm { flex: 1 1 auto; min-width: 0; font-size: var(--fs-14); font-weight: 600; overflow-wrap: anywhere; }
.pp-role { flex: none; font-size: var(--fs-12); font-weight: 600; color: var(--ink2); }
.pp-sub { font-size: var(--fs-12); line-height: 1.35; color: var(--ink2); }
.pp-risk { font-size: var(--fs-12); line-height: 1.35; font-weight: 600; color: var(--warn); }
.pp-note { margin: 12px 2px 0; font-size: var(--fs-12); line-height: 1.45; color: var(--ink2); }
.pp-flat { margin-top: 12px; padding: 16px; border-radius: var(--r-20); background: var(--surface); box-shadow: var(--tileEdge); }
.pp-flat h2 { margin: 0 0 6px; font-size: var(--fs-14); font-weight: 700; }

/* Карточка человека */
.pp-head { display: flex; align-items: center; gap: 14px; margin-top: 4px; }
.pp-head .h1 { margin: 0; }
.pp-tags { display: flex; align-items: center; gap: 10px; margin-top: 4px; }
.pp-plate { display: inline-flex; align-items: center; height: 24px; padding: 0 8px; border-radius: 8px; background: var(--surface2);
  font-size: var(--fs-12); font-weight: 600; color: var(--ink); }
.pp-kv { display: flex; align-items: center; gap: 12px; min-height: 52px; border-top: 1px solid var(--line); font-size: var(--fs-14); }
.pp-kv:first-child { border-top: 0; }
.pp-kv .k { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 1px; padding: 8px 0; }
.pp-kv .v { flex: none; font-weight: 600; }
.pp-kv .s { font-size: var(--fs-12); color: var(--ink2); }
button.pp-kv, a.pp-kv { width: 100%; border-left: 0; border-right: 0; border-bottom: 0; background: transparent; color: var(--ink); font: inherit;
  text-align: left; text-decoration: none; padding: 0; }
.pp-del { display: flex; align-items: center; min-height: 52px; width: 100%; padding: 0 14px; border: 0; border-radius: var(--r-20);
  background: var(--surface); box-shadow: var(--tileEdge); color: var(--off); font: 600 var(--fs-14) 'Manrope', system-ui, sans-serif; text-align: left; }
.pp-pause { padding: 14px 16px; border-radius: var(--r-20); background: var(--warnBg); color: var(--warnInk); }
.pp-pause b { display: block; font-size: var(--fs-14); }
.pp-pause span { display: block; margin-top: 2px; font-size: var(--fs-12); line-height: 1.4; }
.pp-sent { display: flex; flex-direction: column; gap: 6px; padding: 18px; border-radius: var(--r-24); }
.pp-sent .cap { font-size: var(--fs-12); font-weight: 600; text-transform: uppercase; letter-spacing: .08em; color: var(--ink); }
.pp-sent .big { font-size: var(--fs-20); font-weight: 700; letter-spacing: -0.02em; line-height: 1.2; }
.pp-sent .row2 { display: flex; justify-content: space-between; gap: 10px; font-size: var(--fs-13); font-weight: 600; }
.pp-sent .row2 .r { color: var(--ink2); font-weight: 400; }

/* Вход по приглашению: экран без меню */
.pp-join { box-sizing: border-box; min-height: 100vh; display: flex; flex-direction: column; padding: 14px 16px calc(100px + env(safe-area-inset-bottom)); }
.pp-cap { margin-top: 18px; font-size: var(--fs-12); font-weight: 600; color: var(--ink2); }
.pp-field { display: flex; align-items: center; height: 56px; margin-top: 6px; padding: 0 16px; box-sizing: border-box; border-radius: var(--r-14);
  background: var(--surface); border: 2px solid var(--line); }
.pp-field:focus-within { border-color: var(--focus); }
.pp-field.bad, .pp-field.bad:focus-within { border-color: var(--off); }
.pp-in { flex: 1 1 auto; min-width: 0; border: 0; outline: none; background: transparent; color: var(--ink); caret-color: var(--focus);
  font: 700 var(--fs-16) 'Manrope', system-ui, sans-serif; letter-spacing: .06em; text-transform: uppercase; }
.pp-in::placeholder { font-weight: 400; letter-spacing: 0; text-transform: none; color: var(--muted); }
.pp-in:focus-visible { outline: none; }
.pp-alert { margin-top: 8px; font-size: var(--fs-13); font-weight: 600; line-height: 1.4; color: var(--off); }
.pp-hint { margin-top: 10px; font-size: var(--fs-12); line-height: 1.45; color: var(--ink2); }
.pp-link { box-sizing: border-box; width: 100%; display: flex; align-items: center; gap: 12px; min-height: 56px; margin-top: 14px; padding: 0 14px; border: 0; border-radius: var(--r-20);
  background: var(--surface); box-shadow: var(--tileEdge); color: var(--ink); font: inherit; text-align: left; }
.pp-link .col { padding: 8px 0; }
.pp-bottom { position: fixed; left: 16px; right: 16px; bottom: calc(16px + env(safe-area-inset-bottom)); z-index: 30; }
.pp-bottom .btn { width: 100%; }
.pp-can { display: flex; align-items: center; gap: 10px; min-height: 48px; border-top: 1px solid var(--line); font-size: var(--fs-14); }
.pp-can:first-child { border-top: 0; }
.pp-can .ic { flex: none; width: 20px; text-align: center; font-weight: 700; color: var(--good); }
.pp-can.no .ic { color: var(--muted); }
.pp-can .t { flex: 1 1 auto; }
.pp-can .r { flex: none; font-size: var(--fs-12); font-weight: 600; color: var(--good); }
.pp-can.no .r { color: var(--ink2); font-weight: 400; }
.pp-res { display: flex; flex-direction: column; gap: 6px; margin-top: 12px; padding: 18px; border-radius: var(--r-24); }
.pp-res .cap { font-size: var(--fs-12); font-weight: 600; text-transform: uppercase; letter-spacing: .08em; color: var(--ink); }
.pp-res .big { font-size: var(--fs-20); font-weight: 700; letter-spacing: -0.02em; line-height: 1.2; color: var(--good); }
.pp-res .s { font-size: var(--fs-13); color: var(--ink); }
