/* 人物区沿用全站纸面、墨色和朱砂控件；状态文案始终可读。 */
.people-status { color:var(--vg-ink2);font:var(--vg-fs-sm)/1.65 var(--vg-sans);padding:12px 0;display:flex;flex-wrap:wrap;align-items:center;gap:8px; }
.people-status:empty { display:none; }
.people-status p { flex:1 1 240px;margin:0; }
.people-status .vg-btn { min-height:var(--vg-tap); }
.people-clear { margin-block:12px;color:var(--vg-danger); }
.people-dialog { box-sizing:border-box;width:min(760px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:24px;border:1px solid var(--vg-line);border-radius:var(--vg-r-md);background:var(--vg-paper);color:var(--vg-ink);box-shadow:var(--vg-shadow-pop);font:var(--vg-fs-base)/1.65 var(--vg-sans); }
.people-dialog::backdrop { background:rgba(0,0,0,.65); }
.people-dialog h2 { margin:0;font:600 var(--vg-fs-h3)/1.4 var(--vg-serif); }
.people-dialog p { color:var(--vg-ink2); }
.people-dialog small { color:var(--vg-ink2); }
.people-dialog header,.people-actions { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap; }
.people-actions { margin-top:24px;justify-content:flex-end; }
.people-dialog button { min-height:var(--vg-tap);white-space:normal; }
.people-dialog button:focus-visible,.people-dialog input:focus-visible,.people-dialog select:focus-visible { outline:2px solid var(--vg-info);outline-offset:3px; }
.people-dialog button:disabled { opacity:.5;cursor:wait; }
.people-stage { position:relative;margin:24px 0;background:var(--vg-night);overflow:hidden;min-height:120px; }
.people-stage img { display:block;width:100%;height:min(45dvh,420px);object-fit:contain; }
.people-stage canvas { position:absolute;pointer-events:none; }
.people-face-nav,.people-choices { display:flex;flex-wrap:wrap;gap:8px;margin-block:12px; }
.people-face-nav [aria-pressed=true] { border-color:var(--vg-seal);background:var(--vg-seal);color:var(--vg-on-seal); }
.people-dialog .vg-btn:not(.vg-btn-primary),.people-status .vg-btn { background:var(--vg-paper);color:var(--vg-ink);border-color:var(--vg-line-strong);min-height:var(--vg-tap);padding:12px 16px;font-size:var(--vg-fs-base);line-height:1.4;border-radius:var(--vg-r-sm); }
.people-dialog .vg-btn:not(.vg-btn-primary):hover,.people-status .vg-btn:hover { background:var(--vg-soft); }
.people-dialog .people-face-nav [aria-pressed=true] { background:var(--vg-seal-soft);color:var(--vg-seal);border-color:var(--vg-seal); }
.people-dialog label { display:grid;gap:8px; }
.people-dialog input,.people-dialog select { box-sizing:border-box;width:100%;min-height:48px;border:1px solid var(--vg-line-strong);border-radius:var(--vg-r-sm);padding:12px;background:var(--vg-paper);color:var(--vg-ink);font:inherit; }
.people-dialog [data-error] { color:var(--vg-danger); }
.people-consent { max-width:560px; }
@media(max-width:600px) { .people-dialog { padding:16px; }.people-picker .people-actions { display:grid;grid-template-columns:repeat(2,minmax(0,1fr)); }.people-picker [data-action=save] { grid-column:1/-1; }.people-dialog header h2 { flex:1; } }
@media(prefers-reduced-motion:reduce) { .people-dialog,.people-dialog * { transition:none;scroll-behavior:auto; } }
