.who-card { display: flex; justify-content: space-between; gap: 12px; align-items: center; flex-wrap: wrap; }
.who-name { font-weight: 700; font-size: 18px; }
.last { text-align: right; color: var(--muted); }
.last strong { color: var(--ink); }
.place { border: 1px dashed var(--line); border-radius: 12px; padding: 14px; display: flex; flex-direction: column; gap: 4px; }
.place.found { border-style: solid; border-color: var(--accent); background: var(--accent-soft); }
.place.other { border-style: solid; border-color: var(--warn); background: var(--warn-soft); }
.place-title { font-weight: 700; font-size: 18px; }
.today { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.today li { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--line); font-size: 15px; }
.today li:last-child { border-bottom: 0; }
.today .t { font-variant-numeric: tabular-nums; color: var(--muted); white-space: nowrap; }
.today .pending { color: var(--warn); }
.center { text-align: center; }
.checkin-btn { padding: 28px 16px; font-size: 24px; letter-spacing: .01em; }
.checkin-btn[aria-busy="true"] { opacity: .8; cursor: progress; }
.tenant-btn { justify-content: flex-start; }
