.hz-checkin-wrap{
  max-width:480px;
  margin:0 auto;
  padding:1rem;
  font-family:'Assistant', sans-serif;
}
.hz-checkin-search{
  width:100%;
  padding:1.1rem 1.2rem;
  font-size:1.2rem;
  border:2px solid #C9A961;
  border-radius:12px;
  margin-bottom:1rem;
  box-sizing:border-box;
}
.hz-checkin-search:focus{outline:none; border-color:#7A2333;}

.hz-checkin-results{display:flex; flex-direction:column; gap:0.8rem;}

.hz-checkin-card{
  display:flex;
  align-items:center;
  gap:0.9rem;
  background:#fff;
  border:1.5px solid #E3DACB;
  border-radius:14px;
  padding:0.9rem 1rem;
  box-shadow:0 6px 16px -10px rgba(0,0,0,0.2);
  transition:opacity 0.2s ease, background 0.2s ease;
}
.hz-checkin-card.hz-checked-in{
  background:#EFF6F0;
  opacity:0.65;
}

.hz-checkin-btn{
  flex:none;
  width:56px; height:56px;
  border-radius:50%;
  border:none;
  background:#1F9254;
  color:#fff;
  font-size:1.6rem;
  font-weight:800;
  cursor:pointer;
}
.hz-checkin-card.hz-checked-in .hz-checkin-btn{
  background:#8FAE9A;
}

.hz-checkin-info{flex:1; min-width:0;}
.hz-checkin-name{
  font-family:'Frank Ruhl Libre', serif;
  font-size:1.15rem;
  font-weight:700;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.hz-checkin-meta{font-size:0.85rem; color:#666; margin-top:0.15rem;}

.hz-checkin-table{
  flex:none;
  min-width:64px;
  text-align:center;
  padding:0.5rem 0.6rem;
  border-radius:10px;
  background:#C9A961;
  color:#24322A;
  font-weight:800;
  font-size:1.1rem;
}
.hz-checkin-table.hz-no-table{
  background:#EEEEEE;
  color:#999;
  font-size:0.75rem;
  font-weight:600;
}

.hz-checkin-empty{
  text-align:center;
  color:#888;
  padding:2rem 0;
}
